IP Library Patent Application 10914602
Patent Application
App. No. 10/914,602

Division of data structures for efficient simulation

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 None
App. No.
10/914,602
Abstract

A system and method for modeling the replication of a packet uses a header that contains unique information relative to the replicated packet, and a pointer to the information that is common to the original packet. At each level of the protocol hierarchy, and particularly at the transmission layer, the unique information is contained in the header information that is added at that level, while the common information is the information in the protocol stack created prior to the appending of this header information. Only network elements that traverse and modify the contents of the prior protocol headers are fully instantiated, and thus the resources required for replicating packets is substantially reduced.

Claims (74)

1 . A method of simulating a network, comprising:

creating a packet of information comprising a header section and a body section,

creating a pointer to the body section,

propagating a copy of the packet of information to a receiving node by forwarding a copy of the header section and a copy of the pointer to the receiving node.

2 . The method of claim 1 , wherein

creating the packet occurs at a given level of a protocol hierarchy, and

the header section comprises information that is specific to the given layer of the protocol hierarchy, and

the body section comprises information that is common to an upper layer of the protocol hierarchy.

3 . The method of claim 1 , further including

receiving the body section from another node in the network.

4 . The method of claim 1 , further including

receiving an other pointer to an other body section from another node in the network,

wherein

creating the body section includes instantiating a copy of the other body section, based on the other pointer, and

creating the pointer includes setting the pointer to point to the copy of the other body section.

5 . The method of claim 4 , further including

modifying the copy of the other body section.

6 . A method of simulating a transmission of a packet from a transmitter to a plurality of receivers, including:

identifying a body section of the packet that contains information that is common to the plurality of receivers,

creating a header section corresponding to each receiver of the plurality of receivers, and

propagating the corresponding header section and a pointer to the body section to each receiver,

wherein

the header section of at least one receiver differs from the header section of at least one other receiver.

7 . The method of claim 6 , wherein

the header section corresponding to each receiver includes information that is dependent upon one or more characteristics associated with a transmission path between the transmitter and the receiver.

8 . The method of claim 7 , wherein

the one or more characteristics include at least one of:

a distance between the transmitter and the receiver,

a noise factor associated with the transmission path, and

a transmit power associated with the transmitter.

9 . The method of claim 7 , wherein

propagating the corresponding header and pointer to each receiver includes scheduling a reception of the corresponding header and pointer at the receiver at a subsequent time that is based on at least one of the one or more characteristics.

10 . The method of claim 6 , wherein

propagating the corresponding header and pointer to each receiver includes scheduling a reception of the corresponding header and pointer at the receiver at a subsequent time that is based on at one or more characteristics associated with a transmission path between the transmitter and the receiver.

11 . The method of claim 6 , wherein

the header section comprises information that is specific to a transmission layer of a protocol hierarchy, and

the body section comprises information that is common to an upper layer of the protocol hierarchy.

12 . The method of claim 6 , further including

receiving the body section at the transmitter from another node in the network.

13 . The method of claim 6 , further including

receiving an other pointer to an other body section from another node in the network,

wherein

creating the body section includes creating a copy of the other body section, based on the other pointer, and

the pointer is configured to point to the copy of the other body section.

14 . The method of claim 13 , further including

modifying the copy of the other body section.

15 . A network simulator comprising:

a plurality of element models that are configured to model elements of a network,

wherein

at least one of the element models includes

a packet generator that is configured to generate a plurality of packets,

each packet of the plurality of packets being associated with an intended receiver of the packet and comprising:

a header that includes information that is specific to the intended receiver, and

a pointer to a body of other information that is common to the plurality of packets.

16 . The simulator of claim 15 , wherein

the header includes information that is dependent upon one or more characteristics associated with a transmission path between a transmitter and the intended receiver.

17 . The simulator of claim 16 , wherein

the one or more characteristics include at least one of:

a distance between the transmitter and the intended receiver,

a noise factor associated with the transmission path, and

a transmit power associated with the transmitter.

18 . The simulator of claim 15 , further including

an event scheduler that is configured to schedule a reception of the corresponding header and pointer at each intended receiver at a subsequent time that is based on at one or more characteristics associated with a transmission path between a transmitter and the intended receiver.

19 . The simulator of claim 15 , wherein

the at least one element model also includes

a packet processor that is configured to:

receive an other packet from an other element model, and

provide the pointer to the body of other information, based on the other packet from the other element model.

20 . The simulator of claim 19 , wherein

the other packet includes an other pointer to an other body section, and

the packet processor is further configured to create a copy of the other body section, based on the other pointer, and

the pointer is configured to point to the copy of the other body section.

21 . The simulator of claim 20 , wherein

the packet processor is further configured to modify the copy of the other body section.

Assignments (5)
RELEASE OF PATENT SECURITY INTEREST Recorded Dec 26, 2013
From: MORGAN STANLEY & CO. LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 032113/0425 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2013
From: OPNET TECHNOLOGIES LLC
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 030462/0135 →
CHANGE OF NAME Recorded May 14, 2013
From: OPNET TECHNOLOGIES, INC.
To: OPNET TECHNOLOGIES LLC
Reel/Frame 030411/0234 →
SECURITY AGREEMENT Recorded Dec 20, 2012
From: RIVERBED TECHNOLOGY, INC.; OPNET TECHNOLOGIES, INC.
To: MORGAN STANLEY & CO. LLC
Reel/Frame 029646/0060 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2004
From: PLUN, JEROME; SHAKULA, ALEXEY
To: OPNET TECHNOLOGIES, INC.
Reel/Frame 015670/0575 →