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

Client/server system in which protocol caches for multiple sessions are selectively copied into a common checkpoint cache upon receiving a checkpoint request

Assignee: International Business Machines Corp
•
Filing: 1997-05-07
•
Granted: 1999-05-25
•
Expires: 2017-05-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Method, apparatus and program products are provided for persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between a client protocol conversion application executing on a first computer and a server protocol conversion application executing on a second computer located remote from the first computer. An active cache is established independently for each session with a corresponding cache for each session at the other computer for use with the first and the second communication session respectively. A checkpoint request is transmitted to the server application indicating one of the active protocol caches from either the first session or the second session to be used to provide a checkpoint. On receipt of the request from the server application, the active protocol cache for the indicated session is copied to provide a checkpoint cache of the second computer. Regardless of which session was indicated, the resulting checkpoint cache of the second computer is associated with both the first and the second session. A checkpoint confirmation message is transmitted to the client application with the first computer responsive to the copying operation. On receipt of the checkpoint confirmation message, the client application creates a checkpoint cache of the first computer as a copy of the indicated one of the first or second sessions protocol cache. The checkpoint cache of the first computer is associated with both the first session and the second session to provide a checkpoint. Operations to create new checkpoints are repeated as desired based upon checkpoint criteria.

Inventors

  • 👤 Barron Cornelius Housel, III
  • 👤 Ian Beaumont Shields

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 21:27
CPC Classifications
H; H04; H04L; H04L67/00; H04L67/50; H04L67/56; H04L67/568; H04L67/5682; H04L9/00; H04L9/40; H04L67/01; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329; H04W; H04W80/00; H04W80/04; H04W80/08; H04W80/10

Claims Analysis

Total Claims: 48
Claim 1
Independent Claim 463 words
A method of persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between an application executing on a first computer and an application executing on a second computer located remote from the first computer, the method comprising the steps of: determining if a new checkpoint is required; establishing a first cache operatively associated with the first session at the first computer and a corresponding second cache operatively associated with the first session at the second computer; establishing a third cache operatively associated with the second session at the first computer and a corresponding fourth cache operatively associated with the second session at the second computer; transmitting a checkpoint request to the second computer indicating one of the first or the third cache to be used to provide a checkpoint; receiving the checkpoint request at the second computer; copying the second cache responsive to the received checkpoint request if the checkpoint request indicates the first cache to provide a checkpoint cache of the second computer; copying the fourth cache responsive to the received checkpoint request if the checkpoint request indicates the third cache to provide a checkpoint cache of the second computer; associating the checkpoint cache of the second computer with both the first and the second session; transmitting a checkpoint confirmation message to the first computer responsive to said step of copying the second cache and said step of copying the fourth cache; receiving the checkpoint confirmation message at the first computer; creating a checkpoint cache of the first computer as a copy of the indicated one of the first or the third cache responsive to the received checkpoint confirmation message; associating the checkpoint cache of the first computer with both the first session and the second session to provide a checkpoint; and then repeating, responsive to said determining step, said steps of transmitting a checkpoint request, receiving the checkpoint request, copying the second cache, copying the fourth cache, associating the checkpoint cache of the second computer, transmitting a checkpoint confirmation message, receiving the checkpoint confirmation message, creating, and associating the checkpoint cache of the first computer to provide a new checkpoint; wherein said determining step comprises the steps of: initiating a new checkpoint from the first cache based on a checkpoint criteria for the first session; preventing initiating a new checkpoint from the first cache during execution of said repeating step wherein the one of the first or the third cache is the third cache; initiating a new checkpoint from the third cache based on a checkpoint criteria for the second session; and preventing initiating a new checkpoint from the third cache during execution of said repeating step wherein the one of the first or the third cache is the first cache.
Claim 2
Independent Claim 463 words
A method of persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between an application executing on a first computer and an application executing on a second computer located remote from the first computer, the method comprising the steps of: determining if a new checkpoint is required; establishing a first cache operatively associated with the first session at the first computer and a corresponding second cache operatively associated with the first session at the second computer; establishing a third cache operatively associated with the second session at the first computer and a corresponding fourth cache operatively associated with the second session at the second computer; transmitting a checkpoint request to the second computer indicating one of the first or the third cache to be used to provide a checkpoint; receiving the checkpoint request at the second computer; copying the second cache responsive to the received checkpoint request if the checkpoint request indicates the first cache to provide a checkpoint cache of the second computer; copying the fourth cache responsive to the received checkpoint request if the checkpoint request indicates the third cache to provide a checkpoint cache of the second computer; associating the checkpoint cache of the second computer with both the first and the second session; transmitting a checkpoint confirmation message to the first computer responsive to said step of copying the second cache and said step of copying the fourth cache; receiving the checkpoint confirmation message at the first computer; creating a checkpoint cache of the first computer as a copy of the indicated one of the first or the third cache responsive to the received checkpoint confirmation message; associating the checkpoint cache of the first computer with both the first session and the second session to provide a checkpoint; and then repeating, responsive to said determining step, said steps of transmitting a checkpoint request, receiving the checkpoint request, copying the second cache, copying the fourth cache, associating the checkpoint cache of the second computer, transmitting a checkpoint confirmation message, receiving the checkpoint confirmation message, creating, and associating the checkpoint cache of the first computer to provide a new checkpoint; wherein said determining step comprises the steps of: initiating a new checkpoint from the first cache based on a checkpoint criteria for the first session; preventing initiating a new checkpoint from the first cache during execution of said repeating step wherein the one of the first or the third cache is the third cache; initiating a new checkpoint from the third cache based on a checkpoint criteria for the second session; and preventing initiating a new checkpoint from the third cache during execution of said repeating step wherein the one of the first or the third cache is the first cache.
Claim 3
Dependent Claim 25 words
A method according to claim 1 wherein the checkpoint criteria for the first session is the same as the checkpoint criteria for the second session.
Claim 4
Dependent Claim 54 words
A method according to claim 1 wherein the checkpoint criteria for the first session is a function of the time since a checkpoint was last taken from the first cache and the checkpoint criteria for the second session is a function of the time since a checkpoint was last taken from the third cache.
Claim 5
Dependent Claim 44 words
A method according to claim 1 wherein the checkpoint criteria for the first session is a function of communications activity associated with the first session and the checkpoint criteria for the second session is a function of communications activity associated with the second session.
Claim 6
Dependent Claim 50 words
A method according to claim 1 wherein the checkpoint criteria for the first session and the checkpoint criteria for the second session are selected to result in a checkpoint cache after a plurality of checkpoints have been executed which is taken from both the first cache and the third cache.
Claim 7
Dependent Claim 46 words
A method according to claim 1 wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and wherein the determining step is performed at the first computer.
Claim 8
Dependent Claim 132 words
A method according to claim 6 further comprising the steps following said converting step of: initiating a third communication session by transmitting a request from the client application to the server application over the external communication link; transmitting an identification of the checkpoint cache of the second computer to the client application; selecting a checkpoint cache of the first computer associated with the transmitted identification as a protocol cache operatively associated with the third session at the first computer; transmitting an acknowledgment message to the server application acknowledging selection of the identified checkpoint cache as the protocol cache for use with the third session at the first computer; selecting the identified checkpoint cache of the second computer as a corresponding protocol cache operatively associated with the third session at the second computer.
Claim 9
Dependent Claim 177 words
A method according to claim 7 wherein a plurality of checkpoint caches are associated with the second computer; and wherein said step of transmitting an identification comprises the step of transmitting an identification of each of the plurality of checkpoint caches associated with the second computer; and wherein said step of selecting a checkpoint cache of the first computer comprises the step of selecting a checkpoint cache of the first computer associated with one of the transmitted identifications as the protocol cache operatively associated with the third session at the first computer; and wherein said transmitting an acknowledgment step comprises the step of transmitting an acknowledgment message to the server application including an indication of the one of the transmitted identifications associated with the selected checkpoint cache operatively associated with the third session at the first computer; and wherein said selecting the identified cache of the second computer step comprises the step of selecting the indicated checkpoint cache of the second computer as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 10
Dependent Claim 82 words
A method according to claim 1 wherein said step of transmitting a checkpoint confirmation message comprises the steps of: determining if the checkpoint cache of the second computer was provided without error by said one of said step of copying the second cache or said step of copying the fourth cache; and transmitting a checkpoint confirmation message indicating a success if no error is indicated by said step of determining if the checkpoint cache of the second computer was provided without error.
Claim 11
Dependent Claim 151 words
A method according to claim 4 further comprising the step preceding said transmitting a checkpoint request of: copying one of the first or the third cache at the first computer to a temporary cache of the first computer; and wherein said step of transmitting a checkpoint confirmation message further comprises the step of transmitting a checkpoint confirmation message indicating a failure if an error is indicated by said step of determining if the checkpoint cache of the second computer was provided without error; and wherein said step of receiving the checkpoint confirmation message includes the step of determining if the received checkpoint confirmation message indicates a success; and wherein said creating step comprises the steps of: converting the temporary cache into a checkpoint cache of the first computer if the received checkpoint confirmation message indicates a success; and discarding the temporary cache if the received checkpoint confirmation message indicates a failure.
Claim 12
Dependent Claim 137 words
A method according to claim 1 further comprising the steps following said creating step of: initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer; and selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 13
Independent Claim 321 words
A method of persistent cache synchronization for an application executing on a second computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a first computer and located remote from the second computer, the method comprising the steps of: establishing a protocol cache operatively associated with the first session at the second computer; establishing a protocol cache operatively associated with the second session at the second computer; receiving at the second computer a checkpoint request identifying one of the first or the second session; copying the protocol cache operatively associated with the identified one of the first or the second session at the second computer responsive to the received checkpoint request to provide a checkpoint cache of the second computer, the checkpoint cache of the second computer being associated with both the first and the second session; transmitting a checkpoint confirmation message to the first computer responsive to said step of copying the protocol cache; and then repeating said steps of receiving copying and transmitting to provide a new checkpoint; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising the steps following said transmitting step of: receiving a request to initiate a new session including an identification of a checkpoint cache of the first computer from the first computer at the second computer over the external communication link; selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 14
Independent Claim 321 words
A method of persistent cache synchronization for an application executing on a second computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a first computer and located remote from the second computer, the method comprising the steps of: establishing a protocol cache operatively associated with the first session at the second computer; establishing a protocol cache operatively associated with the second session at the second computer; receiving at the second computer a checkpoint request identifying one of the first or the second session; copying the protocol cache operatively associated with the identified one of the first or the second session at the second computer responsive to the received checkpoint request to provide a checkpoint cache of the second computer, the checkpoint cache of the second computer being associated with both the first and the second session; transmitting a checkpoint confirmation message to the first computer responsive to said step of copying the protocol cache; and then repeating said steps of receiving copying and transmitting to provide a new checkpoint; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising the steps following said transmitting step of: receiving a request to initiate a new session including an identification of a checkpoint cache of the first computer from the first computer at the second computer over the external communication link; selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 15
Independent Claim 323 words
A method of persistent cache synchronization for an application executing on a first computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a second computer located remote from the first computer, the method comprising the steps of: establishing a protocol cache operatively associated with the first session at the first computer; establishing a protocol cache operatively associated with the second session at the first computer; transmitting a checkpoint request to the second computer indicating one of the first or the second session whose associated protocol cache is to be used to create a checkpoint; receiving a checkpoint confirmation message at the first computer; creating a checkpoint cache of the first computer as a copy of the protocol cache of the one of the first or the second session at the first computer responsive to the received checkpoint confirmation message to provide a checkpoint, the checkpoint cache of the first computer being associated with both the first session and the second session; and then repeating said steps of transmitting receiving and creating to provide a new checkpoint; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising the steps following said creating step of: initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; receiving an acknowledgment message at the first computer acknowledging selection of a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 16
Independent Claim 323 words
A method of persistent cache synchronization for an application executing on a first computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a second computer located remote from the first computer, the method comprising the steps of: establishing a protocol cache operatively associated with the first session at the first computer; establishing a protocol cache operatively associated with the second session at the first computer; transmitting a checkpoint request to the second computer indicating one of the first or the second session whose associated protocol cache is to be used to create a checkpoint; receiving a checkpoint confirmation message at the first computer; creating a checkpoint cache of the first computer as a copy of the protocol cache of the one of the first or the second session at the first computer responsive to the received checkpoint confirmation message to provide a checkpoint, the checkpoint cache of the first computer being associated with both the first session and the second session; and then repeating said steps of transmitting receiving and creating to provide a new checkpoint; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising the steps following said creating step of: initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; receiving an acknowledgment message at the first computer acknowledging selection of a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 17
Independent Claim 423 words
A system for persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between an application executing on a first computer and an application executing on a second computer located remote from the first computer, the system comprising: means operatively associated with the first computer for establishing a first cache operatively associated with the first session at the first computer and a third cache operatively associated with the second session at the first computer; means operatively associated with the second computer for establishing a corresponding second cache operatively associated with the first session at the second computer and a corresponding fourth cache operatively associated with the second session at the second computer; means operatively associated with said first computer for determining if a new checkpoint is desired; means responsive to said means for determining for transmitting a checkpoint request to the second computer indicating one of the first or the third cache to be used to provide a checkpoint; means for receiving the checkpoint request at the second computer; means for copying the second cache responsive to the received checkpoint request if the checkpoint request indicates the first cache to provide a checkpoint cache of the second computer; means for copying the fourth cache responsive to the received checkpoint request if the checkpoint request indicates the third cache to provide a checkpoint cache of the second computer; means for associating the checkpoint cache of the second computer with both the first and the second session; means for transmitting a checkpoint confirmation message to the first computer responsive to said means for copying the second cache and said means for copying the fourth cache; means for receiving a checkpoint confirmation message at the first computer; means for creating a checkpoint cache of the first computer as a copy of the indicated one of the first or the third cache responsive to a received checkpoint confirmation message; and means for associating the checkpoint cache of the first computer with both the first session and the second session to provide a checkpoint; wherein said means for determining comprises: means for initiating a new checkpoint from the first cache based on a checkpoint criteria for the first session; means for initiating a new checkpoint from the third cache based on a checkpoint criteria for the second session; and means for preventing said means for initiating a new checkpoint from the first cache and said means for initiating a checkpoint from the third cache from initiating interfering new checkpoints.
Claim 18
Independent Claim 423 words
A system for persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between an application executing on a first computer and an application executing on a second computer located remote from the first computer, the system comprising: means operatively associated with the first computer for establishing a first cache operatively associated with the first session at the first computer and a third cache operatively associated with the second session at the first computer; means operatively associated with the second computer for establishing a corresponding second cache operatively associated with the first session at the second computer and a corresponding fourth cache operatively associated with the second session at the second computer; means operatively associated with said first computer for determining if a new checkpoint is desired; means responsive to said means for determining for transmitting a checkpoint request to the second computer indicating one of the first or the third cache to be used to provide a checkpoint; means for receiving the checkpoint request at the second computer; means for copying the second cache responsive to the received checkpoint request if the checkpoint request indicates the first cache to provide a checkpoint cache of the second computer; means for copying the fourth cache responsive to the received checkpoint request if the checkpoint request indicates the third cache to provide a checkpoint cache of the second computer; means for associating the checkpoint cache of the second computer with both the first and the second session; means for transmitting a checkpoint confirmation message to the first computer responsive to said means for copying the second cache and said means for copying the fourth cache; means for receiving a checkpoint confirmation message at the first computer; means for creating a checkpoint cache of the first computer as a copy of the indicated one of the first or the third cache responsive to a received checkpoint confirmation message; and means for associating the checkpoint cache of the first computer with both the first session and the second session to provide a checkpoint; wherein said means for determining comprises: means for initiating a new checkpoint from the first cache based on a checkpoint criteria for the first session; means for initiating a new checkpoint from the third cache based on a checkpoint criteria for the second session; and means for preventing said means for initiating a new checkpoint from the first cache and said means for initiating a checkpoint from the third cache from initiating interfering new checkpoints.
Claim 19
Dependent Claim 25 words
A system according to claim 14 wherein the checkpoint criteria for the first session is the same as the checkpoint criteria for the second session.
Claim 20
Dependent Claim 54 words
A system according to claim 14 wherein the checkpoint criteria for the first session is a function of the time since a checkpoint was last taken from the first cache and the checkpoint criteria for the second session is a function of the time since a checkpoint was last taken from the third cache.
Claim 21
Dependent Claim 44 words
A system according to claim 14 wherein the checkpoint criteria for the first session is a function of communications activity associated with the first session and the checkpoint criteria for the second session is a function of communications activity associated with the second session.
Claim 22
Dependent Claim 50 words
A system according to claim 14 wherein the checkpoint criteria for the first session and the checkpoint criteria for the second session are selected to result in a checkpoint cache after a plurality of checkpoints have been initiated which is taken from both the first cache and the third cache.
Claim 23
Dependent Claim 35 words
A system according to claim 14 wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application.
Claim 24
Dependent Claim 146 words
A system according to claim 19 further comprising: means for initiating a third communication session by transmitting a request from the client application to the server application over the external communication link; means responsive to said means for initiating a third communication session for transmitting an identification of the checkpoint cache of the second computer to the client application; means for selecting a checkpoint cache of the first computer associated with the transmitted identification as a protocol cache operatively associated with the third session at the first computer; means for transmitting an acknowledgment message to the server application acknowledging selection of the identified checkpoint cache as the protocol cache for use with the third session at the first computer; and means for selecting the identified checkpoint cache of the second computer as a corresponding protocol cache operatively associated with the third session at the second computer.
Claim 25
Dependent Claim 175 words
A system according to claim 20 wherein a plurality of checkpoint caches are associated with the second computer; and wherein said means for transmitting an identification comprises means for transmitting an identification of each of the plurality of checkpoint caches associated with the second computer; and wherein said means for selecting a checkpoint cache of the first computer comprises means for selecting a checkpoint cache of the first computer associated with one of the transmitted identifications as the protocol cache operatively associated with the third session at the first computer; and wherein said means for transmitting an acknowledgment comprises means for transmitting an acknowledgment message to the server application including an indication of the one of the transmitted identifications associated with the selected checkpoint cache operatively associated with the third session at the first computer; and wherein said means for selecting the identified cache of the second computer comprises means for selecting the indicated checkpoint cache of the second computer as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 26
Dependent Claim 80 words
A system according to claim 14 wherein said means for transmitting a checkpoint confirmation message comprises: means for determining if a checkpoint cache of the second computer was provided without error by said means for copying the second cache or said means for copying the fourth cache; and means for transmitting a checkpoint confirmation message indicating a success if no error is indicated by said means for determining if a checkpoint cache of the second computer was provided without error.
Claim 27
Dependent Claim 144 words
A system according to claim 22 further comprising: means for copying one of the first or the third cache at the first computer to a temporary cache of the first computer; and wherein said means for transmitting a checkpoint confirmation message further comprises means for transmitting a checkpoint confirmation message indicating a failure if an error is indicated by said means for determining if a checkpoint cache of the second computer was provided without error; and wherein said means for receiving a checkpoint confirmation message comprises means for determining if the received checkpoint confirmation message indicates a success; and wherein said means for creating comprises: means for converting the temporary cache into a checkpoint cache of the first computer if the received checkpoint confirmation message indicates a success; and means for discarding the temporary cache if the received checkpoint confirmation message indicates a failure.
Claim 28
Dependent Claim 138 words
A system according to claim 14 further comprising: means for initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; means for selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; means for transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer; and means for selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 29
Independent Claim 313 words
A system for persistent cache synchronization for an application executing on a second computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a first computer and located remote from the second computer, the system comprising: means for establishing a protocol cache operatively associated with the first session at the second computer; means for establishing a protocol cache operatively associated with the second session at the second computer; means at the second computer for receiving a checkpoint request identifying one of the first or the second session; means for copying the protocol cache operatively associated with the identified one of the first or the second session at the second computer responsive to the received checkpoint request to provide a checkpoint cache of the second computer, the checkpoint cache of the second computer being associated with both the first and the second session; and means for transmitting a checkpoint confirmation message to the first computer responsive to said means for copying the protocol cache; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: means at the second computer for receiving a request to initiate a new session including an identification of a checkpoint cache of the first computer from the first computer over the external communication link; means for selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and means for transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 30
Independent Claim 313 words
A system for persistent cache synchronization for an application executing on a second computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a first computer and located remote from the second computer, the system comprising: means for establishing a protocol cache operatively associated with the first session at the second computer; means for establishing a protocol cache operatively associated with the second session at the second computer; means at the second computer for receiving a checkpoint request identifying one of the first or the second session; means for copying the protocol cache operatively associated with the identified one of the first or the second session at the second computer responsive to the received checkpoint request to provide a checkpoint cache of the second computer, the checkpoint cache of the second computer being associated with both the first and the second session; and means for transmitting a checkpoint confirmation message to the first computer responsive to said means for copying the protocol cache; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: means at the second computer for receiving a request to initiate a new session including an identification of a checkpoint cache of the first computer from the first computer over the external communication link; means for selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and means for transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 31
Independent Claim 340 words
A system for persistent cache synchronization for an application executing on a first computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a second computer located remote from the first computer, the system comprising: means for establishing a protocol cache operatively associated with the first session at the first computer; means for establishing a protocol cache operatively associated with the second session at the first computer; means at the first computer for determining if a new checkpoint is desired; means responsive to said means for determining if a new checkpoint is desired for transmitting a checkpoint request to the second computer indicating one of the first or the second session whose associated protocol cache is to be used to create a checkpoint; means for receiving a checkpoint confirmation message at the first computer; and means for creating a checkpoint cache of the first computer as a copy of the protocol cache of the one of the first or the second session at the first computer responsive to the received checkpoint confirmation message to provide a checkpoint, the checkpoint cache of the first computer being associated with both the first session and the second session; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: means for initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; means for receiving an acknowledgment message at the first computer acknowledging selection of a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and means for selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 32
Independent Claim 340 words
A system for persistent cache synchronization for an application executing on a first computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a second computer located remote from the first computer, the system comprising: means for establishing a protocol cache operatively associated with the first session at the first computer; means for establishing a protocol cache operatively associated with the second session at the first computer; means at the first computer for determining if a new checkpoint is desired; means responsive to said means for determining if a new checkpoint is desired for transmitting a checkpoint request to the second computer indicating one of the first or the second session whose associated protocol cache is to be used to create a checkpoint; means for receiving a checkpoint confirmation message at the first computer; and means for creating a checkpoint cache of the first computer as a copy of the protocol cache of the one of the first or the second session at the first computer responsive to the received checkpoint confirmation message to provide a checkpoint, the checkpoint cache of the first computer being associated with both the first session and the second session; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: means for initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; means for receiving an acknowledgment message at the first computer acknowledging selection of a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and means for selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 33
Dependent Claim 533 words
A computer program product for persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between an application executing on a first computer and an application executing on a second computer located remote from the first computer, the computer program product comprising: a computer readable storage medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: computer readable program code means operatively associated with the first computer for establishing a first cache operatively associated with the first session at the first computer and a third cache operatively associated with the second session at the first computer; computer readable program code means operatively associated with the second computer for establishing a corresponding second cache operatively associated with the first session at the second computer and a corresponding fourth cache operatively associated with the second session at the second computer; computer readable program code means operatively associated with said first computer for determining if a new checkpoint is desired; computer readable program code means responsive to said computer readable program code means for determining for transmitting a checkpoint request to the second computer indicating one of the first or the third cache to be used to provide a checkpoint; computer readable program code means for receiving the checkpoint request at the second computer; computer readable program code means for copying the second cache responsive to the received checkpoint request if the checkpoint request indicates the first cache to provide a checkpoint cache of the second computer; computer readable program code means for copying the fourth cache responsive to the received checkpoint request if the checkpoint request indicates the third cache to provide a checkpoint cache of the second computer; computer readable program code means for associating the checkpoint cache of the second computer with both the first and the second session; computer readable program code means for transmitting a checkpoint confirmation message to the first computer responsive to said computer readable program code means for copying the second cache and said computer readable program code means for copying the fourth cache; computer readable program code means for receiving a checkpoint confirmation message at the first computer; computer readable program code means for creating a checkpoint cache of the first computer as a copy of the indicated one of the first or the third cache responsive to a received checkpoint confirmation message; and computer readable program code means for associating the checkpoint cache of the first computer with both the first session and the second session to provide a checkpoint; wherein said computer readable program code means for determining comprises: computer readable program code means for initiating a new checkpoint from the first cache based on a checkpoint criteria for the first session; computer readable program code means for initiating a new checkpoint from the third cache based on a checkpoint criteria for the second session; and computer readable program code means for preventing said computer readable program code means for initiating a new checkpoint from the first cache and said computer readable program code means for initiating a checkpoint from the third cache from initiating interfering new checkpoints.
Claim 34
Dependent Claim 533 words
A computer program product for persistent cache synchronization for a first communication session and a concurrent second communication session over an external communication link between an application executing on a first computer and an application executing on a second computer located remote from the first computer, the computer program product comprising: a computer readable storage medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: computer readable program code means operatively associated with the first computer for establishing a first cache operatively associated with the first session at the first computer and a third cache operatively associated with the second session at the first computer; computer readable program code means operatively associated with the second computer for establishing a corresponding second cache operatively associated with the first session at the second computer and a corresponding fourth cache operatively associated with the second session at the second computer; computer readable program code means operatively associated with said first computer for determining if a new checkpoint is desired; computer readable program code means responsive to said computer readable program code means for determining for transmitting a checkpoint request to the second computer indicating one of the first or the third cache to be used to provide a checkpoint; computer readable program code means for receiving the checkpoint request at the second computer; computer readable program code means for copying the second cache responsive to the received checkpoint request if the checkpoint request indicates the first cache to provide a checkpoint cache of the second computer; computer readable program code means for copying the fourth cache responsive to the received checkpoint request if the checkpoint request indicates the third cache to provide a checkpoint cache of the second computer; computer readable program code means for associating the checkpoint cache of the second computer with both the first and the second session; computer readable program code means for transmitting a checkpoint confirmation message to the first computer responsive to said computer readable program code means for copying the second cache and said computer readable program code means for copying the fourth cache; computer readable program code means for receiving a checkpoint confirmation message at the first computer; computer readable program code means for creating a checkpoint cache of the first computer as a copy of the indicated one of the first or the third cache responsive to a received checkpoint confirmation message; and computer readable program code means for associating the checkpoint cache of the first computer with both the first session and the second session to provide a checkpoint; wherein said computer readable program code means for determining comprises: computer readable program code means for initiating a new checkpoint from the first cache based on a checkpoint criteria for the first session; computer readable program code means for initiating a new checkpoint from the third cache based on a checkpoint criteria for the second session; and computer readable program code means for preventing said computer readable program code means for initiating a new checkpoint from the first cache and said computer readable program code means for initiating a checkpoint from the third cache from initiating interfering new checkpoints.
Claim 35
Dependent Claim 27 words
A computer program product according to claim 27 wherein the checkpoint criteria for the first session is the same as the checkpoint criteria for the second session.
Claim 36
Dependent Claim 56 words
A computer program product according to claim 27 wherein the checkpoint criteria for the first session is a function of the time since a checkpoint was last taken from the first cache and the checkpoint criteria for the second session is a function of the time since a checkpoint was last taken from the third cache.
Claim 37
Dependent Claim 46 words
A computer program product according to claim 27 wherein the checkpoint criteria for the first session is a function of communications activity associated with the first session and the checkpoint criteria for the second session is a function of communications activity associated with the second session.
Claim 38
Dependent Claim 52 words
A computer program product according to claim 27 wherein the checkpoint criteria for the first session and the checkpoint criteria for the second session are selected to result in a checkpoint cache after a plurality of checkpoints have been initiated which is taken from both the first cache and the third cache.
Claim 39
Dependent Claim 37 words
A computer program product according to claim 27 wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application.
Claim 40
Dependent Claim 172 words
A computer program product according to claim 32 further comprising: computer readable program code means for initiating a third communication session by transmitting a request from the client application to the server application over the external communication link; computer readable program code means responsive to said computer readable program code means for initiating a third communication session for transmitting an identification of the checkpoint cache of the second computer to the client application; computer readable program code means for selecting a checkpoint cache of the first computer associated with the transmitted identification as a protocol cache operatively associated with the third session at the first computer; computer readable program code means for transmitting an acknowledgment message to the server application acknowledging selection of the identified checkpoint cache as the protocol cache for use with the third session at the first computer; and computer readable program code means for selecting the identified checkpoint cache of the second computer as a corresponding protocol cache operatively associated with the third session at the second computer.
Claim 41
Dependent Claim 209 words
A computer program product according to claim 33 wherein a plurality of checkpoint caches are associated with the second computer; and wherein said computer readable program code means for transmitting an identification comprises computer readable program code means for transmitting an identification of each of the plurality of checkpoint caches associated with the second computer; and wherein said computer readable program code means for selecting a checkpoint cache of the first computer comprises computer readable program code means for selecting a checkpoint cache of the first computer associated with one of the transmitted identifications as the protocol cache operatively associated with the third session at the first computer; and wherein said computer readable program code means for transmitting an acknowledgment comprises computer readable program code means for transmitting an acknowledgment message to the server application including an indication of the one of the transmitted identifications associated with the selected checkpoint cache operatively associated with the third session at the first computer; and wherein said computer readable program code means for selecting the identified cache of the second computer comprises computer readable program code means for selecting the indicated checkpoint cache of the second computer as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 42
Dependent Claim 106 words
A computer program product according to claim 27 wherein said computer readable program code means for transmitting a checkpoint confirmation message comprises: computer readable program code means for determining if a checkpoint cache of the second computer was provided without error by said computer readable program code means for copying the second cache or said computer readable program code means for copying the fourth cache; and computer readable program code means for transmitting a checkpoint confirmation message indicating a success if no error is indicated by said computer readable program code means for determining if a checkpoint cache of the second computer was provided without error.
Claim 43
Dependent Claim 182 words
A computer program product according to claim 9 further comprising: computer readable program code means for copying one of the first or the third cache at the first computer to a temporary cache of the first computer; and wherein said computer readable program code means for transmitting a checkpoint confirmation message further comprises computer readable program code means for transmitting a checkpoint confirmation message indicating a failure if an error is indicated by said computer readable program code means for determining if a checkpoint cache of the second computer was provided without error; and wherein said computer readable program code means for receiving a checkpoint confirmation message comprises computer readable program code means for determining if the received checkpoint confirmation message indicates a success; and wherein said computer readable program code means for creating comprises: computer readable program code means for converting the temporary cache into a checkpoint cache of the first computer if the received checkpoint confirmation message indicates a success; and computer readable program code means for discarding the temporary cache if the received checkpoint confirmation message indicates a failure.
Claim 44
Dependent Claim 156 words
A computer program product according to claim 27 further comprising: computer readable program code means for initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; computer readable program code means for selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; computer readable program code means for transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer; and computer readable program code means for selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 45
Dependent Claim 375 words
A computer program product for persistent cache synchronization for an application executing on a second computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a first computer and located remote from the second computer, the computer program product comprising: A computer readable storage medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: computer readable program code means for establishing a protocol cache operatively associated with the first session at the second computer; computer readable program code means for establishing a protocol cache operatively associated with the second session at the second computer; computer readable program code means at the second computer for receiving a checkpoint request identifying one of the first or the second session; computer readable program code means for copying the protocol cache operatively associated with the identified one of the first or the second session at the second computer responsive to the received checkpoint request to provide a checkpoint cache of the second computer, the checkpoint cache of the second computer being associated with both the first and the second session; and computer readable program code means for transmitting a checkpoint confirmation message to the first computer responsive to said computer readable program code means for copying the protocol cache; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: computer readable program code means at the second computer for receiving a request to initiate a new session including an identification of a checkpoint cache of the first computer from the first computer over the external communication link; computer readable program code means for selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and computer readable program code means for transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 46
Dependent Claim 375 words
A computer program product for persistent cache synchronization for an application executing on a second computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a first computer and located remote from the second computer, the computer program product comprising: A computer readable storage medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: computer readable program code means for establishing a protocol cache operatively associated with the first session at the second computer; computer readable program code means for establishing a protocol cache operatively associated with the second session at the second computer; computer readable program code means at the second computer for receiving a checkpoint request identifying one of the first or the second session; computer readable program code means for copying the protocol cache operatively associated with the identified one of the first or the second session at the second computer responsive to the received checkpoint request to provide a checkpoint cache of the second computer, the checkpoint cache of the second computer being associated with both the first and the second session; and computer readable program code means for transmitting a checkpoint confirmation message to the first computer responsive to said computer readable program code means for copying the protocol cache; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: computer readable program code means at the second computer for receiving a request to initiate a new session including an identification of a checkpoint cache of the first computer from the first computer over the external communication link; computer readable program code means for selecting a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and computer readable program code means for transmitting an acknowledgment message to the first computer acknowledging selection of the checkpoint cache of the second computer corresponding to the transmitted identification as the corresponding protocol cache operatively associated with the third session at the second computer.
Claim 47
Dependent Claim 406 words
A computer program product for persistent cache synchronization for an application executing on a first computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a second computer located remote from the first computer, the computer program product comprising: a computer readable storage medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: computer readable program code means for establishing a protocol cache operatively associated with the first session at the first computer; computer readable program code means for establishing a protocol cache operatively associated with the second session at the first computer; computer readable program code means at the first computer for determining if a new checkpoint is desired; computer readable program code means responsive to said computer readable program code means for determining if a new checkpoint is desired for transmitting a checkpoint request to the second computer indicating one of the first or the second session whose associated protocol cache is to be used to create a checkpoint; computer readable program code means for receiving a checkpoint confirmation message at the first computer; and computer readable program code means for creating a checkpoint cache of the first computer as a copy of the protocol cache of the one of the first or the second session at the first computer responsive to the received checkpoint confirmation message to provide a checkpoint, the checkpoint cache of the first computer being associated with both the first session and the second session; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: computer readable program code means for initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; computer readable program code means for receiving an acknowledgment message at the first computer acknowledging selection of a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and computer readable program code means for selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.
Claim 48
Dependent Claim 406 words
A computer program product for persistent cache synchronization for an application executing on a first computer and having a first communication session and a concurrent second communication session over an external communication link with an application executing on a second computer located remote from the first computer, the computer program product comprising: a computer readable storage medium having computer readable program code means embodied in said medium, said computer readable program code means comprising: computer readable program code means for establishing a protocol cache operatively associated with the first session at the first computer; computer readable program code means for establishing a protocol cache operatively associated with the second session at the first computer; computer readable program code means at the first computer for determining if a new checkpoint is desired; computer readable program code means responsive to said computer readable program code means for determining if a new checkpoint is desired for transmitting a checkpoint request to the second computer indicating one of the first or the second session whose associated protocol cache is to be used to create a checkpoint; computer readable program code means for receiving a checkpoint confirmation message at the first computer; and computer readable program code means for creating a checkpoint cache of the first computer as a copy of the protocol cache of the one of the first or the second session at the first computer responsive to the received checkpoint confirmation message to provide a checkpoint, the checkpoint cache of the first computer being associated with both the first session and the second session; wherein the application executing on the first computer is a client protocol conversion application and wherein the application executing on the second computer is a server protocol conversion application and further comprising: computer readable program code means for initiating a third communication session by transmitting a request including an identification of the checkpoint cache of the first computer from the first computer to the second computer over the external communication link; computer readable program code means for receiving an acknowledgment message at the first computer acknowledging selection of a checkpoint cache of the second computer corresponding to the transmitted identification as a corresponding protocol cache operatively associated with the third session at the second computer; and computer readable program code means for selecting the checkpoint cache of the first computer as a protocol cache operatively associated with the third session at the first computer.

References Cited (Backward Citations)

US5758072A Cited
US5594910A Cited
US5581704A Cited
US5706435A Cited
US5724581A Cited
US5734898A Cited
US5813032A Cited
US5581753A Cited
US5682514A Cited
US5781908A Cited
US5754774A Cited
US5832508A Cited
US5787470A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-05-24 2002-11-23 2003-05-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-05-24 2006-11-23 2007-05-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-05-24 2010-11-23 2011-05-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag