CN111200559B - Routing method and routing device - Google Patents
Routing method and routing device Download PDFInfo
- Publication number
- CN111200559B CN111200559B CN201811375066.3A CN201811375066A CN111200559B CN 111200559 B CN111200559 B CN 111200559B CN 201811375066 A CN201811375066 A CN 201811375066A CN 111200559 B CN111200559 B CN 111200559B
- Authority
- CN
- China
- Prior art keywords
- hop
- routing
- sff
- forwarding table
- service function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
Abstract
The disclosure provides a routing method and a routing device, and relates to the field of routing. Determining a next SF by looking up the SFC forwarding table; if the number of the SFFs where the next SF is located is multiple, determining a next-hop SF outgoing interface corresponding to each SFF where the next SF is located, and searching an Internet Protocol (IP) forwarding table to determine a next-hop IP outgoing interface; and selecting a next-hop SF output interface matched with the next-hop IP output interface from all next-hop SF output interfaces for routing by a double table look-up method, wherein an IP forwarding table is usually constructed based on a shortest path principle, so that the shortest path of the SFC RSP is formed to the maximum extent, and the problem of suboptimum path of the SFC caused by cross-layer information isolation is solved.
Description
Technical Field
The present disclosure relates to the field of routing, and in particular, to a routing method and a routing apparatus.
Background
A SPI (Service Path Identifier) value in a message header of an SFC (Service Function Chain) NSH (Network Service header) can only indicate a logical Path, i.e., an SFP (Service Forwarding Path), but cannot indicate a Path actually traveled on a Forwarding plane, i.e., an RSP (replicated Service Path, Service Path presentation).
The RSP is generally formed by an SFF (Service Function Forwarder) selecting an SF (Service Function) and a next-hop SFF by itself.
The IETF (Internet Engineering Task Force) SFC working group mentions that SFFs may select next hop SFFs according to recent principles.
Disclosure of Invention
The inventor finds that, due to the information separation between the NSH layer and the IP (Internet Protocol) layer of the packet, the next-hop SFF closest to the current SFF is not necessarily located on the shortest path to the destination IP, which results in a longer actual transmission path of the packet and a longer transmission delay.
In view of this, the present disclosure proposes a scheme for optimizing SFC routing, which maximally forms the shortest path of the SFC RSP.
Some embodiments of the present disclosure provide a routing method, including:
searching a service function chain SFC forwarding table to determine a next service function SF;
if the number of the service function forwarders SFF where the next SF is located is multiple, determining a next hop SF outbound interface corresponding to each SFF where the next SF is located, and searching an internet protocol IP forwarding table to determine the next hop IP outbound interface;
and selecting a next hop SF output interface matched with the next hop IP output interface from all the next hop SF output interfaces for routing.
In some embodiments, the SFF where the next SF is located is obtained by applying to a software defined network, SDN, controller.
In some embodiments, the corresponding next-hop SF-egress interface is determined according to the SF network topology and the IP address of each SFF where the next SF is located.
In some embodiments, further comprising: and if one service function forwarder SFF is located by the next SF, selecting a next hop SF output interface corresponding to the SFF located by the next SF for routing.
Some embodiments of the present disclosure provide a routing device, including:
a memory; and
a processor coupled to the memory, the processor configured to perform the routing method of any of the preceding embodiments based on instructions stored in the memory.
Some embodiments of the present disclosure provide a routing device, including:
an SFC forwarding table lookup module configured to lookup a service function chain SFC forwarding table to determine a next service function SF;
the IP forwarding table searching module is configured to search an Internet protocol IP forwarding table to determine a next hop IP outgoing interface if a plurality of service function forwarders SFFs where the next SF is located exist;
and the routing selection module is configured to determine a next-hop SF egress interface corresponding to each SFF where the next SF is located, and select a next-hop SF egress interface matched with the next-hop IP egress interface from each next-hop SF egress interface for routing.
In some embodiments, the SFF where the next SF is located is obtained by applying to a software defined network, SDN, controller.
In some embodiments, the corresponding next-hop SF-egress interface is determined according to the SF network topology and the IP address of each SFF where the next SF is located.
In some embodiments, if there is one SFF of the service function forwarder where the next SF is located, the IP forwarding table lookup module is not executed, and the routing module is further configured to select the next-hop SF egress interface corresponding to the SFF where the next SF is located to perform routing.
Some embodiments of the present disclosure propose a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a routing method that performs any of the preceding embodiments.
Drawings
The drawings that will be used in the description of the embodiments or the related art will be briefly described below. The present disclosure will be more clearly understood from the following detailed description, which proceeds with reference to the accompanying drawings,
it is to be understood that the drawings in the following description are merely exemplary of the disclosure, and that other drawings may be derived from those drawings by one of ordinary skill in the art without undue inventive faculty.
Fig. 1 is a flow chart of a routing method according to some embodiments of the present disclosure.
Fig. 2 is a network deployment diagram of some embodiments of the present disclosure.
Fig. 3 is a schematic structural diagram of a routing device according to some embodiments of the present disclosure.
Fig. 4 is a schematic structural diagram of a routing device according to some embodiments of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure.
Fig. 1 is a flow chart of a routing method according to some embodiments of the present disclosure. The method may be performed by SFF, for example.
As shown in fig. 1, the method of this embodiment includes:
at step 110, the SFC forwarding table is looked up to determine the next SF.
And judging whether the SFFs of the next SF are multiple, if so, executing the step 120-130, and if so, executing the step 140.
The SFF of the next SF may be obtained by applying to an SDN (Software Defined Network) controller, for example.
In step 120, if there are multiple SFFs in which the next SF is located, a next-hop SF egress interface corresponding to each SFF in which the next SF is located is determined, and an IP forwarding table is searched to determine a next-hop IP egress interface.
In some embodiments, the corresponding next-hop SF-egress interface is determined according to the SF network topology and the IP address of each SFF where the next SF is located.
In step 130, a next-hop SF egress interface matching the next-hop IP egress interface is selected from the next-hop SF egress interfaces for routing.
In step 140, if there is one SFF in the next SF, the next-hop SF egress interface corresponding to the SFF in the next SF is selected for routing.
According to the SFC routing optimization scheme, the next-hop SF output interface matched with the next-hop IP output interface is selected for routing through a double table look-up method, and an IP forwarding table is usually constructed based on the shortest path principle, so that the shortest path of the SFC RSP is formed to the maximum extent, and the problem of suboptimum path caused by cross-layer information isolation of the SFC is solved.
One application example is described below in conjunction with fig. 2.
As shown in fig. 2, assume that:
1) the service function chain has a front service function node and a rear service function node, namely, DPI (Deep Packet Inspection) and CGN (carrier grade NAT).
2) All transport routers may be SFF.
3) Cost values between all neighboring routers are all 1;
4) the DPI is hung on the SFF1, and the CGN is hung on the SFF3 and the SFF 5.
The message includes an NSH header, an IP header, and a PAYLOAD (PAYLOAD). The upper layer in fig. 2 is a network topology abstracted from the SF perspective (abbreviated as "SF network topology"), and the lower layer in fig. 2 is a network topology abstracted from the IP perspective (abbreviated as "IP network topology"), wherein classifiers correspond to PE1, SFFs 1-3,5-6 correspond to P1-3,5-6, and SFF4 corresponds to PE 2.
For the original message, the shortest path to the destination is PE1-P1-P2-P3-PE2, according to the IP forwarding table.
If the next-hop SFF is selected using the nearest principle, from the DPI to the next CGN, the SFF1 selects the SFF5 with smaller cost value (cost is 1) instead of the SFF3(cost is 2), so the RSP formed from the NSH header is "classifier-SFF 1-SFF5-SFF6-SFF 4", obviously this is not the shortest path.
According to the SFC routing optimization scheme based on the dual table lookup disclosed by the present disclosure, the SFF1 first searches the SFC forwarding table, finds that the next SF is CGN, and applies for the resource location (SFF3 and SFF5) where the CGN is located from the SDN, obtains the IP address of the SFF corresponding to the CGN of the entire network, and calculates the corresponding next-hop SF egress interface (SFF2 and SFF5, respectively). Next, SFF1 looks up the IP forwarding table on router P1 with its next hop IP egress interface being P2. Then, SFF1 selects the next hop SF out interface (SFF2) matching the next hop IP out interface (P2) for routing, that is, although SFF3 is larger than the cost of SFF5, SFF1 selects SFF3 as the next hop SFF, and RSP is "classifier-SFF 1-SFF2-SFF3-SFF 4", which is the shortest path, thereby solving the problem that the path of SFC is suboptimal due to cross-layer information isolation.
Fig. 3 is a schematic structural diagram of a routing device according to some embodiments of the present disclosure. The routing means may be, for example, SFF or a part of SFF.
As shown in fig. 3, the routing apparatus 300 of this embodiment includes:
a memory 310; and
a processor 320 coupled to the memory 310, the processor 320 configured to perform the routing method of any of the previous embodiments based on instructions stored in the memory 310.
Memory 310 may include, for example, system memory, fixed non-volatile storage media, and the like. The system memory stores, for example, an operating system, an application program, a Boot Loader (Boot Loader), and other programs.
Fig. 4 is a schematic structural diagram of a routing device according to some embodiments of the present disclosure. The routing means may be, for example, SFF or a part of SFF.
As shown in fig. 4, the routing apparatus 400 of this embodiment includes:
an SFC forwarding table lookup module 410 configured to lookup a service function chain SFC forwarding table to determine a next service function SF;
an IP forwarding table lookup module 420 configured to, if there are multiple service function forwarders SFF where the next SF is located, lookup an internet protocol IP forwarding table to determine a next-hop IP egress interface;
and a routing module 430, configured to determine a next-hop SF egress interface corresponding to each SFF where the next SF is located, and select a next-hop SF egress interface matching the next-hop IP egress interface from the next-hop SF egress interfaces for routing.
In some embodiments, the SFF where the next SF is located is obtained by applying to a software defined network, SDN, controller.
In some embodiments, the corresponding next-hop SF-out interface is determined according to the SF network topology and the IP address of each SFF where the next SF is located.
In some embodiments, if there is one SFF of the service function forwarding unit where the next SF is located, the IP forwarding table lookup module 420 is not executed, and the routing module 430 is further configured to select the next-hop SF egress interface corresponding to the SFF where the next SF is located for routing.
Some embodiments of the present disclosure propose a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a routing method that performs any of the preceding embodiments.
As will be appreciated by one skilled in the art, embodiments of the present disclosure may be provided as a method, system, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable non-transitory storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present disclosure is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only exemplary of the present disclosure and is not intended to limit the present disclosure, so that any modification, equivalent replacement, or improvement made within the spirit and principle of the present disclosure should be included in the scope of the present disclosure.
Claims (10)
1. A routing method, comprising:
searching a service function chain SFC forwarding table to determine a next service function SF;
if the number of the service function forwarders SFF where the next SF is located is multiple, determining a next-hop SF outgoing interface corresponding to each SFF where the next SF is located, and searching an Internet Protocol (IP) forwarding table to determine the next-hop IP outgoing interface, wherein the IP forwarding table is constructed on the basis of a shortest path principle;
and selecting a next hop SF output interface matched with the next hop IP output interface from all the next hop SF output interfaces for routing.
2. The routing method of claim 1, wherein the SFF of the next SF is obtained by applying to a Software Defined Network (SDN) controller.
3. The routing method of claim 1, wherein the corresponding next-hop SF egress interface is determined according to the SF network topology and the IP address of each SFF where the next SF is located.
4. The routing method of claim 1, further comprising:
and if one service function forwarder SFF is located by the next SF, selecting a next hop SF output interface corresponding to the SFF located by the next SF for routing.
5. A routing device, comprising:
a memory; and
a processor coupled to the memory, the processor configured to perform the routing method of any of claims 1-4 based on instructions stored in the memory.
6. A routing device, comprising:
an SFC forwarding table lookup module configured to lookup a service function chain SFC forwarding table to determine a next service function SF;
the IP forwarding table searching module is configured to search an Internet protocol IP forwarding table to determine a next-hop IP outgoing interface if a plurality of service function forwarders SFF are located by the next SF, and the IP forwarding table is constructed based on a shortest path principle;
and the routing selection module is configured to determine a next-hop SF egress interface corresponding to each SFF where the next SF is located, and select a next-hop SF egress interface matched with the next-hop IP egress interface from each next-hop SF egress interface for routing.
7. The routing device of claim 6, wherein the SFF of the next SF is obtained by applying to a Software Defined Network (SDN) controller.
8. The routing device of claim 6, wherein the corresponding next-hop SF egress interface is determined according to the SF network topology and the IP address of each SFF where the next SF is located.
9. The routing device of claim 6,
if there is one SFF of the service function forwarder where the next SF is located, the IP forwarding table searching module is not executed, and the routing selection module is also configured to select the next-hop SF egress interface corresponding to the SFF where the next SF is located for routing.
10. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the routing method of any one of claims 1 to 4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811375066.3A CN111200559B (en) | 2018-11-19 | 2018-11-19 | Routing method and routing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811375066.3A CN111200559B (en) | 2018-11-19 | 2018-11-19 | Routing method and routing device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111200559A CN111200559A (en) | 2020-05-26 |
CN111200559B true CN111200559B (en) | 2022-05-10 |
Family
ID=70747230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811375066.3A Active CN111200559B (en) | 2018-11-19 | 2018-11-19 | Routing method and routing device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111200559B (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107786437A (en) * | 2016-08-24 | 2018-03-09 | 华为技术有限公司 | Message forwarding method and device |
CN107872392A (en) * | 2016-09-26 | 2018-04-03 | 丛林网络公司 | Service function chain data and service function instance data are distributed in a network |
CN107925613A (en) * | 2016-07-01 | 2018-04-17 | 华为技术有限公司 | It is used for the methods, devices and systems to E-Packet in business function chain SFC |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106330714B (en) * | 2015-07-02 | 2020-05-29 | 中兴通讯股份有限公司 | Method and device for realizing service function chain |
CN105119834B (en) * | 2015-07-17 | 2018-06-01 | 西安空间无线电技术研究所 | A kind of source address destination address joint lookup method based on compound trie tree constructions |
CN111294281B (en) * | 2015-12-28 | 2021-05-18 | 华为技术有限公司 | Communication method and device based on Service Function Chain (SFC) |
CN108768861B (en) * | 2018-06-29 | 2021-01-08 | 新华三信息安全技术有限公司 | Method and device for sending service message |
-
2018
- 2018-11-19 CN CN201811375066.3A patent/CN111200559B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107925613A (en) * | 2016-07-01 | 2018-04-17 | 华为技术有限公司 | It is used for the methods, devices and systems to E-Packet in business function chain SFC |
CN107786437A (en) * | 2016-08-24 | 2018-03-09 | 华为技术有限公司 | Message forwarding method and device |
CN107872392A (en) * | 2016-09-26 | 2018-04-03 | 丛林网络公司 | Service function chain data and service function instance data are distributed in a network |
Also Published As
Publication number | Publication date |
---|---|
CN111200559A (en) | 2020-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107925624B (en) | Message forwarding method, device and system based on Service Function Chain (SFC) | |
US10581700B2 (en) | Service flow processing method, apparatus, and device | |
US20200396162A1 (en) | Service function chain sfc-based communication method, and apparatus | |
US11943136B2 (en) | Advanced preferred path route graph features in a network | |
CN106330714B (en) | Method and device for realizing service function chain | |
US9369371B2 (en) | Method and system for path monitoring using segment routing | |
US9794148B1 (en) | Node protection for stacked labels | |
US10715490B2 (en) | Firewall cluster | |
US20130223283A1 (en) | Systems and methods for equal-cost multi-path virtual private lan service | |
US11632322B2 (en) | Preferred path route graphs in a network | |
US10812373B2 (en) | Data network | |
KR101457317B1 (en) | Prioritization of routing information updates | |
CA2742775A1 (en) | Provider link state bridging (plsb) computation method | |
CN108667709B (en) | Message forwarding method and device | |
US20150288595A1 (en) | Control apparatus, communication system, control information creation method, and program | |
EP3160095A1 (en) | Method and device for processing mpls load sharing | |
CN111200559B (en) | Routing method and routing device | |
CN111884827B (en) | Method for synchronizing topological information in SFC network and routing network element | |
CN111314220B (en) | Method and system for minimizing SFC time delay | |
CN111245716A (en) | Inter-domain routing method, device and system | |
CN114268583B (en) | SDN-based dual-stack backbone management method and device and electronic equipment | |
KR20160123024A (en) | Method and system for providing function-based routing | |
WO2020227412A1 (en) | Open shortest path first (ospf) path-aware flooding | |
JP2022538527A (en) | Method and apparatus for routing traffic along IGP shortcut paths | |
WO2020231740A1 (en) | Open shortest path first (ospf) service grouping capability, membership, and flooding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |