US20010054065A1 - Connection concentrator for distributed object systems - Google Patents

Connection concentrator for distributed object systems Download PDF

Info

Publication number
US20010054065A1
US20010054065A1 US09/419,428 US41942899A US2001054065A1 US 20010054065 A1 US20010054065 A1 US 20010054065A1 US 41942899 A US41942899 A US 41942899A US 2001054065 A1 US2001054065 A1 US 2001054065A1
Authority
US
United States
Prior art keywords
client
clients
gateway
server
gateways
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.)
Granted
Application number
US09/419,428
Other versions
US6356930B2 (en
Inventor
Rohit Garg
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.)
Oracle International Corp
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
Priority to CA002364264A priority Critical patent/CA2364264A1/en
Priority to EP99954973A priority patent/EP1129401A1/en
Application filed by Individual filed Critical Individual
Priority to US09/419,428 priority patent/US6356930B2/en
Priority to PCT/US1999/024230 priority patent/WO2000023879A1/en
Priority to CN99814228A priority patent/CN1335956A/en
Priority to AU11191/00A priority patent/AU1119100A/en
Assigned to OBJECTERA, INC. reassignment OBJECTERA, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GARG, ROHIT
Priority to JP2000577556A priority patent/JP2003527763A/en
Assigned to SILVERSTREAM SOFTWARE, INC. reassignment SILVERSTREAM SOFTWARE, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: OBJECTERA, INC.
Publication of US20010054065A1 publication Critical patent/US20010054065A1/en
Publication of US6356930B2 publication Critical patent/US6356930B2/en
Application granted granted Critical
Assigned to SILVERSTREAM SOFTWARE, LLC reassignment SILVERSTREAM SOFTWARE, LLC CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SILVERSTREAM SOFTWARE, INC.
Assigned to NOVELL, INC. reassignment NOVELL, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SILVERSTREAM SOFTWARE, LLC
Assigned to ORACLE INTERNATIONAL CORPORATION reassignment ORACLE INTERNATIONAL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CPTN HOLDINGS LLC
Assigned to CPTN HOLDINGS LLC reassignment CPTN HOLDINGS LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: NOVELL, INC.
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1017Server selection for load balancing based on a round robin mechanism

Definitions

  • the present invention relates to the distributed Object Oriented Systems.
  • the invention relates to an apparatus and method for improving communication between clients and servers employing object software technology.
  • a limitation of the existing distributed object systems is their inability to scale to handle a large number of clients.
  • a distributed object system for example, Common Object Request Broker (CORBA) (1), Java Remote Method Invocation (RMI) (2), and Distributed Component Object Model (DCOM) (3)
  • objects can be running all over the network.
  • CORBA Common Object Request Broker
  • RMI Java Remote Method Invocation
  • DCOM Distributed Component Object Model
  • a client invokes a method on an object by first obtaining a reference to it.
  • An object reference typically contains the network address of the server in which the object is instantiated as well as some unique datum that identifies the object within the server.
  • ORB Object Request Broker
  • a goal of the invention is to overcome the identified limitations and to provide a connection concentrator for distributed object systems.
  • a goal of the invention is to overcome the identified limitations and to provide a connection concentrator for distributed object systems. Exemplary embodiments are provided for use with the Internet, but other communication protocols can be used.
  • This invention improves the network by incorporating gateway structures disposed between the conventional client-server architecture.
  • the invention also provides an object request broker (ORB) at the client and the gateway so that the gateway can efficiently access objects from the servers and retrieve the object on behalf of the client. Additional clients can connect to the same gateway and access the same objects without an attendant increase in links to the server with the object.
  • ORB object request broker
  • the object request broker also resides on the server and the gateway can access objects from the clients and retrieve the object on behalf of the server.
  • additional gateways are disposed in series to further reduce the number of connections to the object servers.
  • Advantages of the invention include an increased capability of a network system to provide access to objects without overburdening the network. Additionally, the network can be further improved by placing additional gateways in series to further reduce the number of connections to the object servers.
  • FIG. 1 depicts that the client ORB runtime typically opens up a direct connection to each server it needs to communicate with.
  • the gray circles denote clients and servers, and the arrow lines denote connections;
  • FIG. 2 depicts that With N clients and M servers that need to communicate, there can be up to N*M number of connections;
  • FIG. 3 depicts that the gateway serves as an intermediate party that forwards requests from the client to the server and responses back from the server to the client.
  • the client has only one open connection—the connection to the gateway;
  • FIG. 4 depicts that multiple clients are connected to a single gateway and there can be multiple gateways. If there are L gateways, the maximum number of connections is now N+L*M. Since L is much smaller than N, the connection resources used with this scheme is dramatically reduced; and
  • FIG. 5 depicts that the gateways can be stacked to further increase the number of clients that can be simultaneously connected to the servers.
  • the invention provides an improves network system by using shared intermediate connection concentrators called gateways to deliver the invocation from the clients to the servers and responses back from the servers to the clients.
  • a gateway channels requests and responses from multiple clients to and from the server respectively over a single connection to the server (see FIG. 3).
  • the use of intermediate gateways is done in such a way as to not require any change to the client or server programs.
  • the ORB When the client initializes its ORB runtime, the ORB contacts a gateway factory on the network and obtains a gateway object.
  • an external object reference is received (or read) by a client ORB runtime, it creates a wrapped (or a proxy) object references such that it now contains the network address of the gateway and the datum contains the original datum as well as the original address of the server.
  • the client invokes a method on this object reference the invocation now automatically goes to the gateway instead of the server.
  • the gateway unwraps the datum to get the original datum and the original address of the server. It then delivers the request to the server.
  • the gateway is also responsible for returning the response from the server back to the client.
  • a gateway is shared by multiple clients and there can be multiple gateways that are managed by a gateway factory, as shown in FIG. 4.
  • a gateway may have to perform some protocol specific transformation on the messages that pass through it. For example, if the protocol is Internet Inter ORB Protocol (IIOP) version 1.1, then the gateway needs to manipulate the IIOP request, response, locate request, and locate response headers as follows.
  • IIOP Internet Inter ORB Protocol
  • IIOP request and IIOP locate request the request id in the messages from the clients needs to be manipulated to make them unique on the connection to the server. This transformation has to be undone when the IIOP response or IIOP locate response is received by the gateway from the server before the response is returned to the client.
  • the IIOP request and locate request contain the wrapped datum (the object key). This needs to be unwrapped and set to the original datum.
  • the gateways can be connected in series (stacked) to further increase the number of clients that can be simultaneously connected to the servers.
  • the gateway factory can use different algorithms or policies to assign gateway objects to the clients, for example:
  • gateway factory assigns a gateway that is closest to the client
  • load-based assignment the gateway factory assigns the least loaded gateway, where load can be defined as some function of the number of clients and the number of requests flowing through the gateway.
  • the gateway factory may periodically query the gateways to determine the number of clients connected to it. This helps the gateway factory in its future assignment decisions.
  • connection level authentication protocols like Secure Sockets Layer (SSL.)
  • SSL Secure Sockets Layer
  • the client authenticates itself to the gateway
  • the gateway authenticates itself to the server
  • the gateway passes along the identity of the client to the server on each request.
  • Advantages of the present invention include reduced interference, improved communication bandwidth, fault tolerance, modularity, scalability, and more efficient and cost-effective base stations and mobile stations.

Abstract

In a distributed object system, the services available on the network are modeled as network objects. A client typically communicates with and uses these objects using Internet connections. As the number of clients increase the servers can get overwhelmed by the number of connections coming into the server resulting in sluggish response and/or loss of service. The invention describes the mechanisms for reducing the required number of connections by automatically concentrating multiple connections onto a single connection. This is done by introducing shared intermediate connection concentrators called gateways. When the client invokes on an external object reference, the ORB running on the client automatically forwards the request to a gateway assigned to it, which then forwards it onto a shared connection to the server. The solution is symmetrical—if the server invokes on an object running inside the client, the invocation again flows through the gateway. The mechanisms described here do not require any explicit programming and can be turned ON or OFF via configuration. The disclosure also describes several policy and/or algorithm based schemes for assigning clients to gateways. Advantages of this invention include reduced interference, improved communication bandwidth, fault tolerance, modularity, scalability, and more efficient and cost-effective base stations and mobile stations.

Description

    RELATED APPLICATIONS
  • The present application claims priority to and incorporates the following patent applications by reference: [0001]
  • Prov. Appl. No. 60/104,543 filed Oct. 16, 1998.[0002]
  • FIELD
  • The present invention relates to the distributed Object Oriented Systems. In particular, the invention relates to an apparatus and method for improving communication between clients and servers employing object software technology. [0003]
  • BACKGROUND
  • Conventional client-server networks employ dedicated connections between one another. In general, the client communicates directly with the server and any requests made by the client are handled by the server. This does not pose a problem in conventional networks because the number of overall connections between the clients and servers is relatively low. However, as more clients connect to more servers and as the client-server communication incorporates more object references, the number of interconnections increases dramatically. Presently, and in the future, the conventional client-server systems that incorporate object references will be overburdened and a solution to this problem must be found. [0004]
  • Accordingly, a limitation of the existing distributed object systems is their inability to scale to handle a large number of clients. In a distributed object system (for example, Common Object Request Broker (CORBA) (1), Java Remote Method Invocation (RMI) (2), and Distributed Component Object Model (DCOM) (3)) objects can be running all over the network. A client invokes a method on an object by first obtaining a reference to it. An object reference typically contains the network address of the server in which the object is instantiated as well as some unique datum that identifies the object within the server. When a method is invoked on the object, the client's ORB (Object Request Broker) runtime typically makes a direct connection to the server and forwards the invocation to the server (see FIG. 1) using an object protocol (for example, most CORBA implementations use Internet Inter ORB Protocol, IIOP). With this scheme, if there are N clients and M servers, there could be up to N*M connections between them (see FIG. 2). For large values of N and M, the number of connections increase beyond the capabilities of even the largest of computing systems. The result is that the object system starts to perform poorly and/or starts to reject service. [0005]
  • Several relevant publications are provided and incorporated herein by reference. The Common Object Request Broker (CORBA) and Internet Inter-ORB Protocol (IIOP) specifications are published by the Object Management Group at http://www.omg.com. The Java Remote Method Invocation (Java RMI) specifications are published by Sun Microsystems Java Software Division at http://wwwjavasoft.com/products/rmi. The Distributed Component Object Model is published in “Professional DCOM Programming” by Dr. R. Grimes (1997) ISBN 186100-60-X. [0006]
  • A goal of the invention is to overcome the identified limitations and to provide a connection concentrator for distributed object systems. [0007]
  • SUMMARY
  • A goal of the invention is to overcome the identified limitations and to provide a connection concentrator for distributed object systems. Exemplary embodiments are provided for use with the Internet, but other communication protocols can be used. This invention improves the network by incorporating gateway structures disposed between the conventional client-server architecture. The invention also provides an object request broker (ORB) at the client and the gateway so that the gateway can efficiently access objects from the servers and retrieve the object on behalf of the client. Additional clients can connect to the same gateway and access the same objects without an attendant increase in links to the server with the object. [0008]
  • In another embodiment of the invention, the object request broker also resides on the server and the gateway can access objects from the clients and retrieve the object on behalf of the server. [0009]
  • In yet another embodiment of the invention, additional gateways are disposed in series to further reduce the number of connections to the object servers. [0010]
  • Advantages of the invention include an increased capability of a network system to provide access to objects without overburdening the network. Additionally, the network can be further improved by placing additional gateways in series to further reduce the number of connections to the object servers.[0011]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Additional advantages of the invention will become apparent upon reading the following detailed description and upon reference to the drawings, in which: [0012]
  • FIG. 1 depicts that the client ORB runtime typically opens up a direct connection to each server it needs to communicate with. The gray circles denote clients and servers, and the arrow lines denote connections; [0013]
  • FIG. 2 depicts that With N clients and M servers that need to communicate, there can be up to N*M number of connections; [0014]
  • FIG. 3 depicts that the gateway serves as an intermediate party that forwards requests from the client to the server and responses back from the server to the client. The client has only one open connection—the connection to the gateway; [0015]
  • FIG. 4 depicts that multiple clients are connected to a single gateway and there can be multiple gateways. If there are L gateways, the maximum number of connections is now N+L*M. Since L is much smaller than N, the connection resources used with this scheme is dramatically reduced; and [0016]
  • FIG. 5 depicts that the gateways can be stacked to further increase the number of clients that can be simultaneously connected to the servers. [0017]
  • DETAILED DESCRIPTION
  • The exemplary embodiments are described herein with reference to specific configurations and protocols. Those skilled in the art will appreciate that various changes and modifications can be made to the exemplary embodiments while remaining within the scope of the present invention. [0018]
  • Referring to FIG. 3, the invention provides an improves network system by using shared intermediate connection concentrators called gateways to deliver the invocation from the clients to the servers and responses back from the servers to the clients. A gateway channels requests and responses from multiple clients to and from the server respectively over a single connection to the server (see FIG. 3). The use of intermediate gateways is done in such a way as to not require any change to the client or server programs. [0019]
  • When the client initializes its ORB runtime, the ORB contacts a gateway factory on the network and obtains a gateway object. When an external object reference is received (or read) by a client ORB runtime, it creates a wrapped (or a proxy) object references such that it now contains the network address of the gateway and the datum contains the original datum as well as the original address of the server. When the client invokes a method on this object reference, the invocation now automatically goes to the gateway instead of the server. The gateway unwraps the datum to get the original datum and the original address of the server. It then delivers the request to the server. The gateway is also responsible for returning the response from the server back to the client. A gateway is shared by multiple clients and there can be multiple gateways that are managed by a gateway factory, as shown in FIG. 4. [0020]
  • A gateway may have to perform some protocol specific transformation on the messages that pass through it. For example, if the protocol is Internet Inter ORB Protocol (IIOP) version 1.1, then the gateway needs to manipulate the IIOP request, response, locate request, and locate response headers as follows. [0021]
  • For IIOP request and IIOP locate request, the request id in the messages from the clients needs to be manipulated to make them unique on the connection to the server. This transformation has to be undone when the IIOP response or IIOP locate response is received by the gateway from the server before the response is returned to the client. [0022]
  • 1) The IIOP request and locate request contain the wrapped datum (the object key). This needs to be unwrapped and set to the original datum. [0023]
  • 2) The above transformations may change the byte alignment of the request message payload. The gateway needs to make sure that the message payload is properly byte aligned. Padding its header with the required number of bytes is one possible solution. [0024]
  • The above solution is symmetrical. If a client is also a server, then, when it sends (or writes) references for object instantiated in itself to some one else, the object reference is again wrapped with the address of the gateway. As a result, when a method is invoked on the object, the invocation again automatically flows through the gateway. That is, all traffic to and from a program is channeled over a single connection (or two connections, if an asymmetrical protocol like IIOP is used where requests only flow in one directions). This results in a far lower utilization of the connection resources, and hence the object system can scale to support a far greater number of clients and servers. [0025]
  • In another embodiment, as shown in FIG. 5, the gateways can be connected in series (stacked) to further increase the number of clients that can be simultaneously connected to the servers. [0026]
  • The gateway factory can use different algorithms or policies to assign gateway objects to the clients, for example: [0027]
  • 1) round-robin assignment—the gateway factory round robins through the list of gateway objects that it manages, distributing the number of clients evenly to them; [0028]
  • 2) locality based assignment—the gateway factory assigns a gateway that is closest to the client; and/or [0029]
  • 3) load-based assignment—the gateway factory assigns the least loaded gateway, where load can be defined as some function of the number of clients and the number of requests flowing through the gateway. [0030]
  • Since clients may disconnect after some time, the gateway factory may periodically query the gateways to determine the number of clients connected to it. This helps the gateway factory in its future assignment decisions. [0031]
  • The above mechanisms can also be used in conjunction with public key based connection level authentication protocols like Secure Sockets Layer (SSL.) To transmit the identity of the client to the server, the server and the gateway are in a trust relationship such that [0032]
  • 1. The client authenticates itself to the gateway; [0033]
  • 2. The gateway authenticates itself to the server; [0034]
  • 3. The gateway passes along the identity of the client to the server on each request; and [0035]
  • 4. The server, relying on the trust relationship with the gateway, assumes the real identity of the caller to be the one passed with the request by the gateway. [0036]
  • Advantages of the present invention include reduced interference, improved communication bandwidth, fault tolerance, modularity, scalability, and more efficient and cost-effective base stations and mobile stations. [0037]
  • Having disclosed exemplary embodiments and the best mode, modifications and variations may be made to the disclosed embodiments while remaining within the scope of the present invention as defined by the following claims. [0038]

Claims (7)

What is claimed is:
1. An apparatus for supporting an object based distributed software system, comprising:
a plurality of clients each running an object request broker program;
a plurality of gateways each running an object request broker program, coupled to the clients and configured to communicate with the clients, and in at least one instance to receive a proxified object request from a client and to decode the proxified object request to generate an object request; and
a plurality of servers coupled to the gateways and configured to communicate with the gateways, and in at least one instance to receive an object request and to provide the requested object to the gateway making the request.
2. The apparatus of
claim 1
, wherein:
each of the plurality of servers also run an object request broker program.
3. The apparatus of
claim 1
, whereby:
the apparatus tremendously increases the number of clients that can be simultaneously connected to an object server or a group/cluster of object servers
4. The apparatus of
claim 1
, whereby:
programs can be written without any knowledge of the mechanisms described here and still enjoy all the benefits just through changed configuration settings.
5. The apparatus of
claim 1
, wherein:
the scheme is symmetrical, and when an object server acting as a client communicates back to an object running in the client, it still uses the gateway to which the client is then currently connected
6. The apparatus of
claim 1
, wherein:
the scheme provides support for doing all sorts of static and dynamic assignment of clients to gateways based on policies and/or algorithms
7. The apparatus of
claim 1
, wherein:
the scheme provides support for client authentication over public key based connection level authentication mechanisms
US09/419,428 1998-10-16 1999-10-15 Connection concentrator for distributed object systems Expired - Lifetime US6356930B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2000577556A JP2003527763A (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems
US09/419,428 US6356930B2 (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems
PCT/US1999/024230 WO2000023879A1 (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems
CN99814228A CN1335956A (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems
AU11191/00A AU1119100A (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems
EP99954973A EP1129401A1 (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems
CA002364264A CA2364264A1 (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10454398P 1998-10-16 1998-10-16
US09/419,428 US6356930B2 (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems

Publications (2)

Publication Number Publication Date
US20010054065A1 true US20010054065A1 (en) 2001-12-20
US6356930B2 US6356930B2 (en) 2002-03-12

Family

ID=26801669

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/419,428 Expired - Lifetime US6356930B2 (en) 1998-10-16 1999-10-15 Connection concentrator for distributed object systems

Country Status (7)

Country Link
US (1) US6356930B2 (en)
EP (1) EP1129401A1 (en)
JP (1) JP2003527763A (en)
CN (1) CN1335956A (en)
AU (1) AU1119100A (en)
CA (1) CA2364264A1 (en)
WO (1) WO2000023879A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020042721A1 (en) * 2000-10-05 2002-04-11 Alcatel Network management client
US20020085528A1 (en) * 2000-12-28 2002-07-04 Reza Ahmed Areef Methods and systems implementing mobility support in a packet-based wireless access network
US20040205054A1 (en) * 2003-04-08 2004-10-14 International Business Machines Corporation System and method for accessing resources in a database
US20040264388A1 (en) * 2003-06-30 2004-12-30 Rover Jeremy L. System and method for dynamically configuring and transitioning wired and wireless networks
US7133922B1 (en) * 2000-08-07 2006-11-07 The Hong Kong University Of Science And Technology Method and apparatus for streaming of data
US7331049B1 (en) * 2003-04-21 2008-02-12 Borland Software Corporation System and methodology providing typed event and notification services
US20080235369A1 (en) * 2007-03-21 2008-09-25 Wouhaybi Rita H Distributing replication assignments among nodes
USRE43375E1 (en) * 1999-11-30 2012-05-08 Reware Asset Group, L.L.C. System and method for communications in a distributed computing environment

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385661B1 (en) * 1998-10-19 2002-05-07 Recursion Software, Inc. System and method for dynamic generation of remote proxies
US6687831B1 (en) * 1999-04-29 2004-02-03 International Business Machines Corporation Method and apparatus for multiple security service enablement in a data processing system
US6751677B1 (en) * 1999-08-24 2004-06-15 Hewlett-Packard Development Company, L.P. Method and apparatus for allowing a secure and transparent communication between a user device and servers of a data access network system via a firewall and a gateway
JP2003515808A (en) 1999-11-22 2003-05-07 マイクロソフト コーポレイション Communication between agility and context-bound objects
US6931455B1 (en) * 1999-11-30 2005-08-16 Recursion Software, Inc. System and method for communications between a CORBA object request broker and a non-CORBA object request broker
US6678743B1 (en) 1999-11-30 2004-01-13 Recursion Software, Inc. Method for moving objects in a distributed computing environment
US7478403B1 (en) * 2000-04-21 2009-01-13 Sun Microsystems, Inc. Secure access to managed network objects using a configurable platform-independent gateway providing individual object-level access control
US6813770B1 (en) 2000-04-21 2004-11-02 Sun Microsystems, Inc. Abstract syntax notation to interface definition language converter framework for network management
US7010586B1 (en) 2000-04-21 2006-03-07 Sun Microsystems, Inc. System and method for event subscriptions for CORBA gateway
US7228346B1 (en) 2000-04-21 2007-06-05 Sun Microsystems, Inc. IDL event and request formatting for corba gateway
US6950935B1 (en) 2000-04-21 2005-09-27 Sun Microsystems, Inc. Pluggable authentication modules for telecommunications management network
US6839748B1 (en) 2000-04-21 2005-01-04 Sun Microsystems, Inc. Synchronous task scheduler for corba gateway
US6915324B1 (en) 2000-04-21 2005-07-05 Sun Microsystems, Inc. Generic and dynamic mapping of abstract syntax notation (ASN1) to and from interface definition language for network management
US7206843B1 (en) 2000-04-21 2007-04-17 Sun Microsystems, Inc. Thread-safe portable management interface
US7783720B1 (en) 2000-04-21 2010-08-24 Oracle America, Inc. CORBA metadata gateway to telecommunications management network
US6785713B1 (en) * 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for communicating among a network of servers utilizing a transport mechanism
CA2409707A1 (en) * 2000-05-08 2001-11-15 Citrix Systems, Inc. A system and method for directing runtime data in a server network
US6785726B1 (en) 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for delivering local and remote server events in a similar fashion
US6789112B1 (en) 2000-05-08 2004-09-07 Citrix Systems, Inc. Method and apparatus for administering a server having a subsystem in communication with an event channel
WO2002003744A1 (en) * 2000-06-30 2002-01-10 Hughes Electronics Corporation Residential broadband communications device, and method of operating same
KR100798504B1 (en) * 2000-07-27 2008-01-28 비이에이 시스템즈 인코포레이티드 System and method for concentration and load-balancing of requests
US7606898B1 (en) * 2000-10-24 2009-10-20 Microsoft Corporation System and method for distributed management of shared computers
WO2002045793A2 (en) 2000-12-08 2002-06-13 Loma Linda University Medical Center Proton beam therapy control system
US20020178266A1 (en) * 2001-04-27 2002-11-28 Alexander Perez High speed server system
US8019807B2 (en) * 2001-05-23 2011-09-13 Wireless Enterprise Solutions Technology Limited Method and system for communication between computer systems
FI20011237A0 (en) 2001-06-12 2001-06-12 Nokia Corp Data communication method and apparatus
FI20011239A (en) * 2001-06-12 2002-12-13 Nokia Corp Method and Arrangement of Communication
US6981029B1 (en) * 2001-07-17 2005-12-27 Cisco Technology, Inc. System and method for processing a request for information in a network
GB0122507D0 (en) * 2001-09-18 2001-11-07 Marconi Comm Ltd Client server networks
ES2283624T3 (en) 2001-10-30 2007-11-01 Loma Linda University Medical Center DEVICE TO ALIGN A PATIENT FOR THE ADMINISTRATION OF RADIOTHERAPY.
US7058717B2 (en) * 2002-07-25 2006-06-06 International Business Machines Corporation Method and system for providing highly available services based on a load balancing policy and a reusable connection context object
US6822244B2 (en) 2003-01-02 2004-11-23 Loma Linda University Medical Center Configuration management and retrieval system for proton beam therapy system
RU2360716C2 (en) 2003-08-12 2009-07-10 Лома Линда Юниверсити Медикал Сентер Patient-aid modular system
WO2005114964A1 (en) * 2004-05-21 2005-12-01 Computer Associates Think, Inc. Method and apparatus for web service communication
US7720813B2 (en) * 2005-10-21 2010-05-18 International Business Machines Corporation Apparatus, system, and method for the autonomic virtualization of a data storage server
US8886787B2 (en) * 2009-02-26 2014-11-11 Microsoft Corporation Notification for a set of sessions using a single call issued from a connection pool

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5329619A (en) * 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5553242A (en) * 1993-11-03 1996-09-03 Wang Laboratories, Inc. Client/server connection sharing
JP3072709B2 (en) * 1994-11-21 2000-08-07 インターナショナル・ビジネス・マシーンズ・コーポレ−ション Request transmission method
US5793965A (en) * 1995-03-22 1998-08-11 Sun Microsystems, Inc. Method and apparatus for determining the type of an object in a distributed object system
US6009266A (en) * 1995-03-22 1999-12-28 Sun Microsystems, Inc. Methods, apparatus and data structures for managing objects
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
GB2305270A (en) * 1995-09-15 1997-04-02 Ibm Bridge for a client-server environment
US5717747A (en) * 1996-05-31 1998-02-10 Lucent Technologies Inc. Arrangement for facilitating plug-and-play call features
US5727145A (en) * 1996-06-26 1998-03-10 Sun Microsystems, Inc. Mechanism for locating objects in a secure fashion
US6044409A (en) * 1996-06-26 2000-03-28 Sun Microsystems, Inc. Framework for marshaling and unmarshaling argument object references
US6282580B1 (en) * 1996-07-02 2001-08-28 Sun Microsystems, Inc. Bridge providing communication between different implementations of object request brokers
US5748897A (en) * 1996-07-02 1998-05-05 Sun Microsystems, Inc. Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer
US6115744A (en) * 1996-07-30 2000-09-05 Bea Systems, Inc. Client object API and gateway to enable OLTP via the internet
US5754763A (en) * 1996-10-01 1998-05-19 International Business Machines Corporation Software auditing mechanism for a distributed computer enterprise environment
US6209018B1 (en) * 1997-11-13 2001-03-27 Sun Microsystems, Inc. Service framework for a distributed object network system
US6018805A (en) * 1997-12-15 2000-01-25 Recipio Transparent recovery of distributed-objects using intelligent proxies
US6003083A (en) * 1998-02-19 1999-12-14 International Business Machines Corporation Workload management amongst server objects in a client/server network with distributed objects
US6125363A (en) * 1998-03-30 2000-09-26 Buzzeo; Eugene Distributed, multi-user, multi-threaded application development method
US6105067A (en) * 1998-06-05 2000-08-15 International Business Machines Corp. Connection pool management for backend servers using common interface

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE43375E1 (en) * 1999-11-30 2012-05-08 Reware Asset Group, L.L.C. System and method for communications in a distributed computing environment
US7133922B1 (en) * 2000-08-07 2006-11-07 The Hong Kong University Of Science And Technology Method and apparatus for streaming of data
US20020042721A1 (en) * 2000-10-05 2002-04-11 Alcatel Network management client
US20020085528A1 (en) * 2000-12-28 2002-07-04 Reza Ahmed Areef Methods and systems implementing mobility support in a packet-based wireless access network
US7082116B2 (en) * 2000-12-28 2006-07-25 Nortel Networks Limited Methods and systems implementing mobility support in a packet-based wireless access network
US20040205054A1 (en) * 2003-04-08 2004-10-14 International Business Machines Corporation System and method for accessing resources in a database
US7266543B2 (en) 2003-04-08 2007-09-04 International Business Machines Corporation System and method for accessing resources in a database
US7331049B1 (en) * 2003-04-21 2008-02-12 Borland Software Corporation System and methodology providing typed event and notification services
US20040264388A1 (en) * 2003-06-30 2004-12-30 Rover Jeremy L. System and method for dynamically configuring and transitioning wired and wireless networks
US7483390B2 (en) 2003-06-30 2009-01-27 Intel Corporation System and method for dynamically configuring and transitioning wired and wireless networks
US20080235369A1 (en) * 2007-03-21 2008-09-25 Wouhaybi Rita H Distributing replication assignments among nodes

Also Published As

Publication number Publication date
EP1129401A1 (en) 2001-09-05
CN1335956A (en) 2002-02-13
US6356930B2 (en) 2002-03-12
CA2364264A1 (en) 2000-04-27
AU1119100A (en) 2000-05-08
JP2003527763A (en) 2003-09-16
WO2000023879A1 (en) 2000-04-27

Similar Documents

Publication Publication Date Title
US6356930B2 (en) Connection concentrator for distributed object systems
KR100330936B1 (en) Workload management amongst server objects in a client/server network with distributed objects
US6389448B1 (en) System and method for load balancing
US8514749B2 (en) Routing requests for duplex applications
EP1257910B1 (en) Method and apparatus for distributing load in a computer environment
US7792989B2 (en) Arrangement for selecting a server to provide distributed services from among multiple servers based on a location of a client device
US7509369B1 (en) Balancing shared servers in virtual environments
US6154777A (en) System for context-dependent name resolution
EP1315349B1 (en) A method for integrating with load balancers in a client and server system
US8005979B2 (en) System and method for uniquely identifying processes and entities in clusters
US7948898B2 (en) Method and system to efficiently manage a network connection to connect a client and a resource
US6078943A (en) Method and apparatus for dynamic interval-based load balancing
EP2321937B1 (en) Load balancing for services
US20030014524A1 (en) Balancing shared servers in virtual environments
Xu et al. A modified round-robin load-balancing algorithm for cluster-based web servers
CN111935312A (en) Industrial Internet container cloud platform and flow access control method thereof
Zhao et al. DotSlash: A self-configuring and scalable rescue system for handling web hotspots effectively
CN115190162B (en) Proxy service configuration method and proxy service system in block chain
CN115002041A (en) Node balance scheduling method, device, equipment and storage medium
Moon et al. A high-availability webserver cluster using multiple front-ends
Vijayabharathi Customized Automatic Load Sharing For a Network of Workstations
Li et al. Quality of Service Guarantee for Cluster-Based Internet Service
WO2001040932A2 (en) A system and method for controlling a plurality of servers

Legal Events

Date Code Title Description
AS Assignment

Owner name: OBJECTERA, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GARG, ROHIT;REEL/FRAME:010328/0712

Effective date: 19991014

AS Assignment

Owner name: SILVERSTREAM SOFTWARE, INC., MASSACHUSETTS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:OBJECTERA, INC.;REEL/FRAME:011920/0318

Effective date: 20010530

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

AS Assignment

Owner name: SILVERSTREAM SOFTWARE, LLC, MASSACHUSETTS

Free format text: CHANGE OF NAME;ASSIGNOR:SILVERSTREAM SOFTWARE, INC.;REEL/FRAME:015687/0261

Effective date: 20020830

REMI Maintenance fee reminder mailed
FPAY Fee payment

Year of fee payment: 4

SULP Surcharge for late payment
AS Assignment

Owner name: NOVELL, INC., UTAH

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SILVERSTREAM SOFTWARE, LLC;REEL/FRAME:020995/0484

Effective date: 20080509

FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: CPTN HOLDINGS LLC, WASHINGTON

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NOVELL, INC.;REEL/FRAME:027798/0101

Effective date: 20110427

Owner name: ORACLE INTERNATIONAL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CPTN HOLDINGS LLC;REEL/FRAME:027798/0152

Effective date: 20110909

FPAY Fee payment

Year of fee payment: 12