Packet forwarding based on path encoding

US9992108B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9992108-B2
Application numberUS-201414337815-A
CountryUS
Kind codeB2
Filing dateJul 22, 2014
Priority dateJul 22, 2014
Publication dateJun 5, 2018
Grant dateJun 5, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In general, a capability for forwarding packets based on path encoding is presented. The capability for forwarding a packet based on path encoding may be configured to enable forwarding of a packet along a network path by determining a path encoding label for the network path, associating the path encoding label for the network path with the packet, and forwarding the packet along the network path based on the path encoding label associated with the packet. The network path for a packet may include an ordered sequence of node output interfaces of an ordered sequence of nodes. The path encoding label for the network path includes an ordered sequence of node interface labels corresponding to the ordered sequence of node output interfaces of the nodes of the network path. The nodes of the network path forward the packet along the network path based on the path encoding label.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus, comprising: a processor and a memory communicatively connected to the processor, the processor configured to: determine a network path through a network, the network path comprising an ordered sequence of nodes of the network, the ordered sequence of nodes of the network path comprising an ordered sequence of three or more nodes of the network; determine, for each of the nodes in the ordered sequence of nodes of the network path, a respective node output interface of the respective node that is to support the network path at the respective node; determine, for each of the node output interfaces of each of the nodes in the ordered sequence of nodes of the network path, a respective node interface label representing the respective node output interface of the respective node in the ordered sequence of nodes of the network path; and determine, based on the node interface labels representing the respective node output interfaces of the respective nodes in the ordered sequence of nodes of the network path, a path encoding label for the network path, the path encoding label for the network path comprising an ordered sequence of the node interface labels representing the respective node output interfaces of the respective nodes in the ordered sequence of nodes of the network path. 2. The apparatus of claim 1 , wherein, to determine the path encoding label for the network path, the processor is configured to: concatenate the node interface labels representing the respective node output interfaces of the respective nodes in the ordered sequence of nodes of the network path, based on the ordered sequence of the node interface labels representing the respective node output interfaces of the respective nodes in the ordered sequence of nodes of the network path, to form the path encoding label. 3. The apparatus of claim 2 , wherein, to determine the respective node interface label representing the respective node output interface of the respective node in the ordered sequence of nodes of the network path, the processor is configured to: determine the respective node with which the respective node output interface is associated; determine an interface identifier of the respective node output interface; and determine the respective node interface label for the respective node output interface based on a mapping of the interface identifier of the respective node output interface of the respective node to the respective node interface label for the respective node output interface of the respective node. 4. The apparatus of claim 1 , wherein the path encoding label further comprises offset information configured for use by the respective nodes of the network path in identifying portions of the path encoding label associated with the respective nodes of the network path. 5. The apparatus of claim 1 , wherein the processor is configured to: generate a mapping of the network path to the path encoding label for the network path; and propagate, toward a first node in the ordered sequence of nodes of the network path, the mapping of the network path to the path encoding label for the network path. 6. The apparatus of claim 1 , wherein the nodes of the network path include at least a portion of a set of available nodes of the network, wherein each of the available nodes in the set of available nodes of the network comprises a respective set of node output interfaces, wherein the processor is configured to: generate respective node interface labels for the respective node output interfaces of the respective available nodes in the set of available nodes of the network. 7. The apparatus of claim 6 , wherein, for each of the available nodes in the set of available nodes of the network, the respective node interface labels for the node output interfaces of the respective available node are configured to be prefix-free. 8. The apparatus of claim 6 , wherein, to generate the respective node interface labels for the respective node output interfaces of the nodes in the set of available nodes of the network, the processor is configured to: assign, to each of the respective node output interfaces of each of the available nodes in the set of available nodes of the network, a respective length function li; and create the respective node interface labels for the respective node output interfaces of the available nodes in the set of available nodes of the network such that the node interface labels satisfy the respective length functions li and a sum of 2(−li) over the node output interfaces of the available nodes in the set of available nodes of the network is equal to or less than one (1). 9. The apparatus of claim 8 , wherein, to assign the respective length functions 2(−li) to the respective node output interfaces of the available nodes in the set of available nodes of the network, the processor is configured to: formulate the assignment problem as a convex optimization problem; determine a solution for the convex optimization problem; and round the solution to satisfy integer constraints. 10. The apparatus of claim 1 , wherein the processor is configured to: receive a packet to be forwarded via the network path; and associate the path encoding label of the network path with the packet. 11. A method, comprising: determining, by a processor, a network path through a network, the network path comprising an ordered sequence of nodes of the network, the ordered sequence of nodes of the network path comprising an ordered sequence of three or more nodes of the network; determining, by the processor for each of the nodes in the ordered sequence of nodes of the network path, a respective node output interface of the respective node that is to support the network path at the respective node; determining, by the processor for each of the node output interfaces of each of the nodes in the ordered sequence of nodes of the network path, a respective node interface label representing the respective node output interface of the respective node in the ordered sequence of nodes of the network path; and determining, by the processor based on the node interface labels representing the respective node output interfaces of the respective nodes in the ordered sequence of nodes of the network path, a path encoding label for the network path, the path encoding label for the network path comprising an ordered sequence of the node interface labels representing the respective node output interfaces of the respective nodes in the ordered sequence of nodes of the network path. 12. An apparatus, comprising: a processor and a memory communicatively connected to the processor, the processor configured to: receive a packet to be routed via a network path through a network, the network path comprising an ordered sequence of nodes of the network, the ordered sequence of nodes of the network path comprising an ordered sequence of three or more nodes of the network, the network path comprising, for each of the nodes in the ordered sequence of nodes of the network path, a respective node output interface of the respective node that is to support the network path at the respective node; determine, based on the packet, a path encoding label for the network path, the path encoding label for the network path comprising an ordered sequence of node interface labels representing the respective node output interfaces of the respective nodes of the ordered sequence of nodes of the network path; associate the path encoding label for the network path with the packet; and send the packet for propagation via the network path based on the path encoding label for the network path.

Assignees

Inventors

Classifications

  • by measured or perceived connection quality data · CPC title

  • H04L45/74Primary

    Address processing for routing · CPC title

  • using an overlay routing layer · CPC title

  • ensuring sequence integrity, e.g. using sequence numbers · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9992108B2 cover?
In general, a capability for forwarding packets based on path encoding is presented. The capability for forwarding a packet based on path encoding may be configured to enable forwarding of a packet along a network path by determining a path encoding label for the network path, associating the path encoding label for the network path with the packet, and forwarding the packet along the network p…
Who is the assignee on this patent?
Hari Adiseshu, Niesen Urs, Wilfong Gordon, and 1 more
What technology area does this patent fall under?
Primary CPC classification H04L45/74. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 05 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).