IP Library Granted Patent US 9,760,442
Granted Patent B2
US 9,760,442 · App. 14/571,391 · Granted Sep 12, 2017

Method of delaying checkpoints by inspecting network packets

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,760,442
App. No.
14/571,391
Granted
Sep 12, 2017
Kind
B2
Abstract

A method of delaying checkpointing in a virtual machine system. In one embodiment, the method includes the steps of examining a network frame to determine if it is a deferrable frame and if the frame is a deferrable frame, delaying a checkpoint associated with the frame. In another embodiment, the deferrable frame is one of a group comprising: an IP packet tagged with the ‘more fragments’ attribute; TCP data segments that lack the PSH flag and carry no flags other than ‘ACK’; and TCP segments that contain no data and carry only the ‘ACK’ flag; and any frame originating from or destined to a designated network address or port number. In still another embodiment, the method includes the step of concatenating the delays due to deferrable frames. In still yet another embodiment, the method further includes setting an upper limit to the amount of delay that can be generated.

Claims (39)

1. A method of delaying an initiation of a checkpoint in a virtual machine system comprising the steps of:

establishing an input/output module;

buffering a deferrable or non-deferrable frame in the input/output module;

determining whether the frame is a deferrable frame or a non-deferrable frame;

if the frame is a deferrable frame, delaying an initiation of a checkpoint; and

not transmitting the frame until the checkpoint occurs.

2. The method of claim 1 wherein the frame is examined to determine if it is a deferrable frame.

3. The method of claim 2 wherein the deferrable frame is a packet tagged with one or more of:

not being a last data fragment of a multi-fragment message;

a data segment that does not indicate a flush of a send buffer; and

a segment that only serves as an acknowledgment of some prior message.

4. The method of claim 2 wherein the deferrable frame is an internet protocol (IP) packet tagged with one or more of:

a ‘more fragments’ attribute;

a transmission control protocol (TCP) data segment that lacks a push (PSH) flag and that carries no flags other than an acknowledgement (ACK); and

a transmission control protocol (TCP) segment that contains no data and carries only the acknowledgement (ACK) flag.

5. The method of claim 2 wherein the deferrable frame is identified by a protocol in use.

6. The method of claim 5 wherein the deferrable frame is identified by a session-state of the protocol in use.

7. The method of claim 2 wherein the deferrable frame is identified by port number.

8. The method of claim 7 wherein the port number is a source port number.

9. The method of claim 7 wherein the port number is a destination port number.

10. The method of claim 2 wherein the deferrable frame is identified by network address.

11. The method of claim 10 wherein the network address is a source network address.

12. The method of claim 10 wherein the network address is a destination network address.

13. The method of claim 1 further comprising the step of concatenating the checkpoint delays due to a plurality of deferrable frames.

14. The method of claim 13 further comprising the step of setting an upper limit to the amount of delay that can be generated.

15. The method of claim 1 wherein the frame is determined to be deferrable based on a network interface in use.

16. A fault tolerant computing system comprising:

a first computing device comprising a primary virtual machine; and

a second computing device comprising a secondary virtual machine,

wherein the first computing device and the second computing device are networked,

wherein the primary virtual machine comprises a first checkpointing engine and a first network interface having a first input/output module for buffering frames,

wherein the secondary virtual machine comprises a second checkpointing engine and a second network interface,

wherein the primary virtual machine buffers a frame in the first input/output module,

wherein the primary virtual machine determines whether the frame is a deferrable frame or a non-deferrable frame,

wherein the first checkpointing engine delays an initiation of a checkpoint for each of the one or more deferrable frames of data in the first input/output module, and

wherein the deferrable and non-deferrable frames in the first input/output module are not transmitted until the checkpoint occurs.

17. The fault tolerant computing system of claim 16 wherein the first checkpoint engine pauses the primary virtual machine when a checkpoint is declared.

18. The fault tolerant computing system of claim 17 wherein the first checkpoint engine adds an additional delay before declaring a subsequent checkpoint.

19. The fault tolerant computing system 16 wherein the first checkpoint engine captures the state of the primary virtual machine while the primary virtual machine is paused.

Assignments (6)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057254/0557) Recorded Aug 29, 2022
From: CERBERUS BUSINESS FINANCE AGENCY, LLC
To: STRATUS TECHNOLOGIES IRELAND LIMITED; STRATUS TECHNOLOGIES BERMUDA LTD.
Reel/Frame 061354/0599 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 9, 2021
From: STRATUS TECHNOLOGIES IRELAND LIMITED; STRATUS TECHNOLOGIES BERMUDA LTD.
To: CERBERUS BUSINESS FINANCE AGENCY, LLC, AS COLLATERAL AGENT
Reel/Frame 057254/0557 →
SECURITY INTEREST Recorded Apr 3, 2020
From: STRATUS TECHNOLOGIES IRELAND LIMITED
To: TRUST BANK (AS SUCCESSOR BY MERGER TO SUNTRUST BANK)
Reel/Frame 052316/0371 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2020
From: STRATUS TECHNOLOGIES BERMUDA LTD.
To: STRATUS TECHNOLOGIES IRELAND LTD.
Reel/Frame 052210/0411 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2015
From: BISSETT, THOMAS D.; LEVEILLE, PAUL A.; CHINTA, SRINIVASU
To: STRATUS TECHNOLOGIES BERMUDA LTD.
Reel/Frame 035054/0217 →
CHANGE OF ASSIGNEE ADDRESS Recorded Feb 27, 2015
From: STRATUS TECHNOLOGIES BERMUDA LTD.
To: STRATUS TECHNOLOGIES BERMUDA LTD.
Reel/Frame 035110/0117 →