Many good options are available today to do this. Most use FC-IP as the connection method except for Nishan that uses iFCP. Several thousand miles distance will mean there will be latency involved. Make sure the vendor you choose provides enough "buffer credits" within their device to maximize performance, if the protocol or method requires them. You will find most devices provide a "store and forward" technique to alleviate some of the latency issues. I have a lot of experience with Nishan, and find it to be a good solution. It uses the iFCP protocol, which provides for device-to-device sessions. Other solutions include INRANGE, CNT and now Cisco.
As for software, this would usually require in-band data pooling through an appliance talking to another appliance at the remote end. There are numerous vendors in this area. Another little known software tool is Compaq's "Virtual Replicator," which provides for SCSI block oriented UDP access to IP connected storage pools and can run on any NT server. This will not "connect" SAN islands but will provide iSCSI like access to remote storage through an IP NIC and an agent on a client. This is an NT only method though.
Editor's note: Also, take a look at searchStorage's bookstore for more books on storage networking.
Dig Deeper on SAN technology and arrays
Related Q&A from Christopher Poelker
SAN expert Chris Poelker discusses how to change the size of a LUN in a Microsoft cluster server environment. Continue Reading
SAN expert Chris Poelker compares connecting a SAN with wavelength cabling and dark fiber and discusses the pros and cons of each. Continue Reading
Storage expert Chris Poelker outlines WWN basics in order to answer the question: "Why do HBAs in a SAN have same base?" Continue Reading