Translating Private Loop Devices To Take Advantage Of Full-Fabric SANs.
Two Types Of Fibre Channel Arbitrated Loop: Private And Public
Private loop is a loop designed to run without a switch and any switch's associated fabric services. A private loop is typically run using a Fibre Channel hub. It can only address 126 devices because private loop uses an 8-bit address. Private loop devices communicate to other devices on the loop by discovering every other device. This can be done fairly readily because there is a limit of 126 address. However, each time a device is added or removed from the loop, the discovery process must occur again. This function is called a Loop Initialization Primitive or LIP. The LIP process can be disruptive to the operation of a loop, especially if a device is not operating properly. Stability is a major issue affecting private arbitrated loops because each device must communicate with every other device on the loop to get and maintain its address.
A public loop is a Fibre Channel arbitrated loop designed to run in a switched fabric environment. Public loop uses a 24-bit address and can accommodate approximately 15 million - valid addresses. Therefore, it isn't practical for public loops to obtain their address by discovering each device on the loop. The addition of a name server on a switch solves this address discovery problem. Upon fabric login, the switch gives the device its address and the device gives the switch specific information, which can be queried by other devices. The switch's name server keeps track of every device and devices can find one another by querying the name server. A server, for example, will look up the name server and check for every logged-in disk drive.
When considering implementing both private and public loop devices within a switched fabric, it's important to understand the differences between initiators and targets. Communication between these devices, called translation, happens differently depending upon whether a device is on private or public loop and whether it is an initiator or a target.
Initiators And Targets In Both Public And Private Loop
An initiator is typically a server or a workstation that asks for data to, or from, disk or tape. A target is what an initiator communicates with. A target can be a disk drive, a RAID, or tape drive. Initiators and targets can either be private loop or public loop devices.
When Fibre Channel devices first came to market, the initial products were designed to run private loop. Private loop was the simplest to implement and Fibre Channel hubs on which private loop ran were much cheaper than the first Fibre Channel switches. There are a great number of private loop devices on the market and companies have made a substantial investment in private loop because of this. However, whether a device runs private or that the driver, which controls that device, determines the public loop, many devices have been upgraded via new drivers to run public loop with a switch. In some instances, however, devices cannot be upgraded because some vendors have not yet released drivers to run public loop or have discontinued support and don't want to update older versions of their products.
For example, Seagate initially only supported private loop on its Fibre Channel disk drives. They have since released new drivers that run both private and public loops. If you attach the drive to a hub, it will run private loop and, if you attach it to a switch, it will run public loop. This is also true of most host bus adapter vendors' drivers, as well.
When migrating to Fibre Channel switched fabrics, it's important that these private loop-only devices can be attached to communicate with today's full fabric, full featured SAN implementations. SAN administrators must be able attach any device, regardless of its fabric-aware status, to Fibre Channel switches. This ability maintains the investment in legacy equipment while delivering advantages of a switched fabric.
Translative Loop: Bridging Private And Public
While allowing private loops to attach to switches is not part of the Fibre Channel standard, switch vendors have been incorporating the ability to attach them in order to allow communication between all types of Fibre Channel devices. Ideally, a switch should be able to run in full fabric mode and allow the attachment of private loop devices by making them appear as if they are on the fabric. A less desirable implementation allows private loop attachment by making the public loop devices appear private, as well. In this implementation, the benefits of public loop (the ability to address more than 126 drives and the addition of the name server for device discovery, for example) disappear.
Translation works by manipulating the upper 16 bits of a 24-bit address. An additional 16 bits must be added because private loop devices use only an 8-bit address. Conversely, when a full-fabric device communicates to a private loop, the upper 16 bits must be taken off. The work of changing the upper 16 bits is generally done in hardware via tables in order to minimize any performance degradation.
When attaching private targets to a full fabric switch, the switch needs to be told that the port must do translation. Then, when the public or fabric initiator does a query to look for available targets, it will see both public and private targets and won't be able to distinguish between them.
Likewise, when attaching private initiators, the switch port must be told to translate on the port where the private server is attached. The private loop server or workstation can, then, see both private and public loop targets--both on its own loop, as well as on others (See Fig).
Switches are also available with support for private loop-only. Here, private devices are attached to a switch, either individually on a port or multiple devices on a single port. Of course, each device is aware of the devices on its own port, but it can also see other private devices on other ports. There is a limitation of 126 nodes among all private loops on a switch because these loops are still using an 8-bit address and are not doing any translating. One advantage of private loop-only is that each port or loop has a gigabit of bandwidth rather than sharing it among all the devices on a hub. No translating is done when private devices communicate to other private devices on a switch.
Fabric-only devices, those that do not run loop, can, of course, be run on a switch. These devices can also be fully integrated into a translative environment communicating with private and public loops.
Zoning: A Benefit In Translating
Zoning is the ability to segregate switch ports and devices on ports into self-contained sub-fabrics. Zoning can be applied to private loop, public loop, and fabric devices. Different switch vendors have implemented various methods of zoning, including hardware-based, name server-based, and worldwide name. During private-to-public and public-to-private translation, another form of zoning is introduced. From the management console, a list of available devices is displayed for each translative port. These devices can be selected or deselected if you want them to be seen. This is an effective technique for limiting access to particular drives. This is, of course, in addition to normal switch zoning, which is done either on a per-port basis or by worldwide name.
Today's switched Storage Area Networks must be able to accommodate all types of Fibre Channel devices. Although private loop was adequate for initial Fibre Channel implementations, full-featured, full-fabric public loop has major advantages and is the present and future for Fibre Channel. Nonetheless, many private loop implementations still exist and switches must allow their attachment and support their translation to public loop in order to support today's flexible and powerful SANs.
Larry Olson is a senior systems engineer at Ancor Communications, Inc. (Eden Prairie, MN).
|Printer friendly Cite/link Email Feedback|
|Title Annotation:||Technology Information|
|Publication:||Computer Technology Review|
|Date:||Mar 1, 2000|
|Previous Article:||Ask THE SCSI EXPERT.|
|Next Article:||XOR SUPPORT IN THE DISK DRIVES.|