Abstract:
A method comprises disconnecting from a first port of a switch addressable by an address of a first address format, connecting to a second port of the switch addressable by a second address format, and accessing the second port using the address.

Description:
BACKGROUND  
       [0001]     A storage area network (SAN) is a specialized, high-speed network. Usually separate and distinct from an enterprise&#39;s local area network (LAN) and wide area network (WAN), one purpose of a storage area network is to handle large amounts of data traffic between servers and storage devices, without reducing the bandwidth resources of the local area network or wide area network. Usually connected by Fibre Channel, a high speed transmission technology, a storage area network is a dedicated, platform-independent network that enables fast data access. A storage area network may also include one or more hubs or switches to route traffic.  
       SUMMARY  
       [0002]     A method comprises disconnecting from a first port of a switch addressable by an address of a first address format, connecting to a second port of the switch addressable by a second address format, and accessing the second port using the address.  
         [0003]     A network system comprises a network comprising a plurality of computers, data storage devices, a first access path between the network and the data storage devices comprising a plurality of switches, at least one of the switches addressable using a first address format, and a second access path between the network and the data storage devices comprising a plurality of switches, at least one of the switches addressable using a second address format.  
         [0004]     A method comprises logically stopping an access path from a host to a switch in the access path, disconnecting from ports of the switch addressable by a first addressing format and connecting to ports addressable by a second addressing format, and logically enabling the access path and addressing the ports of the switch using the second addressing format. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0005]      FIG. 1  is a simplified block diagram of a storage area network (SAN) system;  
         [0006]      FIG. 2  is a simplified block diagram of a storage area network system;  
         [0007]      FIG. 3   a  is a diagram of a first storage area network switch addressing format;  
         [0008]      FIG. 3   b  is a diagram of a second storage area network switch addressing format;  
         [0009]      FIG. 4  is a flowchart of a method to enable a new addressing format; and  
         [0010]      FIG. 5  is a simplified block diagram of a virtual fabrication system. 
     
    
     DESCRIPTION  
       [0011]     The present disclosure relates generally to the field of computer networks and, more particularly, to a method of enabling a new addressing mode in a storage area network (SAN) environment.  
         [0012]     Referring to  FIG. 1 , a storage system  12  is coupled to a network  16  via a storage area network  14 . Storage area network  14  may be, for example, a dual-fabric system or a multi-fabric system. Each storage area network fabric may include a plurality of switches. The storage area network fabric topology may be any suitable structure such as core-edge structure, ring structure, mesh structure, and/or other structures now known or to be developed. Storage system  12  may include any suitable media, such as disk, tape, and/or structures such as redundancy array of inexpensive disks (RAID). Network  16  may include local area network (LAN), wide area network (WAN), another storage area network or a combination of computer networks. In one embodiment, network  16  may support systems and applications for semiconductor manufacturing, web-based designing, customer ordering system, manufacturing control and management, vendor support, and information-sharing among the various groups. In another embodiment, network  16  may support a virtual fab, as further described below with reference to  FIG. 5 .  
         [0013]     In a storage area network  14 , hubs and/or switches may be used for routing traffic. Hubs are generally used in small, entry-level environments and systems. Hubs usually cost less, but also offer a lower throughput rate than switches. Switches may be used in data intensive, high-bandwidth applications such as backup, video editing, and document scanning. Due to the redundant data paths and superior manageability, switches are generally used in storage are networks with large amounts of data in high-availability environments. As storage area networks become more heavily integrated into an enterprise&#39;s computing infrastructure, the storage area networks often include multiple switching fabrics to provide redundancy. A single switch fabric, no matter how resiliently designed, is not immune to all failures such as natural disasters, software failure, hardware failure, human error, or a combination of unforeseen events. The use of redundant fabrics may increase the level of availability, even if one of the fabrics suffers a failure.  
         [0014]      FIG. 2  is a block diagram of a dual-fabric redundant storage area network system  20  which includes host computers or hosts  22  coupled to both a storage area network A  24 , and a storage area network B  28 . Storage area networks A and B are also coupled to a storage system  26 . In dual-fabric storage area network system  20 , both storage area network systems A and B may include switches for routing traffic. In other embodiments, system  20  may further include one or more additional storage area network systems.  
         [0015]     An addressing mechanism used in storage area network switches is called a port identifier or PID.  FIG. 3   a  is a diagram of a first PID address format  100  in a storage area network switch. First format  100  includes six hexadecimal digits  102 - 112 . The first two digits  102  and  104 , XX, denote the switch domain identifier. The third digit  106 , C, is a constant, for example 1. The fourth digit  108 , Y, is the port identifier on the switch. The last two digits  110  and  112 , ZZ, are Arbitrated Loop Physical Address (ALPA), which may be used to identify a device participating in an arbitrated loop. As an example, “011A00” represents switch domain 01, port number  10 , and ALPA 00. Using a single hexadecimal digit, Y, first PID format  100  is capable of addressing up to 16 ports per switch.  
         [0016]     A problem occurs when a storage area network that has been using 16-port switches using the first PID format needs to expand to accommodate switches with more than 16 ports that uses the second PID format. The operation of system  20  would be seriously disrupted to accommodate the address mode change. Host systems coupled to the storage area network would need to be taken offline to change over to the new addressing scheme of the larger switches.  FIG. 3   b  is a diagram of a second PID address format  120  for a storage area network switch. Second format  120  also includes six hexadecimal digits  122 - 132 . The first two digits  122  and  124 , XX, are the switch domain identifier. The third and fourth digits  126  and  128 , YY, are the port identifier on the switch. The last two digits  110  and  112 , ZZ, are used for ALPA, for devices participating in an arbitrated loop. As an example, “011A00” represents switch domain 01, port number  26 , and ALPA 00. Therefore, by using two hexadecimal digits, YY, second PID format  120  is capable of addressing up to 256 ports per switch.  
         [0017]     Referring to  FIG. 4 , an embodiment of a process  200  for migrating to a new storage area network switch addressing format is provided. Process  200  begins by logically stopping one access path from the host to the switch in block  202 . In one embodiment, due to the redundancy of access paths, the storage area network system is still available to all hosts. In block  204 , each switch in the inactivated access path is physically reconnected by shifting host connection from the port of the old address mode to the port of the new address mode.  
         [0018]     In one embodiment, for a constant of “1” in address field  106  ( FIG. 3   a ), for example, a host is disconnected from the original port of a switch while in the first PID format to a port of the same switch where the new port has port address  16  higher than that of the original port while in the second PID format. For example, if a host is connected to port  10  of switch 01 and ALPA is 00, then the address in the first PID format is “011A00”. If the host is reconnected to port  26  of the switch 01 and ALPA is 00, then the address in the second PID format is still “001A00.” 
         [0019]     In another embodiment, both addresses are the same using the new PID format and the second PID format (for a non-zero constant in field  106  in the first PID format), only the port number has changed. In this embodiment, the host could reach the storage system by using the same PID address, if such a reconnection works together while enabling the second PID format. In the embodiment of a constant of “1,” a connection from host to switch in the first PID format will be shifted up and reconnected to a new port of the same switch so that the new port address is 16 higher than that of the original port.  
         [0020]     In block  206  in  FIG. 4 , if all switches in the inactivated access path have been reconnected, then execution proceeds to block  208 . If not, execution returns to block  204 , and this step is repeated for every switch in the inactivated access path until all have been reconnected. In block  208 , the reconstructed access path is enabled for the hosts. In block  210 , if all access path have been reconstructed, execution proceeds to block  212 . Otherwise, execution returns to block  202  to repeat the same process for every access path. Every access path will be reconstructed until all paths have been done. In block  212 , process  200  is completed after all access paths have been reconstructed.  
         [0021]     Carried out in this manner, a storage area network is operable to migrate to a different PID addressing scheme without serious disruptions and down time.  
         [0022]     Referring now to  FIG. 5 , a more detailed block diagram of a virtual IC fabrication system (a “virtual fab”)  300  is an example of a host and server system coupled to a storage area network  14  and storage systems  12  ( FIG. 1 ). Virtual fab  300  includes a plurality of entities represented by one or more internal entities  302  and one or more external entities  304  that are coupled by a communications network  16 . Network  16  may be a single network or may be a variety of different networks, such as an intranet and the Internet, and may include both wireline and wireless communication channels.  
         [0023]     Each entity  302  and  304  may include one or more computing devices such as personal computers, personal digital assistants, pagers, cellular telephones, and the like. For the sake of example, internal entity  302  is expanded to show a central processing unit (CPU)  308 , a memory unit  310 , an input/output (I/O) device  312 , and an external interface  314 . The external interface may be, for example, a modem, a wireless transceiver, and/or one or more network interface cards (NICs). Components  308 - 314  are interconnected by a bus system  316 . It is understood that internal entity  302  may be differently configured and that each of the listed components may actually represent several different components. For example, the CPU  308  may actually represent a multi-processor or a distributed processing system; memory unit  310  may include different levels of cache memory, main memory, hard disks, and remote storage locations; and the I/O device  312  may include monitors, keyboards, and the like.  
         [0024]     Internal entity  302  may be coupled to communications network  16  through a wireless or wired link  318 , and/or through an intermediate network  320 , which may be further connected to the communications network. Intermediate network  320  may be, for example, a complete network or a subnet of a local area network, a company wide intranet, and/or the Internet. Internal entity  302  may be identified on one or both of the networks  16 ,  320  by an address or a combination of addresses, such as a MAC address associated with the network interface  314  and an IP address. Because the internal entity  302  may be connected to the intermediate network  320 , certain components may, at times, be shared with other internal entities. Therefore, a wide range of flexibility is anticipated in the configuration of the internal entity  302 . Furthermore, it is understood that, in some implementations, a server  301  may be provided to support multiple internal entities  302 . In other implementations, a combination of one or more servers and computers may together represent a single entity.  
         [0025]     In the present example, internal entities  302  represents those entities that are directly responsible for producing the end product, such as a wafer or individually tested IC devices. Examples of internal entities  302  include an engineer, customer service personnel, an automated system process, a design or fabrication facility and fab-related facilities such as raw-materials, shipping, assembly or test. Examples of external entities  304  include a customer, a design provider, and other facilities that are not directly associated or under the control of the fab. In addition, additional fabs and/or virtual fabs can be included with the internal or external entities. Each entity may interact with other entities and may provide services to and/or receive services from the other entities.  
         [0026]     It is understood that entities  302 ,  304  may be concentrated at a single location or may be distributed, and that some entities may be incorporated into other entities. In addition, each entity  302 ,  304  may be associated with system identification information that allows access to information within the system to be controlled based upon authority levels associated with each entities identification information.  
         [0027]     One or more of the services provided by the virtual fab  300  may enable collaboration and information access in such areas as design, engineering, and logistics. For example, in the design area, the customer  304  may be given access to information and tools related to the design of their product via the fab  302 . The tools may enable the customer  304  to perform yield enhancement analyses, view layout information, and obtain similar information. In the engineering area, the engineer  302  may collaborate with other engineers  302  using fabrication information regarding pilot yield runs, risk analysis, quality, and reliability. The logistics area may provide the customer  304  with fabrication status, testing results, order handling, and shipping dates. It is understood that these areas are exemplary, and that more or less information may be made available via the virtual fab  300  as desired.  
         [0028]     The present disclosure has been described relative to several alternative embodiments. Improvements or modifications that become apparent to persons of ordinary skill in the art only after reading this disclosure are deemed within the spirit and scope of the application. The present disclosure may be applied and implemented on varieties of areas and technologies such as computer integrated manufacturing, on-line library, online order system, and information technologies. It is understood that several modifications, changes and substitutions are intended in the foregoing disclosure and in some instances some features of the disclosure may be employed without a corresponding use of other features. Accordingly, it is appropriate that the appended claims be construed broadly, and not limited to the scope of the disclosure.