IP Library Granted Patent US 10,673,760
Granted Patent B2
US 10,673,760 · App. 15/336,287 · Granted Jun 2, 2020

Method, apparatus, and system for load balancing of service chain

Inventors: Shibi Huang (Shenzhen, CN); Yong Huang (Shenzhen, CN); Yong Tian (Shenzhen, CN); Linda Dunbar (Plano, TX)
Assignee: Huawei Technologies Co., Ltd.
H04L47/125H04L12/4633H04L45/38H04L47/31H04L67/10H04L67/1002H04L67/1023H04L41/508
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 10,673,760
App. No.
15/336,287
Granted
Jun 2, 2020
Kind
B2
Abstract

A method, an apparatus, and a system are provided for load balancing of a service chain. The method includes: receiving, by a flow classifier, a service chain selection and control policy sent by a policy and charging rules function PCRF unit; hashing, by the flow classifier according to a hash quantity, a service flow corresponding to a service chain identifier, to obtain multiple subflows, and adding the service chain identifier and hashing factors to packets of the subflows, where different subflows correspond to different hashing factors; and sending, by the flow classifier, the packets of the subflows after the service chain identifier and the hashing factors are added, to a forwarding device.

Claims (44)

1. A flow classifier, comprising:

a memory comprising instructions; and

a processor in communication with the memory, wherein the processor is configured to execute the instructions to facilitate the flow classifier carrying out a method comprising:

receiving a service chain selection and control policy, wherein the service chain selection and control policy comprises a service chain identifier and a correspondence between a service chain and a hash quantity;

hashing, according to the hash quantity, a service flow corresponding to the service chain identifier to obtain multiple subflows;

adding the service chain identifier and hashing factors to packets of the subflows, wherein different subflows correspond to different hashing factors; and

sending the packets of the subflows, after the service chain identifier and the hashing factors have been added, to a forwarding device;

wherein the hashing, according to the hash quantity, the service flow corresponding to the service chain identifier to obtain multiple subflows comprises:

in a first time segment, adding a same hashing factor to packets of a same session of a same user, so that the packets of the same session of the same user are allocated to a same subflow, and adding the service chain identifier to the packets of the subflow.

2. The flow classifier according to claim 1 , wherein the adding the same hashing factor to packets of the same session of the same user comprises: in the first time segment, adding the same hashing factor to upstream packets and downstream packets of the same session of the same user, so that the upstream packets and downstream packets of the same session of the same user are allocated to the same subflow, and adding the service chain identifier and the hashing factor to the packets of the subflow.

3. The flow classifier according to claim 1 , wherein the service chain selection and control policy further comprises a status flag, wherein the status flag is used to indicate a before-expansion state or an after-expansion state, wherein the expansion is used to indicate that a quantity of value-added service devices of a same type increases; and

wherein the method further comprises: adding the status flag indicating the before-expansion state, to a session that already exists before the expansion, adding a hashing factor used by the existing session before the expansion, to packets of the existing session that are generated after the expansion, and adding the status flag indicating the after-expansion state, to a session created after the expansion.

4. A network device, comprising:

a memory comprising instructions;

a processor in communication with the memory, wherein the processor is configured to execute the instructions to facilitate the network device carrying out a method comprising:

receiving a correspondence between a service chain and a hash quantity;

receiving a service flow;

obtaining multiple subflows based on hashing the service flow corresponding to the service chain according to the hash quantity;

adding hashing factors to the subflows, wherein each of the subflows corresponds to a different hashing factor; and

sending the subflows, to which the hashing factors have been added, to a forwarding device;

wherein the obtaining multiple subflows based on hashing the service flow corresponding to the service chain according to the hash quantity comprises:

in a first time segment, adding a same hashing factor to packets of a same session of a same user, so that the packets of the same session of the same user are allocated to a same subflow, and adding the service chain identifier to the packets of the subflow.

5. The network device according to claim 4 , wherein the adding the same hashing factor to packets of the same session of the same user comprises: in the first time segment, adding the same hashing factor to upstream packets and downstream packets of the same session of the same user, so that the upstream packets and downstream packets of the same session of the same user are allocated to the same subflow, and adding the service chain identifier and the hashing factor to the packets of the subflow.

6. The network device according to claim 5 , wherein the service chain selection and control policy further comprises a status flag, wherein the status flag is used to indicate a before-expansion state or an after-expansion state, wherein the expansion is used to indicate that a quantity of value-added service devices of a same type increases; and

wherein the method further comprise: adding the status flag indicating the before-expansion state, to a session that already exists before the expansion, adding a hashing factor used by the existing session before the expansion, to packets of the existing session that are generated after the expansion, and adding the status flag indicating the after-expansion state, to a session created after the expansion.

7. A method for processing a service flow, comprising:

receiving a correspondence between a service chain and a hash quantity;

receiving a service flow;

obtaining multiple subflows based on hashing the service flow corresponding to the service chain according to the hash quantity;

adding hashing factors to the subflows wherein each of the subflows corresponds to a different hashing factor; and

sending the subflows, to which the hashing factors have been added, to a forwarding device;

wherein the obtaining multiple subflows based on hashing the service flow corresponding to the service chain according to the hash quantity comprises:

in a first time segment, adding a same hashing factor to packets of a same session of a same user, so that the packets of the same session of the same user are allocated to a same subflow, and adding the service chain identifier to the packets of the subflow.

8. The method according to claim 7 , wherein the adding the same hashing factor to packets of the same session of the same user comprises: in the first time segment, adding the same hashing factor to upstream packets and downstream packets of the same session of the same user, so that the upstream packets and downstream packets of the same session of the same user are allocated to the same subflow, and adding the service chain identifier and the hashing factor to the packets of the subflow.

9. The method according to claim 8 , wherein the service chain selection and control policy further comprises a status flag, wherein the status flag is used to indicate a before-expansion state or an after-expansion state, wherein the expansion is used to indicate that a quantity of value-added service devices of a same type increases; and

wherein the method further comprise: adding the status flag indicating the before-expansion state, to a session that already exists before the expansion, adding a hashing factor used by the existing session before the expansion, to packets of the existing session that are generated after the expansion, and adding the status flag indicating the after-expansion state, to a session created after the expansion.

10. A non-transitory computer-readable storage medium comprising instructions, which, when executed by a computer, cause the computer to carry out a method comprising:

receiving a correspondence between a service chain and a hash quantity;

receiving a service flow;

obtaining multiple subflows based on hashing the service flow corresponding to the service chain according to the hash quantity;

adding hashing factors to the subflows wherein each of the subflows corresponds to a different hashing factor; and

sending the subflows, to which the hashing factors have been added to a forwarding device;

wherein the obtaining multiple subflows based on hashing the service flow corresponding to the service chain according to the hash quantity comprises:

in a first time segment, adding a same hashing factor to packets of a same session of a same user, so that the packets of the same session of the same user are allocated to a same subflow, and adding the service chain identifier to the packets of the subflow.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2017
From: HUANG, SHIBI; HUANG, YONG; TIAN, YONG; DUNBAR, LINDA
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 042710/0111 →
Priority Claims (1)
CN 2014 1 0175830 · Apr 28, 2014 · national
Continuity (2)
Continuation PCTCN2015074498 · Mar 18, 2015
Related Publication 20170048148A1 · Feb 16, 2017