WO2016165492A1 - 一种实现业务功能链的方法和装置 - Google Patents

一种实现业务功能链的方法和装置 Download PDF

Info

Publication number
WO2016165492A1
WO2016165492A1 PCT/CN2016/074458 CN2016074458W WO2016165492A1 WO 2016165492 A1 WO2016165492 A1 WO 2016165492A1 CN 2016074458 W CN2016074458 W CN 2016074458W WO 2016165492 A1 WO2016165492 A1 WO 2016165492A1
Authority
WO
WIPO (PCT)
Prior art keywords
ipv6
information
service
service function
packet
Prior art date
Application number
PCT/CN2016/074458
Other languages
English (en)
French (fr)
Inventor
王翠
孟伟
黄孙亮
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Priority to EP16779467.6A priority Critical patent/EP3319278A4/en
Priority to US15/740,345 priority patent/US20180198705A1/en
Publication of WO2016165492A1 publication Critical patent/WO2016165492A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service

Definitions

  • This application relates to, but is not limited to, the field of communication technology.
  • the Service Function Chain (SFC) technology integrates all services and virtualizes the Service overlay layer to form its own service topology, which is decoupled from the underlying network and is no longer restricted by the underlying network structure.
  • the SFC architecture includes the following components: Classifier Classifier, Service Function Forwarder (SFF), Service Function (SF), and Network Service Header Proxy (NSH). Proxy).
  • the Classifier is responsible for classifying the traffic, and according to the classification result, the network service header (NSH) is encapsulated, that is, the service function path of the packet is determined on the Classifier, and the service overlay layer is further encapsulated. Forwarding and forwarding, the packet is forwarded to the next hop SFF by the overlay technology, the SFF receives the packet, decapsulates the Service overlay layer, and parses the received packet carrying the NSH packet header, according to the NSH header.
  • SFF Service Function Forwarder
  • SF Service Function
  • NSH Network Service Header Proxy
  • the information is forwarded to the corresponding SF for processing; the SF is responsible for performing the corresponding service function processing on the received message, and after the processing is completed, the NSH header is further updated and the updated packet is forwarded to the forwarding packet.
  • the SFF is further encapsulated according to the information in the NSH packet, and the NSH packet is encapsulated and the packet is forwarded to the next hop SFF.
  • the NSH Proxy mainly represents the SFF and interacts with the SF that does not perceive the NSH header.
  • the dotted line in Figure 1-1 shows a Service Function Path (SFP).
  • the classification rules and service function chain definitions of the SFC and the NSH are issued or locally configured by the SFC controller; from the data plane encapsulation, the entire NSH of the service function chain and the service is as shown in Figure 1-2.
  • the indication includes a Base Header, a Service Path Header, and a Context Header; wherein the Base Header mainly identifies the version number, the length, the metadata type, and the lower A protocol number; the core of the service path header, which identifies the service function path information of the entire service function chain, including the service function path identifier.
  • Service Path ID or Service Function Path ID and a service index (Service Index), where the service function path identifier (Service Path ID (SPID) or Service Function Path ID (SFPID) is a service function path identifier) may be a local configuration.
  • the service function path identifier corresponds to a service forwarding path; the node confirms which service function chain the current packet should be forwarded to and which service function to process according to the service function path identifier and the service index;
  • a Context Header is used to carry context information for sharing information between the classifier Classifier and the service function SF, between the service function SF and the service function SF, the service function SF, and the service function forwarder SFF.
  • Send message For example, as shown in Figure 1-3, the complete packet format sent from the Classifier is as shown in Figure 1-3.
  • the NSH header and the IPv4-GRE header are encapsulated in the original packet outer packet. L2 head.
  • Segment routing (SR) technology is also a popular technology in the current IETF.
  • the main principle is to deliver an ordered list of segment information to the head nodes in the SR domain through the control plane.
  • Each segment information identifies the points that the packet must undergo.
  • Segments an ordered segment information list (SR-List), which identifies all the segments that the packet needs to go through; thus, when the packet reaches the head node of the SR domain, only the SR header needs to be added to the packet.
  • the subsequent message is forwarded according to the SR-List in the SR header.
  • each segment segment may represent an instruction, or a topology, or a service; the SR supports a segment segment of a global attribute, and also supports a segment segment of a local attribute belonging to a node.
  • Segment segments supported in the current SR technology include: IGP segment identifier (IGP-SID), Prefix segment identifier (Prefix-SID), node segment identifier (Node-SID), arbitrary broadcast segment identifier (Anycast SID), and neighbor segment identifier ( Adj-SID), BGP Peer segment identifier, etc.
  • the existing SR technology includes multi-label switched path segment routing (MPLS-SR), that is, it is applied in the IPv4 network, each segment is identified by a label, and the SR-List is the label stack, which is encapsulated in the IPv4 header. Externally, packet forwarding in the MPLS-SR domain is forwarded according to the label stack information.
  • MPLS-SR multi-label switched path segment routing
  • the SFC technology can specify the service function path identifier SFPID that the packet experiences according to the packet classification result, and then encapsulate an NSH packet header in the outer layer of the original packet. It is further forwarded to the next hop SFF by the overlay technology.
  • the Classifier, SFF, and SF that pass the path need to support the NSH.
  • the NSH Proxy component needs to be added to support the NSH SF and the NSH.
  • This paper provides a method and apparatus for implementing a service function chain, which can simply deploy and quickly implement a service function chain technology in an IPv6 network.
  • the IPv6 packet is sent according to the service function chain information.
  • the method further includes the following features:
  • the service function chain information includes at least one of the following information: service forwarding path information and metadata information.
  • the method further includes the following features:
  • the IPv6 extension header used to encapsulate the service forwarding path information is an IPv6 routing extension header or a newly defined IPv6 extension header.
  • the method further includes the following features:
  • the service forwarding path information includes: service function path information and a service index;
  • the service index is used to identify location information of the current node in the service function path.
  • the method further includes the following features:
  • the IPv6 extension header for encapsulating metadata information is an IPv6 destination option extension header or a newly defined IPv6 extension header.
  • the method further includes the following features:
  • the IPv6 packet is sent according to the service function chain information, including:
  • the IPv6 address of the next hop node is determined according to the obtained service forwarding path information, and the IPv6 address of the next hop node is used as the destination address, and the IPv6 packet is sent to the destination address.
  • the method further includes the following features:
  • the method further includes: classifying the traffic;
  • the encapsulating the service function chain information in the IPv6 extension header of the IPv6 packet includes: encapsulating the service function chain information in the IPv6 extension header of the IPv6 packet according to the classification result.
  • the method further includes the following features:
  • the method further includes: acquiring the service function chain information.
  • the method further includes the following features:
  • the obtaining the service function chain information includes at least one of the following methods:
  • the method further includes the following features:
  • the service function path information includes any one of the following: a service function path identifier, an address list of nodes on the service function path, a segment identifier list of nodes on the service function path, and a node identifier list of nodes on the service function path.
  • the IPv6 address of the next hop node of the service function path is obtained as the destination address, and the IPv6 packet is sent to the destination address.
  • the method further includes the following features:
  • the service function chain information includes at least one of the following information: service forwarding path information and metadata information.
  • the method further includes the following features:
  • the service forwarding path information is encapsulated in an IPv6 routing extension header of the IPv6 packet, or encapsulated in a newly defined IPv6 extension header of the IPv6 packet;
  • the metadata information is encapsulated in an IPv6 destination option extension header of the IPv6 message or encapsulated in a newly defined IPv6 extension header of the IPv6 message.
  • the method further includes the following features:
  • Sending the IPv6 packet to the destination address including:
  • the IPv6 extension header encapsulated with the service function chain information is stripped from the IPv6 packet, and then the IPv6 packet is sent to the destination address.
  • the method further includes the following features:
  • Sending the IPv6 packet to the destination address including:
  • next hop of the node is not the destination node of the service function path, determine whether to update the service function chain information carried in the IPv6 packet according to the deployment policy, and then send the IPv6 packet to the destination address.
  • the method further includes the following features:
  • the service forwarding path information carried in the IPv6 packet is updated according to the deployment policy, the updated service forwarding path information is parsed, and the IPv6 address of the next hop node of the updated service function path is obtained as the destination address, and the IPv6 is obtained. The message is sent to the destination address.
  • the method further includes the following features:
  • the service forwarding path information includes: service function path information and a service index;
  • the service index is used to identify location information of the current node in the service function path.
  • the method further includes the following features:
  • Sending the IPv6 packet to the destination address including:
  • next hop of the node is not the destination node of the service function path and the service function chain information includes the service forwarding path information
  • the service index in the IPv6 packet is updated, and then the IPv6 packet is sent to the Destination address.
  • the method further includes the following features:
  • Update the service index in the IPv6 packet including:
  • the service index in the IPv6 packet is decremented.
  • a device for implementing a business function chain, applied to nodes on a business function chain including:
  • the encapsulation module is configured to: encapsulate the service function chain information in an IPv6 extension header of the IPv6 packet;
  • the sending module is configured to: send the IPv6 packet according to the service function chain information.
  • the device further includes the following features:
  • the service function chain information includes at least one of the following information: service forwarding path information and metadata information.
  • the device further includes the following features:
  • the IPv6 extension header used to encapsulate the service forwarding path information is an IPv6 routing extension header or a newly defined IPv6 extension header.
  • the device further includes the following features:
  • the service forwarding path information includes: service function path information and a service index;
  • the service index is used to identify location information of the current node in the service function path.
  • the device further includes the following features:
  • the IPv6 extension header for encapsulating metadata information is an IPv6 destination option extension header or a newly defined IPv6 extension header.
  • the device further includes the following features:
  • the sending module is set to:
  • the IPv6 address of the next hop node is determined according to the obtained service forwarding path information, and the IPv6 address of the next hop node is used as the destination address, and the IPv6 packet is sent to the destination address.
  • the device further includes the following features:
  • the package module is also set to:
  • the traffic is classified, and the service function chain information is encapsulated in the IPv6 extension header of the IPv6 packet according to the classification result.
  • the device further includes the following features:
  • the device also includes:
  • the information acquisition module is configured to: obtain service function chain information.
  • the device further includes the following features:
  • the information acquisition module is configured to: obtain the service function chain information, and include at least one of the following methods:
  • the device further includes the following features:
  • the service function path information includes any one of the following: a service function path identifier, an address list of nodes on the service function path, a segment identifier list of nodes on the service function path, and a node identifier list of nodes on the service function path.
  • a device for implementing a business function chain, applied to nodes on a business function chain including:
  • the packet receiving module is configured to: after receiving the IPv6 packet carrying the service function chain information, parsing the service function chain information;
  • the packet sending module is configured to: obtain the IPv6 address of the next hop node of the service function path as the destination address, and send the IPv6 packet to the destination address.
  • the device further includes the following features:
  • the service function chain information includes at least one of the following information: service forwarding path information and metadata information.
  • the device further includes the following features:
  • the service forwarding path information is encapsulated in an IPv6 routing extension header of the IPv6 packet, or encapsulated in a newly defined IPv6 extension header of the IPv6 packet;
  • the metadata information is encapsulated in an IPv6 destination option extension header of the IPv6 message or encapsulated in a newly defined IPv6 extension header of the IPv6 message.
  • the device further includes the following features:
  • the message sending module is set to:
  • the IPv6 extension header encapsulated with the service function chain information is stripped from the IPv6 packet, and then the IPv6 packet is sent to the destination address.
  • the device further includes the following features:
  • the message sending module is set to:
  • next hop of the node is not the destination node of the service function path, determine whether to update the service function chain information carried in the IPv6 packet according to the deployment policy, and then send the IPv6 packet to the destination address.
  • the device further includes the following features:
  • the message sending module is set to:
  • the service forwarding path information carried in the IPv6 packet is updated according to the deployment policy, the updated service forwarding path information is parsed, and the IPv6 address of the next hop node of the updated service function path is obtained as the destination address, and the IPv6 is obtained. The message is sent to the destination address.
  • the device further includes the following features:
  • the service forwarding path information includes: service function path information and a service index;
  • the service index is used to identify location information of the current node in the service function path.
  • the device further includes the following features:
  • the message sending module is set to:
  • next hop of the node is not the destination node of the service function path and the service function chain information includes the service forwarding path information
  • the service index in the IPv6 packet is updated, and then the An IPv6 packet is sent to the destination address.
  • the device further includes the following features:
  • the message sending module is set to:
  • the service index in the IPv6 packet is decremented.
  • a computer readable storage medium storing computer executable instructions for performing the method of any of the above.
  • a method and an apparatus for implementing a service function chain encapsulates service function chain information in an IPv6 extension header of an IPv6 packet, and pairs the IPv6 packet along the service function chain. Forwarding can easily deploy and quickly implement business function chain technology in an IPv6 network.
  • Figure 1-1 is a related art SFC technology architecture.
  • Figure 1-2 shows the network service packet header NSH encapsulated by the data plane under the SFC technology in the related art.
  • Figure 1-3 shows the complete packet structure sent from the Classifier component in the SFC technology in the related art.
  • Figure 1-4 is a packet structure of an IPv6 routing extension header in the related art.
  • Figure 1-6 is a format of an IPv6 destination option extension header packet in the related art.
  • 2-1 is a flowchart of a method for implementing a service function chain according to an embodiment of the present invention.
  • 2-2 is a flowchart of another method for implementing a service function chain according to an embodiment of the present invention.
  • 2-3 are schematic structural diagrams of an apparatus for implementing a service function chain according to an embodiment of the present invention.
  • FIGS. 2-4 are schematic structural diagrams of another apparatus for implementing a service function chain according to an embodiment of the present invention.
  • FIG. 3-1 is a related path of an IPv6 routing extension header carrying service function path extended by an embodiment of the present invention. Message reference structure.
  • FIG. 3-2 is a message reference format of an extended IPv6 destination option extension header carrying metadata option according to an embodiment of the present invention.
  • FIG. 3-3 is a reference format of a metadata sub-option message extended in a metadata option message according to an embodiment of the present invention.
  • Figure 3-5 is a service function chain that needs to be implemented in the embodiment of the present invention.
  • FIGS. 3-6 are schematic diagrams of an IPv6 service function chain according to an example 1 of the present invention.
  • FIG. 3-7 is a reference format of an IPv6 routing extension header implemented by the service function path identifier SFPID delivery service function path related information according to an embodiment of the present invention.
  • FIG 3-8 are schematic diagrams of an IPv6 service function chain according to the second example of the present invention (the service function path changes).
  • FIGS 3-9 are schematic diagrams of an IPv6 service function chain of Example 3 of the present invention.
  • IPv6 routing extension header reference formats implemented by the IPv6 global address list delivery service function path related information according to an embodiment of the present invention.
  • FIGS 3-11 are schematic diagrams of an IPv6 service function chain (update service forwarding path on an intermediate node) of the fourth example of the present invention.
  • 3-12 are schematic diagrams of an IPv6 service function chain of Example 5 of the present invention.
  • FIG. 3-13 is a reference format of an IPv6 routing extension header implemented by the segment routing segment routing service function path related information according to an embodiment of the present invention.
  • 3-14 are schematic diagrams of an IPv6 service function chain of Example 6 of the present invention.
  • IPv6 technology defines multiple extension headers for IPv6 packet headers, including Hop-by-Hop options headers, and routing extension headers (Routing). Header), Fragment header, Destination options header, Authentication header, etc.
  • the routing header is mainly used to display the intermediate node information that needs to be experienced in the process of the specified packet reaching the destination node on the IPv6 source node.
  • the format is shown in Figure 1-4, and the Next Header refers to The protocol number of the next packet header, the Routing Type refers to the type of the current routing extension header, and the Segments Left (remaining node) identifies how many nodes need to go through the current node to reach the destination; type-specific data (current The type corresponding data identifies the data information corresponding to the current routing extension header type.
  • a message extension with a Routing Type of 0 is defined.
  • the format is shown in Figure 1-5. Address[1] to Address[n] identifies the IPv6 address information of the intermediate node that needs to go through the destination.
  • the destination options header is mainly used to carry information that the destination node needs to process.
  • An example of an extended header format is shown in Figure 1-6, where the Options field includes multiple TLV (Type-length-value) options.
  • the embodiment of the present invention is based on the IPv6 network, and utilizes the principle of the IPv6 extension header to attempt to implement the simple deployment and implementation of the SFC technology by extending the IPv6 extension header supported by the IPv6 network node.
  • an embodiment of the present invention provides a method for implementing a service function chain, which is applied to a node on a service function chain, and the method includes:
  • S20 Send the IPv6 packet according to service function chain information.
  • the method may also include the following features:
  • the method further includes:
  • the service function chain information is obtained, where the at least one of the following is obtained: obtaining the service function chain information from the local configuration information, and obtaining the service function chain information from the global configuration information sent by the controller;
  • the service function chain information includes at least one of the following information: a service forwarding path Information, metadata information;
  • the service forwarding path information includes: service function path information and a service index;
  • the service function path information includes any one of the following: a service function path identifier, an address list of a node on the service function path, a segment identifier list of a node on the service function path, and a node of the node on the service function path. List of identifiers;
  • the service index is used to identify location information of the current node in the service function path.
  • the service function path identifier is used to uniquely identify a service function path.
  • the method further includes: classifying the traffic;
  • the encapsulating the service function chain information in the IPv6 extension header of the IPv6 packet includes: encapsulating the service function chain information in the IPv6 extension header of the IPv6 packet according to the classification result;
  • sending the IPv6 packet according to the service function chain information including:
  • the IPv6 address of the next hop node is determined according to the obtained service forwarding path information, and the IPv6 address of the next hop node is used as the destination address, and the IPv6 packet is sent to the destination address.
  • the IPv6 extension header used to encapsulate the service forwarding path information may be an IPv6 routing extension header or a newly defined IPv6 extension header;
  • the metadata information may include at least one of the following information: mandatory context data information, and optional context data information;
  • the mandatory context data information includes one or more of the following data: Network Platform Metadata, Network Service Metadata, Service Platform Metadata, and Service Sharing Metadata ( Service Shared Metadata);
  • the network platform metadata is used to identify the network platform level context information shared between the network nodes, such as the inbound interface information and the forwarding environment.
  • the network service metadata is used to identify network layer information shared between network nodes, such as identity, tenant information, and classification results.
  • the service platform metadata is used to identify the service platform level context information shared between the service function nodes, such as a service policy.
  • the service sharing metadata is used to identify service-related context information shared between service function nodes, such as application information, service processing results, and the like;
  • the optional context data information may be different according to actual service scenarios
  • the IPv6 extension header for encapsulating metadata information may be an IPv6 destination option extension header or a newly defined IPv6 extension header;
  • an embodiment of the present invention provides a method for implementing a service function chain, which is applied to a node on a service function chain, and the method includes:
  • the IPv6 address of the next hop node of the service function path is obtained as the destination address, and the IPv6 packet is sent to the destination address.
  • the method may also include the following features:
  • the node on the service function path includes at least one of the following: a service function SF node, and a service function forwarding SFF node;
  • the service function chain information includes at least one of the following information: service forwarding path information and metadata information;
  • the service forwarding path information includes: service function path information and a service index;
  • the service function path information includes any one of the following: a service function path identifier, an address list of a node on the service function path, a segment identifier list of a node on the service function path, and a node of the node on the service function path. List of identifiers;
  • the service index is used to identify location information of the current node in the service function path.
  • the service forwarding path information is encapsulated in an IPv6 routing extension header of the IPv6 packet, or encapsulated in a newly defined IPv6 extension header of the IPv6 packet;
  • the metadata information is encapsulated in an IPv6 destination option extension header of the IPv6 packet, or encapsulated in a newly defined IPv6 extension header of the IPv6 packet;
  • sending the IPv6 packet to the destination address includes:
  • the IPv6 extension header encapsulated with the service function chain information is stripped from the IPv6 packet, and then the IPv6 packet is sent to the Destination address;
  • sending the IPv6 packet to the destination address includes:
  • next hop of the node is not the destination node of the service function path and the service function chain information includes the service forwarding path information, the service index in the IPv6 packet is updated, and then the IPv6 packet is sent to the Destination address;
  • updating the service index in the IPv6 packet including:
  • the service index in the IPv6 packet is decremented
  • sending the IPv6 packet to the destination address includes:
  • next hop of the node is not the destination node of the service function path, determine whether to update the service function chain information carried in the IPv6 packet according to the deployment policy, and then send the IPv6 packet to the destination address;
  • determining, according to the deployment policy, whether to update the service function chain information carried in the IPv6 packet, and then sending the IPv6 packet to the destination address including:
  • the service forwarding path information carried in the IPv6 packet is updated according to the deployment policy, the updated service forwarding path information is parsed, and the IPv6 address of the next hop node of the updated service function path is obtained as the destination address, and the IPv6 is obtained. The message is sent to the destination address.
  • an embodiment of the present invention provides a device for implementing a service function chain, which is applied to a node on a service function chain, and includes:
  • the encapsulating module 21 is configured to: encapsulate the service function chain information in an IPv6 extension header of the IPv6 packet;
  • the sending module 22 is configured to: send the IPv6 packet according to the service function chain information
  • the device may also include the following features:
  • the service function chain information includes at least one of the following information: a service forwarding path Information, metadata information.
  • the IPv6 extension header used to encapsulate the service forwarding path information is an IPv6 routing extension header, or a newly defined IPv6 extension header.
  • the service forwarding path information includes: service function path information and a service index;
  • the service index is used to identify location information of the current node in the service function path.
  • the IPv6 extension header for encapsulating metadata information is an IPv6 destination option extension header or a newly defined IPv6 extension header.
  • the sending module 22 is configured to:
  • the IPv6 address of the next hop node is determined according to the obtained service forwarding path information, and the IPv6 address of the next hop node is used as the destination address, and the IPv6 packet is sent to the destination address.
  • the encapsulation module 21 is further configured to:
  • the traffic is classified, and the service function chain information is encapsulated in the IPv6 extension header of the IPv6 packet according to the classification result.
  • the device further includes:
  • the information acquisition module is configured to: obtain service function chain information.
  • the information obtaining module is configured to: obtain the service function chain information, and include at least one of the following methods:
  • the service function path information includes any one of the following: a service function path identifier, an address list of a node on the service function path, a segment identifier list of a node on the service function path, and a node of the node on the service function path.
  • a service function path identifier an address list of a node on the service function path
  • a segment identifier list of a node on the service function path a node of the node on the service function path.
  • a list of identifiers A list of identifiers.
  • the metadata information includes at least one of the following information: mandatory context data information, and optional context data information.
  • an embodiment of the present invention provides a device for implementing a service function chain, and an application thereof.
  • the nodes on the business function chain including:
  • the packet receiving module 23 is configured to: after receiving the IPv6 packet carrying the service function chain information, parsing the service function chain information;
  • the packet sending module 24 is configured to: obtain an IPv6 address of a next hop node of the service function path as a destination address, and send the IPv6 packet to the destination address.
  • the device may also include the following features:
  • the service function chain information includes at least one of the following information: service forwarding path information, and metadata information.
  • the service forwarding path information is encapsulated in an IPv6 routing extension header of the IPv6 packet, or encapsulated in a newly defined IPv6 extension header of the IPv6 packet;
  • the metadata information is encapsulated in an IPv6 destination option extension header of the IPv6 message or encapsulated in a newly defined IPv6 extension header of the IPv6 message.
  • the message sending module 24 is configured to:
  • the IPv6 extension header encapsulated with the service function chain information is stripped from the IPv6 packet, and then the IPv6 packet is sent to the destination address.
  • the message sending module 24 is configured to:
  • next hop of the node is not the destination node of the service function path, determine whether to update the service function chain information carried in the IPv6 packet according to the deployment policy, and then send the IPv6 packet to the destination address.
  • the message sending module 24 is configured to:
  • the service forwarding path information carried in the IPv6 packet is updated according to the deployment policy, the updated service forwarding path information is parsed, and the IPv6 address of the next hop node of the updated service function path is obtained as the destination address, and the IPv6 is obtained. The message is sent to the destination address.
  • the service forwarding path information includes: service function path information and a service index;
  • the service index is used to identify location information of the current node in the service function path.
  • the message sending module 24 is configured to:
  • next hop of the node is not the destination node of the service function path and the service function chain information includes the service forwarding path information
  • the service index in the IPv6 packet is updated, and then the IPv6 packet is sent to the Destination address.
  • the message sending module 24 is configured to:
  • the service index in the IPv6 packet is decremented.
  • the packet reference format of the IPv6 routing extension header carrying the service function path related information is extended in the embodiment of the present invention, including:
  • Routing Type routing extension header type
  • the embodiment of the present invention extends a routing extension header of type 5;
  • Service Index Business index, equivalent to Segments Left
  • Identifier Type The identification mode of the service forwarding path information.
  • the identification manner of the service forwarding path information may be a service function path identifier, or may be an address list of each node;
  • Service function path information path information used to identify the service forwarding experience
  • the embodiment of the present invention extends an extension of metadata related information based on an IPv6 destination option extension header, and newly defines a metadata option, and carries metadata related information;
  • the metadata option is used to identify a metadata header (Context Header) and/or a variable length optional metadata information carried in the network service header NSH in the current service function chain technology, and the reference format of the metadata option is as follows:
  • Figure 3-2 shows where:
  • MD Option Type identifies the metadata (Medatada) option type
  • Opt Data Len The length of the metadata carried in the Metadata (Medatada) option
  • Option Data identifies the metadata (Medatada) carried by this option.
  • the definition of the metadata sub-option MD Sub-Opt is extended, and the sub-option reference format is as shown in FIG. 3-3, wherein:
  • MD Sub-Opt Type identifies the metadata (Medatada) sub-option Sub-Option type
  • MD Sub-Opt Len The length of the metadata carried in the Metadata (Medatada) sub-option;
  • Sub-Opt Data identifies the metadata (Medatada) carried by the metadata sub-option;
  • Network Platform Metadata sub-option identifies the network platform level context information shared between network nodes, such as inbound interface information, forwarding environment, etc.
  • Network Shared Metadata sub-option identifies network layer information shared between network nodes, such as identity, tenant information, classification results, etc.
  • Service Platform Metadata sub-option identifies the service platform level context information shared between service function SFs, such as business policies;
  • Service Shared Metadata sub-option identifies service-related context information shared between service function SFs, such as application information, business processing results, etc.
  • the service forwarding path that the service function chain experiences is: SFF1->SF2>SFF3->SF5;
  • SF1 and SF2 are connected to SFF1
  • SF3 is connected to SFF2
  • SF4 and SF5 are connected to SFF3
  • Classifier each SFF and SF belong to an intra-IPv6-SFC domain node.
  • the packet is sent from the source node S (Source) to the destination D (Destination).
  • the intermediate node SFF1/SF2/SFF3/SF5 is required.
  • the packet forwarding process is as follows:
  • Step 1 The source node source obtains the information of the service forwarding path of the destination node Destination [SFF1, SF2, SFF3, SF5, Desination] and its corresponding service function path identifier is SFPID1, a total of 5 hops (Service Index); And obtaining metadata related information that needs to be delivered and shared on the service forwarding path, where the path information and the metadata related information may be locally configured or acquired from a controller; where the source node serves as Encapsulating the role of the service path forwarding related information and metadata related information;
  • Step 2 The source node resolves the SFPID1, obtains the information of the first hop node, and further resolves the IPv6 address that is reachable to the route, encapsulates it in the destination address field of the IPv6 packet header, and forwards the path information [SFF1, SF2, The SFPID1 corresponding to the SFF3, SF5, and Destination is encapsulated in the routing extension header defined in the embodiment of the present invention, that is, the packet format is as shown in FIG. 3-7, and the Service Index field is decreased by 1, that is, 4; The metadata related information is encapsulated in the IPv6 destination option extension header;
  • Step 3 The source node forwards the packet to the first hop node SFF1 according to the destination IPv6 address in the IPv6 packet header.
  • the source node searches for the IPv6 routing table, it may also find that the destination IPv6 address needs to pass through the tunnel. Encapsulation or MPLS forwarding arrives; it may also be found that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding;
  • Step 4 After receiving the packet, the SFF1 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID1 information and the Service Index to learn that the current node is the first hop and further acquires the second hop node.
  • the SF2 information is parsed as the IPv6 address that is reachable on the SFF1, and the destination address in the IPv6 packet header is replaced by the address.
  • the Service Index field is decremented by 1, which is 3; at the same time, the metadata in the packet is parsed.
  • the destination IPv6 address is forwarded to the IPv6 routing table for forwarding. It may also be found that the destination node needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding.
  • Step 5 After receiving the packet, the SF2 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID1 information and the Service Index to learn that the current node is the second hop, and further acquires the third hop node.
  • the SFF3 information is parsed as the reachable IPv6 address, and the destination address in the IPv6 packet header is replaced by the address.
  • the Service Index field is decremented by 1, which is 2; at the same time, the metadata information in the packet is parsed to determine whether There is metadata information required by the SF2 node; if there is, the metadata information is read and used, and if it needs to update the metadata information after use, it is updated; if not, the metadata information is not updated; SF2 is based on the updated destination IPv6.
  • the address is searched for the IPv6 routing table for forwarding. It may also be found that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding.
  • Step 6 After receiving the packet, SFF3 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID1 information and the Service Index to learn that the current node is the third hop, and further obtains the fourth hop node.
  • the SF5 information is parsed into an IPv6 address that is reachable on the SFF3, and the destination address in the IPv6 packet header is replaced by the address.
  • the Service Index field is decremented by 1, which is 1.
  • the metadata information in the packet is parsed.
  • the destination IPv6 address is searched for the IPv6 routing table for forwarding. The destination address must be forwarded through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding.
  • Step 7 After receiving the packet, the SF5 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID1 information and the Service Index to learn that the current node is the fourth hop and further acquires the fifth hop node.
  • the destination information is parsed as the reachable IPv6 address, and the destination address in the IPv6 packet header is replaced by the address.
  • the Service Index field is decremented by 1, which is 0.
  • the metadata information in the packet is parsed to determine whether There is metadata information required by the SF5 node; if there is, the metadata information is read and used, and if it needs to update the metadata information after use, it is updated; if not, the metadata information is not updated; further, SF5 finds the Service Index The field is 0, that is, the routing extension header carrying the information related to the service function path and the destination routing extension header carrying the metadata related information are stripped off; then, the SF5 searches the IPv6 routing table according to the destination Destination-IPv6 address. Forwarding; it may also be found that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding;
  • the packet is sent from the source node S (Source) to the destination D (Destination).
  • the intermediate node Classifier/SFF1/SF2/SFF3/SF5 is required.
  • the Classifier is the source node S access.
  • the node that the destination end node D must pass, or the first hop routing forwarding device; at this time, the node that encapsulates the service function path related information and/or the metadata related information is generated on the intermediate node Classifier;
  • SFF3 When the SFF3 is reached, reclassification occurs and the service function path information and/or metadata related information is re-acquired.
  • the forwarding process of the packet is as follows:
  • Step 1 The source node Source checks the IPv6 routing table according to the destination address Destination, and finally the packet is forwarded to the mandatory node Classifier.
  • Step 2 The Classifier node obtains the information of the service forwarding path of the destination node Destination [SFF1, SF2, SFF3, SF5, Desination] and its corresponding SFPID2 identifier, which are 5 hops in total; Metadata related information that is transmitted and shared; the path information may be locally configured or obtained from a controller; where the Classifier node functions as a path for encapsulating the service function path;
  • Step 3 The Classifier node parses the SFPID2, obtains the information of the first hop node, and further resolves the IPv6 address that is reachable to the route, encapsulates it in the destination address field of the IPv6 packet header, and forwards the path information [SFF1, SF2, SFF3).
  • Step 4 The Classifier node forwards the packet to the first hop node SFF1 according to the destination IPv6 address in the IPv6 packet header.
  • the Classifier node searches for the IPv6 routing table, it may also find that the destination IPv6 address needs to be encapsulated through the tunnel or MPLS forwarding arrives; it may also be found that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding;
  • Step 5 After receiving the packet, SFF1 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID2 information and the Service Index to learn that the current node is the first one. Skip, further obtain the SF2 information of the second hop node, resolve to the IPv6 address reachable on the SFF1, and replace the destination address in the IPv6 header with the address, and the Service Index field is decreased by 1, which is 3; The other parts of the IPv6 extension header are parsed and the metadata-related information is not parsed; the SFF1 searches for the IPv6 routing table according to the parsed IPv6 address, and may also find that the SF2 needs to pass the VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding. Arrivals;
  • Step 6 After receiving the packet, SF2 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID2 information and the Service Index to learn that the current node is the second hop, and further acquires the third hop node.
  • the SFF3 information is parsed as the reachable IPv6 address, and the destination address in the IPv6 packet header is replaced by the address.
  • the Service Index field is decremented by 1, which is 2; at the same time, the other parts of the IPv6 extension header are not parsed.
  • SF2 searches for the IPv6 routing table based on the parsed IPv6 address; it may also find that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding.
  • Step 7 After receiving the packet, the SFF3 finds that the destination is itself. At the same time, it is found that the SFF3 needs to be re-classified, so that the information of the service forwarding path of the destination node Destination [SF4, Desination] and its corresponding SFPID3 are re-acquired.
  • the identifier is a total of 2 hops; at the same time, the metadata related information that needs to be delivered and shared on the forwarding path is obtained; the path information and the metadata related information may be locally configured or acquired from the controller; here, SFF3
  • the node parses the information of the first hop node SF4 according to the new service forwarding path related information SFPID3 and the service index 2, and resolves the IPv6 address that is reachable to the route on the SFF3, and replaces the destination address in the IPv6 packet header with the address.
  • Service Index field is decremented by 1, it is 1; at the same time, the information about the original service forwarding path carried by the routing extension header is updated by using the new service forwarding path related information, and the metadata related information is encapsulated to the IPv6 destination option extension. Header; SFF3 searches for the IPv6 routing table based on the parsed IPv6 address; it may also find that the SF4 needs to pass through the VLAN. Encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding arrival;
  • Step 8 After receiving the packet, the SF4 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the SFPID3 information and the Service Index to learn that the current node is the first hop and further obtains the second hop node.
  • the destination information is parsed as the reachable IPv6 address, and the destination address in the IPv6 header is replaced by the address.
  • the Service Index field is decremented by 1.
  • the SF4 finds that the Service Index field is 0, that is, the routing extension header carrying the information related to the service forwarding path and the destination routing extension header carrying the metadata related information are stripped off. Then, SF4 searches for the IPv6 routing table according to the destination Destination-IPv6 address for forwarding; it may also find that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding;
  • the packets sent from the source S to the destination D are required to pass through the intermediate nodes SFF1/SF2/SFF3/SF5, and all the intermediate nodes are globally reachable IPv6 address identifiers.
  • the address is SFF1-IPv6/SF2-IPv6/SFF3-IPv6/SF5-IPv6, and the forwarding process of the packet is as follows:
  • Step 1 The source node source obtains the information of the service forwarding path of the destination node Destination [SFF1, SF2, SFF3, SF5, Desination] and its corresponding global IPv6 address, for a total of 5 hops; meanwhile, the service forwarding path is obtained.
  • Metadata related information that needs to be delivered and shared; the path information and the metadata related information may be locally configured or acquired from a controller;
  • Step 2 The source node obtains the IPv6 address information of the first hop node SFF1, encapsulates it in the destination address field of the IPv6 packet header, and sets the IPv6 address corresponding to the service forwarding path information [SFF1, SF2, SFF3, SF5, Destination].
  • the routing extension header defined in the embodiment of the present invention is encapsulated, that is, the packet format is as shown in FIG. 3-10, and the Service Index field is decreased by 1, that is, 4; at the same time, the metadata related information to be obtained is obtained.
  • Encapsulated in the IPv6 destination option extension header is encapsulated, that is, the packet format is as shown in FIG. 3-10, and the Service Index field is decreased by 1, that is, 4; at the same time, the metadata related information to be obtained is obtained.
  • Step 3 The source node forwards the packet to the first hop node SFF1 according to the destination IPv6 address in the IPv6 packet header.
  • the source node searches for the IPv6 routing table, it may also find that the destination IPv6 address needs to pass through the tunnel. Encapsulation or MPLS forwarding arrives;
  • Step 4 After receiving the packet, SFF1 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the service forwarding path information and the Service Index to learn that the current node is the first hop, and further obtains the second hop. Skip the IPv6 address of the node SF2, and replace the destination address in the IPv6 header with the address.
  • the Service Index field is decremented by 1, which is 3.
  • the metadata related information in the packet is parsed to determine whether there is a SFF1 node.
  • Metadata information if there is, read the metadata information and use it, if it needs to update the metadata information after use, update; if not, update the metadata information; SFF1 finds the IPv6 routing table according to the destination SF2-IPv6 address Forwarding; it may also be found that the destination IPv6 address needs to be reached through tunnel encapsulation or MPLS forwarding;
  • Step 5 After receiving the packet, the SF2 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the service forwarding path information and the Service Index to learn that the current node is the second hop, and further obtains the third hop.
  • the IPv6 address of the node SFF3 is hopped, and the destination address in the IPv6 packet header is replaced by the address.
  • the Service Index field is decremented by 1, which is 2; at the same time, the metadata related information in the packet is parsed to determine whether there is an SF2 node required.
  • Metadata information if there is, read the metadata information and use it, if it needs to update the metadata information after use, update; if not, update the metadata information; SF2 finds the IPv6 routing table according to the destination SFF3-IPv6 address Forwarding; it may also be found that the destination IPv6 address needs to be reached through tunnel encapsulation or MPLS forwarding;
  • Step 6 After receiving the packet, the SFF3 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the service forwarding path information and the Service Index to learn that the current node is the third hop, and further obtains the fourth hop. Skip the IPv6 address of the node SF5, and replace the destination address in the IPv6 packet header with the address.
  • the Service Index field is decremented by 1, which is 1.
  • the metadata related information in the packet is parsed to determine whether there is a SFF3 node.
  • Metadata information if there is, read the metadata information and use it, if it needs to update the metadata information after use, update; if not, update the metadata information; SFF3 finds the IPv6 routing table according to the destination SF5-IPv6 address Forwarding; it may also be found that the destination IPv6 address needs to be reached through tunnel encapsulation or MPLS forwarding;
  • Step 7 After receiving the packet, the SF5 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the service forwarding path information and the Service Index to learn that the current node is the fourth hop, and further obtains the fifth hop. Skip the IPv6 address of the node Destination and replace it with the address The destination address in the IPv6 header is decremented by 1 and is 0. At the same time, the metadata information in the packet is parsed to determine whether there is metadata information required by the SF5 node; if so, the metadata information is read.
  • SF5 finds that the Service Index field is 0, that is, stripping off the information related to the information carrying the service function path The path extension header and the destination routing extension header carrying the metadata related information; the SF5 then forwards the IPv6 routing table according to the destination Destination-IPv6 address; and may also find that the destination IPv6 address needs to be reached through tunnel encapsulation or MPLS forwarding.
  • the packets are sent from the source S to the destination D.
  • the intermediate nodes are Classifier/SFF1/SF2/SFF3/SF5, and the intermediate nodes are globally reachable IPv6 address identifiers.
  • the address is Classifier-IPv6/SFF1-IPv6/SF2-IPv6/SFF3-IPv6/SF5-IPv6; where Classifier is the node through which the source node S accesses the destination node D, or is the first hop route forwarding device;
  • the node that performs the routing extension header encapsulation occurs on the intermediate node Classifier.
  • the packet arrives at SFF3, it finds that the service flow on SF5 is nearly saturated, so the next hop service function is reselected to SF4;
  • the forwarding process is as follows:
  • Step 1 The source node Source checks the IPv6 routing table according to the destination address Destination, and finally the packet is forwarded to the mandatory node Classifier.
  • Step 2 The Classifier node obtains the information of the service forwarding path of the destination node Destination [SFF1, SF2, SFF3, SF5, Desination] and its corresponding global IPv6 address, for a total of 5 hops. At the same time, it needs to obtain the service forwarding path. Transmitting and sharing metadata related information; the path information and the metadata related information may be locally configured or acquired from a controller;
  • Step 3 The Classifier end node obtains the first hop node information, encapsulates it in the destination address field of the IPv6 packet header, and encapsulates the IPv6 address corresponding to the service forwarding path information [SFF1, SF2, SFF3, SF5, Destination] in reverse order.
  • the newly extended routing extension header in the embodiment of the present invention that is, the message grid As shown in Figure 18, the Service Index field is decremented by 1, which is 4; at the same time, the obtained metadata related information is encapsulated in the IPv6 destination option extension header;
  • Step 4 The Classifier node forwards the packet to the first hop node SFF1 according to the destination IPv6 address in the IPv6 packet header.
  • the source node searches for the IPv6 routing table, it may also find that the destination IPv6 address needs to be encapsulated through the tunnel. Or MPLS forwarding arrives;
  • Step 5 is the same as step 4 in the third example.
  • Step 6 is the same as step 5 in the third example.
  • Step 7 After receiving the packet, SFF3 finds that the destination is itself, and then parses the routing extension header in the packet, and finds that the next hop is SF5. At the same time, through various means, it is found that the traffic on the SF5 is almost saturated. Then, the next hop service function is reselected to SF4, and the destination address in the IPv6 header is SF4-IPv6, and the Service Index field is decreased by 1, which is 1. At this time, the SFF3 can select to update the service function path address list.
  • the SFF3 may choose not to update; at the same time, parse the metadata related information in the message to determine whether there is metadata information required by the SFF3 node; if so, read the metadata information and use it, if necessary, update the metadata after use. The information is updated; if not, the metadata information is not updated; the SFF3 searches for the IPv6 routing table according to the destination SF4-IPv6 address, and may also find that the destination IPv6 address needs to be forwarded through tunnel encapsulation or MPLS forwarding;
  • Step 8 After receiving the packet, the SF4 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the service forwarding path information and the Service Index to learn that the current node is the 4th hop, and further obtains the 5th hop.
  • the IPv6 address of the destination node of the hop node is replaced with the destination address in the IPv6 packet header.
  • the service index field is decremented by 1, which is 0.
  • the metadata information in the packet is parsed to determine whether there is a SF4 node required.
  • Metadata information if there is, the metadata information is read and used, and if it needs to update the metadata information after use, it is updated; if not, the metadata information is not updated; further, SF4 finds that the Service Index field is 0, that is, Stripping the routing extension header carrying the information related to the service function path and the destination routing extension header carrying the metadata related information; then, the SF4 searches the IPv6 routing table according to the destination Destination-IPv6 address for forwarding; or may find The destination IPv6 address needs to be reached through tunnel encapsulation or MPLS forwarding.
  • the packets sent from the source S to the destination D need to go through the intermediate nodes SFF1/SF2/SFF3/SF5, and all intermediate nodes have corresponding segment ID (Segment ID/SID) identifiers.
  • the corresponding identifiers are SFF1-SID/SF2-SID/SFF3-SID/SF5-SID, where SFF1-SID and SFF3-SID are node SIDs, and SF2-SID and SF5-SID are service SIDs, then packet forwarding
  • SFF1-SID/SF2-SID/SFF3-SID/SF5-SID are service SIDs
  • Step 1 The source node source obtains the information of the service forwarding path of the destination node Destination [SFF1, SF2, SFF3, SF5, Desination] and its corresponding SID identifier, a total of 5 hops; Metadata related information; the path information and the metadata related may be locally configured, or may be obtained from a controller; where the source node acts as a package routing extension header;
  • Step 2 The source node obtains the first hop node information, that is, the SFF1-SID information, and further resolves the IPv6 address that is reachable to the route, encapsulates it in the destination address field of the IPv6 packet header, and forwards the service path information [SFF1 The SID identifier corresponding to the SF2, SFF3, SF5, and Destination is encapsulated in the routing extension header defined in the embodiment of the present invention in reverse order, that is, the packet format is as shown in FIG. 3-13, and the Service Index field is decreased by 1, that is, 4 ;
  • Step 3 The source node forwards the packet to the first hop node SFF1 according to the destination IPv6 address in the IPv6 packet header.
  • the source node searches for the IPv6 routing table, it may also find that the destination IPv6 address needs to pass through the tunnel. Encapsulation or MPLS forwarding arrives; it may also be found that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding;
  • Step 4 After receiving the packet, SFF1 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the corresponding SF2-SID information, and finds that it is the local service SID, and resolves to be routed on SFF1.
  • the IPv6 address is reached, and the destination address in the IPv6 header is replaced by the address.
  • the Service Index field is decremented by 1, which is 3; SFF1 searches for the IPv6 routing table based on the IPv6 address parsed by the SF2-SID. Arriving at the SF2-SID needs to be reached by VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation or MPLS forwarding;
  • Step 5 After receiving the packet, the SF2 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the corresponding SFF3-SID information, and resolves the IPv6 address that is reachable to the route. Address, and replace the destination address in the IPv6 packet header with the address.
  • the Service Index field is decremented by 1, which is 2; SF2 searches for the IPv6 routing table based on the IPv6 address parsed by the SFF3-SID; it may also find that the destination IPv6 is reached.
  • the address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding.
  • Step 6 After receiving the packet, the SFF3 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the corresponding SF5-SID information, and finds that the local service SID is resolved to be routed on the SFF3.
  • the IPv6 address is reached, and the destination address in the IPv6 header is replaced by the address.
  • the Service Index field is decremented by 1, which is 1; SFF3 searches for the IPv6 routing table based on the IPv6 address parsed by the SF5-SID. Arriving at the SF5-SID needs to be reached by VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation or MPLS forwarding;
  • Step 7 After receiving the packet, the SF5 finds that the destination is itself, and then parses the routing extension header in the packet, and further parses the corresponding Desination-ID information, and resolves the IPv6 address that is reachable to the route, and uses the address. Replace the destination address in the IPv6 packet header.
  • the Service Index field is decremented by 1, which is 0.
  • SF5 finds that the Service Index field is 0, that is, strips the routing extension header. Then, SF5 searches for IPv6 according to the destination Destination-IPv6 address.
  • the routing table is forwarded; it may also be found that the destination IPv6 address needs to be reached through VLAN encapsulation, VXLAN encapsulation, tunnel encapsulation, or MPLS forwarding.
  • the packet is sent from the source S to the destination D.
  • the service forwarding path is Classifier/SFF1/SF2/SFF3/SF5.
  • the destination D is not in the IPv6 SFC domain.
  • the packet is forwarded from the source S to the destination.
  • the packet received by the destination node Destination contains unrecognized metadata option information; at this time, the Destination needs to further process the received packet according to the identifier defined in RFC24604.2:
  • the report is discarded, and the ICMP parameter error message is sent to the source node regardless of whether the destination address of the packet is a multicast address, indicating that there is Type of option not recognized;
  • the report is discarded, and the ICMP parameter error message is sent to the source node only when the destination address of the packet is not a multicast address, indicating that there is The type of option that is not recognized.
  • the method and the device for implementing the service function chain are provided by the foregoing embodiment, and the service function chain information is encapsulated in the IPv6 extension header of the IPv6 packet, and the IPv6 packet is forwarded along the service function chain, and the IPv6 network can be forwarded in the IPv6 network.
  • Simple deployment and rapid implementation of business function chain technology Simple deployment and rapid implementation of business function chain technology.
  • all or part of the steps of the above embodiments may also be implemented by using an integrated circuit. These steps may be separately fabricated into individual integrated circuit modules, or multiple modules or steps may be fabricated into a single integrated circuit module. achieve.
  • the devices/function modules/functional units in the above embodiments may be implemented by a general-purpose computing device, which may be centralized on a single computing device or distributed over a network of multiple computing devices.
  • the device/function module/functional unit in the above embodiment When the device/function module/functional unit in the above embodiment is implemented in the form of a software function module and sold or used as a stand-alone product, it can be stored in a computer readable storage medium.
  • the above mentioned computer readable storage medium may be a read only memory, a magnetic disk or an optical disk or the like.
  • the method and the device for implementing the service function chain are provided by the embodiment of the present invention.
  • the IPv6 packet is encapsulated in the IPv6 extension header of the IPv6 packet, and the IPv6 packet is forwarded along the service function chain. Simple deployment and rapid implementation of business function chain technology in the network.

Abstract

本文公布一种实现业务功能链的方法和装置,所述方法应用于业务功能链上的节点,该方法包括:在IPv6报文的IPv6扩展头中封装业务功能链信息;根据业务功能链信息对所述IPv6报文进行发送。接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。

Description

一种实现业务功能链的方法和装置 技术领域
本申请涉及但不限于通信技术领域。
背景技术
业务功能链(Service Function Chain,SFC)技术,即把所有的业务整合,虚拟出Service overlay层,形成自己的服务拓扑,和底层网络解耦合,不再受到底层网络结构的限制。
SFC架构如图1-1所示,包括如下组件:分类器Classifier,业务功能转发设备(Service Function Forwarder,SFF),业务功能(Service Function,SF),网络业务头代理(Network Service Header Proxy,NSH Proxy)。其中,Classifier负责对流量进行分类,根据分类结果,对流量进行网络业务头(Network Service Header,NSH)的封装,即在Classifier上确定报文后续的业务功能路径,并进一步进行Service overlay层的封装和转发,通过overlay技术将报文转发到下一跳SFF,SFF收到报文,解封装Service overlay层,并对接收到的携带有NSH报文头的报文进行解析,根据NSH头中的信息,将报文转发给相应的SF处理;SF负责对接收到的报文进行相应的业务功能处理,处理完后,进一步更新NSH报文头并将更新后的报文转发给转发报文给自己的SFF;SFF进一步根据NSH报文中的信息查找对应的传输层封装,对NSH报文进行overlay的封装,并将报文转发给下一跳SFF。NSH Proxy主要代表SFF,与不感知NSH报文头的SF进行交互。图1-1中虚线所示为一条业务功能路径(Service Function Path,SFP)。
从控制面来看,SFC的分类规则和业务功能链定义以及NSH由SFC控制器下发或者本地配置;从数据面封装来看,业务功能链的和业务相关的整个NSH如图1-2所示,包括基本头(Base Header),业务路径头(Service Path Header),以及元数据报文头(Context Header);其中,基本头(Base Header)主要标识版本号、长度、元数据类型以及下一个协议号;业务路径头最核心,标识整个业务功能链的业务功能路径相关信息,包括业务功能路径标识 (Service Path ID或Service Function Path ID)和业务索引(Service Index),其中,业务功能路径标识(Service Path ID(SPID)或者Service Function Path ID(SFPID)均是业务功能路径标识)可以是本地配置,也可以是全局下发,一个业务功能路径标识对应一条业务转发路径;节点根据业务功能路径标识和业务索引确认当前报文应该转发到哪一个业务功能链以及哪一个业务功能去处理;上下文数据报文头(Context Header)用于携带上下文信息,用于在分类器Classifier和业务功能SF之间、业务功能SF与业务功能SF之间、业务功能SF和业务功能转发器SFF之间分享信息和传递信息。举例如下,对于使用IPv4-GRE的overlay技术后,从Classifier发送出来的完整报文格式如图1-3所示,即在原始报文original packet外层封装上了NSH头,IPv4-GRE头,L2头。
段路由(Segment Routing,SR)技术也是当前IETF上比较热门的技术,主要原理是通过控制面给SR域内的头节点下发有序的段信息列表,每一个段信息标识报文必须经历的分段,一个有序的段信息列表(Segment Routing List,SR-List)即标识报文需要经历的所有分段;这样,报文到达SR域的头节点时,只需要在报文上添加SR头,后续报文就根据SR头内的SR-List进行转发。进一步地,每一个段segment可以代表一段指令,或者一个拓扑,或者一种业务;SR支持全局属性的段segment,也支持属于某一个节点的本地属性的段segment。当前SR技术中支持的段segment包括:IGP段标识(IGP-SID),Prefix段标识(Prefix-SID),节点段标识(Node-SID),任意播段标识(Anycast SID),邻居段标识(Adj-SID),BGP Peer段标识等。已有的SR技术包括多标签交换路径段路由(MPLS-SR),即应用在IPv4网络中,每一个分段都用一个标签来标识,SR-List就是标签的堆栈,封装在IPv4报文头外面,MPLS-SR域内的报文转发就根据标签栈信息进行转发。
综合上述技术,可以发现,从数据层面讲,SFC技术能在Classifier上根据报文分类结果指定报文经历的业务功能路径标识SFPID,然后在原始报文的外层封装一层NSH报文头,进一步通过overlay技术转发到下一跳SFF上,沿路经过的Classifier,SFF,SF等都需要支持NSH,即使对于不支持NSH的SF,也需要新增加NSH Proxy组件使得支持NSH的SF与不支持NSH 的SF互通;从控制层面讲,需要控制器额外支持SFC域的管控;极大地增加了SFC技术在现网中的部署难度以及部署周期,也极大地增加了网络设备的功能集。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本文提供一种实现业务功能链的方法和装置,能够在IPv6网络中简单部署和快速实现业务功能链技术。
一种实现业务功能链的方法,应用于业务功能链上的节点,该方法包括:
在IPv6报文的IPv6扩展头中封装业务功能链信息;
根据业务功能链信息对所述IPv6报文进行发送。
可选地,该方法还包括下述特点:
所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
可选地,该方法还包括下述特点:
所述用于封装业务转发路径信息的IPv6扩展头是IPv6选路扩展头,或者是新定义的IPv6扩展头。
可选地,该方法还包括下述特点:
所述业务转发路径信息包括:业务功能路径信息和业务索引;
其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
可选地,该方法还包括下述特点:
所述用于封装元数据信息的IPv6扩展头是IPv6目的地选项扩展头,或者是新定义的IPv6扩展头。
可选地,该方法还包括下述特点:
根据业务功能链信息对所述IPv6报文进行发送,包括:
根据获取的业务转发路径信息确定下一跳节点的IPv6地址,将所述下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,该方法还包括下述特点:
在IPv6报文的IPv6扩展头中封装业务功能链信息之前,所述方法还包括:对流量进行分类;
所述在IPv6报文的IPv6扩展头中封装业务功能链信息,包括:根据分类结果在IPv6报文的IPv6扩展头中封装业务功能链信息。
可选地,该方法还包括下述特点:
在IPv6报文的IPv6扩展头中封装所述业务功能链信息之前,所述方法还包括:获取业务功能链信息。
可选地,该方法还包括下述特点:
所述获取业务功能链信息,包括以下至少一种方式:
从本地的配置信息中获取业务功能链信息,从控制器下发的全局配置信息中获取业务功能链信息。
可选地,该方法还包括下述特点:
所述业务功能路径信息包括以下任意一种:业务功能路径标识、业务功能路径上的节点的地址列表、业务功能路径上的节点的段标识列表、业务功能路径上的节点的节点标识列表。
一种实现业务功能链的方法,应用于业务功能链上的节点,该方法包括:
接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;
获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,该方法还包括下述特点:
所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
可选地,该方法还包括下述特点:
所述业务转发路径信息封装在IPv6报文的IPv6选路扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中;
所述元数据信息封装在IPv6报文的IPv6目的地选项扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中。
可选地,该方法还包括下述特点:
将所述IPv6报文发送到所述目的地址,包括:
如本节点的下一跳是业务功能路径的目的节点,则从所述IPv6报文中剥掉封装有业务功能链信息的IPv6扩展头,然后将所述IPv6报文发送到所述目的地址。
可选地,该方法还包括下述特点:
将所述IPv6报文发送到所述目的地址,包括:
如本节点的下一跳不是业务功能路径的目的节点,则根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址。
可选地,该方法还包括下述特点:
根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址,包括:
如根据部署策略更新了IPv6报文中携带的业务转发路径信息,则解析更新后的业务转发路径信息,获取更新后的业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,该方法还包括下述特点:
所述业务转发路径信息包括:业务功能路径信息和业务索引;
其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
可选地,该方法还包括下述特点:
将所述IPv6报文发送到所述目的地址,包括:
如本节点的下一跳不是业务功能路径的目的节点且所述业务功能链信息包含业务转发路径信息,则更新所述IPv6报文中的业务索引,然后将所述IPv6报文发送到所述目的地址。
可选地,该方法还包括下述特点:
更新所述IPv6报文中的业务索引,包括:
如所述业务索引代表当前节点距离业务功能路径的目的节点之间的跳数信息,则将所述IPv6报文中的业务索引递减。
一种实现业务功能链的装置,应用于业务功能链上的节点,包括:
封装模块,设置为:在IPv6报文的IPv6扩展头中封装业务功能链信息;
发送模块,设置为:根据业务功能链信息对所述IPv6报文进行发送。
可选地,该装置还包括下述特点:
所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
可选地,该装置还包括下述特点:
所述用于封装业务转发路径信息的IPv6扩展头是IPv6选路扩展头,或者是新定义的IPv6扩展头。
可选地,该装置还包括下述特点:
所述业务转发路径信息包括:业务功能路径信息和业务索引;
其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
可选地,该装置还包括下述特点:
所述用于封装元数据信息的IPv6扩展头是IPv6目的地选项扩展头,或者是新定义的IPv6扩展头。
可选地,该装置还包括下述特点:
发送模块,是设置为:
根据获取的业务转发路径信息确定下一跳节点的IPv6地址,将所述下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,该装置还包括下述特点:
封装模块,还设置为:
对流量进行分类,根据分类结果在IPv6报文的IPv6扩展头中封装业务功能链信息。
可选地,该装置还包括下述特点:
所述装置还包括:
信息获取模块,设置为:获取业务功能链信息。
可选地,该装置还包括下述特点:
信息获取模块,是设置为:获取业务功能链信息,包括以下至少一种方式:
从本地的配置信息中获取业务功能链信息,从控制器下发的全局配置信息中获取业务功能链信息。
可选地,该装置还包括下述特点:
所述业务功能路径信息包括以下任意一种:业务功能路径标识、业务功能路径上的节点的地址列表、业务功能路径上的节点的段标识列表、业务功能路径上的节点的节点标识列表。
一种实现业务功能链的装置,应用于业务功能链上的节点,包括:
报文接收模块,设置为:接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;
报文发送模块,设置为:获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,该装置还包括下述特点:
所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
可选地,该装置还包括下述特点:
所述业务转发路径信息封装在IPv6报文的IPv6选路扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中;
所述元数据信息封装在IPv6报文的IPv6目的地选项扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中。
可选地,该装置还包括下述特点:
报文发送模块,是设置为:
如本节点的下一跳是业务功能路径的目的节点,则从所述IPv6报文中剥掉封装有业务功能链信息的IPv6扩展头,然后将所述IPv6报文发送到所述目的地址。
可选地,该装置还包括下述特点:
报文发送模块,是设置为:
如本节点的下一跳不是业务功能路径的目的节点,则根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址。
可选地,该装置还包括下述特点:
报文发送模块,是设置为:
如根据部署策略更新了IPv6报文中携带的业务转发路径信息,则解析更新后的业务转发路径信息,获取更新后的业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,该装置还包括下述特点:
所述业务转发路径信息包括:业务功能路径信息和业务索引;
其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
可选地,该装置还包括下述特点:
报文发送模块,是设置为:
如本节点的下一跳不是业务功能路径的目的节点且所述业务功能链信息包含业务转发路径信息,则更新所述IPv6报文中的业务索引,然后将所述 IPv6报文发送到所述目的地址。
可选地,该装置还包括下述特点:
报文发送模块,是设置为:
如所述业务索引代表当前节点距离业务功能路径的目的节点之间的跳数信息,则将所述IPv6报文中的业务索引递减。
一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述任一项的方法。
与相关技术相比,本发明实施例提供的一种实现业务功能链的方法和装置,通过在IPv6报文的IPv6扩展头中封装业务功能链信息,沿着业务功能链对所述IPv6报文进行转发,能够在IPv6网络中简单部署和快速实现业务功能链技术。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图概述
图1-1是相关技术中SFC技术架构。
图1-2是相关技术中SFC技术下数据面封装的网络业务报文头NSH。
图1-3是相关技术中SFC技术下从Classifier组件发送的完整报文结构。
图1-4是相关技术中IPv6选路扩展头报文结构。
图1-5是相关技术中Routing Type=0的IPv6选路扩展头报文结构。
图1-6是相关技术中IPv6目的地选项扩展头报文格式。
图2-1为本发明实施例的一种实现业务功能链的方法的流程图。
图2-2为本发明实施例的另一种实现业务功能链的方法的流程图。
图2-3为本发明实施例的一种实现业务功能链的装置的结构示意图。
图2-4为本发明实施例的另一种实现业务功能链的装置的结构示意图。
图3-1是本发明实施例扩展的IPv6选路扩展头携带业务功能路径相关信 息的报文参考结构。
图3-2是本发明实施例在扩展IPv6目的地选项扩展头携带元数据选项的报文参考格式。
图3-3是本发明实施例在元数据选项报文中扩展的元数据子选项报文参考格式。
图3-4是本发明实施例参考定义的多种类型的元数据子选项。
图3-5是本发明实施例需要实现的业务功能链。
图3-6是本发明示例一的IPv6业务功能链示意图。
图3-7是本发明实施例基于业务功能路径标识SFPID传递业务功能路径相关信息来实现的IPv6选路扩展头参考格式。
图3-8是本发明示例二的IPv6业务功能链示意图(业务功能路径发生变化)。
图3-9是本发明示例三的IPv6业务功能链示意图。
图3-10是本发明实施例基于IPv6全局地址列表传递业务功能路径相关信息来实现的IPv6选路扩展头参考格式。
图3-11是本发明示例四的IPv6业务功能链示意图(中间节点上更新业务转发路径)。
图3-12是本发明示例五的IPv6业务功能链示意图。
图3-13是本发明实施例基于段路由Segment Routing传递业务功能路径相关信息来实现的IPv6选路扩展头参考格式。
图3-14是本发明示例六的IPv6业务功能链示意图。
本发明的实施方式
下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
当前,IPv6技术(RFC2460)中为IPv6报文头部定义了多个扩展头,包括逐跳选项扩展头(Hop-by-Hop options header),选路扩展头(Routing  header),分片扩展头(Fragment header),目的地选项扩展头(Destination options header),认证报文头(Authentication header)等。
其中,选路扩展头(Routing header)主要用于在IPv6源端节点上显示指定报文到达目的节点的过程中需要经历的中间节点信息,其格式如图1-4所示,Next Header是指下一个报文头的协议号,Routing Type是指当前选路扩展头的类型,Segments Left(剩余节点)标识截止到当前节点为止还需要经历多少个节点才到达目的地;type-specific data(当前类型对应数据)标识对应当前选路扩展头类型相应的数据信息。RFC2460中,定义了Routing Type为0的报文扩展,格式如图1-5所示,Address[1]到Address[n]标识了到达目的地需要经历的中间节点的IPv6地址信息。
其中,目的地选项扩展头(Destination options header)主要用于携带目的节点需要处理的信息。扩展头格式的例子如图1-6所示,其中选项(Options)字段包括多个TLV(Type-length-value,类型-长度-值)格式的选项。
本发明实施例基于IPv6网络,利用IPv6扩展头的原理,试图通过扩展IPv6网络节点都支持的IPv6扩展头,以实现SFC技术的简单部署和实现。
如图2-1所示,本发明实施例提供了一种实现业务功能链的方法,应用于业务功能链上的节点,该方法包括:
S10,在IPv6报文的IPv6扩展头中封装业务功能链信息;
S20,根据业务功能链信息对所述IPv6报文进行发送;
所述方法还可以包括下述特点:
可选地,在IPv6报文的IPv6扩展头中封装业务功能链信息之前,还包括:
获取业务功能链信息;
可选地,获取业务功能链信息,包括以下至少一种方式:从本地的配置信息中获取业务功能链信息,从控制器下发的全局配置信息中获取业务功能链信息;
可选地,所述业务功能链信息包括以下信息的至少一种:业务转发路径 信息、元数据信息;
可选地,所述业务转发路径信息包括:业务功能路径信息和业务索引;
可选地,所述业务功能路径信息包括以下任意一种:业务功能路径标识、业务功能路径上的节点的地址列表、业务功能路径上的节点的段标识列表、业务功能路径上的节点的节点标识列表;
其中,业务索引用于标识当前节点在业务功能路径中的位置信息;
其中,所述业务功能路径标识用于唯一标识一条业务功能路径;
可选地,在IPv6报文的IPv6扩展头中封装业务功能链信息之前,所述方法还包括:对流量进行分类;
所述在IPv6报文的IPv6扩展头中封装业务功能链信息,包括:根据分类结果在IPv6报文的IPv6扩展头中封装业务功能链信息;
可选地,根据业务功能链信息对所述IPv6报文进行发送,包括:
根据获取的业务转发路径信息确定下一跳节点的IPv6地址,将所述下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,所述用于封装业务转发路径信息的IPv6扩展头可以是IPv6选路扩展头,或者是新定义的一种IPv6扩展头;
其中,所述元数据信息可包括以下信息的至少一种:强制上下文数据信息、可选上下文数据信息;
其中,强制上下文数据信息包括以下一种或多种数据:网络平台元数据(Network Platform Metadata)、网络业务元数据(Network Service Metadata)、业务平台元数据(Service Platform Metadata)、业务共享元数据(Service Shared Metadata);
其中,网络平台元数据用于标识网络节点之间分享的网络平台级别的上下文信息,比如入接口信息、转发环境等。网络业务元数据用于标识网络节点之间分享的网络层的信息,比如身份标识、租户信息、分类结果等。业务平台元数据用于标识业务功能节点之间分享的业务平台级别的上下文信息,比如业务策略等。业务共享元数据用于标识业务功能节点之间分享的业务相关的上下文信息,比如应用信息,业务处理结果等;
其中,可选上下文数据信息可以根据实际业务场景不同而不同;
可选地,所述用于封装元数据信息的IPv6扩展头可以是IPv6目的地选项扩展头,或者是新定义的一种IPv6扩展头;
如图2-2所示,本发明实施例提供了一种实现业务功能链的方法,应用于业务功能链上的节点,该方法包括:
S30,接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;
S40,获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址;
所述方法还可以包括下述特点:
其中,业务功能路径上的节点包括以下至少一种:业务功能SF节点、业务功能转发SFF节点;
可选地,所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息;
可选地,所述业务转发路径信息包括:业务功能路径信息和业务索引;
可选地,所述业务功能路径信息包括以下任意一种:业务功能路径标识、业务功能路径上的节点的地址列表、业务功能路径上的节点的段标识列表、业务功能路径上的节点的节点标识列表;
其中,业务索引用于标识当前节点在业务功能路径中的位置信息;
可选地,所述业务转发路径信息封装在IPv6报文的IPv6选路扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中;
所述元数据信息封装在IPv6报文的IPv6目的地选项扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中;
可选地,将所述IPv6报文发送到所述目的地址,包括:
如本节点的下一跳是业务功能路径的目的节点,则从所述IPv6报文中剥掉封装有业务功能链信息的IPv6扩展头,然后将所述IPv6报文发送到所述 目的地址;
可选地,将所述IPv6报文发送到所述目的地址,包括:
如本节点的下一跳不是业务功能路径的目的节点且所述业务功能链信息包含业务转发路径信息,则更新所述IPv6报文中的业务索引,然后将所述IPv6报文发送到所述目的地址;
可选地,更新所述IPv6报文中的业务索引,包括:
如所述业务索引代表当前节点距离业务功能路径的目的节点之间的跳数信息,则将所述IPv6报文中的业务索引递减;
可选地,将所述IPv6报文发送到所述目的地址,包括:
如本节点的下一跳不是业务功能路径的目的节点,则根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址;
可选地,根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址,包括:
如根据部署策略更新了IPv6报文中携带的业务转发路径信息,则解析更新后的业务转发路径信息,获取更新后的业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
如图2-3所示,本发明实施例提供了一种实现业务功能链的装置,应用于业务功能链上的节点,包括:
封装模块21,设置为:在IPv6报文的IPv6扩展头中封装业务功能链信息;
发送模块22,设置为:根据业务功能链信息对所述IPv6报文进行发送;
所述装置还可以包括下述特点:
可选地,所述业务功能链信息包括以下信息的至少一种:业务转发路径 信息、元数据信息。
可选地,所述用于封装业务转发路径信息的IPv6扩展头是IPv6选路扩展头,或者是新定义的IPv6扩展头。
可选地,所述业务转发路径信息包括:业务功能路径信息和业务索引;
其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
可选地,所述用于封装元数据信息的IPv6扩展头是IPv6目的地选项扩展头,或者是新定义的IPv6扩展头。
可选地,发送模块22,是设置为:
根据获取的业务转发路径信息确定下一跳节点的IPv6地址,将所述下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,封装模块21,还设置为:
对流量进行分类,根据分类结果在IPv6报文的IPv6扩展头中封装业务功能链信息。
可选地,所述装置还包括:
信息获取模块,设置为:获取业务功能链信息。
可选地,信息获取模块,是设置为:获取业务功能链信息,包括以下至少一种方式:
从本地的配置信息中获取业务功能链信息,从控制器下发的全局配置信息中获取业务功能链信息。
可选地,所述业务功能路径信息包括以下任意一种:业务功能路径标识、业务功能路径上的节点的地址列表、业务功能路径上的节点的段标识列表、业务功能路径上的节点的节点标识列表。
可选地,所述元数据信息包括以下信息的至少一种:强制上下文数据信息、可选上下文数据信息。
如图2-4所示,本发明实施例提供了一种实现业务功能链的装置,应用 于业务功能链上的节点,包括:
报文接收模块23,设置为:接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;
报文发送模块24,设置为:获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址
所述装置还可以包括下述特点:
可选地,所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
可选地,所述业务转发路径信息封装在IPv6报文的IPv6选路扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中;
所述元数据信息封装在IPv6报文的IPv6目的地选项扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中。
可选地,报文发送模块24,是设置为:
如本节点的下一跳是业务功能路径的目的节点,则从所述IPv6报文中剥掉封装有业务功能链信息的IPv6扩展头,然后将所述IPv6报文发送到所述目的地址。
可选地,报文发送模块24,是设置为:
如本节点的下一跳不是业务功能路径的目的节点,则根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址。
可选地,报文发送模块24,是设置为:
如根据部署策略更新了IPv6报文中携带的业务转发路径信息,则解析更新后的业务转发路径信息,获取更新后的业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
可选地,所述业务转发路径信息包括:业务功能路径信息和业务索引;
其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
可选地,报文发送模块24,是设置为:
如本节点的下一跳不是业务功能路径的目的节点且所述业务功能链信息包含业务转发路径信息,则更新所述IPv6报文中的业务索引,然后将所述IPv6报文发送到所述目的地址。
可选地,报文发送模块24,是设置为:
如所述业务索引代表当前节点距离业务功能路径的目的节点之间的跳数信息,则将所述IPv6报文中的业务索引递减。
实施方式
如图3-1所示,本发明实施例扩展IPv6选路扩展头携带业务功能路径相关信息的报文参考格式,包括:
Routing Type:选路扩展头类型;
其中,本发明实施例扩展了一种类型为5的选路扩展头;
Service Index:业务索引,等同于Segments Left;
Identifier Type(标识类型):业务转发路径信息的标识方式;
其中,业务转发路径信息的标识方式可以是业务功能路径标识,也可以是每个节点的地址列表;
业务功能路径信息:用于标识业务转发经历的路径信息;
如图3-2所示,本发明实施例基于IPv6目的地选项扩展头携带元数据相关信息的扩展,新定义元数据选项,携带元数据相关信息;
其中,所述元数据选项用于标识当前业务功能链技术中网络业务头NSH中携带的元数据报文头(Context Header)和/或变长可选元数据信息,元数据选项的参考格式如图3-2所示,其中:
MD Option Type:标识元数据(Medatada)选项类型;
Opt Data Len:标识元数据(Medatada)选项中携带的元数据长度;
Option Data:标识该选项携带的元数据(Medatada);
进一步地,在该元数据选项中扩展元数据子选项MD Sub-Opt的定义,子选项参考格式如图3-3所示,其中:
MD Sub-Opt Type:标识元数据(Medatada)子选项Sub-Option类型;
MD Sub-Opt Len:标识元数据(Medatada)子选项中携带的元数据长度;
Sub-Opt Data:标识元数据子选项携带的元数据(Medatada);
进一步地,当前定义的元数据子选项如图3-4所示,包括但不限于如下:
网络平台相关元数据(Network Platform Metadata)子选项:标识网络节点之间分享的网络平台级别的上下文信息,比如入接口信息、转发环境等;
网络共享元数据(Network Shared Metadata)子选项:标识网络节点之间分享的网络层的信息,比如身份标识、租户信息、分类结果等;
业务平台相关元数据(Service Platform Metadata)子选项:标识业务功能SFs之间分享的业务平台级别的上下文信息,比如业务策略等;
业务共享元数据(Service Shared Metadata)子选项:标识业务功能SFs之间分享的业务相关的上下文信息,比如应用信息,业务处理结果等;
其他相关元数据等;
如图3-5所示,业务功能链所经历的业务转发路径为:SFF1->SF2>SFF3->SF5;
其中,SF1和SF2连接至SFF1,SF3连接至SFF2,SF4和SF5连接至SFF3;Classifier、每个SFF和SF属于IPv6-SFC域内节点。
示例一
如图3-6所示,报文从源端节点S(Source)发送到目的端D(Destination),需要经历中间节点SFF1/SF2/SFF3/SF5,则报文的转发流程如下:
步骤1:源端节点Source获取到目的端节点Destination的业务转发路径的信息[SFF1,SF2,SFF3,SF5,Desination]以及其对应的业务功能路径标识为SFPID1,一共5跳(Service Index);同时,获取到该业务转发路径上需要传递和分享的元数据相关信息,所述路径信息和所述元数据相关信息可以是本地配置,也可以是从控制器获取;此处,源端节点担任了封装业务路径转发相关信息和元数据相关信息的角色;
步骤2:源端节点解析SFPID1,获取第一跳节点信息,并进一步解析为路由可达的IPv6地址,封装在IPv6报文头的目的地址字段中,并将业务转发路径信息[SFF1,SF2,SFF3,SF5,Destination]对应的SFPID1封装在本发明实施例定义的选路扩展头中,即报文格式如图3-7所示,Service Index字段减1,即为4;同时,将获取到的元数据相关信息封装在IPv6目的地选项扩展头中;
步骤3:源端节点按照IPv6报文头中的目的IPv6地址进行转发,转发到第一跳节点SFF1上;当然,源端节点查找IPv6路由转发表时,也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤4:SFF1收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID1信息和Service Index,获知当前节点是第1跳,进一步获取第2跳节点SF2信息,解析为在SFF1上路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为3;同时,解析报文中的元数据相关信息,判断是否有SFF1节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SFF1根据更新后的目的IPv6地址查找IPv6路由表进行转发;也可能发现到达目的节点需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤5:SF2收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID1信息和Service Index,获知当前节点是第2跳,进一步获取第3跳节点SFF3信息,解析为路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为2;同时,解析报文中的元数据信息,判断是否有SF2节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SF2根据更新后的目的IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤6:SFF3收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID1信息和Service Index,获知当前节点是第3跳,进一步获取第4跳节点SF5信息,解析为在SFF3上路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为1;同时,解析报文中的元数据信息,判断是否有SFF3节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SFF3根据更新的目的IPv6地址查找IPv6路由表进行转发;也可能发现到达目的地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤7:SF5收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID1信息和Service Index,获知当前节点是第4跳,进一步获取第5跳节点Destination信息,解析为路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为0;同时,解析报文中的元数据信息,判断是否有SF5节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;进一步地,SF5发现Service Index字段为0,即剥除掉此携带有业务功能路径相关信息的选路扩展头和携带有元数据相关信息的目的地选路扩展头;然后,SF5根据目的Destination-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
示例二
如图3-8所示,报文从源端节点S(Source)发送到目的端D(Destination),需要经历中间节点Classifier/SFF1/SF2/SFF3/SF5,其中,Classifier是源端节点S访问目的端节点D必经的节点,或者是第一跳路由转发设备;此时,进行业务功能路径相关信息封装和/或元数据相关信息封装的节点发生在中间节点Classifier上;而且,报文在到达SFF3时,会发生重新分类,重新获取业务功能路径信息和/或元数据相关信息;则报文的转发流程如下:
步骤1:源端节点Source根据目的地址Destination查IPv6路由表,最终报文转发到必经节点Classifier上;
步骤2:Classifier节点获取到目的端节点Destination的业务转发路径的信息[SFF1,SF2,SFF3,SF5,Desination]以及其对应的SFPID2标识,一共5跳;同时,未获取到该业务转发路径上需要传递和分享的元数据相关信息;所述路径信息可以是本地配置,也可以是从控制器获取;此处,Classifier节点担任了封装业务功能路径相关信息的角色;
步骤3:Classifier节点解析SFPID2,获取第一跳节点信息,并进一步解析为路由可达的IPv6地址,封装在IPv6报文头的目的地址字段中,并将业务转发路径信息[SFF1,SF2,SFF3,SF5,Destination]对应的SFPID2封装在本发明实施例定义的选路扩展头内,Service Index字段减1,即为4;
步骤4:Classifier节点按照IPv6报文头中的目的IPv6地址进行转发,转发到第一跳节点SFF1上;当然,Classifier节点查找IPv6路由转发表时,也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤5:SFF1收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID2信息和Service Index,获知当前节点是第1 跳,进一步获取第2跳节点SF2信息,解析为在SFF1上路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为3;同时,解析IPv6扩展头的其他部分,没有解析到元数据相关信息;SFF1根据解析出来的IPv6地址查找IPv6路由表进行转发;也可能发现到达所述SF2需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤6:SF2收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID2信息和Service Index,获知当前节点是第2跳,进一步获取第3跳节点SFF3信息,解析为路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为2;同时,解析IPv6扩展头的其他部分,没有解析到元数据相关信息;SF2根据解析出来的IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤7:SFF3收到报文后,发现目的地是自己,同时发现,SFF3上需要进行重新分类,于是重新获取到目的端节点Destination的业务转发路径的信息[SF4,Desination]以及其对应的SFPID3标识,一共2跳;同时,获取到此转发路径上需要传递和分享的元数据相关信息;所述路径信息和元数据相关信息可以是本地配置,也可以是从控制器获取;此处,SFF3节点根据新的业务转发路径相关信息SFPID3和业务索引2,解析出第1跳节点SF4的信息,解析为SFF3上路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为1;同时,使用新的业务转发路径相关信息更新掉选路扩展头携带的原来的业务转发路径相关信息,并封装上元数据相关信息到IPv6目的地选项扩展头;SFF3根据解析出来的IPv6地址查找IPv6路由表进行转发;也可能发现到达所述SF4需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤8:SF4收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析SFPID3信息和Service Index,获知当前节点是第1跳,进一步获取第2跳节点Destination信息,解析为路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为 0;同时,解析报文中的元数据信息,判断是否有SF2节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;进一步地,SF4发现Service Index字段为0,即剥除掉此携带有业务转发路径相关信息的选路扩展头和携带有元数据相关信息的目的地选路扩展头;然后,SF4根据目的Destination-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
示例三
如图3-9所示,报文从源端S发送到目的端D,需要经历中间节点SFF1/SF2/SFF3/SF5,且所有中间节点均是全局可达的IPv6地址标识,分别对应的IPv6地址为SFF1-IPv6/SF2-IPv6/SFF3-IPv6/SF5-IPv6,则报文的转发流程如下:
步骤1:源端节点Source获取到目的端节点Destination的业务转发路径的信息[SFF1,SF2,SFF3,SF5,Desination]以及其对应的全局IPv6地址,一共5跳;同时,获取到该业务转发路径上需要传递和分享的元数据相关信息;所述路径信息和所述元数据相关信息可以是本地配置,也可以是从控制器获取;
步骤2:源端节点获取第一跳节点SFF1的IPv6地址信息,封装在IPv6报文头的目的地址字段中,并将业务转发路径信息[SFF1,SF2,SFF3,SF5,Destination]对应的IPv6地址按照逆序封装在本发明实施例定义新扩展的选路扩展头内,即报文格式如图3-10所示,Service Index字段减1,即为4;同时,将获取到的元数据相关信息封装在IPv6目的地选项扩展头中;
步骤3:源端节点按照IPv6报文头中的目的IPv6地址进行转发,转发到第一跳节点SFF1上;当然,源端节点查找IPv6路由转发表时,也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;
步骤4:SFF1收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析业务转发路径信息和Service Index,获知当前节点是第1跳,进一步获取第2跳节点SF2的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为3;同时,解析报文中的元数据相关信息,判断是否有SFF1节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SFF1根据目的SF2-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;
步骤5:SF2收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析业务转发路径信息和Service Index,获知当前节点是第2跳,进一步获取第3跳节点SFF3的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为2;同时,解析报文中的元数据相关信息,判断是否有SF2节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SF2根据目的SFF3-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;
步骤6:SFF3收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析业务转发路径信息和Service Index,获知当前节点是第3跳,进一步获取第4跳节点SF5的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为1;同时,解析报文中的元数据相关信息,判断是否有SFF3节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SFF3根据目的SF5-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;
步骤7:SF5收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析业务转发路径信息和Service Index,获知当前节点是第4跳,进一步获取第5跳节点Destination的IPv6地址,并以该地址替换掉 IPv6报文头中的目的地址,Service Index字段减1,即为0;同时,解析报文中的元数据信息,判断是否有SF5节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;进一步地,SF5发现Service Index字段为0,即剥除掉此携带有业务功能路径相关信息的选路扩展头和携带有元数据相关信息的目的地选路扩展头;然后,SF5根据目的Destination-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达。
示例四
如图3-11所示,报文从源端S发送到目的端D,需要经历中间节点Classifier/SFF1/SF2/SFF3/SF5,且中间节点均是全局可达的IPv6地址标识,对应的IPv6地址为Classifier-IPv6/SFF1-IPv6/SF2-IPv6/SFF3-IPv6/SF5-IPv6;其中,Classifier是源端节点S访问目的端节点D必经的节点,或者是第一跳路由转发设备;此时,进行选路扩展头封装的节点发生在中间节点Classifier上;而且,报文在到达SFF3时,发现SF5上业务流几近饱和,于是重新选择下一跳业务功能到SF4;则报文的转发流程如下:
步骤1:源端节点Source根据目的地址Destination查IPv6路由表,最终报文转发到必经节点Classifier上;
步骤2:Classifier节点获取到目的端节点Destination的业务转发路径的信息[SFF1,SF2,SFF3,SF5,Desination]以及其对应的全局IPv6地址,一共5跳;同时,获取到该业务转发路径上需要传递和分享的元数据相关信息;所述路径信息和所述元数据相关信息可以是本地配置,也可以是从控制器获取;
步骤3:Classifier端节点获取第一跳节点信息,封装在IPv6报文头的目的地址字段中,并将业务转发路径信息[SFF1,SF2,SFF3,SF5,Destination]对应的IPv6地址按照逆序封装在本发明实施例新扩展的选路扩展头内,即报文格 式如图18所示,Service Index字段减1,即为4;同时,将获取到的元数据相关信息封装在IPv6目的地选项扩展头中;
步骤4:Classifier节点按照IPv6报文头中的目的IPv6地址进行转发,转发到第一跳节点SFF1上;当然,源端节点查找IPv6路由转发表时,也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;
步骤5同示例三中步骤4;
步骤6同示例三中步骤5;
步骤7:SFF3收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,发现下一跳为SF5,同时,通过各种手段,发现SF5上面的业务流量几近饱和,于是重新选择下一跳业务功能到SF4,并更新IPv6报文头中的目的地址为SF4-IPv6,Service Index字段减1,即为1;此时,SFF3上可以选择更新业务功能路径地址列表,也可以选择不更新;同时,解析报文中的元数据相关信息,判断是否有SFF3节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;SFF3根据目的SF4-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;
步骤8:SF4收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析业务转发路径信息和Service Index,获知当前节点是第4跳,进一步获取第5跳节点Destination的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为0;同时,解析报文中的元数据信息,判断是否有SF4节点需要的元数据信息;如果有,则读取元数据信息并使用,使用完后如果需要更新元数据信息则更新;如果没有,则不更新元数据信息;进一步地,SF4发现Service Index字段为0,即剥除掉此携带有业务功能路径相关信息的选路扩展头和携带有元数据相关信息的目的地选路扩展头;然后,SF4根据目的Destination-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达。
示例五
如图3-12所示,报文从源端S发送到目的端D,需要经历中间节点SFF1/SF2/SFF3/SF5,且所有中间节点均有相应的段ID(Segment ID/SID)标识,分别对应的标识为SFF1-SID/SF2-SID/SFF3-SID/SF5-SID,其中,SFF1-SID和SFF3-SID是节点SID,SF2-SID和SF5-SID是业务SID,则报文的转发流程如下:
步骤1:源端节点Source获取到目的端节点Destination的业务转发路径的信息[SFF1,SF2,SFF3,SF5,Desination]以及其对应的SID标识,一共5跳;同时,未获取此业务转发路径对应的元数据相关信息;所述路径信息和所述元数据相关可以是本地配置,也可以是从控制器获取;此处,源端节点担任了封装选路扩展头的角色;
步骤2:源端节点获取第一跳节点信息,即SFF1-SID信息,并进一步解析为路由可达的IPv6地址,封装在IPv6报文头的目的地址字段中,并将业务转发路径信息[SFF1,SF2,SFF3,SF5,Destination]对应的SID标识按照逆序封装在本发明实施例定义的选路扩展头内,即报文格式如图3-13所示,Service Index字段减1,即为4;
步骤3:源端节点按照IPv6报文头中的目的IPv6地址进行转发,转发到第一跳节点SFF1上;当然,源端节点查找IPv6路由转发表时,也可能发现到达目的IPv6地址需要通过隧道封装或者MPLS转发到达;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤4:SFF1收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析对应的SF2-SID信息,发现是本地业务SID,解析为在SFF1上路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为3;SFF1根据SF2-SID解析出来的IPv6地址查找IPv6路由表进行转发;也可能发现到达所述SF2-SID需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤5:SF2收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析对应的SFF3-SID信息,解析为路由可达的IPv6地 址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为2;SF2根据SFF3-SID解析出来的IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤6:SFF3收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析对应的SF5-SID信息,发现是本地业务SID,解析为在SFF3上路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为1;SFF3根据SF5-SID解析出来的IPv6地址查找IPv6路由表进行转发;也可能发现到达所述SF5-SID需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达;
步骤7:SF5收到报文后,发现目的地是自己,于是解析报文中的选路扩展头,并进一步解析对应的Desination-ID信息,解析为路由可达的IPv6地址,并以该地址替换掉IPv6报文头中的目的地址,Service Index字段减1,即为0;SF5发现Service Index字段为0,即剥除掉此选路扩展头;然后,SF5根据目的Destination-IPv6地址查找IPv6路由表进行转发;也可能发现到达目的IPv6地址需要通过VLAN封装、VXLAN封装、隧道封装或者MPLS转发到达。
示例六
如图3-14所示,报文从源端S发送到目的端D,业务转发路径为Classifier/SFF1/SF2/SFF3/SF5,目的端D不在IPv6SFC域内;报文从源端S转发到目的端D时,目的端节点Destination收到的报文中携带了无法识别的元数据选项信息;此时,Destination需要进一步根据RFC24604.2章节中定义的标识对收到的报文进行处理:
当元数据选项的MD Option Type字段中最高2位为00时,则忽略此选项;
当元数据选项的MD Option Type字段中最高2位为01时,则丢弃该报文;
当元数据选项的MD Option Type字段中最高2位为10时,则丢弃该报,并且,无论该报文的目的地址是否为组播地址,都发送ICMP参数错误消息给源端节点,指出有不识别的选项类型;
当元数据选项的MD Option Type字段中最高2位为11时,则丢弃该报,并且,只有当该报文的目的地址不是组播地址,才发送ICMP参数错误消息给源端节点,指出有不识别的选项类型。
上述实施例提供的一种实现业务功能链的方法和装置,通过在IPv6报文的IPv6扩展头中封装业务功能链信息,沿着业务功能链对所述IPv6报文进行转发,能够在IPv6网络中简单部署和快速实现业务功能链技术。
本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。
上述实施例中的装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
上述实施例中的装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。
工业实用性
本发明实施例提供的一种实现业务功能链的方法和装置,通过在IPv6报文的IPv6扩展头中封装业务功能链信息,沿着业务功能链对所述IPv6报文进行转发,能够在IPv6网络中简单部署和快速实现业务功能链技术。

Claims (22)

  1. 一种实现业务功能链的方法,应用于业务功能链上的节点,该方法包括:
    在IPv6报文的IPv6扩展头中封装业务功能链信息;
    根据业务功能链信息对所述IPv6报文进行发送。
  2. 如权利要求1所述的方法,其中:
    所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
  3. 如权利要求2所述的方法,其中:
    所述用于封装业务转发路径信息的IPv6扩展头是IPv6选路扩展头,或者是新定义的IPv6扩展头。
  4. 如权利要求3所述的方法,其中:
    所述业务转发路径信息包括:业务功能路径信息和业务索引;
    其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
  5. 如权利要求2所述的方法,其中:
    所述用于封装元数据信息的IPv6扩展头是IPv6目的地选项扩展头,或者是新定义的IPv6扩展头。
  6. 如权利要求2-5中任一项所述的方法,其中:
    根据业务功能链信息对所述IPv6报文进行发送,包括:
    根据获取的业务转发路径信息确定下一跳节点的IPv6地址,将所述下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
  7. 如权利要求1-5中任一项所述的方法,其中:
    在IPv6报文的IPv6扩展头中封装业务功能链信息之前,所述方法还包括:对流量进行分类;
    所述在IPv6报文的IPv6扩展头中封装业务功能链信息,包括:根据分类结果在IPv6报文的IPv6扩展头中封装业务功能链信息。
  8. 如权利要求1-5中任一项所述的方法,其中,在IPv6报文的IPv6扩展头中封装所述业务功能链信息之前,所述方法还包括:
    获取业务功能链信息。
  9. 如权利要求8所述的方法,其中,
    所述获取业务功能链信息,包括以下至少一种方式:
    从本地的配置信息中获取业务功能链信息,从控制器下发的全局配置信息中获取业务功能链信息。
  10. 如权利要求4-5中任一项所述的方法,其中:
    所述业务功能路径信息包括以下任意一种:业务功能路径标识、业务功能路径上的节点的地址列表、业务功能路径上的节点的段标识列表、业务功能路径上的节点的节点标识列表。
  11. 一种实现业务功能链的方法,应用于业务功能链上的节点,该方法包括:
    接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;
    获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
  12. 如权利要求11所述的方法,其中:
    所述业务功能链信息包括以下信息的至少一种:业务转发路径信息、元数据信息。
  13. 如权利要求12所述的方法,其中:
    所述业务转发路径信息封装在IPv6报文的IPv6选路扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中;
    所述元数据信息封装在IPv6报文的IPv6目的地选项扩展头中,或封装在IPv6报文的新定义的IPv6扩展头中。
  14. 如权利要求13所述的方法,其中:
    将所述IPv6报文发送到所述目的地址,包括:
    如本节点的下一跳是业务功能路径的目的节点,则从所述IPv6报文中剥掉封装有业务功能链信息的IPv6扩展头,然后将所述IPv6报文发送到所述目的地址。
  15. 如权利要求11或12或13所述的方法,其中:
    将所述IPv6报文发送到所述目的地址,包括:
    如本节点的下一跳不是业务功能路径的目的节点,则根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址。
  16. 如权利要求15所述的方法,其中:
    根据部署策略确定是否更新所述IPv6报文中携带的业务功能链信息,然后将所述IPv6报文发送到所述目的地址,包括:
    如根据部署策略更新了IPv6报文中携带的业务转发路径信息,则解析更新后的业务转发路径信息,获取更新后的业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
  17. 如权利要求12或13所述的方法,其中:
    所述业务转发路径信息包括:业务功能路径信息和业务索引;
    其中,所述业务索引用于标识当前节点在业务功能路径中的位置信息。
  18. 如权利要求17所述的方法,其中:
    将所述IPv6报文发送到所述目的地址,包括:
    如本节点的下一跳不是业务功能路径的目的节点且所述业务功能链信息包含业务转发路径信息,则更新所述IPv6报文中的业务索引,然后将所述 IPv6报文发送到所述目的地址。
  19. 如权利要求18所述的方法,其中:
    更新所述IPv6报文中的业务索引,包括:
    如所述业务索引代表当前节点距离业务功能路径的目的节点之间的跳数信息,则将所述IPv6报文中的业务索引递减。
  20. 一种实现业务功能链的装置,应用于业务功能链上的节点,包括:
    封装模块,设置为:在IPv6报文的IPv6扩展头中封装业务功能链信息;
    发送模块,设置为:根据业务功能链信息对所述IPv6报文进行发送。
  21. 一种实现业务功能链的装置,应用于业务功能链上的节点,包括:
    报文接收模块,设置为:接收到携带有业务功能链信息的IPv6报文后,解析所述业务功能链信息;
    报文发送模块,设置为:获取业务功能路径的下一跳节点的IPv6地址作为目的地址,将所述IPv6报文发送到所述目的地址。
  22. 一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1-19任一项的方法。
PCT/CN2016/074458 2015-07-02 2016-02-24 一种实现业务功能链的方法和装置 WO2016165492A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP16779467.6A EP3319278A4 (en) 2015-07-02 2016-02-24 Method and apparatus for implementing service function chain
US15/740,345 US20180198705A1 (en) 2015-07-02 2016-02-24 Method and apparatus for implementing service function chain

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510383483.2 2015-07-02
CN201510383483.2A CN106330714B (zh) 2015-07-02 2015-07-02 一种实现业务功能链的方法和装置

Publications (1)

Publication Number Publication Date
WO2016165492A1 true WO2016165492A1 (zh) 2016-10-20

Family

ID=57127144

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/074458 WO2016165492A1 (zh) 2015-07-02 2016-02-24 一种实现业务功能链的方法和装置

Country Status (4)

Country Link
US (1) US20180198705A1 (zh)
EP (1) EP3319278A4 (zh)
CN (1) CN106330714B (zh)
WO (1) WO2016165492A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988266A (zh) * 2019-05-24 2020-11-24 华为技术有限公司 一种处理报文的方法
CN112787921A (zh) * 2019-11-08 2021-05-11 华为技术有限公司 报文传输方法、代理节点及存储介质

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
US10225137B2 (en) 2014-09-30 2019-03-05 Nicira, Inc. Service node selection by an inline service switch
US9825810B2 (en) 2014-09-30 2017-11-21 Nicira, Inc. Method and apparatus for distributing load among a plurality of service nodes
US9774537B2 (en) 2014-09-30 2017-09-26 Nicira, Inc. Dynamically adjusting load balancing
US10594743B2 (en) 2015-04-03 2020-03-17 Nicira, Inc. Method, apparatus, and system for implementing a content switch
KR102059971B1 (ko) * 2015-09-30 2019-12-27 후아웨이 테크놀러지 컴퍼니 리미티드 데이터 라우팅 방법 및 장치
US10158568B2 (en) * 2016-02-12 2018-12-18 Huawei Technologies Co., Ltd. Method and apparatus for service function forwarding in a service domain
CN107453884B (zh) * 2016-05-30 2020-01-10 华为技术有限公司 一种网络设备的服务质量检测方法和装置
EP3468112A4 (en) * 2016-07-01 2019-05-08 Huawei Technologies Co., Ltd. METHOD, DEVICE AND SYSTEM FOR RETRIEVING A PACKAGE IN SERVICE CHAINING
CN114244771A (zh) * 2017-07-07 2022-03-25 华为技术有限公司 Pecp分段路由路径分段标签绑定扩展
US10454822B2 (en) * 2017-07-27 2019-10-22 Cisco Technology, Inc. Full-path validation in segment routing
CN109661037B (zh) * 2017-10-12 2023-07-04 中兴通讯股份有限公司 一种sfc报文转发方法及设备
US10797966B2 (en) * 2017-10-29 2020-10-06 Nicira, Inc. Service operation chaining
US11012420B2 (en) 2017-11-15 2021-05-18 Nicira, Inc. Third-party service chaining using packet encapsulation in a flow-based forwarding element
CN109802888B (zh) * 2017-11-16 2021-11-09 中兴通讯股份有限公司 一种基于任播地址保护的方法及装置
CN109922002A (zh) * 2017-12-13 2019-06-21 中国电信股份有限公司 基于SFC的业务数据转发方法以及Overlay系统
CN109962847B (zh) * 2017-12-14 2021-07-30 中国电信股份有限公司 业务功能链报文的封装方法和装置及计算机可读存储介质
CN109995655A (zh) * 2018-01-03 2019-07-09 中兴通讯股份有限公司 一种实现无缝最优跨域路径的方法及装置
US10797910B2 (en) 2018-01-26 2020-10-06 Nicira, Inc. Specifying and utilizing paths through a network
US10805192B2 (en) 2018-03-27 2020-10-13 Nicira, Inc. Detecting failure of layer 2 service using broadcast messages
CN110661674A (zh) * 2018-06-29 2020-01-07 中国电信股份有限公司 检测业务链连通性的方法和系统
US10944673B2 (en) 2018-09-02 2021-03-09 Vmware, Inc. Redirection of data messages at logical network gateway
US11595250B2 (en) 2018-09-02 2023-02-28 Vmware, Inc. Service insertion at logical network gateway
CN110971433B (zh) * 2018-09-29 2022-02-22 华为技术有限公司 获取SRv6隧道信息的方法、设备和系统
CN109379359B (zh) * 2018-10-19 2021-09-07 苏州盛科通信股份有限公司 SRv6数据包的处理方法和装置
CN111147379A (zh) * 2018-11-02 2020-05-12 中国电信股份有限公司 数据传输方法、系统和相关设备
US10805221B2 (en) * 2018-11-06 2020-10-13 Nanning Fugui Precision Industrial Co., Ltd. Service function chain (SFC) path selection method and system
US10785321B2 (en) * 2018-11-19 2020-09-22 Nanning Pugui Precision Industrial Co., Ltd. Service function chain (SFC) based multi-tenancy processing method
CN111200559B (zh) * 2018-11-19 2022-05-10 中国电信股份有限公司 路由方法和路由装置
CN111224870B (zh) * 2018-11-26 2022-11-18 中兴通讯股份有限公司 一种SR-MPLS Anycast场景下的故障修复方法、设备和存储介质
US11245617B1 (en) * 2018-12-28 2022-02-08 Juniper Networks, Inc. Compressed routing header
US11467861B2 (en) 2019-02-22 2022-10-11 Vmware, Inc. Configuring distributed forwarding for performing service chain operations
US11412071B2 (en) 2019-05-13 2022-08-09 Juniper Networks, Inc. Compressed routing header information for networks
US11025545B2 (en) * 2019-06-06 2021-06-01 Cisco Technology, Inc. Conditional composition of serverless network functions using segment routing
CN112087381B (zh) * 2019-06-14 2021-12-31 华为技术有限公司 一种实现业务功能处理的方法及装置
CN112448891B (zh) * 2019-09-02 2022-10-04 中国电信股份有限公司 业务链实现方法和系统、业务分类器和业务功能节点
CN112565044B (zh) 2019-09-10 2023-08-25 华为技术有限公司 报文处理方法及装置
CN112751768B (zh) * 2019-10-29 2023-11-21 华为技术有限公司 业务报文转发方法、装置及计算机存储介质
US11283717B2 (en) 2019-10-30 2022-03-22 Vmware, Inc. Distributed fault tolerant service chain
US11140218B2 (en) 2019-10-30 2021-10-05 Vmware, Inc. Distributed service chain across multiple clouds
CN111181852B (zh) * 2019-12-30 2021-04-02 清华大学 一种发送方法、接收方法及其装置
CN113079089A (zh) * 2020-01-03 2021-07-06 华为技术有限公司 业务链的故障保护方法、装置、设备、系统及存储介质
US11223494B2 (en) 2020-01-13 2022-01-11 Vmware, Inc. Service insertion for multicast traffic at boundary
US11659061B2 (en) 2020-01-20 2023-05-23 Vmware, Inc. Method of adjusting service function chains to improve network performance
US11153406B2 (en) 2020-01-20 2021-10-19 Vmware, Inc. Method of network performance visualization of service function chains
US11438257B2 (en) 2020-04-06 2022-09-06 Vmware, Inc. Generating forward and reverse direction connection-tracking records for service paths at a network edge
CN111740900B (zh) * 2020-05-12 2023-04-07 新华三信息安全技术有限公司 一种基于业务功能链的报文转发方法和装置
CN113691448B (zh) * 2020-05-18 2022-09-23 华为技术有限公司 SRv6业务链中转发报文的方法、SFF及SF设备
CN111988395B (zh) * 2020-08-18 2022-05-17 深圳信息职业技术学院 一种服务功能链构建系统及方法
US11677614B2 (en) 2020-08-20 2023-06-13 Huawei Technologies Co., Ltd. Method and apparatus for protecting stateful service function paths
CN112202671B (zh) * 2020-09-09 2022-04-08 中盈优创资讯科技有限公司 一种通过代理实现业务编排的方法及装置
CN114374634A (zh) * 2020-10-15 2022-04-19 华为技术有限公司 报文转发方法以及网络设备
CN112437009B (zh) * 2020-11-27 2022-07-01 网络通信与安全紫金山实验室 SRv6端到端流策略的方法、路由器、路由系统和存储介质
US11734043B2 (en) 2020-12-15 2023-08-22 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
US11611625B2 (en) 2020-12-15 2023-03-21 Vmware, Inc. Providing stateful services in a scalable manner for machines executing on host computers
CN113472666B (zh) * 2021-06-29 2023-08-18 新华三信息安全技术有限公司 报文转发方法及设备
WO2023125767A1 (zh) * 2021-12-31 2023-07-06 华为技术有限公司 一种报文传输方法、网络设备及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1691636A (zh) * 2004-04-26 2005-11-02 华为技术有限公司 流状态建立的方法
CN101695047A (zh) * 2009-10-26 2010-04-14 中兴通讯股份有限公司 一种实现动态隧道报文转发的方法及交换机
CN101741752A (zh) * 2008-11-17 2010-06-16 华为技术有限公司 视频流传输的方法、装置和系统
CN101741824A (zh) * 2008-11-14 2010-06-16 华为技术有限公司 IPv6地址的解析方法、装置及邻居发现报文处理方法
US20150195197A1 (en) * 2014-01-06 2015-07-09 Futurewei Technologies, Inc. Service Function Chaining in a Packet Network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9444675B2 (en) * 2013-06-07 2016-09-13 Cisco Technology, Inc. Determining the operations performed along a service path/service chain

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1691636A (zh) * 2004-04-26 2005-11-02 华为技术有限公司 流状态建立的方法
CN101741824A (zh) * 2008-11-14 2010-06-16 华为技术有限公司 IPv6地址的解析方法、装置及邻居发现报文处理方法
CN101741752A (zh) * 2008-11-17 2010-06-16 华为技术有限公司 视频流传输的方法、装置和系统
CN101695047A (zh) * 2009-10-26 2010-04-14 中兴通讯股份有限公司 一种实现动态隧道报文转发的方法及交换机
US20150195197A1 (en) * 2014-01-06 2015-07-09 Futurewei Technologies, Inc. Service Function Chaining in a Packet Network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3319278A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988266A (zh) * 2019-05-24 2020-11-24 华为技术有限公司 一种处理报文的方法
CN111988266B (zh) * 2019-05-24 2022-05-17 华为技术有限公司 一种处理报文的方法
CN112787921A (zh) * 2019-11-08 2021-05-11 华为技术有限公司 报文传输方法、代理节点及存储介质

Also Published As

Publication number Publication date
CN106330714A (zh) 2017-01-11
CN106330714B (zh) 2020-05-29
EP3319278A1 (en) 2018-05-09
US20180198705A1 (en) 2018-07-12
EP3319278A4 (en) 2018-07-04

Similar Documents

Publication Publication Date Title
WO2016165492A1 (zh) 一种实现业务功能链的方法和装置
US9992106B2 (en) Generating a host route
US20220078114A1 (en) Method and Apparatus for Providing Service for Traffic Flow
US10158561B2 (en) Data plane learning of bi-directional service chains
JP7432095B2 (ja) SRv6サービス機能チェーンでパケットを転送する方法、SFF、およびSFデバイス
CN106603413B (zh) 通过指定路径传输流量的方法和装置
US9871726B2 (en) Semantic information for labels in border gateway protocol
US11522795B1 (en) End to end application identification and analytics of tunnel encapsulated traffic in the underlay
CN105024985A (zh) 一种报文处理方法及装置
CN107872389B (zh) 用于业务负载平衡的方法、设备及计算机可读存储介质
RU2007109068A (ru) Способы и устройства для поддержки vpn при управлении мобильностью
CN112868214B (zh) 分组内的协调负载转移oam记录
US20230300070A1 (en) Packet Sending Method, Device, and System
CN110611616A (zh) 一种基于Radius服务器的流量调度方法、系统、设备和介质
CN109039903B (zh) 路由确定方法、装置及机器可读存储介质
WO2017024818A1 (zh) 一种处理数据报文的方法及装置
US20230164070A1 (en) Packet sending method, device, and system
CN113497757B (zh) 利用域分段标识符来进行域间最短路径分段路由
KR20160123024A (ko) 기능 기반 라우팅 방법 및 시스템
CN116996439B (zh) 一种基于sdn的高效路由寻址方法及系统
WO2023016550A1 (zh) 一种路由发送方法及设备
WO2021077972A1 (zh) 转发报文的方法、装置及存储介质
US10924395B2 (en) Seamless multipoint label distribution protocol (mLDP) transport over a bit index explicit replication (BIER) core
CN117640512A (zh) 通信方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16779467

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016779467

Country of ref document: EP