← Back to Patent Explorer
US6157944A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for replicating a client/server data exchange to additional client notes connecting to the server

Assignee: Citrix Systems Inc
•
Filing: 1997-05-14
•
Granted: 2000-12-05
•
Expires: 2017-05-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method for replicating data that are exchanged between a server and a first client node and transmitting the replicated data to other client nodes connected to the server are described. A connection is established with the first client node and a predetermined communications port located on the server using an initial protocol stack. The initial protocol stack includes a data structure that links the initial protocol stack to the connection with the first client node. The data structure enables the connection between the server and the first client node to move to other ports of the server. When the first client node communicates with the server, a connection manager produces a new protocol stack in response to those communications. An execution environment on the server becomes associated with the first client node. When the execution environment is started, the server application requested by the first client node is also started. The connection manager then transfers the connection between the first client node and the server to the new protocol stack by moving the data structure from the initial protocol stack to the new protocol stack. Similarly, a second connection is established between a second client node and the server using a third protocol stack. Data communicated between the first client node and the application program executing on the server are replicated and transmitted to the second client node using the third protocol stack.

Inventors

  • 👤 Bradley J. Pedersen

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 05:33
CPC Classifications
H; H04; H04L; H04L67/00; H04L67/34; G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/54; G06F9/542; H04L69/00; H04L69/08; H04L69/16; H04L69/161; H04L69/165; H04L69/18; G06F2209/00; G06F2209/54; G06F2209/549

Claims Analysis

Total Claims: 19
Claim 1
Independent Claim 204 words
A method for communicating between a client node and an application program executing on a server comprising the steps of: (a) establishing a connection with said client node and a predetermined communications port located on the server using an initial protocol stack; (b) generating a data structure representing the connection and associated with the initial protocol stack; (c) generating a client space in said server; (d) generating a second protocol stack associated with said client space; (e) notifying a connection manager of said connection to said client node; (f) transferring said connection between the server and said client node from the initial protocol stack to said second protocol stack by associating the data structure with the second protocol stack; (g) generating a new protocol stack for each additional client node requesting access to the application executing on the server; (h) establishing a communication path between the application program executing on the server and each new protocol stack; and (i) replicating data transmissions between the client node and the application executing on the server for transmitting the replicated data transmissions to each additional client node via the established communications path between the application program and the new protocol stack generated for that additional client node.
Claim 2
Independent Claim 204 words
A method for communicating between a client node and an application program executing on a server comprising the steps of: (a) establishing a connection with said client node and a predetermined communications port located on the server using an initial protocol stack; (b) generating a data structure representing the connection and associated with the initial protocol stack; (c) generating a client space in said server; (d) generating a second protocol stack associated with said client space; (e) notifying a connection manager of said connection to said client node; (f) transferring said connection between the server and said client node from the initial protocol stack to said second protocol stack by associating the data structure with the second protocol stack; (g) generating a new protocol stack for each additional client node requesting access to the application executing on the server; (h) establishing a communication path between the application program executing on the server and each new protocol stack; and (i) replicating data transmissions between the client node and the application executing on the server for transmitting the replicated data transmissions to each additional client node via the established communications path between the application program and the new protocol stack generated for that additional client node.
Claim 3
Dependent Claim 72 words
The method of claim 1 wherein step (a) further comprises: (a--a) receiving by a master network information node an application request from said client node; (a-b) providing by said master network information node to said client node a server address associated with said server having said application; and (a-c) receiving, by said server, a request from the client node to connect to the predetermined communications port based on the provided server address.
Claim 4
Dependent Claim 22 words
The method of claim 1 wherein step (c) further comprises associating a virtual machine providing an execution environment with said data structure.
Claim 5
Dependent Claim 26 words
The method of claim 1 further comprising the step of exchanging data over the connection between the server and the client node through a second server.
Claim 6
Dependent Claim 24 words
The method of claim 1 wherein the transmitted data include data sent from the first client node to the application executing on the server.
Claim 7
Dependent Claim 24 words
The method of claim 1 wherein the transmitted data include data sent from the application executing on the server to the first client node.
Claim 8
Independent Claim 178 words
A method for communicating between a first client node and an application program executing on a server, the method comprising the steps of: (a) establishing a connection with said first client node and a predetermined communications port located on the server using an initial protocol stack; (b) generating a data structure representing the connection and associated with the initial protocol stack; (c) generating a client space in said server; (d) generating a second protocol stack associated with said client space; (e) notifying a connection manager of said connection to said first client node; (f) transferring said connection between the server and said first client node from the initial protocol stack to said second protocol stack by associating the data structure with the second protocol stack; (g) establishing a second connection with a second client node and the server using a third protocol stack; (h) obtaining data associated with data communication between the first client node and the application program executing on the server; and (i) transmitting the data to the second client node using the third protocol stack.
Claim 9
Independent Claim 178 words
A method for communicating between a first client node and an application program executing on a server, the method comprising the steps of: (a) establishing a connection with said first client node and a predetermined communications port located on the server using an initial protocol stack; (b) generating a data structure representing the connection and associated with the initial protocol stack; (c) generating a client space in said server; (d) generating a second protocol stack associated with said client space; (e) notifying a connection manager of said connection to said first client node; (f) transferring said connection between the server and said first client node from the initial protocol stack to said second protocol stack by associating the data structure with the second protocol stack; (g) establishing a second connection with a second client node and the server using a third protocol stack; (h) obtaining data associated with data communication between the first client node and the application program executing on the server; and (i) transmitting the data to the second client node using the third protocol stack.
Claim 10
Dependent Claim 75 words
The method of claim 7 wherein step (a) further comprises: (a--a) receiving by a master network information node an application request from said first client node; (a-b) providing by said master network information node to said first client node a server address associated with said server having said application; and (a-c) receiving, by said server, a request from the first client node to connect to the predetermined communications port based on the provided server address.
Claim 11
Dependent Claim 22 words
The method of claim 7 wherein step (c) further comprises associating a virtual machine providing an execution environment with said data structure.
Claim 12
Dependent Claim 104 words
The method of claim 1 further comprising the steps of: (j) establishing a connection between the server and each additional client node requesting access to the application using a new protocol stack for each such additional client node; (k) establishing a communication path between the application program executing on the server and each new protocol stack; and (l) replicating data transmissions between the first client node and the application executing on the server for transmitting the replicated data transmissions to each additional client node via the established communications path between the application program and the new protocol stack generated for that additional client node.
Claim 13
Dependent Claim 27 words
The method of claim 7 further comprising the step of exchanging data over the connection between the server and the first client node through a second server.
Claim 14
Dependent Claim 24 words
The method of claim 7 wherein the transmitted data include data sent from the first client node to the application executing on the server.
Claim 15
Dependent Claim 24 words
The method of claim 7 wherein the transmitted data include data sent from the application executing on the server to the first client node.
Claim 16
Independent Claim 194 words
A system for communicating with a client node comprising: a server node comprising a predetermined communications port and a plurality of protocol stacks; a multiplexer in communication with each of the plurality of protocol stacks, said multiplexer comprising a linked list of protocol stacks and each protocol stack maintaining a connection with a client node; a first client node having a communications device establishing a connection between said first client node and said predetermined communications port of said server node using an initial protocol stack associated with a data structure representing the connection; a second protocol stack located on said server node; a client space located in memory on said server node, said client space associated with said second protocol stack; a connection manager located on said server node; and a notification device located on said server node, said notification device notifying said connection manager of said connection between said first client node and said predetermined communications port; said connection manager transferring said connection between the predetermined communications port and said first client node from the initial protocol stack to said second protocol stack by associating the data structure with the second protocol stack.
Claim 17
Independent Claim 194 words
A system for communicating with a client node comprising: a server node comprising a predetermined communications port and a plurality of protocol stacks; a multiplexer in communication with each of the plurality of protocol stacks, said multiplexer comprising a linked list of protocol stacks and each protocol stack maintaining a connection with a client node; a first client node having a communications device establishing a connection between said first client node and said predetermined communications port of said server node using an initial protocol stack associated with a data structure representing the connection; a second protocol stack located on said server node; a client space located in memory on said server node, said client space associated with said second protocol stack; a connection manager located on said server node; and a notification device located on said server node, said notification device notifying said connection manager of said connection between said first client node and said predetermined communications port; said connection manager transferring said connection between the predetermined communications port and said first client node from the initial protocol stack to said second protocol stack by associating the data structure with the second protocol stack.
Claim 18
Dependent Claim 21 words
The system of claim 14 wherein each protocol stack is configured to allow drivers to be pushed onto that protocol stack.
Claim 19
Dependent Claim 37 words
The system of claim 14 wherein the server node is a first server node and further comprising a second server node through which the first server node and the first client node communicate over the transferred connection.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-12-05 2004-06-05 2004-12-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-12-05 2008-06-05 2008-12-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-12-05 2012-06-05 2012-12-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag