IP Library Patent Application 11151429
Patent Application
App. No. 11/151,429

Creating an IP checksum in a pipeline architecture with packet modification

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.
11/151,429
Abstract

A network device for processing data on a data network includes a port interface, connected to a plurality of ports configured to receive a data packet from a data network and to send a processed data packet to the data network and a parser, in communication with the port interface, configured to parse the received data packet and modify the received packet to produce the processed data packet. The parser is configured to set a flag for portions of the data packet to be changed, determine a pseudo-checksum from the portions for which the flag has not been set and provide a new checksum for the processed data packet using the pseudo-checksum.

Claims (32)

1 . A network device for processing data on a data network, the network device comprising:

a port interface, connected to a plurality of ports configured to receive a data packet from a data network and to send a processed data packet to the data network; and

a parser, in communication with the port interface, configured to parse the received data packet and modify the received packet to produce the processed data packet;

wherein the parser is configured to set a flag for portions of the data packet to be changed, determine a pseudo-checksum from the portions for which the flag has not been set and provide a new checksum for the processed data packet using the pseudo-checksum.

2 . The network device according to claim 1 , wherein the parser is configured to determine a header pseudo-checksum from header portions to be changed and provide a header checksum for the processed data packet using the header pseudo-checksum.

3 . The network device according to claim 2 , wherein the parser is configured to determine an IP pseudo-checksum from IP header portions to be changed and provide a new IP checksum for the processed data packet using the IP pseudo-checksum.

4 . The network device according to claim 1 , wherein the parser comprises a tunnel parser and a deep parser, where the tunnel parser is configured to check an outer IP header checksum and the deep parser is configured to check an inner IP header checksum.

5 . The network device according to claim 1 , wherein the parser is configured to add checksum values for the portions for which the flag has not been set to determine the pseudo-checksum.

6 . The network device according to claim 5 , wherein the parser is configured to add new checksum values for the portions for which the flag has been set to the pseudo-checksum to provide the new checksum.

7 . A method for processing data in a network device, the method comprising the steps of:

receiving a data packet at one port of a plurality of ports of a network device;

parsing the received data packets to determine attributes of the received data packet;

setting a flag for portions of the data packet to be changed and determining a pseudo-checksum from the portions for which the flag has not been set;

providing a new checksum for the processed data packet using the pseudo-checksum;

modifying the received data packets based on the determined attributes to produce a processed data packet; and

forwarding the processed data packet to an egress port of the plurality of ports.

8 . The method according to claim 7 , wherein the step of determining a pseudo-checksum comprises determining a header pseudo-checksum from header portions to be changed and the step of providing a new checksum comprises providing a header checksum for the processed data packet using the header pseudo-checksum.

9 . The method according to claim 8 , wherein the step of determining a header pseudo-checksum comprises determining an IP pseudo-checksum from IP header portions to be changed and the step of providing a header checksum comprises providing a new IP checksum for the processed data packet using the IP pseudo-checksum.

10 . The method according to claim 7 , wherein the method further comprises checking an outer IP header checksum and checking an inner IP header checksum.

11 . The method according to claim 7 , wherein the step of determining a pseudo-checksum comprises adding checksum values for the portions for which the flag has not been set to determine the pseudo-checksum.

12 . The method according to claim 11 , wherein the step of providing a new checksum comprises adding new checksum values for the portions for which the flag has been set to the pseudo-checksum to provide the new checksum.

13 . A network device for processing data, the network device comprising:

port interface means for receiving a data packet at one port of a plurality of ports and sending a processed data packet to an egress port of the plurality of ports;

parsing means for parsing the received data packets to determine attributes of the received data packet;

pseudo-checksum means for setting a flag for portions of the data packet to be changed and determining a pseudo-checksum from the portions for which the flag has not been set;

checksum means for providing a new checksum for the processed data packet using the pseudo-checksum; and

modifying means for modifying the received data packets based on the determined attributes to produce a processed data packet.

14 . The network device according to claim 13 , wherein the pseudo-checksum means comprises header means for determining a header pseudo-checksum from header portions to be changed and the checksum means comprises header checksum means for providing a header checksum for the processed data packet using the header pseudo-checksum.

15 . The network device according to claim 14 , wherein the header means comprises means for determining an IP pseudo-checksum from IP header portions to be changed and the header checksum means comprises means for providing a new IP checksum for the processed data packet using the IP pseudo-checksum.

16 . The network device according to claim 13 , further comprising means for checking an outer IP header checksum and means for checking an inner IP header checksum.

17 . The network device according to claim 13 , wherein the pseudo-checksum means comprises means for adding checksum values for the portions for which the flag has not been set to determine the pseudo-checksum.

18 . The network device according to claim 17 , wherein the checksum means comprises means for adding new checksum values for the portions for which the flag has been set to the pseudo-checksum to provide the new checksum.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2005
From: LEE, DENNIS SUNGIK; NG, ERIC
To: BROADCOM CORPORATION
Reel/Frame 016688/0593 →