WO2021047321A1 - 一种数据传输的控制方法及装置 - Google Patents

一种数据传输的控制方法及装置 Download PDF

Info

Publication number
WO2021047321A1
WO2021047321A1 PCT/CN2020/105671 CN2020105671W WO2021047321A1 WO 2021047321 A1 WO2021047321 A1 WO 2021047321A1 CN 2020105671 W CN2020105671 W CN 2020105671W WO 2021047321 A1 WO2021047321 A1 WO 2021047321A1
Authority
WO
WIPO (PCT)
Prior art keywords
interface
network device
identification information
resource object
interface resource
Prior art date
Application number
PCT/CN2020/105671
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 EP20862078.1A priority Critical patent/EP4024783A4/en
Priority to CA3178566A priority patent/CA3178566A1/en
Priority to BR112022003763A priority patent/BR112022003763A2/pt
Priority to JP2022515902A priority patent/JP2022547992A/ja
Priority to MX2022002913A priority patent/MX2022002913A/es
Priority to KR1020227009333A priority patent/KR20220052343A/ko
Publication of WO2021047321A1 publication Critical patent/WO2021047321A1/zh
Priority to US17/691,637 priority patent/US20220200893A1/en
Priority to JP2024022118A priority patent/JP2024069227A/ja

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/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • 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/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/30Routing of multiclass traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised 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/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • 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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering

Definitions

  • the embodiments of the present application relate to the field of communication technologies, and in particular, to a method and device for controlling data transmission.
  • the general network device searches for the next-hop network device according to the destination address in the data message, and then forwards the data message to the next-hop network device.
  • the network device usually selects an interface randomly or according to the active status of the interface to forward data packets to the next-hop network. Devices cannot realize the isolation of forwarding resources for different service flows, and some interfaces may not be selected all the time, resulting in a waste of interface resources.
  • the embodiments of the present application provide a data transmission control method and device to solve the problem of interface resource waste.
  • an embodiment of the present application provides a data transmission control method.
  • the first network device obtains the first data packet carrying the destination address and the first identification information. Then the first network device determines the target interface according to the destination address.
  • the target interface is an interface that exists on the first network device for connecting to a second network device, and the second network device is a next-hop network device of the first network device. Further, the first network device determines at least one interface resource object on the target interface according to the first identification information, and forwards the first data packet to the second network device through the at least one interface resource object.
  • the first identification information may be referred to as a self-definition global policy identification (SDGP ID).
  • SDGP ID has global significance and is used to select forwarding resources (interface resource objects). ). It is understandable that the global identification information can also be named other names.
  • the first identification information takes different values and may correspond to different network slices.
  • the target interface is determined, and the first identification information is used on the forwarding plane to indicate which interface or several interface resource objects on the target interface are forwarded.
  • the target interface can be a binding interface, and the interface resource object is a physical interface.
  • the first identification information is used to identify which interface or the data message is sent from. Which interfaces are forwarded, that is, between two network devices, multiple transmission paths of data packets are planned based on each interface, thereby improving the utilization of interface resources.
  • the target interface may be a physical interface, and the interface resource object may be a physical sub-interface.
  • the target interface can be a physical interface, and the interface resource object can be a logical sub-interface or a message object.
  • the first network device determines the target interface based on the destination address, it can be implemented in the following manner: the first network device determines the destination address correspondence according to the correspondence between the destination address included in the routing and forwarding table and the target interface identifier The target interface identifier of the target interface is used to identify the target interface.
  • the first network device determines at least one interface resource object on the target interface according to the first identification information
  • this can be achieved in the following manner: the first network device communicates with the first network device on the target interface according to the first identification information
  • An interface resource object has a one-to-one mapping relationship, and the first interface resource object corresponding to the first identification information is determined.
  • the first identification information and the first interface resource object are one-to-one mapped, and are forwarded through different interface resource objects for different service flows, that is, for different service flows through a transmission line between two network devices The path is transmitted to the next-hop network device, and the transmission path isolation between different service flows is realized.
  • different interface resource objects can be used for different network slicing.
  • the target interface between the two network devices corresponds to multiple interface resource objects, and different interface resource objects can be used for different network slices, and each interface resource object is distinguished by the first identification information, that is, different network slices are distinguished.
  • the first identification information is used on the forwarding plane to isolate the data plane forwarding resources between different network slices. Furthermore, there is actually only one path between the two network devices, but On the forwarding plane, different data actually corresponds to different transmission paths. Realize the multiplexing of the results of the topology calculation and reduce the waste of resources.
  • the first network device stores a first mapping forwarding table; the first mapping forwarding table includes the target interface identifier, the first identification information, and the corresponding relationship between the first interface resource object identifier; further, When a network device determines the first interface resource object corresponding to the first identification information according to the mapping relationship, it can be implemented in the following manner: the first network device determines the first interface on the target interface identified by the target interface identifier according to the first mapping forwarding table. The first interface resource object identifier corresponding to the identification information, where the first interface resource object identifier is used to identify the first interface resource object.
  • the first per-hop behavior PHB is adopted when the first interface resource object forwards the service flow; the first network device forwards the first data packet to the second network device through at least one interface resource object, including: After determining the first interface resource object corresponding to the first identification information according to the mapping relationship, the first network device uses the first PHB and forwards the first data packet to the second network device through the first interface resource object.
  • the first network device determines at least one interface resource object on the target interface according to the first identification information, including : The first network device determines, from the N interface resource objects mapped by the first identification information, M interface resource objects used to forward the service flow to which the first data packet belongs, where M is a positive integer less than or equal to N.
  • the M interface resource objects used to forward the service flow to which the first data message belongs are determined from the multiple interface resource objects mapped by the first identification information. For example, the traffic of the service flow and the N interface resources may be determined. The bandwidth corresponding to each object is determined from the multiple interface resource objects mapped by the first identification information to determine the M interface resource objects used to forward the service flow to which the first data message belongs, so as to ensure the service quality of the service flow forwarding and improve Flexibility of service flow forwarding.
  • the first identification information takes different values to correspond to different network slices.
  • Different network slices can respectively map one interface resource object or multiple interface resource objects among the multiple interface resource objects existing in the first network device and the second network device.
  • the same interface resource object can be composed of two or more network slices. Sharing to improve resource utilization.
  • the first network device before the first network device forwards the data packet, it receives the mapping relationship between the network slice identifier and the first identification information sent by the controller, and the target interface on the first network device A mapping relationship between at least one interface resource object and the first identification information. At least one interface resource object can be used by the network slice identified by its mapped network slice identifier.
  • the N interface resource objects are respectively equipped with the PHB used to forward the service flow; the first network device forwards the first data message to the second network device through at least one interface resource object, including: After determining the M interface resource objects used to forward the service flow to which the first data message belongs, a network device uses the PHB configured by the M interface resource objects to forward the service to which the first data message belongs through the M interface resource objects. flow.
  • the PHB is configured for each interface resource object under the value of each first identification information.
  • the same interface resource object can be shared by two or more service flows. The same interface resource object can use different PHBs for different service flows. , Thereby improving resource utilization.
  • the first identification information corresponding to two interface resource objects as an example, that is, N is 2, the first identification information corresponds to the main interface resource object and the auxiliary interface resource object; Determining M interface resource objects used to forward the service flow to which the first data message belongs among the N interface resource objects mapped by the identification information can be implemented in the following manner: the first network device determines that the bandwidth of the main interface resource object satisfies the first When a data packet belongs to the traffic requirement of the service flow, the main interface resource object is determined to be used to forward the service flow to which the first data packet belongs; or,
  • the first network device determines that the bandwidth of the primary interface resource object does not meet the traffic requirements of the service flow to which the first data packet belongs, it determines that the primary interface resource object and the secondary interface resource object are used to forward the service flow to which the first data packet belongs .
  • the primary interface resource object uses the second PHB when forwarding the service flow
  • the secondary interface resource object uses the third PHB when forwarding the service flow
  • the first network device transmits the first data message through at least one interface resource object.
  • Forwarding to the second network device includes: when the first network device determines that the main interface resource object is used to forward the service flow to which the first data message belongs, adopts the second PHB and forwards the first data message through the main interface resource object
  • the second PHB is used, and the first network device uses the secondary interface resource object to transfer the first
  • the data message is forwarded to the second network device, or the third PHB is used, and the first data message is forwarded to the second network device through the secondary interface resource object.
  • the second PHB is any one of accelerated forwarding EF, class selection code CS, guaranteed forwarding AF, best effort BE; or, the third PHB is EF, CS, AF , Any one of BE.
  • the second PHB is EF and the third PHB is AF; or, the second PHB is EF ,
  • the third PHB is BE.
  • the first network device obtains the first data packet, which can be implemented in the following manner.
  • One way is that the first network device receives the first data from the previous hop network device of the first network device Message; another way is that the first network device receives the first data message from the terminal device.
  • the first network device may be a head-end network device on the forwarding path of the first data packet, or an intermediate network device on the forwarding path of the first data packet.
  • the first network device when the first network device is the head-end network device on the forwarding path of the first data packet, when the first network device obtains the first data packet, it can be implemented in the following manner: The network device receives a second data message, and the second data message is associated with the first network slice. Then, the first network device inserts the first identification information into the second data packet according to the correspondence between the identification of the first network slice and the first identification information, thereby obtaining the first data packet.
  • the target interface is a bound interface
  • the bound interface is used to establish a neighbor relationship between the first network device and the second network device.
  • the header of the first data message includes the first identification information.
  • the header of the first data message includes the extended label length content TLV, and the extended TLV includes the first identification information.
  • the first identification information is included in the header of the first data message as an entropy tag.
  • the header of the first data message includes the destination address
  • the first identification information occupies K bits in the destination address
  • K is a positive integer.
  • the K bits are consecutive K low bits in the destination address, or the K bits are K consecutive high bits in the destination address.
  • the message header of the first data message includes a communication classification field, and the communication classification field includes the first identification information.
  • the header of the first data packet includes a flow label
  • the flow label includes the first identification information
  • an embodiment of the present application also provides a data packet transmission control method, including: when the controller creates the first network slice, creating a mapping relationship between the identifier of the first network slice and the first identification information, and the first network slice A mapping relationship between at least one interface resource object on a target interface on a network device and the first identification information, and the first network slice can use the authority of the at least one interface resource object. Then, the controller sends the mapping relationship between the identifier of the first network slice and the first identification information, and the mapping relationship between at least one interface resource object and the first identification information to the first network device.
  • the value of the first identification information has a one-to-one correspondence with the interface resource object. That is, different network slices separately share an interface resource object.
  • a value of the first identification information may correspond to multiple interface resource objects. Different network slices correspond to different values of the first identification information, and different network slices share a certain interface resource object.
  • the controller configures a PHB for at least one interface resource object mapped by the first identification information.
  • the controller configures different PHBs for the same interface resource object mapped by different values of the first identification information.
  • the target interface is a physical interface
  • the first interface resource object is a physical subinterface, a logical subinterface, or a message queue; or, the target interface is a bound interface, and the interface resource object is a physical interface.
  • an embodiment of the present application provides a data packet transmission control method, including: a first network device obtains a first data packet, the first data packet carrying routing information and first identification information; The first network device determines a target interface according to the routing information, where the target interface is an interface that exists on the first network device for connecting to a second network device, and the second network device is the first network device The next hop network device; the first network device determines at least one interface resource object on the target interface according to the first identification information; the first network device uses the at least one interface resource object to transfer the The first data message is forwarded to the second network device.
  • the routing information is the destination address.
  • the header of the first data message includes the destination address and the first identification information.
  • the header of the first data message includes an extended label length content TLV, and the extended TLV includes the destination address and the first identification information.
  • the first identification information is included in the header of the first data message as an entropy tag.
  • the header of the first data message includes a destination address
  • the destination address includes the routing information and the first identification information
  • the routing information occupies the high bits of the destination address, and the first identification information occupies the low bits of the destination address; or, the routing information occupies the low bits of the destination address. Low bits, the first identification information occupies high bits of the destination address.
  • the message header of the first data message includes the destination address and a communication classification field
  • the communication classification field includes the first identification information
  • the header of the first data packet includes the destination address and a flow label
  • the flow label includes the first identification information
  • an embodiment of the present application provides a data transmission control device, which is applied to the first network device described in the first aspect or the third aspect, that is, the device may be the first network device or It is a chip that can be applied to the first network device.
  • the device has the function of realizing the embodiments of the first aspect described above, or has the function of realizing the embodiments of the third aspect. This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a data transmission control device, which is applied to the controller described in the second aspect, that is, the The device can be a controller or a chip that can be applied to the controller.
  • the device has the function of realizing the various embodiments of the above-mentioned second aspect. This function can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • an embodiment of the present application provides a network device, including a processor and a communication interface, the communication interface is used to receive communication messages, the processor communicates with the communication interface, and the communication message received through the communication interface executes the above-mentioned first aspect Or the data transmission control method in any implementation method of the first aspect, or the data transmission control method in any implementation method of the third aspect described above.
  • the network device further includes a memory for storing instructions. When the network device is running, the processor executes the instructions stored in the memory, so that the network device executes the first aspect or the first aspect.
  • the data transmission control method in any implementation method of the above, or the network device may execute the data transmission control method in the foregoing third aspect or any implementation method of the third aspect.
  • the memory can be set outside the network device.
  • the memory may be integrated in the processor or independent of the processor.
  • the network device may also include a bus. Wherein, the processor is coupled to the communication interface through the bus.
  • the memory may include a readable memory and a random access memory.
  • an embodiment of the present application provides a controller, including a processor and a communication interface, the communication interface is used to receive communication messages, the processor communicates with the communication interface, and the communication message received through the communication interface executes the second aspect.
  • the network device further includes a memory, and the memory is used to store instructions.
  • the processor executes the instructions stored in the memory, so that the device executes the above-mentioned second aspect or the second aspect.
  • the control method of data transmission in any realization method.
  • the memory can be set outside the network device.
  • the memory may be integrated in the processor or independent of the processor.
  • the device may also include a bus. Wherein, the processor is coupled to the communication interface through the bus.
  • the memory may include a readable memory and a random access memory.
  • embodiments of the present application also provide a system, which includes the device described in the fourth aspect and the device described in the fifth aspect, or includes the network device described in the sixth aspect and the control device described in the seventh aspect.
  • Device In a possible design, the system may also include other network devices that interact with the two types of network devices in the solution provided in the embodiments of the present application, such as other network devices on the transmission path, and the second network device.
  • the embodiments of the present application also provide a readable storage medium, the readable storage medium stores a program or instruction, and when it runs on a computer, it enables any data transmission control method of the above aspects Be executed.
  • the embodiments of the present application also provide a computer program product containing instructions, which when run on a computer, cause the computer to execute any of the above-mentioned methods for controlling data transmission.
  • Figure 1 is a schematic diagram of a network system architecture in an embodiment of the application
  • Figure 2 is a schematic diagram of a differentiated service architecture in an embodiment of the application
  • FIG. 3 is a schematic diagram of an IPv4 message structure in an embodiment of the application.
  • FIG. 4 is a schematic diagram of an IPv6 message structure in an embodiment of the application.
  • FIG. 5 is a schematic structural diagram of ISIS FAD Sub-TLV in an embodiment of the application.
  • FIG. 6 is a schematic diagram of a flow of creating a network slice in an embodiment of the application.
  • FIG. 7 is a schematic diagram of a network slicing TLV format in an embodiment of this application.
  • FIG. 8 is a schematic diagram of the structure of Flex-Algorithm sub-TLV in an embodiment of the application.
  • FIG. 9 is a schematic diagram of the structure of SDGP-ID sub-TLV in an embodiment of the application.
  • FIG. 10 is a schematic diagram of a forwarding path corresponding to a network slice in an embodiment of the application.
  • 11 is a schematic diagram of the mapping relationship between SDGP-ID and sub-interfaces in an embodiment of the application.
  • FIG. 12 is a schematic diagram of a data message forwarding process in an embodiment of this application.
  • FIG. 13 is a schematic diagram of the structure of an IPv6 message carrying SDGP-ID in an embodiment of the application.
  • FIG. 14 is a schematic diagram of the structure of an IPv4 message carrying SDGP-ID in an embodiment of the application.
  • 15 is a schematic diagram of the structure of an MPLS message in an embodiment of the application.
  • FIG. 16 is a schematic diagram of a message forwarding process based on SDGP-ID in an embodiment of the application.
  • FIG. 17A is a schematic diagram of the structure of a destination address in an IPv6 message in an embodiment of this application.
  • FIG. 17B is a schematic diagram of an IPv6 message structure in an embodiment of this application.
  • FIG. 19 is a schematic diagram of an SRv6 message structure in an embodiment of this application.
  • FIG. 20 is a schematic diagram of another IPv6 message structure in an embodiment of this application.
  • FIG. 21 is a schematic diagram of another IPv6 message structure in an embodiment of this application.
  • 22 is a schematic diagram of the mapping relationship between resource IDs and sub-interfaces in an embodiment of the application.
  • FIG. 23 is a schematic diagram of another data packet forwarding process in an embodiment of this application.
  • FIG. 24 is a schematic structural diagram of a device 1900 in an embodiment of the application.
  • FIG. 25 is a schematic structural diagram of a device 2000 in an embodiment of the application.
  • FIG. 26 is a schematic structural diagram of a device 2100 in an embodiment of this application.
  • FIG. 27 is a schematic structural diagram of a device 2200 in an embodiment of the application.
  • FIG. 28 is a schematic structural diagram of a device 2300 in an embodiment of this application.
  • a network device may also be called a node, which is a device that provides routing and forwarding functions in a network system.
  • a network system may include 8 network devices as an example, namely A, B, C, D, E, F, G, and H. It should be understood that the embodiments of the present application do not limit the number of network devices included in the network system.
  • 5G Fifth Generation (5 th generation, 5G) mobile communication network technology proposed system sections (network slice) concept, a network-based slice or satisfy a demand for a communication service connection with the embodiment, the entire system consists 5G meet a lot of different network connection capability Slice composition.
  • 3GPP Third Generation Partnership Project
  • eMBB enhanced mobile broadband
  • uRLLC ultra-reliable low latency communications
  • mMTC massive machine type connection
  • eMBB slice type is aimed at high data rate, high mobility services;
  • uRLLC slice can be used to handle high-reliability and low-latency communication scenarios;
  • mMTC slice can serve a large number, small amount of data, tolerable delay and Services that are not frequently accessed (such as sensors and wearable device services).
  • eMBB slice type is aimed at high data rate, high mobility services;
  • uRLLC slice can be used to handle high-reliability and low-latency communication scenarios;
  • mMTC slice can serve a large number, small amount of data, tolerable delay and Services that are not frequently accessed (such as sensors and wearable device services).
  • the differentiation of different network services has increased.
  • the types of network slicing will increase substantially in the foreseeable future.
  • Service level agreement refers to the agreement signed by users (such as individuals, enterprises, neighboring Internet Service Providers (ISP), etc.) and service providers about business flow in the network The treatment that should be received in the transmission. SLA includes many aspects, such as payment agreements.
  • SLS Service Level Specification
  • TCS Traffic Conditioning Specification
  • TCS describes the detailed performance parameters of each service level, such as average rate, peak rate, committed burst size, and maximum burst size.
  • TCS is the main basis for flow control in a differentiated service (DiffServ) network.
  • DiffServ differentiated service
  • DiffServ is a service model provided by Quality of Service (QoS).
  • QoS Quality of Service
  • the DiffServ model performs different flow control and forwarding to solve the congestion problem according to different service levels of the business. Taking full account of the flexibility and scalability of the IP network itself, the complex service quality assurance is converted into a single-hop behavior through the information carried in the message itself, without additional signaling interaction.
  • DiffServ The basic idea of DiffServ is to divide incoming flows into different types at the edge of the network, combine the same types of flows for unified management, and ensure the same service quality parameters such as transmission rate, delay, jitter, and other Types are processed separately in the network.
  • Service classification and convergence are performed by edge nodes in the network. First, the data packet is identified as a certain service type and recorded in the header field, and then the packet is sent to the network according to a certain flow control strategy. The internal nodes in the network determine what kind of processing the packet should be processed by checking the packet header. See Figure 2 for an example of a DiffServ network model.
  • the network nodes used to implement the DiffServ function are called Differentiated Service (DS) nodes, and DS nodes can be divided into DS boundary nodes and DS internal nodes according to their functions.
  • DS boundary node a node responsible for connecting to another DS domain or a domain without DS function.
  • the DS boundary node is responsible for classifying the service flow entering this DS domain and possibly adjusting the flow.
  • DS internal nodes used to connect DS boundary nodes and other internal nodes in the same DS domain.
  • DS internal nodes only need to perform simple flow classification based on Differentiated Services Code Point (DSCP) values and implement flow control on corresponding flows.
  • DSCP Differentiated Services Code Point
  • DS Domain refers to a group of connected DS nodes that adopt the same service provision strategy and implement the same Per Hop Behaviors (PHB).
  • PHB Per Hop Behaviors
  • a DS domain is composed of one or more networks of the same administrative department.
  • a DS domain can be an ISP or an enterprise intranet.
  • PHB can also be called hop-by-hop behavior. Different PHBs can be reflected by different DSCP values in IPv4 packets and IPv6 packets.
  • the DSCP value is located in the type of service (ToS) field in the IPv4 packet header, and located in the traffic class (TC) field in the IPv6 packet header.
  • ToS type of service
  • TC traffic class
  • the Version in the IPv4 message represents the IP version number of the data message.
  • Heather length represents the length of the header of the data message.
  • Total Length represents the total length of the data message, which can be used to calculate the length of the payload in the data message.
  • the Identification (identifier) field is 16 bits long, and is usually used for packet segmentation together with the tag field and the fragment offset field. If the original length of the data packet exceeds the maximum transmission unit (MTU) of the data link through which the data packet passes, the data packet must be segmented into smaller data packets.
  • MTU maximum transmission unit
  • the data frame can accommodate a data packet with a size of 1500 bytes at most.
  • the node needs to segment the data packet into multiple data packets before the data is framed, and the length of each data packet must not exceed 1500 bytes; then the router puts the same mark on the identification field of each data packet so that the receiving device can Identify the segment belonging to a data packet.
  • the length of the IP Flags field is 3 bits, and the first bit is not used.
  • the Fragment Offset (Fragment Offset) field has a length of 13 bits and is used to indicate the offset of the start point of the fragment relative to the start point of the header. Since the segments may arrive in the wrong order, the segment offset field allows the receiver to reassemble the data packets in the correct order.
  • the Time To Live field has a length of 8 bits and is used to indicate the number of hops for transmission.
  • the length of the protocol (Protocol) field is 8 bits, indicating the protocol number of the data message.
  • Header Checksum (Header Checksum) is an error correction field for the IP packet header.
  • the source address (Source Address) and the destination address (Destination Address) respectively represent the IP addresses of the source node and the destination node of the sender's data message.
  • Optional field (Options) the data part is the data carried in the data packet.
  • the Version in the IPv6 message indicates the IP version number of the data message.
  • TC is used to differentiate services and to identify the service type of data packets.
  • a flow label is used to mark data packets belonging to the same service flow. The combination of flow label, source address, and destination address uniquely identifies a service flow. All data packets in the same service flow have the same flow label, so that flows with the same QoS requirements can be processed.
  • the payload length (payload) includes the byte length of the data message payload.
  • the next Header field indicates the protocol type in the next extended header field following the IPv6 basic header. The hop limit is generally 8 bits long. Whenever a node forwards a data message, the value of this field is reduced by 1. If the field reaches 0, the data message is discarded.
  • the source address and the destination address respectively indicate the IP addresses of the source node and the destination node of the sender's data message.
  • PHB describes the externally visible forwarding behavior adopted by DS nodes for packets with the same DSCP.
  • the PHB can be defined by priority, or it can be defined by some visible service characteristics such as packet delay, jitter, or packet loss rate.
  • PHB only defines some externally visible forwarding behaviors, and does not specify a specific implementation method.
  • the current standard protocol defines four PHBs: Class Selector (CS), Expedited Forwarding (EF), Assured Forwarding (AF) and Best-Effort (BE). Among them, BE is the default PHB.
  • the service level represented by CS is the same as the IP priority used in the existing network.
  • EF is defined as a forwarding process: the information flow rate sent from any DS node must be equal to or greater than the set rate under any circumstances.
  • the EF PHB cannot be re-marked in the DS domain, but only at the border node.
  • AF satisfies the following requirements: When users subscribe bandwidth services with ISPs, allow business volume to exceed the ordered specifications. For the traffic that does not exceed the ordered specifications, it is required to ensure the quality of forwarding; for the traffic that exceeds the specifications, the service will be reduced and the service will continue to be forwarded, rather than simply being discarded.
  • BE corresponds to the traditional IP packet delivery service, which only focuses on reachability and does not make any requirements for other aspects.
  • IGP interior gateway protocol
  • RSVP-TE resource reservation protocol-traffic engineer
  • SR-TE segment routing-traffic engineering
  • Flex-Algorithm proposes to flood the IGP domain by defining a combination of constraints, so that nodes in the IGP domain can calculate constraint-based paths based on the same constraints, thereby realizing distributed TE.
  • the combination of constraints defined in each Flexible-Algorithm can be represented by Flexible-Algorithm ID.
  • Flexible-Algorithm ID is a numeric identifier in the range of 128-255, which is associated with Flexible-Algorithm Definition (FAD) through configuration.
  • FAD is a collection of (a) calculation type (Calc-Type), (b) metric type (Metric-Type), and (c) link constraints.
  • Metric-Type identifies the type of metric used in the calculation process of Flex-Algorithm. Among them: when Metric-Type is 0, it means IGP metric, when Metric-Type is 1, it means minimum unidirectional link delay (min unidirectional link delay), and Metric-Type is 2 means TE metric.
  • Calc-Type of 0 means shortest path first (Strict Shortest Path First, SPF), and Calc-Type of 1 means strict SPF.
  • Link constraints are described by include/exclude admin-group (link color: color).
  • the link color can also be called the affinity attribute, which is a 32-bit vector that represents the link attribute, such as used to represent the link bandwidth, performance, or management strategy. Links of the same color correspond to the same link attribute. For example, if the link is colored green, the link attributes of the different links colored green are the same.
  • ISIS FAD Sub-TLV is used to carry the content defined by Flex-Algorithm.
  • Figure 5 shows a schematic diagram of the ISIS FAD Sub-TLV structure.
  • the Type field identifies the type of the TLV
  • the Length field represents the byte length of the TLV
  • the Flex-Algorithm field identifies the Flexible-Algorithm ID value
  • the Metric-Type field identifies the metric type used in the calculation of the Flexible-Algorithm.
  • the Calc-Type field identifies the calculation model defined for the specified IGP algorithm, and the metrics and constraints must not be inherited.
  • Priority (Priority) ranges from 0 to 255, which identifies the priority of the TLV release.
  • the sub-TLV (Sub-TLVs) field is an optional part. For example, by adding Exclude Admin Group Sub-TLV or Include-Any Admin Group Sub-TLV or Include-All Admin Group Sub-TLV to Sub-TLVs, different link attributes (color) can be configured for different links.
  • Exclude Admin Group Sub-TLV is used to publish rules that are excluded when Flex-Algorithm calculates the route. Include-Any Admin Group Sub-TLV is used to publish any rules that need to be included when Flex-Algorithm calculates roads, Include-All Admin Group Sub-TLV is used to publish all rules that need to be included when Flex-Algorithm calculates roads .
  • Flexible-Algorithm technology can be used to combine with network slicing, and different Flexible-Algorithm IDs are used to distinguish different network slices, that is to say, different constraint attributes are defined for different network slices. Realize that different business flows are forwarded in different network slices.
  • the controller side calculates the path based on the algorithm constraints identified by each Flexible-Algorithm ID, it needs to calculate the path based on the algorithm constraints identified by each Flexible-Algorithm ID, calculate the forwarding path, and generate the routing table, even if it is different
  • the forwarding devices corresponding to the network slices are the same, the multiplexing of the topology calculation results cannot be achieved, which results in a waste of interface resources.
  • the network device In a non-network slicing scenario, there may be multiple interfaces on the network device for communicating with the next-hop network device.
  • the network device generally selects an interface randomly or according to the active state to forward data packets to The next-hop network device cannot realize the isolation of forwarding resources, and some interfaces may be idle, resulting in a waste of interface resources.
  • the embodiments of the present application provide a data transmission control method and device, which are used to determine the interface resource object for forwarding data packets on the interface of the network device by adding one or more identification information.
  • the interface of the network device may be a physical interface or a bound interface composed of multiple physical interfaces.
  • the interface resource object can be a physical interface, a physical sub-interface, a logical sub-interface (such as a channelized sub-interface, or a Flex-E sub-interface), or a message queue.
  • Different interface resource objects can correspond to different interface forwarding resources.
  • the following is an example of adding identification information to determine the interface resource object for forwarding data packets on the interface of the network device.
  • a global identification information is added, and the global identification information is used to select an interface resource object on an interface to forward a data message.
  • the global identification information may be referred to as the first identification information, or may also be referred to as a self-definition global policy identification (SDGP ID for short).
  • SDGP ID has a global meaning and is used to select forwarding resources.
  • the global identification information can also be named other names, which is not limited in the embodiment of the present application, and the following description in the embodiment of the present application will be referred to as SDGP ID as an example for description.
  • the controller creates the mapping relationship between the value of each different SDGP ID and one or more interface resource objects.
  • the same interface resource object can correspond to multiple SDGP-IDs.
  • one interface resource object can also correspond to one SDGP-ID.
  • the controller creates a mapping relationship between the values of different SDGP IDs and one or more interface resource objects, and sends them to the network device side.
  • the first network device determines the target interface according to the destination address carried in the first data packet, and the target interface is the first network device
  • the interface used to connect to the second network device on the existing network device the second network device is the next hop network device of the first network device; then the first identification information (SDGP-ID) carried in the first data packet is used to determine the At least one interface resource object on the target interface; and then forward the first data message to the second network device through the at least one interface resource object.
  • SDGP-ID first identification information
  • different SDGP ID values can be defined to correspond to different network slices.
  • Different network slices correspond to one or more interface resource objects.
  • One interface resource object can be used by one network slice or multiple network slices.
  • the interface resource object corresponding to the custom global policy identifier can be defined by the SDN controller and delivered to the network device side.
  • the custom global policy identifier is carried in the data message, and the data message also carries the destination address.
  • the network device parses the data message and determines the existence of the network device and connects to the next hop through the destination address The interface of the network device, and then select the interface resource object on the interface according to the SDGP-ID, so as to realize the forwarding of the service flow.
  • the data message in the embodiment of the present application may be, but is not limited to, an IPv4 message header, a multi-protocol label switching (multi-protocol label switching, MPLS) message, and an IPv6 message.
  • FIG. 6 a schematic diagram of the process of issuing the mapping relationship between SDGP-ID and interface resource objects for the process of creating a network slice for the controller.
  • the controller receives a network slice creation request sent by the slice manager, and the network slice creation request may include network slice requirement information.
  • the network slicing requirement information may include parameters such as the network slicing name (Network Slicing ID), the type of the network slicing, and the SLA request.
  • the slice manager requests the creation of a network slice, it can request the creation of one network slice at a time, or it can request the creation of multiple network slices at a time.
  • the controller creates a network slice according to the network slice requirement information.
  • the controller may include a network slice management module, which is used to create network slices according to network slice requirement information.
  • the controller may assign the network topology to the network slice, and configure multi-topologies (MT) for the network slice. ID or Flex-Algorithm ID. If none of the network topologies that the controller has created meets the requirements of network slicing, the controller can create a network topology according to the network slicing requirement information, and generate MT-ID or Flex-Algorithm ID.
  • the controller also needs to configure a custom global policy identifier (SDGP ID) for the network slice, and allocate corresponding interface resource objects for the network slice.
  • SDGP ID custom global policy identifier
  • Different network slices correspond to different SDGP-IDs.
  • SDGP IDs custom global policy identifiers
  • the above-mentioned network topology may be divided by using Flex-algo technology or divided by using multi-topology (MT) technology.
  • the network topology identifier divided by the Flex-algo technology is called Flex-Algorithm ID
  • the network topology identifier divided by the multi-topology technology is called MT-ID.
  • the network slicing configuration model includes network topology (MT-ID or Flex-Algorithm ID) and global policy identification (SDGP-ID).
  • the network slicing configuration model is delivered to the network device through the controller or user-defined configuration.
  • Each network device can flood the network slicing configuration model in the network by publishing Network-Slicing TLV to ensure that all network devices in the network have the same network slicing configuration model for network slices with the same Network Slicing ID.
  • the Network Slicing TLV can be a top-level TLV or a sub-TLV (sub-TLV) of the TLV currently to be released.
  • the Network Slicing TLV can be used as a sub-TLV of the Router capabilities TLV. This is not limited in the embodiments of the present application.
  • the network slicing configuration model can be: Network-slicing ID: 1; Flex-Algorithm ID: 128; SDGP-ID: 100.
  • FIG. 7 for a schematic diagram of the Network-Slicing TLV format.
  • Type represents the TLV type
  • Length represents the TLV length
  • Flags represents the current unmarked bit definition
  • reserved bits represents the network slicing identifier
  • Optional sub-sub-TLVs represents the TLV included in the network slicing The type of sub-TLV.
  • Optional sub-sub-TLVs may include Topo sub-TLV/Flex-Algorithm sub-TLV, and SDGP-ID sub-TLV.
  • Topo sub-TLV/Flex-Algorithm sub-TLV is used to carry Flex-Algorithm ID
  • SDGP-ID sub-TLV is used to carry SDGP-ID.
  • Figure 8 for a schematic structural diagram of Topo sub-TLV/Flex-Algorithm sub-TLV.
  • Topo ID/Flex-Algorithm ID represents a network topology identifier.
  • Figure 9 shows a schematic diagram of the structure of SDGP-ID sub-TLV. In Figure 9, Reserved represents reserved bits.
  • the controller sends information about the created network slice to the target network device.
  • the target network device can be understood as a network device determined by the controller according to the network topology corresponding to the network slice.
  • the controller determines the corresponding network topology of the network slice 1 as shown in Fig. 1.
  • the network topology includes A, B, C, D, E, F, G, and H.
  • the controller can send the information of network slice 1 to the edge network device (such as network device A) in the network topology, and then the edge network device (such as network device A) can use the flooding method to notify the information of the network slice 1
  • the edge network device such as network device A
  • the controller can respectively send network slice 1 information to the network devices connected to the controller in the network topology, such as A, B, C, D, E, F, G and H are all connected to the controller, and the controller can connect
  • the information of network slice 1 is sent to A, B, C, D, E, F, G, and H.
  • the network slice information includes network topology, SDGP-ID, and the correspondence between SDGP ID and interface resource objects. There may be a one-to-one correspondence between the SDGP-ID and the interface resource object, or one SDGP-ID may correspond to two or more interface resource objects.
  • the controller can execute the path calculation and send the calculation result to the head-end network device.
  • the head-end network device can also perform path calculation and report the path calculation result to the controller.
  • the network device may allocate adjacent labels based on the IGP protocol, and report the allocated adjacent labels to the controller, so that the controller generates a label stack list for forwarding data packets based on the adjacent labels and the path calculation result.
  • each network device allocates adjacency labels, it floods the entire network, so that each network device in the network learns the adjacency labels issued by other network devices through the IGP protocol to determine the next hop network device when forwarding data packets.
  • the controller or network device respectively calculates forwarding paths according to different network topologies, that is, calculates different forwarding paths for different Flex-Algorithm IDs.
  • the forwarding paths used by different network slices can be the same, that is, different network slices reuse the same network topology, so that the controller/network device only needs to calculate the forwarding path once for different network slices of the same network topology.
  • the controller may also include a path calculation control module.
  • the path calculation control module performs path calculation according to different network topologies, and sends the path calculation results to the network slice management module for The network slicing is associated with the forwarding path obtained by calculating the path.
  • the network slicing configuration model defines different SDGP-IDs to ensure data isolation on the forwarding plane.
  • Figure 10 defines two Flex-Algorithm IDs of 128 and 129, which use different metric types as path attribute definitions.
  • Flex-Algorithm ID: 128 uses IGP metric as the path calculation constraint
  • Flex-Algorithm ID: 129 uses link-delay metric as the path calculation constraint.
  • Different Flex-Algorithm IDs configure different network segment routes, and network segment routes are used to distinguish network topologies. Assuming that the affinity attributes corresponding to the two Flex-Algorithm IDs are the same, that is, their network topologies are the same, and they are all network devices in the network. However, because the metric types used for path calculation are different, different metric types of the same link are different, so the path calculation results are also different.
  • SRv6 Segment Routing IPv6
  • Flex-Algorithm ID 128 uses IGP Metric to calculate the shortest path from node A to D, and the calculation result is A->B->C-D;
  • Flex-Algorithm ID 128 is as follows:
  • Link constraint Affinity (affinity attribute), such as green, when using Flex-Algorithm ID 128 to calculate the road, it indicates that the green link is excluded or the green link is included.
  • Flex-Algorithm ID 129 uses the delay metric to calculate the shortest path from node A to D, and the calculation result is A->E->F->G->->D;
  • Flex-Algorithm ID 129 is as follows:
  • Link constraint Affinity, such as purple, indicates that the purple link is excluded or the purple link is included when the Flex-Algorithm ID 129 is used to calculate the route.
  • Network slice 1 Network Slicing ID: 1; Flex-Algorithm ID: 128; SDGP-ID: 1.
  • Network Slicing 2 Network Slicing ID: 2; Flex-Algorithm ID: 128; SDGP-ID: 2.
  • Network Slicing 3 Network Slicing ID: 3; Flex-Algorithm ID: 129; SDGP-ID: 3.
  • Network slice 1 and network slice 2 use the same Flex-Algorithm ID: 128, so their topologies are the same, and the control plane calculation results are the same; but because the SDGP-IDs are different, data isolation can be achieved on the forwarding plane.
  • Network slice 3 is different from the Flex-Algorithm ID of network slice 1 and network slice 2. It uses the delay metric value to calculate the path, so the control plane calculation result is the same as the network slice 1 and network slice 2 using IGP metric to calculate the path. different.
  • the network device generates a forwarding mapping table according to the correspondence between the SDGP ID issued by the controller and the interface resource object.
  • the arrows in Figure 10 show the forwarding resources corresponding to the three network slices. Since the three different network slices use different SDGP-IDs, the interface resource objects identified by them are different.
  • the controller issues the mapping relationship between the SDGP-ID and the interface resource object to the network device, so that the network device generates a forwarding mapping table. Take the interface resource object as a sub-interface as an example. Take the existence of multiple sub-interfaces between network device A and network device B as an example.
  • multiple sub-interfaces between network device A and network device B.
  • a forwarding mapping table between SDGP-ID and sub-interfaces needs to be established.
  • multiple sub-interfaces can form a binding interface, such as a Trunk interface.
  • the controller can use the Trunk collection model to construct the binding interface, and the Trunk collection model can be based on the properties of the sub-interface configuration in the binding interface. (Such as bandwidth), index to the sub-interface in the corresponding bound interface.
  • Trunk interface works at Layer 3 (configures Layer 3 IP and establishes IGP neighbors), sub-interfaces work at Layer 2 (without IP), and establishes IGP between network devices Neighbors are established based on Trunk interfaces instead of actual sub-interfaces, which can reduce the number of adjacencies that need to be maintained by the IGP routing protocol when there are parallel links between neighbors. IGP neighbors are only established based on Trunk interfaces, such as the IGP neighbor relationship established based on Trunk interfaces in Figure 11. On the forwarding plane of network device A, the forwarding mapping table is generated and maintained according to the Trunk interface and the relationship between SDGP-ID and sub-interfaces, as shown in Table 1 below:
  • Trunk0 interface the Trunk interface between network device A and network device B
  • Trunk1 interface the Trunk interface between Device E
  • the controller may notify the network device of the identifier of the trunk interface and the sub-interfaces included in the trunk interface indicated by the identifier of the trunk interface.
  • SDGP-ID can correspond to two or more sub-interfaces.
  • forwarding service flows it can be forwarded in a split mode. , That is, the service flow is forwarded through multiple sub-interfaces corresponding to SDGP-ID.
  • the first network device obtains a first data packet, where the first data packet carries a destination address and first identification information.
  • the first data message is any data message in the service flow.
  • the first network device determines a target interface according to the destination address, the target interface is an interface that exists on the first network device for connecting to a second network device, and the second network device is a next-hop network device of the first network device.
  • the first network device there may be multiple network devices connected to the first network device, and the first network device is connected to different network devices through different interfaces.
  • the first network device can determine the next hop network device (that is, the second network device) for forwarding the service flow through the destination address, that is, the target interface is an interface used to connect to the second network device among the interfaces existing on the first network device.
  • the first network device when it determines the target interface according to the destination address, it may determine the target interface identifier corresponding to the destination address according to the routing and forwarding table, and the target interface identifier is used to identify the target interface, thereby determining the target interface.
  • the routing and forwarding table includes the correspondence between the destination address and the target interface identifier.
  • the target interface identifier indicates the next-hop network device in the forwarding path of the first data packet.
  • the first network device determines the first interface resource object on the target interface according to the first identification information.
  • the mapping relationship may be stored in the first network device, so that the first network device can determine the target interface according to the first identification information
  • the first interface resource object on the For example, there are multiple interface resource objects on the target interface.
  • the binding interface is composed of multiple sub-interfaces, and the interface resource object is the sub-interface, so that the first network device determines the sub-interface to which the first identification information is mapped from the multiple sub-interfaces included in the binding interface , Used to forward the first data message.
  • the first network device When the first network device stores the one-to-one mapping relationship between the first identification information and the first interface resource object on the target interface, it may be stored in the form of a table. For example, the first network device stores the first forwarding mapping
  • the first forwarding mapping table includes the corresponding relationship between the target interface identifier, the first identification information, and the first interface resource object identifier, so that the first network device determines according to the first forwarding mapping table
  • the first interface resource object identifier corresponding to the first identification information on the target interface identified by the target interface identifier, where the first interface resource object identifier is used to identify the first interface resource object, thereby determining the first interface resource Object.
  • S1204 The first network device forwards the first data packet to the second network device through the first interface resource object.
  • the aforementioned first network device may be a head-end network device on the forwarding path of the service flow, or an intermediate network device on the forwarding path, which is not limited in the embodiment of the present application.
  • the data message received from the previous-hop network device will carry the first identification information.
  • the first network device is a head-end network device
  • the data message received from the terminal device may carry the first identification information, that is, the first identification information may be carried in the data message by the terminal device when sending the data message Sent to the first network device.
  • the data packet sent by the terminal device may not carry the first identification information. In this case, when the first network device as the head-end network device receives the second data packet from the terminal device, the second data The message does not carry the first identification information.
  • the first network device When determining that the second data message is associated with the first network slice, the first network device inserts the first identification information according to the correspondence between the identification of the first network slice and the first identification information
  • the first data message is obtained from the second data message.
  • the corresponding relationship between the identifier of the first network slice and the first identification information may be created by the controller and issued to the first network device when the network slice is created.
  • the first identification information extended on the data plane can be used to isolate mutual visits between different services.
  • the network device at the entrance of the forwarding path encapsulates the identifier when receiving the message, and checks the identifier when sending the message from the intermediate network device. Improved the risk capability and security assurance of the network. For example, when an attack message is generated, most of the attack messages can be eliminated by checking the interface message.
  • the first identification information may be carried in the header of the first data message.
  • the first identification information may be carried in the header of the first data message in a variety of ways, and several of them are exemplarily described as follows.
  • the first identification information and the destination address are respectively carried in the header of the first data packet as two pieces of information.
  • the first identification information may be carried in an extended TLV or a sub-TLV.
  • the first data packet can be an IPv6 type packet, an IPv4 type packet, a multi-protocol label switching (MPLS) packet, or other types of packets. This application The embodiment does not limit this.
  • the first identification information can be carried in the IPv6 hop-by-hop option header (ipv6hop-by-hop option header) of the ipv6 data packet. )in.
  • a newly-added TLV type is used in the extension header of the header to carry SDGP-ID.
  • Next Header represents the protocol type of the next message header
  • Header Ext Len represents the length of the extended header (not including the bytes occupied by Next Header)
  • Type identifies the option type, corresponding to the specific type of data that follows Type-Specific data
  • the field carries SDGP-ID
  • Length represents the data length of SDGP-ID.
  • the first identification information may be carried in the IPv4 packet header In the optional field (Options).
  • a custom TLV type can be used in the Options of the IPv4 type message.
  • the custom TLV includes Type, Length, and SDGP-ID. Type is used to identify the option field type, Length represents the length of the custom TLV, and SDGP-ID is used to indicate the interface resource object used to forward the data message.
  • the first identification information may be carried in the MPLS packet as an entropy label.
  • ETH represents the Layer 2 Ethernet packet header
  • TunnelL label/VPN label/MPLS label is used to identify the outgoing interface/next hop of the forwarding path
  • the reserved label is used to identify the lower layer label of the reserved label is the network slice label
  • SDGP Label each hop network device accesses the SDGP label, identifies its label value, that is, the SDGP-ID value, queries the interface resource object identified by the SDGP-ID, and forwards the MPLS packet.
  • the forwarding path is network device A-"network device B-"network device C.”
  • sub-interfaces with the same attribute (for example, bandwidth) on different network devices may be named in the same way, or may be different currently.
  • the same naming is used as an example in FIG.
  • sub-interface 0, sub-interface 1, and sub-interface 2 form a binding interface, such as Trunk0.
  • Sub-interface 0 belongs to the forwarding resource of network slice 1
  • sub-interface 1 belongs to the forwarding resource of network slice 2
  • sub-interface 2 belongs to the forwarding resource of network slice 3.
  • Sub-interface 0 corresponds to SDGP-ID1
  • sub-interface 1 corresponds to SDGP-ID2
  • sub-interface 2 corresponds to SDGP-ID3.
  • network device A receives data message 1, and searches the routing and forwarding table according to the destination address A in data message 1 to determine the bound interface.
  • the destination address A in the routing and forwarding table corresponds to Trunk0, and then Trunk0 and The SDGP-ID in data message 1, for example, if the SDGP-ID in data message 1 is SDGP-ID1, the data message 1 will be forwarded to network device B through the forwarding resource of network slice 1, that is, subinterface 0.
  • the device uses a similar method to determine to forward data packet 1 to network device C through subinterface 0.
  • the interface resource object corresponding to the SDGP-ID can also be associated with the PHB used to forward the service flow. Therefore, when the first network device forwards the data message through the interface resource object determined by the SDGP-ID, it uses the forwarding behavior indicated by the PHB associated with the interface resource object corresponding to the SDGP-ID to forward the data message.
  • the network device can also map the PHB used by the corresponding interface resource object under the SDGP-ID in the forwarding table. Of course, it can also be stored as a separate table or stored in other non-table manners, which is not specifically limited in this application.
  • the first identification information can be multiplexed with the destination address field, and the first identification information is carried in the header of the first data packet as a part of the destination address.
  • the first identification information is extended in the destination address (DA) field of the IPv6 message header.
  • the embodiment of the present application does not limit the position of the SDGP-ID in the DA field.
  • the information used to determine the target interface in the destination address is called routing information.
  • the SDGP-ID may be adjacent to the routing information, or of course it may not be adjacent, and the SDGP-ID may also be part of the routing information.
  • the routing information is located in high bits of the DA field, and the first identification information is located in other bits.
  • the first identification information may also be located in the high bits of the DA field, and the routing information may be located in the low bits.
  • the DA of IPv6 is 128 bits, and several bits are defined to identify SDGP-ID.
  • the routing table maintained locally by network device A is shown in Table 2.
  • IPv6Dest (address) Exit-Interface Next-Hop c0a8:2048::/32 Trunk-0 interface collection Network equipment B
  • the network device A receives the first data message, and the DA in the first data message is c0a8:2048::2. According to the longest IP matching principle, if c0a8:2048::/32 is matched, the corresponding outgoing interface is the Trunk0 interface of A->B. Since the lowest 16-bit identification SDGP-ID of 128 in DA is defined, for example, the lowest 16-bit value of c0a8:2048::2 is 2, so the forwarding mapping table is queried according to SDGP-ID of 2, for example, as shown in Table 3. , Determine the sub-interface interface 2 in the Trunk 0 interface, that is, forward the first data packet to the network device B through the sub-interface 2.
  • IPv6DA is the SRv6 SID defined in SRv6, and the above method can also be used to extend the K bit in the SRv6 SID format to identify the SDGP-ID.
  • Locator has a positioning function. Function indicates the device's instructions, used to instruct the SRv6 SID generating node to perform corresponding functional operations.
  • Arguments is an optional parameter section used to define information such as message flow and services.
  • SDGP-ID can be information in Argument, or it can be a K bit independent of Argument.
  • Next Header indicates the type of the packet header immediately following the SRH.
  • Hdr Ext Len represents the length of the SRH header, which mainly refers to the occupied length from Segment List[0] to SegmentList[n].
  • Routing Type used to indicate the routing header type, SRH Type is 4.
  • Segments Left (SL) indicates the number of intermediate nodes that should be visited before reaching the destination node.
  • Last Entry which means that the index of the last element of the segment list is included in the segment list.
  • Flags are some identifiers of the data packet. Tag, to identify the same group of data packets.
  • Segment List[n] represents a list of segments, and the list of segments starts to be coded from the last segment of the path.
  • the Segment List is in the form of an IPv6 address.
  • SegmentList[n] is the first Segment List to be processed on the SRv6 path
  • Segment List[n-1] is the second
  • Segment List[n-3] is the third
  • ..., Segment List[0] It is the n+1th.
  • the Segment Left (SL) field is reduced by 1, and the IPv6DA information is changed once.
  • the Segments Left and Segments List fields jointly determine the IPv6DA information. If the SL value is n(n-0), the IPv6DA value is the value of Segments List[n].
  • the IPv6DA value is the value of Segments List[n-1], and so on, if the SL value is 1, the IPv6DA value is the value of Segments List[1]. If the SL value is 0, the IPv6DA value is the value of Segments List[0].
  • the SRv6 SID is the ordinary IPv6DA, and the packet is forwarded according to the forwarding method in the example of multiplexing the first identification information in the destination address in the above IPv6. If the SRv6 SID is the SID of the current node, find out the outbound interface/next hop information by querying the forwarding information database (forward information database, FIB) table (and/or routing table) and forwarding mapping table, etc., and then use the carried SDGP -ID information determines the sub-interface.
  • forwarding information database forward information database, FIB
  • FIB forward information database
  • End SID stands for Endpoint SID, which is used to identify a certain destination address prefix (Prefix) in the network, which is globally visible in the system and valid globally.
  • End.X SID represents the Endpoint SID of the three-layer cross-connection, which is used to identify a certain link in the network, which is visible globally and valid locally.
  • the node After receiving the SRv6 data message, the node first judges whether the SRv6 SID corresponding to the destination address is an End type SID or an End.X type SID according to the local SID table of the destination address (SRv6 SID). If it is an End type SID, the node will continue to query the FIB table (and/or routing table), and then query the target interface corresponding to the SRv6 SID according to the IPv6FIB table, and then query the forwarding mapping table according to the SDGP-ID in the SRv6 SID to determine the sub-interface, and then Data packets are forwarded through the determined sub-interface.
  • FIB table and/or routing table
  • the SRv6 SID is an End.X SID
  • the FIB table that is, determine the next hop (outgoing interface) of the SRv6 SID, and then query the forwarding mapping table according to the SDGP-ID in the SRv6 SID to determine the sub-interface, and then pass the determined The sub-interface forwards data packets.
  • the first identification information can be multiplexed with other fields in the header of the first data packet, such as a traffic class (TC) field or a flow label (flow label) field, or a source address field Wait.
  • TC traffic class
  • flow label flow label
  • the first identification information multiplexes the traffic class field. All or part of the traffic class field may be used to indicate the first identification information. For example, referring to FIG. 20, all traffic class fields are used to indicate the first identification information. In the embodiment of the present application, the position of the first identification information in the stream label field and the number of bits occupied are not specifically limited.
  • the first network device After the first network device obtains the first data packet, the first network device determines the target interface according to the destination address in the header of the first data packet. Then, the first identification information is obtained from the traffic class field of the packet header, and the first interface resource object on the target interface is determined according to the first identification information. Thus, the first data message is forwarded through the first interface resource object.
  • the first identification information multiplexes the flow label field. All or part of the stream label field may be used to indicate the first identification information. For example, referring to FIG. 21, a part of the stream label field is used to indicate the first identification information. For example, the high bit in the stream label field is used to indicate the stream label information, and the low bit is used to indicate the first identification information. For another example, the low bit in the stream label field is used to indicate the stream label information, and the high bit is used to indicate the first identification information. In the embodiment of the present application, the position of the first identification information in the stream label field and the number of bits occupied are not specifically limited.
  • the first network device After the first network device obtains the first data packet, the first network device determines the target interface according to the destination address in the header of the first data packet. Then, the first identification information is obtained from the flow label field of the packet header, and the first interface resource object on the target interface is determined according to the first identification information. Thus, the first data message is forwarded through the first interface resource object.
  • SDGP-ID corresponding to multiple interface resource objects as an example.
  • SDGP-ID is combined with the differentiated services model of QoS (DiffServ) to indicate the forwarding strategy of a certain service flow.
  • Different forwarding strategies indicate one or more interface resource objects on the interface of the network device, and indicate the forwarding behavior of the interface resource object .
  • the controller When the controller creates the network slice according to the network slice requirement information, it configures the SDGP-ID for the network slice and configures the interface resource object for the network slice.
  • the controller configuration SDGP-ID can correspond to multiple interface resource objects. Different SDGP-IDs can correspond to the same interface resource object.
  • the interface resource object corresponding to the SDGP-ID is associated with the PHB used to forward the service flow. It should be noted that the PHBs associated with the same interface resource object corresponding to different SDGP-IDs can be different. That is to say, an interface resource object belonging to different network slices can correspond to different PHBs under different network slices. Different PHBs correspond to different forwarding behaviors, and different forwarding behaviors provide different service levels.
  • SDGP-ID1 corresponds to N interface resource objects on the target interface, and N is an integer greater than 1, and resource ID (Resource-ID, Res-ID) can be used in the entire network. Identifies the interface resource object.
  • the controller sends the mapping relationship between the SDGP-ID and the N interface resource objects and the mapping relationship between the resource ID and the interface resource objects on the target network device to the target network device.
  • the multiple interface resource objects configured by the controller for each SDGP-ID and the PHB used by each interface resource object under the SDGP-ID can be regarded as a forwarding strategy issued to each target network device.
  • the mapping relationship between SDGP-ID and N interface resource objects, and the mapping relationship between resource ID and interface resource objects on the target network device can be sent by the controller to the target network as part of the network slice information. Road equipment. It is understandable that different SDGP-IDs correspond to different network slices, so that the controller can send the correspondence between SDGP-ID and network slice identification to the target network device, and the target network device will flood the entire network. , Or the corresponding relationship between the controller SDGP-ID and the network slice identifier is distributed to each network device in the network topology corresponding to the network slice.
  • an SDGP-ID of 1 corresponds to network slice 1
  • an SDGP-ID of 2 corresponds to network slice 2
  • an SDGP-ID of 3 corresponds to network slice 3.
  • Network slice 1 High-priority network slice, which provides forwarding services with low packet loss rate, low delay, low jitter, and certain bandwidth.
  • the average bandwidth is 25G
  • the peak bandwidth is 50G.
  • the slice allocates resources based on peak traffic, and the slice bandwidth is set to 50G.
  • Network slicing 2 Low-priority network slicing, providing services with low latency, low packet loss rate, and high reliability.
  • the average bandwidth is 10G
  • the peak bandwidth is 20G.
  • This slice allocates resources based on the average value of traffic, and the slice is set to a bandwidth of 10G.
  • Network slicing 3 Low-priority network slicing, providing services with lower delay, low packet loss rate, and high reliability.
  • the average bandwidth is 5G
  • the peak bandwidth is 10G.
  • the slice allocates resources based on the average value of traffic, and the slice sets the bandwidth to 5G.
  • the interface resource object as a sub-interface as an example, as shown in Figure 22, there are three sub-interfaces on the first network device and the second network device.
  • the three sub-interfaces on the first network device are sub-interface 1 and sub-interface respectively.
  • Interface 2 and sub-interface 3 are sub-interface 4, sub-interface 5, and sub-interface 6.
  • the three sub-interfaces on the first network device are connected to the three sub-interfaces on the second network device one by one, as shown in the connection relationship in FIG. 22.
  • Sub-interface 1 is connected to sub-interface 4 and provides a bandwidth of 50G
  • sub-interface 2 is connected to sub-interface 5 and provides a bandwidth of 10G
  • sub-interface 3 is connected to sub-interface 6 and provides a bandwidth of 5G.
  • the bandwidth corresponding to each sub-interface can be planned during network distribution, and the bandwidth of each sub-interface can also be planned by the controller when planning the network topology.
  • network slice 1 allocates bandwidth resources based on peak traffic, which can ensure reliable services for high-priority services.
  • Network slice 1 can use sub-interface 1 of the first network device and sub-interface 4 of the second network device as forwarding resources, and can use The forwarding behavior of EF.
  • Network slice 2 allocates bandwidth resources based on the average value of traffic, which can provide reliable services for most business flows.
  • Network slice 2 can use sub-interface 2 of the first network device and sub-interface 5 of the second network device as forwarding resources. When the traffic exceeds the average interface bandwidth, the excess traffic can be forwarded through sub-interface 1 and sub-interface 4. It can be forwarded in a way that reduces the service level, such as forwarding in AF mode.
  • Network slice 3 allocates bandwidth resources based on the average value of traffic, which can provide reliable services for most of the business flows. When the traffic of the business flow exceeds the average, the excess traffic can be forwarded through sub-interface 2 and sub-interface 5, and the service level can be reduced. Forwarding, for example, forwarding in BE mode.
  • different SDGP-IDs can be configured to configure forwarding strategies respectively, and the forwarding strategy includes the sub-interface corresponding to each SDGP-ID and the PHB used by the sub-interface corresponding to the SDGP-ID.
  • the forwarding strategies corresponding to different SDGPs can be:
  • SDGP-ID is 1: sub-interface 1 of the first network device and sub-interface 4 of the second network device, QoS: EF;
  • SDGP-ID is 2: (Sub-interface 2 of the first network device and Sub-interface 5 of the second network device, QoS: EF) + (Sub-interface 1 of the first network device and sub-interface 4 of the second network device + QoS :AF);
  • SDGP-ID is 3: (sub-interface 3 of the first network device and sub-interface 6 of the second network device + QoS: EF) + (sub-interface 2 of the first network device and sub-interface 5 of the second network device + QoS :BE).
  • resource ID 1 identifies the sub-path of sub-interface 1 and sub-interface 4
  • resource ID: 2 identifies the sub-path of sub-interface 2 and sub-interface 5
  • resource ID: 3 identifies sub-interface 3 and sub-interface 6 Sub-paths.
  • SDGP-ID is 1: ResID1+QoS:EF;
  • SDGP-ID is 2: (ResID2+QoS:EF)+(ResID1+QoS:AF);
  • the SDGP-ID is 3: (ResID3+QoS:EF)+(ResID2+QoS:BE).
  • the target network device receives the forwarding strategy issued by the controller, that is, the target network device receives the mapping relationship between the SDGP-ID and N interface resource objects, and the mapping relationship between the resource ID and the interface resource objects on the target network device ,
  • a mapping forwarding table can be established, taking the interface resource object as a sub-interface as an example. For example, referring to FIG. 22, three sub-interfaces on the first network device constitute a binding interface, and three sub-interfaces on the second network device constitute a binding interface. Take the binding interface as the trunk interface as an example.
  • a forwarding mapping table is generated and maintained according to the corresponding relationship between the Trunk interface and the SDGP-ID, Res-ID and sub-interfaces, as shown in Table 4 below.
  • a forwarding mapping table is generated and maintained according to the corresponding relationship between the Trunk interface and the SDGP-ID, Res-ID and sub-interfaces, as shown in Table 5.
  • the forwarding mapping table shown in Table 4 or Table 5 is only used as an example.
  • the forwarding plane of the target network device generates and combines the trunk interface and the correspondence between SDGP-ID, Res-ID and sub-interfaces. Maintain multiple tables.
  • the mapping relationship corresponding to Table 4 can also be established in the manner of Table 6 and Table 7 below.
  • the target network device can also map the PHB used by the corresponding sub-interface under SDGP-ID in the forwarding table.
  • it can also be stored as a separate table or stored in other non-table ways. This is not specifically limited.
  • the first network device may add the PHB used by the corresponding sub-interface under SDGP-ID to the mapping forwarding table, as shown in Table 8.
  • the first network device obtains a first data message, and the first data message carries routing information and first identification information.
  • the first network device determines a target interface according to the routing information, where the target interface is an interface that exists on the first network device for connecting to a second network device, and the second network device is the The next hop network device of the first network device;
  • the first network device determines at least one interface resource object on the target interface according to the first identification information
  • the first network device forwards the first data packet to the second network device through the at least one interface resource object.
  • the routing information and the first identification information are carried in the first data packet as two separate pieces of information.
  • the routing information is the destination address.
  • the method of determining the target interface according to the destination address and determining the interface resource object according to the first identification information is as described above, and will not be repeated here.
  • the header of the first data message includes the destination address and the first identification information.
  • the header of the first data packet includes an extended label length content TLV, and the extended TLV includes the destination address and the first identification information.
  • the first identification information is included in a header of the first data message as an entropy tag.
  • the first identification information may be multiplexed with a destination address, and a part of the destination address is used to indicate the first identification information.
  • the header of the first data message includes a destination address
  • the destination address includes the routing information and the first identification information.
  • the routing information occupies high bits of the destination address
  • the first identification information occupies low bits of the destination address.
  • the routing information occupies the low bits of the destination address
  • the first identification information occupies the high bits of the destination address.
  • the first identification information multiplexes the communication classification field.
  • the message header of the first data message includes the destination address (routing information) and a communication classification field
  • the communication classification field includes the first identification information.
  • the first identification information multiplexes a flow label field
  • the header of the first data message includes the destination address (routing information) and the flow label field
  • the flow label includes the The first identification information
  • the target network device can also map the bandwidth corresponding to each sub-interface in the forwarding table.
  • it can also be stored as a separate table, or can be stored in other non-table ways, which is not specifically limited in this application. .
  • the first network device obtains a first data packet, where the first data packet carries a destination address and first identification information.
  • the first data message is any data message in the service flow.
  • the first network device determines a target interface according to the destination address, the target interface is an interface that exists on the first network device for connecting to a second network device, and the second network device is a next-hop network device of the first network device.
  • the determination method refer to the description in the embodiment corresponding to FIG. 12, and details are not described herein again.
  • the first network device determines, from the N interface resource objects mapped by the first identification information, M interface resource objects used to forward the service flow to which the first data packet belongs, where M is less than or equal to N Positive integer.
  • S1804 The first network device forwards the first data packet through one interface resource object among the M interface resource objects.
  • the M interface resource objects used to forward the service flow to which the first data message belongs it may be based on the first data message
  • the traffic of the service flow to which it belongs is used to determine M interface resource objects for forwarding the service flow to which the first data packet belongs from the N interface resource objects mapped by the first identification information.
  • the two interface resource objects are called the main interface resource object and the auxiliary interface resource object respectively, that is, the first identification information corresponds to the main interface resource object and the auxiliary interface resource respectively.
  • the M interface resource objects used to forward the service flow to which the first data packet belongs can be implemented in the following manner:
  • the first network device determines that the bandwidth of the main interface resource object meets the traffic requirement of the service flow to which the first data message belongs, it determines that the main interface resource object is used to forward the first data message The business flow to which it belongs. In this case, the first network device forwards the first data packet through the host interface resource object.
  • the first network device determines that the bandwidth of the primary interface resource object does not meet the traffic requirements of the service flow to which the first data packet belongs, it determines that the primary interface resource object and the secondary interface resource object are used for Forward the service flow to which the first data message belongs.
  • the first network device performs offloading and forwarding for the service flow to which the first data packet belongs, that is, forwards the service flow to which the first data packet belongs through the primary interface resource object and the secondary interface resource object .
  • Whether the first data message is forwarded through the primary interface resource object or the secondary interface resource object can be determined according to the offload situation, so that the first network device forwards the first data message through the primary interface resource object or the secondary interface resource object.
  • the controller configures different PHBs for different interface resource objects corresponding to the first identification information
  • the primary interface resource object association corresponding to the first identification information uses the second PHB when forwarding the service flow
  • the first identification information corresponds to
  • the third PHB is used when the secondary interface resource object association in the forwarding service flow.
  • the first network device may use a second PHB to forward the first data message through the main interface resource object To the second network device.
  • the second PHB can be any one of EF, AF, BE, and CS.
  • the first network device may respectively use the second PHB to pass the primary interface resource object and use the third The PHB forwards the service flow to which the first data packet belongs through the secondary interface resource object.
  • the second PHB can be any one of EF, AF, BE, and CS
  • the third PHB can be any one of EF, AF, BE, and CS.
  • the service level of the PHB corresponding to the primary interface resource object is higher than the service level of the secondary interface resource object.
  • the foregoing second PHB may be EF
  • the third PHB may be AF.
  • the main interface resource object adopts EF to ensure the reliable service of most of the content of the service flow, and the other part of the content is guaranteed to be forwarded after the service level is reduced in the AF method.
  • the second PHB is EF
  • the third PHB is BE.
  • mapping forwarding table shown in the first network device configuration table 6 as an example.
  • Service flow 1 of network slice 1 carries the SDGP-ID value of 1, and the processing flow for service flow 1 by the first network device is as follows:
  • the first network device receives the data message 1 carrying the SDGP-ID, and queries the local routing table through the destination address to obtain the outgoing interface/next hop, such as Trunk0, and the next hop network device is the second network device;
  • the first network device modifies the PHB in the TC field of the data message 1 to the accelerated forwarding EF;
  • the first network device may adopt the forwarding behavior corresponding to EF to the data message 1 that modifies the TC field, and forward it to the next-hop network device, that is, the second network device through the sub-interface interface 1.
  • Service flow 2 of network slice 2 carries the SDGP-ID value of 2, and the processing flow on the network device side is as follows (the resource of network slice 2 is 10G, if the current traffic value is 15G):
  • the first network device receives the data message 2 with SDGP-ID, queries the local routing table through the destination address, and obtains that the outgoing interface/next hop is Eth-Trunk0, and the next hop network device is the second network device;
  • the first network device modifies the PHB in the TC field of the data message 2 to an accelerated forwarding EF;
  • the first network device uses the forwarding behavior corresponding to EF to modify the data message 2 of the TC field, and forwards it to the next-hop network device, that is, the second network device through the sub-interface interface2;
  • the first network device may use the forwarding behavior corresponding to EF to some packets in the service flow that modify the TC field, and forward them to the next-hop network device, that is, the second network device through the sub-interface interface 1.
  • sub-interface interface 1 implements simultaneous forwarding of the service flow of network slice 1 and network slice 2.
  • the forwarding behavior provided by sub-interface 1 to network slice 1 is EF, and sub-interface 1 provides absolute priority queue scheduling for the service flow of network slice 1 to ensure its bandwidth and delay; the forwarding behavior provided by sub-interface 1 to network slice 2 is AF , Sub-interface 1 provides forwarding quality assurance for the traffic that does not exceed the interface resource bandwidth limit, and the traffic that exceeds the limit will not be discarded, but will continue to be forwarded after the service level is reduced.
  • the service flow 3 of the network slice 3 carries the SDGP-ID value of 3.
  • the first network device processing flow is as follows: (the resource of slice 3 is 5G, if the current traffic value is 10G).
  • the first network device receives the data message 3 with SDGP-ID, and queries the local routing table through the destination address to obtain the outgoing interface/next hop as Eth-Trunk0, and the next hop network device as the second network device;
  • the first network device modifies the PHB in the TC field of the data message 3 to an accelerated forwarding EF;
  • the first network device uses the forwarding behavior corresponding to EF to modify the data message 3 of the TC field, and forwards it to the next-hop network device, that is, the second network device through the sub-interface interface3;
  • the first network device may use the forwarding behavior corresponding to BE to some packets in the service flow that modify the TC field, and forward them to the next-hop network device, that is, the second network device through the sub-interface interface2.
  • the sub-interface interface2 realizes simultaneous forwarding of the service flow of network slice 2 and network slice 3.
  • the forwarding behavior provided by sub-interface 2 to network slice 2 is EF, and sub-interface 2 provides absolute priority queue scheduling for the service flow of network slice 3 to ensure its bandwidth and delay; the forwarding behavior provided by sub-interface 2 to network slice 3 is BE , Sub-interface 2 provides best-effort forwarding behavior for the service flow of network slice 3. If the sub-interface 2 is operating at full load for a long time, this part of the data packet of the network slice 3 may be lost.
  • SDGP-ID is used to identify the forwarding strategy of the service flow. Different network slices can share the same forwarding resource.
  • the forwarding resource is mainly used for a certain network slice service. When the forwarding resource is idle, it guarantees the service flow of the main network slice. In the case of forwarding quality, it provides the corresponding quality forwarding guarantee for the service streams of other network slices, and makes full use of network resources.
  • an embodiment of the present application also provides an apparatus 1900, as shown in FIG. 24.
  • the apparatus 1900 is applied to a network device, and the network device may be the network device in the embodiment shown in FIG. 6, FIG. 10-12, FIG. 16, and FIG. 22-FIG. 23, which can be specifically used to perform the foregoing method implementations.
  • the apparatus 1900 may include a receiving module 1901, a processing module 1902, and a sending module 1903.
  • the apparatus 1900 may specifically be a processor, or a chip or a chip system in a network device.
  • the processing module 1902 is used for controlling and managing the actions of the device 1900, the receiving module 1901 is used for receiving information or messages, the sending module 1903 is used for sending information or sending messages, and the processing module 1902 is used for receiving information received by the module 1901. Or the message is processed.
  • the processing module 1902 is configured to obtain a first data message, the first data message carrying a destination address and first identification information; determine a target interface according to the destination address, and the target interface is on the first network device An existing interface for connecting to a second network device, the second network device being the next hop network device of the first network device; at least one interface resource on the target interface is determined according to the first identification information Object.
  • step S1202 For the specific implementation of determining the target interface by the processing module 1902 according to the target address, reference may be made to the processing procedure of step S1202 in the embodiment shown in FIG. 12, which will not be repeated here.
  • the processing module 1902 determines the specific implementation of at least one interface resource object on the target interface according to the first identification information, and may refer to the processing procedure of step S1203 in the embodiment shown in FIG. 12 or may refer to the embodiment shown in FIG. 23 The processing process of step S1803 in, will not be repeated here.
  • the sending module 1903 is configured to forward the first data packet to the second network device through the at least one interface resource object.
  • the sending module 1903 forwards the first data message to the second network device according to the at least one interface resource object.
  • the processing procedure of step S1204 in the embodiment shown in FIG. 12 please refer to the processing procedure of step S1804 in the embodiment shown in FIG. 23 will not be repeated here.
  • the processing module 1902 is specifically configured to determine the target interface identifier corresponding to the destination address according to a routing and forwarding table, and the routing and forwarding table includes the identification of the destination address and the target interface.
  • the target interface identifier is used to identify the target interface.
  • the processing module 1902 is specifically configured to determine the first interface resource object corresponding to the first identification information according to the mapping relationship.
  • the first network device stores a first mapping forwarding table;
  • the first mapping forwarding table includes the target interface identifier, the first identification information, and the first interface Correspondence between resource object identifiers;
  • the processing module 1902 is specifically configured to determine, according to the first mapping forwarding table, the first interface resource object identifier corresponding to the first identification information on the target interface identified by the target interface identifier, and the first interface resource The object identifier is used to identify the first interface resource object.
  • the first mapping forwarding table For the specific construction method of the first mapping forwarding table, reference may be made to the description in the embodiment shown in FIG. 6, which will not be repeated here.
  • the first per-hop behavior PHB is adopted when the first interface resource object forwards the service flow
  • the processing module 1902 is specifically configured to determine the first interface resource object corresponding to the first identification information according to the mapping relationship, then use the first PHB and transfer The first data message is forwarded to the second network device.
  • the first identification information has a mapping relationship with N interface resource objects, and N is an integer greater than 1.
  • the processing module 1902 is specifically configured to determine, from the N interface resource objects mapped by the first identification information, M interface resource objects used to forward the service flow to which the first data packet belongs, where M is less than or A positive integer equal to N.
  • the N interface resource objects are respectively equipped with PHBs used for forwarding service flows;
  • the processing module 1902 is specifically configured to use the PHB configured by the M interface resource objects respectively after determining the M interface resource objects used to forward the service flow to which the first data message belongs, and pass the M interface resource objects through the M interface resource objects.
  • the interface resource object forwards the service flow to which the first data message belongs.
  • N is 2, and the first identification information corresponds to the primary interface resource object and the secondary interface resource object;
  • the processing module 1902 is specifically configured to determine that the bandwidth of the main interface resource object meets the traffic requirements of the service flow to which the first data packet belongs, and determine that the main interface resource object is used to forward the first data packet.
  • the resource object is used to forward the service flow to which the first data message belongs.
  • the second PHB is used when the primary interface resource object forwards the service flow
  • the third PHB is used when the secondary interface resource object forwards the service flow
  • the processing module 1902 is specifically configured to use the second PHB when determining that the main interface resource object is used to forward the service flow to which the first data message belongs, and use the main interface resource object to transfer the The first data packet is forwarded to the second network device, or when it is determined that the primary interface resource object and the secondary interface resource object are used to forward the service flow to which the first data packet belongs, the The second PHB forwards the first data packet to the second network device through the secondary interface resource object, or uses the third PHB to forward the first data packet through the secondary interface resource object The document is forwarded to the second network device.
  • the second PHB is any one of EF, CS, AF, and BE; or, the third PHB is any one of EF, CS, AF, and BE.
  • the device further includes:
  • the receiving module 1901 is configured to receive the first data message from the previous-hop network device of the first network device; or,
  • the first network device is a head-end network device on a forwarding path of the first data packet
  • the apparatus further includes:
  • the receiving module 1901 is configured to receive a second data message, where the second data message is associated with the first network slice;
  • the processing module 1902 is further configured to insert the first identification information into the second data packet to obtain the first identification information according to the corresponding relationship between the identification of the first network slice and the first identification information. Data message.
  • the target interface is a physical interface
  • the interface resource object is a physical sub-interface, a logical sub-interface, or a packet queue
  • the target interface is a binding interface
  • the interface resource object is a physical interface
  • the target interface is a bound interface
  • the bound interface is used to establish a neighbor relationship between the first network device and the second network device.
  • the packet header of the first data packet includes the first identification information.
  • the header of the first data packet includes an extended label length content TLV, and the extended TLV includes the first identification information.
  • the first identification information is included in the header of the first data message as an entropy tag.
  • the interface resource object corresponding to the first identification information is used by the first network slice.
  • the processing module 1902 is configured to obtain a first data message, the first data message carrying routing information and first identification information; the first network device determines a target interface according to the routing information, and the target interface is all An interface used to connect to a second network device on the first network device, where the second network device is the next hop network device of the first network device; the target interface is determined according to the first identification information At least one interface resource object on the above;
  • the sending module 1903 is configured to forward the first data packet to the second network device through the at least one interface resource object.
  • the routing information is a destination address.
  • the processing module 1902 is specifically configured to obtain the destination address from the first data message, determine the target interface according to the destination address, and then determine at least one interface resource object on the target interface according to the first identification information in the first data message .
  • the header of the first data message includes the destination address and the first identification information.
  • the header of the first data message includes an extended label length content TLV, and the extended TLV includes the destination address and the first identification information.
  • the first identification information is included in the header of the first data message as an entropy tag.
  • the header of the first data packet includes a destination address
  • the destination address includes the routing information and the first identification information.
  • the processing module 1902 is specifically configured to obtain the destination address from the first data message, determine the target interface based on the destination address, then obtain the first identification information from the destination address, and determine at least the destination address on the target interface based on the first identification information.
  • An interface resource object is specifically configured to obtain the destination address from the first data message, determine the target interface based on the destination address, then obtain the first identification information from the destination address, and determine at least the destination address on the target interface based on the first identification information.
  • the routing information occupies high bits of the destination address, and the first identification information occupies low bits of the destination address; or, the routing information occupies the destination address The first identification information occupies the high bits of the destination address.
  • the message header of the first data message includes the destination address and a communication classification field
  • the communication classification field includes the first identification information.
  • the processing module 1902 is specifically configured to obtain the destination address from the first data message, determine the target interface according to the destination address, and then obtain the first identification information from the communication classification field of the first data message, and determine according to the first identification information At least one interface resource object on the target interface.
  • the header of the first data packet includes the destination address and a flow label
  • the flow label includes the first identification information.
  • the processing module 1902 is specifically configured to obtain the destination address from the first data message, determine the target interface according to the destination address, and then obtain the first identification information from the flow label field of the first data message, and determine according to the first identification information At least one interface resource object on the target interface.
  • the embodiment of the present application also provides a structure of a network device.
  • the network device 2000 may include a communication interface 2010 and a processor 2020.
  • the network device 200 may be the first network device in any of the above-mentioned embodiments, such as the network device in the embodiment shown in FIG. 6, FIG. 10-12, FIG. 16, and FIG. 22-FIG.
  • the network device 2000 may further include a memory 2030.
  • the storage 2030 may be provided inside the network device, or may be provided outside the network device.
  • the processing module 1902 shown in FIG. 24 may be implemented by the processor 2020.
  • the receiving module 1901 and the sending module 1903 may be implemented by the communication interface 2010.
  • the embodiment of the present application does not limit the specific connection medium between the foregoing communication interface, processor, and memory.
  • the memory 2030, the processor 2020, and the communication interface 2010 are connected by a bus.
  • the bus is represented by a thick line in FIG. 25.
  • the connection mode between other components is only for schematic illustration. It is not limited.
  • the bus can be divided into an address bus, a data bus, a control bus, and so on. For ease of presentation, only one thick line is used in FIG. 25, but it does not mean that there is only one bus or one type of bus.
  • the processor 2020 transmits and receives packets or messages through the communication interface 2010, and is used to implement any method executed by the network device in any of the foregoing embodiments.
  • each step of the processing flow can be implemented by the method executed by the network device (such as the first network device) in the foregoing method embodiments through the integrated logic circuit of the hardware in the processor 2020 or the instructions in the form of software.
  • the program code executed by the processor 2020 for implementing the foregoing method may be stored in the memory 2030.
  • the memory 2030 and the processor 2020 are coupled.
  • the processor 2020 is configured to obtain a first data packet that carries routing information and first identification information, and then determines a target interface according to the routing information, and the target The interface is an interface that exists on the first network device for connecting to a second network device, and the second network device is a next-hop network device of the first network device; and is determined according to the first identification information At least one interface resource object on the target interface; and then forward the first data message to the second network device through the at least one interface resource object.
  • the network device 2100 can have a main control board and an interface board.
  • the main control board includes a processor and a memory
  • the interface board includes a processor, a memory and an interface card.
  • the processor of the interface board is used to call the program instructions in the memory of the interface board to perform message reception and transmission through the interface card.
  • the processor of the main control board is used to call the program instructions in the memory of the main control board to execute the corresponding processing functions of the message.
  • an embodiment of the present application also provides a device.
  • the device 2200 is applied to a controller.
  • the apparatus 2200 may include a processing module 2201 and a sending module 2202.
  • the device 2200 may specifically be a processor in a controller, or a chip or a chip system, or a functional module.
  • the processing module 2201 is used to control and manage the actions of the device 2200, and the processing module 2201 is used to create network slices, generate network slice information, and so on.
  • the sending module 2202 is used to send network slice information.
  • the processing module 2201 is configured to, when creating the first network slice, create a mapping relationship between the identifier of the first network slice and the first identification information, and at least one interface resource object on the target interface on the first network device In the mapping relationship with the first identification information, the first network slice can use the at least one interface resource object.
  • the specific method for creating the mapping relationship between the identifier of the first network slice and the first identification information, and the mapping relationship between at least one interface resource object on the target interface on the first network device and the first identification information can be found in the above method The relevant instructions in the description of the process of creating a network slice are not repeated here.
  • the sending module 2202 is configured to send the mapping relationship between the identifier of the first network slice and the first identification information, and the mapping relationship between the at least one interface resource object and the first identification information to the first network device.
  • the target interface is a physical interface
  • the first interface resource object is a physical subinterface, a logical subinterface, or a message queue; or, the target interface is a binding interface, and the interface resource object is a physical interface.
  • the controller 2300 may include a communication interface 2310 and a processor 2320.
  • the controller 2300 may be the controller in the foregoing method embodiment for executing The actions of the controller in the above method embodiment.
  • the controller 2300 may further include a memory 2330.
  • the memory 2330 may be arranged inside the controller, or may be arranged outside the controller.
  • the processing module 2201 shown in FIG. 27 may be implemented by the processor 2320.
  • the sending module 2202 may be implemented by the communication interface 2310.
  • the processors involved in the embodiments of the present application may be general-purpose processors, digital signal processors, application specific integrated circuits, field programmable gate arrays or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, and may implement or Perform the methods, steps, and logical block diagrams disclosed in the embodiments of the present application.
  • the general-purpose processor may be a microprocessor or any conventional processor or the like.
  • the steps of the method disclosed in the embodiments of the present application may be directly embodied as being executed and completed by a hardware processor, or executed and completed by a combination of hardware and software modules in the processor.
  • the coupling in the embodiments of the present application is an indirect coupling or communication connection between devices, modules, or modules, and may be in electrical, mechanical, or other forms, and is used for information exchange between devices, modules, or modules.
  • the processor may cooperate with the memory.
  • the memory can be a non-volatile memory, such as a hard disk drive (HDD) or a solid-state drive (SSD), etc., and can also be a volatile memory, such as random-access memory (random- access memory, RAM).
  • the memory is any other medium that can be used to carry or store desired program codes in the form of instructions or data structures and that can be accessed by a computer, but is not limited to this.
  • the embodiments of the present application also provide a computer storage medium, the storage medium stores a software program, and the software program can implement any one or more of the above when read and executed by one or more processors.
  • the computer storage medium may include: U disk, mobile hard disk, read-only memory, random access memory, magnetic disk or optical disk and other media that can store program codes.
  • this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Environmental & Geological Engineering (AREA)

Abstract

本申请公开了一种数据传输的控制方法及装置,用以解决资源浪费的问题。本申请通过增加一个或者多个标识信息,用于确定网络设备的接口上转发数据报文的接口资源对象。增加的一个或者多个标识信息中包括一个全局的标识信息,全局的标识信息可以对应于网络切片,不同的网络切片的全局的标识信息取值不同。全局的网络标识对应于一个或者多个接口资源对象,一个接口资源对象可以由一个网络切片单独享有,还可以一个接口资源对象由多个网络切片共同享有。

Description

一种数据传输的控制方法及装置
本申请要求在2019年9月11日提交中国专利局、申请号为201910860821.5、发明名称为“一种数据传输的控制方法及装置”的中国专利申请的优先权,以及要求在2019年11月22日提交中华人民共和国知识产权局、申请号为201911159775.2、申请名称为“一种数据传输的控制方法及装置”的中国专利申请的优先权,这两篇中国专利申请的全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种数据传输的控制方法及装置。
背景技术
目前业务流转发时,一般网络设备根据数据报文中的目的地址来查找下一跳网络设备,进而将数据报文转发给下一跳网络设备。而网络设备上可能存在多个用于与下一跳网络设备通信的接口,在这种情况下,一般是网络设备随机或者根据接口的活跃情况选择一个接口将数据报文转发给下一跳网络设备,针对不同的业务流无法实现转发资源的隔离,有些接口可能一直未被选择而导致接口资源的浪费。
发明内容
本申请实施例提供一种数据传输的控制方法及装置,用以解决接口资源浪费的问题。
第一方面,本申请实施例提供一种数据传输的控制方法。在该方法中,第一网络设备获取携带目的地址以及第一标识信息的第一数据报文。然后第一网络设备根据目的地址确定目标接口。该目标接口为第一网络设备上存在的用于连接第二网络设备的接口,该第二网络设备为第一网络设备的下一跳网络设备。进一步地,第一网络设备根据第一标识信息确定目标接口上的至少一个接口资源对象,并通过该至少一个接口资源对象将第一数据报文转发给第二网络设备。
在该实施例中,该第一标识信息可以称为自定义全局策略标识(Self-definition global policy identification,缩写为:SDGP ID),该SDGP ID具有全局意义,用于选择转发资源(接口资源对象)。可以理解的是,该全局的标识信息还可以命名为其它的名字。该第一标识信息取不同的值,可以对应于不同的网络切片。
上述方案中,在确定转发路径后,即确定目标接口,在转发面上通过第一标识信息来指示从目标接口上的哪个或者哪几个接口资源对象转发。进一步的,两个网络设备间路径实际上仅存在一条,但在转发面,针对不同的业务流实际上是对应于不同的传输路径。实现了拓扑算路结果的复用,减少接口资源浪费。该目标接口可以为绑定接口,接口资源对象为物理接口,在该情况下,并非随机选择一个子接口来将数据报文转发,而是通过第一标识信息来标识数据报文从哪个接口或者哪几个接口转发,也就是在两个网络设备之间,基于各个接口规划数据报文的多条传输路径,从而提高接口资源利用率。
该目标接口可以为物理接口,接口资源对象可以为物理子接口。另外,目标接口可以是物理接口,而接口资源对象可以为逻辑子接口或报文对象,在该情况下,网络设备之间仅存在一个物理接口时,为了提高接口资源利用率,可以针对网络设备在物理接口上配置多个逻辑子接口或者报文队列,从而实现两个网络设备之间存在多条传输路径,而在控制面计算转发路径时,仅基于物理接口来确定即可,在转发面,不同的业务流实际上是对应于不同的传输路径。实现了拓扑算路结果的复用,减少接口资源浪费。
在一种可能的设计中,第一网络设备根据目的地址确定目标接口时,可以通过如下方式实现:第一网络设备根据路由转发表中包括的目的地址与目标接口标识的对应关系确定目的地址对应的目标接口标识,该目标接口标识用于标识目标接口。
在一种可能的设计中,第一网络设备根据第一标识信息确定目标接口上的至少一个接口资源对象时,可以通过如下方式实现:第一网络设备根据第一标识信息与目标接口上的第一接口资源对象存在一一映射关系,确定第一标识信息所对应的第一接口资源对象。上述设计中,第一标识信息与第一接口资源对象是一一映射的,针对不同的业务流通过不同的接口资源对象转发,也就是针对不同的业务流通过两个网络设备之间的一条传输路径来传输到下一跳网络设备,实现不同的业务流之间的传输路径隔离。
在应用到网络切片的场景下时,不同的接口资源对象可以供不同的网络切片使用。两个网络设备之间的目标接口对应于多个接口资源对象,不同的接口资源对象可以供不同的网络切片使用,通过第一标识信息来区分各个接口资源对象,即区分不同的网络切片。采用Flex-Algo ID来算出不同的路径后,在转发面上通过第一标识信息来实现不同网络切片间数据面转发资源的隔离,进一步的,两个网络设备间路径实际上仅存在一条,但在转发面,针对不同的数据实际上是对应于不同的传输路径。实现了拓扑算路结果的复用,减少资源浪费。
在一种可能的设计中,第一网络设备存储有第一映射转发表;第一映射转发表中包括目标接口标识、第一标识信息以及第一接口资源对象标识的对应关系;进一步的,第一网络设备根据映射关系,确定第一标识信息所对应的第一接口资源对象时,可以通过如下方式实现:第一网络设备根据第一映射转发表确定目标接口标识所标识的目标接口上第一标识信息对应的第一接口资源对象标识,该第一接口资源对象标识用于标识第一接口资源对象。
在一种可能的设计中,第一接口资源对象转发业务流时采用第一每跳行为PHB;第一网络设备通过至少一个接口资源对象将第一数据报文转发给第二网络设备,包括:第一网络设备根据映射关系,确定第一标识信息所对应的第一接口资源对象后,使用第一PHB并通过第一接口资源对象将第一数据报文转发给第二网络设备。
在一种可能的设计中,第一标识信息与N个接口资源对象存在映射关系,N为大于1的整数;第一网络设备根据第一标识信息确定目标接口上的至少一个接口资源对象,包括:第一网络设备从第一标识信息所映射的N个接口资源对象中确定用于转发第一数据报文所属业务流的M个接口资源对象,M为小于或者等于N的正整数。
上述设计中,从第一标识信息映射的多个接口资源对象中确定用于转发该第一数据报文所属业务流的M个接口资源对象,比如可以根据该业务流的流量与N个接口资源对象分别对应的带宽,从第一标识信息映射的多个接口资源对象中确定用于转发该第一数据报文 所属业务流的M个接口资源对象,保证业务流的转发的服务质量,并且提高业务流转发的灵活性。
示例性地,上述设计应用于网络切片的场景上时,第一标识信息取不同的值对应于不同的网络切片。不同的网络切片可以分别映射第一网络设备与第二网络设备存在的多个接口资源对象中的一个接口资源对象或者多个接口资源对象,同一个接口资源对象可以由两个或者多个网络切片共享,提高资源利用率。
在一种可能的设计中,第一网络设备在执行转发数据报文之前,接收控制器发送的所述网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系。至少一个接口资源对象能够被其映射的网络切片标识所标识的网络切片使用。
在一种可能的设计中,N个接口资源对象分别配有转发业务流所采用的PHB;第一网络设备通过至少一个接口资源对象将第一数据报文转发给第二网络设备,包括:第一网络设备在确定用于转发第一数据报文所属业务流的M个接口资源对象后,采用M个接口资源对象分别配置的PHB,通过M个接口资源对象转发第一数据报文所属的业务流。针对每个第一标识信息取值下的各个接口资源对象分别配置PHB,同一个接口资源对象可以由两个或者多个业务流共享,同一个接口资源对象对于不同的业务流可以采用不同的PHB,进而提高资源利用率。
在一种可能的设计中,以第一标识信息对应于两个接口资源对象为例,即N为2,第一标识信息对应于主接口资源对象和辅接口资源对象;第一网络设备从第一标识信息所映射的N个接口资源对象中确定用于转发第一数据报文所属业务流的M个接口资源对象,可以通过如下方式实现:第一网络设备确定主接口资源对象的带宽满足第一数据报文所属的业务流的流量的要求时,确定主接口资源对象用于转发第一数据报文所属的业务流;或者,
第一网络设备确定主接口资源对象的带宽不满足第一数据报文所属的业务流的流量的要求时,确定主接口资源对象和辅接口资源对象用于转发第一数据报文所属的业务流。
在一种可能的设计中,主接口资源对象转发业务流时采用第二PHB,辅接口资源对象转发业务流时采用第三PHB;第一网络设备通过至少一个接口资源对象将第一数据报文转发给第二网络设备,包括:第一网络设备在确定主接口资源对象用于转发第一数据报文所属的业务流时,采用第二PHB,通过主接口资源对象将第一数据报文转发给第二网络设备,或者,第一网络设备在确定主接口资源对象和辅接口资源对象用于转发第一数据报文所属的业务流时,采用第二PHB,通过辅接口资源对象将第一数据报文转发给第二网络设备,或者采用第三PHB,通过辅接口资源对象将第一数据报文转发给第二网络设备。
在一种可能的设计中,所述第二PHB为加速转发EF、类选择码CS、确保转发AF、尽力而为BE中的任一项;或者,所述第三PHB为EF、CS、AF、BE中的任一项。
例如,第一网络设备在确定主接口资源对象和辅接口资源对象用于转发第一数据报文所属的业务流时,第二PHB为EF,第三PHB为AF;或者,第二PHB为EF,第三PHB为BE。
上述设计中,针对某一业务流的流量高于接口资源对象时,针对大部分流量采用加速转发,针对剩余的部分流量降低服务等级后,可以与其它业务流共享的接口资源对象转发,从而提高资源利用率。
在一种可能的设计中,第一网络设备获得第一数据报文,可以通过如下方式来实现,一种方式是第一网络设备接收来自第一网络设备的上一跳网络设备的第一数据报文;另一种方式是第一网络设备接收来自终端设备的第一数据报文。在该设计下,第一网络设备可以是第一数据报文的转发路径上的头端网络设备,也可以是第一数据报文的转发路径上的中间网络设备。
在一种可能的设计中,第一网络设备为第一数据报文的转发路径上的头端网络设备时,第一网络设备获得第一数据报文时,可以通过如下方式来实现:第一网络设备接收第二数据报文,该第二数据报文关联第一网络切片。然后第一网络设备根据第一网络切片的标识与第一标识信息的对应关系,将第一标识信息***第二数据报文中,从而得到了第一数据报文。
在一种可能的设计中,目标接口为绑定接口,绑定接口用于第一网络设备与第二网络设备之间建立邻居关系。
在一种可能的设计中,第一数据报文的报文头包括第一标识信息。比如,第一数据报文的报文头包括扩展标签长度内容TLV,扩展TLV中包括第一标识信息。再比如,第一标识信息作为熵标签包含在第一数据报文的报文头中。
在一种可能的设计中,所述第一数据报文的报文头包括所述目的地址,所述第一标识信息占用所述目的地址中的K个比特位,K为正整数。比如,所述K个比特位为所述目的地址中的连续K个低比特位,或者,所述K个比特位为所述目的地址中的连续K个高比特位。
在一种可能的设计中,所述第一数据报文的报文头包括通信分类字段,所述通信分类字段包括所述第一标识信息。
在一种可能的设计中,所述第一数据报文的报文头包括流标签,所述流标签包括所述第一标识信息。
第二方面,本申请实施例还提供一种数据报文传输的控制方法,包括:控制器在创建第一网络切片时,创建第一网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与第一标识信息的映射关系,该第一网络切片能够使用至少一个接口资源对象的权限。然后,控制器将第一网络切片的标识与第一标识信息的映射关系,以及至少一个接口资源对象与第一标识信息的映射关系,发送给第一网络设备。
一种示例中,第一标识信息的取值与接口资源对象一一对应。即不同的网络切片单独享有一个接口资源对象。另一种示例中,一个第一标识信息的取值可以对应于多个接口资源对象。不同的网络切片对应于不同的第一标识信息的取值,不同的网络切片中共享某个接口资源对象。
在一种可能的设计中,控制器为所述第一标识信息映射的至少一个接口资源对象配置PHB。示例性地,控制器为不同的第一标识信息取值映射的同一个接口资源对象配置不同的PHB。
在一种可能的设计中,目标接口为物理接口,第一接口资源对象为物理子接口、逻辑子接口或者报文队列;或者,目标接口为绑定接口,接口资源对象为物理接口。
第三方面,本申请实施例提供一种数据报文传输的控制方法,包括:第一网络设备获 得第一数据报文,所述第一数据报文携带路由信息以及第一标识信息;所述第一网络设备根据所述路由信息确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;所述第一网络设备根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
在一种可能的设计中,所述路由信息为目的地址。
在一种可能的设计中,所述第一数据报文的报文头包括所述目的地址和所述第一标识信息。
在一种可能的设计中,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述目的地址和所述第一标识信息。
在一种可能的设计中,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
在一种可能的设计中,所述第一数据报文的报文头包括目的地址,所述目的地址包括所述路由信息和所述第一标识信息。
在一种可能的设计中,所述路由信息占用所述目的地址的高比特位,所述第一标识信息占用所述目的地址的低比特位;或者,所述路由信息占用所述目的地址的低比特位,所述第一标识信息占用所述目的地址的高比特位。
在一种可能的设计中,所述第一数据报文的报文头包括所述目的地址和通信分类字段,所述通信分类字段包括所述第一标识信息。
在一种可能的设计中,所述第一数据报文的报文头包括所述目的地址和流标签,所述流标签包括所述第一标识信息。
第四方面,本申请实施例提供了一种数据传输的控制装置,所述装置应用于第一方面或者第三方面所述的第一网络设备,即该装置可以是第一网络设备,也可以是能够应用于第一网络设备的芯片。该装置具有实现上述第一方面的各实施例的功能,或者具有实现第三方面的各实施例的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第五方面,基于与第二方面提供的方法实施例同样的发明构思,本申请实施例提供了一种传数据传输的控制装置,所述装置应用于第二方面所述的控制器,即该装置可以是控制器,也可以是能够应用于控制器的芯片。该装置具有实现上述第二方面的各实施例的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第六方面,本申请实施例提供一种网络设备,包括处理器和通信接口,通信接口用于接收通信消息,处理器与通信接口进行通信,通过通信接口接收的通信消息,执行上述第一方面或第一方面的任一实现方法中的数据传输的控制方法,或者执行上述第三方面的任一实现方法中的数据传输的控制方法。可选地,网络设备中还包括存储器,该存储器用于存储指令,当该网络设备运行时,该处理器执行该存储器存储的该指令,以使该网络设备执行上述第一方面或第一方面的任一实现方法中的数据传输的控制方法,或者以使该网络设备执行上述第三方面或第三方面的任一实现方法中的数据传输的控制方法。需要说明的是,该存储器可以设置于网络设备之外。另外该存储器位于网络设备之内时,该存储器可 以集成于处理器中,也可以是独立于处理器之外。网络设备还可以包括总线。其中,处理器通过总线耦接通信接口。其中,存储器可以包括可读存储器以及随机存取存储器。
第七方面,本申请实施例提供一种控制器,包括处理器和通信接口,通信接口用于接收通信消息,处理器与通信接口进行通信,通过通信接口接收的通信消息,执行上述第二方面或第二方面的任一实现方法中的数据传输的控制方法。可选地,网络设备中还包括存储器,该存储器用于存储指令,当该网络设备运行时,该处理器执行该存储器存储的该指令,以使该装置执行上述第二方面或第二方面的任一实现方法中的数据传输的控制方法。需要说明的是,该存储器可以设置于网络设备之外。另外该存储器位于网络设备之内时,该存储器可以集成于处理器中,也可以是独立于处理器之外。装置还可以包括总线。其中,处理器通过总线耦接通信接口。其中,存储器可以包括可读存储器以及随机存取存储器。
第八方面,本申请实施例还提供了一种***,包括第四方面所述的装置和第五方面所述的装置,或者包括第六方面所述的网络设备和第七方面所述的控制器。在一个可能的设计中,该***还可以包括本申请实施例提供的方案中与该两种网络设备进行交互的其他网络设备,例如传输路径上的其它网络设备,第二网络设备。
第九方面,本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有程序或指令,当其在计算机上运行时,使得上述各方面的任意的数据传输的控制方法被执行。
第十方面,本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面中的任意的数据传输的控制方法。
另外,第三方面至第九方面中任一种设计方式所带来的技术效果可参见第一方面至第二方面中不同实现方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例中网络***架构示意图;
图2为本申请实施例中区分服务架构示意图;
图3为本申请实施例中IPv4报文结构示意图;
图4为本申请实施例中IPv6报文结构示意图;
图5为本申请实施例中ISIS FAD Sub-TLV的结构示意图;
图6为本申请实施例中创建网络切片的流程示意图;
图7为本申请实施例中网络切片TLV格式示意图;
图8为本申请实施例中Flex-Algorithm sub-TLV的结构示意图;
图9为本申请实施例中SDGP-ID sub-TLV的结构示意图;
图10为本申请实施例中网络切片对应的转发路径示意图;
图11为本申请实施例中SDGP-ID与子接口之间映射关系示意图;
图12为本申请实施例中一种数据报文转发流程示意图;
图13为本申请实施例中承载SDGP-ID的IPv6报文结构示意图;
图14为本申请实施例中承载SDGP-ID的IPv4报文结构示意图;
图15为本申请实施例中MPLS报文结构示意图;
图16为本申请实施例中基于SDGP-ID的报文转发过程示意图;
图17A为本申请实施例中IPv6报文中目的地址结构示意图;
图17B为本申请实施例中一种IPv6报文结构示意图;
图18为本申请实施例中SRv6报文中SID结构示意图;
图19为本申请实施例中SRv6报文结构示意图;
图20为本申请实施例中另一种IPv6报文结构示意图;
图21为本申请实施例中又一种IPv6报文结构示意图;
图22为本申请实施例中资源ID与子接口之间映射关系示意图;
图23为本申请实施例中另一种数据报文转发流程示意图;
图24为本申请实施例中装置1900结构示意图;
图25为本申请实施例中装置2000结构示意图;
图26为本申请实施例中装置2100结构示意图;
图27为本申请实施例中装置2200结构示意图;
图28为本申请实施例中装置2300结构示意图。
具体实施方式
本申请实施例可以应用于包括控制器和网络设备的网络***中,参见图1所示。网络设备也可以称为节点,是在网络***中提供路由转发功能的设备,例如,可以是路由器、交换机、转发器或者标签交换路由器(label switching router,LSR)等,不作限定。图1中以网络***中包括8个网络设备为例,分别为A,B,C,D,E,F,G,H。应理解的是,本申请实施例中不限定网络***中包括的网络设备的数量。
在对本申请实施例描述之前,先对本申请实施例中涉及的技术概念进行说明。
1)网络切片。
第五代(5 th generation,5G)移动通信技术***提出网络切片(network slice)概念,一个网络切片满足某一类或一个用例的连接通信服务需求,整个5G***由满足不同连接能力的大量网络切片组成。目前,第三代合作伙伴计划(3GPP)协议定义的网络切片有三种类型,分别是增强移动宽带(enhanced mobile broadband,eMBB)、超高可靠超低时延连接(ultra-reliable low latency communications,uRLLC)和海量机器类连接(massive machine type connection,mMTC)。每种网络切片类型针对特定的业务类型。例如:eMBB切片类型针对高数据速率、移动性高的业务;uRLLC切片可以用于处理高可靠性并且低延时的通信场景;mMTC切片可以服务于数量多、小数据量、可容忍时延和不频繁接入的业务(如传感器、穿戴设备业务)。随着用户和业务对网络服务的订制化要求不断提高,不同网络服务的差异化进一步增大。在5G通信网络研究的深入和商用部署大规模展开的背景下,网络切片的类型在可以预见的未来会大幅增长。
2)服务等级协议(service level agreement,SLA)指用户(比如个人、企业、有业务往来的相邻互联网服务提供商(Internet Service Provider,ISP)等)和服务提供商签署的关于业务流在网络中传递时所应当获得的待遇。SLA包括很多方面,例如付费协议。SLA中关于技术说明部分称为服务等级规范(Service Level Specification,SLS)。SLS的重点在于流量控制说明(Traffic Conditioning Specification,TCS),TCS描述了每个服务层次的详细性能参数,如平均速率、峰值速率、承诺突发尺寸、最大突发尺寸等。TCS是差分服务(DiffServ)网络进行流控的主要依据。
3)DiffServ是服务质量(Quality of Service,QoS)提供的一种服务模型。当网络出现拥塞时,DiffServ模型根据业务的不同服务等级约定,有差别地进行流量控制和转发来解决拥塞问题。充分考虑了IP网络本身灵活性、可扩展性强的特点,将复杂的服务质量保证通过报文自身携带的信息转换为单跳行为,不需要额外的信令交互。
DiffServ的基本思想是在网络边缘将进入的流分成各种不同的类型,将同种类型的流合并起来进行统一管理,保证相同的传输速率、延迟、抖动等服务质量参数,并对每一种类型在网络中分别进行处理。业务分类和汇聚工作由网络中的边缘节点进行,首先数据包被标识为一定的服务类型,并记录在包头字段里,然后将包按一定的流量控制策略送入网络。网络中的内部节点通过检查包头来确定对包进行何种处理。参见图2所示示例一种DiffServ网络模型。图2中,用于实现DiffServ功能的网络节点称为差分服务(Differentiated Service,DS)节点,DS节点根据功能可以分为DS边界节点和DS内部节点。DS边界节点:负责连接另一个DS域或者连接一个没有DS功能的域的节点。DS边界节点负责将进入此DS域的业务流进行分类和可能的流量调整。DS内部节点:用于在同一个DS域中连接DS边界节点和其他内部节点。DS内部节点仅需基于差分服务代码点(Differentiated Services Code Point,DSCP)值进行简单的流分类以及对相应的流实施流量控制。DS域(DS Domain)是指一组采用相同的服务提供策略和实现相同每跳行为(Per Hop Behaviors,PHB)的相连DS节点组成。一个DS域由相同管理部门的一个或多个网络组成,一个DS域可以是一个ISP,也可以是一个企业的内部网。
4)PHB,也可以称为逐跳行为。不同的PHB可以通过IPv4报文和IPv6报文中的不同DSCP取值来体现。DSCP取值位于IPv4报文头中的服务类型(type of service,ToS)字段,位于IPv6报文头中的流量类别(traffic class,TC)字段。
参见图3所示,示例一种IPv4报文格式,IPv4报文中的Version(版本)表示数据报文的IP版本号。头部长度(Heather length)表示数据报文的报文头的长度。Total Length(总长度)表示数据报文的总长度,可以用于计算数据报文中有效载荷的长度。Identification(标识符)字段长度为16位,通常与标记字段和分片偏移字段一起用于数据包的分段。如果数据包原始长度超过数据包所要经过的数据链路的最大传输单元(maximum transmission unit,MTU),那么必须将数据包分段为更小的数据包。例如,一个大小为5000字节的数据包在穿过网络时,如果遇到一条MTU为1500字节的数据链路,即数据帧最多容纳大小为1500字节的数据包。节点需要在数据成帧之前将数据包分段成多个数据包,其中每个数据包长度不得超过1500字节;然后路由器在每片数据包的标识字段上打上相同的标记,以便接收设备可以识别出属于一个数据包的分段。标记(IP Flags)字段长度为3位,第1位没有使用。第二位不分段位(DF),置1之后路由器不能对其分段处理,如果超过MTU值则路由器不能对其转发将其丢弃,并向源点发送错误消息。分片偏移(Fragment Offset)字段长度为13位,用于指明分段起始点相对于报头起始点的偏移量。由于分段到达时可能错序,所以分段偏移字段可以使接收者按照正确的顺序重组数据包。生存时间(Time To Live)字段长度为8位,用于指示传输的跳数。协议(Protocol)字段长度为8位,指示数据报文的协议号。头部校验和(Header Checksum)是针对IP报文头的纠错字段。源地址(Source Address)和目的地址(Destination Address)分别表示发送者数据报文源节点和目的节点的IP地址。可选字段(Options),数据部分为数据报文承载的数据。
参见图4所示,示例一种IPv6报文格式。IPv6报文中的Version(版本)表示数据报文的IP版本号。TC用于区分服务,用于对数据报文的业务类型进行标识。流标签(flow label)用于标记属于同一业务流的数据报文。流标签、源地址和目的地址的共同作用唯一标识一个业务流。同一个业务流中的所有数据报文具有相同的流标签,以便于对有同样QoS要求的流进行处理。净荷长度(payload)包括数据报文净荷的字节长度。下一报头(next Header)字段指出IPv6基本报头之后所跟的下一个扩展报头字段中的协议类型。跳极限(hop limit),一般长度为8位,每当一个节点对数据报文进行一次转发,该字段的值减1,如果该字段达到0,则该数据报文被丢弃。源地址和目的地址分别表示发送者数据报文源节点和目的节点的IP地址。
PHB描述了DS节点对具有相同DSCP的分组采用的外部可见的转发行为。可以用优先级来定义PHB,也可以用一些可见的服务特征如分组延迟、抖动或丢包率来定义。PHB只定义了一些外部可见的转发行为,没有指定特定的实现方式。目前标准协议定义了四种PHB:类选择码(Class Selector,CS),加速转发(Expedited Forwarding,EF),确保转发(Assured Forwarding,AF)和尽力而为(Best-Effort,BE)。其中,BE是缺省的PHB。
CS所代表的服务等级与在现有网络中使用的IP优先级相同。EF被定义为这样的一种转发处理:从任何DS节点发出的信息流速率在任何情况下必须获得等于或大于设定的速率。EF PHB在DS域内不能被重新标记,仅允许在边界节点重新标记。AF满足如下需求:用户在与ISP订购带宽服务时,允许业务量超出所订购的规格。对不超出所订购规格的流量要求确保转发的质量;对超出规格的流量将降低服务待遇继续转发,而不只是简单地被丢弃。BE对应于传统的IP分组投递服务,只关注可达性,其他方面不做任何要求。
5)灵活算法(Flex-Algorithm,Flex-Algo)。
Flex-Algorithm的定义在文稿【draft-ietf-lsr-flex-algo】中定义。在目前可以采用内部网关协议(interior gateway protocol,IGP)计算最佳路径(可以简称为算路)。IGP是在一个自治网络内网关(主机和路由器)间交换路由信息的协议。IGP协议基于分配给链路的IGP度量(metric)计算网络上的最佳路径。由于IGP度量未反映的流量要求,因此基于IGP度量计算最佳路径通常由流量工程路径替换。许多网络部署各种流量工程,比如资源预留协议流量工程(resource reservation protocol-traffic engineer,RSVP-TE)或段路由流量工程(segment routing-traffic engineering,SR-TE),在该情况下,网络强制基于RSVP-TE或SR-TE使用最短IGP路径的度量或约束计算最佳路径。Flex-Algorithm提出通过定义一组约束的组合在IGP域内泛洪,使IGP域内节点基于相同的约束计算基于约束的路径,从而实现分布式TE。每个Flexible-Algorithm中定义的约束的组合可以用Flexible-Algorithm ID来表示。Flexible-Algorithm ID是128-255范围内的一个数字标识符,通过配置与灵活算法定义(Flexible-Algorithm Definition,FAD)相关联。
FAD是由(a)计算类型(Calc-Type),(b)度量类型(Metric-Type),(c)链路约束,组成的集合。
Metric-Type标识Flex-Algorithm的计算过程中所采用的度量类型。其中:Metric-Type为0时,表示IGP metric,Metric-Type为1时表示最小单项链路延迟(min unidirectional link delay),Metric-Type为2表示TE metric。
Calc-Type为0表示最短路径优先(Strict Shortest Path First,SPF),Calc-Type为1表示 约束(strict)SPF。
链路约束通过include/exclude admin-group(链路颜色:color)描述。链路颜色也可以称为亲和属性,是一个表示链路属性的32位向量,比如用来表示链路带宽、性能或管理策略等。同一种颜色的链路对应相同的链路属性,比如链路着色为绿色,则各个着色为绿色的不同链路的链路属性相同。
示例性地,ISIS FAD Sub-TLV用来承载Flex-Algorithm的定义的内容。图5所示为ISIS FAD Sub-TLV的结构示意图。图5中,Type字段标识该TLV的类型,Length字段表示TLV的字节长度,Flex-Algorithm字段标识Flexible-Algorithm ID值,Metric-Type字段标识该Flexible-Algorithm的计算过程中采用的Metric类型。Calc-Type字段标识为指定的IGP算法定义的计算模型,并且度量和约束不得被继承。优先级(Priority)取值范围为0-255,标识该TLV发布的优先级。子TLV(Sub-TLVs)字段为可选部分。比如可以通过在Sub-TLVs添加Exclude Admin Group Sub-TLV或Include-Any Admin Group Sub-TLV或Include-All Admin Group Sub-TLV,给不同链路配置不同的链路属性(color)。Exclude Admin Group Sub-TLV用于发布在Flex-Algorithm算路时被排除在外的规则。Include-Any Admin Group Sub-TLV用于发布在Flex-Algorithm算路时所需包含的任一规则,Include-All Admin Group Sub-TLV用于发布在Flex-Algorithm算路时所需包含的所有规则。
目前,在网络切片的场景下,可以采用Flexible-Algorithm技术来与网络切片结合,用不同的Flexible-Algorithm ID来区分不同的网络切片,也就是说为不同的网络切片定义不同的约束属性,从而实现不同的业务流在不同的网络切片中转发。控制器侧在基于每个Flexible-Algorithm ID所标识的算法约束,进行算路时,需要基于每个Flexible-Algorithm ID所标识的算法约束进行算路,计算转发路径,并生成路由表,即使不同的网络切片对应的转发设备相同时,也无法实现拓扑算路结果的复用,从而导致接口资源浪费。
非网络切片的场景下,网络设备上可能存在多个用于与下一跳网络设备通信的接口,在这种情况下,一般是网络设备随机或者根据活跃状态选择一个接口将数据报文转发给下一跳网络设备,无法实现转发资源的隔离,而有些接口可能会被闲置而导致接口资源的浪费。
基于此,本申请实施例提供一种数据传输的控制方法及装置,通过增加一个或者多个标识信息,用于确定网络设备的接口上转发数据报文的接口资源对象。其中网络设备的接口可以是物理接口,或者由多个物理接口组合的绑定接口。接口资源对象可以是物理接口、物理子接口、逻辑子接口(比如信道化子接口、或者Flex-E子接口)、或者报文队列。不同的接口资源对象可以对应于不同的接口转发资源。
如下作为一种示例,以增加一个标识信息来确定网络设备的接口上转发数据报文的接口资源对象为例。本申请实施例中增加一个全局的标识信息,全局的标识信息用于选择接口上的接口资源对象来转发数据报文。全局的标识信息可以称为第一标识信息,也可以称为自定义全局策略标识(Self-definition global policy identification,缩写为:SDGP ID),该SDGP ID具有全局意义,用于选择转发资源。全局的标识信息还可以命名为其它的名字,本申请实施例对此不作限定,本申请实施例中如下描述时以称为SDGP ID为例进行说明。由控制器创建各个不同的SDGP ID的取值与一个或者多个接口资源对象的映射关系。在同一个SDGP ID的取值对应多个接口资源对象的情况下,同一接口资源对象可以对应到多个 SDGP-ID上,当然一个接口资源对象也可以对应一个SDGP-ID。控制器创建各个不同的SDGP ID的取值与一个或者多个接口资源对象的映射关系后,发送到网络设备侧。以网络设备侧的第一网络设备为例,第一网络设备获得到业务流中第一数据报文后,根据第一数据报文携带的目的地址确定目标接口,该目标接口为第一网络设备上存在的用于连接第二网络设备的接口,第二网络设备为第一网络设备的下一跳网络设备;然后根据第一数据报文中携带的第一标识信息(SDGP-ID)确定该目标接口上的至少一个接口资源对象;进而通过至少一个接口资源对象将第一数据报文转发给述第二网络设备。
本申请实施例在将SDGP ID应用于承载网网络切片技术中时,可以定义不同的SDGP ID取值对应于不同的网络切片。不同的网络切片对应于一个或者多个接口资源对象,一个接口资源对象可以供一个网络切片使用,也可以供多个网络切片使用。以应用到软件定义网络(software defined network,SDN)场景为例,自定义全局策略标识所对应的接口资源对象可以由SDN控制器定义,并下发到网络设备侧。在数据报文转发过程中,自定义全局策略标识携带在数据报文中,数据报文中还携带目的地址,网络设备解析数据报文,通过目的地址确定网络设备上存在的且连接下一跳网络设备的接口,然后再根据SDGP-ID的选择该接口上的接口资源对象,从而实现业务流的转发。本申请实施例中的数据报文可以但不仅限于为IPv4报文头、多协议标签交换(multi-protocol label switching,MPLS)报文、IPV6报文。
后续描述时,以应用到网络切片的场景为例。
如下首先对SDGP-ID与接口资源对象存在一一映射关系为例进行说明。
如图6所示,为控制器创建网络切片过程下发SDGP-ID与接口资源对象的映射关系的流程示意图。
S601,控制器接收切片管理器发送的网络切片创建请求,网络切片创建请求中可以包括网络切片需求信息。例如,网络切片需求信息可以包括网络切片名称(Network Slicing ID)、网络切片的类型及SLA诉求等参数。切片管理器在请求创建网络切片时,可以一次请求创建一个网络切片,也可以一次请求创建多个网络切片。
S602,控制器根据网络切片需求信息创建网络切片。例如,控制器中可以包括网络切片管理模块,用于根据网络切片需求信息创建网络切片。具体的,在控制器已创建的某个网络拓扑满足所述网络切片的需求的情况下,控制器可以将网络拓扑分配给该网络切片,为该网络切片配置多拓扑(multi-topologies,MT)ID或Flex-Algorithm ID。如果控制器已创建的网络拓扑均不满足网络切片的需求的情况下,控制器可以根据网络切片需求信息创建网络拓扑,生成MT-ID或Flex-Algorithm ID。控制器还需要为网络切片配置自定义的全局策略标识(SDGP ID),以及为网络切片分配对应的接口资源对象,不同的网络切片对应不同的SDGP-ID。以接口资源对象为网络设备上的子接口为例,不同的子接口作为不同的网络切片的转发资源,不同子接口对应于不同的自定义全局策略标识(SDGP ID)。
需要说明的是,上述网络拓扑可以是采用Flex-algo技术划分或用多拓扑(MT)技术划分。采用Flex-algo技术划分的网络拓扑标识称为Flex-Algorithm ID,采用多拓扑技术划分的网络拓扑标识称为MT-ID。
后续描述时,以采用Flex-algo技术划分网络拓扑为例。
网络切片配置模型包括网络拓扑(MT-ID或Flex-Algorithm ID)和全局策略标识 (SDGP-ID)。网络切片配置模型通过控制器或用户自定义配置的方式下发给网络设备。各个网络设备可以通过发布Network-Slicing TLV的形式将网络切片配置模型在网络中泛洪,以保障网络中的所有网络设备对相同Network Slicing ID的网络切片具有相同的网络切片配置模型。Network Slicing TLV可以是顶级TLV也可以作为当前待发布的TLV的子TLV(sub-TLV),例如Network Slicing TLV可以作为Router capabilities TLV的sub-TLV。本申请实施例中对此不作限制。
例如,网络切片配置模型可以为:Network-slicing ID:1;Flex-Algorithm ID:128;SDGP-ID:100。
参见图7所示为Network-Slicing TLV格式示意图。图7中,Type表示TLV类型,Length表示TLV长度,Flags表示当前无标记位定义,预留位,Network-Slicing-ID表示网络切片标识符,Optional sub-sub-TLVs表示网络切片的TLV中包含的子TLV类型。
示例性地,Optional sub-sub-TLVs中可以包含Topo sub-TLV/Flex-Algorithm sub-TLV,及SDGP-ID sub-TLV。Topo sub-TLV/Flex-Algorithm sub-TLV用于承载Flex-Algorithm ID,SDGP-ID sub-TLV用于承载SDGP-ID。参见图8所示为Topo sub-TLV/Flex-Algorithm sub-TLV的结构示意图,图8中,Topo ID/Flex-Algorithm ID表示网络拓扑标识符。图9所示为SDGP-ID sub-TLV的结构示意图,图9中,Reserved表示预留位。
S603,控制器向目标网络设备发送创建的网络切片的信息。目标网络设备可以理解为控制器根据网络切片所对应的网络拓扑确定的网络设备。控制器确定网络切片1的所对应的网络拓扑如图1所示,网络拓扑中包括A、B、C、D、E、F,G、H。控制器可以向网络拓扑中的边缘网络设备(比如网络设备A)发送网络切片1的信息,然后可以由边缘网络设备(比如网络设备A)采用泛洪的方式,将该网络切片1的信息通知给网络拓扑中的其它网络设备(B、C、D、E、F、G、H),即该边缘网络设备为目标网络设备。控制器可以分别向网络拓扑中的与控制器建立连接的网络设备发送网络切片1的信息,比如A、B、C、D、E、F,G、H均与控制器相连,控制器可以将网络切片1的信息发送给A、B、C、D、E、F,G、H。网络切片的信息包括网络拓扑,SDGP-ID,以及SDGP ID与接口资源对象的对应关系。其中,SDGP-ID与接口资源对象之间可以是一一对应关系,或者可以是1个SDGP-ID对应两个或者两个以上的接口资源对象。
在根据网络拓扑、Flex-Algorithm ID对应的亲和属性和metric类型等计算转发路径时,可以由控制器执行算路,并将算路结果发送给头端网络设备。还可以由头端网络设备执行算路,并且将算路结果上报控制器。网络设备可以基于IGP协议分配邻接标签,并将分配的邻接标签上报给控制器,从而控制器基于邻接标签以及算路结果生成用于转发数据报文的标签栈列表。各个网络设备分配邻接标签后,泛洪到整个网络,从而网络中的各个网络设备通过IGP协议学习其它网络设备发布的邻接标签,用于在转发数据报文时,确定下一跳网络设备。
控制器或网络设备根据针对不同的网络拓扑分别计算转发路径,即针对不同的Flex-Algorithm ID计算不同的转发路径。而不同的网络切片所使用的转发路径可以相同,即不同的网络切片复用相同的网路拓扑,从而控制器/网络设备只需为相同网络拓扑的不同网络切片计算一次转发路径即可。若由控制器来计算转发路径时,控制器中还可以包括算路控制模块,由算路控制模块根据不同的网络拓扑执行算路,并将算路结果发送给网络切片 管理模块,用于将网络切片与算路得到的转发路径建立关联。网络切片配置模型定义不同的SDGP-ID,以保障转发面数据隔离。参见图10所示,图10中定义了两个Flex-Algorithm ID分别为128和129,其采用不同的metric类型作为路径属性定义。Flex-Algorithm ID:128采用IGP Metric作为算路约束,Flex-Algorithm ID:129采用时延(link-delay)Metric作为算路约束。不同的Flex-Algorithm ID所配置的网段路由不同,网段路由用于区分网络拓扑。假设两个Flex-Algorithm ID对应的亲和属性相同的情况下,即他们的网络拓扑是相同的,都是网络中所有网络设备。但由于采用算路的Metric类型是不同的,从而相同链路的不同Metric类型是不相同的,因此其算路结果也是不同的。
例如,以SRv6(Segment Routing IPv6)实现网络切片的配置为例:
Flex-Algorithm ID 128采用IGP Metric计算节点A到D的最短路径,算路结果为A->B->C-D;
Flex-Algorithm ID 128的定义参考如下所示:
Flex-Aglo id 128:
Metric:igp-metric
Calc-type:0
链路约束:Affinity(亲和属性),比如为绿色,则在采用Flex-Algorithm ID 128算路时,指示排除绿色链路或者包含绿色链路。
Flex-Algorithm ID 129采用时延Metric计算节点A到D的最短路径,算路结果为A->E->F->G->->D;
Flex-Algorithm ID 129的定义参考如下所示:
Flex-Algorithm ID 129:
Metric:link-delay-metric
Calc-type:0
链路约束:Affinity,比如为紫色,则在采用Flex-Algorithm ID 129算路时,指示排除紫色链路或者包含紫色链路。
参见图10所示,以三个网络切片为例:
网络切片1:Network Slicing ID:1;Flex-Algorithm ID:128;SDGP-ID:1。
网络切片2:Network Slicing ID:2;Flex-Algorithm ID:128;SDGP-ID:2。
网络切片3:Network Slicing ID:3;Flex-Algorithm ID:129;SDGP-ID:3。
网络切片1和网络切片2采用相同的Flex-Algorithm ID:128,因此其拓扑相同,控制面算路结果相同;但由于SDGP-ID不同,因此在转发面可以做到数据隔离。网络切片3与网络切片1和网络切片2的Flex-Algorithm ID不同,其采用时延metric值算路,因此控制面算路结果与网络切片1和网络切片2采用IGP metric算路的算路结果不同。
S604,网络设备根据控制器下发的SDGP ID与接口资源对象的对应关系,生成转发映射表。
参见图10所示,图10中箭头给出了三个网络切片对应的转发资源。由于三个不同的网络切片采用不同SDGP-ID,其所标识的接口资源对象是不相同的。控制器向网络设备下发SDGP-ID与接口资源对象的映射关系,从而网络设备生成转发映射表。以接口资源对象 为子接口为例。以网络设备A和网络设备B之间存在多个子接口为例。
网络设备A和网络设备B之间存在多个子接口,参见图11所示,以3个子接口为例,需要建立SDGP-ID与子接口的转发映射表。示例性地,多个子接口可以构成一个绑定接口,比如构成一个Trunk接口,具体地,控制器可以采用Trunk集合模型构建绑定接口,该Trunk集合模型可根据绑定接口中子接口配置的属性(比如带宽),索引到对应的绑定接口中的子接口,Trunk接口工作在三层(配置三层IP,建立IGP邻居),子接口工作在二层(不配IP),网络设备间建立IGP邻居时基于Trunk接口建立,不再基于实际的子接口建立,可以减少在邻居之间存在并行链路的情况下需要由IGP路由协议维护的邻接的数量。IGP邻居只基于Trunk接口来建立,比如图11中基于Trunk接口建立的IGP邻居关系。在网络设备A转发面,根据Trunk接口及SDGP-ID与子接口的关系,生成并维护转发映射表,如下表1所示:
表1
Out-interface(出接口) SDGP-ID 子接口
Trunk0接口(A) 1 Interface1
Trunk0接口(A) 2 Interface2
Trunk0接口(A) 3 Interface3
应理解的是,不同的网络设备之间的配置的Trunk接口的标识不同,例如,上述网络设备A和网络设备B之间的Trunk接口称为Trunk0接口,标识为A,比如网络设备A与网络设备E之间的Trunk接口可以称为Trunk1接口,标识为B。控制器在向网络设备下发网络切片的信息时,可以将Trunk接口的标识,以及Trunk接口的标识指示的Trunk接口包括的子接口一块通知给网络设备。
作为一种示例,SDGP-ID与子接口之间不限于是一一对应关系,还可以是一个SDGP-ID对应两个或者两个以上的子接口,在转发业务流时,可以采用分流方式转发,即通过SDGP-ID对应的多个子接口转发业务流。
在SDGP-ID与接口资源对象一一对应的情况下,网络设备转发业务流的流程参见图12所示。
S1201,第一网络设备获得第一数据报文,第一数据报文携带目的地址以及第一标识信息。第一数据报文为业务流中的任一数据报文。
S1202,第一网络设备根据目的地址确定目标接口,目标接口为第一网络设备上存在的用于连接第二网络设备的接口,第二网络设备为第一网络设备的下一跳网络设备。
在网络拓扑中,与第一网络设备连接的网络设备可以包括多个,第一网络设备通过不同的接口与不同的网络设备连接。第一网络设备通过目的地址能够确定该业务流转发的下一跳网络设备(即第二网络设备),即目标接口是第一网络设备上存在的接口中用于连接第二网络设备的接口。
示例性地,第一网络设备根据所述目的地址确定目标接口时,可以根据路由转发表确定所述目的地址对应的目标接口标识,目标接口标识用于标识所述目标接口,从而确定目 标接口。路由转发表包括目的地址与目标接口标识的对应关系。目标接口标识指示第一数据报文的转发路径中的下一跳网络设备。
S1203,第一网络设备根据第一标识信息确定目标接口上的第一接口资源对象。
示例性地,第一标识信息与目标接口上的第一接口资源对象存在一一映射关系,该映射关系可以存储在第一网络设备中,从而第一网络设备可以根据第一标识信息确定目标接口上的第一接口资源对象。比如目标接口上存在多个接口资源对象。以目标接口为绑定接口为例,绑定接口由多个子接口组成,接口资源对象为子接口,从而第一网络设备从绑定接口包括的多个子接口中确定第一标识信息映射的子接口,用于转发第一数据报文。
第一网络设备在存储上述第一标识信息与目标接口上的第一接口资源对象之间的一一映射关系时,可以通过表格的形式存储,例如,第一网络设备上存储有第一转发映射表,所述第一转发映射表中包括所述目标接口标识、所述第一标识信息以及所述第一接口资源对象标识的对应关系,从而第一网络设备根据所述第一转发映射表确定目标接口标识所标识的目标接口上所述第一标识信息对应的第一接口资源对象标识,所述第一接口资源对象标识用于标识所述第一接口资源对象,进而确定了第一接口资源对象。
S1204,第一网络设备通过第一接口资源对象将第一数据报文转发给第二网络设备。
上述提及的第一网络设备可以是业务流的转发路径上的头端网络设备,也可以转发路径上的中间网络设备,本申请实施例对此不作限定。
如果第一网络设备为中间网络设备,其接收到的来自上一跳网络设备的数据报文中会携带第一标识信息。如果第一网络设备为头端网络设备,接收到来自终端设备的数据报文中可以携带第一标识信息,即该第一标识信息可以由终端设备在发送数据报文时携带在数据报文中发送给第一网络设备。终端设备发送的数据报文中也可以不携带第一标识信息,在该情况下,作为头端网络设备的第一网络设备在接收到来自终端设备的第二数据报文时,该第二数据报文中未携带第一标识信息,第一网络设备在确定第二数据报文关联第一网络切片时,根据第一网络切片的标识与第一标识信息的对应关系,将第一标识信息***第二数据报文中得到所述第一数据报文。第一网络切片的标识与第一标识信息的对应关系可以在创建网络切片时,由控制器创建并下发给第一网络设备。另外,通过在数据面扩展的第一标识信息,可以用于隔离不同业务之间的互访。在转发路径入口的网络设备收到报文的时候封装该标识,从中间网络设备发送报文的时候检查该标识。提高了网络的风险能力及安全保证。例如,在产生攻击报文等情况时,通过接口报文的校验,就可以杜绝大部分攻击报文。
其中,第一标识信息可以携带在第一数据报文的报文头中。第一标识信息携带在第一数据报文的报文头中的方式可以包括多种,如下示例性地描述几种。
第一种方式中,第一标识信息和目的地址作为两个信息分别携带在第一数据报文的报文头中。
例如,第一标识信息可以携带在扩展TLV或者子TLV中。第一数据报文可以是IPv6类型报文、也可以是IPv4类型报文,还可以是多协议标签交换(multi-protocol label switching,MPLS)报文,也可以是其它类型的报文,本申请实施例对此不作限定。
一种示例中,以第一数据报文为IPv6类型报文为例,第一标识信息(即SDGP-ID)可以携带在ipv6数据报文的IPv6逐跳选项头(ipv6hop-by-hop option头)中。参见图13所示, 为携带SDGP-ID的ipv6数据报文的报文头的结构示意图,报文头的扩展头中采用新增的TLV类型,用于承载SDGP-ID。图13中,Next Header表示下一个报文头的协议类型,Header Ext Len表示扩展头的长度(不包括Next Header所占用的字节),Type标识选项类型,对应后面特定类型数据Type–Specific data字段承载SDGP-ID,Length表示SDGP-ID的数据长度。
另一种示例中,以第一数据报文为IPv4类型报文为例,参见图3所示的IPv4类型报文的结构,第一标识信息(即SDGP-ID)可以携带在IPv4报文头的可选字段(Options)中。在IPv4类型报文的Options可以采用一种自定义的TLV类型,参见图14所示,自定义的TLV中包括Type、Length以及SDGP-ID。Type用于标识option字段类型,Length表示该自定义的TLV长度,SDGP-ID用于指示用于转发该数据报文的接口资源对象。
又一种示例中,以第一数据报文为MPLS类型报文为例,第一标识信息(即SDGP-ID)可以作为熵标签携带在MPLS报文中。参见图15所示,示例一种承载SDGP-ID的MPLS报文格式。图15中,ETH表示二层以太报文头;TunnelL标签/VPN标签/MPLS标签用于标识转发路径的出接口/下一跳;保留标签用于标识保留标签的下层标签为网络切片标签;SDGP标签,每跳网络设备访问该SDGP标签,识别其标签值,也就是SDGP-ID值,查询SDGP-ID标识的接口资源对象,并转发MPLS报文。
作为一种示例,参见图16所示,转发路径为网络设备A-》网络设备B-》网络设备C。网络设备A、网络设备B和网络设备C中均存在3个子接口,分别为子接口0(interface0)、子接口1(interface1)和子接口2(interface2)。应理解的是,不同网络设备上的同属性(比如带宽)的子接口,命名方式可以相同,当前也可以不同,图16中以相同的命名为例。在每个网络设备上子接口0、子接口1和子接口2构成一个绑定接口,比如为Trunk0。子接口0属于网络切片1的转发资源,子接口1属于网络切片2的转发资源,子接口2属于网络切片3的转发资源。子接口0对应于SDGP-ID1、子接口1对应于SDGP-ID2,子接口2对应于SDGP-ID3。例如,网络设备A接收到数据报文1,根据数据报文1中的目的地址A查找路由转发表确定出绑定接口,比如路由转发表中目的地址A对应于出Trunk0,然后根据出Trunk0以及数据报文1中的SDGP-ID,比如数据报文1中携带SDGP-ID为SDGP-ID1,则通过网络切片1的转发资源,即子接口0将数据报文1转发到网络设备B,网络设备采用类似的方式确定通过子接口0将数据报文1转发给网络设备C。
作为一种示例,SDGP-ID对应的接口资源对象还可以关联用于转发业务流的PHB。从而第一网络设备在通过SDGP-ID确定的接口资源对象转发数据报文时,采用该SDGP-ID对应的接口资源对象所关联的PHB指示的转发行为来转发数据报文。网络设备还可以将SDGP-ID下对应的接口资源对象采用的PHB映射在转发表中,当然还可以作为单独的表格存储,还可以以其它非表格的方式存储,本申请对此不作具体限定。
第二种方式中,第一标识信息可以复用目的地址字段,将第一标识信息作为目的地址中的一部分携带在第一数据报文的报文头中。
一种示例中,以IPv6报文,第一标识信息(SDGP-ID)扩展在IPv6报文头的目的地址(DA)字段中。本申请实施例并不限定SDGP-ID在DA字段中的位置。为了描述方便,在目的地址中用于确定目标接口的信息称为路由信息。比如SDGP-ID可以与路由信息相邻,当然也可以不相邻,SDGP-ID也可以是路由信息的一部分。示例性地,路由信息位于DA 字段的高比特位,第一标识信息位于其它的比特位。当然,第一标识信息也可以位于DA字段的高比特位,路由信息位于低比特位。
例如,图17A和图17B所示,IPv6的DA是128bit,通过定义其中的若干bit用于标识SDGP-ID。
以图10所示的转发路径为例。比如,网络设备A本地维护的路由表如表2所示。
表2
IPv6Dest(地址) Exit-Interface Next-Hop(下一跳)
c0a8:2048::/32 Trunk-0接口集合 网络设备B
比如,以目的地址中的低16比特位为SDGP-ID为例。网络设备A接收到第一数据报文,第一数据报文中的DA为c0a8:2048::2。按照IP最长匹配原则,匹配到c0a8:2048::/32,则对应的出接口为A->B的出接口Trunk0接口。由于定义了DA中的128中最低的16bit标识SDGP-ID,比如c0a8:2048::2中最低的16bit的值为2,因此按照SDGP-ID为2查询转发映射表,比如如表3所示,确定Trunk0接口中的子接口interface2,即通过子接口2将第一数据报文转发到网络设备B。
表3
Out-interface(出接口) SDGP-ID 子接口
Trunk0接口(A) 1 Interface1
Trunk0接口(A) 2 Interface2
Trunk0接口(A) 3 Interface3
另一种示例中,以段路由(Segmeng Rouing)IPv6转发场景为例。比如,上述IPv6DA是SRv6中定义的SRv6 SID,同样可采用上述方法,扩展SRv6 SID格式中的K bit用于标识SDGP-ID。参见图18所示,示例性地描述一种SRv6 SID的结构。其中,Locator具有定位功能。Function指示设备的指令,用于指示SRv6 SID的生成节点进行相应的功能操作。Arguments为可选的参数段,用于定义报文的流和服务等信息。例如,SDGP-ID可以是Argument内的信息,也可以是独立于Argument的K bit。
参见图19所示,示例性地描述一种SRv6数据报文结构。其中,Next Header,表示紧跟在SRH之后的报文头的类型。Hdr Ext Len,表示SRH头的长度,主要是指从Segment List[0]到SegmentList[n]所占用长度。Routing Type,用于表示路由头部类型,SRH Type是4。Segments Left(SL),表示到达目的节点前应当访问的中间节点数。Last Entry,表示在段列表中包含段列表的最后一个元素的索引。Flags,为数据包的一些标识。Tag,标识同组数据包。Segment List[n],表示段列表,段列表从路径的最后一段开始编码。Segment List是IPv6地址形式。SegmentList[n]是SRv6路径上第一个需要处理的Segment List,Segment List[n-1]是第二个,Segment List[n-3]是第三个,...,Segment List[0]是第n+1个。每经过一个SRv6节点,Segments Left(SL)字段减1,IPv6DA信息变换一次。Segments Left和Segments List字段共同决定IPv6DA信息。如果SL值是n(n-0),则IPv6DA取值就是Segments List[n]的值。如果SL值是n-1,则IPv6DA取值就是Segments List[n-1]的值,以此类推,如果SL值是1,则IPv6DA取值就是Segments List[1]的值。如果SL值是0,则IPv6DA取值就是Segments List[0]的值。
SRv6 SID非本节点sid时,SRv6 SID即为普通的IPV6DA,按照上述IPV6中目的地 址中复用第一标识信息的示例中的转发方式来转发报文。若SRv6 SID是本节点SID时,通过查询转发信息库(forward information dataBase,FIB)表(和/或路由表)和转发映射表等,找到出接口/下一跳信息,然后再通过携带的SDGP-ID信息确定子接口。
作为一种示例,SRv6数据转发基于End SID和End.X SID来转发。End SID表示Endpoint SID,用于标识网络中的某个目的地址前缀(Prefix),在***中全局可见,全局有效。End.X SID表示三层交叉连接的Endpoint SID,用于标识网络中的某条链路,全局可见,本地有效。
节点收到SRv6类型的数据报文后,首先根据目的地址(SRv6 SID)本地SID表,判断目的地址对应的SRv6 SID是End类型的SID还是End.X类型的SID。如果是End类型SID,节点会继续查询FIB表(和/或路由表),然后根据IPv6FIB表查询SRv6 SID对应的目标接口,然后根据SRv6 SID中的SDGP-ID查询转发映射表确定子接口,然后通过确定的子接口转发数据报文。如果SRv6 SID是End.X类型SID,无需查询FIB表,即确定SRv6 SID的下一跳(出接口),然后再根据SRv6 SID中的SDGP-ID查询转发映射表确定子接口,然后通过确定的子接口转发数据报文。
第三种方式中,第一标识信息可以复用第一数据报文的报文头中的其它字段,比如通信分类(traffic class,TC)字段或流标签(flow lable)字段、或者源地址字段等。
一种示例中,以IPv6报文为例,第一标识信息复用traffic class字段。traffic class字段的全部或者一部分可以用于指示第一标识信息。比如,参见图20所示,将traffic class字段全部用于指示第一标识信息。本申请实施例中对第一标识信息在流标签字段中的位置以及占用的比特数不作具体限定。
第一网络设备获得到第一数据报文后,第一网络设备根据第一数据报文的报文头中的目的地址确定目标接口。然后从报文头的traffic class字段获取第一标识信息,根据第一标识信息确定目标接口上的第一接口资源对象。从而通过第一接口资源对象转发第一数据报文。
另一种示例中,以IPv6报文为例,第一标识信息复用流标签字段。流标签字段的全部或者一部分可以用于指示第一标识信息。比如,参见图21所示,将流标签字段的一部分用于指示第一标识信息。例如,流标签字段中的高比特位用于指示流标签信息,低比特位用于指示第一标识信息。再例如,流标签字段中的低比特位用于指示流标签信息,高比特位用于指示第一标识信息。本申请实施例中对第一标识信息在流标签字段中的位置以及占用的比特数不作具体限定。
第一网络设备获得到第一数据报文后,第一网络设备根据第一数据报文的报文头中的目的地址确定目标接口。然后从报文头的流标签字段获取第一标识信息,根据第一标识信息确定目标接口上的第一接口资源对象。从而通过第一接口资源对象转发第一数据报文。
如下对SDGP-ID对应到多个接口资源对象为例进行说明。SDGP-ID与QoS的差分服务模型(DiffServ)结合,表示某种业务流的转发策略,不同的转发策略指示网络设备的接口上的一个或者多个接口资源对象,并指示接口资源对象的转发行为。
控制器根据网络切片需求信息创建网络切片时,为网络切片配置SDGP-ID,并为网络切片配置接口资源对象。控制器配置SDGP-ID可以对应于多个接口资源对象。不同的SDGP-ID可以对应于一个相同的接口资源对象。SDGP-ID对应的接口资源对象关联用于转发业务流的PHB。需要说明的是,不同的SDGP-ID对应的同一个接口资源对象关联的PHB 可以不同。也就是说属于不同的网络切片的一个接口资源对象,在不同的网络切片下可以对应于不同的PHB。不同的PHB对应不同的转发行为,不同的转发行为提供不同的服务等级。比如以SDGP-ID1为例,SDGP-ID1对应于所述目标接口上的N个接口资源对象,N为大于1的整数,在全网中可以采用资源ID(Resource-ID,Res-ID)来标识接口资源对象。控制器向目标网络设备发送网络切片的信息时,将SDGP-ID与N个接口资源对象的映射关系,以及资源ID与目标网络设备上的接口资源对象之间的映射关系发送给目标网络设备。控制器为每个SDGP-ID配置的多个接口资源对象以及该SDGP-ID下每个接口资源对象所采用的PHB,可以认为是一种转发策略下发给各个目标网络设备。作为一种示例,SDGP-ID与N个接口资源对象的映射关系,以及资源ID与目标网络设备上的接口资源对象之间的映射关系可以作为网络切片的信息的一部分由控制器发送给目标网路设备。可以理解的是,不同的SDGP-ID对应于不同于的网络切片,从而控制器可以将SDGP-ID与网络切片标识之间的对应关系发送给目标网络设备,由目标网络设备在全网泛洪,或者由控制器SDGP-ID与网络切片标识之间的对应关系分发给网络切片对应的网络拓扑中的各个网络设备。
示例性地,以三个网络切片为例,SDGP-ID为1对应于网络切片1,SDGP-ID为2对应于网络切片2,SDGP-ID为3对应于网络切片3。
网络切片1:高优先级网络切片,其提供低丢包率、低延迟、低抖动,确定带宽的转发服务。其平均带宽为25G,峰值带宽为50G。为保证切片服务质量,该切片基于流量峰值分配资源,切片设置带宽为50G。
网络切片2:低优先级网络切片,提供较低的延迟、低丢包率、高可靠性的服务。其平均带宽为10G,峰值带宽为20G。该切片基于流量均值分配资源,切片设置带宽为10G。
网络切片3:低优先级网络切片,提供较低的延迟、低丢包率、高可靠性的服务。其平均带宽为5G,峰值带宽为10G。该切片基于流量均值分配资源,切片设置带宽为5G。
例如,以接口资源对象为子接口为例,参见图22所示,第一网络设备与第二网络设备上均存在3个子接口,第一网络设备上的3个子接口分别为子接口1、子接口2和子接口3。第二网络设备上的3个子接口分别为子接口4、子接口5和子接口6。第一网络设备上的3个子接口与第二网络设备上的3个子接口一一相连,如图22所示的连接关系。子接口1与子接口4相连,提供的带宽为50G,子接口2与子接口5相连,提供的带宽为10G,子接口3与子接口6相连,提供的带宽为5G。各个子接口所对应的带宽可以在配网时被规划好,还可以由控制器在规划网络拓扑时来规划各个子接口的带宽。
基于网络切片的需求,以及网络设备上的子接口的带宽,对不同网络切片提供不同的转发策略:
比如,网络切片1基于流量峰值分配带宽资源,可以确保高优先级业务的可靠服务,网络切片1可以使用第一网络设备的子接口1和第二网络设备的子接口4作为转发资源,可以采用EF的转发行为。网络切片2基于流量均值分配带宽资源,可以为大部分业务流提供可靠服务,网络切片2可以使用第一网络设备的子接口2和第二网络设备的子接口5作为转发资源,当业务流的流量超过接口带宽均值时,可以将超出部分流量通过子接1和子接口4转发,可以采用降低服务等级的方式转发,比如采用以AF方式转发。网络切片3基于流量均值分配带宽资源,可以为大部分业务流提供可靠服务,当业务流的流量超过均值时,可以将超出部分流量通过子接2和子接口5转发,可以采用降低服务等级的方式转发, 比如采用BE方式转发。
基于此,可以配置不同的SDGP-ID分别配置转发策略,转发策略中包括每个SDGP-ID分别对应的子接口,以及该SDGP-ID对应的子接口所采用的PHB。例如,不同的SDGP对应的转发策略可以为:
SDGP-ID为1:第一网络设备的子接口1和第二网络设备的子接口4,QoS:EF;
SDGP-ID为2:(第一网络设备的子接口2和第二网络设备的子接口5,QoS:EF)+(第一网络设备的子接口1和第二网络设备的子接口4+QoS:AF);
SDGP-ID为3:(第一网络设备的子接口3和第二网络设备的子接口6+QoS:EF)+(第一网络设备的子接口2和第二网络设备的子接口5+QoS:BE)。
在采用资源ID来标识子接口,不同网络设备上的相同属性的子接口使用相同的资源ID,换句话说,假设两个网络设备间的路径认为是一条转发路径的话,资源ID用于标识网络设备间的这条转发路径中的一条子路径。例如,参见图22所示,资源ID:1标识子接口1和子接口4这条子路径,资源ID:2标识子接口2和子接口5这条子路径,资源ID:3标识子接口3和子接口6这条子路径。则上述转发策略可以表述为:
SDGP-ID为1:ResID1+QoS:EF;
SDGP-ID为2:(ResID2+QoS:EF)+(ResID1+QoS:AF);
SDGP-ID为3:(ResID3+QoS:EF)+(ResID2+QoS:BE)。
目标网络设备接收到控制器下发的转发策略,即目标网络设备在接收到SDGP-ID与N个接口资源对象的映射关系,以及资源ID与目标网络设备上的接口资源对象之间的映射关系,可以建立映射转发表,以接口资源对象为子接口为例。例如,参见图22所示,第一网络设备上的3个子接口构成绑定接口,第二网络设备上的3个子接口构成绑定接口。以绑定接口为trunk接口为例。在第一网络设备的转发面,根据Trunk接口及SDGP-ID、Res-ID与子接口的对应关系,生成并维护转发映射表,如下表4所示。在第二网络设备的转发面,根据Trunk接口及SDGP-ID、Res-ID与子接口的对应关系,生成并维护转发映射表,如表5所示。
表4
Figure PCTCN2020105671-appb-000001
表5
Figure PCTCN2020105671-appb-000002
Figure PCTCN2020105671-appb-000003
应理解的是,上述表4或表5所示的转发映射表仅作为一种示例,目标网络设备的转发面,根据Trunk接口及SDGP-ID、Res-ID与子接口的对应关系,生成并维护多个表。例如,表4对应的映射关系,还可以采用如下表6和表7的方式建立。
表6
Figure PCTCN2020105671-appb-000004
表7
Res-ID 子接口
1 Interface1
2 Interface2
3 Interface3
作为一种示例,目标网络设备还可以将SDGP-ID下对应的子接口采用的PHB映射在转发表中,当然还可以作为单独的表格存储,还可以以其它非表格的方式存储,本申请对此不作具体限定。例如,第一网络设备在建立表1所示的映射转发表时,可以将SDGP-ID下对应的子接口采用的PHB添加在映射转发表中,参见表8所示。
表8
Figure PCTCN2020105671-appb-000005
如下示例性地描述另一种网络设备转发业务流的流程:
1)第一网络设备获得第一数据报文,所述第一数据报文携带路由信息以及第一标识信息.。
2)所述第一网络设备根据所述路由信息确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下 一跳网络设备;
3)所述第一网络设备根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;
4)所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
一种具体实施方式中,路由信息和第一标识信息作为单独的两个信息携带在第一数据报文中。比如,路由信息为目的地址。具体的,根据目的地址确定目标接口,以及根据第一标识信息确定接口资源对象的方式如前所述,此处不再赘述。
一种示例中,比如,所述第一数据报文的报文头包括所述目的地址和所述第一标识信息。
另一种示例中,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述目的地址和所述第一标识信息。
又一种示例中,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
另一种具体实施方式中,第一标识信息可以复用目的地址,目的地址中的一部分用于指示第一标识信息。
一种示例中,所述第一数据报文的报文头包括目的地址,所述目的地址包括所述路由信息和所述第一标识信息。例如,所述路由信息占用所述目的地址的高比特位,所述第一标识信息占用所述目的地址的低比特位。再例如,所述路由信息占用所述目的地址的低比特位,所述第一标识信息占用所述目的地址的高比特位。
又一种具体实施方式中,第一标识信息复用通信分类字段。比如,所述第一数据报文的报文头包括所述目的地址(路由信息)和通信分类字段,所述通信分类字段包括所述第一标识信息。
再一种具体实施方式中,第一标识信息复用流标签字段,所述第一数据报文的报文头包括所述目的地址(路由信息)和流标签字段,所述流标签包括所述第一标识信息。
作为一种示例,目标网络设备还可以将各个子接口对应的带宽分别映射在转发表中,当然还可以作为单独的表格存储,还可以以其它非表格的方式存储,本申请对此不作具体限定。
网络设备转发业务流的流程进行详细说明,参见图23所示。
S1801,第一网络设备获得第一数据报文,第一数据报文携带目的地址以及第一标识信息。第一数据报文为业务流中的任一数据报文。所述第一标识信息与N个接口资源对象存在映射关系,N为大于1的整数。
具体获取的第一数据报文的方式可以参见图12所对应的实施例中的描述,此处不再赘述。
S1802,第一网络设备根据目的地址确定目标接口,目标接口为第一网络设备上存在的用于连接第二网络设备的接口,第二网络设备为第一网络设备的下一跳网络设备。确定方式可以参见图12所对应的实施例中的描述,此处不再赘述。
S1803,第一网络设备从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象,M为小于或者等于N的正整数。
S1804,第一网络设备通过M个接口资源对象中的一个接口资源对象转发所述第一数据 报文。
在第一网络设备从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象时,可以根据第一数据报文所属的业务流的流量,来从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象。
以N为2为例,为了区分两个接口资源对象,将两个接口资源对象分别称为主接口资源对象和辅接口资源对象,即第一标识信息分别对应于主接口资源对象和辅接口资源对象。第一网络设备在从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象时,可以通过如下方式来实现:
所述第一网络设备确定所述主接口资源对象的带宽满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象用于转发所述第一数据报文所属的业务流。在该情况下,第一网络设备通过主接口资源对象转发第一数据报文。所述第一网络设备确定所述主接口资源对象的带宽不满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流。在该情况下,第一网络设备针对第一数据报文所属的业务流进行分流转发,即通过所述主接口资源对象和所述辅接口资源对象转发所述第一数据报文所属的业务流。该第一数据报文通过主接口资源对象转发还是通过辅接口资源对象,可以根据分流情况来确定,从而第一网络设备通过主接口资源对象或者辅接口资源对象来转发该第一数据报文。
控制器针对第一标识信息对应的不同的接口资源对象配置不同的PHB的情况下,比如,第一标识信息对应的主接口资源对象关联在转发业务流时采用第二PHB,第一标识信息对应的辅接口资源对象关联在转发业务流时采用第三PHB。第一网络设备在确定所述主接口资源对象用于转发所述第一数据报文所属的业务流时,可以采用第二PHB,通过所述主接口资源对象将所述第一数据报文转发给所述第二网络设备。第二PHB可以是EF、AF、BE、CS中的任一项。
在确定所述辅接口资源对象和主接口资源对象用于转发所述第一数据报文所属的业务流时,第一网络设备可以分别采用第二PHB通过所述主接口资源对象和采用第三PHB通过所述辅接口资源对象转发该第一数据报文所属的业务流。第二PHB可以是EF、AF、BE、CS中的任一项,第三PHB可以是EF、AF、BE、CS中的任一项。一般性的,主接口资源对象对应的PHB的服务等级高于辅接口资源对象的服务等级。比如,上述第二PHB可以为EF,第三PHB为AF。在采用分流方式转发时,主接口资源对象采用EF能够保证业务流的大部分内容的可靠服务,其它的部分内容以AF方式降低服务等级后确保转发。再比如,第二PHB为EF,第三PHB为BE。在采用分流方式转发时,主接口资源对象采用EF能够保证业务流的大部分内容的可靠服务,其它的部分内容以BE方式降低服务等级后作尽力而为的转发。
接着上述图22所示的例子,以第一网络设备配置表6所示的映射转发表为例。
网络切片1的业务流1携带SDGP-ID值为1,第一网络设备针对业务流1的处理流程如下:
A1,第一网络设备接收到携带SDGP-ID的数据报文1,通过目的地址查询本地路由表,获取出接口/下一跳,比如为Trunk0,下一跳网络设备为第二网络设备;
A2,第一网络设备解析数据报文1,并查询映射转发表(表6)确定SDGP-ID=1对应的ResID=1和PHB为加速转发EF。
A3,第一网络设备修改数据报文1的TC字段中的PHB为加速转发EF;
A4,第一网络设备根据出接口和ResID=1,查询映射转发表(表6),获取子接口interface1;
A5,第一网络设备可以将修改TC字段的数据报文1采用EF对应的转发行为,通过子接口interface1转发到下一跳网络设备,即第二网络设备。
网络切片2的业务流2携带SDGP-ID值为2,其网络设备侧处理流程如下(网络切片2的资源为10G,如果当前流量值为15G):
B1,第一网络设备接收到带有SDGP-ID的数据报文2,通过目的地址查询本地路由表,获取出接口/下一跳为Eth-Trunk0,下一跳网络设备为第二网络设备;
B2,第一网络设备解析数据报文2,并查询映射转发表(表6)确定SDGP-ID=2对应ResID=2、PHB为加速转发EF,还对应ResID=1、PHB为确保转发AF;
B3,第一网络设备修改数据报文2的TC字段中的PHB为加速转发EF;
B4,第一网络设备根据出接口和ResID=2,查询转发映射表(表6),获取子接口interface2;
B5,第一网络设备将修改TC字段的数据报文2采用EF对应的转发行为,通过子接口interface2转发到下一跳网络设备,即第二网络设备;
B6,第一网络设备识别当前子接口2的带宽不满足业务流2的要求,修改业务流2中的部分报文的TC字段为AF,并通过出接口和Res ID=1,查询转发映射表(表6),获取子接口interface1。
B7,第一网络设备可以将修改TC字段的业务流中的部分报文采用EF对应的转发行为,通过子接口interface1转发到下一跳网络设备,即第二网络设备。
从上可以看出,子接口interface1实现同时转发网络切片1和网络切片2的业务流。子接口interface1提供给网络切片1的转发行为是EF,子接口1为网络切片1的业务流提供绝对优先的队列调度,保证其带宽及时延;子接口interface1提供给网络切片2的转发行为是AF,子接口1对未超出接口资源带宽限制的流量提供转发质量保证,对超出限度的流量并不会丢弃,而是降低服务等级后继续转发。
网络切片3的业务流3携带SDGP-ID值为3,第一网络设备处理流程如下:(切片3的资源为5G,如果当前流量值为10G)。
C1,第一网络设备接收到带有SDGP-ID的数据报文3,通过目的地址查询本地路由表,获取出接口/下一跳为Eth-Trunk0,下一跳网络设备为第二网络设备;
C2,第一网络设备解析数据报文3,并查询映射转发表(表6)确定SDGP-ID=3对应ResID=3、PHB为加速转发EF,还对应ResID=2、PHB为确保转发AF;
C3,第一网络设备修改数据报文3的TC字段中的PHB为加速转发EF;
C4,第一网络设备根据出接口和ResID=3,查询转发映射表(表6),获取子接口interface3;
C5,第一网络设备将修改TC字段的数据报文3采用EF对应的转发行为,通过子接口interface3转发到下一跳网络设备,即第二网络设备;
C6,第一网络设备识别当前子接口3的带宽不满足业务流3的要求,修改业务流3中的部分报文的TC字段为BE,并通过出接口和Res ID=2,查询转发映射表(表6),获取子接口interface2。
C7,第一网络设备可以将修改TC字段的业务流中的部分报文采用BE对应的转发行为,通过子接口interface2转发到下一跳网络设备,即第二网络设备。
子接口interface2实现同时转发网络切片2和网络切片3的业务流。子接口interface2提供给网络切片2的转发行为是EF,子接口2为网络切片3的业务流提供绝对优先的队列调度,保证其带宽及时延;子接口interface2提供给网络切片3的转发行为是BE,子接口2对网络切片3的业务流提供尽力而为的转发行为。如果子接口2长期处于满负荷运行,则网络切片3的这部分数据报文可能丢失。
SDGP-ID用于标识业务流的转发策略,不同网络切片可以共用同一转发资源,该转发资源主要为某个网络切片服务,在该转发资源空闲的时候,在保证主要的网络切片的业务流的转发质量情况下,为其他网络切片的业务流提供相应质量的转发保证,充分利用网络资源。
基于与方法实施例同样的处理原则,本申请实施例还提供了一种装置1900,参见图24所示。该装置1900应用于网络设备,该网络设备可以是上述图6,图10-图12,图16、图22-图23中所示实施例中的网络设备,具体可以用于执行上述各方法实施例中网络设备的动作。该装置1900可以包括接收模块1901、处理模块1902、发送模块1903。该装置1900具体可以是网络设备中的处理器,或者芯片或者芯片***等。处理模块1902用于对装置1900的动作进行控制管理,接收模块1901用于接收信息或者报文,发送模块1903用于发送信息或者发送报文,处理模块1902用于对接收模块1901接收到的信息或者报文进行处理。
以所述装置应用于第一网络设备为例,一种实施场景中:
处理模块1902,用于获得第一数据报文,所述第一数据报文携带目的地址以及第一标识信息;根据所述目的地址确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象。
所述处理模块1902根据所述目的地址确定目标接口的具体实现可以参考上述图12所示实施例中步骤S1202的处理过程,这里不再赘述。
所述处理模块1902根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象具体实现可以参考上述图12所示实施例中步骤S1203的处理过程或者可以参考图23所示实施例中的步骤S1803的处理过程,这里不再赘述。
发送模块1903,用于通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
所述发送模块1903根据通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备具体实现可以参考上述图12所示实施例中步骤S1204的处理过程或者可以参考图23所示实施例中的步骤S1804的处理过程,这里不再赘述。
在一种具体的实施方式中,所述处理模块1902,具体用于根据路由转发表确定所述目的地址对应的目标接口标识,所述路由转发表包括所述目的地址与所述目标接口标识的对应关系,所述目标接口标识用于标识所述目标接口。
在一种具体的实施方式中,所述第一标识信息与所述目标接口上的第一接口资源对象存在一一映射关系;
所述处理模块1902,具体用于根据所述映射关系,确定所述第一标识信息所对应的所 述第一接口资源对象。
在一种具体的实施方式中,所述第一网络设备存储有第一映射转发表;所述第一映射转发表中包括所述目标接口标识、所述第一标识信息以及所述第一接口资源对象标识的对应关系;
所述处理模块1902,具体用于根据所述第一映射转发表确定所述目标接口标识所标识的目标接口上所述第一标识信息对应的第一接口资源对象标识,所述第一接口资源对象标识用于标识所述第一接口资源对象。具体的上述第一映射转发表的构建方式可以参见上述图6所示的实施例中的描述,此处不再赘述。
在一种具体的实施方式中,所述第一接口资源对象转发业务流时采用第一每跳行为PHB;
所述处理模块1902,具体用于根据所述映射关系,确定所述第一标识信息所对应的所述第一接口资源对象后,使用所述第一PHB并通过所述第一接口资源对象将所述第一数据报文转发给所述第二网络设备。
在一种具体的实施方式中,所述第一标识信息与N个接口资源对象存在映射关系,N为大于1的整数;
所述处理模块1902,具体用于从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象,M为小于或者等于N的正整数。
在一种具体的实施方式中,所述N个接口资源对象分别配有转发业务流所采用的PHB;
所述处理模块1902,具体用于在确定用于转发所述第一数据报文所属业务流的M个接口资源对象后,采用所述M个接口资源对象分别配置的PHB,通过所述M个接口资源对象转发所述第一数据报文所属的业务流。
在一种具体的实施方式中,N为2,所述第一标识信息对应于主接口资源对象和辅接口资源对象;
所述处理模块1902,具体用于确定所述主接口资源对象的带宽满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象用于转发所述第一数据报文所属的业务流;或者,确定所述主接口资源对象的带宽不满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流。
在一种具体的实施方式中,所述主接口资源对象转发业务流时采用第二PHB,所述辅接口资源对象转发所述业务流时采用第三PHB;
所述处理模块1902,具体用于在确定所述主接口资源对象用于转发所述第一数据报文所属的业务流时,采用所述第二PHB,通过所述主接口资源对象将所述第一数据报文转发给所述第二网络设备,或者,在确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流时,采用所述第二PHB,通过所述辅接口资源对象将所述第一数据报文转发给所述第二网络设备,或者采用所述第三PHB,通过所述辅接口资源对象将所述第一数据报文转发给所述第二网络设备。
在一种具体的实施方式中,所述第二PHB为EF、CS、AF、BE中的任一项;或者,所述第三PHB为EF、CS、AF、BE中的任一项。
在一种具体的实施方式中,所述装置还包括:
接收模块1901,用于接收来自所述第一网络设备的上一跳网络设备的第一数据报文;或者,
接收来自终端设备的第一数据报文。
在一种具体的实施方式中,所述第一网络设备为所述第一数据报文的转发路径上的头端网络设备,所述装置还包括:
接收模块1901,用于接收第二数据报文,所述第二数据报文关联第一网络切片;
所述处理模块1902,还用于根据所述第一网络切片的标识与所述第一标识信息的对应关系,将所述第一标识信息***所述第二数据报文中得到所述第一数据报文。
在一种具体的实施方式中,所述目标接口为物理接口,所述接口资源对象为物理子接口、逻辑子接口或者报文队列;或者,
所述目标接口为绑定接口,所述接口资源对象为物理接口。
在一种具体的实施方式中,所述目标接口为绑定接口,所述绑定接口用于所述第一网络设备与所述第二网络设备之间建立邻居关系。
在一种具体的实施方式中,所述第一数据报文的报文头包括所述第一标识信息。
在一种具体的实施方式中,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述第一标识信息。
在一种具体的实施方式中,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
在一种具体的实施方式中,第一标识信息所对应的接口资源对象供第一网络切片使用。
另一种实施场景中:
处理模块1902,用于获得第一数据报文,所述第一数据报文携带路由信息以及第一标识信息;所述第一网络设备根据所述路由信息确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;
发送模块1903,用于通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
在一种具体的实施方式中,所述路由信息为目的地址。处理模块1902,具体用于从第一数据报文中获取目的地址,根据目的地址确定目标接口,然后根据第一数据报文中的第一标识信息确定所述目标接口上的至少一个接口资源对象。
在一种具体的实施方式中,所述第一数据报文的报文头包括所述目的地址和所述第一标识信息。
在一种可能的设计中,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述目的地址和所述第一标识信息。
在一种具体的实施方式中,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
在一种具体的实施方式中,所述第一数据报文的报文头包括目的地址,所述目的地址包括所述路由信息和所述第一标识信息。处理模块1902,具体用于从第一数据报文中获取目的地址,根据目的地址确定目标接口,然后从目的地址中获取第一标识信息,并根据第 一标识信息确定所述目标接口上的至少一个接口资源对象。
在一种具体的实施方式中,所述路由信息占用所述目的地址的高比特位,所述第一标识信息占用所述目的地址的低比特位;或者,所述路由信息占用所述目的地址的低比特位,所述第一标识信息占用所述目的地址的高比特位。
在一种具体的实施方式中,所述第一数据报文的报文头包括所述目的地址和通信分类字段,所述通信分类字段包括所述第一标识信息。处理模块1902,具体用于从第一数据报文中获取目的地址,根据目的地址确定目标接口,然后从第一数据报文的通信分类字段中获取第一标识信息,并根据第一标识信息确定所述目标接口上的至少一个接口资源对象。
在一种具体的实施方式中,所述第一数据报文的报文头包括所述目的地址和流标签,所述流标签包括所述第一标识信息。处理模块1902,具体用于从第一数据报文中获取目的地址,根据目的地址确定目标接口,然后从第一数据报文的流标签字段中获取第一标识信息,并根据第一标识信息确定所述目标接口上的至少一个接口资源对象。
本申请实施例还提供一种网络设备的结构,如图25所示,网络设备2000中可以包括通信接口2010和处理器2020。网络设备200可以是上述任一实施例中第一网络设备,比如图6,图10-图12,图16、图22-图23中所示实施例中的网络设备,具体可以用于执行上述图6,图10-图12,图16、图22-图23中所示实施例中网络设备所执行的动作。
可选的,网络设备2000中还可以包括存储器2030。其中,存储器2030可以设置于网络设备内部,还可以设置于网络设备外部。上述图24中所示的、处理模块1902均可以由处理器2020实现。接收模块1901、发送模块1903可以由通信接口2010实现。本申请实施例中不限定上述通信接口、处理器以及存储器之间的具体连接介质。本申请实施例在图25中以存储器2030、处理器2020以及通信接口2010之间通过总线连接,总线在图25中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图25中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器2020通过通信接口2010收发报文或者消息,并用于实现上述任一实施例中网络设备所执行的任一方法。在实现过程中,处理流程的各步骤可以通过处理器2020中的硬件的集成逻辑电路或者软件形式的指令完成上述各个方法实施例中网络设备(比如第一网络设备)所执行的方法。为了简洁,在此不再赘述。处理器2020用于实现上述方法所执行的程序代码可以存储在存储器2030中。存储器2030和处理器2020耦合。
另一种实施方式中,所述处理器2020用于获得第一数据报文,所述第一数据报文携带路由信息以及第一标识信息,然后根据所述路由信息确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;并根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;之后通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
本申请实施例还提供一种网络设备的结构,如图26所示,网络设备2100中可以主控板和接口板。包括主控板和接口板,主控板包括处理器和存储器,接口板包括处理器、存储器和接口卡。接口板的处理器用于调用接口板的存储器中的程序指令通过接口卡执行报文的接收和发送。主控板的处理器用于调用主控板存储器中的程序指令执行报文相应的处 理功能。
基于与方法实施例同样的发明构思,本申请实施例还提供了一种装置,参见图27所示,该装置2200应用于控制器。该装置2200可以包括处理模块2201、发送模块2202。该装置2200具体可以是控制器中的处理器,或者芯片或者芯片***,或者是一个功能模块等。处理模块2201用于对装置2200的动作进行控制管理,处理模块2201用于创建网络切片,生成网络切片的信息等。发送模块2202用于发送网络切片的信息。
示例性地,处理模块2201,用于在创建第一网络切片时,创建第一网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系,所述第一网络切片能够使用所述至少一个接口资源对象。创建第一网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系的具体方式可以参见上述方法中创建网络切片的过程描述中的相关说明,此处不再赘述。
发送模块2202,用于将第一网络切片的标识与第一标识信息的映射关系,以及所述至少一个接口资源对象与所述第一标识信息的映射关系,发送给所述第一网络设备。
所述目标接口为物理接口,所述第一接口资源对象为物理子接口、逻辑子接口或者报文队列;或者,所述目标接口为绑定接口,所述接口资源对象为物理接口。
本申请实施例还提供一种控制器的结构,如图28所示,控制器2300中可以包括通信接口2310和处理器2320,控制器2300可以是上述方法实施例中的控制器,用于执行上述方法实施例中控制器的动作。可选的,控制器2300中还可以包括存储器2330。其中,存储器2330可以设置于控制器内部,还可以设置于控制器外部。上述图27中所示的处理模块2201可以由处理器2320实现。发送模块2202可以由通信接口2310实现。
本申请实施例中涉及的处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例中的耦合是装置、模块或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、模块或模块之间的信息交互。
处理器可能和存储器协同操作。存储器可以是非易失性存储器,比如硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM)。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
基于以上实施例,本申请实施例还提供了一种计算机存储介质,该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现上述任意一个或多个实施例提供的方法。所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机 可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (64)

  1. 一种数据传输的控制方法,其特征在于,包括:
    第一网络设备获得第一数据报文,所述第一数据报文携带目的地址以及第一标识信息;
    所述第一网络设备根据所述目的地址确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;
    所述第一网络设备根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;
    所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
  2. 如权利要求1所述的方法,其特征在于,所述第一网络设备根据所述目的地址确定目标接口,包括:
    所述第一网络设备根据路由转发表确定所述目的地址对应的目标接口标识,所述路由转发表包括所述目的地址与所述目标接口标识的对应关系,所述目标接口标识用于标识所述目标接口。
  3. 如权利要求2所述的方法,其特征在于,所述第一标识信息与所述目标接口上的第一接口资源对象存在一一映射关系;
    所述第一网络设备根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象,包括:
    所述第一网络设备根据所述映射关系,确定所述第一标识信息所对应的所述第一接口资源对象。
  4. 如权利要求3所述的方法,其特征在于,所述第一网络设备存储有第一映射转发表;
    所述第一映射转发表中包括所述目标接口标识、所述第一标识信息以及所述第一接口资源对象标识的对应关系;
    所述第一网络设备根据所述映射关系,确定所述第一标识信息所对应的所述第一接口资源对象,包括:
    所述第一网络设备根据所述第一映射转发表确定所述目标接口标识所标识的目标接口上所述第一标识信息对应的第一接口资源对象标识,所述第一接口资源对象标识用于标识所述第一接口资源对象。
  5. 如权利要求3或4所述的方法,其特征在于,所述第一接口资源对象转发业务流时采用第一每跳行为PHB;
    所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备,包括:
    所述第一网络设备根据所述映射关系,确定所述第一标识信息所对应的所述第一接口资源对象后,使用所述第一PHB并通过所述第一接口资源对象将所述第一数据报文转发给所述第二网络设备。
  6. 如权利要求1或2所述的方法,其特征在于,所述第一标识信息与N个接口资源对象存在映射关系,N为大于1的整数;
    所述第一网络设备根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象,包括:
    所述第一网络设备从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象,M为小于或者等于N的正整数。
  7. 如权利要求6所述的方法,其特征在于,所述N个接口资源对象分别配有转发业务流所采用的PHB;
    所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备,包括:
    所述第一网络设备在确定用于转发所述第一数据报文所属业务流的M个接口资源对象后,采用所述M个接口资源对象分别配置的PHB,通过所述M个接口资源对象转发所述第一数据报文所属的业务流。
  8. 如权利要求6所述的方法,其特征在于,N为2,所述第一标识信息对应于主接口资源对象和辅接口资源对象;
    所述第一网络设备从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象,包括:
    所述第一网络设备确定所述主接口资源对象的带宽满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象用于转发所述第一数据报文所属的业务流;或者,
    所述第一网络设备确定所述主接口资源对象的带宽不满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流。
  9. 如权利要求8所述的方法,其特征在于,所述主接口资源对象转发业务流时采用第二PHB,所述辅接口资源对象转发所述业务流时采用第三PHB;
    所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备,包括:
    所述第一网络设备在确定所述主接口资源对象用于转发所述第一数据报文所属的业务流时,采用所述第二PHB,通过所述主接口资源对象将所述第一数据报文转发给所述第二网络设备,或者,
    所述第一网络设备在确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流时,采用所述第二PHB,通过所述主接口资源对象将所述第一数据报文所属的业务流转发给所述第二网络设备,以及采用所述第三PHB,通过所述辅接口资源对象将所述第一数据报文所属的业务流转发给所述第二网络设备。
  10. 如权利要求9所述的方法,其特征在于,所述第二PHB为加速转发EF、类选择码CS、确保转发AF、尽力而为BE中的任一项;或者,
    所述第三PHB为EF、CS、AF、BE中的任一项。
  11. 如权利要求1-10任一项所述的方法,其特征在于,所述第一网络设备获得第一数据报文,包括:
    所述第一网络设备接收来自所述第一网络设备的上一跳网络设备的第一数据报文;或者,
    所述第一网络设备接收来自终端设备的第一数据报文。
  12. 如权利要求1-10任一项所述的方法,其特征在于,所述第一网络设备为所述第一数据报文的转发路径上的头端网络设备,所述第一网络设备获得第一数据报文,包括:
    所述第一网络设备接收第二数据报文,所述第二数据报文关联第一网络切片;
    所述第一网络设备根据所述第一网络切片的标识与所述第一标识信息的对应关系,将所述第一标识信息***所述第二数据报文中得到所述第一数据报文。
  13. 如权利要求1-12任一项所述的方法,其特征在于,所述目标接口为物理接口,所述接口资源对象为物理子接口、逻辑子接口或者报文队列;或者,
    所述目标接口为绑定接口,所述接口资源对象为物理接口。
  14. 如权利要求13所述的方法,其特征在于,所述目标接口为绑定接口,所述绑定接口用于所述第一网络设备与所述第二网络设备之间建立邻居关系。
  15. 如权利要求1-14任一项所述的方法,其特征在于,所述第一数据报文的报文头包括所述第一标识信息。
  16. 如权利要求15所述的方法,其特征在于,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述第一标识信息。
  17. 如权利要求15所述的方法,其特征在于,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
  18. 如权利要求1-14任一项所述的方法,其特征在于,所述第一数据报文的报文头包括所述目的地址,所述第一标识信息占用所述目的地址中的K个比特位,K为正整数。
  19. 如权利要求18所述的方法,其特征在于,所述K个比特位为所述目的地址中的连续K个低比特位,或者,所述K个比特位为所述目的地址中的连续K个高比特位。
  20. 如权利要求1-14任一项所述的方法,其特征在于,所述第一数据报文的报文头包括通信分类字段,所述通信分类字段包括所述第一标识信息。
  21. 如权利要求1-14任一项所述的方法,其特征在于,所述第一数据报文的报文头包括流标签,所述流标签包括所述第一标识信息。
  22. 如权利要求3-21任一项所述的方法,其特征在于,第一标识信息的不同取值对应于不同的网络切片。
  23. 如权利要求22所述的方法,其特征在于,所述方法还包括:
    所述第一网络设备接收控制器发送的所述网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系。
  24. 一种数据报文传输的控制方法,其特征在于,包括:
    第一网络设备获得第一数据报文,所述第一数据报文携带路由信息以及第一标识信息;
    所述第一网络设备根据所述路由信息确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;
    所述第一网络设备根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;
    所述第一网络设备通过所述至少一个接口资源对象将所述第一数据报文转发给所述第 二网络设备。
  25. 如权利要求24所述的方法,其特征在于,所述路由信息为目的地址。
  26. 如权利要求25所述的方法,其特征在于,所述第一数据报文的报文头包括所述目的地址和所述第一标识信息。
  27. 如权利要求26所述的方法,其特征在于,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述目的地址和所述第一标识信息。
  28. 如权利要求26所述的方法,其特征在于,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
  29. 如权利要求24所述的方法,其特征在于,所述第一数据报文的报文头包括目的地址,所述目的地址包括所述路由信息和所述第一标识信息。
  30. 如权利要求29所述的方法,其特征在于,所述路由信息占用所述目的地址的高比特位,所述第一标识信息占用所述目的地址的低比特位;或者,所述路由信息占用所述目的地址的低比特位,所述第一标识信息占用所述目的地址的高比特位。
  31. 如权利要求24所述的方法,其特征在于,所述第一数据报文的报文头包括所述目的地址和通信分类字段,所述通信分类字段包括所述第一标识信息。
  32. 如权利要求24所述的方法,其特征在于,所述第一数据报文的报文头包括所述目的地址和流标签,所述流标签包括所述第一标识信息。
  33. 一种数据报文传输的控制方法,其特征在于,包括:
    控制器在创建第一网络切片时,创建第一网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系,所述第一网络切片可使用所述至少一个接口资源对象;
    所述控制器将第一网络切片的标识与第一标识信息的映射关系,以及所述至少一个接口资源对象与所述第一标识信息的映射关系,发送给所述第一网络设备。
  34. 如权利要求33所述的方法,其特征在于,所述目标接口为物理接口,所述第一接口资源对象为物理子接口、逻辑子接口或者报文队列;或者,
    所述目标接口为绑定接口,所述接口资源对象为物理接口。
  35. 一种数据传输的控制装置,其特征在于,所述装置应用于第一网络设备,包括:
    处理模块,用于获得第一数据报文,所述第一数据报文携带目的地址以及第一标识信息;根据所述目的地址确定目标接口,所述目标接口为所述第一网络设备上存在的用于连接第二网络设备的接口,所述第二网络设备为所述第一网络设备的下一跳网络设备;根据所述第一标识信息确定所述目标接口上的至少一个接口资源对象;
    发送模块,用于通过所述至少一个接口资源对象将所述第一数据报文转发给所述第二网络设备。
  36. 如权利要求35所述的装置,其特征在于,所述处理模块,具体用于根据路由转发表确定所述目的地址对应的目标接口标识,所述路由转发表包括所述目的地址与所述目标接口标识的对应关系,所述目标接口标识用于标识所述目标接口。
  37. 如权利要求36所述的装置,其特征在于,所述第一标识信息与所述目标接口上的第一接口资源对象存在一一映射关系;
    所述处理模块,具体用于根据所述映射关系,确定所述第一标识信息所对应的所述第 一接口资源对象。
  38. 如权利要求37所述的装置,其特征在于,所述第一网络设备存储有第一映射转发表;所述第一映射转发表中包括所述目标接口标识、所述第一标识信息以及所述第一接口资源对象标识的对应关系;
    所述处理模块,具体用于根据所述第一映射转发表确定所述目标接口标识所标识的目标接口上所述第一标识信息对应的第一接口资源对象标识,所述第一接口资源对象标识用于标识所述第一接口资源对象。
  39. 如权利要求37或38所述的装置,其特征在于,所述第一接口资源对象转发业务流时采用第一每跳行为PHB;
    所述处理模块,具体用于根据所述映射关系,确定所述第一标识信息所对应的所述第一接口资源对象后,使用所述第一PHB并通过所述第一接口资源对象将所述第一数据报文转发给所述第二网络设备。
  40. 如权利要求35或36所述的装置,其特征在于,所述第一标识信息与N个接口资源对象存在映射关系,N为大于1的整数;
    所述处理模块,具体用于从所述第一标识信息所映射的N个接口资源对象中确定用于转发所述第一数据报文所属业务流的M个接口资源对象,M为小于或者等于N的正整数。
  41. 如权利要求40所述的装置,其特征在于,所述N个接口资源对象分别配有转发业务流所采用的PHB;
    所述处理模块,具体用于在确定用于转发所述第一数据报文所属业务流的M个接口资源对象后,采用所述M个接口资源对象分别配置的PHB,通过所述M个接口资源对象转发所述第一数据报文所属的业务流。
  42. 如权利要求40所述的装置,其特征在于,N为2,所述第一标识信息对应于主接口资源对象和辅接口资源对象;
    所述处理模块,具体用于确定所述主接口资源对象的带宽满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象用于转发所述第一数据报文所属的业务流;或者,确定所述主接口资源对象的带宽不满足所述第一数据报文所属的业务流的流量的要求时,确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流。
  43. 如权利要求42所述的装置,其特征在于,所述主接口资源对象转发业务流时采用第二PHB,所述辅接口资源对象转发所述业务流时采用第三PHB;
    所述处理模块,具体用于在确定所述主接口资源对象用于转发所述第一数据报文所属的业务流时,采用所述第二PHB,通过所述主接口资源对象将所述第一数据报文转发给所述第二网络设备,或者,在确定所述主接口资源对象和所述辅接口资源对象用于转发所述第一数据报文所属的业务流时,采用所述第二PHB,通过所述辅接口资源对象将所述第一数据报文所属业务流转发给所述第二网络设备,以及采用所述第三PHB,通过所述辅接口资源对象将所述第一数据报文所属业务流转发给所述第二网络设备。
  44. 如权利要求43所述的装置,其特征在于,所述第二PHB为加速转发EF、类选择码CS、确保转发AF、尽力而为BE中的任一项;或者,
    所述第三PHB为EF、CS、AF、BE中的任一项。
  45. 如权利要求35-44任一项所述的装置,其特征在于,所述装置还包括:
    接收模块,用于接收来自所述第一网络设备的上一跳网络设备的第一数据报文;或者,
    接收来自终端设备的第一数据报文。
  46. 如权利要求35-44任一项所述的装置,其特征在于,所述第一网络设备为所述第一数据报文的转发路径上的头端网络设备,所述装置还包括:
    接收模块,用于接收第二数据报文,所述第二数据报文关联第一网络切片;
    所述处理模块,还用于根据所述第一网络切片的标识与所述第一标识信息的对应关系,将所述第一标识信息***所述第二数据报文中得到所述第一数据报文。
  47. 如权利要求35-46任一项所述的装置,其特征在于,所述目标接口为物理接口,所述接口资源对象为物理子接口、逻辑子接口或者报文队列;或者,
    所述目标接口为绑定接口,所述接口资源对象为物理接口。
  48. 如权利要求47所述的装置,其特征在于,所述目标接口为绑定接口,所述绑定接口用于所述第一网络设备与所述第二网络设备之间建立邻居关系。
  49. 如权利要求35-48任一项所述的装置,其特征在于,所述第一数据报文的报文头包括所述第一标识信息。
  50. 如权利要求49所述的装置,其特征在于,所述第一数据报文的报文头包括扩展标签长度内容TLV,所述扩展TLV中包括所述第一标识信息。
  51. 如权利要求49所述的装置,其特征在于,所述第一标识信息作为熵标签包含在所述第一数据报文的报文头中。
  52. 如权利要求35-48任一项所述的装置,其特征在于,所述第一数据报文的报文头包括所述目的地址,所述第一标识信息占用所述目的地址中的K个比特位,K为正整数。
  53. 如权利要求52所述的装置,其特征在于,所述K个比特位为所述目的地址中的连续K个低比特位。
  54. 如权利要求35-48任一项所述的装置,其特征在于,所述第一数据报文的报文头包括通信分类字段,所述通信分类字段包括所述第一标识信息。
  55. 如权利要求35-48任一项所述的装置,其特征在于,所述第一数据报文的报文头包括流标签,所述流标签包括所述第一标识信息。
  56. 如权利要求37-55任一项所述的装置,其特征在于,第一标识信息的不同取值对应于不同的网络切片。
  57. 如权利要求56所述的装置,其特征在于,所述接收模块,还用于:
    接收控制器发送的所述网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系。
  58. 一种数据报文传输的控制装置,其特征在于,所述装置应用于控制器,包括:
    处理模块,用于在创建第一网络切片时,创建第一网络切片的标识与第一标识信息的映射关系,以及第一网络设备上的目标接口上的至少一个接口资源对象与所述第一标识信息的映射关系,所述第一网络切片能够使用所述至少一个接口资源对象;
    发送模块,用于将第一网络切片的标识与第一标识信息的映射关系,以及所述至少一个接口资源对象与所述第一标识信息的映射关系,发送给所述第一网络设备。
  59. 如权利要求58所述的装置,其特征在于,所述目标接口为物理接口,所述第一接 口资源对象为物理子接口、逻辑子接口或者报文队列;或者,
    所述目标接口为绑定接口,所述接口资源对象为物理接口。
  60. 一种网络设备,其特征在于,包括:
    通信接口和处理器;
    所述通信接口,用于接收通信消息;
    所述处理器,用于与所述通信接口通信,根据所述通信消息,实施权利要求1至32任一项所述的方法。
  61. 一种控制器,其特征在于,包括:
    通信接口和处理器;
    所述通信接口,用于接收通信消息;
    所述处理器,用于与所述通信接口通信,根据所述通信消息,并实施权利要求33或权利要求34所述的方法。
  62. 一种包含指令的计算机程序产品,其特征在于,当其在计算机上运行时,使得所述计算机执行如权利要求1至34中任一项所述的方法。
  63. 一种计算机可读存储介质,其特征在于,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至34中任一项所述的方法。
  64. 一种***,其特征在于,包括如权利要求35至57任一所述的装置和如权利要求58-59任一项所述的装置;或者,所述***包括如权利要求60所述的网络设备和如权利要求61所述的控制器。
PCT/CN2020/105671 2019-09-11 2020-07-30 一种数据传输的控制方法及装置 WO2021047321A1 (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
EP20862078.1A EP4024783A4 (en) 2019-09-11 2020-07-30 METHOD AND CONTROL APPARATUS FOR DATA TRANSMISSION
CA3178566A CA3178566A1 (en) 2019-09-11 2020-07-30 Data transmission control method and apparatus
BR112022003763A BR112022003763A2 (pt) 2019-09-11 2020-07-30 Método e dispositivos de controle de transmissão de dados
JP2022515902A JP2022547992A (ja) 2019-09-11 2020-07-30 データ伝送制御方法及び装置
MX2022002913A MX2022002913A (es) 2019-09-11 2020-07-30 Metodo y aparato de control de transmision de datos.
KR1020227009333A KR20220052343A (ko) 2019-09-11 2020-07-30 데이터 전송 제어 방법 및 장치
US17/691,637 US20220200893A1 (en) 2019-09-11 2022-03-10 Data Transmission Control Method and Apparatus
JP2024022118A JP2024069227A (ja) 2019-09-11 2024-02-16 データ伝送制御方法及び装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201910860821.5 2019-09-11
CN201910860821 2019-09-11
CN201911159775.2 2019-11-22
CN201911159775 2019-11-22

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/691,637 Continuation US20220200893A1 (en) 2019-09-11 2022-03-10 Data Transmission Control Method and Apparatus

Publications (1)

Publication Number Publication Date
WO2021047321A1 true WO2021047321A1 (zh) 2021-03-18

Family

ID=74866547

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/105671 WO2021047321A1 (zh) 2019-09-11 2020-07-30 一种数据传输的控制方法及装置

Country Status (9)

Country Link
US (1) US20220200893A1 (zh)
EP (1) EP4024783A4 (zh)
JP (2) JP2022547992A (zh)
KR (1) KR20220052343A (zh)
CN (1) CN112491713B (zh)
BR (1) BR112022003763A2 (zh)
CA (1) CA3178566A1 (zh)
MX (1) MX2022002913A (zh)
WO (1) WO2021047321A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11799757B2 (en) 2021-07-30 2023-10-24 Cisco Technology, Inc. Performance measurement, telemetry, and OAM in MPLS networks using entropy labels

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11706163B2 (en) * 2019-12-20 2023-07-18 The Board Of Trustees Of The University Of Illinois Accelerating distributed reinforcement learning with in-switch computing
EP3958520A1 (en) * 2020-08-19 2022-02-23 Juniper Networks, Inc. Configuration of a network using a flex-algorithm routing mechanism
US11671322B2 (en) * 2020-08-19 2023-06-06 Juniper Networks, Inc. Configuration of a network using a flex-algorithm routing mechanism
US20220247663A1 (en) * 2021-02-04 2022-08-04 Nokia Solutions And Networks Oy Service differentiation based on constrained network topology slicing
CN115242698A (zh) * 2021-04-22 2022-10-25 华为技术有限公司 报文转发方法、装置、网络设备及存储介质
CN115242713A (zh) * 2021-04-22 2022-10-25 ***通信有限公司研究院 基于ipv6的分段路由报文的转发方法、配置方法及设备
CN115334589A (zh) * 2021-05-11 2022-11-11 ***通信有限公司研究院 报文传输方法、装置、相关设备及存储介质
CN115348202A (zh) * 2021-05-12 2022-11-15 ***通信有限公司研究院 基于网络切片的数据传输方法、装置、设备及存储介质
CN113411258B (zh) * 2021-06-07 2024-03-12 新华三技术有限公司 报文处理方法及装置
CN113347682B (zh) * 2021-06-07 2022-07-29 武汉特试特科技有限公司 一种具有自适应通讯避障能力的配电终端方法及设备
CN115473840A (zh) * 2021-06-11 2022-12-13 华为技术有限公司 一种报文发布方法、转发路径处理方法及装置
JP7165784B1 (ja) * 2021-06-24 2022-11-04 ソフトバンク株式会社 通信システム、プログラム、及び通信制御方法
CN113542120B (zh) * 2021-06-29 2023-08-18 新华三大数据技术有限公司 一种路径选择方法及装置、计算机可读存储介质
CN113489613B (zh) * 2021-07-16 2024-03-19 锐捷网络股份有限公司 报文转发方法及装置
CN113556784B (zh) * 2021-07-29 2023-05-26 新华三技术有限公司 网络切片实现方法、装置及电子设备
CN113923161B (zh) * 2021-10-08 2023-08-22 新华三信息安全技术有限公司 一种报文转发方法及装置
WO2023116449A1 (zh) * 2021-12-24 2023-06-29 华为技术有限公司 一种控制网络切片状态的方法及相关设备
CN116781486A (zh) * 2022-03-07 2023-09-19 华为技术有限公司 通信方法、装置、网络设备及***
CN117478577A (zh) * 2022-07-19 2024-01-30 华为技术有限公司 保障网络切片确定性时延的方法、装置、存储介质及产品
CN117714288A (zh) * 2022-09-14 2024-03-15 华为技术有限公司 一种报文处理方法及装置
CN115499358B (zh) * 2022-09-14 2024-05-14 中国电信股份有限公司 SRv6-TE报文转发方法和转发设备
CN115883478B (zh) * 2023-02-21 2023-07-25 北京大学深圳研究生院 一种多标识网络体系中安全高效的传输控制方法及***
CN117097661B (zh) * 2023-10-18 2024-02-20 苏州元脑智能科技有限公司 数据包的转发方法及装置、存储介质、电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2925074A1 (en) * 2014-03-28 2015-09-30 Vodafone GmbH Application aware communication system
CN105075194A (zh) * 2013-03-11 2015-11-18 思科技术公司 有索引的段id
CN109391648A (zh) * 2017-08-04 2019-02-26 华为技术有限公司 一种应用与网络切片的关联方法、装置和通信***
WO2019096380A1 (en) * 2017-11-16 2019-05-23 Huawei Technologies Co., Ltd. Network entity and method for identifier allocating and/or identifier mapping of network services
CN109831382A (zh) * 2019-02-13 2019-05-31 华为技术有限公司 一种路径计算方法、装置及设备

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7336611B1 (en) * 2003-04-30 2008-02-26 Nortel Networks Limited Rate-based multi-level active queue management with drop precedence differentiation
US7266121B2 (en) * 2002-12-27 2007-09-04 Nokia Corporation Flow labels
US7535900B2 (en) * 2003-01-21 2009-05-19 Symmetricom, Inc. Multiple transmission bandwidth streams with defferentiated quality of service
SE526346C2 (sv) * 2003-12-22 2005-08-30 Operax Ab Metod för kontrollera vidarebefordringskvaliteten i ett datanät
US8422500B2 (en) * 2004-07-02 2013-04-16 Rockstar Consortium Us Lp VLAN support of differentiated services
CN1294728C (zh) * 2004-08-05 2007-01-10 华为技术有限公司 边缘路由器提供服务质量保证的方法及***
CN105577406B (zh) * 2014-10-15 2019-02-12 华为技术有限公司 业务数据流的控制方法和网络设备
CN105973244B (zh) * 2015-10-29 2019-06-07 法法汽车(中国)有限公司 获取地图信息的方法、导航方法及设备
CN111865898B (zh) * 2016-03-21 2023-07-21 华为技术有限公司 基于流规则协议的通信方法、设备和***
KR102529714B1 (ko) * 2016-06-15 2023-05-09 인터디지탈 패튼 홀딩스, 인크 네트워크 슬라이스 발견 및 선택
CN112165725B (zh) * 2016-06-15 2024-03-19 华为技术有限公司 报文处理的方法及设备
CN107659419B (zh) * 2016-07-25 2021-01-01 华为技术有限公司 网络切片方法和***
CN108307423B (zh) * 2016-08-26 2023-03-24 中兴通讯股份有限公司 一种无线接入网络切片选择方法和装置
CN108075956B (zh) * 2016-11-16 2020-05-22 新华三技术有限公司 一种数据处理方法和装置
US20180270743A1 (en) * 2017-03-16 2018-09-20 Huawei Technologies Co., Ltd. Systems and methods for indication of slice to the transport network layer (tnl) for inter radio access network (ran) communication
US10432523B2 (en) * 2017-05-31 2019-10-01 Juniper Networks, Inc. Routing protocol signaling of multiple next hops and their relationship
CN109391563B (zh) * 2017-08-08 2022-04-05 华为技术有限公司 一种资源预留方法以及相关设备
CN109861926B (zh) * 2017-11-30 2023-02-07 中兴通讯股份有限公司 报文的发送、处理方法、装置、节点、处理***和介质
CN109996307B (zh) * 2017-12-29 2021-06-01 华为技术有限公司 一种数据路由方法以及终端
CN111385207B (zh) * 2018-12-29 2022-08-19 中兴通讯股份有限公司 一种业务数据的转发方法、网络设备及网络***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105075194A (zh) * 2013-03-11 2015-11-18 思科技术公司 有索引的段id
EP2925074A1 (en) * 2014-03-28 2015-09-30 Vodafone GmbH Application aware communication system
CN109391648A (zh) * 2017-08-04 2019-02-26 华为技术有限公司 一种应用与网络切片的关联方法、装置和通信***
WO2019096380A1 (en) * 2017-11-16 2019-05-23 Huawei Technologies Co., Ltd. Network entity and method for identifier allocating and/or identifier mapping of network services
CN109831382A (zh) * 2019-02-13 2019-05-31 华为技术有限公司 一种路径计算方法、装置及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11799757B2 (en) 2021-07-30 2023-10-24 Cisco Technology, Inc. Performance measurement, telemetry, and OAM in MPLS networks using entropy labels

Also Published As

Publication number Publication date
JP2022547992A (ja) 2022-11-16
EP4024783A4 (en) 2022-09-07
CA3178566A1 (en) 2021-03-18
JP2024069227A (ja) 2024-05-21
BR112022003763A2 (pt) 2022-05-31
CN112491713B (zh) 2024-06-07
EP4024783A1 (en) 2022-07-06
MX2022002913A (es) 2022-04-06
US20220200893A1 (en) 2022-06-23
KR20220052343A (ko) 2022-04-27
CN112491713A (zh) 2021-03-12

Similar Documents

Publication Publication Date Title
WO2021047321A1 (zh) 一种数据传输的控制方法及装置
US9667550B2 (en) Advertising traffic engineering information with the border gateway protocol for traffic engineered path computation
US8867349B2 (en) Regulation of network traffic in virtual private networks
US9215093B2 (en) Encoding packets for transport over SDN networks
US9197568B2 (en) Method for providing quality of service in software-defined networking based network and apparatus using the same
US7903553B2 (en) Method, apparatus, edge router and system for providing QoS guarantee
WO2022166691A1 (zh) 一种业务处理方法、装置、存储介质及电子装置
CN112118178B (zh) 网络装置和用于ip网络中基于类别的流量工程的方法
CN111837368B (zh) 使用内部网关协议通告和编程优选路径路由
WO2021244487A1 (zh) 一种确定处理能力的方法、节点和***
CN114710975A (zh) 多域间传输多传输网络上下文标识
US11770465B2 (en) Supporting multiple transport options for border gateway protocol
Liers et al. The forwarding on gates architecture: Merging intserv and diffserv
Eckert et al. Preferred path routing (ppr) graphs-beyond signaling of paths to networks
WO2023279818A1 (zh) 确定性流的转发方法及装置、存储介质及电子装置
WO2024027378A1 (zh) 数据传输方法、装置、网络设备及存储介质
US20230336471A1 (en) Methods, apparatus and system for creating sr policy using path computation element protocol
CN118264613A (zh) 自动路径构建和路由
Mahmoud King Fahd University of Petroleum & Minerals Computer Engineering Dept p g g p
Berioli et al. The ETSI BSM architecture for quality of service
Tasir Enhancing OSPF to provide adaptive traffic distribution with networks for improved QoS performance
Lee et al. Network Architectures and Protocols for Multimedia Transmissions with QoS support
Casaca Quality of Service in Information Networks

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: 20862078

Country of ref document: EP

Kind code of ref document: A1

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112022003763

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 2022515902

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20227009333

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2020862078

Country of ref document: EP

Effective date: 20220330

ENP Entry into the national phase

Ref document number: 112022003763

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20220225

ENP Entry into the national phase

Ref document number: 3178566

Country of ref document: CA