IP Library › Granted Patent US 11,616,717
Granted Patent B2
US 11,616,717 · App. 17/116,894 · Granted Mar 28, 2023

Service function chaining network services

Inventors: Donald E. Eastlake, III (Davenport, FL); Andrew G. Malis (Andover, MA)
Assignee: Huawei Technologies Co., Ltd.
H04L45/306H04L45/38H04L45/54H04L69/22
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 11,616,717
App. No.
17/116,894
Granted
Mar 28, 2023
Kind
B2
Abstract

The disclosed technology relates to forwarding a packet in a network. The packet is received at a node, where the packet is encapsulated by a network service header (NSH) including a service path header that identifies a service path. The service path is associated with a treatment value that directs subsequent nodes to treat the encapsulated NSH packet with a quality of service treatment. A forwarding table stored in the node is evaluated to identify the service path and the treatment value of the encapsulated NSH packet and a quality of service treatment is determined for the encapsulated NSH packet. The encapsulated NSH packet is forwarded to the subsequent nodes based on the service path indicated in the forwarding table and in accordance with the quality of service treatment corresponding to the treatment value identified in the forwarding table.

Claims (89)

1. A computer-implemented method in a node that includes a processor and memory with instructions for forwarding a packet in a network, comprising:

receiving the packet at the node belonging to a service function chain (SFC) in the network, wherein:

the packet is encapsulated by a network service header (NSH) that includes a service path header that identifies a service path, and

directing one or more subsequent nodes within the network to treat the encapsulated NSH packet with a quality of service treatment based on a treatment value corresponding to the service path;

evaluating a forwarding table stored in the node to identify the service path and the treatment value of the encapsulated NSH packet and determining the quality of service treatment of the encapsulated NSH packet to be performed by the one or more subsequent nodes; and

forwarding the encapsulated NSH packet to the one or more subsequent nodes based on the service path indicated in the forwarding table and in accordance with the quality of service treatment corresponding to the treatment value identified in the forwarding table.

2. The computer-implemented method of claim 1 , wherein

the service path header includes a service path identifier (SPI) comprising a path index (PI) indicating the service path and a treatment index indicating the treatment value, and a service index (SI) indicating a location of the encapsulate NSH packet in the SFC, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

3. The computer-implemented method of claim 2 , wherein the SPI comprises an upper most one or more bits of the service path header and the SI comprises a lower most one or more bits of the service path header,

the total number of the upper most one or more bits is 24,

the total number of the lower most one or more bits is 8, and

the total number of one or more bits comprising the service path header is 32.

4. The computer-implemented method of claim 2 , wherein the treatment index comprises N one or more bits of the SPI, and the PI comprises (24−N) one or more bits of the SPI.

5. The computer-implemented method of claim 3 , wherein

the one or more bits comprising the PI are in a fixed position of the upper most one or more bits in the SPI, and the one or more bits comprising treatment index are a fixed position in the lower most one or more bits of the SPI, or

the one or more bits of the PI and the treatment index are randomly positioned in the SPI.

6. The computer-implemented method of claim 1 , wherein the forwarding table includes n entries for each service path of the encapsulated NSH packet, where n is a number of different treatment values associated with the service path.

7. The computer-implemented method of claim 2 , wherein

the service path header includes the service index (SI) indicating the treatment value and a location of the packet in the service chain, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

8. The computer-implemented method of claim 1 , wherein

the forwarding table comprises a service path identifier (SPI) indicating the service path, a service index (SI) indicating a location of the encapsulate NSH packet in the service chain, and a treatment index indicating the treatment value, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

9. The computer-implemented method of claim 1 , wherein the network is an SFC-enabled domain.

10. The computer-implemented method of claim 1 , further comprising processing the encapsulated NSH packet according to a service function associated with the node.

11. The computer-implemented method of claim 1 , further comprising decapsulating the encapsulated NSH packet by removing the NSH, and forwarding the decapsulated packet towards a destination address determined in accordance with information in the header of the decapsulated packet.

12. A non-transitory computer-readable medium storing computer instructions for forwarding a packet in a network, that when executed by one or more processors, cause the one or more processors to perform the steps of:

receiving the packet at a node belonging to a service function chain (SFC) in the network, wherein

the packet is encapsulated by a network service header (NSH) that includes a service path header that identifies a service path, and

directing one or more subsequent nodes within the network to treat the encapsulated NSH packet with a quality of service treatment based on a treatment value corresponding to the service path;

evaluating a forwarding table stored in the node to identify the service path and the treatment value of the encapsulated NSH packet and determining the quality of service treatment of the encapsulated NSH packet to be performed by the one or more subsequent nodes; and

forwarding the encapsulated NSH packet to the one or more subsequent nodes based on the service path indicated in the forwarding table and in accordance with the quality of service treatment corresponding to the treatment value identified in the forwarding table.

13. The non-transitory computer-readable medium of claim 12 , wherein

the service path header includes a service path identifier (SPI) comprising a path index (PI) indicating the service path and a treatment index indicating the treatment value, and a service index (SI) indicating a location of the encapsulate NSH packet in the SFC, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

14. The non-transitory computer-readable medium of claim 13 , wherein the SPI comprises an upper most one or more bits of the service path header and the SI comprises a lower most one or more bits of the service path header,

the total number of the upper most one or more bits is 24,

the total number of the lower most one or more bits is 8, and

the total number of one or more bits comprising the service path header is 32.

15. The non-transitory computer-readable medium of claim 13 , wherein the treatment index comprises N one or more bits of the SPI, and the PI comprises (24−N) one or more bits of the SPI.

16. The non-transitory computer-readable medium of claim 14 , wherein

the one or more bits comprising the PI are in a fixed position of the upper most one or more bits in the SPI, and the one or more bits comprising treatment index are a fixed position in the lower most one or more bits of the SPI, or

the one or more bits of the PI and the treatment index are randomly positioned in the SPI.

17. The non-transitory computer-readable medium of claim 12 , wherein the forwarding table includes n entries for each service path of the encapsulated NSH packet, where n is a number of different treatment values associated with the service path.

18. The non-transitory computer-readable medium of claim 13 , wherein

the service path header includes the service index (SI) indicating the treatment value and a location of the packet in the service chain, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

19. The non-transitory computer-readable medium of claim 12 , wherein

the forwarding table comprises a service path identifier (SPI) indicating the service path, a service index (SI) indicating a location of the encapsulate NSH packet in the service chain, and a treatment index indicating the treatment value, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

20. The non-transitory computer-readable medium of claim 12 , wherein the network is an SFC-enabled domain.

21. The non-transitory computer-readable medium of claim 12 , wherein the one or more processors further perform the steps of processing the encapsulated NSH packet according to a service function associated with the node.

22. The non-transitory computer-readable medium of claim 12 , the one or more processors further perform the steps of decapsulating the encapsulated NSH packet by removing the NSH, and forwarding the decapsulated packet towards a destination address determined in accordance with information in the header of the decapsulated packet.

23. A node for forwarding a packet in a network, the node comprising:

a non-transitory memory storage comprising instructions; and

one or more processors in communication with the memory storage, wherein the one or more processors execute the instructions to:

receive the packet at a node belonging to a service function chain (SFC) in the network, wherein

the packet is encapsulated by a network service header (NSH) that includes a service path header that identifies a service path, and

direct one or more subsequent nodes within the network to treat the encapsulated NSH packet with a quality of service treatment based on a treatment value corresponding to the service path;

evaluate a forwarding table stored in the node to identify the service path and the treatment value of the encapsulated NSH packet and determine the quality of service treatment of the encapsulated NSH packet to be performed by the one or more subsequent nodes; and

forward the encapsulated NSH packet to the one or more subsequent nodes based on the service path indicated in the forwarding table and in accordance with the quality of service treatment corresponding to the treatment value identified in the forwarding table.

24. The node of claim 23 , wherein:

the service path header includes a service path identifier (SPI) comprising a path index (PI) indicating the service path and a treatment index indicating the treatment value, and a service index (SI) indicating a location of the encapsulate NSH packet in the SFC, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

25. The node of claim 24 , wherein the SPI comprises an upper most one or more bits of the service path header and the SI comprises a lower most one or more bits of the service path header,

the total number of the upper most one or more bits is 24,

the total number of the lower most one or more bits is 8, and

the total number of one or more bits comprising the service path header is 32.

26. The node of claim 24 , wherein the treatment index comprises N one or more bits of the SPI, and the PI comprises (24−N) one or more bits of the SPI.

27. The node of claim 25 , wherein

the one or more bits comprising the PI are in a fixed position of the upper most one or more bits in the SPI, and the one or more bits comprising treatment index are a fixed position in the lower most one or more bits of the SPI, or

the one or more bits of the PI and the treatment index are randomly positioned in the SPI.

28. The node of claim 23 , wherein the forwarding table includes n entries for each service path of the encapsulated NSH packet, where n is a number of different treatment values associated with the service path.

29. The node of claim 24 , wherein

the service path header includes the service index (SI) indicating the treatment value and a location of the packet in the service chain, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

30. The node of claim 23 , wherein

the forwarding table comprises a service path identifier (SPI) indicating the service path, a service index (SI) indicating a location of the encapsulate NSH packet in the service chain, and a treatment index indicating the treatment value, and

the treatment value indicates the quality of service treatment for the encapsulated NSH packet.

31. The node of claim 23 , wherein the network is an SFC-enabled domain.

32. The node of claim 23 , the one or more processors further execute the instructions to process the encapsulated NSH packet according to a service function associated with the node.

33. The node of claim 23 , the one or more processors further execute the instructions to decapsulate the encapsulated NSH packet by removing the NSH, and forward the decapsulated packet towards a destination address determined in accordance with information in the header of the decapsulated packet.

34. A node for forwarding a packet in a network, the node comprising:

a receiving module for receiving the packet at a node belonging to a service function chain (SFC) in the network, wherein

the packet is encapsulated by a network service header (NSH) that includes a service path header that identifies a service path, and

directing one or more subsequent nodes within the network to treat the encapsulated NSH packet with a quality of service treatment based on a treatment value corresponding to the service path;

an evaluating module for evaluating a forwarding table stored in the node to identify the service path and the treatment value of the encapsulated NSH packet and determining the quality of service treatment of the encapsulated NSH packet to be performed by the one or more subsequent nodes; and

a forwarding module for forwarding the encapsulated NSH packet to the one or more subsequent nodes based on the service path indicated in the forwarding table and in accordance with the quality of service treatment corresponding to the treatment value identified in the forwarding table.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2021
From: EASTLAKE, DONALD E., III; MALIS, ANDREW G.
To: FUTUREWEI TECHNOLOGIES, INC.
Reel/Frame 055640/0943 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2021
From: FUTUREWEI TECHNOLOGIES, INC.
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 055641/0388 →
Continuity (3)
Continuation PCTCN2019120082 · Nov 22, 2019
Provisional Application 62770855 · Nov 23, 2018
Related Publication 20210119909A1 · Apr 22, 2021