US20080256248A1 - Single server access in a multiple tcp/ip instance environment - Google Patents

Single server access in a multiple tcp/ip instance environment Download PDF

Info

Publication number
US20080256248A1
US20080256248A1 US12/147,102 US14710208A US2008256248A1 US 20080256248 A1 US20080256248 A1 US 20080256248A1 US 14710208 A US14710208 A US 14710208A US 2008256248 A1 US2008256248 A1 US 2008256248A1
Authority
US
United States
Prior art keywords
tcp
instance
server application
single server
registration repository
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/147,102
Inventor
George Eisenberger
Edgard H. McCulloch
Thomas L. Richards
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US12/147,102 priority Critical patent/US20080256248A1/en
Publication of US20080256248A1 publication Critical patent/US20080256248A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H70/00ICT specially adapted for the handling or processing of medical references
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/80ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for detecting, monitoring or modelling epidemics or pandemics, e.g. flu
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Definitions

  • the present invention relates to computer systems in general and more particularly to computer systems employing the Transmission Control Protocol/Internet Protocol (TCP/IP) to access server applications.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • the Internet is a client-server paradigm where clients access server applications to obtain information.
  • This proliferation of Internet users has led to many networks employing the same client-server paradigm in an internal network known as an intranet. These intranets are often built on the same communications protocols as the Internet.
  • a user or client may communicate with a server on an internal network or on the Internet in a seamless fashion such that the location of the server and access to that server may be transparent to a user.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • LANs local area networks
  • WANs wide area networks
  • OS/390 systems International Business Machines Corporation's OS/390 systems
  • a computer system To communicate using TCP/IP, a computer system typically has a TCP/IP protocol stack executing on the computer.
  • a TCP/IP protocol stack or TCP/IP instance governs the communications between the client and the server.
  • a computer system may have multiple TCP/IP instances communicating with multiple clients and servers.
  • a computer system 22 may have multiple TCP/IP instances (illustrated by TCP/IP A 12 and TCP/IP B 16 ) and multiple servers (illustrated by Server A 10 and Server B 14 ) communicating with multiple clients (illustrated by Client A 18 and Client B 20 ).
  • One typical constraint of the client-server model illustrated in FIG. 1 is that applications such as Server A 10 and Server B 14 may not span multiple TCP/IP instances.
  • applications such as Server A 10 and Server B 14 may not span multiple TCP/IP instances.
  • a particular server is limited to the IP address domain of the TCP/IP instance to which it is connected.
  • a duplicate of the server should be connected to each of the TCP/IP instances.
  • the computer system is generally either limited to a single TCP/IP instance or to duplicate copies of a server application for each TCP/IP instance of the computer system.
  • Limitations on the number of allowable server applications may be imposed architecturally by the server application or may result from hardware or software limitations for the system. For example, only a single instance of the OS/390 OpenEdition Open System Adapter Support Facility (OSA/SF) may run in a MVS partition although up to 8 TCP/IP instances are allowed. Thus, in order to be available to all clients in a computer system's IP domain then only a single TCP/IP instance may be utilized on a computer system with such a server.
  • OSA/SF OpenEdition Open System Adapter Support Facility
  • a further object of the present invention is to provide access to server applications across multiple TCP/IP instances without requiring the system resources of replicating the server application.
  • Another object of the present invention is to provide access across multiple TCP/IP instances to a server application for which multiple copies cannot be provided on a single computer system.
  • the single server application may be accessed by establishing a registration repository containing information sufficient to identify to both the single server application and a client application seeking to access the single server application, one of the multiple TCP/IP instances through which the single server application may be accessed by client applications.
  • the registration repository is accessible by the multiple TCP/IP instances and the single server application.
  • the client may connect through that TCP/IP instance to reach the single server application.
  • a single instance of the server application may be provided on the computer system and may be accessed by any client with access to the registration repository.
  • multiple copies of a server application are not required there may be fewer resources used to allow access from all of the IP domains of the computer system.
  • the multiple copies of the server application are not require to provide access to the server applications to clients of multiple TCP/IP instances, the present invention allows server application which cannot have multiple copies to be accessible across multiple TCP/IP instances.
  • the registration repository is established by registering a TCP/IP instance with the registration repository if single server access is requested by a client application utilizing the TCP/IP instance.
  • the registration may include storing an entry identifying an available TCP/IP instance.
  • a time stamp associated with the entry identifying the available TCP/IP instance which identifies when the TCP/IP instance was registered with the registration repository may also be stored in the registration repository.
  • the registration repository entry includes the TCP/IP instance identifier, the function of the server application associated with the TCP/IP instance and protocol information sufficient to allow connection between the TCP/IP instance and the client.
  • entries for a TCP/IP instance are removed from the registration repository when a TCP/IP instance is no longer available for connection to the single server application or client access to the single server application.
  • the entry may be removed by invalidating the registration of the TCP/IP instance in the registration repository.
  • the single server application selects a TCP/IP instance from the registration repository to be used for connection to the single server application.
  • a TCP/IP instance is stored in the registration repository.
  • a time stamp associated with the entry identifying the available TCP/IP instance is also stored in the registration repository. Then, the selection of the TCP/IP instance comprises selecting the TCP/IP instance with the earliest time stamp.
  • the client application accesses the registration repository to determine the TCP/IP instance through which the single server application may be accessed.
  • the client application then connects to the single server application by connecting to the TCP/IP instance through which the single server application may be accessed.
  • the client application may determine the TCP/IP instance through which the single server application may be accessed utilizing the same procedure by which the single server application selects a TCP/IP instance.
  • an entry identifying an available TCP/IP instance and a time stamp associated with the entry identifying the available TCP/IP instance in the registration repository may be stored in the registration repository.
  • the access of the registration repository may include accessing the registration repository to obtain the time stamp of entries in the registration repository and selecting the TCP/IP instance with the earliest time stamp as the TCP/IP instance through which the single server application may be accessed.
  • the registration repository is stored in common storage. Accessing the registration repository then includes accessing the common storage location of the registration repository and obtaining from the common storage location registration information to determine the TCP/IP instance through which the single server application may be accessed. Furthermore, the single server application may then be connected to by connecting to the determined TCP/IP instance through which the single server application may be accessed. Also, the common storage may be directly accessible by the client.
  • the common storage is accessed by accessing a first TCP/IP instance to access the common storage location of the registration repository. Registration information is then obtained from the common storage location through the first TCP/IP instance and the single server application connected to through a second TCP/IP instance.
  • the present invention may be embodied as a method, apparatus or computer program product.
  • FIG. 1 is a block diagram of a conventional multiple client/multiple server system
  • FIG. 2 is a block diagram of a client-server system according to the present invention.
  • FIG. 3 is a flow chart illustrating the creation of an entry in a registration repository according to the present invention
  • FIG. 4 is a flow chart illustrating the operation of the present invention.
  • FIG. 5 is a block diagram of an example system utilizing the present invention.
  • FIG. 2 illustrates a computer system utilizing the present invention.
  • a computer system 35 includes a single server application (Server A 30 ) and multiple TCP/IP instances (TCP/IP A 32 and TCP/IP B 34 ). Connected to the TCP/IP instances 32 and 34 are client applications (Client A 38 and Client B 39 ) to the server application 30 .
  • the computer system 35 may be any computer system capable of supporting multiple TCP/IP protocol stacks, however, the present invention is particularly well suited to mainframe computers such as International Business Machines Corporation's OS/390 computer systems utilizing the Multiple Virtual System (MVS) operating system.
  • MVS Multiple Virtual System
  • computer system 35 will typically include a processing unit, random access memory, non-volatile memory, mass storage devices, input devices, output devices and communication devices as well as software applications and an operating system to control the various devices and application associated with computer system 35 .
  • a registration repository 36 is provided in computer system 35 .
  • the registration repository is accessible by the TCP/IP instances 32 and 34 as well as the server 30 and client applications 38 and 39 .
  • the registration repository is preferably directly accessible by the clients 38 and 39 as is illustrated in FIG. 2 , but may also be accessible indirectly through, for example, the TCP/IP instances 32 and 34 .
  • the registration repository 36 is preferably implemented in common storage of computer system 35 .
  • a client may directly address the common storage associated with the registration repository to retrieve entries from the registration repository.
  • the server application could directly access the common storage to retrieve entry information.
  • the registration repository could be implemented in the coupling facility of the Sysplex.
  • a single server application could be shared across logical units of the Sysplex and provide single server access to the IP address domain of all of the logical units with access to the coupling facility.
  • the TCP/IP instances 32 and 34 create entries in the registration repository uniquely identifying the TCP/IP instance.
  • a server application When a server application is started it selects a TCP/IP instance from the entries in the registration repository.
  • the client 39 accesses the registration repository 36 and retrieves the information indicating which TCP/IP instance allows access to the single server application 30 . This selection process may be accomplished by the clients using the same selection mechanism as the server applications in selecting from the TCP/IP instances registered with the registration repository.
  • the client 39 then connects to the TCP/IP instance 32 with access to the single server application 30 .
  • a server application could access the registration repository to determine which TCP/IP instances allow single server access and then select one of the TCP/IP instances.
  • the server could then update the registration repository to indicate that the server application was associated with the selected TCP/IP instance.
  • Clients would then search the entries in the registration repository to find an entry identifying the desired server application and then utilize the associated TCP/IP instance to access the server application.
  • FIG. 3 and FIG. 4 are flowcharts illustrating the operation of a routing device and a master routing device utilizing the present invention.
  • each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations can be implemented by computer program instructions.
  • These program instructions may be provided to a processor to produce a machine, such that the instructions which execute on the processor create means for implementing the functions specified in the flowchart block or blocks.
  • the computer program instructions may be executed by a processor to cause a series of operational steps to be performed by the processor to produce a computer implemented process such that the instructions which execute on the processor provide steps for implementing the functions specified in the flowchart block or blocks.
  • blocks of the flowchart illustration support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the flowchart illustration, and combinations of blocks in the flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
  • FIG. 3 illustrates the creation of an entry in the registration repository 36 when a TCP/IP instance is started.
  • a TCP/IP instance is configured to require access to a single server application, either initially or dynamically after startup of the TCP/IP instance, an entry is added to the registration repository.
  • a TCP/IP instance is established (block 40 ) and determines in a client requires access to a single server application (block 42 ). If single server access is not required then the TCP/IP instance enters a wait loop (block 44 ) until a client request single server access.
  • the TCP/IP instance selects a time stamp for incorporation in the registration repository entry (block 46 ).
  • the time stamp acts as a unique identifier of the TCP/IP instance and prioritizes the TCP/IP instances for selection by clients and server applications.
  • the time stamp may be the time the TCP/IP instance was started or when the registration request was made. Whatever manner of selecting a time stamp is utilized it needs to be the same for all TCP/IP instances.
  • TCP/IP instances could be utilized. For example, priority tokens could be selected by TCP/IP instances or a priority count could be established and incremented each time a TCP/IP instance is initiated. What is required is a manner of identifying TCP/IP instances such that the client and the server may utilize the same selection procedure to reach the same selection result. Thus, whatever manner of prioritizing TCP/IP instances is utilized it should be utilized in the same manner for all TCP/IP instances.
  • the TCP/IP instance adds an entry to the registration repository 36 for the TCP/IP instance (block 48 ).
  • the entry in the repository preferably includes the TCP/IP instance identifier and protocol information sufficient to allow connection between the TCP/IP instance and the client.
  • the entry may also include the function of the server application associated with the TCP/IP instance.
  • the present invention assures that at least one TCP/IP instance will be available in the registration repository 36 for selection by the server application. For example, in FIG. 2 , if client 38 is the first client associated computer system 35 that request access to a single server application then upon receiving the request TCP/IP A 32 will create an entry in registration repository 36 to identify that it has received a request for single server access and to become available for selection by server 30 for use. Thus, even if a request for single server access is the first request received a TCP/IP instance will be present in the registration repository for use by the server application and the client. Additionally, by registering with the registration repository on a per TCP/IP instance basis, client access to a server application may be allowed or disallowed on a per TCP/IP instance basis.
  • a server application accesses the registration repository at start-up to select a TCP/IP instance. If no TCP/IP instances are identified in the registration repository, the server enters a wait loop until one is entered. The server then selects the TCP/IP instance and connects to that instance. Optionally, the server may update the registration repository to indicate that the server is connected to the TCP/IP instance. The server preferably selects the TCP/IP instance based upon the time stamp of the TCP/IP instance entry in the registration repository. However, other methods of selection may be utilized as long as the clients also use the same selection procedure. If the TCP/IP instance to which the server is connected terminates, the server re-accesses the registration repository to select a new TCP/IP instance for connection.
  • FIG. 4 illustrates the operation of a client communication utilizing the present invention.
  • the client When a client seeks to access a single server application, the client first accesses the registration repository 36 to retrieve the entry with the earliest time stamp (block 50 ). The client will utilize this entry to attempt to connect to the server. The server also accesses the repository to establish connections and uses the same selection process as clients. Therefore, even if the TCP/IP instance is one which is in the process of terminating, both the client and the server should eventually select the same TCP/IP instance if the same selection process is utilized.
  • the client After retrieving the entry from the registration repository, the client determines the TCP/IP instance through which a connection may be established to the server (block 52 ). As discussed above, this may be the TCP/IP instance corresponding to the earliest time stamp entry in the registration repository. However, other criteria for selecting the TCP/IP instance may be utilized as long as the client and the server use the same criteria.
  • the client then connects to the server using the determined TCP/IP instance (block 54 ). Such a connection is possible because, as discussed above, the registration entry contains sufficient information to allow for a connection between the TCP/IP instance, the client and the server.
  • the TCP/IP instance In the event of an error or termination of the TCP/IP instance, the TCP/IP instance notifies the clients and servers utilizing the TCP/IP instance of the error.
  • the terminating TCP/IP instance is removed from the registration repository.
  • the clients and servers then would reaccess the registration repository to select a different TCP/IP instance for re-establishing connections or wait until an eligible TCP/IP instance is available (i.e. registered in the repository). Again, because the clients and servers would utilize the same process for selecting a TCP/IP instance a connection should be capable of being established.
  • single server access and “single server application” have been used herein to describe the present invention. As used herein, those terms refer to instance of a server application which span multiple TCP/IP instances in that clients from multiple IP domains may access a single instance of a server application.
  • FIG. 5 illustrates one computer system in which the present invention may be utilized.
  • a computer system utilizes OSA/SF in an MVS partition.
  • Multiple TCP/IP instances also include SNMP support.
  • OSA/SF Open System Adapter/Support Facility
  • OSA/SF Open System Adapter/Support Facility
  • TCP/IP A 64 is identified in the Repository 68 as the first eligible TCP/IP instance for single server application access to OSA/SF 62 .
  • the single server application, OSA/SF 62 connects to TCP/IP A 64 after accessing the Repository 68 to determine that TCP/IP A 64 corresponds to the entry in the repository with the earliest time stamp.
  • SNMP Agent 70 and SNMP Agent 72 are also started.
  • Each of the client applications, SNMP Agent 70 and SNMP Agent 72 connects into their respective TCP/IP instance in order to receive requests from the associating TCP/IP Networks, 74 and 76 .
  • Each TCP/IP instance requires separate SNMP Agents in order to provide network management support for each of the respective IP Address domains for TCP/IP Network 74 and TCP/IP Network 76 .
  • SNMP Simple Network Management Protocol
  • the SNMP Agents handle all of the related SNMP protocol functions but require access to OSA/SF 62 in order to retrieve and set configuration variables specific to the adapters managed by OSA/SF.
  • the SNMP Agent 70 When the SNMP Agent 70 is started, it connects to the single server application OSA/SF 62 via TCP/IP A 64 after accessing the Repository 68 to determine that TCP/IP A 64 is the first eligible TCP/IP instance.
  • the client application SNMP Agent 72 after accessing the Repository 68 also establishes a connection to the Single Server application OSA/SF 62 through TCP/IP A 64 . Note that both client applications actually have two connections established. The first is to their respective TCP/IP instance in order to receive and respond to requests from their respective TCP/IP Networks 74 and 76 .
  • Both SNMP Agent 70 and 72 establish a second connection through TCP/IP A 64 in order to gain access to the single server application, OSA/SF 62 .
  • SNMP Agents clients
  • OSA/SF server connections
  • dashed lines a single server application such as OSA/SF may be accessed by multiple IP address domains through multiple TCP/IP instances where only a single TCP/IP instance is connected directly to the server application.

Abstract

Methods, systems and computer program products are provided that access a single server application executing on a processing system having multiple TCP/IP instances. The single server application may be accessed by establishing a registration repository containing information sufficient to identify to both the single server application and a client application seeking to access the single server application, one of the multiple TCP/IP instances through which the single server application may be accessed by client applications. In such a case, the registration repository is accessible by the multiple TCP/IP instances and the single server application.

Description

    PRIORITY CLAIM
  • The present application is a continuation of U.S. patent application Ser. No. 11/032,391, titled, “Single Server Access in a Multiple TCP/IP Instance Environment,” filed on Jan. 10, 2005, the contents of which is incorporated herein by reference in its entirety.
  • FIELD OF THE INVENTION
  • The present invention relates to computer systems in general and more particularly to computer systems employing the Transmission Control Protocol/Internet Protocol (TCP/IP) to access server applications.
  • BACKGROUND OF THE INVENTION
  • In recent years there has been an increase in interest in the Internet and Internet applications. The Internet is a client-server paradigm where clients access server applications to obtain information. This proliferation of Internet users has led to many networks employing the same client-server paradigm in an internal network known as an intranet. These intranets are often built on the same communications protocols as the Internet. Thus a user or client may communicate with a server on an internal network or on the Internet in a seamless fashion such that the location of the server and access to that server may be transparent to a user.
  • The communication protocol on which the Internet is based is known as the Transmission Control Protocol/Internet Protocol (TCP/IP). The popularity of the Internet and of intranets has led to the proliferation of TCP/IP throughout the computing community. This proliferation has led to TCP/IP being utilized on local area networks (LANs), wide area networks (WANs) and even on mainframe computers such as the International Business Machines Corporation's OS/390 systems.
  • To communicate using TCP/IP, a computer system typically has a TCP/IP protocol stack executing on the computer. A TCP/IP protocol stack or TCP/IP instance governs the communications between the client and the server. If the computer systems capabilities allow, a computer system may have multiple TCP/IP instances communicating with multiple clients and servers. Thus, as is illustrated in FIG. 1, a computer system 22 may have multiple TCP/IP instances (illustrated by TCP/IP A 12 and TCP/IP B 16) and multiple servers (illustrated by Server A 10 and Server B 14) communicating with multiple clients (illustrated by Client A 18 and Client B 20).
  • One typical constraint of the client-server model illustrated in FIG. 1, is that applications such as Server A 10 and Server B 14 may not span multiple TCP/IP instances. Thus, where multiple TCP/IP instance exist on a single computer system a particular server is limited to the IP address domain of the TCP/IP instance to which it is connected. Thus, to support clients connecting to the computer system through more than one of the computer systems TCP/IP instances a duplicate of the server should be connected to each of the TCP/IP instances. Thus, to make a server application available to all IP address domains of a computer system the computer system is generally either limited to a single TCP/IP instance or to duplicate copies of a server application for each TCP/IP instance of the computer system.
  • While in some situations multiple copies of a server application may be acceptable, in certain situations it is not possible to have multiple copies of a server on a single computer system. Limitations on the number of allowable server applications may be imposed architecturally by the server application or may result from hardware or software limitations for the system. For example, only a single instance of the OS/390 OpenEdition Open System Adapter Support Facility (OSA/SF) may run in a MVS partition although up to 8 TCP/IP instances are allowed. Thus, in order to be available to all clients in a computer system's IP domain then only a single TCP/IP instance may be utilized on a computer system with such a server.
  • Even if a particular server application allows for multiple instances in a single computer system and the computer system's hardware and software are capable of multiple copies of a server there may still be disadvantages to multiple copies of a server on a single system. For example, system resources are still occupied by multiple copies of a server application. Central Processing Unit (CPU) usage may be increased as well as storage and memory requirements. Furthermore, synchronization of multiple copies of a server application to provide consistent server responses across multiple TCP/IP instances may also present difficulties.
  • In view of the above discussion, there exists a need for improvement in computer systems having multiple TCP/IP instances to allow access to server applications across the IP domain's of multiple TCP/IP instances.
  • SUMMARY OF THE INVENTION
  • In light of the limitations of existing client-server systems, it is an object of the present invention to provide for the access to server applications across multiple TCP/IP instances.
  • A further object of the present invention is to provide access to server applications across multiple TCP/IP instances without requiring the system resources of replicating the server application.
  • Another object of the present invention is to provide access across multiple TCP/IP instances to a server application for which multiple copies cannot be provided on a single computer system.
  • These and other objects of the present invention are provided by methods, systems and computer program products that access a single server application executing on a processing system having multiple TCP/IP instances. The single server application may be accessed by establishing a registration repository containing information sufficient to identify to both the single server application and a client application seeking to access the single server application, one of the multiple TCP/IP instances through which the single server application may be accessed by client applications. In such a case, the registration repository is accessible by the multiple TCP/IP instances and the single server application.
  • By establishing a registration repository in which clients may determine which TCP/IP instance of multiple TCP/IP instances to access to reach a single server application, the client may connect through that TCP/IP instance to reach the single server application. Thus, only a single instance of the server application may be provided on the computer system and may be accessed by any client with access to the registration repository. Furthermore, because multiple copies of a server application are not required there may be fewer resources used to allow access from all of the IP domains of the computer system. Also, because the multiple copies of the server application are not require to provide access to the server applications to clients of multiple TCP/IP instances, the present invention allows server application which cannot have multiple copies to be accessible across multiple TCP/IP instances.
  • In a particular embodiment of the present invention, the registration repository is established by registering a TCP/IP instance with the registration repository if single server access is requested by a client application utilizing the TCP/IP instance. In such a case, the registration may include storing an entry identifying an available TCP/IP instance. A time stamp associated with the entry identifying the available TCP/IP instance which identifies when the TCP/IP instance was registered with the registration repository may also be stored in the registration repository.
  • In a preferred embodiment, the registration repository entry includes the TCP/IP instance identifier, the function of the server application associated with the TCP/IP instance and protocol information sufficient to allow connection between the TCP/IP instance and the client.
  • In another embodiment of the present invention entries for a TCP/IP instance are removed from the registration repository when a TCP/IP instance is no longer available for connection to the single server application or client access to the single server application. In such a case, the entry may be removed by invalidating the registration of the TCP/IP instance in the registration repository.
  • In another embodiment of the present invention, the single server application selects a TCP/IP instance from the registration repository to be used for connection to the single server application. In a particular aspect of the present invention, an entry identifying an available TCP/IP instance is stored in the registration repository. A time stamp associated with the entry identifying the available TCP/IP instance is also stored in the registration repository. Then, the selection of the TCP/IP instance comprises selecting the TCP/IP instance with the earliest time stamp.
  • In still another embodiment of the present invention wherein the client application accesses the registration repository to determine the TCP/IP instance through which the single server application may be accessed. The client application then connects to the single server application by connecting to the TCP/IP instance through which the single server application may be accessed. In such a case, the client application may determine the TCP/IP instance through which the single server application may be accessed utilizing the same procedure by which the single server application selects a TCP/IP instance. Furthermore, an entry identifying an available TCP/IP instance and a time stamp associated with the entry identifying the available TCP/IP instance in the registration repository may be stored in the registration repository. Then the access of the registration repository may include accessing the registration repository to obtain the time stamp of entries in the registration repository and selecting the TCP/IP instance with the earliest time stamp as the TCP/IP instance through which the single server application may be accessed.
  • In another embodiment of the present invention, the registration repository is stored in common storage. Accessing the registration repository then includes accessing the common storage location of the registration repository and obtaining from the common storage location registration information to determine the TCP/IP instance through which the single server application may be accessed. Furthermore, the single server application may then be connected to by connecting to the determined TCP/IP instance through which the single server application may be accessed. Also, the common storage may be directly accessible by the client.
  • In yet another embodiment of the present invention, the common storage is accessed by accessing a first TCP/IP instance to access the common storage location of the registration repository. Registration information is then obtained from the common storage location through the first TCP/IP instance and the single server application connected to through a second TCP/IP instance.
  • As will further be appreciated by those of skill in the art, the present invention may be embodied as a method, apparatus or computer program product.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a conventional multiple client/multiple server system;
  • FIG. 2 is a block diagram of a client-server system according to the present invention;
  • FIG. 3 is a flow chart illustrating the creation of an entry in a registration repository according to the present invention;
  • FIG. 4 is a flow chart illustrating the operation of the present invention; and
  • FIG. 5 is a block diagram of an example system utilizing the present invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • The present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Like numbers refer to like elements throughout. As will be appreciated by one of skill in the art, the present invention may be embodied as methods or devices. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects.
  • FIG. 2 illustrates a computer system utilizing the present invention. As seen in FIG. 2, a computer system 35 includes a single server application (Server A 30) and multiple TCP/IP instances (TCP/IP A 32 and TCP/IP B 34). Connected to the TCP/IP instances 32 and 34 are client applications (Client A 38 and Client B 39) to the server application 30. The computer system 35 may be any computer system capable of supporting multiple TCP/IP protocol stacks, however, the present invention is particularly well suited to mainframe computers such as International Business Machines Corporation's OS/390 computer systems utilizing the Multiple Virtual System (MVS) operating system. Thus, as will be appreciated by those of skill in the art, computer system 35 will typically include a processing unit, random access memory, non-volatile memory, mass storage devices, input devices, output devices and communication devices as well as software applications and an operating system to control the various devices and application associated with computer system 35.
  • As is further illustrated in FIG. 2, a registration repository 36 is provided in computer system 35. The registration repository is accessible by the TCP/IP instances 32 and 34 as well as the server 30 and client applications 38 and 39. The registration repository is preferably directly accessible by the clients 38 and 39 as is illustrated in FIG. 2, but may also be accessible indirectly through, for example, the TCP/IP instances 32 and 34. The registration repository 36 is preferably implemented in common storage of computer system 35. Thus, for example, in an MVS system where the registration repository is implemented in common storage, a client may directly address the common storage associated with the registration repository to retrieve entries from the registration repository. Similarly, the server application could directly access the common storage to retrieve entry information.
  • In a further aspect of the present invention where the computer system 35 is a logical unit in a Sysplex the registration repository could be implemented in the coupling facility of the Sysplex. Thus, a single server application could be shared across logical units of the Sysplex and provide single server access to the IP address domain of all of the logical units with access to the coupling facility.
  • In operation, the TCP/IP instances 32 and 34 create entries in the registration repository uniquely identifying the TCP/IP instance. When a server application is started it selects a TCP/IP instance from the entries in the registration repository. When a client seeks to access a single server application 30, the client 39 accesses the registration repository 36 and retrieves the information indicating which TCP/IP instance allows access to the single server application 30. This selection process may be accomplished by the clients using the same selection mechanism as the server applications in selecting from the TCP/IP instances registered with the registration repository. The client 39 then connects to the TCP/IP instance 32 with access to the single server application 30.
  • Alternatively, a server application could access the registration repository to determine which TCP/IP instances allow single server access and then select one of the TCP/IP instances. The server could then update the registration repository to indicate that the server application was associated with the selected TCP/IP instance. Clients would then search the entries in the registration repository to find an entry identifying the desired server application and then utilize the associated TCP/IP instance to access the server application. However, such an implementation is essentially a special case of the first alternative. Accordingly, the detailed operation described below focuses primarily on the first alternative briefly described above. Those of skill in the art will understand that the special case may be readily implemented once the principles of the general case are understood.
  • The present invention will now be described with respect to FIG. 3 and FIG. 4 which are flowcharts illustrating the operation of a routing device and a master routing device utilizing the present invention. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by computer program instructions. These program instructions may be provided to a processor to produce a machine, such that the instructions which execute on the processor create means for implementing the functions specified in the flowchart block or blocks. The computer program instructions may be executed by a processor to cause a series of operational steps to be performed by the processor to produce a computer implemented process such that the instructions which execute on the processor provide steps for implementing the functions specified in the flowchart block or blocks.
  • Accordingly, blocks of the flowchart illustration support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the flowchart illustration, and combinations of blocks in the flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
  • FIG. 3 illustrates the creation of an entry in the registration repository 36 when a TCP/IP instance is started. When a TCP/IP instance is configured to require access to a single server application, either initially or dynamically after startup of the TCP/IP instance, an entry is added to the registration repository. As seen in FIG. 3, a TCP/IP instance is established (block 40) and determines in a client requires access to a single server application (block 42). If single server access is not required then the TCP/IP instance enters a wait loop (block 44) until a client request single server access.
  • If a client initially requests single server access or subsequently request single server access, then the TCP/IP instance selects a time stamp for incorporation in the registration repository entry (block 46). The time stamp acts as a unique identifier of the TCP/IP instance and prioritizes the TCP/IP instances for selection by clients and server applications. The time stamp may be the time the TCP/IP instance was started or when the registration request was made. Whatever manner of selecting a time stamp is utilized it needs to be the same for all TCP/IP instances.
  • Alternatively, other methods of providing unique priority for the TCP/IP instances could be utilized. For example, priority tokens could be selected by TCP/IP instances or a priority count could be established and incremented each time a TCP/IP instance is initiated. What is required is a manner of identifying TCP/IP instances such that the client and the server may utilize the same selection procedure to reach the same selection result. Thus, whatever manner of prioritizing TCP/IP instances is utilized it should be utilized in the same manner for all TCP/IP instances.
  • Returning to FIG. 3, after selection of a time stamp, the TCP/IP instance adds an entry to the registration repository 36 for the TCP/IP instance (block 48). The entry in the repository preferably includes the TCP/IP instance identifier and protocol information sufficient to allow connection between the TCP/IP instance and the client. As briefly discussed above, the entry may also include the function of the server application associated with the TCP/IP instance.
  • By creating an entry in the registration repository 36 if a client requests access to a single server application, the present invention assures that at least one TCP/IP instance will be available in the registration repository 36 for selection by the server application. For example, in FIG. 2, if client 38 is the first client associated computer system 35 that request access to a single server application then upon receiving the request TCP/IP A 32 will create an entry in registration repository 36 to identify that it has received a request for single server access and to become available for selection by server 30 for use. Thus, even if a request for single server access is the first request received a TCP/IP instance will be present in the registration repository for use by the server application and the client. Additionally, by registering with the registration repository on a per TCP/IP instance basis, client access to a server application may be allowed or disallowed on a per TCP/IP instance basis.
  • With respect to the server application, a server application accesses the registration repository at start-up to select a TCP/IP instance. If no TCP/IP instances are identified in the registration repository, the server enters a wait loop until one is entered. The server then selects the TCP/IP instance and connects to that instance. Optionally, the server may update the registration repository to indicate that the server is connected to the TCP/IP instance. The server preferably selects the TCP/IP instance based upon the time stamp of the TCP/IP instance entry in the registration repository. However, other methods of selection may be utilized as long as the clients also use the same selection procedure. If the TCP/IP instance to which the server is connected terminates, the server re-accesses the registration repository to select a new TCP/IP instance for connection.
  • FIG. 4 illustrates the operation of a client communication utilizing the present invention. When a client seeks to access a single server application, the client first accesses the registration repository 36 to retrieve the entry with the earliest time stamp (block 50). The client will utilize this entry to attempt to connect to the server. The server also accesses the repository to establish connections and uses the same selection process as clients. Therefore, even if the TCP/IP instance is one which is in the process of terminating, both the client and the server should eventually select the same TCP/IP instance if the same selection process is utilized.
  • After retrieving the entry from the registration repository, the client determines the TCP/IP instance through which a connection may be established to the server (block 52). As discussed above, this may be the TCP/IP instance corresponding to the earliest time stamp entry in the registration repository. However, other criteria for selecting the TCP/IP instance may be utilized as long as the client and the server use the same criteria. The client then connects to the server using the determined TCP/IP instance (block 54). Such a connection is possible because, as discussed above, the registration entry contains sufficient information to allow for a connection between the TCP/IP instance, the client and the server.
  • In the event of an error or termination of the TCP/IP instance, the TCP/IP instance notifies the clients and servers utilizing the TCP/IP instance of the error. The terminating TCP/IP instance is removed from the registration repository. The clients and servers then would reaccess the registration repository to select a different TCP/IP instance for re-establishing connections or wait until an eligible TCP/IP instance is available (i.e. registered in the repository). Again, because the clients and servers would utilize the same process for selecting a TCP/IP instance a connection should be capable of being established.
  • The terms “single server access” and “single server application” have been used herein to describe the present invention. As used herein, those terms refer to instance of a server application which span multiple TCP/IP instances in that clients from multiple IP domains may access a single instance of a server application.
  • The present invention may be further understood by way of example. FIG. 5 illustrates one computer system in which the present invention may be utilized. As seen in FIG. 5, a computer system utilizes OSA/SF in an MVS partition. Multiple TCP/IP instances also include SNMP support.
  • In the example depicted by FIG. 5, the two TCP/IP instances, TCP/IP A 64 and TCP/IP B 66, were started with both requiring client access to the single server application represented by OSA/SF 62. OSA/SF (Open System Adapter/Support Facility) is an application that manages OSA Adapters on a OS/390 system. Only a single instance of OSA/SF can be started per MVS system due to architecture constraints.
  • TCP/IP A 64 is identified in the Repository 68 as the first eligible TCP/IP instance for single server application access to OSA/SF 62. The single server application, OSA/SF 62 connects to TCP/IP A 64 after accessing the Repository 68 to determine that TCP/IP A 64 corresponds to the entry in the repository with the earliest time stamp.
  • At some point, two OSA/SF Client Applications, SNMP Agent 70 and SNMP Agent 72 are also started. Each of the client applications, SNMP Agent 70 and SNMP Agent 72, connects into their respective TCP/IP instance in order to receive requests from the associating TCP/IP Networks, 74 and 76.
  • Each TCP/IP instance requires separate SNMP Agents in order to provide network management support for each of the respective IP Address domains for TCP/IP Network 74 and TCP/IP Network 76. SNMP (Simple Network Management Protocol) is a standard management protocol implemented by many TCP/IP Hosts. The SNMP Agents handle all of the related SNMP protocol functions but require access to OSA/SF 62 in order to retrieve and set configuration variables specific to the adapters managed by OSA/SF.
  • When the SNMP Agent 70 is started, it connects to the single server application OSA/SF 62 via TCP/IP A 64 after accessing the Repository 68 to determine that TCP/IP A 64 is the first eligible TCP/IP instance. The client application SNMP Agent 72 after accessing the Repository 68 also establishes a connection to the Single Server application OSA/SF 62 through TCP/IP A 64. Note that both client applications actually have two connections established. The first is to their respective TCP/IP instance in order to receive and respond to requests from their respective TCP/IP Networks 74 and 76. Both SNMP Agent 70 and 72 establish a second connection through TCP/IP A 64 in order to gain access to the single server application, OSA/SF 62. In FIG. 5, the SNMP Agents (clients) and OSA/SF (server) connections are depicted using dashed lines. Thus, a single server application such as OSA/SF may be accessed by multiple IP address domains through multiple TCP/IP instances where only a single TCP/IP instance is connected directly to the server application.
  • In the drawings and specification, there have been disclosed typical preferred embodiments of the invention and, although specific terms are employed, they are used in a generic and descriptive sense only and not for purposes of limitation, the scope of the invention being set forth in the following claims.

Claims (28)

1. A system for accessing a single server application executing on a processing system having multiple TCP/IP instances comprising:
a processor;
a registration repository containing information sufficient to identify to both the single server application and a client application seeking to access the single server application, one of the multiple TCP/IP instances through which the single server application may be accessed by client applications and wherein the registration repository is accessible by the multiple TCP/IP instances and the single server application; and
a utility which executes on the processor and provides means for accessing the registration repository to select a TCP/IP instance for connection to the server application.
2. The system according to claim 1, further comprising:
means for establishing the registration repository; and
means for registering a TCP/IP instance with the registration repository if single server access is requested by a client application utilizing the TCP/IP instance.
3. The system according to claim 2, wherein said means for registering comprises the steps of:
storing an entry identifying an available TCP/IP instance; and
storing a time stamp associated with the entry identifying the available TCP/IP instance which identifies when the TCP/IP instance was registered with the registration repository.
4. The system according to claim 3, wherein the entry identifying the TCP/IP instance includes a TCP/IP instance identifier and protocol information sufficient to allow connection between the TCP/IP instance and the client.
5. The system according to claim 2, further comprising means for removing from the registration repository a TCP/IP instance which is no longer available for connection to the single server application or client access to the single server application.
6. The system according to claim 5, wherein said means for removing comprises means for invalidating the registration of the TCP/IP instance in the registration repository.
7. The system according to claim 1, wherein the single server application provides the means for selecting a TCP/IP instance from the registration repository to be used for connection to the single server application.
8. The system according to claim 7, further comprising:
means for storing an entry identifying an available TCP/IP instance in the registration repository;
means for storing a time stamp associated with the entry identifying the available TCP/IP instance in the registration repository; and
wherein said means for selecting a TCP/IP instance comprises means for selecting the TCP/IP instance with the earliest time stamp.
9. The system according to claim 7, wherein the client application provides:
means for accessing the registration repository to determine the TCP/IP instance through which the single server application may be accessed; and
means for connecting to the single server application by connecting to the TCP/IP instance through which the single server application may be accessed.
10. The system according to claim 9, wherein the client application includes means for determining the TCP.IP instance through which the single server application may be accessed utilizing the same procedure by which the single server application selects a TCP/IP instance.
11. The system according to claim 9, further comprising:
means for storing an entry identifying an available TCP/IP instance in the registration repository; and
means for storing a time stamp associated with the entry identifying the available TCP/IP instance in the registration repository; and
wherein said means for accessing the registration repository comprises:
means for accessing the registration repository to obtain the time stamp of entries in the registration repository; and
means for selecting the TCP/IP instance with the earliest time stamp as the TCP/IP instance through which the single server application may be accessed.
12. The system according to claim 9, wherein the registration repository is stored in common storage and wherein said means for accessing the registration repository comprises:
means for accessing the common storage location of the registration repository; and
means for obtaining from the common storage location registration information to determine the TCP/IP instance through which the single server application may be accessed; and
wherein said means for connecting to the single server application comprises means for connecting to the determined TCP/IP instance through which the single server application may be accessed.
13. The system according to claim 12, wherein said common storage is directly accessible by the client and wherein said means for accessing the common storage comprises means for directly accessing the common storage.
14. A system according to claim 12, wherein:
said means for accessing the common storage comprises means for accessing a first TCP/IP instance to access the common storage location of the registration repository;
said means for obtaining registration information comprises means for obtaining registration information from the common storage location through the first TCP/IP instance; and
said means for connecting to the single server application comprises means for connecting to a second TCP/IP instance through which the single server application may be accessed.
15. A computer program product for accessing a single server application executing on a processing system having multiple TCP/IP instances comprising:
a computer-readable storage medium having computer-readable program means embodied in said medium, said computer-readable program means comprising:
program means for establishing a registration repository containing information sufficient to identify to both the single server application and a client application seeking to access the single server application, one of the multiple TCP/IP instances through which the single server application may be accessed by client applications and wherein the registration repository is accessible by the multiple TCP/IP instances and the single server application; and
program means for accessing the registration repository to select a TCP/IP instance for connection to the server application.
16. The computer program product according to claim 15, wherein said program means for establishing a registration repository comprises program means for registering a TCP/IP instance with the registration repository if single server access is requested by a client application utilizing the TCP/IP instance.
17. The computer program product according to claim 16, wherein said program means for registering comprises program means for:
storing an entry identifying an available TCP/IP instance; and
storing a time stamp associated with the entry identifying the available TCP/IP instance which identifies when the TCP/IP instance was registered with the registration repository.
18. The computer program product according to claim 17, wherein the entry identifying the TCP/IP instance includes a TCP/IP instance identifier and protocol information sufficient to allow connection between the TCP/IP instance and the client.
19. The computer program product according to claim 16, further comprising program means for removing from the registration repository a TCP/IP instance which is no longer available for connection to the single server application or client access to the single server application.
20. The computer program product according to claim 19, wherein program means for removing comprises program means for invalidating the registration of the TCP/IP instance in the registration repository.
21. The computer program product according to claim 15, wherein the single server application provides the program means for selecting a TCP/IP instance from the registration repository to be used for connection to the single server application.
22. The computer program product according to claim 21, further comprising:
program means for storing an entry identifying an available TCP/IP instance in the registration repository and
program means for storing a time stamp associated with the entry identifying the available TCP/IP instance in the registration repository; and
wherein said program means for selecting a TCP/IP instance comprises program means for selecting the TCP/IP instance with the earliest time stamp.
23. The computer program product according to claim 21, wherein the client application provides:
program means for accessing the registration repository to determine the TCP/IP instance through which the single server application may be accessed; and
program means for connecting to the single server application by connecting to the TCP/IP instance through which the single server application may be accessed.
24. The computer program product according to claim 23, wherein the client application provides program means for determining the TCP.IP instance through which the single server application may be accessed utilizing the same procedure by which the single server application selects a TCP/IP instance.
25. The computer program product according to claim 23, further comprising:
program means for storing an entry identifying an available TCP/IP instance in the registration repository; and
program means for storing a time stamp associated with the entry identifying the available TCP/IP instance in the registration repository; and
wherein said program means for accessing the registration repository comprises:
program means for accessing the registration repository to obtain the time stamp of entries in the registration repository and
program means for selecting the TCP/IP instance with the earliest time stamp as the TCP/IP instance through which the single server application may be accessed.
26. The computer program product according to claim 23, wherein the registration repository is stored in common storage and wherein said program means for accessing the registration repository comprises:
program means for accessing the common storage location of the registration repository; and
program means for obtaining from the common storage location registration information to determine the TCP/IP instance through which the single server application may be accessed; and
wherein said program means for connecting to the single server application comprises program means for connecting to the determined TCP/IP instance through which the single server application may be accessed.
27. The computer program product according to claim 26, wherein said common storage is directly accessible by the client and wherein said program means for accessing the common storage comprises program means for directly accessing the common storage.
28. The computer program product according to claim 26, wherein said program means for accessing the common storage comprises program means for accessing a first TCP/IP instance to access the common storage location of the registration repository;
wherein said program means for obtaining registration information comprises program means for obtaining registration information from the common storage location through the first TCP/IP instance; and
wherein said program means for connecting to the single server application comprises program means for connecting to a second TCP/IP instance through which the single server application may be accessed.
US12/147,102 2005-01-10 2008-06-26 Single server access in a multiple tcp/ip instance environment Abandoned US20080256248A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/147,102 US20080256248A1 (en) 2005-01-10 2008-06-26 Single server access in a multiple tcp/ip instance environment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/032,391 US7827234B2 (en) 2005-01-10 2005-01-10 Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting
US12/147,102 US20080256248A1 (en) 2005-01-10 2008-06-26 Single server access in a multiple tcp/ip instance environment

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/032,391 Continuation US7827234B2 (en) 2005-01-10 2005-01-10 Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting

Publications (1)

Publication Number Publication Date
US20080256248A1 true US20080256248A1 (en) 2008-10-16

Family

ID=36061313

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/032,391 Expired - Fee Related US7827234B2 (en) 2005-01-10 2005-01-10 Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting
US12/147,102 Abandoned US20080256248A1 (en) 2005-01-10 2008-06-26 Single server access in a multiple tcp/ip instance environment

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/032,391 Expired - Fee Related US7827234B2 (en) 2005-01-10 2005-01-10 Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting

Country Status (6)

Country Link
US (2) US7827234B2 (en)
EP (1) EP1836829A1 (en)
JP (1) JP4833226B2 (en)
CN (1) CN101061484A (en)
TW (1) TWI371203B (en)
WO (1) WO2006072610A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060155578A1 (en) * 2005-01-10 2006-07-13 George Eisenberger Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting
US20060168043A1 (en) * 2005-01-10 2006-07-27 George Eisenberger Systems with message integration for data exchange, collection, monitoring and/or alerting and related methods and computer program products
US20080255885A1 (en) * 2005-01-10 2008-10-16 George Eisenberger Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US20080288466A1 (en) * 2005-01-10 2008-11-20 George Eisenberger User selectable data attributes for automated electronic search, identification and publication of relevant data from electronic data records at multiple data sources
CN102880710A (en) * 2012-09-29 2013-01-16 山东浪潮齐鲁软件产业股份有限公司 Method for creating clinical documents by medical information platform
US9830472B2 (en) 2011-05-10 2017-11-28 Nagravision S.A. Method for handling privacy data

Families Citing this family (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7509264B2 (en) * 2000-10-11 2009-03-24 Malik M. Hasan Method and system for generating personal/individual health records
US6934698B2 (en) * 2000-12-20 2005-08-23 Heart Imaging Technologies Llc Medical image management system
US8166381B2 (en) * 2000-12-20 2012-04-24 Heart Imaging Technologies, Llc Medical image management system
US9747652B2 (en) * 2005-01-10 2017-08-29 International Business Machines Corporation Providing controlled levels of collaborative exchange of data for registered participating subscribers and publishers
US8626523B1 (en) * 2005-04-12 2014-01-07 MedOne Systems, LLC Patient voice check-in system
US20070067185A1 (en) * 2005-09-16 2007-03-22 Halsted Mark J Medical diagnosis feedback tool
US7870493B2 (en) * 2005-10-03 2011-01-11 Microsoft Corporation Distributed clipboard
US20070139231A1 (en) * 2005-10-19 2007-06-21 Advanced Digital Forensic Solutions, Inc. Systems and methods for enterprise-wide data identification, sharing and management in a commercial context
US7603344B2 (en) * 2005-10-19 2009-10-13 Advanced Digital Forensic Solutions, Inc. Methods for searching forensic data
US7941386B2 (en) * 2005-10-19 2011-05-10 Adf Solutions, Inc. Forensic systems and methods using search packs that can be edited for enterprise-wide data identification, data sharing, and management
GB0521355D0 (en) * 2005-10-19 2005-11-30 Ibm Publish/subscribe system and method for managing subscriptions
US9144381B2 (en) 2005-12-30 2015-09-29 LifeWIRE Corporation Mobile self-management compliance and notification method, system and computer program product
US10025906B2 (en) * 2005-12-30 2018-07-17 LifeWIRE Corporation Mobile self-management compliance and notification method, system and computer program product
US8131832B1 (en) 2006-09-28 2012-03-06 Rockwell Automation Technologies, Inc. Message engine searching and classification
US8782249B1 (en) * 2006-09-28 2014-07-15 Rockwell Automation Technologies, Inc. Message engine
US8127035B1 (en) * 2006-09-28 2012-02-28 Rockwell Automation Technologies, Inc. Distributed message engines and systems
US8812684B1 (en) 2006-09-28 2014-08-19 Rockwell Automation Technologies, Inc. Messaging configuration system
WO2008050571A1 (en) * 2006-10-27 2008-05-02 Hitachi Medical Corporation Medical image diagnostic apparatus and remote maintenance system
GB0621409D0 (en) * 2006-10-27 2006-12-06 Ibm Access control within a publish/subscribe system
GB0623917D0 (en) * 2006-11-30 2007-01-10 Ibm Method, apparatus and computer program for controlling retention of publications
US8676962B2 (en) * 2007-06-29 2014-03-18 International Business Machines Corporation Methods, systems, and computer program products for implementing data asset management activities
US20090012987A1 (en) * 2007-07-05 2009-01-08 Kaminsky David L Method and system for delivering role-appropriate policies
EP2196000A2 (en) * 2007-08-16 2010-06-16 Research In Motion Limited Apparatuses and method for anonymous messaging
US20090171694A1 (en) * 2007-12-31 2009-07-02 Ross Iii Ernest Osgood System for managing laboratory test results for patients taking an endothelin receptor antagonist
US8041581B2 (en) * 2008-07-18 2011-10-18 Mitchel Jules T System and method for collecting, processing, and storing discrete data records based upon a single data input
US20100017232A1 (en) * 2008-07-18 2010-01-21 StevenDale Software, LLC Information Transmittal And Notification System
US20100031309A1 (en) * 2008-07-31 2010-02-04 International Business Machines Corporation Policy based control of message delivery
US8612751B1 (en) * 2008-08-20 2013-12-17 Cisco Technology, Inc. Method and apparatus for entitled data transfer over the public internet
TWI372549B (en) * 2008-09-15 2012-09-11 Inst Information Industry Message processing apparatus and processing method thereof
KR101274111B1 (en) * 2008-12-22 2013-06-13 한국전자통신연구원 System and method for providing health care using universal health platform
US10110631B2 (en) * 2009-02-12 2018-10-23 International Business Machines Corporation Introducing encryption, authentication, and authorization into a publication and subscription engine
US8265952B1 (en) * 2009-02-23 2012-09-11 Arkansas Blue Cross and Blue Shield Method and system for health care coding transition and implementation
US9092115B2 (en) * 2009-09-23 2015-07-28 Microsoft Technology Licensing, Llc Computing system with visual clipboard
KR101386237B1 (en) * 2009-09-29 2014-04-17 한국전자통신연구원 Universal adapter for personal health device standardization of nonstandardized healthcare device and operating method thereof
US8918462B2 (en) * 2010-01-08 2014-12-23 Cerner Innovation, Inc. Using user-attribute ontologies to calculate user-anonymity degrees
US8756232B1 (en) 2010-03-31 2014-06-17 Amazon Technologies, Inc. Documentation system
WO2011127249A1 (en) * 2010-04-07 2011-10-13 Nextdocs Corporation Method and apparatus for administering clinical trials
US9367595B1 (en) * 2010-06-04 2016-06-14 Software AG USA Inc. Method and system for visual wiring tool to interconnect apps
US9961182B2 (en) * 2010-09-23 2018-05-01 Blackberry Limited Communications system providing data transfer using selective wireless communications formats and related methods
US20120198018A1 (en) * 2011-01-27 2012-08-02 Microsoft Corporation Securely publishing data to network service
US9128768B2 (en) 2011-01-27 2015-09-08 Microsoft Technology Licensing, LCC Cloud based master data management
US9584949B2 (en) 2011-01-27 2017-02-28 Microsoft Technology Licensing, Llc Cloud based master data management architecture
EP2678795B1 (en) * 2011-02-25 2015-05-27 Bioid AG Method for publicly providing protected electronic documents
IN2014CN02487A (en) * 2011-09-29 2015-06-26 Cognosante Holdings Llc
US10340034B2 (en) 2011-12-30 2019-07-02 Elwha Llc Evidence-based healthcare information management protocols
US10679309B2 (en) 2011-12-30 2020-06-09 Elwha Llc Evidence-based healthcare information management protocols
US10475142B2 (en) 2011-12-30 2019-11-12 Elwha Llc Evidence-based healthcare information management protocols
US10559380B2 (en) 2011-12-30 2020-02-11 Elwha Llc Evidence-based healthcare information management protocols
US10402927B2 (en) 2011-12-30 2019-09-03 Elwha Llc Evidence-based healthcare information management protocols
US10528913B2 (en) 2011-12-30 2020-01-07 Elwha Llc Evidence-based healthcare information management protocols
US10552581B2 (en) 2011-12-30 2020-02-04 Elwha Llc Evidence-based healthcare information management protocols
US9319362B1 (en) * 2012-01-25 2016-04-19 Solace Systems, Inc. Messaging system with distributed filtering modules which register interests, remove any messages that do not match the registered interest, and forward any matched messages for delivery
CN102662647B (en) * 2012-03-01 2015-10-07 中标软件有限公司 A kind of (SuSE) Linux OS and security upgrading method thereof
US9117249B2 (en) 2012-03-15 2015-08-25 Facebook, Inc. Selectively providing content on a social networking system
WO2013161458A1 (en) * 2012-04-27 2013-10-31 ソニー株式会社 Server device, data coordination method and computer program
US10304347B2 (en) 2012-05-09 2019-05-28 Apple Inc. Exercised-based watch face and complications
US8886836B2 (en) * 2012-06-12 2014-11-11 Facebook, Inc. Providing a multi-column newsfeed of content on a social networking system
US9882950B2 (en) 2012-06-13 2018-01-30 All Purpose Networks LLC Methods and systems of an all purpose broadband network
US8565689B1 (en) 2012-06-13 2013-10-22 All Purpose Networks LLC Optimized broadband wireless network performance through base station application server
US10193887B2 (en) * 2012-07-10 2019-01-29 Oath Inc. Network appliance
JP2014029587A (en) * 2012-07-31 2014-02-13 Sony Corp Information processing device, information processing method, and information processing system
US9116888B1 (en) 2012-09-28 2015-08-25 Emc Corporation Customer controlled data privacy protection in public cloud
AU2014205387B2 (en) 2013-01-09 2019-02-21 Evernym, Inc. Systems and methods for access-controlled interactions
US20140280157A1 (en) * 2013-03-13 2014-09-18 Aeris Communications, Inc. Management of data feeds from devices and publishing and consumption of data
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
WO2015002409A1 (en) * 2013-07-01 2015-01-08 Samsung Electronics Co., Ltd. Method of sharing information in ultrasound imaging
WO2015047439A1 (en) * 2013-09-28 2015-04-02 Mcafee, Inc. Service-oriented architecture
US9544356B2 (en) * 2014-01-14 2017-01-10 International Business Machines Corporation Message switch file sharing
US10313506B2 (en) 2014-05-30 2019-06-04 Apple Inc. Wellness aggregator
EP4053767A1 (en) * 2014-05-30 2022-09-07 Apple Inc. Method for displaying and selecting data
CN111210891B (en) 2014-09-02 2023-08-25 苹果公司 Physical activity and fitness monitor
US10776739B2 (en) 2014-09-30 2020-09-15 Apple Inc. Fitness challenge E-awards
CN105578444A (en) * 2014-10-10 2016-05-11 青岛海尔智能家电科技有限公司 Automatic resource subscription method and device
EP3254452B1 (en) 2015-02-02 2018-12-26 Apple Inc. Device, method, and graphical user interface for establishing a relationship and connection between two devices
US9716700B2 (en) 2015-02-19 2017-07-25 International Business Machines Corporation Code analysis for providing data privacy in ETL systems
WO2016144385A1 (en) 2015-03-08 2016-09-15 Apple Inc. Sharing user-configurable graphical constructs
US10910089B2 (en) 2015-03-20 2021-02-02 Universal Patient Key, Inc. Methods and systems providing centralized encryption key management for sharing data across diverse entities
US10275116B2 (en) 2015-06-07 2019-04-30 Apple Inc. Browser with docked tabs
EP4321088A2 (en) 2015-08-20 2024-02-14 Apple Inc. Exercise-based watch face
JP6398944B2 (en) * 2015-10-28 2018-10-03 オムロン株式会社 Data distribution management system
CN105447397A (en) * 2016-01-07 2016-03-30 成都卫士通信息产业股份有限公司 File security level identification method based on kernel module
US11033708B2 (en) 2016-06-10 2021-06-15 Apple Inc. Breathing sequence user interface
DK201770423A1 (en) 2016-06-11 2018-01-15 Apple Inc Activity and workout updates
US10873786B2 (en) 2016-06-12 2020-12-22 Apple Inc. Recording and broadcasting application visual output
US11216119B2 (en) 2016-06-12 2022-01-04 Apple Inc. Displaying a predetermined view of an application
CA3038769A1 (en) * 2016-09-30 2018-04-05 Laurence Richard Olivier De-identifying distributed bridging network platform
JP7256500B2 (en) * 2017-04-28 2023-04-12 株式会社キーソフト Information processing system
US11004548B1 (en) 2017-09-20 2021-05-11 Datavant, Inc. System for providing de-identified mortality indicators in healthcare data
US10833881B1 (en) * 2017-11-06 2020-11-10 Amazon Technologies, Inc. Distributing publication messages to devices
CN108334547B (en) * 2017-12-27 2020-10-30 中电科华云信息技术有限公司 Data sharing exchange system and method based on big data
US10827019B2 (en) 2018-01-08 2020-11-03 All Purpose Networks, Inc. Publish-subscribe broker network overlay system
WO2019135830A1 (en) * 2018-01-08 2019-07-11 All Purpose Networks, Inc. Internet of things system with efficient and secure communications network
US11537748B2 (en) 2018-01-26 2022-12-27 Datavant, Inc. Self-contained system for de-identifying unstructured data in healthcare records
US11042668B1 (en) 2018-04-12 2021-06-22 Datavant, Inc. System for preparing data for expert certification and monitoring data over time to ensure compliance with certified boundary conditions
US11120144B1 (en) 2018-04-12 2021-09-14 Datavant, Inc. Methods and systems providing central management of distributed de-identification and tokenization software for sharing data
US11080423B1 (en) 2018-04-13 2021-08-03 Datavant, Inc. System for simulating a de-identified healthcare data set and creating simulated personal data while retaining profile of authentic data
WO2019217151A1 (en) * 2018-05-07 2019-11-14 Google Llc Data collection consent tools
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
CN109413087B (en) * 2018-11-16 2019-12-31 京东城市(南京)科技有限公司 Data sharing method and device, digital gateway and computer readable storage medium
US11562442B2 (en) * 2019-03-01 2023-01-24 Graphite Systems Inc. Social graph database with compound connections
US11244069B2 (en) 2019-08-26 2022-02-08 International Business Machines Corporation Controlling combination of information submitted to computing systems
US11755779B1 (en) 2020-09-30 2023-09-12 Datavant, Inc. Linking of tokenized trial data to other tokenized data
TWI774286B (en) * 2021-03-24 2022-08-11 陳韋翰 Universal gateway device and universal gateway processing method
EP4323992A1 (en) 2021-05-15 2024-02-21 Apple Inc. User interfaces for group workouts

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5560005A (en) * 1994-02-25 1996-09-24 Actamed Corp. Methods and systems for object-based relational distributed databases
US20020095399A1 (en) * 2000-08-04 2002-07-18 Devine Robert L.S. System and methods providing automatic distributed data retrieval, analysis and reporting services
US20020128871A1 (en) * 2000-12-07 2002-09-12 Dan Adamson Method, apparatus, and system for aggregating, targeting, and synchronizing health information delivery
US20030135394A1 (en) * 2000-06-23 2003-07-17 Nicanor Padron Health services delivery system with incentives
US20040078236A1 (en) * 1999-10-30 2004-04-22 Medtamic Holdings Storage and access of aggregate patient data for analysis
US20050071194A1 (en) * 2003-09-30 2005-03-31 Bormann Daniel S. System and method for providing patient record synchronization in a healthcare setting
US20050119914A1 (en) * 2003-12-01 2005-06-02 Batch Richard M. System and method for analyzing medical treatment data
US6915265B1 (en) * 1997-10-29 2005-07-05 Janice Johnson Method and system for consolidating and distributing information
US20080255885A1 (en) * 2005-01-10 2008-10-16 George Eisenberger Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US20080288466A1 (en) * 2005-01-10 2008-11-20 George Eisenberger User selectable data attributes for automated electronic search, identification and publication of relevant data from electronic data records at multiple data sources

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002108709A (en) * 2000-09-29 2002-04-12 Hitachi Ltd Access control method and its implementing device, and recording medium with processing program thereof recorded thereon
AUPR432701A0 (en) * 2001-04-10 2001-05-17 Lions Eye Institute Of Western Australia Incorporated, The Virtual service system for client and service provider users and method therefor
JP2003141262A (en) * 2001-11-01 2003-05-16 Sanyo Electric Co Ltd System and method for browsing electronic file, and server for browsing electronic file
US7523505B2 (en) * 2002-08-16 2009-04-21 Hx Technologies, Inc. Methods and systems for managing distributed digital medical data
US7827234B2 (en) * 2005-01-10 2010-11-02 International Business Machines Corporation Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5560005A (en) * 1994-02-25 1996-09-24 Actamed Corp. Methods and systems for object-based relational distributed databases
US6915265B1 (en) * 1997-10-29 2005-07-05 Janice Johnson Method and system for consolidating and distributing information
US20040078236A1 (en) * 1999-10-30 2004-04-22 Medtamic Holdings Storage and access of aggregate patient data for analysis
US20030135394A1 (en) * 2000-06-23 2003-07-17 Nicanor Padron Health services delivery system with incentives
US20020095399A1 (en) * 2000-08-04 2002-07-18 Devine Robert L.S. System and methods providing automatic distributed data retrieval, analysis and reporting services
US20020128871A1 (en) * 2000-12-07 2002-09-12 Dan Adamson Method, apparatus, and system for aggregating, targeting, and synchronizing health information delivery
US20050071194A1 (en) * 2003-09-30 2005-03-31 Bormann Daniel S. System and method for providing patient record synchronization in a healthcare setting
US20050119914A1 (en) * 2003-12-01 2005-06-02 Batch Richard M. System and method for analyzing medical treatment data
US20080255885A1 (en) * 2005-01-10 2008-10-16 George Eisenberger Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US20080288294A1 (en) * 2005-01-10 2008-11-20 George Eisenberger Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US20080288466A1 (en) * 2005-01-10 2008-11-20 George Eisenberger User selectable data attributes for automated electronic search, identification and publication of relevant data from electronic data records at multiple data sources

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271294B2 (en) 2005-01-10 2012-09-18 International Businesss Machines Corporation Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US20060168043A1 (en) * 2005-01-10 2006-07-27 George Eisenberger Systems with message integration for data exchange, collection, monitoring and/or alerting and related methods and computer program products
US20080255885A1 (en) * 2005-01-10 2008-10-16 George Eisenberger Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US20080288466A1 (en) * 2005-01-10 2008-11-20 George Eisenberger User selectable data attributes for automated electronic search, identification and publication of relevant data from electronic data records at multiple data sources
US20080288294A1 (en) * 2005-01-10 2008-11-20 George Eisenberger Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US7827234B2 (en) 2005-01-10 2010-11-02 International Business Machines Corporation Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting
US20060155578A1 (en) * 2005-01-10 2006-07-13 George Eisenberger Privacy entitlement protocols for secure data exchange, collection, monitoring and/or alerting
US8306831B2 (en) 2005-01-10 2012-11-06 International Business Machines Corporation Systems with message integration for data exchange, collection, monitoring and/or alerting
US8364500B2 (en) 2005-01-10 2013-01-29 International Business Machines Corporation Publisher gateway systems for collaborative data exchange, collection, monitoring and/or alerting
US9830472B2 (en) 2011-05-10 2017-11-28 Nagravision S.A. Method for handling privacy data
US10853517B2 (en) 2011-05-10 2020-12-01 Nagravision S.A. Method for handling privacy data
US11397829B2 (en) 2011-05-10 2022-07-26 Nagravision S.A. Method for handling privacy data
CN102880710A (en) * 2012-09-29 2013-01-16 山东浪潮齐鲁软件产业股份有限公司 Method for creating clinical documents by medical information platform

Also Published As

Publication number Publication date
US7827234B2 (en) 2010-11-02
JP4833226B2 (en) 2011-12-07
JP2008527520A (en) 2008-07-24
TWI371203B (en) 2012-08-21
CN101061484A (en) 2007-10-24
EP1836829A1 (en) 2007-09-26
TW200704076A (en) 2007-01-16
US20060155578A1 (en) 2006-07-13
WO2006072610A1 (en) 2006-07-13

Similar Documents

Publication Publication Date Title
US20080256248A1 (en) Single server access in a multiple tcp/ip instance environment
US6058425A (en) Single server access in a multiple TCP/IP instance environment
US20210399996A1 (en) Virtual computing services deployment network
CN110710168B (en) Intelligent thread management across isolated network stacks
Pfaff et al. The open vswitch database management protocol
EP1242882B1 (en) A digital computer system and a method for responding to a request received over an external network
JP5582344B2 (en) Connection management system and connection management server linkage method in thin client system
CN103403707B (en) The system and method exchanged for database proxy request
JP5624479B2 (en) Sync server process
US6330560B1 (en) Multiple manager to multiple server IP locking mechanism in a directory-enabled network
US7237027B1 (en) Scalable storage system
US7409397B2 (en) Supporting replication among a plurality of file operation servers
EP1333389A2 (en) Directory server software architecture
US20020107954A1 (en) Data model for automated server configuration
US9154580B2 (en) Connection management in a computer networking environment
US11696110B2 (en) Distributed, crowdsourced internet of things (IoT) discovery and identification using Block Chain
JP2002505461A (en) Transport processing method and apparatus in event-based distributed system
JPH09198294A (en) System performing synchronization between local area network and distributed computing environment
JPH04230567A (en) Dispersed type constitution profile for computing system
WO2007056336A1 (en) System and method for writing data to a directory
US11223519B2 (en) Storage system for network information
US7103889B2 (en) Method, system, and article of manufacture for agent processing
US11824947B2 (en) Connecting application instances to client devices
CN112073449B (en) Kubernetes-based environment switching processing method and equipment
WO2002039313A9 (en) A data model for automated server configuration

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION