System and method for enabling services chaining in a provider network

US9825847B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9825847-B2
Application numberUS-201715415829-A
CountryUS
Kind codeB2
Filing dateJan 25, 2017
Priority dateJul 24, 2012
Publication dateNov 21, 2017
Grant dateNov 21, 2017

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.

A system and method for chaining one or more services in a service provider network. A service chaining policy and associated Service Path Identifier (SPID) are determined at an ingress node with respect to a particular data packet flow. If the service chaining policy involves one or more service nodes to be traversed by the data packet flow, each service node's EIDs and RLOCs are determined. A sequential data exchange process with the service nodes is effectuated using encapsulation of data packets based on the EIDs and RLOCs for obtaining services in accordance with the order of services set forth in the chaining policy.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of chaining services in a service provider network, the method comprising: determining a service chaining policy associated with a data packet flow, the service chaining policy defining a plurality of service nodes to be traversed by the data packet flow entering at an ingress node and emitting from an egress node; determining a Service Path Identifier (SPID) associated with the service chaining policy; and effectuating an oscillatory data exchange process according to the service chaining policy, wherein the oscillatory data exchange process is initiated at the ingress node receiving the data packet flow and oscillates between the ingress node and the egress node that emits the data packet flow after obtaining services at the plurality of service nodes and further wherein each service node returns serviced data packets of the data packet flow to a nearest one of the ingress and egress nodes after providing a service to the data packet flow, the ingress and egress nodes operating to steer the returned serviced data packets to a next service node of the service chain policy. 2. The method as recited in claim 1 , further comprising determining Endpoint Identifiers (EIDs) and Routing Locators (RLOCs) of each service node based on the SPID of the service chaining policy. 3. The method as recited in claim 2 , wherein the oscillatory data exchange process further comprises: encapsulating an incoming data packet by appending (i) a destination EID field having the EID of a service node to be traversed for obtaining a service thereat and (ii) a source EID field having the SPID of the service chaining policy, resulting in an EID-encapsulated data packet; encapsulating the EID-encapsulated data packet by appending (i) a source RLOC field having an RLOC of one of the ingress node and the egress node and (ii) a destination RLOC field having the RLOC of the service node, resulting in a double-encapsulated data packet having an RLOC encapsulation; and sending the double-encapsulated data packet to the service node identified in the service chain policy. 4. The method as recited in claim 3 , wherein the data exchange process further comprises: receiving the double-encapsulated data packet at the service node; removing the EID encapsulation and the RLOC encapsulation from the double-encapsulated data packet; forwarding the data packet to a service logic module configured to deliver a service; and after obtaining service from the service logic module, re-encapsulating the data packet and sending the re-encapsulated data packet to one of the ingress node and the egress node based on optimizing a next service hop required in accordance with the service chaining policy. 5. The method as recited in claim 4 , wherein the re-encapsulation of the data packet further comprises; appending a source EID field that includes the EID of the service node and a destination EID field that includes the SPID of the service chaining policy; and appending a source RLOC field that includes the RLOC of the service node and a destination RLOC field that includes the RLOC of one of the ingress node and the egress node. 6. The method as recited in claim 1 , wherein the plurality of service nodes are provided as part of the service provider network configured as a Software-Defined Network (SDN) based on one of OpenFlow protocol and Forwarding and Control Element Separation (ForCES) protocol. 7. The method as recited in claim 1 , wherein the plurality of service nodes are provided as part of the service provider network configured as a locator/identifier separation network implemented using one of Locator/Identifier Separation Protocol (LISP) protocol, Identifier/Locator Network Protocol (ILNP) protocol, Host Identity Protocol (HIP) protocol and Site Multi-homing by IPv6 Intermediation (SHIM6) protocol. 8. A network node configured to operate with a service provider network, the network node comprising: one or more processors; and a persistent memory coupled to the one or more processors, wherein the persistent memory includes instructions executable by the one or more processors and configured to: determine a service chaining policy associated with a data packet flow, the service chaining policy defining a plurality of service nodes to be traversed by the data packet flow; determine a Service Path Identifier (SPID) associated with the service chaining policy; and effectuate an oscillatory data exchange process according to the service chaining policy, wherein the oscillatory data exchange process is initiated at the network node operating as an ingress node that receives the data packet flow and oscillates between the ingress node and an egress node that emits the data packet flow after obtaining services at the plurality of service nodes and further wherein each service node returns serviced data packets of the data packet flow to a nearest one of the ingress and egress nodes after providing a service to the data packet flow, the ingress and egress nodes operating to steer the returned serviced data packets to a next service node of the service chain policy. 9. The network node as recited in claim 8 , wherein the persistent memory further comprises instructions for determining Endpoint Identifiers (EIDs) and Routing Locators (RLOCs) of each service node based on the SPID of the service chaining policy. 10. The network node as recited in claim 9 , wherein the persistent memory further comprises instructions configured to: encapsulate an incoming data packet by appending (i) a destination EID field having the EID of a service node that must be traversed for obtaining a service thereat and (ii) a source EID field having the SPID of the service chaining policy, resulting in an EID-encapsulated data packet; encapsulate the EID-encapsulated data packet by appending (i) a source RLOC field having an RLOC of the network node operating as the ingress node and (ii) a destination RLOC field having the RLOC of the service node, resulting in a double-encapsulated data packet having an RLOC encapsulation; and send the double-encapsulated data packet to the service node identified in the service chain policy. 11. A service node configured to operate with a service provider network, the service node comprising: one or more processors; and a persistent memory coupled to the one or more processors, wherein the persistent memory includes instructions executable by one or more processors and configured to: process a double-encapsulated data packet received from one of an ingress node and an egress node of the service provider network for a data packet flow requiring services at a plurality of service nodes in the service provider network in accordance with a service chaining policy, the processing comprising removing an encapsulation involving an Endpoint Identifier (EID) field and removing an encapsulation involving a Routing Locator (RLOC) field from the double-encapsulated data packet; forward the data packet to a service logic module configured to deliver a service; and re-encapsulate the data packet, upon delivery of service by the service logic module, and send the re-encapsulated data packet to one of the ingress node and the egress node as part of a data exchange process initiated at the ingress node and oscillates between the ingress node and the egress node, wherein each of the plurality of service nodes is configured to return serviced data packets of the data packet flow to a nearest one of the ingress and egress nodes after providing a service to the data packet flow, the ingress and egress nodes operating to steer the returned serviced data packets to a next service node of the service chain po

Assignees

Inventors

Classifications

  • Route determination based on the nature of the carried application · CPC title

  • Network arrangements or protocols for supporting network services or applications (user-to-user messaging H04L51/00; network arrangements, protocols or services for supporting real-time applications in data packet communications networks H04L65/00) · CPC title

  • Routing based on the source address · CPC title

  • involving identification of individual flows · CPC title

  • Parsing or analysis of headers · 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 US9825847B2 cover?
A system and method for chaining one or more services in a service provider network. A service chaining policy and associated Service Path Identifier (SPID) are determined at an ingress node with respect to a particular data packet flow. If the service chaining policy involves one or more service nodes to be traversed by the data packet flow, each service node's EIDs and RLOCs are determined. A…
Who is the assignee on this patent?
ERICSSON TELEFON AB L M (publ)
What technology area does this patent fall under?
Primary CPC classification H04L45/38. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 21 2017 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).