Network performance by dynamically setting a reassembly timer based on network interface
AssigneeInternational Business Machines Corporation
InventorVenkat Venkatsubra
Life of this patent
Estimating the term…
Abstract
The reassembly timer in a TCP/IP receiver is dynamically set to avoid data corruption on fast networks caused by IP identification wrap-around. A receiver independently sets the reassembly timer to a first reassembly time set by the user for fast networks or to a second reassembly timer set by the user for slow networks based on whether the receiver and sender are on the same subnet.
Claims18
In a data processing system network, a method comprising:
- receiving a data fragment from over a network at a receiver;
- determining if a sender of a data packet that includes the data fragment is in a same network subnet as the receiver;
- in response to determining that the sender of the data packet is connected to the same network subnet as the receiver, dynamically selecting a first reassembly time for the data fragment as a function of the speed of an interface between the sender of the data packet and the receiver;
- in response to determining that the sender of the data packet is not connected to the same network subnet as the receiver, dynamically selecting a second reassembly time for the data fragment as a function of the speed of the interface between the sender of the data packet and the receiver;
- and
- following receipt of the data fragment, discarding the data fragment if the data fragment remains fragmented from other fragments of the data packet at the receiver longer than (a) the first reassembly time when the sender and the receiver are in the same network subnet, or (b) the second reassembly time when the sender and the receiver are not in the same network subnet.
A data processing system comprising:
- means for receiving a data fragment from over a network at a receiver of the data processing system;
- means for determining if a sender of a data packet that includes the data fragment is in a same network subnet as the receiver;
- means for in response to determining that the sender of the data packet is connected to the same network subnet as the receiver, dynamically selecting a first reassembly time for the data fragment as a function of the speed of an interface between the sender of the data packet and the receiver;
- means for in response to determining that the sender of the data packet is not connected to the same network subnet as the receiver, dynamically selecting a second reassembly time for the data fragment as a function of the speed of the interface between the sender of the data packet and the receiver;
- and
- means for assigning a time of receipt of a full complement of fragments that make up the data packet, wherein the time assigned is based on the speed of the connection between the sender and the receiver;
- and
- means for following receipt of the data fragment, discarding the data fragment if the data fragment remains fragmented from other fragments of the data packet at the receiver longer than (a) the first reassembly time when the sender and the receiver are in the same network subnet, or (b) the second reassembly time when the sender and the receiver are not in the same network subnet.
An article of manufacture comprising machine-readable storage medium including program logic embedded therein that causes control circuitry in a data processing system to perform the steps of:
- receiving a data fragment from over a network at the receiver;
- determining if a sender of a data packet that includes the data fragment is in a same network subnet as the receiver;
- in response to determining that the sender of the data packet is connected to the same network subnet as the receiver, dynamically selecting a first reassembly time for the data fragment as a function of the speed of an interface between the sender of the data packet and the receiver;
- in response to determining that the sender of the data packet is not connected to the same network subnet as the receiver, dynamically selecting a second reassembly time for the data fragment as a function of the speed of the interface between the sender of the data packet and the receiver;
- and
- following receipt of the data fragment, discarding the data fragment if the data fragment remains fragmented from other fragments of the data packet at the receiver longer than (a) the first reassembly time when the sender and the receiver are in the same network subnet, or (b) the second reassembly time when the sender and the receiver are not in the same network subnet.
Dependencies are inferred from the claim text.