Browse Prior Art Database

Method and apparatus for maintaining a session replication object store

IP.com Disclosure Number: IPCOM000229309D
Publication Date: 2013-Jul-19
Document File: 5 page(s) / 102K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed are a method and apparatus for session state replication that efficiently manages backups of highly available session state information after a failover within a framework. The implemented method maintains the object reference hierarchy after reconstitution of the sessions at the backup server after a failure.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 39% of the total text.

Page 01 of 5

Method and apparatus for maintaining a session replication object store

A common problem with frameworks that manage backups of highly available session state information is that after a failover, shared references that are shared between attributes associated with the same session or different sessions are no longer shared. This is due to the way a typical replication systems works, in that each attribute is treated as an isolated entity and when it is serialized, all its deep references are separately serialized along with it. After a failover, when all the serialized objects are

reconstituted, the attribute references are all created in isolation from one another.

The invention is a new system for session state replication that does not exhibit these same deficiencies. There are many examples of solutions that rely on session replication to maintain session state. Enterprise management systems often provide session replication capabilities for Session Initiation Protocol (SIP) and Hypertext Transfer Protocol (HTTP). Other systems also support the idea of a shared object cache, but no solution deals with the issue of maintaining shared references across multiple replicated objects.

Serializing sessions monolithically is an extremely inefficient way to solve this problem. This means that whenever a single attribute or object that is part of the session is modified, the entire session has to be serialized and replicated as opposed to only the attribute that changed

The invented solution relies on a method of:

1. Delineating between objects that are commonly referenced, but two or more objects are being replicated and objects are only referenced once

2. Serializing both categories of objects so that updates to said objects can be individually updated at the backup server or in the caching grid whenever a change at the primary server occurs

3. Reconstituting the complete object tree at the backup when a failure occurs at the primary container in a way the preserves all the shared references

With this solution, the object reference hierarchy is maintained after reconstitution of the sessions at the backup server after a failure. In addition, this approach is more efficient than monolithically serializing the entire session object whenever it changes. Further, this solution imposes very little impact on developers using the session framework. The only requirement on the developer of applications built on top of this framework is that all references that need to be shared across multiple attributes have to extend or derive from an abstract base class. The abstract class overrides methods used during serialization and deserialization to control the underlying content being serialized and deserialized. The example provided here and in #3 below is based on Java* and the Java serialization methods for writeReplace and readResolve. This can be extended to other protocols such as C++ and C#.

First, the algorithm is described herein in the c...