Providing a header checksum for packet data communications
First Claim
Patent Images
1. A method to propagate on a network signals indicative of a first packet and a second packet, the first packet comprising a first checksum for a first octet string comprising a middle segment, and the second packet comprising a second checksum for a second octet string comprising a new middle segment, the method comprising:
- performing an even-octet-aligned checksum operation on the middle segment to provide a middle checksum;
performing an even-octet-aligned checksum operation on the new middle segment to provide a new middle checksum; and
provided the middle and new middle octet strings differ in length by an even number of octets, performing checksum operations on the first checksum, the new middle checksum, and the middle checksum to provide the second checksum, wherein the checksum operation performed on the middle checksum is a checksum subtraction operation.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for providing the header checksum of a data packet.
16 Citations
17 Claims
-
1. A method to propagate on a network signals indicative of a first packet and a second packet, the first packet comprising a first checksum for a first octet string comprising a middle segment, and the second packet comprising a second checksum for a second octet string comprising a new middle segment, the method comprising:
-
performing an even-octet-aligned checksum operation on the middle segment to provide a middle checksum;
performing an even-octet-aligned checksum operation on the new middle segment to provide a new middle checksum; and
provided the middle and new middle octet strings differ in length by an even number of octets, performing checksum operations on the first checksum, the new middle checksum, and the middle checksum to provide the second checksum, wherein the checksum operation performed on the middle checksum is a checksum subtraction operation. - View Dependent Claims (2, 3, 4, 5, 6)
provided the length of the head segment is less than the length of the tail segment, performing an even-octet-aligned checksum operation on the head segment to provide a head checksum, and performing checksum operations on the first checksum, the middle checksum, and the head checksum to provide a tail checksum, wherein the checksum operations performed on the middle checksum and the head checksum are checksum subtraction operations; and
performing checksum operations on the head checksum, the new middle checksum, and a octet-swapped version of the tail checksum to provide the second checksum.
-
-
3. The method as set forth in claim 2, the method further comprising, provided the middle and new middle octet strings differ in length by an odd number of octets:
provided the length of the head segment is greater than the length of the tail segment, performing an even-octet-aligned checksum operation on the tail segment to provide the tail checksum, and performing checksum operations on the first checksum, the middle checksum, and the tail checksum, wherein the checksum operations performed on the middle checksum and the tail checksum are checksum subtraction operations.
-
4. The method as set forth in claim 1, wherein
the first and second octet strings have even numbers of octets; -
the second octet string is related to the first octet string by replacing the middle segment with the new middle segment to form a resulting octet string and appending an end of the resulting octet string with a zero octet if necessary so that the second octet string has an even number of octets; and
the even-octet-aligned checksum operations and the checksum operations are 16-bit operations.
-
-
5. The method as set forth in claim 4, the first octet string comprising a head segment and a tail segment, the method further comprising, provided the middle and new middle octet strings differ in length by an odd number of octets:
-
provided the length of the head segment is less than the length of the tail segment, performing an even-octet-aligned checksum operation on the head segment to provide a head checksum, and performing checksum operations on the first checksum, the middle checksum, and the head checksum to provide a tail checksum, wherein the checksum operations performed on the middle checksum and the head checksum are checksum subtraction operations; and
performing checksum operations on the head checksum, the new middle checksum, and a octet-swapped version of the tail checksum to provide the second checksum.
-
-
6. The method as set forth in claim 5, the method further comprising, provided the middle and new middle octet strings differ in length by an odd number of octets:
provided the length of the head segment is greater than the length of the tail segment, performing an even-octet-aligned checksum operation on the tail segment to provide the tail checksum, and performing checksum operations on the first checksum, the middle checksum, and the tail checksum, wherein the checksum operations performed on the middle checksum and the tail checksum are checksum subtraction operations.
-
7. An article of manufacture comprising a computer readable storage medium, the storage medium comprising instructions to program a processor to:
-
propagate on a network signals indicative of a first packet and a second packet, the first packet comprising a first checksum for a first octet string comprising a middle segment, and the second packet comprising a second checksum for a second octet string comprising a new middle segment;
perform an even-octet-aligned checksum operation on the middle segment to provide a middle checksum;
perform an even-octet-aligned checksum operation on the new middle segment to provide a new middle checksum; and
provided the middle and new middle octet strings differ in length by an even number of octets, perform checksum operations on the first checksum, the new middle checksum, and the middle checksum to provide the second checksum, wherein the checksum operation performed on the middle checksum is a checksum subtraction operation. - View Dependent Claims (8, 9, 10, 11, 12)
provided the length of the head segment is less than the length of the tail segment, perform an even-octet-aligned checksum operation on the head segment to provide a head checksum, and perform checksum operations on the first checksum, the middle checksum, and the head checksum to provide a tail checksum, wherein the checksum operations performed on the middle checksum and the head checksum are checksum subtraction operations; and
perform checksum operations on the head checksum, the new middle checksum, and a octet-swapped version of the tail checksum to provide the second checksum.
-
-
9. The article of manufacture as set forth in claim 8, the storage medium further comprising instructions to cause the processor to, provided the middle and new middle octet strings differ in length by an odd number of octets:
provided the length of the head segment is greater than the length of the tail segment, perform an even-octet-aligned checksum operation on the tail segment to provide the tail checksum, and perform checksum operations on the first checksum, the middle checksum, and the tail checksum, wherein the checksum operations performed on the middle checksum and the tail checksum are checksum subtraction operations.
-
10. The article of manufacture as set forth in claim 7, wherein
the first and second octet strings have even numbers of octets; -
the second octet string is related to the first octet string by replacing the middle segment with the new middle segment to form a resulting octet string and appending an end of the resulting octet string with a zero octet if necessary so that the second octet string has an even number of octets; and
the even-octet-aligned checksum operations and the checksum operations are 16-bit operations.
-
-
11. The article of manufacture as set forth in claim 10, the first octet string comprising a head segment and a tail segment, the storage medium further comprising instructions to cause the processor to, provided the middle and new middle octet strings differ in length by an odd number of octets:
-
provided the length of the head segment is less than the length of the tail segment, perform an even-octet-aligned checksum operation on the head segment to provide a head checksum, and perform checksum operations on the first checksum, the middle checksum, and the head checksum to provide a tail checksum, wherein the checksum operations performed on the middle checksum and the head checksum are checksum subtraction operations; and
perform checksum operations on the head checksum, the new middle checksum, and a octet-swapped version of the tail checksum to provide the second checksum.
-
-
12. The article of manufacture as set forth in claim 11, the storage medium further comprising instructions to cause the processor to, provided the middle and new middle octet strings differ in length by an odd number of octets:
provided the length of the head segment is greater than the length of the tail segment, perform an even-octet-aligned checksum operation on the tail segment to provide the tail checksum, and performing checksum operations on the first checksum, the middle checksum, and the tail checksum, wherein the checksum operations performed on the middle checksum and the tail checksum are checksum subtraction operations.
-
13. A communication network comprising:
-
a node; and
a network medium, wherein the node is coupled to the network to propagate signals indicative of a first packet and a second packet, the first packet comprising a first checksum for a first octet string comprising a middle segment, and the second packet comprising a second checksum for a second octet string comprising a new middle segment, and wherein the node is coupled to the network to;
propagate on a network signals indicative of a first packet and a second packet, the first packet comprising a first checksum for a first octet string comprising a middle segment, and the second packet comprising a second checksum for a second octet string comprising a new middle segment;
perform an even-octet-aligned checksum operation on the middle segment to provide a middle checksum;
perform an even-octet-aligned checksum operation on the new middle segment to provide a new middle checksum; and
provided the middle and new middle octet strings differ in length by an even number of octets, perform checksum operations on the first checksum, the new middle checksum, and the middle checksum to provide the second checksum, wherein the checksum operation performed on the middle checksum is a checksum subtraction operation. - View Dependent Claims (14, 15)
provided the length of the head segment is less than the length of the tail segment, perform an even-octet-aligned checksum operation on the head segment to provide a head checksum, and perform checksum operations on the first checksum, the middle checksum, and the head checksum to provide a tail checksum, wherein the checksum operations performed on the middle checksum and the head checksum are checksum subtraction operations; and
perform checksum operations on the head checksum, the new middle checksum, and a octet-swapped version of the tail checksum to provide the second checksum.
-
-
15. The communication network as set forth in claim 14, wherein the node is coupled to the network to, provided the middle and new middle octet strings differ in length by an odd number of octets:
provided the length of the head segment is greater than the length of the tail segment, perform an even-octet-aligned checksum operation on the tail segment to provide the tail checksum, and perform checksum operations on the first checksum, the middle checksum, and the tail checksum, wherein the checksum operations performed on the middle checksum and the tail checksum are checksum subtraction operations.
-
16. A method to propagate on a network signals indicative of a first packet and a second packet, the first packet comprising a first checksum SA for a first octet string Φ
-
A=(φ
0|φ
1|φ
2), where φ
0, φ
1 and φ
2 are octet string segments, wherein Φ
A has an even number of octets, the second packet comprising a second checksum SB for a second octet stringwhere {circumflex over (φ
)}1 is a octet string segment, the method comprising, where f(
) denotes an even-octet-aligned checksum;forming an even-octet-aligned checksum S1=f(φ
1);
forming an even-octet-aligned checksum Ŝ
1=f({circumflex over (φ
)}1);
provided φ
1 and {circumflex over (φ
)}1 differ in length by an even number of octets, forming the checksum SB by forming checksum operations - View Dependent Claims (17)
-
A=(φ
Specification