US 7,519,736 B2
Non-invasive latency monitoring in a store-and-forward replication system
Jeffrey B. Parham, Redmond, Wash. (US)
Assigned to Microsoft Corporation, Redmond, Wash. (US)
Filed on Feb. 17, 2006, as Appl. No. 11/357,601.
Application 11/357601 is a continuation of application No. 09/995121, filed on Nov. 27, 2001, granted, now 7,035,922.
Prior Publication US 2006/0168120 A1, Jul. 27, 2006
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 15/173 (2006.01)
U.S. Cl. 709—244  [709/242; 709/224; 707/201; 707/203] 4 Claims
OG exemplary drawing
 
1. A method for monitoring replication latency in a computer system comprising a plurality of servers connected by a plurality of data links, and wherein the servers periodically replicate object updates with one another and maintain an update sequence number that is increased upon update to the server's replica of a database, the method comprising:
first maintaining, by each of the plurality of servers, a timestamp that is posted upon each update to the server's database;
second maintaining, by two or more of the plurality of servers, a replica partner vector table that comprises for each other server from which the server replicates, the update sequence number of such other server at a time of a most recent replication from such other server and the timestamp of the last successful replication attempt with such other server;
transmitting a copy of the replica partner vector table of a local server to a remote server;
comparing, by the remote server, both the update sequence numbers and timestamps in the replica partner vector table received from the local server to both the update sequence numbers and timestamps in the replica partner vector table of the remote server;
updating, by the remote server, the replica partner vector table received from the local server;
transmitting, by the remote server, a copy of the updated replica partner vector table and object updates to the local server;
improving, by the local server, upon receiving the updated replica partner vector from the remote server, update sequence numbers and timestamps in the partner vector table of the local server; and
calculating, by the local server, a difference between the timestamp for each server in the replica partner vector table and a current time.