IP Library Granted Patent US 9,516,146
Granted Patent B2
US 9,516,146 · App. 14/521,142 · Granted Dec 6, 2016

Skipping and parsing internet protocol version 6 extension headers to reach upper layer headers

Inventors: Claude Basso (Nice, FR); Todd A. Greenfield (Rochester, MN); Michel Poret (Valbonne, FR); Natarajan Vaidhyanathan (Carrboro, NC)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
H04L69/22H04L12/6418H04L29/0653H04L29/12H04L45/74H04L45/741H04L61/6059
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,516,146
App. No.
14/521,142
Granted
Dec 6, 2016
Kind
B2
Abstract

Embodiments presented herein describe techniques for parsing an Internet Protocol version 6 frame and skipping extension headers of the frame. A configurable skip list is provided that specifies extension headers for a networking device to skip when parsing the frame. The networking device examines “next header” fields of each extension header to determine a next extension header in the chain. If the next extension header matches an extension header in the skip list, the networking device iterates to the next header in the chain until the end of the chain (or an extension header that does not contain a match in the list) is reached.

Claims (10)

1. A method for parsing an Internet Protocol version 6 (IPv6) network frame received by a networking device, the method comprising:

evaluating a current header of the IPv6 network frame to determine whether a header immediately following the current header is an IPv6 extension header of a chain of IPv6 extension headers or an upper-layer header of the IPv6 network frame, wherein each current header in the IPv6 network frame includes a respective next header field describing the header immediately following the current header and wherein the upper-layer header corresponds to a layer higher than the layer at which the method for parsing is performed, the current header being a fixed header or an IPv6 extension header of the chain of IPv6 extension header;

when determining, via the next header field of the current header, that the header immediately following the current header is an IPv6 extension header of the chain of IPv6 extension headers,

determine whether the IPv6 extension header matches a first corresponding IPv6 extension header specified in a skip list, the skip list specifying types of IPv6 extension headers to be skipped during parsing by the network device,

upon determining that the IPv6 extension header matches the first corresponding IPv6 extension header specified in the skip list, iterating through the chain of IPv6 extension headers via skipping parsing of a respective IPv6 extension header indicated by a respective next header field in each of the IPv6 extension headers in the chain of IPv6 extension headers until a second IPv6 extension header is reached, wherein the second IPv6 extension header does not match any IPv6 extension header in the skip list, and

upon reaching the second IPv6 extension header, process each subsequent header in the IPv6 network frame until the upper-layer header is reached; and

when determining, via the next header field of the current header, that the header immediately following the current header is the upper-layer header, make forwarding decision based on the upper-layer header.

2. The method of claim 1 , further comprising, identifying a frame type from the upper-layer header.

3. The method of claim 2 , wherein the type is one of a TCP frame or a UDP frame.

4. The method of claim 1 , wherein iterating through the chain of IPv6 extension headers comprises, for each IPv6 extension header in the chain: evaluating a respective next header field of the IPv6 extension header to identify a respective next IPv6 extension header; and upon determining that the respective next IPv6 extension header matches a corresponding IPv6 extension header in the skip list, jumping to an IPv6 extension header immediately following the next IPv6 extension header.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2014
From: BASSO, CLAUDE; GREENFIELD, TODD A.; PORET, MICHEL; VAIDHYANATHAN, NATARAJAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 034009/0492 →
Continuity (2)
Continuation 14284927 · May 22, 2014
Related Publication 20150341265A1 · Nov 26, 2015