WO2020249035A1 - 一种实现业务功能处理的方法及装置 - Google Patents

一种实现业务功能处理的方法及装置 Download PDF

Info

Publication number
WO2020249035A1
WO2020249035A1 PCT/CN2020/095518 CN2020095518W WO2020249035A1 WO 2020249035 A1 WO2020249035 A1 WO 2020249035A1 CN 2020095518 W CN2020095518 W CN 2020095518W WO 2020249035 A1 WO2020249035 A1 WO 2020249035A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
nsh
network device
sid
srv6
Prior art date
Application number
PCT/CN2020/095518
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 EP20822610.0A priority Critical patent/EP3965382A4/en
Publication of WO2020249035A1 publication Critical patent/WO2020249035A1/zh
Priority to US17/547,740 priority patent/US20220109627A1/en

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/34Source routing
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • 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/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • 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/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • 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/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • 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
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • 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/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play

Definitions

  • This application relates to the field of communication technology, and in particular to a method and device for realizing business function processing.
  • service function chaining (Chinese: service function chaining, SFC for short) has been widely used in many networks.
  • An SFC represents a service function (English: service function, abbreviated as SF) that a type of message or a data stream passes through in order.
  • the service function forwarder (English: service function forwarder, SFF for short) receives the message belonging to the SFC, it can send the message to the SF entity designated by the SFC on the SFF. After the SF entity performs SF processing on the message, the SFF can receive the message from the SF entity and send the message to the next-hop network device.
  • the embodiments of the present application provide a method and device for implementing SFC, so that SRv6 messages can be processed in SF when the SF entity does not support SR, so as to avoid technically performing a large number of SF entities that do not support SR in the existing network. Transformation to reduce the cost of transformation.
  • the embodiments of the present application provide a method for realizing service function processing.
  • the network device receives the first sixth version of the Internet Protocol segmented routing message, generates the first NSH message according to the first SRv6 message, and sends the first NSH message to the service function SF entity.
  • the first SRv6 message includes the first version 6 Internet Protocol header (Internet Protocol version 6 Header, IPv6 Header) and the first network service header NSH; the first NSH message includes the first SRv6 message The part of the first IPv6 Header is removed from the text.
  • the network device can send the message after receiving the Internet Protocol version 6 segment routing (English: Internet Protocol version 6 segment routing, referred to as SRv6) message
  • SRv6 Internet Protocol version 6 segment routing
  • the SRv6 message is converted into a network service header (English: network service header, NSH for short) message and then the NSH message is sent to the SF entity, so that the SF entity can perform SF processing on the NSH message.
  • NSH Internet Protocol version 6 segment routing
  • the SF entity can also support SF processing of SRv6 messages, avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of using SFC for network upgrades.
  • the method further includes: the network device recognizes from the destination address field of the first IPv6 Header The first segment identification SID of the network device is determined, and the first SID is determined to be used to instruct the network device to send an NSH message to the SF entity. It can be seen that using the first SID of the network device to indicate the function of sending NSH messages to the SF entity can enable the network device to generate the first NSH message according to the first SRv6 message without changing the IPv6 Header structure of the SRv6 message The message is sent to the SF entity, so that the SF entity performs SF processing on the first NSH message.
  • the service path identifier SPI carried by the first NSH After receiving the first SRv6 message, the network device also records the mapping relationship between the SPI and the first IPv6 Header. After sending the first NSH message to the SF entity, the network device also receives the second NSH message sent by the SF entity, according to the mapping relationship between the SPI and the first IPv6 Header Determining the first IPv6 Header, and replacing the first SID carried in the destination address field of the first IPv6 Header with the second SID of the next-hop network device of the network device to obtain the second IPv6 Header, And, generating a second SRv6 message according to the second NSH message, the second SRv6 message including the second IPv6 Header, the second NSH, and the payload of the second NSH message.
  • the second NSH message includes a second NSH
  • the second NSH carries the SPI. It can be seen that the network device can determine the second IPv6 Header for the second NSH message returned by the SF entity by recording the mapping relationship between the first IPv6 Header and the SPI, so that the network device can generate the second IPv6 header according to the second NSH message returned by the SF entity. SRv6 packets are forwarded to the next hop.
  • the service path identifier SPI carried by the first NSH After receiving the first SRv6 message, the network device replaces the first SID carried in the destination address field of the first IPv6 Header with the second SID of the next-hop network device of the network device, Obtain the second IPv6 Header, and record the mapping relationship between the SPI and the second IPv6 header.
  • the network device After sending the first NSH message to the SF entity, the network device receives the second NSH message sent by the SF entity, according to the mapping relationship between the SPI and the second IPv6 Header, Determine the second IPv6 Header, and generate a second SRv6 message according to the second NSH message
  • the second SRv6 message includes the second IPv6 Header, the second NSH, and the second NSH message The payload of the text.
  • the second NSH message includes a second NSH
  • the second NSH carries the SPI.
  • the network device can determine the second IPv6 Header for the second NSH message returned by the SF entity by recording the mapping relationship between the second IPv6 Header and the SPI, so that the network device can generate the second IPv6 header based on the second NSH message returned by the SF entity. SRv6 packets are forwarded to the next hop.
  • the network device determining that the first SID is used to instruct to send an NSH message to a service function SF entity includes: the network device obtains a function part of the first SID, the function part Used to instruct to send NSH message to the service function SF entity. It can be seen that the function part of the first SID of the network device is used to indicate the function of sending NSH messages to the SF entity, so that the first SID of the network device can be used to indicate this function, so that the IPv6 Header structure of the SRv6 message is different. Under the changed situation, the network device can generate the first NSH message according to the first SRv6 message and send it to the SF entity, so that the SF entity performs SF processing on the first NSH message.
  • the network device before the network device receives the first SRv6 message, the network device further issues the first SID to the controller or the classifier.
  • the first SID that can be used to indicate the network device that sends the NSH message to the SF entity can be issued by the network device to the controller or the classifier, so that the classifier can encapsulate the first SID into the SRv6 message.
  • the network device also records the mapping relationship between the first SID and the SF entity. It can be seen that the network device can send the NSH message generated from the SRv6 message carrying the first SID to the SF entity according to the mapping relationship.
  • the first SID is carried in Border Gateway Protocol BGP Link State LS Type Length Value TLV information and sent. It can be seen that the network device can issue the first SID to the classifier or controller through BGP LS, so that the first SID can be encapsulated into the SRv6 message.
  • the network device before the network device receives the first SRv6 packet, the network device further releases to the controller or the classifier encapsulation information used to transmit the NSH packet between the network device and the SF. It can be seen that the controller and the classifier can obtain the encapsulation information of the NSH message issued by the network device, so that the encapsulation information can be carried into the SRv6 message, so that the SRv6 message can be converted into an NSH message.
  • the embodiments of the present application provide a method for realizing service function processing.
  • the classifier receives the service message, obtains the segment routing SR strategy and NSH corresponding to the service message, and encapsulates the IPv6 Header and the NSH to the service message according to the SR strategy to generate an SRv6 message And use the segment list to send the SRv6 message to the next-hop network device of the classifier.
  • the SR policy includes a segment list, the segment list is used to identify the transmission path of the service message, the segment list includes the SID of the network device, and the SID of the network device is used to instruct the network device to The service function SF entity sends the network service header NSH message.
  • the classifier can encapsulate NSH and IPv6 headers in service messages to generate SRv6 messages and send them.
  • the SID of the network device carried in the IPv6 Header can be It is used to instruct the network device to convert the SRv6 message into an NSH message and send it to the SF entity. Therefore, the SF entity can perform SF processing on the NSH message. Since the part of the SRv6 message that removes the IPv6 Header and NSH is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message.
  • the SF entity can also support SF processing of SRv6 messages, thereby avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of network upgrades using SFC.
  • the classifier obtains the segment routing SR strategy corresponding to the service message includes: the classifier receives the SR strategy sent by the controller. It can be seen that the SR strategy can be generated by the controller and sent to the classifier.
  • obtaining the segment routing SR strategy corresponding to the service packet by the classifier includes: the classifier receives the SID sent by the network device; and the classifier generates the SR based on the SID Strategy. It can be seen that the SR strategy can be generated by the classifier.
  • the SID is carried in the border gateway protocol BGP link state LS type length value TLV information and sent. It can be seen that the network device can issue the first SID to the classifier or controller through BGP LS, so that the first SID can be encapsulated into the SRv6 message.
  • the classifier further receives encapsulation information used to transmit NSH messages between the network device and the SF entity. It can be seen that the classifier can obtain the encapsulation information of the NSH message issued by the network device, so that the encapsulation information can be carried into the SRv6 message, so that the SRv6 message can be converted into an NSH message.
  • the embodiments of the present application provide a method for implementing business function processing.
  • the controller receives the SID of the network device, generates the SR policy and NSH of the service flow, and sends the SR policy and the NSH to the classifier.
  • the SID of the network device is used to instruct the network device to send a network service header NSH message to the service function SF entity
  • the SR policy includes a segment list
  • the segment list is used to indicate the transmission path of the service flow
  • the segment list includes the SID. Since most SF entities in the existing network already support SF processing of NSH messages, the controller can issue an SR policy and NSH to the classifier.
  • the SID of the network device in the segment list carried in the SR policy can be used to instruct the network device to convert the SRv6 message into an NSH message and send it to the SF entity. Therefore, the classifier can encapsulate the IPv6 Header and NSH to generate an SRv6 message and send it according to the SR policy.
  • the IPv6 Header carries the SID of the network device so that the SF entity can perform SF processing on the NSH message . Since the part of the SRv6 message that removes the IPv6 Header and NSH is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message.
  • the SF entity can also support SF processing of SRv6 messages, thereby avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of network upgrades using SFC.
  • the SID is carried in the border gateway protocol BGP link state LS type length value TLV information and sent. It can be seen that the network device can issue the first SID to the controller through BGP LS, so that the first SID can be encapsulated in the SRv6 message.
  • the controller further receives encapsulation information sent by the network device and used to transmit NSH packets between the network device and the SF, and sends the encapsulation information to the classifier. It can be seen that the controller can obtain the encapsulation information of the NSH message issued by the network device and provide it to the classifier, so that the encapsulation information can be carried into the SRv6 message, so that the SRv6 message can be converted into an NSH message.
  • the embodiments of the present application provide a network device that implements service function processing.
  • the network device includes a receiving unit, a processing unit, and a sending unit.
  • the receiving unit is configured to receive the first and sixth version of the Internet Protocol segmented routing SRv6 message, where the first SRv6 message includes the first and sixth version of the Internet Protocol header IPv6 Header and the first network service header NSH.
  • the processing unit is configured to generate a first NSH message according to the first SRv6 message, where the first NSH message includes a part of the first SRv6 message excluding the first IPv6 Header.
  • the sending unit is configured to send the first NSH message to the service function SF entity.
  • the processor is further configured to: before generating the first NSH message according to the first SRv6 message, identify the first NSH message of the network device from the destination address field of the first IPv6 Header A segment of identification SID; determining that the first SID is used to instruct the network device to send an NSH message to the SF entity.
  • the service path identifier SPI carried by the first NSH is further configured to record the mapping relationship between the SPI and the first IPv6 Header after the receiving unit receives the first SRv6 message.
  • the receiving unit is further configured to receive a second NSH message sent by the SF entity after the sending unit sends the first NSH message to the SF entity, where the second NSH message includes the first NSH message Two NSH, the second NSH carries the SPI.
  • the processing unit is further configured to determine the first IPv6 Header according to the mapping relationship between the SPI and the first IPv6 Header, and add the first IPv6 Header carried in the destination address field of the first IPv6 Header
  • the SID is replaced with the second SID of the next-hop network device of the network device to obtain a second IPv6 Header, and a second SRv6 message is generated according to the second NSH message, and the second SRv6 message includes all The second IPv6 Header, the second NSH, and the payload of the second NSH message.
  • the service path identifier SPI carried by the first NSH is further configured to, after the receiving unit receives the first SRv6 message, replace the first SID carried in the destination address field of the first IPv6 Header with the next SID of the network device Hop the second SID of the network device to obtain a second IPv6 header, and record the mapping relationship between the SPI and the second IPv6 header.
  • the receiving unit is further configured to receive a second NSH message sent by the SF entity after the sending unit sends the first NSH message to the SF entity, where the second NSH message includes the first NSH message Two NSH, the second NSH carries the SPI.
  • the processing unit is further configured to determine the second IPv6 Header according to the mapping relationship between the SPI and the second IPv6 Header, and generate a second SRv6 message according to the second NSH message.
  • the second SRv6 message includes the second IPv6 Header, the second NSH, and the payload of the second NSH message.
  • the processor is further configured to obtain a function part of the first SID, where the function part is used to instruct to send an NSH message to a service function SF entity.
  • the sending unit is further configured to issue the first SID to the controller or the classifier before the receiving unit receives the first SRv6 message.
  • the processing unit is further configured to record the mapping relationship between the first SID and the SF entity.
  • the first SID is carried in Border Gateway Protocol BGP link state LS type length value TLV information and sent.
  • the sending unit is further configured to, before the receiving unit receives the first SRv6 packet, issue an encapsulation for NSH packet transmission between the network device and the SF to the controller or classifier information.
  • the network device provided in the fourth aspect corresponds to the method provided in the first aspect, so the technical effects of each implementation manner of the fourth aspect can be referred to the introduction of each implementation manner of the first aspect.
  • an embodiment of the present application is a classifier that implements service function processing.
  • the classifier includes a receiving unit, a processing unit, and a sending unit.
  • the receiving unit is used to receive service messages.
  • the processing unit is configured to obtain the segment routing SR strategy corresponding to the service message, obtain the NSH corresponding to the service message, and, according to the SR strategy, encapsulate the IPv6 Header and the NSH of the service message Generate an SRv6 message;
  • the SR policy includes a segment list, the segment list is used to identify the transmission path of the service message, the segment list includes the SID of the network device, and the SID of the network device is used to indicate the
  • the network device sends a network service header NSH message to the service function SF entity.
  • the sending unit is configured to send the SRv6 message to the next-hop network device of the classifier by using the segment list.
  • the receiving unit is further configured to receive the SR strategy sent by the controller by the classifier.
  • the receiving unit is further configured to receive the SID sent by the network device; the processing unit is further configured to generate the SR policy based on the SID.
  • the SID is carried in the border gateway protocol BGP link state LS type length value TLV information and sent.
  • the receiving unit is further configured to receive encapsulation information used for NSH message transmission between the network device and the SF entity.
  • classifier provided in the fifth aspect corresponds to the method provided in the second aspect, so the technical effects of each implementation manner of the fifth aspect can be referred to the introduction of each implementation manner of the first aspect.
  • an embodiment of the present application provides a controller that implements service function processing.
  • the controller includes a receiving unit, a processing unit, and a sending unit.
  • the receiving unit is configured to receive the SID of the network device, where the SID of the network device is used to instruct the network device to send a network service header NSH message to the service function SF entity.
  • a processing unit configured to generate an SR policy of a service flow and an NSH of the service flow, the SR policy includes a segment list, the segment list is used to indicate a transmission path of the service flow, and the segment list includes the SID .
  • the sending unit is configured to send the SR policy and the NSH to the classifier.
  • the SID is carried in the border gateway protocol BGP link state LS type length value TLV information and sent.
  • the receiving unit is further configured to receive encapsulation information sent by the network device and used to transmit NSH messages between the network device and the SF; the sending unit is further configured to The classifier sends the package information.
  • the device provided in the sixth aspect corresponds to the method provided in the first aspect, so the technical effects of each implementation manner of the sixth aspect can be referred to the introduction of each implementation manner of the first aspect.
  • an embodiment of the present application also provides a network device, which includes a processor and a memory, and the memory stores instructions.
  • the processor executes the instructions
  • the network device executes any of the foregoing first aspects.
  • embodiments of the present application also provide a classifier.
  • the classifier includes a processor and a memory.
  • the memory stores instructions.
  • the processor executes the instructions
  • the network device executes any of the foregoing second aspect.
  • an embodiment of the present application also provides a controller.
  • the controller includes a processor and a memory.
  • the memory stores instructions.
  • the processor executes the instructions
  • the network device executes any of the foregoing third aspect.
  • the embodiments of the present application also provide a computer-readable storage medium that stores instructions in the computer-readable storage medium, which when run on a computer or processor, causes the computer or processor to execute the aforementioned first
  • a computer-readable storage medium that stores instructions in the computer-readable storage medium, which when run on a computer or processor, causes the computer or processor to execute the aforementioned first
  • Figure 1 is a schematic diagram of a network system framework involved in an application scenario in an embodiment of the application
  • FIG. 2 is a schematic flowchart of a method 200 for implementing business function processing in an embodiment of the application
  • Figure 3 is a schematic structural diagram of an example of a BGP LS TLV in an embodiment of this application;
  • FIG. 4 is a schematic structural diagram of an example of an SRv6 message in an embodiment of this application.
  • FIG. 5 is a schematic diagram of an example of an NSH header format in an embodiment of the application.
  • FIG. 6 is a schematic flowchart of a method 600 for implementing service function processing in an embodiment of the application
  • FIG. 7 is a schematic flowchart of a method 600 for implementing service function processing in an embodiment of the application.
  • FIG. 8 is a schematic flowchart of a method 800 for implementing service function processing in an embodiment of this application.
  • FIG. 9 is a schematic structural diagram of an example of SID of a network device in an embodiment of the application.
  • FIG. 10 is a schematic structural diagram of a network device 1000 that implements service function processing in an embodiment of this application;
  • FIG. 11 is a schematic structural diagram of a classifier 1100 for implementing service function processing in an embodiment of the application
  • FIG. 12 is a schematic structural diagram of a controller 1200 for implementing service function processing in an embodiment of the application.
  • the messages transmitted in the network are SR messages, that is, the messages transmitted between SFFs are SR messages.
  • the SFF sends an SR message to an SF entity that does not support SR
  • the SF entity cannot process the SR message. If the SF entity is upgraded so that the SF entity can support SR, this can solve the above problems, but there is a certain cost in upgrading the SF entity.
  • the network device may convert the SRv6 message into an NSH message and then send the NSH message to the SF entity. Since most SF entities in the existing network support processing of NSH messages, the SF entity can also perform SF processing on NSH messages without upgrading the SF entity. Since the part of the SRv6 message that removes the IPv6 Header and NSH is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message. It can be seen that even if the SF entity does not support SR, it can support SF processing of SRv6 messages. This avoids technical transformation of a large number of SF entities that do not support SR in the existing network, thereby reducing the use of SFC for network upgrades. the cost of.
  • one of the scenarios of the embodiment of the present application may be applied to the network system 100 shown in FIG. 1.
  • the classifier (English: classifier) 101 may be provided with an SR policy of the service flow, and the SR policy may include a segment list (English: segment list) and NSH.
  • the classifier 101 can encapsulate the version 6 Internet Protocol header (English: internet protocol version 6 header, referred to as IPv6 Header) for the service message according to the SR policy of the service flow.
  • IPv6 Header version 6 Internet Protocol header
  • NSH to generate SRv6 message 111.
  • the IPv6 Header of the SRv6 message 111 includes the segment list of the service flow.
  • the segment list is used to indicate the transmission path of the service flow in the network system 100, including the segment identification (English: segment identification, SID for short) of each hop network device on the transmission path. Assuming that the transmission path of the service flow is from the classifier 101 to the SFF 102 and then from the SFF 102 to the SFF 104, the segment list of the service flow includes the SID of the SFF 102 and the SID of the SFF 104.
  • the SID of the next-hop network device of the classifier 101 that is, the SID of the SFF 102, is carried in the destination address (English: destination address, abbreviation: DA) field of the IPv6 Header of the SRv6 message 111. Therefore, the classifier 101 may send the SRv6 message 111 to the SFF 102 according to the SID of the SFF 102 carried in the DA field of the IPv6 Header of the SRv6 message 111.
  • SFF 102 When SFF 102 receives SRv6 message 111, SFF 102 can convert SRv6 message 111 into NSH message 121, where NSH message 121 includes the part of SRv6 message 111 excluding IPv6 Header, that is, it includes SRv6 message 111 NSH and the payload after NSH. Then, the SFF 102 may send the NSH message 121 to the SF entity 103. The SF entity 103 performs SF processing on the NSH message 121 and sends the processed NSH message 122 to the SFF 102. The SFF 102 may convert the received NSH message 122 into an SRv6 message 112.
  • the IPv6 Header of the SRv6 message 112 is obtained by updating the SID of the next-hop network device of SFF 102 in the IPv6 Header segment list of the SRv6 message 111 to the DA field of the IPv6 Header of the SRv6 message 111. That is, the DA field of the IPv6 Header of the SRv6 message 112 carries the SID of SFF 104. Therefore, the SFF 102 can send the SRv6 message 112 to the SFF 104 according to the SID of the SFF 104 carried in the DA field of the IPv6 Header of the SRv6 message 112.
  • SFF 104 When SFF 104 receives SRv6 message 112, SFF 104 can convert SRv6 message 112 into NSH message 123, where NSH message 123 includes the part of SRv6 message 112 excluding the IPv6 Header, that is, it includes SRv6 message 112 NSH and the payload after NSH. Then, the SFF 104 can send the NSH message 123 to the SF entity 105. The SF entity 105 performs SF processing on the NSH message 123 and sends the processed NSH message 124 to the SFF 104. Since the SFF 104 is the tail node of the transmission path of the service flow in the network system 100, the SFF 104 can obtain the payload of the received NSH message 124 to generate the service message of the service flow.
  • the network system 100 may further include a controller (English: controller) 106.
  • the controller 106 may receive the SIDs reported by the SFF 102 and the SFF 103 and generate the SR policy of the service flow based on the SIDs reported by the SFF 102 and the SFF 103.
  • the SR policy of the service flow may be generated by the controller 106 and sent to the classifier 101.
  • FIG. 2 is a schematic flowchart of a method 200 for implementing service function processing in an embodiment of the application.
  • the method 200 may include, for example:
  • the classifier receives a service message.
  • the classifier determines the service flow corresponding to the service packet and obtains the SR policy and the NSH of the service flow.
  • the SR policy and NSH of the service flow are set on the classifier.
  • the classifier can determine whether the service message belongs to the service flow according to whether the message feature of the service message matches the message feature of the service flow.
  • the classifier can obtain the SR policy and NSH 1 of the service flow.
  • the message feature may be, for example, a five-tuple.
  • the NSH 1 of the service flow can be used to encapsulate the SRv6 message of the service flow, so that the network device on the transmission path of the service flow can convert the SRv6 message into an NSH message and then send it to the SF entity. The entity can then perform SF processing on the NSH message.
  • the SR policy may include a list of segments of the service flow.
  • the segment list of the service flow can be used to indicate the transmission path of the service flow.
  • the segment list may include the SID of each hop network device on the transmission path of the service flow.
  • the transmission path of the service flow is transmitted from the classifier 101 to the SFF 102 and then from the SFF 104 to the SFF 103, then the segment list of the service flow may include the SID of the SFF 102 and The SID of SFF 104.
  • the classifier 101 can identify the SID of the next hop SFF 102 from the segment list carried in the SRv6 message and send the SRv6 message to SFF 102 Text.
  • SFF 102 can identify the SID of the next hop SFF 104 from the segment list carried in the SRv6 message and send the SRv6 message to SFF 104.
  • the SR policy may also include the SID corresponding to the SF entity, and the SID is used to instruct the network device on the transmission path of the service flow to convert the SRv6 packet of the service flow into an NSH packet and send it to the SF Entity sent.
  • the segment list in the SR policy may also include the SID of the SF entity that the service flow needs to pass through.
  • the network device can convert the SRv6 message into an NSH message according to the SID of the SF entity carried in the SRv6 message and send the NSH message to the SF entity.
  • the transmission path of the service flow is from the classifier 101 to the SFF 102 and then from the SFF 104 to the SFF 103.
  • the service flow needs to be sent to the SF entity 103 at the SFF 102 for processing.
  • the service flow needs to be sent to the SF entity 105 for processing at the SFF 104, and the segment list of the service flow may include the SID of the SFF 102, the SID of the SF entity 103, the SID of the SFF 104, and the SID of the SF entity 105.
  • the SID of the SF entity 103 is used to instruct the SFF 102 to convert the SRv6 message of the service flow into an NSH message and send it to the SF entity 103
  • the SID of the SF entity 105 is used to instruct the SFF 104 to convert the SRv6 message of the service flow into The NSH message is sent to the SF entity 105.
  • the SID of the network device in addition to indicating the transmission path of the service flow, can also be used to instruct the network device to send an SRv6 packet to the SF entity including removing IPv6 NSH packet of the header part.
  • the network device can convert the SRv6 message into an NSH message according to the SID of the network device carried in the SRv6 message and send the NSH message to the SF entity.
  • the transmission path of the service flow is from the classifier 101 to the SFF 102 and then from the SFF 104 to the SFF 103.
  • the service flow needs to be sent to the SF entity 103 at the SFF 102 for processing.
  • the service flow needs to be sent to the SF entity 105 for processing at SFF 104, and the segment list of the service flow may include the SID of SFF 102 and the SID of SFF 104.
  • the SID of SFF 102 is used to instruct the classifier 101 to send the SRv6 packet of the service flow to the SFF 102, and is also used to instruct the SFF 102 to convert the SRv6 packet of the service flow into an NSH packet and send it to the SF entity 103 send.
  • the SID of the SFF 104 is not only used to instruct the SFF 102 to send the SRv6 message of the service flow to the SFF 104, but also used to instruct the SFF 104 to convert the SRv6 message of the service flow into an NSH message and send it to the SF entity 105.
  • the format of the SID of the network device can refer to the exemplary format shown in FIG. 9.
  • the SID format includes a location (English: locator) field, a function (English: function) field, and a parameter (English: argument) field.
  • the locator field carries indication information used to indicate the network device.
  • the Function field is used to indicate the instruction information of the operation to be performed by the network device. If the SID of the network device is used to instruct the network device to convert the SRv6 message into an NSH message and send it to the SF entity, the indication information carried in the function field of the SID corresponds to the SF entity and is used to indicate the conversion of the SRv6 message Into an NSH message and send it to the SF entity.
  • the SR policy and NSH of the service flow can be generated by different network devices.
  • each hop network device on the transmission path of the service flow may issue an SID to the classifier, and the classifier may generate an SR policy for the service flow based on the received SID.
  • SFF 102 can issue the SID of SFF 102 to the classifier 101
  • SFF 104 can issue the SID of SFF 104 to the classifier 101
  • the classifier 101 can be based on the SID and SFF of SFF 102.
  • the SID of 104 generates the SR policy.
  • the SID of SFF 102 is used to instruct SFF 102 to convert the SRv6 message of the service flow into an NSH message and send it to the SF entity 103.
  • the SID of SFF 104 is used to instruct the SFF 104 to transfer the service flow.
  • the SRv6 message is converted into an NSH message and sent to the SF entity 105.
  • the SFF 102 can publish the SID of the SFF 102 and the SID of the SF entity 103 to the classifier 101
  • the SFF 104 can publish the SID of the SFF 104 and the SID of the SF entity 105 to the classifier 101.
  • the classifier 101 can generate an SR policy based on the SID of the SFF 102, the SID of the SF entity 103, the SID of the SFF 104, and the SID of the SF entity 105.
  • the NSH 1 of the service flow can also be generated by the classifier.
  • each hop network device on the transmission path of the service flow may issue an SID to the controller, and the controller may generate an SR policy of the service flow based on the received SID and send it to the classifier.
  • SFF 102 can issue the SID of SFF 102 to the controller 106
  • the SFF 104 can issue the SID of SFF 104 to the controller 106
  • the controller 106 can be based on the SID and SFF of SFF 102.
  • the SID of 104 generates the SR policy and sends the SR policy to the classifier 101.
  • the SID of SFF 102 is used to instruct SFF 102 to convert the SRv6 packet of the service flow into NSH packet and send it to the SF entity 103.
  • the SID is used to instruct the SFF 104 to convert the SRv6 message of the service flow into an NSH message and send it to the SF entity 105.
  • the SFF 102 can release the SID of the SFF 102 and the SID of the SF entity 103 to the controller 106
  • the SFF 104 can release the SID of the SFF 104 and the SID of the SF entity 105 to the controller 106.
  • the controller 106 may generate an SR policy based on the SID of the SFF 102, the SID of the SF entity 103, the SID of the SFF 104, and the SID of the SF entity 105 and deliver the SR policy to the classifier 101.
  • the NSH 1 of the service flow can also be generated by the controller and delivered to the classifier.
  • the network device may record the mapping relationship between the SID and the SF entity.
  • the SF entity can be determined according to the mapping relationship, so that the NSH message converted into the SRv6 message can be sent to the SF entity.
  • the network device may carry the SID in the Border Gateway Protocol (English: Border Gateway Protocol, abbreviated as: BGP) link state (English: Link State, abbreviated as: LS) type length value (English: Type Length Value, Abbreviation: TLV) information is released to the controller or classifier.
  • BGP Border Gateway Protocol
  • LS Link State
  • TLV Type Length Value
  • the SID field can carry the SID to be issued by the network device
  • the SRv6 Endpoint Function (English: SRv6 Endpoint Function) field can carry the function type of the SID.
  • the function type of the SID may be defined as END.NSH, for example. If the SID field of the TLV information carries the SID used to instruct the network device to convert the SRv6 message into an NSH message and send it to the SF entity, the SRv6 Endpoint Function field of the TLV information can carry END.NSH as the function type of the SID.
  • the network device can also issue to the controller or classifier the SID for the network
  • the encapsulation information of the NSH message is transmitted between the device and the SF entity.
  • the classifier can carry this encapsulation information in the SRv6 message, so that the network device can convert the SRv6 message into an NSH message.
  • the encapsulation information is specifically the message encapsulation information corresponding to the transmission protocol adopted between the network device and the SF entity, such as Ethernet transmission protocol, IPv6, etc.
  • the classifier encapsulates the IPv6 Header 1 and NSH 1 of the service message to generate an SRv6 message 1.
  • the classifier can obtain the segment list of the service flow and the NSH 1 of the service flow from the SR policy, generate an IPv6 Header 1 carrying the segment list, and encapsulate the IPv6 Header 1 and NSH 1 of the service packet to generate SRv6 Message 1.
  • the structure of the SRv6 message mentioned in this embodiment can refer to the SRv6 message example shown in FIG. 4.
  • the SRv6 message can include IPv6 Header, NSH, and payload. Among them, NSH is encapsulated outside the payload, and IPv6 Header is encapsulated outside the NSH.
  • the service message can be used as a payload, and NSH 1 is encapsulated outside the service message, and IPv6 Header 1 is encapsulated outside NSH 1, thereby forming SRv6 message 1.
  • the structures of the SRv6 message 2, SRv6 message 3, and SRv6 message 4 mentioned later can also refer to the SRv6 message example shown in FIG. 4.
  • IPv6 Header 1 includes a source address (English: source address, abbreviation: SA) field, a DA field, and a segment routing header (English: segment routing header, abbreviation: SRH).
  • SA source address
  • DA DA
  • SRH segment routing header
  • the segment list is carried in the SRH.
  • the SA field carries the SID of the first node, that is, the SID of the classifier.
  • the DA field carries the SID of the next hop network device of the classifier, where the SID of the next hop network device of the classifier can be obtained from the segment list.
  • the SA field of the IPv6 Header carries the SID of the classifier 101
  • the DA field of the IPv6 Header carries the SID of the SFF 102, where , SFF 102 is the next hop network device of the classifier 101.
  • the classifier sends an SRv6 message 1 to the network device corresponding to the SID carried in the destination address field of the IPv6 Header 1.
  • the SID carried in the DA field of IPv6 Header 1 is the SID of the next-hop network device of the classifier. Therefore, the classifier can send the SRv6 packet 1 to the next-hop network device according to the SID, thereby causing the traffic flow
  • the SRv6 message can be transmitted along the transmission path of the service flow.
  • the DA field of the IPv6 Header carries the SID of the intermediate node.
  • the intermediate node can identify the SID of the next-hop network device of the intermediate node from the segment list carried in the IPv6 Header of the SRv6 packet, and use the SID of the intermediate node in the DA field of the IPv6 Header of the SRv6 packet Update to the SID of the next-hop network device of the intermediate node, and then send the updated SRv6 message to the next-hop network device of the intermediate node.
  • the intermediate node N For a certain intermediate node N, if the service flow needs to be sent to the SF entity 1 for SF processing at the intermediate node N, the intermediate node N can perform the following steps 205 to 210.
  • the intermediate node N receives the SRv6 message 2.
  • the SRv6 message 2 is the SRv6 message 1. If there are other intermediate nodes between the classifier and the intermediate node N on the transmission path of the service flow, the SRv6 message 2 is a message sent to the intermediate node N by the previous hop intermediate node of the intermediate node N.
  • the intermediate node N generates an NSH message 1 according to the SRv6 message 2.
  • the intermediate node N sends an NSH message 1 to the SF entity 1.
  • the intermediate node N can remove the IPv6 Header 2 of the SRv6 message 2 to obtain the NSH 2 and the payload in the SRv6 message 2, and then encapsulate the NSH 2 and the payload for the intermediate node and the SF entity 1.
  • the encapsulation information of the NSH message is transmitted between, and NSH message 1 is obtained.
  • the intermediate node N can send the NSH message 1 to the SF entity 1.
  • each NSH mentioned in this embodiment carries a service path identifier (English: service path identifier, referred to as SPI) and a service index (English: service index, referred to as SI).
  • SPI and SI can be used to indicate the SF that the service flow needs to pass through.
  • NSH may refer to the header format shown in FIG. 5, for example.
  • the NSH in the message of the same service flow carries the same SPI.
  • the IPv6 Header 2 of the SRv6 message 2 may carry an SID for instructing the intermediate node N to convert the SRv6 message into an NSH message and send it to the SF entity 1.
  • the intermediate node N recognizes the SID from the SRv6 message 2
  • the intermediate node N can convert the SRv6 message 2 into the NSH message 1 and send the NSH message 1 to the SF entity 1.
  • SFF 101 recognizes the SID of SF entity 103 from SRv6 message 111
  • SFF 101 can convert SRv6 111 into NSH message 121 and send NSH to SF entity 103 Message 121.
  • SFF 101 recognizes the SID of SFF 101 from the SRv6 message 111 and determines that the SID of SFF 101 is used to instruct SFF 101 to convert the SRv6 message into an NSH message and When sending to SF 103, SFF 101 can convert SRv6 111 into NSH message 121 and send NSH message 121 to SF entity 103.
  • the intermediate node N receives the NSH message 2 obtained by the SF entity 1 performing SF processing on the NSH message 1.
  • the intermediate node N generates an SRv6 message 3 according to the NSH message 2.
  • the intermediate node N can identify the SID of the next-hop network device of the intermediate node N from the segment list carried in the IPv6 Header 2 of the SRv6 message 2, and use the SID of the intermediate node N carried in the DA field of the IPv6 Header 2 Replace it with the SID of the next-hop network device of the intermediate node N to obtain the IPv6 Header 3 of the SRv6 message 3.
  • the intermediate node N can obtain the NSH 3 and the payload from the NSH message 2, and generate an SRv6 message 3 based on the IPv6 Header 3, NSH 3, and the payload of the NSH message 2.
  • NSH message 2 After SRv6 message 2 is converted into NSH message 1 and sent to SF entity 1, NSH message 2 returned by SF entity 1 needs to be converted into SRv6 message 3, so that intermediate node N can hop down
  • the network device sends SRv6 packet 3.
  • NSH 2 of NSH message 1 and NSH 3 of NSH message 2 both carry the same SPI
  • intermediate node N can record the mapping relationship between SPI and IPv6 Header so that intermediate node N can follow the NSH message 2.
  • the carried SPI finds the corresponding IPv6 Header and uses the IPv6 Header to convert NSH message 2 into SRv6 message 3.
  • the intermediate node N can recognize the SPI from the NSH 2 of the SRv6 message 2 and record the mapping relationship between the IPv6 Header 2 of the SRv6 message 2 and the SPI.
  • the intermediate node N can identify the SPI from the NSH 3 of the NSH message 2 and find the corresponding SPI according to the recorded mapping relationship IPv6 Header 2. Then, the intermediate node N can update the IPv6 Header 2 to IPv6 Header 3, and then convert the NSH message 2 into the SRv6 message 3 based on the IPv6 Header 3.
  • the intermediate node N can recognize the SPI from the NSH 2 of the SRv6 message 2, update the IPv6 Header 2 of the SRv6 message 2 to IPv6 Header 3 and record the IPv6 Header 3 Mapping relationship with SPI.
  • the intermediate node N can identify the SPI from the NSH 3 of the NSH message 2 and find the corresponding SPI according to the recorded mapping relationship IPv6 Header 3. Then, the intermediate node N can convert the NSH message 2 into an SRv6 message 3 based on the IPv6 Header 3.
  • the intermediate node N sends the SRv6 message 3 to the network device corresponding to the SID carried in the destination address field of the IPv6 Header 2 of the SRv6 message 3.
  • the SID carried in the DA field of IPv6 Header 3 is the SID of the next hop network device of the intermediate node N. Therefore, the classifier can send the SRv6 packet 3 to the next hop network device according to the SID, so that the service Streaming SRv6 packets can continue to be transmitted along the transmission path of the service stream.
  • the DA field of the IPv6 Header carries the SID of the tail node, and the SRH segment remains (English: segments left (abbreviated as: SL) value is zero.
  • the tail node can obtain the payload from the SRv6 message and generate the service message of the service flow based on the payload.
  • the tail node can perform the following steps 211 to 215.
  • the tail node receives the SRv6 message 4.
  • the SRv6 message 4 is the SRv6 message 3. If there are other intermediate nodes between the intermediate node N and the tail node on the transmission path of the service flow, the SRv6 message 4 is a packet sent by the last hop intermediate node of the tail node to the tail node.
  • the tail node generates an NSH message 3 according to the SRv6 message 4.
  • the tail node sends an NSH message 3 to the SF entity 2.
  • the tail node can remove the IPv6 Header 4 of the SRv6 message 4 to obtain the NSH 4 and the payload in the SRv6 message 4, and then encapsulate the NSH 4 and the payload for the tail node and the SF entity 2. Transmit the encapsulation information of the NSH message to obtain NSH message 3. Then, the tail node can send NSH message 3 to SF entity 2.
  • the IPv6 Header 4 of the SRv6 message 4 may carry an SID for instructing the tail node to convert the SRv6 message into an NSH message and send it to the SF entity 2.
  • the tail node recognizes the SID from the SRv6 message 4
  • the tail node can convert the SRv6 message 4 into an NSH message 3 and send the NSH message 3 to the SF entity 2.
  • the SFF 104 recognizes the SID of the SF entity 104 from the SRv6 message 112
  • the SFF 104 can convert the SRv6 112 into an NSH message 123 and send the NSH to the SF entity 105 Message 123.
  • SFF 104 recognizes the SID of SFF 104 from the SRv6 message 112 and determines that the SID of SFF 104 is used to instruct SFF 104 to convert the SRv6 message into an NSH message and When sending to SF 105, SFF 104 can convert SRv6 112 into NSH message 123 and send NSH message 123 to SF entity 105.
  • the tail node receives the NSH message 4 obtained by the SF entity 2 performing SF processing on the NSH message 3.
  • the tail node generates a service message according to the payload of the NSH message 4.
  • the tail node recognizes that the SL value is zero from the SRH of the IPv6 Header 4 of the SRv6 message 4, and the tail node can determine that the SRv6 message 4 is converted into the NSH message 3 and sent to the SF entity 2. 2
  • the returned NSH message 4 does not need to be converted into an SRv6 message. Therefore, the tail node can obtain the payload from the NSH message 4 and generate the service message of the service flow according to the payload.
  • the SF entities such as SF entity 1 and SF entity 2 may be, for example, network devices used to carry SF such as value added server (English: value added server, VAS for short).
  • the classifier 101 is equivalent to the classifier mentioned in the method 200
  • the SFF 102 is equivalent to the intermediate node N mentioned in the method 200
  • the SFF 104 is equivalent to the method 200 mentioned.
  • SF entity 103 is equivalent to SF entity 1 mentioned in method 200
  • SF entity 105 is equivalent to SF entity 2 mentioned in method 200
  • SRv6 message 111 is equivalent to SRv6 message 1 mentioned in method 200.
  • SRv6 message 112 is equivalent to the SRv6 message 3 mentioned in method 200 and it is equivalent to the SRv6 message 4 mentioned in method 200
  • the NSH message 121 is equivalent to the method 200 mentioned.
  • NSH message 1 NSH message 122 is equivalent to NSH message 2 mentioned in method 200
  • NSH message 123 is equivalent to NSH message 3 mentioned in method 200
  • NSH message 124 is equivalent to NSH message mentioned in method 200 Message 4.
  • network devices such as intermediate nodes and tail nodes can convert the SRv6 message into an NSH message after receiving the SRv6 message.
  • NSH messages are sent to SF entities such as SF entity 1 and SF entity 2, so that the SF entity can perform SF processing on the NSH message. Since the IPv6 and NSH part of the SRv6 message is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message.
  • the SF entity can also support SF processing of SRv6 messages, thereby avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of network upgrades using SFC.
  • FIG. 6 is a schematic flowchart of a method 600 for implementing service function processing in an embodiment of this application.
  • the method 600 may include:
  • the network device receives the first and sixth version of the Internet Protocol segmented routing SRv6 message, where the first SRv6 message includes the first and sixth version of the Internet Protocol header IPv6 Header and the first network service header NSH;
  • the network device generates a first NSH message according to the first SRv6 message, where the first NSH message includes a part of the first SRv6 message excluding the first IPv6 Header;
  • the network device sends the first NSH message to the service function SF entity.
  • the method 600 before the network device generates the first NSH message according to the first SRv6 message, the method 600 further includes:
  • the network device recognizes the first segment identification SID of the network device from the destination address field of the first IPv6 Header;
  • the network device determines that the first SID is used to instruct the network device to send an NSH message to the SF entity.
  • the service path identifier SPI carried by the first NSH the method 600 further includes:
  • the network device After receiving the first SRv6 message, the network device records the mapping relationship between the SPI and the first IPv6Header;
  • the network device After sending the first NSH message to the SF entity, the network device receives a second NSH message sent by the SF entity, where the second NSH message includes a second NSH, and the second NSH Carrying the SPI;
  • the network device determines the first IPv6 Header according to the mapping relationship between the SPI and the first IPv6 Header;
  • the network device replaces the first SID carried in the destination address field of the first IPv6 Header with the second SID of the next-hop network device of the network device to obtain a second IPv6 Header;
  • the network device generates a second SRv6 message according to the second NSH message, the second SRv6 message including the second IPv6 Header, the second NSH, and the payload of the second NSH message .
  • the service path identifier SPI carried by the first NSH the method 600 further includes:
  • the network device After receiving the first SRv6 message, the network device replaces the first SID carried in the destination address field of the first IPv6 Header with the second SID of the next-hop network device of the network device, Obtain the second IPv6 Header;
  • the network device records the mapping relationship between the SPI and the second IPv6 header
  • the network device After sending the first NSH message to the SF entity, the network device receives a second NSH message sent by the SF entity, where the second NSH message includes a second NSH, and the second NSH Carrying the SPI;
  • the network device determines the second IPv6 Header according to the mapping relationship between the SPI and the second IPv6 Header;
  • the network device generates a second SRv6 message according to the second NSH message.
  • the second SRv6 message includes the second IPv6 Header, the second NSH, and the payload of the second NSH message.
  • the determining by the network device that the first SID is used to instruct to send an NSH message to a service function SF entity includes:
  • the network device obtains the function part of the first SID, and the function part instructs to send an NSH message to a service function SF entity.
  • the method 600 further includes:
  • the network device Before the network device receives the first SRv6 message, the network device issues the first SID to the controller or the classifier.
  • the method 600 further includes:
  • the network device records the mapping relationship between the first SID and the SF entity.
  • the first SID is carried in the Border Gateway Protocol BGP link state LS type length value TLV information and sent.
  • the method 600 further includes:
  • the network device Before the network device receives the first SRv6 message, the network device publishes to the controller or the classifier encapsulation information used to transmit the NSH message between the network device and the SF.
  • the network device mentioned in the method 600 may be the intermediate node N mentioned in the method 200
  • the SF entity mentioned in the method 600 may be the SF entity 1 mentioned in the method 200
  • the first SRv6 message may be SRv6 message 2 mentioned in method 200
  • the first NSH message mentioned in method 600 may be NSH message 1 mentioned in method 200
  • the second SRv6 message may be the SRv6 message 3 mentioned in the method 200
  • the second NSH message mentioned in the method 600 may be the NSH message 4 mentioned in the method 200.
  • the network device mentioned in the method 600 may be the tail node mentioned in the method 200
  • the SF entity mentioned in the method 600 may be the SF entity 2 mentioned in the method 200
  • the first SRv6 message may be SRv6 message 4 mentioned in method 200
  • the first NSH message mentioned in method 600 may be NSH message 3 mentioned in method 200
  • the second NSH message may be the NSH message 4 mentioned in the method 200.
  • various specific implementation manners of the method 600 can be referred to the related introduction in the method 200.
  • the network device can convert the SRv6 message into an NSH message after receiving the SRv6 message, and then send the NSH message to the SF entity Therefore, the SF entity can perform SF processing on the NSH message. Since the part of the SRv6 message that removes the IPv6 Header and NSH is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message.
  • the SF entity can also support SF processing of SRv6 messages, thereby avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of network upgrades using SFC.
  • FIG. 7 is a schematic flowchart of a method 600 for implementing service function processing in an embodiment of this application.
  • the method 700 may include:
  • the classifier receives a business message
  • the classifier obtains a segment routing SR strategy corresponding to the service packet, where the SR strategy includes a segment list, the segment list is used to identify a transmission path of the service packet, and the segment list includes network
  • the SID of the device where the SID of the network device is used to instruct the network device to send a network service header NSH message to a service function SF entity;
  • the classifier obtains the NSH corresponding to the service message.
  • the classifier encapsulates an IPv6 Header and the NSH in the service message according to the SR policy to generate an SRv6 message.
  • the classifier uses the segment list to send the SRv6 message to the next-hop network device of the classifier.
  • the classifier obtaining the segment routing SR strategy corresponding to the service message includes:
  • the classifier receives the SR strategy sent by the controller.
  • the classifier obtaining the segment routing SR strategy corresponding to the service message includes:
  • the classifier receives the SID sent by the network device
  • the classifier generates the SR strategy based on the SID.
  • the SID is carried in the Border Gateway Protocol BGP link state LS type length value TLV information and sent.
  • the method 700 further includes:
  • the classifier receives encapsulation information used for transmitting NSH messages between the network device and the SF entity.
  • the classifier mentioned in method 700 may be the classifier mentioned in method 200
  • the SR strategy mentioned in method 700 may be the SR strategy mentioned in method 200
  • the SRv6 mentioned in method 700 The message may be the SRv6 message 1 mentioned in method 200
  • the network device mentioned in method 700 may include the intermediate node N and/or tail node mentioned in method 200
  • the SF entity mentioned in method 700 may include SF entity 1 and/or SF entity 2 mentioned in method 200. Therefore, for various specific implementation manners of the method 700, please refer to the related introduction in the method 200.
  • the classifier can encapsulate NSH and IPv6 headers in service messages to generate SRv6 messages and send them, where the IPv6 header carries
  • the SID of the network device can be used to instruct the network device to convert the SRv6 message into an NSH message and send it to the SF entity. Therefore, the SF entity can perform SF processing on the NSH message. Since the part of the SRv6 message that removes the IPv6 Header and NSH is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message.
  • the SF entity can also support SF processing of SRv6 messages, thereby avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of network upgrades using SFC.
  • FIG. 8 is a schematic flowchart of a method 800 for implementing service function processing in an embodiment of this application.
  • the method 800 may include:
  • the controller receives an SID of a network device, where the SID of the network device is used to instruct the network device to send a network service header NSH message to a service function SF entity;
  • the controller generates an SR policy of the service flow, where the SR policy includes a segment list, the segment list is used to indicate a transmission path of the service flow, and the segment list includes the SID;
  • the controller generates the NSH of the service flow.
  • the controller sends the SR policy and the NSH to the classifier.
  • the SID is carried in the Border Gateway Protocol BGP link state LS type length value TLV information and sent.
  • the method 800 further includes:
  • the controller sends the packaging information to the classifier.
  • the controller mentioned in method 800 may be the controller mentioned in method 200
  • the classifier mentioned in method 800 may be the classifier mentioned in method 200
  • the SR mentioned in method 800 The strategy may be the SR strategy mentioned in the method 200
  • the network device mentioned in the method 700 may include the intermediate node N and/or the tail node mentioned in the method 200
  • the SF entity mentioned in the method 700 may include the SF entity mentioned in the method 200.
  • the SRv6 message mentioned in the method 800 may include the SRv6 message 2 and/or the SRv6 message 4 mentioned in the method 200. Therefore, for various specific implementation manners of the method 800, please refer to the related introduction in the method 200.
  • the controller can issue the SR policy and NSH to the classifier.
  • the SID of the network device in the segment list carried in the SR policy can be used to instruct the network device to convert the SRv6 message into an NSH message and send it to the SF entity. Therefore, the classifier can encapsulate the IPv6 Header and NSH to generate an SRv6 message and send it according to the SR policy.
  • the IPv6 Header carries the SID of the network device so that the SF entity can perform SF processing on the NSH message .
  • the SF entity Since the part of the SRv6 message that removes the IPv6 Header and NSH is the payload of the NSH message, the SF entity performs SF processing on the NSH message, which is equivalent to SF processing on the SRv6 message. It can be seen that even if the SF entity does not support SR, it can also support SF processing of SRv6 messages, thereby avoiding technical transformation of a large number of SF entities that do not support SR in the existing network, and reducing the cost of network upgrades using SFC.
  • FIG. 10 is a schematic structural diagram of a network device 1000 that implements service function processing in an embodiment of this application.
  • the network device 1000 includes a receiving unit 1001, a processing unit 1002, and a sending unit 1003. among them:
  • the receiving unit 1001 is configured to receive the first and sixth version of the Internet Protocol segmented routing SRv6 message, where the first SRv6 message includes the first and sixth version of the Internet Protocol header IPv6 Header and the first network service header NSH;
  • the processing unit 1002 is configured to generate a first NSH message according to the first SRv6 message, where the first NSH message includes a part of the first SRv6 message excluding the first IPv6 Header;
  • the sending unit 1003 is configured to send the first NSH message to the service function SF entity.
  • processing unit 1002 is further used for:
  • the first SID is used to instruct the network device to send an NSH message to the SF entity.
  • the service path identifier SPI carried by the first NSH In some embodiments, the service path identifier SPI carried by the first NSH;
  • the processing unit 1002 is further configured to record the mapping relationship between the SPI and the first IPv6 Header after the receiving unit 1001 receives the first SRv6 message;
  • the receiving unit 1001 is further configured to receive a second NSH message sent by the SF entity after the sending unit 1003 sends the first NSH message to the SF entity, the second NSH message Including a second NSH, and the second NSH carries the SPI;
  • the processing unit 1002 is further configured to determine the first IPv6 Header according to the mapping relationship between the SPI and the first IPv6 Header, and transfer the first IPv6 Header carried in the destination address field of the first IPv6 Header
  • One SID is replaced with the second SID of the next-hop network device of the network device to obtain a second IPv6 Header
  • a second SRv6 message is generated according to the second NSH message
  • the second SRv6 message includes The second IPv6 Header, the second NSH, and the payload of the second NSH message.
  • the service path identifier SPI carried by the first NSH In some embodiments, the service path identifier SPI carried by the first NSH;
  • the processing unit 1002 is further configured to, after the receiving unit 1001 receives the first SRv6 message, replace the first SID carried in the destination address field of the first IPv6 Header with that of the network device Obtain the second IPv6 header of the second SID of the next-hop network device, and record the mapping relationship between the SPI and the second IPv6 header;
  • the receiving unit 1001 is further configured to receive a second NSH message sent by the SF entity after the sending unit 1003 sends the first NSH message to the SF entity, the second NSH message Including a second NSH, and the second NSH carries the SPI;
  • the processing unit 1002 is further configured to determine the second IPv6 Header according to the mapping relationship between the SPI and the second IPv6 Header, and generate a second SRv6 message according to the second NSH message.
  • the second SRv6 message includes the second IPv6 Header, the second NSH, and the payload of the second NSH message.
  • the processing unit 1002 is further configured to obtain a function part of the first SID, and the function part is used to instruct to send an NSH message to a service function SF entity.
  • the sending unit 1003 is further configured to issue the first SID to the controller or classifier before the receiving unit receives the first SRv6 message.
  • the processing unit 1003 is further configured to record the mapping relationship between the first SID and the SF entity by the network device.
  • the sending unit 1003 is further configured to, before the receiving unit receives the first SRv6 message, publish to the controller or classifier for the transmission of NSH messages between the network device and the SF. Encapsulation information of the text.
  • the network device 1000 is the intermediate node N or the end node mentioned in the method 200. Therefore, for various specific embodiments of the network device 1000, please refer to the method 200 for the intermediate node N or the end node. Introduction, this embodiment will not repeat them.
  • FIG. 11 is a schematic structural diagram of a classifier 1100 for implementing service function processing in an embodiment of the application.
  • the classifier 1100 includes a receiving unit 1101, a processing unit 1102, and a sending unit 1103. among them:
  • the receiving unit 1101 is configured to receive service messages
  • the processing unit 1102 is configured to obtain the segment routing SR strategy corresponding to the service message, obtain the NSH corresponding to the service message, and, according to the SR strategy, encapsulate the IPv6 Header and the service message
  • the NSH generates an SRv6 message
  • the SR policy includes a segment list that is used to identify the transmission path of the service message, the segment list includes the SID of the network device, and the SID of the network device is used to indicate all
  • the network device sends a network service header NSH message to the service function SF entity;
  • the sending unit 1103 is configured to send the SRv6 message to the next-hop network device of the classifier by using the segment list.
  • the receiving unit 1101 is further configured to receive the SR strategy sent by the controller by the classifier.
  • the receiving unit 1101 is further configured to receive the SID sent by the network device;
  • the processing unit 1102 is further configured to generate the SR policy based on the SID.
  • the receiving unit 1101 is further configured to receive encapsulation information used to transmit NSH packets between the network device and the SF entity.
  • the classifier 1100 is the classifier mentioned in the method 200. Therefore, for various specific embodiments of the classifier 1100, please refer to the description of the classifier in the method 200, and will not be repeated in this embodiment.
  • FIG. 12 is a schematic structural diagram of a controller 1200 for implementing service function processing in an embodiment of the application.
  • the controller 1200 includes a receiving unit 1201, a processing unit 1202, and a sending unit 1203. among them:
  • the receiving unit 1201 is configured to receive an SID of a network device, where the SID of the network device is used to instruct the network device to send a network service header NSH message to a service function SF entity;
  • the processing unit 1202 is configured to generate an SR policy of a service flow and an NSH of the service flow, the SR policy includes a segment list, the segment list is used to indicate a transmission path of the service flow, and the segment list includes the SID;
  • the sending unit 1203 is configured to send the SR policy and the NSH to the classifier.
  • the receiving unit 1201 is further configured to receive encapsulation information sent by the network device for transmitting NSH messages between the network device and the SF;
  • the sending unit 1203 is further configured to send the encapsulation information to the classifier.
  • controller 1200 is the controller mentioned in the method 200. Therefore, for various specific embodiments of the controller 1200, please refer to the description of the controller in the method 200, which will not be repeated in this embodiment.
  • an embodiment of the present application also provides a network device including a processor and a memory.
  • the memory stores instructions.
  • the processor executes the instructions, the network device is caused to execute the aforementioned method 600.
  • an embodiment of the present application also provides a classifier.
  • the classifier includes a processor and a memory.
  • the memory stores an instruction.
  • the processor executes the instruction
  • the network device executes the aforementioned method 700.
  • an embodiment of the present application also provides a controller, which includes a processor and a memory, and the memory stores an instruction.
  • the processor executes the instruction, the network device is caused to execute the aforementioned method 800.
  • the embodiments of the present application also provide a computer-readable storage medium that stores instructions in the computer-readable storage medium, and when it runs on a computer or a processor, the computer or the processor executes the aforementioned methods 600, The aforementioned method 700 or the aforementioned method 800.
  • the computer software product can be stored in a storage medium, such as read-only memory (English: read-only memory, ROM)/RAM, magnetic disk, An optical disc, etc., includes a number of instructions to enable a computer device (which may be a personal computer, a server, or a network communication device such as a router) to execute the method described in each embodiment of the application or some parts of the embodiment.
  • a computer device which may be a personal computer, a server, or a network communication device such as a router
  • the various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments.
  • the description is relatively simple, and for related parts, please refer to the partial description of the method embodiment.
  • the above-described device and system embodiments are only illustrative.
  • the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in One place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the objectives of the solutions of the embodiments. Those of ordinary skill in the art can understand and implement it without creative work.

Abstract

本申请公开了一种实现业务功能处理的方法。该方法包括:网络设备接收第一第六版互联网协议分段路由SRv6报文,所述第一SRv6报文包括第一第六版互联网协议头IPv6 Header和第一网络业务头NSH;所述网络设备根据所述第一SRv6报文生成第一NSH报文,所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分;所述网络设备向业务功能SF实体发送所述第一NSH报文。此外,本申请还公开了一种实现业务功能处理的装置。

Description

一种实现业务功能处理的方法及装置
本申请要求于2019年6月14日提交中国国家知识产权局、申请号201910517795.6、申请名称为“一种实现业务功能处理的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别是涉及一种实现业务功能处理的方法及装置。
背景技术
目前,业务功能链(中文:service function chaining,简称:SFC)已经被广泛地应用到许多网络中。一条SFC表示一类报文或一条数据流按照顺序经过的业务功能(英文:service function,简称:SF)。在报文传输的过程中,业务功能转发器(英文:service function forwarder,简称:SFF)接收到属于SFC的报文时,可以将报文发送到SFC在SFF上指定的SF实体。在SF实体对报文进行SF处理之后,SFF可以从SF实体接收报文并将报文发送至下一跳网络设备。
在分段路由(英文:segment gouting,简称:SR)场景中,网络中传输的报文为SR报文。但是,现有网络中存在大量不支持SR的SF实体,这些SF实体无法对SR报文进行SF处理。如果通过技术改造使得现有网络中所有SF实体均支持SR,则改造成本过高。
发明内容
本申请实施例提供了一种实现SFC的方法及装置,以使得在SF实体不支持SR的情况下SRv6报文能够实现SF处理,从而避免对现有网络中大量不支持SR的SF实体进行技术改造,降低改造成本。
第一方面,本申请实施例提供了一种实现业务功能处理的方法。根据该方法,网络设备接收第一第六版互联网协议分段路由报文,根据第一SRv6报文生成第一NSH报文,并向业务功能SF实体发送第一NSH报文。其中,所述第一SRv6报文包括第一第六版互联网协议头(Internet Protocol version 6 Header,IPv6 Header)和第一网络业务头NSH;所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分。由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,网络设备接收到第六版互联网协议分段路由(英文:Internet Protocol version 6 segment routing,简称:SRv6)报文之后可以将SRv6报文转换成网络业务头(英文:network service header,简称NSH)报文再向SF实体发送NSH报文,从而SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能支持对SRv6报文进行SF处理,避免对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
可选地,在所述网络设备根据所述第一SRv6报文生成第一NSH报文之前,该方法还包括:所述网络设备从所述第一IPv6 Header的目的地址字段中识别出所述网络设备的第一段标识SID,确定所述第一SID用于指示所述网络设备向所述SF实体发送NSH报文。可见,通过网络设备的第一SID来指示向SF实体发送NSH报文的功能,可以在SRv6报文的IPv6 Header结构不改变的情况下使得网络设备能够根据第一SRv6报文生成第一NSH报文并向SF实体发送,从而使得SF实体对第一NSH报文进行SF处理。
可选地,所述第一NSH携带的业务路径标识SPI。在接收所述第一SRv6报文之后,所述网络设备还记录所述SPI与所述第一IPv6 Header之间的映射关系。在向所述SF实体发送所述第一NSH报文之后,所述网络设备还接收所述SF实体发送的第二NSH报文,根据所述SPI与所述第一IPv6 Header之间的映射关系,确定所述第一IPv6 Header,将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文,所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。其中,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI。可见,网络设备可以通过记录第一IPv6 Header与SPI的映射关系为SF实体返回的第二NSH报文确定第二IPv6 Header,从而使得网络设备能够根据SF实体返回的第二NSH报文生成第二SRv6报文并继续转发给下一跳。
可选地,所述第一NSH携带的业务路径标识SPI。在接收所述第一SRv6报文之后,所述网络设备将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,记录所述SPI与所述第二IPv6 header之间的映射关系。在向所述SF实体发送所述第一NSH报文之后,所述网络设备接收所述SF实体发送的第二NSH报文,根据所述SPI与所述第二IPv6 Header之间的映射关系,确定所述第二IPv6 Header,并根据所述第二NSH报文生成第二SRv6报文所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。其中,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI。可见,网络设备可以通过记录第二IPv6 Header与SPI的映射关系为SF实体返回的第二NSH报文确定第二IPv6 Header,从而使得网络设备能够根据SF实体返回的第二NSH报文生成第二SRv6报文并继续转发给下一跳。
可选地,所述网络设备确定所述第一SID用于指示向业务功能SF实体发送NSH报文,包括:所述网络设备获得所述第一SID的功能(function)部分,所述function部分用于指示向业务功能SF实体发送NSH报文。可见,通过网络设备的第一SID中的function部分来指示向SF实体发送NSH报文的功能,使得网络设备的第一SID能够用来指示该功能,从而使得在SRv6报文的IPv6 Header结构不改变的情况下使得网络设备能够根据第一SRv6报文生成第一NSH报文并向SF实体发送,从而使得SF实体对第一NSH报文进行SF处理。
可选地,在所述网络设备接收第一SRv6报文之前,所述网络设备还向控制器或分类器发布所述第一SID。可见,能够用于指示向SF实体发送NSH报文的网络设备 的第一SID可以由网络设备向控制器或分类器发布,从而使得分类器能够将该第一SID封装到SRv6报文中。
可选地,所述网络设备还记录所述第一SID与所述SF实体之间的映射关系。可见,网络设备能够根据该映射关系将由携带有该第一SID的SRv6报文生成的NSH报文向该SF实体发送。
可选地,所述第一SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。可见,网络设备可以通过BGP LS向分类器或控制器发布第一SID,从而使得第一SID能够被封装到SRv6报文中。
可选地,在所述网络设备接收第一SRv6报文之前,所述网络设备还向控制器或分类器发布用于所述网络设备与所述SF之间传输NSH报文的封装信息。可见,控制器和分类器可以得到网络设备发布的NSH报文的封装信息,从而该封装信息可以被携带到SRv6报文中,使得SRv6报文能够被转换成NSH报文。
第二方面,本申请实施例提供了一种实现业务功能处理的方法。根据该方法,分类器接收业务报文,获得对应所述业务报文的分段路由SR策略和NSH,根据所述SR策略,对所述业务报文封装IPv6 Header和所述NSH生成SRv6报文,并利用所述段列表向所述分类器的下一跳网络设备发送所述SRv6报文。其中,所述SR策略包括段列表,所述段列表用于标识所述业务报文的传输路径,所述段列表包括网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文。由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,分类器可以对业务报文封装NSH和IPv6 Header生成SRv6报文并发送,其中,IPv6 Header中携带的网络设备的SID可以用于指示网络设备将SRv6报文转换成NSH报文并向SF实体发送,因此,SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,从而避免了对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
可选地,所述分类器获得对应所述业务报文的分段路由SR策略包括:所述分类器接收控制器发送的所述SR策略。可见,SR策略可以是由控制器生成并下发到分类器。
可选地,所述分类器获得对应所述业务报文的分段路由SR策略包括:所述分类器接收所述网络设备发送的所述SID;所述分类器基于所述SID生成所述SR策略。可见,SR策略可以是由分类器生成的。
可选地,所述SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。可见,网络设备可以通过BGP LS向分类器或控制器发布第一SID,从而使得第一SID能够被封装到SRv6报文中。
可选地,所述分类器还接收用于所述网络设备与所述SF实体之间传输NSH报文的封装信息。可见,分类器可以得到网络设备发布的NSH报文的封装信息,从而该封 装信息可以被携带到SRv6报文中,使得SRv6报文能够被转换成NSH报文。
第三方面,本申请实施例提供了一种实现业务功能处理的方法。根据该方法,控制器接收网络设备的SID,生成业务流的SR策略和NSH,并向分类器发送所述SR策略和所述NSH。其中,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文,所述SR策略包括段列表,所述段列表用于指示所述业务流的传输路径,所述段列表包括所述SID。由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,控制器可以向分类器下发SR策略和NSH。该SR策略携带的段列表中的网络设备的SID,可以用于指示网络设备将SRv6报文转换成NSH报文并向SF实体发送。因此,分类器按照该SR策略可以对业务报文封装IPv6 Header和NSH生成SRv6报文并发送,其中,IPv6 Header中携带了该网络设备的SID,这样SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,从而避免了对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
可选地,所述SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。可见,网络设备可以通过BGP LS向控制器发布第一SID,从而使得第一SID能够被封装到SRv6报文中。
可选地,所述控制器还接收所述网络设备发送的用于所述网络设备与所述SF之间传输NSH报文的封装信息,并向所述分类器发送所述封装信息。可见,控制器可以得到网络设备发布的NSH报文的封装信息并提供给分类器,从而该封装信息可以被携带到SRv6报文中,使得SRv6报文能够被转换成NSH报文。
第四方面,本申请实施例提供了一种实现业务功能处理的网络设备。该网络设备包括接收单元、处理单元和发送单元。接收单元,用于接收第一第六版互联网协议分段路由SRv6报文,所述第一SRv6报文包括第一第六版互联网协议头IPv6 Header和第一网络业务头NSH。处理单元,用于根据所述第一SRv6报文生成第一NSH报文,所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分。发送单元,用于向业务功能SF实体发送所述第一NSH报文。
可选地,所述处理器,还用于:在根据所述第一SRv6报文生成第一NSH报文之前,从所述第一IPv6 Header的目的地址字段中识别出所述网络设备的第一段标识SID;确定所述第一SID用于指示所述网络设备向所述SF实体发送NSH报文。
可选地,所述第一NSH携带的业务路径标识SPI。所述处理单元,还用于在所述接收单元接收所述第一SRv6报文之后,记录所述SPI与所述第一IPv6 Header之间的映射关系。所述接收单元,还用于在所述发送单元向所述SF实体发送所述第一NSH报文之后,接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI。所述处理单元,还用于根据所述SPI与所述第一IPv6 Header之间的映射关系,确定所述第一IPv6 Header,将所述第一IPv6 Header的目的 地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文,所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
可选地,所述第一NSH携带的业务路径标识SPI。所述处理单元,还用于在所述接收单元接收所述第一SRv6报文之后,将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,记录所述SPI与所述第二IPv6 header之间的映射关系。所述接收单元,还用于在所述发送单元向所述SF实体发送所述第一NSH报文之后,接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI。所述处理单元,还用于根据所述SPI与所述第二IPv6 Header之间的映射关系,确定所述第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
可选地,所述处理器,还用于获得所述第一SID的功能function部分,所述function部分用于指示向业务功能SF实体发送NSH报文。
可选地,所述发送单元,还用于在所述接收单元接收第一SRv6报文之前,向控制器或分类器发布所述第一SID。
可选地,所述处理单元,还用于记录所述第一SID与所述SF实体之间的映射关系。
结合第四方面的第五种可能的实现方式,在第四方面的第七种可能的实现方式中,所述第一SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。
可选地,所述发送单元,还用于在所述接收单元接收第一SRv6报文之前,向控制器或分类器发布用于所述网络设备与所述SF之间传输NSH报文的封装信息。
可以理解的是,第四方面提供的网络设备对应于第一方面提供的方法,故第四方面各实现方式的技术效果可参见第一方面各实现方式的介绍。
第五方面,本申请实施例一种实现业务功能处理的分类器。该分类器包括接收单元、处理单元和发送单元。接收单元,用于接收业务报文。处理单元,用于获得对应所述业务报文的分段路由SR策略,获得对应所述业务报文的NSH,以及,根据所述SR策略,对所述业务报文封装IPv6 Header和所述NSH生成SRv6报文;所述SR策略包括段列表,所述段列表用于标识所述业务报文的传输路径,所述段列表包括网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文。发送单元,用于利用所述段列表向所述分类器的下一跳网络设备发送所述SRv6报文。
可选地,所述接收单元,还用于所述分类器接收控制器发送的所述SR策略。
可选地,所述接收单元,还用于接收所述网络设备发送的所述SID;所述处理单 元,还用于基于所述SID生成所述SR策略。
可选地,所述SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。
可选地,所述接收单元,还用于接收用于所述网络设备与所述SF实体之间传输NSH报文的封装信息。
可以理解的是,第五方面提供的分类器对应于第二方面提供的方法,故第五方面各实现方式的技术效果可参见第一方面各实现方式的介绍。
第六方面,本申请实施例提供了一种实现业务功能处理的控制器。该控制器包括接收单元、处理单元和发送单元。接收单元,用于接收网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文。处理单元,用于生成业务流的SR策略和所述业务流的NSH,所述SR策略包括段列表,所述段列表用于指示所述业务流的传输路径,所述段列表包括所述SID。发送单元,用于向分类器发送所述SR策略和所述NSH。
可选地,所述SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。
可选地,所述接收单元,还用于接收所述网络设备发送的用于所述网络设备与所述SF之间传输NSH报文的封装信息;所述发送单元,还用于向所述分类器发送所述封装信息。
可以理解的是,第六方面提供的装置对应于第一方面提供的方法,故第六方面各实现方式的技术效果可参见第一方面各实现方式的介绍。
第七方面,本申请实施例还提供了一种网络设备,该网络设备包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述第一方面任意一种实现方式所述的方法。
第八方面,本申请实施例还提供了一种分类器,该分类器包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述第二方面任意一种实现方式所述的方法。
第九方面,本申请实施例还提供了一种控制器,该控制器包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述第三方面任意一种实现方式所述的方法。
第十方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得该计算机或处理器执行前述第一方面任意一种实现方式所述的方法、前述第二方面任意一种实现方式所述的方法或前述第三方面任意一种实现方式所述的方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一应用场景所涉及的网络系统框架示意图;
图2为本申请实施例中一种实现业务功能处理的方法200的流程示意图;
图3为本申请实施例中一种BGP LS TLV示例的结构示意图;
图4为本申请实施例中一种SRv6报文示例的结构示意图;
图5为本申请实施例中一种NSH报头格式示例的示意图;
图6为本申请实施例中一种实现业务功能处理的方法600的流程示意图;
图7为本申请实施例中一种实现业务功能处理的方法600的流程示意图;
图8为本申请实施例中一种实现业务功能处理的方法800的流程示意图;
图9为本申请实施例中一种网络设备的SID示例的结构示意图;
图10为本申请实施例中一种实现业务功能处理的网络设备1000的结构示意图;
图11为本申请实施例中一种实现业务功能处理的分类器1100的结构示意图;
图12为本申请实施例中一种实现业务功能处理的控制器1200的结构示意图。
具体实施方式
在SR场景中,网络中传输的报文为SR报文,也就是说,SFF之间传输的报文为SR报文。但是,若SFF将SR报文发送到不支持SR的SF实体上,则SF实体无法对SR报文进行处理。如果对SF实体进行升级,使得SF实体能够支持SR,这样可以解决上述问题,但是升级SF实体存在一定成本。
为了解决上述问题,在本申请实施例中,网络设备接收到SRv6报文之后可以将SRv6报文转换成NSH报文再向SF实体发送NSH报文。由于现有网络中的SF实体大多支持对NSH报文进行处理,因此,在不升级SF实体的情况下,SF实体也能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,即使在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,这样就避免了对现有网络中大量不支持SR的SF实体进行技术改造,从而降低了网络升级使用SFC的成本。
举例来说,本申请实施例的场景之一,可以是应用到如图1所示的网络系统100中。
分类器(英文:classifier)101上可以设置有业务流的SR策略,该SR策略可以包括段列表(英文:segment list)和NSH。当分类器101接收到业务流的业务报文,分类器101可以根据该业务流的SR策略对该业务报文封装第六版互联网协议头(英文:internet protocol version 6 header,简称:IPv6 Header)和NSH,从而生成SRv6报文111。其中,SRv6报文111的IPv6 Header中包括该业务流的段列表。该段列表用于指示该业务流在网络系统100中的传输路径,包括该传输路径上各跳网络设备的段标识(英文:segment identification,简称:SID)。假设该业务流的传输路径是由分类器101传输到SFF 102再由SFF 102传输到SFF 104,该业务流的段列表包括SFF 102的SID和SFF 104的SID。在SRv6报文111的IPv6 Header的目的地址 (英文:destination address,简称:DA)字段中携带有分类器101的下一跳网络设备的SID,即SFF 102的SID。因此,分类器101可以根据SRv6报文111的IPv6 Header的DA字段携带的SFF 102的SID,向SFF 102发送SRv6报文111。
当SFF 102接收到SRv6报文111,SFF 102可以将SRv6报文111转换成NSH报文121,其中,NSH报文121包括SRv6报文111中去掉IPv6 Header的部分,即包括SRv6报文111中的NSH及NSH之后的有效载荷。然后,SFF 102可以将NSH报文121发送给SF实体103。SF实体103对NSH报文121进行SF处理之后向SFF 102发送处理后的NSH报文122。SFF 102可以将接收到的NSH报文122再转换成SRv6报文112。其中,SRv6报文112的IPv6 Header是通过将SRv6报文111的IPv6 Header的段列表中SFF 102的下一跳网络设备的SID更新到SRv6报文111的IPv6 Header的DA字段而得到的,也即,SRv6报文112的IPv6 Header的DA字段携带有SFF 104的SID。因此,SFF 102可以根据SRv6报文112的IPv6 Header的DA字段携带的SFF 104的SID,向SFF 104发送SRv6报文112。
当SFF 104接收到SRv6报文112,SFF 104可以将SRv6报文112转换成NSH报文123,其中,NSH报文123包括SRv6报文112中去掉IPv6 Header的部分,即包括SRv6报文112中的NSH及NSH之后的有效载荷。然后,SFF 104可以将NSH报文123发送给SF实体105。SF实体105对NSH报文123进行SF处理之后向SFF 104发送处理后的NSH报文124。由于SFF 104为该业务流在网络系统100中的传输路径上的尾节点,SFF 104可以获取接收到的NSH报文124的有效载荷生成该业务流的业务报文。
此外,在一些可能的实现方式中,网络系统100还可以包括控制器(英文:controller)106。控制器106可以接收SFF 102和SFF 103上报的SID并基于SFF 102和SFF 103上报的SID生成业务流的SR策略。该业务流的SR策略可以由控制器106生成并下发到分类器101。
可以理解的是,上述场景仅是本申请实施例提供的一个场景示例,本申请实施例并不限于此场景。
下面结合附图,通过实施例来详细说明本申请实施例中实现业务功能处理的方法和装置的具体实现方式。
图2为本申请实施例中一种实现业务功能处理的方法200的流程示意图。具体地,方法200例如可以包括:
201、分类器接收业务报文。
202、分类器确定所述业务报文对应的业务流并获取所述业务流的SR策略和NSH。
具体实现时,分类器上设置有业务流的SR策略和NSH 1。当分类器接收到业务报文,分类器可以通过该业务报文的报文特征与该业务流的报文特征是否相匹配,确定该业务报文是否属于该业务流。当该业务报文属于该业务流,分类器可以获取该业务流的SR策略和NSH 1。其中,报文特征例如可以是五元组等。
其中,业务流的NSH 1可以用于封装到该业务流的SRv6报文中,以便该业务流的传输路径上的网络设备能够将SRv6报文转换成NSH报文再向SF实体发送,这样SF实体就可以对NSH报文进行SF处理。
SR策略可以包括业务流的段列表。业务流的段列表可以用于指示业务流的传输路径。具体地,该段列表可以包括该业务流的传输路径上各跳网络设备的SID。在该段列表封装到该业务流的业务报文而形成SRv6报文之后,该传输路径上各跳网络设备可以从SRv6报文携带的段列表中识别出下一跳网络设备的SID并根据该SID向下一跳网络设备发送SRv6报文,这样SRv6报文就能够沿着该传输路径进行传输。例如,在图1所示的示例性场景中,业务流的传输路径是由分类器101传输到SFF 102再由SFF 104传输到SFF 103,则该业务流的段列表可以包括SFF 102的SID和SFF 104的SID。在该段列表被封装到该业务流的业务报文而生成SRv6报文之后,分类器101可以从SRv6报文携带的段列表中识别出下一跳SFF 102的SID并向SFF 102发送SRv6报文。SFF 102可以从SRv6报文携带的段列表中识别出下一跳SFF 104的SID并向SFF 104发送SRv6报文。
此外,在一些实施方式中,SR策略还可以包括与SF实体对应的SID,该SID用于指示业务流的传输路径上的网络设备将该业务流的SRv6报文转换成NSH报文并向SF实体发送。
作为一种示例,在SR策略中的段列表,除了包括该业务流的传输路径上各跳网络设备的SID之外,还可以包括该业务流需要经过的SF实体的SID。这样,网络设备可以根据SRv6报文中携带的SF实体的SID将SRv6报文转换成NSH报文并向该SF实体发送NSH报文。例如,在图1所示的示例性场景中,业务流的传输路径是由分类器101传输到SFF 102再由SFF 104传输到SFF 103,业务流在SFF 102处需要发送给SF实体103处理,业务流在SFF 104处需要发送给SF实体105处理,则业务流的段列表可以包括SFF 102的SID、SF实体103的SID、SFF 104的SID和SF实体105的SID。其中,SF实体103的SID用于指示SFF 102将业务流的SRv6报文转换成NSH报文并向SF实体103发送,SF实体105的SID用于指示SFF 104将业务流的SRv6报文转换成NSH报文并向SF实体105发送。
作为另一种示例,在业务流的段列表中,网络设备的SID除了用于指示该业务流的传输路径之外,还可以用于指示该网络设备向SF实体发送包括SRv6报文中去掉IPv6 Header的部分的NSH报文。这样,该网络设备可以根据SRv6报文中携带的该网络设备的SID将SRv6报文转换成NSH报文并向该SF实体发送NSH报文。例如,在图1所示的示例性场景中,业务流的传输路径是由分类器101传输到SFF 102再由SFF 104传输到SFF 103,业务流在SFF 102处需要发送给SF实体103处理,业务流在SFF 104处需要发送给SF实体105处理,则业务流的段列表可以包括SFF 102的SID和SFF 104的SID。其中,SFF 102的SID,除了用于指示分类器101向SFF 102发送业务流的SRv6报文之外,还用于指示SFF 102将业务流的SRv6报文转换成NSH报文并向SF实体103发送。SFF 104的SID,除了用于指示SFF 102向SFF 104发送业务流的SRv6报文之外,还用于指示SFF 104将业务流的SRv6报文转换成NSH报文并向SF实体105发送。
在一个示例中,网络设备的SID的格式可以参见图9所示的示例性格式。该SID格式包括位置(英文:locator)字段、功能(英文:function)字段和参数(英文:argument)字段。其中,locator字段携带有用于指示该网络设备的指示信息。Function字段用于 指示该网络设备所要执行的操作的指示信息。若网络设备的SID用于指示网络设备将SRv6报文转换成NSH报文并向SF实体发送,则该SID的function字段中携带的指示信息与SF实体相对应,用于指示将SRv6报文转换成NSH报文并向该SF实体发送。
可以理解的是,根据网络架构的不同,业务流的SR策略和NSH可以由不同的网络设备生成。
作为一种示例,业务流的传输路径上各跳网络设备可以向分类器发布SID,分类器可以基于接收到的SID生成业务流的SR策略。例如,在图1所示的示例性场景中,SFF 102可以向分类器101发布SFF 102的SID,SFF 104可以向分类器101发布SFF 104的SID,分类器101可以基于SFF 102的SID和SFF 104的SID生成SR策略,其中,SFF 102的SID用于指示SFF 102将业务流的SRv6报文转换成NSH报文并向SF实体103发送,SFF 104的SID用于指示SFF 104将业务流的SRv6报文转换成NSH报文并向SF实体105发送。又如,在图1所示的示例性场景中,SFF 102可以向分类器101发布SFF 102的SID和SF实体103的SID,SFF 104可以向分类器101发布SFF 104的SID和SF实体105的SID,分类器101可以基于SFF102的SID、SF实体103的SID、SFF 104的SID和SF实体105的SID生成SR策略。此外,业务流的NSH 1也可以是分类器生成的。
作为另一种示例,业务流的传输路径上各跳网络设备可以向控制器发布SID,控制器可以基于接收到的SID生成业务流的SR策略并下发到分类器。例如,在图1所示的示例性场景中,SFF 102可以向控制器106发布SFF 102的SID,SFF 104可以向控制器106发布SFF 104的SID,控制器106可以基于SFF 102的SID和SFF 104的SID生成SR策略并将SR策略下发到分类器101,其中,SFF 102的SID用于指示SFF 102将业务流的SRv6报文转换成NSH报文并向SF实体103发送,SFF 104的SID用于指示SFF 104将业务流的SRv6报文转换成NSH报文并向SF实体105发送。又如,在图1所示的示例性场景中,SFF 102可以向控制器106发布SFF 102的SID和SF实体103的SID,SFF 104可以向控制器106发布SFF 104的SID和SF实体105的SID,控制器106可以基于SFF102的SID、SF实体103的SID、SFF 104的SID和SF实体105的SID生成SR策略并将SR策略下发到分类器101。此外,业务流的NSH 1也可以是控制器生成并下发到分类器的。
需要说明的是,对于网络设备发布的用于指示该网络设备将SRv6报文转换成NSH报文并向SF实体发送的SID,网络设备可以记录该SID与该SF实体之间的映射关系。当网络设备接收到携带有该SID的SRv6报文时,可以根据该映射关系确定该SF实体,从而就可以将该SRv6报文转换成的NSH报文发送给该SF实体。
在一些实施方式中,网络设备可以将SID携带在边界网关协议(英文:Border Gateway Protocol,简称:BGP)链路状态(英文:Link State,简称:LS)类型长度数值(英文:Type Length Value,简称:TLV)信息中发布给控制器或分类器。例如,在图3所示的BGP LS TLV示例中,其SID字段中可以携带网络设备所要发布的SID,其SRv6端点功能(英文:SRv6 Endpoint Function)字段中可以携带该SID的功能类型。对于用于指示网络设备将SRv6报文转换成NSH报文并向SF实体发送的SID,该SID的功能类型例如可以定义为END.NSH。若TLV信息的SID字段携带了用于指 示网络设备将SRv6报文转换成NSH报文并向SF实体发送的SID,则TLV信息的SRv6 Endpoint Function字段可以携带END.NSH作为SID的功能类型。
此外,在网络设备向控制器或分类器发布用于指示将SRv6报文转换成NSH报文并向SF实体发送的SID的基础上,网络设备还可以向控制器或分类器发布用于该网络设备与该SF实体之间传输NSH报文的封装信息。分类器可以将该封装信息携带在SRv6报文中,这样便于网络设备将SRv6报文转换成NSH报文。例如,在图3所示的BGP LS TLV示例中,其子子TLVs(英文:Sub-sub-TLVs)字段可以携带该封装信息。其中,该封装信息具体是该网络设备与该SF实体之间采用的传输协议对应的报文封装信息,如以太网传输协议、IPv6等。
203、分类器根据所述SR策略,对所述业务报文封装IPv6 Header 1和NSH 1生成SRv6报文1。
具体实现时,分类器可以从SR策略中获取业务流的段列表和业务流的NSH 1,生成携带有该段列表的IPv6 Header 1,并对业务报文封装IPv6 Header 1和NSH 1,生成SRv6报文1。
可以理解的是,本实施例中提及的SRv6报文的结构均可以参照图4所示的SRv6报文示例。SRv6报文可以包括IPv6 Header、NSH和有效载荷,其中,NSH封装在有效载荷之外,IPv6 Header封装在NSH之外。具体到SRv6报文1,业务报文可以作为有效载荷,在业务报文之外封装有NSH 1,在NSH 1之外封装有IPv6 Header 1,从而形成SRv6报文1。类似的,后续提及的SRv6报文2、SRv6报文3、SRv6报文4的结构也均可以参照图4所示的SRv6报文示例。
其中,IPv6 Header 1包括源地址(英文:source address,简称:SA)字段、DA字段和分段路由头(英文:segment routing header,简称:SRH)。段列表携带在SRH中。SA字段携带有首节点的SID,即分类器的SID。DA字段携带有分类器的下一跳网络设备的SID,其中,分类器的下一跳网络设备的SID可以从段列表中获取。例如,在图1所示的场景示例中,在分类器101生成的SRv6报文111中,IPv6 Header的SA字段携带有分类器101的SID,IPv6 Header的DA字段携带有SFF 102的SID,其中,SFF 102是分类器101的下一跳网络设备。
204、分类器向所述IPv6 Header 1的目的地址字段携带的SID对应的网络设备发送SRv6报文1。
可以理解的是,IPv6 Header 1的DA字段携带的SID为分类器的下一跳网络设备的SID,因此,分类器可以根据该SID向下一跳网络设备发送SRv6报文1,从而使得业务流的SRv6报文能够沿着业务流的传输路径进行传输。
对于业务流的传输路径上的任意一个中间节点的网络设备来说,在该中间节点接收到的该业务流的SRv6报文中,IPv6 Header的DA字段携带有该中间节点的SID。该中间节点可以从该SRv6报文的IPv6 Header携带的段列表中识别出该中间节点的下一跳网络设备的SID,并在该SRv6报文的IPv6 Header的DA字段中将该中间节点的SID更新为该中间节点的下一跳网络设备的SID,再将更新后的SRv6报文发送给该中间节点的下一跳网络设备。
对于某个中间节点N来说,若该业务流在中间节点N处需要发送给SF实体1进 行SF处理,则中间节点N可以执行下述步骤205至210。
205、中间节点N接收SRv6报文2。
可以理解的是,若在业务流的传输路径上中间节点N为分类器的下一跳网络设备,则SRv6报文2即为SRv6报文1。若在业务流的传输路径上分类器与中间节点N之间还有其他中间节点,则SRv6报文2为中间节点N的上一跳中间节点发送给中间节点N的报文。
206、中间节点N根据SRv6报文2生成NSH报文1。
207、中间节点N向SF实体1发送NSH报文1。
具体实现时,中间节点N可以将SRv6报文2的IPv6 Header 2去掉,获得SRv6报文2中的NSH 2和有效载荷,然后再对NSH 2和有效载荷封装用于该中间节点与SF实体1之间传输NSH报文的封装信息,得到NSH报文1。然后,中间节点N可以向SF实体1发送NSH报文1。
其中,本实施例提及的各NSH,均携带有业务路径标识(英文:service path identifier,简称:SPI)和业务索引(英文:service index,简称:SI)。SPI和SI可以用于指示该业务流需要经过的SF。具体地,NSH例如可以参见图5所示报头格式。其中,同一业务流的报文中的NSH携带有相同的SPI。
可以理解的是,在SRv6报文2的IPv6 Header 2中可以携带有用于指示中间节点N将SRv6报文转换成NSH报文并向SF实体1发送的SID。当中间节点N从SRv6报文2中识别到该SID,中间节点N可以将SRv6报文2转换成NSH报文1并向SF实体1发送NSH报文1。例如,在图1所示的示例性场景中,若SFF 101从SRv6报文111中识别到SF实体103的SID,则SFF 101可以将SRv6 111转换成NSH报文121并向SF实体103发送NSH报文121。又如,在图1所示的示例性场景中,若SFF 101从SRv6报文111中识别到SFF 101的SID且确定SFF 101的SID用于指示SFF 101将SRv6报文转换成NSH报文并向SF 103发送,则SFF 101可以将SRv6 111转换成NSH报文121并向SF实体103发送NSH报文121。
208、中间节点N接收SF实体1对NSH报文1进行SF处理而得到的NSH报文2。
209、中间节点N根据NSH报文2生成SRv6报文3。
具体实现时,中间节点N可以从SRv6报文2的IPv6 Header 2携带的段列表中识别出中间节点N的下一跳网络设备的SID,将IPv6 Header 2的DA字段携带的中间节点N的SID替换为中间节点N的下一跳网络设备的SID,从而得到SRv6报文3的IPv6 Header 3。中间节点N可以从NSH报文2中获取NSH 3和有效载荷,并基于IPv6 Header 3、NSH 3和NSH报文2的有效载荷生成SRv6报文3。
需要说明的是,在SRv6报文2被转换成NSH报文1发送给SF实体1之后,SF实体1返回的NSH报文2需要再转换成SRv6报文3,中间节点N才能向下一跳网络设备发送SRv6报文3。为此,由于NSH报文1的NSH 2和NSH报文2的NSH 3都携带有相同的SPI,中间节点N可以记录SPI与IPv6 Header之间的映射关系,以便中间节点N能够根据NSH报文2携带的SPI查找到对应的IPv6 Header并使用IPv6 Header将NSH报文2转换成SRv6报文3。
作为一种示例,在接收到SRv6报文2之后,中间节点N可以从SRv6报文2的NSH 2中识别出SPI并记录SRv6报文2的IPv6 Header 2与SPI的映射关系。在向SF实体1发送NSH报文1并接收SF实体1发送的NSH报文2之后,中间节点N可以从NSH报文2的NSH 3中识别出SPI并根据已记录的映射关系查找到SPI对应的IPv6 Header 2。然后,中间节点N可以将IPv6 Header 2更新为IPv6 Header 3,再基于IPv6 Header 3将NSH报文2转换成SRv6报文3。
作为另一种示例,在接收SRv6报文2之后,中间节点N可以从SRv6报文2的NSH 2中识别出SPI,将SRv6报文2的IPv6 Header 2更新为IPv6 Header 3并记录IPv6 Header 3与SPI的映射关系。在向SF实体1发送NSH报文1并接收SF实体1发送的NSH报文2之后,中间节点N可以从NSH报文2的NSH 3中识别出SPI并根据已记录的映射关系查找到SPI对应的IPv6 Header 3。然后,中间节点N可以基于IPv6 Header 3将NSH报文2转换成SRv6报文3。
210、中间节点N向SRv6报文3的IPv6 Header 2的目的地址字段携带的SID对应的网络设备发送SRv6报文3。
可以理解的是,IPv6 Header 3的DA字段携带的SID为中间节点N的下一跳网络设备的SID,因此,分类器可以根据该SID向下一跳网络设备发送SRv6报文3,从而使得业务流的SRv6报文能够沿着业务流的传输路径继续传输。
对于业务流的传输路径上尾节点的网络设备来说,在尾节点接收到的该业务流的SRv6报文中,IPv6 Header的DA字段携带有尾节点的SID,并且,SRH的段剩余(英文:segments left,简称:SL)值为零。尾节点可以从该SRv6报文中获取有效载荷并基于有效载荷生成业务流的业务报文。
若该业务流在尾节点处需要发送给SF实体2进行SF处理,则尾节点可以执行下述步骤211至215。
211、尾节点接收SRv6报文4。
可以理解的是,若在业务流的传输路径上尾节点为中间节点N的下一跳网络设备,则SRv6报文4即为SRv6报文3。若在业务流的传输路径上中间节点N与尾节点之间还有其他中间节点,则SRv6报文4为尾节点的上一跳中间节点发送给尾节点的报文。
212、尾节点根据SRv6报文4生成NSH报文3。
213、尾节点向SF实体2发送NSH报文3。
具体实现时,尾节点可以将SRv6报文4的IPv6 Header 4去掉,获得SRv6报文4中的NSH 4和有效载荷,然后再对NSH 4和有效载荷封装用于尾节点与SF实体2之间传输NSH报文的封装信息,得到NSH报文3。然后,尾节点可以向SF实体2发送NSH报文3。
可以理解的是,在SRv6报文4的IPv6 Header 4中可以携带有用于指示尾节点将SRv6报文转换成NSH报文并向SF实体2发送的SID。当尾节点从SRv6报文4中识别到该SID,尾节点可以将SRv6报文4转换成NSH报文3并向SF实体2发送NSH报文3。例如,在图1所示的示例性场景中,若SFF 104从SRv6报文112中识别到SF实体104的SID,则SFF 104可以将SRv6 112转换成NSH报文123并向SF实体105发送NSH报文123。又如,在图1所示的示例性场景中,若SFF 104从SRv6报文 112中识别到SFF 104的SID且确定SFF 104的SID用于指示SFF 104将SRv6报文转换成NSH报文并向SF 105发送,则SFF 104可以将SRv6 112转换成NSH报文123并向SF实体105发送NSH报文123。
214、尾节点接收SF实体2对NSH报文3进行SF处理而得到的NSH报文4。
215、尾节点根据NSH报文4的有效载荷生成业务报文。
可以理解的是,尾节点从SRv6报文4的IPv6 Header 4的SRH中识别到SL值为零,尾节点可以确定在SRv6报文4被转换成NSH报文3发送给SF实体2之后SF实体2返回的NSH报文4不需要再转换成SRv6报文,因此,尾节点可以从NSH报文4中获取有效载荷并根据有效载荷生成业务流的业务报文。
在本实施例中,SF实体1和SF实体2等SF实体,例如可以是增值服务器(英文:value added server,简称:VAS)等用于承载SF的网络设备。
可以理解的是,在图1所示的示例性场景中,分类器101相当于方法200提及的分类器,SFF 102相当于方法200提及的中间节点N,SFF 104相当于方法200提及的尾节点,SF实体103相当于方法200提及的SF实体1,SF实体105相当于方法200提及的SF实体2,SRv6报文111即相当于方法200提及的SRv6报文1也相当于方法200提及的SRv6报文2,SRv6报文112即相当于方法200提及的SRv6报文3也相当于方法200提及的SRv6报文4,NSH报文121相当于方法200提及的NSH报文1,NSH报文122相当于方法200提及的NSH报文2,NSH报文123相当于方法200提及的NSH报文3,NSH报文124相当于方法200提及的NSH报文4。
在本实施例中,由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,中间节点、尾节点等网络设备接收到SRv6报文之后可以将SRv6报文转换成NSH报文再向SF实体1、SF实体2等SF实体发送NSH报文,从而SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,从而避免了对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
图6为本申请实施例中一种实现业务功能处理的方法600的流程示意图。该方法600可以包括:
601、网络设备接收第一第六版互联网协议分段路由SRv6报文,所述第一SRv6报文包括第一第六版互联网协议头IPv6 Header和第一网络业务头NSH;
602、所述网络设备根据所述第一SRv6报文生成第一NSH报文,所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分;
603、所述网络设备向业务功能SF实体发送所述第一NSH报文。
在一些可能的实施方式中,在所述网络设备根据所述第一SRv6报文生成第一NSH报文之前,该方法600还包括:
所述网络设备从所述第一IPv6 Header的目的地址字段中识别出所述网络设备的 第一段标识SID;
所述网络设备确定所述第一SID用于指示所述网络设备向所述SF实体发送NSH报文。
在一些可能的实施方式中,所述第一NSH携带的业务路径标识SPI,该方法600还包括:
在接收所述第一SRv6报文之后,所述网络设备记录所述SPI与所述第一IPv6Header之间的映射关系;
在向所述SF实体发送所述第一NSH报文之后,所述网络设备接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
所述网络设备根据所述SPI与所述第一IPv6 Header之间的映射关系,确定所述第一IPv6 Header;
所述网络设备将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header;
所述网络设备根据所述第二NSH报文生成第二SRv6报文,所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
在一些可能的实施方式中,所述第一NSH携带的业务路径标识SPI,该方法600还包括:
在接收所述第一SRv6报文之后,所述网络设备将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header;
所述网络设备记录所述SPI与所述第二IPv6 header之间的映射关系;
在向所述SF实体发送所述第一NSH报文之后,所述网络设备接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
所述网络设备根据所述SPI与所述第二IPv6 Header之间的映射关系,确定所述第二IPv6 Header;
所述网络设备根据所述第二NSH报文生成第二SRv6报文所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
在一些可能的实施方式中,所述网络设备确定所述第一SID用于指示向业务功能SF实体发送NSH报文,包括:
所述网络设备获得所述第一SID的功能function部分,所述function部分指示向业务功能SF实体发送NSH报文。
在一些可能的实施方式中,该方法600还包括:
在所述网络设备接收第一SRv6报文之前,所述网络设备向控制器或分类器发布所述第一SID。
在一些可能的实施方式中,该方法600还包括:
所述网络设备记录所述第一SID与所述SF实体之间的映射关系。
在一些可能的实施方式中,所述第一SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。
在一些可能的实施方式中,该方法600还包括:
在所述网络设备接收第一SRv6报文之前,所述网络设备向控制器或分类器发布用于所述网络设备与所述SF之间传输NSH报文的封装信息。
作为一种示例,方法600中提及的网络设备可以是方法200中提及的中间节点N,方法600中提及的SF实体可以是方法200中提及的SF实体1,方法600中提及的第一SRv6报文可以是方法200中提及的SRv6报文2,方法600中提及的第一NSH报文可以是方法200中提及的NSH报文1,方法600中提及的第二SRv6报文可以是方法200中提及的SRv6报文3,方法600中提及的第二NSH报文可以是方法200中提及的NSH报文4。作为另一种示例,方法600中提及的网络设备可以是方法200中提及的尾节点,方法600中提及的SF实体可以是方法200中提及的SF实体2,方法600中提及的第一SRv6报文可以是方法200中提及的SRv6报文4,方法600中提及的第一NSH报文可以是方法200中提及的NSH报文3,方法600中提及的第二NSH报文可以是方法200中提及的NSH报文4。综上两种示例,方法600的各种具体实现方式,可以参见方法200中的相关介绍。
在本实施例中,由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,网络设备接收到SRv6报文之后可以将SRv6报文转换成NSH报文再向SF实体发送NSH报文,从而SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,从而避免了对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
图7为本申请实施例中一种实现业务功能处理的方法600的流程示意图。该方法700可以包括:
701、分类器接收业务报文;
702、所述分类器获得对应所述业务报文的分段路由SR策略,所述SR策略包括段列表,所述段列表用于标识所述业务报文的传输路径,所述段列表包括网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
703、所述分类器获得对应所述业务报文的NSH;
704、所述分类器根据所述SR策略,对所述业务报文封装IPv6 Header和所述NSH 生成SRv6报文;
705、所述分类器利用所述段列表向所述分类器的下一跳网络设备发送所述SRv6报文。
在一些可能的实现方式中,所述分类器获得对应所述业务报文的分段路由SR策略,包括:
所述分类器接收控制器发送的所述SR策略。
在一些可能的实现方式中,所述分类器获得对应所述业务报文的分段路由SR策略,包括:
所述分类器接收所述网络设备发送的所述SID;
所述分类器基于所述SID生成所述SR策略。
在一些可能的实现方式中,所述SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。
在一些可能的实现方式中,所述方法700还包括:
所述分类器接收用于所述网络设备与所述SF实体之间传输NSH报文的封装信息。
可以理解的是,方法700中提及的分类器可以是方法200中提及的分类器,方法700中提及的SR策略可以是方法200中提及的SR策略,方法700中提及的SRv6报文可以是方法200中提及的SRv6报文1,方法700中提及的网络设备可以包括方法200中提及的中间节点N和/或尾节点,方法700中提及的SF实体可以包括方法200中提及的SF实体1和/或SF实体2。因此,方法700的各种具体实现方式,可以参见方法200中的相关介绍。
在本实施例中,由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,分类器可以对业务报文封装NSH和IPv6 Header生成SRv6报文并发送,其中,IPv6 Header中携带的网络设备的SID可以用于指示网络设备将SRv6报文转换成NSH报文并向SF实体发送,因此,SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,从而避免了对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
图8为本申请实施例中一种实现业务功能处理的方法800的流程示意图。该方法800可以包括:
801、控制器接收网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
802、所述控制器生成业务流的SR策略,所述SR策略包括段列表,所述段列表用于指示所述业务流的传输路径,所述段列表包括所述SID;
803、所述控制器生成所述业务流的NSH;
804、所述控制器向分类器发送所述SR策略和所述NSH。
在一些可能的实现方式中,所述SID携带在边界网关协议BGP链路状态LS类型长度数值TLV信息中发送。
在一些可能的实现方式中,方法800还包括:
所述控制器接收所述网络设备发送的用于所述网络设备与所述SF之间传输NSH报文的封装信息;
所述控制器向所述分类器发送所述封装信息。
可以理解的是,方法800中提及的控制器可以是方法200中提及的控制器,方法800中提及的分类器可以是方法200中提及的分类器,方法800中提及的SR策略可以是方法200中提及的SR策略,方法700中提及的网络设备可以包括方法200中提及的中间节点N和/或尾节点,方法700中提及的SF实体可以包括方法200中提及的SF实体1和/或SF实体2,方法800中提及的SRv6报文可以包括方法200中提及的SRv6报文2和/或SRv6报文4。因此,方法800的各种具体实现方式,可以参见方法200中的相关介绍。
在本实施例中,由于现有网络中的SF实体大多已支持对NSH报文进行SF处理,控制器可以向分类器下发SR策略和NSH。该SR策略携带的段列表中的网络设备的SID,可以用于指示网络设备将SRv6报文转换成NSH报文并向SF实体发送。因此,分类器按照该SR策略可以对业务报文封装IPv6 Header和NSH生成SRv6报文并发送,其中,IPv6 Header中携带了该网络设备的SID,这样SF实体就能够对NSH报文进行SF处理。由于SRv6报文中去掉IPv6 Header和NSH的部分即是NSH报文的有效载荷,因此,SF实体对NSH报文进行了SF处理,即相当于对SRv6报文进行了SF处理。可见,在SF实体不支持SR的情况下也能够支持对SRv6报文进行SF处理,从而避免了对现有网络中大量不支持SR的SF实体进行技术改造,降低了网络升级使用SFC的成本。
图10为本申请实施例中一种实现业务功能处理的网络设备1000的结构示意图。该网络设备1000包括接收单元1001、处理单元1002和发送单元1003。其中:
接收单元1001,用于接收第一第六版互联网协议分段路由SRv6报文,所述第一SRv6报文包括第一第六版互联网协议头IPv6 Header和第一网络业务头NSH;
处理单元1002,用于根据所述第一SRv6报文生成第一NSH报文,所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分;
发送单元1003,用于向业务功能SF实体发送所述第一NSH报文。
在一些实施方式中,所述处理单元1002,还用于:
在根据所述第一SRv6报文生成第一NSH报文之前,从所述第一IPv6 Header的目的地址字段中识别出所述网络设备的第一段标识SID;
确定所述第一SID用于指示所述网络设备向所述SF实体发送NSH报文。
在一些实施方式中,所述第一NSH携带的业务路径标识SPI;
所述处理单元1002,还用于在所述接收单元1001接收所述第一SRv6报文之后,记录所述SPI与所述第一IPv6 Header之间的映射关系;
所述接收单元1001,还用于在所述发送单元1003向所述SF实体发送所述第一NSH报文之后,接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
所述处理单元1002,还用于根据所述SPI与所述第一IPv6 Header之间的映射关系,确定所述第一IPv6 Header,将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文,所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
在一些实施方式中,所述第一NSH携带的业务路径标识SPI;
所述处理单元1002,还用于在所述接收单元1001接收所述第一SRv6报文之后,将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,记录所述SPI与所述第二IPv6 header之间的映射关系;
所述接收单元1001,还用于在所述发送单元1003向所述SF实体发送所述第一NSH报文之后,接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
所述处理单元1002,还用于根据所述SPI与所述第二IPv6 Header之间的映射关系,确定所述第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
在一些实施方式中,所述处理单元1002,还用于获得所述第一SID的功能function部分,所述function部分用于指示向业务功能SF实体发送NSH报文。
在一些实施方式中,所述发送单元1003,还用于在所述接收单元接收第一SRv6报文之前,向控制器或分类器发布所述第一SID。
在一些实施方式中,所述处理单元1003,还用于所述网络设备记录所述第一SID与所述SF实体之间的映射关系。
在一些实施方式中,所述发送单元1003,还用于在所述接收单元接收第一SRv6报文之前,向控制器或分类器发布用于所述网络设备与所述SF之间传输NSH报文的封装信息。
可以理解的是,网络设备1000即是方法200中提及的中间节点N或尾结点,因此,网络设备1000的各种具体实施例方式,可以参见方法200对中间节点N或尾结 点的介绍,本实施例不再赘述。
图11为本申请实施例中一种实现业务功能处理的分类器1100的结构示意图。该分类器1100包括接收单元1101、处理单元1102和发送单元1103。其中:
接收单元1101,用于接收业务报文;
处理单元1102,用于获得对应所述业务报文的分段路由SR策略,获得对应所述业务报文的NSH,以及,根据所述SR策略,对所述业务报文封装IPv6 Header和所述NSH生成SRv6报文;所述SR策略包括段列表,所述段列表用于标识所述业务报文的传输路径,所述段列表包括网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
发送单元1103,用于利用所述段列表向所述分类器的下一跳网络设备发送所述SRv6报文。
在一些实施方式中,所述接收单元1101,还用于所述分类器接收控制器发送的所述SR策略。
在一些实施方式中,
所述接收单元1101,还用于接收所述网络设备发送的所述SID;
所述处理单元1102,还用于基于所述SID生成所述SR策略。
在一些实施方式中,所述接收单元1101,还用于接收用于所述网络设备与所述SF实体之间传输NSH报文的封装信息。
可以理解的是,分类器1100即是方法200中提及的分类器,因此,分类器1100的各种具体实施例方式,可以参见方法200对分类器的介绍,本实施例不再赘述。
图12为本申请实施例中一种实现业务功能处理的控制器1200的结构示意图。该控制器1200包括接收单元1201、处理单元1202和发送单元1203。其中:
接收单元1201,用于接收网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
处理单元1202,用于生成业务流的SR策略和所述业务流的NSH,所述SR策略包括段列表,所述段列表用于指示所述业务流的传输路径,所述段列表包括所述SID;
发送单元1203,用于向分类器发送所述SR策略和所述NSH。
在一些实施方式中,
所述接收单元1201,还用于接收所述网络设备发送的用于所述网络设备与所述SF之间传输NSH报文的封装信息;
所述发送单元1203,还用于向所述分类器发送所述封装信息。
可以理解的是,控制器1200即是方法200中提及的控制器,因此,控制器1200 的各种具体实施例方式,可以参见方法200对控制器的介绍,本实施例不再赘述。
此外,本申请实施例还提供了一种网络设备,该网络设备包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述方法600。
此外,本申请实施例还提供了一种分类器,该分类器包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述方法700。
此外,本申请实施例还提供了一种控制器,该控制器包括处理器和存储器,所述存储器存储有指令,当处理器执行该指令时,使得该网络设备执行前述方法800。
此外,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得该计算机或处理器执行前述方法600、前述方法700或前述方法800。
本申请实施例中提到的“第一SRv6报文”、“第一NSH报文”等名称中的“第一”只是用来做名字标识,并不代表顺序上的第一。该规则同样适用于“第二”等。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,ROM)/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请示例性的实施方式,并非用于限定本申请的保护范围。

Claims (28)

  1. 一种实现业务功能处理的方法,其特征在于,包括:
    网络设备接收第一第六版互联网协议分段路由SRv6报文,所述第一SRv6报文包括第一第六版互联网协议头IPv6 Header和第一网络业务头NSH;
    所述网络设备根据所述第一SRv6报文生成第一NSH报文,所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分;
    所述网络设备向业务功能SF实体发送所述第一NSH报文。
  2. 根据权利要求1所述的方法,其特征在于,在所述网络设备根据所述第一SRv6报文生成第一NSH报文之前,还包括:
    所述网络设备从所述第一IPv6 Header的目的地址字段中识别出所述网络设备的第一段标识SID;
    所述网络设备确定所述第一SID用于指示所述网络设备向所述SF实体发送NSH报文。
  3. 根据权利要求2所述的方法,其特征在于,所述第一NSH携带的业务路径标识SPI,所述方法还包括:
    在接收所述第一SRv6报文之后,所述网络设备记录所述SPI与所述第一IPv6 Header之间的映射关系;
    在向所述SF实体发送所述第一NSH报文之后,所述网络设备接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
    所述网络设备根据所述SPI与所述第一IPv6 Header之间的映射关系,确定所述第一IPv6 Header;
    所述网络设备将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header;
    所述网络设备根据所述第二NSH报文生成第二SRv6报文,所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
  4. 根据权利要求2所述的方法,其特征在于,所述第一NSH携带的业务路径标识SPI,所述方法还包括:
    在接收所述第一SRv6报文之后,所述网络设备将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header;
    所述网络设备记录所述SPI与所述第二IPv6 header之间的映射关系;
    在向所述SF实体发送所述第一NSH报文之后,所述网络设备接收所述SF实体 发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
    所述网络设备根据所述SPI与所述第二IPv6 Header之间的映射关系,确定所述第二IPv6 Header;
    所述网络设备根据所述第二NSH报文生成第二SRv6报文所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
  5. 根据权利要求2至4任意一项所述的方法,其特征在于,所述网络设备确定所述第一SID用于指示向业务功能SF实体发送NSH报文,包括:
    所述网络设备获得所述第一SID的功能function部分,所述function部分用于指示向业务功能SF实体发送NSH报文。
  6. 根据权利要求2至5任意一项所述的方法,其特征在于,还包括:
    在所述网络设备接收第一SRv6报文之前,所述网络设备向控制器或分类器发布所述第一SID。
  7. 根据权利要求6所述的方法,其特征在于,还包括:所述网络设备记录所述第一SID与所述SF实体之间的映射关系。
  8. 根据权利要求1至7任意一项所述的方法,其特征在于,还包括:
    在所述网络设备接收第一SRv6报文之前,所述网络设备向控制器或分类器发布用于所述网络设备与所述SF之间传输NSH报文的封装信息。
  9. 一种实现业务功能处理的方法,其特征在于,包括:
    分类器接收业务报文;
    所述分类器获得对应所述业务报文的分段路由SR策略,所述SR策略包括段列表,所述段列表用于标识所述业务报文的传输路径,所述段列表包括网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
    所述分类器获得对应所述业务报文的NSH;
    所述分类器根据所述SR策略,对所述业务报文封装IPv6 Header和所述NSH生成SRv6报文;
    所述分类器利用所述段列表向所述分类器的下一跳网络设备发送所述SRv6报文。
  10. 根据权利要求9所述的方法,其特征在于,所述分类器获得对应所述业务报文的分段路由SR策略包括:
    所述分类器接收控制器发送的所述SR策略。
  11. 根据权利要求9所述的方法,其特征在于,所述分类器获得对应所述业务报文的分段路由SR策略包括:
    所述分类器接收所述网络设备发送的所述SID;
    所述分类器基于所述SID生成所述SR策略。
  12. 根据权利要求9至11任意一项所述的方法,其特征在于,所述方法还包括:
    所述分类器接收用于所述网络设备与所述SF实体之间传输NSH报文的封装信息。
  13. 一种实现业务功能处理的方法,其特征在于,包括:
    控制器接收网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
    所述控制器生成业务流的SR策略,所述SR策略包括段列表,所述段列表用于指示所述业务流的传输路径,所述段列表包括所述SID;
    所述控制器生成所述业务流的NSH;
    所述控制器向分类器发送所述SR策略和所述NSH。
  14. 根据权利要求13所述的方法,其特征在于,还包括:
    所述控制器接收所述网络设备发送的用于所述网络设备与所述SF之间传输NSH报文的封装信息;
    所述控制器向所述分类器发送所述封装信息。
  15. 一种实现业务功能处理的网络设备,其特征在于,包括:
    接收单元,用于接收第一第六版互联网协议分段路由SRv6报文,所述第一SRv6报文包括第一第六版互联网协议头IPv6 Header和第一网络业务头NSH;
    处理单元,用于根据所述第一SRv6报文生成第一NSH报文,所述第一NSH报文包括所述第一SRv6报文中去掉所述第一IPv6 Header的部分;
    发送单元,用于向业务功能SF实体发送所述第一NSH报文。
  16. 根据权利要求15所述的网络设备,其特征在于,所述处理单元,还用于:
    在根据所述第一SRv6报文生成第一NSH报文之前,从所述第一IPv6 Header的目的地址字段中识别出所述网络设备的第一段标识SID;
    确定所述第一SID用于指示所述网络设备向所述SF实体发送NSH报文。
  17. 根据权利要求16所述的网络设备,其特征在于,所述第一NSH携带的业务路径标识SPI;
    所述处理单元,还用于在所述接收单元接收所述第一SRv6报文之后,记录所述SPI与所述第一IPv6 Header之间的映射关系;
    所述接收单元,还用于在所述发送单元向所述SF实体发送所述第一NSH报文之后,接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
    所述处理单元,还用于根据所述SPI与所述第一IPv6 Header之间的映射关系,确定所述第一IPv6 Header,将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文,所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
  18. 根据权利要求16所述的网络设备,其特征在于,所述第一NSH携带的业务路径标识SPI;
    所述处理单元,还用于在所述接收单元接收所述第一SRv6报文之后,将所述第一IPv6 Header的目的地址字段携带的所述第一SID替换为所述网络设备的下一跳网络设备的第二SID,得到第二IPv6 Header,以及,记录所述SPI与所述第二IPv6 header之间的映射关系;
    所述接收单元,还用于在所述发送单元向所述SF实体发送所述第一NSH报文之后,接收所述SF实体发送的第二NSH报文,所述第二NSH报文包括第二NSH,所述第二NSH携带有所述SPI;
    所述处理单元,还用于根据所述SPI与所述第二IPv6 Header之间的映射关系,确定所述第二IPv6 Header,以及,根据所述第二NSH报文生成第二SRv6报文所述第二SRv6报文包含所述第二IPv6 Header、所述第二NSH和所述第二NSH报文的有效载荷。
  19. 根据权利要求16至18任意一项所述的网络设备,其特征在于,所述处理单元,还用于获得所述第一SID的功能function部分,所述function部分用于指示向业务功能SF实体发送NSH报文。
  20. 根据权利要求16至19任意一项所述的网络设备,其特征在于,所述发送单元,还用于在所述接收单元接收第一SRv6报文之前,向控制器或分类器发布所述第一SID。
  21. 根据权利要求20所述的网络设备,其特征在于,所述处理单元,还用于所述网络设备记录所述第一SID与所述SF实体之间的映射关系。
  22. 根据权利要求15至21任意一项所述的网络设备,其特征在于,所述发送单元,还用于在所述接收单元接收第一SRv6报文之前,向控制器或分类器发布用于所述网络设备与所述SF之间传输NSH报文的封装信息。
  23. 一种实现业务功能处理的分类器,其特征在于,包括:
    接收单元,用于接收业务报文;
    处理单元,用于获得对应所述业务报文的分段路由SR策略,获得对应所述业务报文的NSH,以及,根据所述SR策略,对所述业务报文封装IPv6 Header和所述NSH生成SRv6报文;所述SR策略包括段列表,所述段列表用于标识所述业务报文的传输路径,所述段列表包括网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
    发送单元,用于利用所述段列表向所述分类器的下一跳网络设备发送所述SRv6报文。
  24. 根据权利要求23所述的分类器,其特征在于,所述接收单元,还用于所述分类器接收控制器发送的所述SR策略。
  25. 根据权利要求23所述的分类器,其特征在于,
    所述接收单元,还用于接收所述网络设备发送的所述SID;
    所述处理单元,还用于基于所述SID生成所述SR策略。
  26. 根据权利要求23至25任意一项所述的分类器,其特征在于,所述接收单元,还用于接收用于所述网络设备与所述SF实体之间传输NSH报文的封装信息。
  27. 一种实现业务功能处理的控制器,其特征在于,包括:
    接收单元,用于接收网络设备的SID,所述网络设备的SID用于指示所述网络设备向业务功能SF实体发送网络业务头NSH报文;
    处理单元,用于生成业务流的SR策略和所述业务流的NSH,所述SR策略包括段列表,所述段列表用于指示所述业务流的传输路径,所述段列表包括所述SID;
    发送单元,用于向分类器发送所述SR策略和所述NSH。
  28. 根据权利要求27所述的控制器,其特征在于,
    所述接收单元,还用于接收所述网络设备发送的用于所述网络设备与所述SF之间传输NSH报文的封装信息;
    所述发送单元,还用于向所述分类器发送所述封装信息。
PCT/CN2020/095518 2019-06-14 2020-06-11 一种实现业务功能处理的方法及装置 WO2020249035A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP20822610.0A EP3965382A4 (en) 2019-06-14 2020-06-11 METHOD AND DEVICE FOR IMPLEMENTING SERVICE FUNCTION PROCESSING
US17/547,740 US20220109627A1 (en) 2019-06-14 2021-12-10 Method and Apparatus for Implementing Service Function Processing

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910517795.6 2019-06-14
CN201910517795.6A CN112087381B (zh) 2019-06-14 2019-06-14 一种实现业务功能处理的方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/547,740 Continuation US20220109627A1 (en) 2019-06-14 2021-12-10 Method and Apparatus for Implementing Service Function Processing

Publications (1)

Publication Number Publication Date
WO2020249035A1 true WO2020249035A1 (zh) 2020-12-17

Family

ID=73734375

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/095518 WO2020249035A1 (zh) 2019-06-14 2020-06-11 一种实现业务功能处理的方法及装置

Country Status (4)

Country Link
US (1) US20220109627A1 (zh)
EP (1) EP3965382A4 (zh)
CN (2) CN112087381B (zh)
WO (1) WO2020249035A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114285907A (zh) * 2021-12-03 2022-04-05 中国联合网络通信集团有限公司 数据传输方法、装置、电子设备及存储介质
WO2023179656A1 (zh) * 2022-03-24 2023-09-28 中国移动通信有限公司研究院 一种SRv6报文处理方法、装置、通信设备和存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114157612A (zh) * 2021-12-09 2022-03-08 中国电信股份有限公司 流量牵引控制方法和装置、引流装置、流量牵引系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105337785A (zh) * 2014-07-18 2016-02-17 华为技术有限公司 一种路径连通性检测方法及装置
CN106330714A (zh) * 2015-07-02 2017-01-11 中兴通讯股份有限公司 一种实现业务功能链的方法和装置
US20190123984A1 (en) * 2017-10-25 2019-04-25 Cisco Technology, Inc. System and method for obtaining micro-service telemetry data

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109714274B (zh) * 2014-08-14 2022-04-05 华为技术有限公司 一种获取对应关系的方法和路由设备
US10505846B2 (en) * 2015-07-22 2019-12-10 Cisco Technology, Inc. Resilient segment routing service hunting with TCP session stickiness
US10164875B2 (en) * 2016-02-22 2018-12-25 Cisco Technology, Inc. SR app-segment integration with service function chaining (SFC) header metadata
US20190140863A1 (en) * 2017-11-06 2019-05-09 Cisco Technology, Inc. Dataplane signaled bidirectional/symmetric service chain instantiation for efficient load balancing
CN109688057B (zh) * 2018-12-13 2021-08-24 Ut斯达康通讯有限公司 基于ipv6的段路由网络的报文转发方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105337785A (zh) * 2014-07-18 2016-02-17 华为技术有限公司 一种路径连通性检测方法及装置
CN106330714A (zh) * 2015-07-02 2017-01-11 中兴通讯股份有限公司 一种实现业务功能链的方法和装置
US20190123984A1 (en) * 2017-10-25 2019-04-25 Cisco Technology, Inc. System and method for obtaining micro-service telemetry data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ED, C. FILSFILS ET AL.: "Segment Routing Architecture", INTERNET ENGINEERING TASK FORCE (IETF), 31 July 2018 (2018-07-31), pages 1 - 32, XP055723022 *
See also references of EP3965382A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114285907A (zh) * 2021-12-03 2022-04-05 中国联合网络通信集团有限公司 数据传输方法、装置、电子设备及存储介质
WO2023179656A1 (zh) * 2022-03-24 2023-09-28 中国移动通信有限公司研究院 一种SRv6报文处理方法、装置、通信设备和存储介质

Also Published As

Publication number Publication date
EP3965382A1 (en) 2022-03-09
EP3965382A4 (en) 2022-06-22
CN112087381A (zh) 2020-12-15
US20220109627A1 (en) 2022-04-07
CN114448861A (zh) 2022-05-06
CN112087381B (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
EP3958521A1 (en) Method and apparatus for providing service for service flow
US10164838B2 (en) Seamless segment routing
WO2020249035A1 (zh) 一种实现业务功能处理的方法及装置
WO2021233267A1 (zh) SRv6业务链中转发报文的方法、SFF及SF设备
US8830998B2 (en) Separation of edge and routing/control information for multicast over shortest path bridging
US8812726B2 (en) Service insertion in a computer network using internet protocol version 6 techniques
RU2630178C1 (ru) Способ, устройство и система обработки пакетов
EP3742683B1 (en) Method and device for processing packet by using unified sr label stack
WO2021135468A1 (zh) 段标识的确定方法和设备
JP5656137B2 (ja) ボーダ・ゲートウェイ・プロトコル・ルートの更新方法およびシステム
WO2016000513A1 (zh) 更新业务流报文的处理方式的方法及装置
WO2019170083A1 (zh) 报文处理方法、控制器以及转发设备
WO2021047320A1 (zh) 一种转发路径的确定方法及装置
WO2021082575A1 (zh) 一种报文转发方法、设备、存储介质及系统
WO2021083341A1 (zh) 一种报文处理的方法、网络节点和系统
WO2021196967A1 (zh) 消息交互方法、装置、设备和存储介质
JP2022545919A (ja) Srネットワークでパケットを転送するための方法、装置、及びシステム
JP2009518760A (ja) デジタル・コンテンツの伝送のためのサービス品質
WO2021088813A1 (zh) 报文封装方法及装置、报文解封装方法及装置
CN113489646B (zh) 基于vxlan的分段路由传输方法、服务器、源节点及存储介质
US20230327983A1 (en) Performance measurement in a segment routing network
EP3893435B1 (en) Method and apparatus for processing ioam information
CN108282404B (zh) 一种路由生成方法、装置及系统
US11979322B2 (en) Method and apparatus for providing service for traffic flow
WO2024011950A1 (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: 20822610

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020822610

Country of ref document: EP

Effective date: 20211129

NENP Non-entry into the national phase

Ref country code: DE