Abstract:
In a telecommunications system containing more than one host computer and multiple real connections to the telecommunications network, an apparatus, method and system for allowing transmission to the dynamic reassignment of sessions from a failing host to an alternate or backup host computer without requiring changes to the devices or addresses of devices connecting to the host.

Description:
RELATED APPLICATIONS 
     There is a related application Ser. No. 02/755,420 entitled Virtual Internet Protocol Addressing filed on Nov. 22, 1996 by the same parties. 
    
    
     BACKGROUND OF THE INVENTION 
     TCP/IP (Transmission Control Protocol/Internet Protocol) is the transport mechanism underlying the Internet. It is also the underlying protocol for many intranets and business applications in existence today. TCP/IP was started as an educational and scientific network. It was not designed to handle high-volume traffic with the requirement of availability 7 days per week, 24 hours per day. TCP/IP was designed primarily as a fast transport mechanism. Because of this design point, there were few backup or redundancy measures incorporated into TCP/IP. 
     Through the growth of the Internet, which includes the world wide web, requirements have arisen for higher availability and greater reliability for host TCP/IP networks. This has become especially true where the TCP/IP host controls business applications or transactions. The design of TCP/IP is such that each physical network interface adapter has associated with it an address. This address is unique within the entire network and is the method by which all other devices communicate with the adapter or the devices connected through the adapter. If a given TCP/IP host having a particular adapter address should fail, the users communicating with the host cannot dynamically switch to using a host that contains redundant information since they must address the system using the interface adapter address. The user must change the reference to use the new or alternate host which is a manual process. 
     The methods available in the current art to rectify this problem are: (1) to have the network operators notify each of the end users of the IP address of the alternate adapter on the alternate host and the end users could request reconnection with the new IP address; (2) if the customers were using the Domain Name Server (DNS), the administrator could change the name-to-address mapping on the DNS, but these are normally over night administrative batch processes and many clients either do not use DNS or do not update cached name-to-address mappings frequently; or, (3) the user could install a new real physical network interface adapter card on the alternate host and configure it with the IP address of the failed adapter on the initial host, but the cost and time involved with this alternative makes it prohibitive for all except the most catastrophic of host failures. 
     SUMMARY OF THE INVENTION 
     The present invention involves a method and a system for allowing the network administrator to establish TCP connections using a Virtual Internet Protocol Address, which is not associated with a physical adapter, such that if the host associated with the virtual IP address fails or is brought down, the operator of a backup host can dynamically configure that same virtual IP address to reside on the backup host. 
    
    
     DESCRIPTION OF THE DRAWINGS 
     FIG. 1 depicts a representative network prior to a host identity takeover. 
     FIG. 2 demonstrates the logical flow of the backup process. 
     FIG. 3 depicts a representative network after host identity takeover has occurred. 
     FIG. 4 demonstrates the logical flow of the restoration process. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The preferred embodiment of the present invention is implemented in, but not limited to, an IBM MVS host running the TCP/IP protocol. It allows for an IP address that selects a TCP/IP stack (and an MVS image if there is only one stack on the MVS image) without selecting a specific network device or attachment. Other hosts that connect to MVS TCP/IP applications can send data to the MVS virtual IP address via whatever paths are selected by the routing protocols. Should the host upon which the virtual IP address reside fail, then the virtual IP address can be configured by a systems administrator to reside on a backup host. The dynamic routing protocols currently implemented in TCP/IP will then propagate the route to this virtual IP address to all of the routers in the network. The applications using this virtual IP address will then continue to process using the backup host. 
     FIG. 1 is a representative example of a network prior to a host identity takeover. Host MVS --  1 (101) contains a virtual IP address (VIPA) called VIPA --  A (105), along with one or more real physical links to a network. The network in the present example connects to a router, ROUTER --  R (107). Host MVS --  2 (103) does not contain VIPA address VIPA --  A, although it may contain other VIPA addresses. A given virtual IP address, such as VIPA --  A, must be unique in a network at any given time. In the present example, MVS --  2 has one or more real physical network interfaces to a network that directly connects to the router, ROUTER --  R (107). In general, MVS --  2 need not connect directly to the same router to which MVS --  1 connects, it can connect to any router in the network. ROUTER --  R (107) connects to an arbitrary IP network (109) to which the clients, such as Client --  C (111), also connect. 
     FIG. 2 depicts the process for host identity takeover when the host MVS --  S (101) is taken down or fails (201). When the operator of an alternate host, in this case MVS --  2 (103), learns that the original host, MVS --  1 (101) has stopped working or has been taken out of service, he dynamically configures the VIPA address (VIPA --  A) which previously resided on host MVS --  1 to now reside on MVS --  2. In the MVS TCP/IP of the preferred embodiment this is done by executing an OBEYFILE (202) that includes HOME, BSDROUTING PARMS, DEVICE and LINK statements for VIPA --  A. To learn more about these parameters, refer to the IBM TCP/IP 3.1 for MVS Customization and Administration Guide, IBM order number SC31-7134-02. A dynamic route update protocol, such as RIP (the Routing Information Protocol) then advertises routes to VIPA --  A (203) to all routers directly connected to MVS --  2. These routers update their routing tables with the new routes and, if appropriate, further advertise (204) the new routes to the desired virtual IP address (VIPA --  A) to adjacent routers. After the new routes to VIPA --  A have been propagated throughout the network, the clients in the network, such as Client --  C (111), re-establish their TCP connections to VIPA --  A (205). The routers will then route all of the traffic for the address VIPA --  A to the host MVS --  2. 
     FIG. 3 depicts the network of FIG. 1 after MVS --  1 (101) has failed or been taken out of service and MVS --  2 (103) has taken over the identity of MVS --  1 (101) by the process illustrated in FIG. 2. VIPA --  A now resides in MVS --  2 (103) and MVS --  1 (101) is effectively removed from the TCP/IP network. Client --  C (111) has re-established its TCP/IP connection with VIPA --  A (105) which now resides on MVS --  2 (103). 
     FIG. 4 is a logical flow of the procedure for restoring the identity of the original host in the preferred embodiment. In the figures of the present invention, this is the restoration of the identity of host MVS --  1 when it is returned to service in the TCP/IP network. When MVS --  1 becomes available (401), the operator of MVS --  2 notifies the clients which have TCP/IP connections to VIPA --  A that those connections will need to be reestablished (403). Then the operator of MVS --  2 removes VIPA --  A from the configuration file of MVS --  2 (405). In the preferred embodiment, this is done by executing an OBEYFILE that omits VIPA --  A from the HOME list and the BSDROUTINGPARMS. VIPA --  A&#39;s virtual interface and its associated routes are deleted (407), which stops the propagation of information indicating that VIPA --  A resides on MVS --  2. MVS --  1&#39;s operator then restarts TCP/IP on MVS --  1 and configures VIPA --  A to reside on MVS --  1 (409). Once this is accomplished, a dynamic routing protocol (RIP in the preferred embodiment) advertises the routes to VIPA --  A residing on MVS --  1 to its adjacent routers (ROUTER --  R in FIG. 1) (411). The adjacent routers to MVS --  1 update their routing tables for VIPA --  A (413) and propagate the new route to VIPA --  A to adjacent routers as necessary (415). Finally, clients re-establish TCP connections to VIPA --  A on MVS --  1 (417). At this point the network has been restored to the condition that it was in prior to the failure of MVS --  1. 
     The present invention allow for one host to provide a responsive backup to the TCP/IP communications network without having to modify the applications using the host. The ability to reroute network traffic for applications from one host to another host without any changes to the applications themselves provides significant savings in hardware, software and time.