Method and system for supporting port ranging in a software-defined networking (sdn) system

US2016234112A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016234112-A1
Application numberUS-201514616450-A
CountryUS
Kind codeA1
Filing dateFeb 6, 2015
Priority dateFeb 6, 2015
Publication dateAug 11, 2016
Grant date

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 one embodiment, a packet is processed by three flow tables in a network device of a software-defined networking (SDN) system. In the first flow table, upon finding a match based at least partially on an IP address value of the packet, the network device adds a first identifier based on the IP address value to metadata of the packet and forwards the packet to a second flow table, where upon finding a match based at least partially on a port value of the packet, the network device adds a second identifier based on the port value to the metadata and forwards the packet to a third flow table. At the third flow table, upon finding a match based at least partially on a combination of the first and second identifiers, the network device performs one set of instructions of the matching entry on the packet.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method implemented in a network device coupled to a software-defined networking (SDN) system, wherein the SDN system contains a SDN controller managing the network device, the method comprising: receiving a packet at a first flow table in the network device, searching to find a matching entry in the first flow table based at least partially on an Internet Protocol (IP) address value of the packet; upon finding the matching entry in the first flow table, adding a first identifier based on the IP address value to metadata of the packet, and forwarding the packet to a second flow table in the network device; receiving the packet at the second flow table; searching to find a matching entry in the second flow table based at least partially on a port value of the packet upon receiving the packet; upon finding the matching entry in the second flow table, adding a second identifier based on the port value to the metadata, wherein the second identifier maps to one of a plurality of non-overlapping ranges of port values defined in the second flow table, and forwarding the packet to a third flow table in the network device; receiving the packet at the third flow table; searching to find a matching entry in the third flow table in the network device based at least partially on a combination of the first and second identifiers included in the metadata of the packet; and upon finding the matching entry in the third flow table, performing one set of instructions of the matching entry in the third flow table on the packet. 2 . The method of claim 1 , wherein the first identifier and the second identifier are assigned to a same data unit in the metadata of the packet, and wherein the assignment to the identifiers is performed through different masks of the same data unit for the first identifier and the second identifier. 3 . The method of claim 2 , wherein the same data unit is an octet. 4 . The method of claim 1 , wherein the searching to find the matching entry in the third flow table is to identify the matching entry with an exact match of the combination of the first and second identifier. 5 . The method of claim 1 , wherein the first, second, and third flow tables are generated based at least partially on messages received from the SDN controller. 6 . The method of claim 5 , wherein the received message are sent based at least partially on a set of rules, wherein each rule includes: at least one of an IP address and an IP address prefix; a range of port values; and a set of instructions to be performed on a packet having the at least one of an IP address and an IP address prefix and the range of port values. 7 . The method of claim 1 , wherein the port value of the packet is a value of transmission control protocol (TCP) port or user datagram protocol (UDP) port. 8 . The method of claim 1 , further compromising: upon not finding the matching entry in the first, second, or third flow table, performing a table miss operation associated with the respective flow tables on the packet. 9 . A network device coupled to a software-defined networking (SDN) system, wherein the SDN system contains a plurality of network devices forwarding traffic flows and a SDN controller managing the network device, the network device comprising: a processor and a non-transitory machine-readable storage medium coupled to the processor, the non-transitory machine-readable storage medium containing operations executable by the processor, wherein the network device is operative to: receive a packet at a first flow table in the network device, searching to find a matching entry in the first flow table based at least partially on an Internet Protocol (IP) address value of the packet, upon finding the matching entry in the first flow table, add a first identifier based on the IP address value to metadata of the packet, and forward the packet to a second flow table in the network device, receive the packet at the second flow table, search to find a matching entry in the second flow table in the network device based at least partially on a port value of the packet upon receiving the packet, upon finding the matching entry in the second flow table, add a second identifier based on the port value to the metadata, wherein the second identifier maps to one of a plurality of non-overlapping ranges of port values defined in the second flow table, and forward the packet to a third flow table in the network device, receive the packet at the third flow table, search to find a matching entry in the third flow table in the network device based at least partially on a combination of the first and second identifiers included in the metadata of the packet, and upon finding the matching entry in the third flow table, perform one set of instructions of the matching entry in the third flow table on the packet. 10 . The network device of claim 9 , wherein the first identifier and the second identifier are to be assigned to a same data unit in the metadata of the packet, and wherein the assignment to the identifiers is to be performed through different masks of the same data unit for the first identifier and the second identifier. 11 . The network device of claim 10 , wherein the same data unit is an octet. 12 . The network device of claim 9 , wherein the searching to find the matching entry in the third flow table is to identify the matching entry with an exact match of the combination of the first and second identifier. 13 . The network device of claim 9 , wherein the first, second, and third flow tables are to be generated based at least partially on messages received from the SDN controller. 14 . The network device of claim 9 , wherein the port value of the packet is a value of transmission control protocol (TCP) port or user datagram protocol (UDP) port. 15 . A non-transitory machine-readable storage medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations in a network device coupled to a software-defined networking (SDN) system, wherein the SDN system contains the network device and a SDN controller managing the network device, the operations comprising: receiving a packet at a first flow table in the network device, searching to find a matching entry in the first flow table based at least partially on an Internet Protocol (IP) address value of the packet; upon finding the matching entry in the first flow table, adding a first identifier based on the IP address value to metadata of the packet, and forwarding the packet to a second flow table in the network device; receiving the packet at the second flow table; searching to find a matching entry in the second flow table based at least partially on a port value of the packet upon receiving the packet; upon finding the matching entry in the second flow table, adding a second identifier based on the port value to the metadata, wherein the second identifier maps to one of a plurality of non-overlapping ranges of port values defined in the second flow table, and forwarding the packet to a third flow table in the network device; receiving the packet at the third flow table; searching to find a matching entry in the third flow table in the network device based at least partially on a combination of the first and second identifiers included in the metadata of the packet; and upon finding the matching entry in the third flow table, performing ( 518 ) one set of instructions of the matching entry in the third flow table on the packet.

Assignees

Inventors

Classifications

  • H04L45/741Primary

    Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6 · CPC title

  • Splitting route computation layer and forwarding layer, e.g. routing according to path computational element [PCE] or based on OpenFlow functionality · CPC title

  • using port numbers · CPC title

  • Organization of routing tables · CPC title

  • characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks] (wireless communication networks H04W {; arrangements for dividing the transmission path H04W40/00}) · 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 US2016234112A1 cover?
In one embodiment, a packet is processed by three flow tables in a network device of a software-defined networking (SDN) system. In the first flow table, upon finding a match based at least partially on an IP address value of the packet, the network device adds a first identifier based on the IP address value to metadata of the packet and forwards the packet to a second flow table, where upon f…
Who is the assignee on this patent?
Ericsson Telefon Ab L M
What technology area does this patent fall under?
Primary CPC classification H04L45/741. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Aug 11 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).