WO2024174668A1 - Information transmission method and related device - Google Patents
Information transmission method and related device Download PDFInfo
- Publication number
- WO2024174668A1 WO2024174668A1 PCT/CN2023/136634 CN2023136634W WO2024174668A1 WO 2024174668 A1 WO2024174668 A1 WO 2024174668A1 CN 2023136634 W CN2023136634 W CN 2023136634W WO 2024174668 A1 WO2024174668 A1 WO 2024174668A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- controller
- capability
- capabilities
- protocol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/24—Negotiation of communication capabilities
Definitions
- the embodiments of the present application relate to the field of communications, and in particular, to an information transmission method and related equipment.
- Segment routing is a protocol designed based on the concept of source routing to forward data packets on the network.
- SR divides the network path into segments and assigns segment IDs (SIDs) to these segments and network nodes.
- SIDs segment IDs
- a forwarding path can be obtained, indicating that the message follows the specified forwarding path to be transmitted in the network node.
- the SID also carries a behavior attribute to instruct the network node to perform the corresponding behavior, and the network node needs to be able to support the behavior.
- a network node may support different capabilities. If a network node does not support a certain capability, and the SID sent by the controller indicates that the behavior executed by the network node needs to support the capability, the forwarding path will be blocked.
- the embodiment of the present application provides an information transmission method and related equipment, which are used to avoid the problem of forwarding path failure when the controller sends a segment list to the network node.
- the embodiment of the present application also provides a corresponding controller, a network node and a computer-readable storage medium.
- the first aspect of the present application provides an information transmission method, which includes: a controller receives capability information reported by a first node, the capability information includes behavioral capabilities supported by the first node; the controller sends a first segment list to the first node based on the capability information, the first segment list includes one or more first segment identifiers.
- the controller and the network node are used as the execution subjects of the interactive schematic to illustrate the method, but this application does not limit the execution subjects of the interactive schematic.
- the controller can also be a chip, a chip system, or a processor that supports the controller implementation method, and can also be a logical node, a logical module, or software that can implement all or part of the controller function
- the network node can also be a chip, a chip system, or a processor that supports the network node implementation method, and can also be a logical node, a logical module, or software that can implement all or part of the network node function.
- SR Policy segment routing policy
- SR Policy divides the network path into segments and assigns segment IDs (SIDs) to these segments and network nodes (referred to as nodes).
- SIDs segment IDs
- nodes network nodes
- SIDs segment IDs
- a forwarding path (which can also be a candidate path) can be obtained, indicating that the message follows the specified forwarding path to be transmitted in the network node.
- the network may be a routing network
- the network includes a controller and multiple network nodes
- the controller is an independent controller, specifically a network control engine (NCE) or a computer device
- the network node may be regarded as a forwarding device, specifically a router or a switch.
- NCE network control engine
- the SR Internet Protocol version 6 in this application is segment routing over IPv6 (SRv6).
- SRv6 segment routing over IPv6
- a network node may support multiple different behavioral capabilities. After receiving capability information including behavioral capabilities supported by a first node, the controller will issue a first segment list to the first node based on the capability information when it needs to issue the first segment list to the first node in the future, wherein the first segment list includes one or more first segment identifiers.
- the controller receives the behavior capabilities supported by the first node reported by the first node, and sends a first segment list to the first node based on the supported behavior capabilities, wherein the first segment list includes one or more first segment identifiers, that is, before sending the segment list to the node, the controller will first determine the behavior capabilities supported by the node.
- the controller can send the first segment list based on the behavior capabilities supported by the node and actual needs to ensure that the forwarding path will not fail.
- behavior capabilities required by the behavior attributes identified by the one or more first segments do not include behavior capabilities that are not supported by the first node.
- the controller before sending the segment list to the node, the controller will first determine the behavioral capabilities supported by the node and the behavioral capabilities required by each segment identifier in the segment list.
- the segment list will be sent down only when the node has the behavioral capabilities required by each segment identifier, thereby ensuring that the forwarding path will not fail, thereby improving the feasibility of the solution.
- the behavior capability supported by the first node includes at least one of a compression capability, an encapsulation capability, and an adhesion capability.
- the first node supports multiple types of behavioral capabilities, and the first node can report to the controller the specific behavioral capabilities it has or does not have, thereby improving the feasibility of the solution.
- the controller and the first node communicate based on a preset communication protocol
- the preset communication protocol includes any one of the Intermediate System to Intermediate System ISIS protocol, the Open Shortest Path First OSPFv3 version 3 protocol, the BGP Link State BGP-LS protocol, or the Path Computation Unit Communication PCEP protocol.
- the controller and the first node can communicate based on a variety of different communication protocols.
- the corresponding capability information that needs to be reported can also be adjusted accordingly, thereby improving the feasibility of the solution.
- the capability information is included in a structure data TLV, a sub-TLV, or a sub-sub-TLV newly added under a preset communication protocol.
- the capability information can be included in the newly added structure data TLV, sub-TLV or sub-sub-TLV under the preset communication protocol, thereby improving the feasibility of the solution.
- the capability information also includes behavioral capabilities supported by the second node, and the behavioral capabilities supported by the second node are sent by the second node to the first node.
- the method also includes: the controller sends a second segment list to the second node based on the capability information, and the second segment list includes one or more second segment identifiers. The behavioral capabilities required by the behavioral attributes of the one or more second segment identifiers do not include behavioral capabilities that are not supported by the second node.
- the first node can also receive capability information supported by the remote node and report it to the controller.
- the controller can determine the behavioral capabilities supported by the first node and the second node respectively based on the capability information, and send down different segment lists in a targeted manner, thereby avoiding multiple nodes communicating with the controller multiple times separately and saving network resources.
- a second aspect of the present application provides an information transmission method, which includes: a first node sends capability information to a controller, the capability information includes behavioral capabilities supported by the first node; the first node receives a first segment list sent by the controller, the first segment list includes one or more first segment identifiers.
- behavior capabilities required by the behavior attributes of the one or more first segment identifiers do not include behavior capabilities that are not supported by the first node.
- the behavior capability supported by the first node includes at least one of a compression capability, an encapsulation capability, and an adhesion capability.
- the controller and the first node communicate based on a preset communication protocol
- the preset communication protocol includes any one of the Intermediate System to Intermediate System ISIS protocol, the Open Shortest Path First OSPFv3 version 3 protocol, the BGP Link State BGP-LS protocol, or the Path Computation Unit Communication PCEP protocol.
- the capability information is included in a structure data TLV, a sub-TLV, or a sub-sub-TLV newly added under a preset communication protocol.
- the method also includes: the first node receives the behavior capabilities supported by the second node sent by the second node, so that the controller sends a second segment list to the second node according to the capability information, the capability information also includes the behavior capabilities supported by the second node, the second segment list includes one or more second segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more second segment identifiers do not include behavior capabilities not supported by the second node.
- the third aspect of the present application provides a controller, including: a receiving unit, used to receive capability information reported by a first node, the capability information including behavioral capabilities supported by the first node; a sending unit, used to send a first segment list to the first node according to the capability information, the first segment list including one or more first segment identifiers.
- the controller of the third aspect of the present application executes the method in the first aspect of the present application or any possible implementation of the first aspect.
- a fourth aspect of the present application provides a network node, comprising: a sending unit, configured to send capability information to a controller, wherein the capability information includes a behavior capability supported by a first node; a receiving unit, configured to receive a first segment list sent by the controller, wherein the first segment list includes one or more The first paragraph identifies.
- the network node in the fourth aspect of the present application executes the method in the second aspect of the present application or any possible implementation manner of the second aspect.
- the present application provides a controller, comprising: a processor, a communication interface and a memory, wherein the memory is used to store program code, and the processor is used to call the program code in the memory so that the controller executes the method in the first aspect or any possible implementation of the first aspect.
- the present application provides a network node, comprising: a processor, a communication interface and a memory, wherein the memory is used to store program code, and the processor is used to call the program code in the memory so that the network node executes the method in the second aspect of the present application or any possible implementation of the second aspect.
- a seventh aspect of the present application provides a computer-readable storage medium, comprising instructions, which, when executed on a computer, enable the computer to execute a method as in the first aspect or any possible implementation of the first aspect.
- An eighth aspect of the present application provides a computer-readable storage medium, comprising instructions, which, when executed on a computer, enable the computer to execute a method as in the second aspect or any possible implementation of the second aspect.
- a ninth aspect of the present application provides a computer program product storing one or more computer-executable instructions.
- the processor executes a method as described in the first aspect or any possible implementation of the first aspect.
- the tenth aspect of the present application provides a computer program product storing one or more computer-executable instructions.
- the processor executes a method as described in the second aspect or any possible implementation of the second aspect.
- a chip system which includes at least one processor and an interface, the interface is used to receive data and/or signals, and at least one processor is used to support a computer device to implement the functions involved in the above-mentioned first aspect or any possible implementation of the first aspect.
- the chip system may also include a memory, which is used to store program instructions and data necessary for the computer device.
- the chip system can be composed of chips, or it can include chips and other discrete devices.
- the twelfth aspect of the present application provides a chip system, which includes at least one processor and an interface, the interface is used to receive data and/or signals, and at least one processor is used to support a computer device to implement the functions involved in the above-mentioned second aspect or any possible implementation of the second aspect.
- the chip system may also include a memory, which is used to store program instructions and data necessary for the computer device.
- the chip system can be composed of chips, or it can include chips and other discrete devices.
- the thirteenth aspect of the present application provides a communication system, which includes the controller provided by the third aspect of the present application and the network node provided by the fourth aspect of the present application.
- the fourteenth aspect of the present application provides a communication system, which includes the controller provided by the fifth aspect of the present application and the network node provided by the sixth aspect of the present application.
- Figure 1 is an architecture diagram for issuing SR Policy in the network
- FIG2 is a schematic diagram of a structure of a network node
- FIG3 is another schematic diagram of the structure of a network node
- FIG4 is a schematic diagram of network node encapsulation capabilities
- FIG5 is a schematic diagram of the compression capability of a network node
- FIG6 is a schematic diagram showing the relationship between a segment identifier and a general segment identifier
- FIG7 is a schematic diagram of a network architecture in which network nodes do not have compression capabilities
- FIG8 is a schematic diagram of a network architecture in which network nodes do not have encapsulation capabilities
- FIG9 is a schematic diagram of an embodiment of an information transmission method provided in an embodiment of the present application.
- FIG13 is a schematic diagram of another embodiment of the information transmission method provided in an embodiment of the present application.
- FIG14 is a schematic diagram of a network architecture of an information transmission method provided in an embodiment of the present application.
- FIG15 is a schematic diagram of a structure of a controller provided in an embodiment of the present application.
- FIG16 is a schematic diagram of a structure of a network node provided in an embodiment of the present application.
- FIG17 is another schematic diagram of the structure of the controller provided in an embodiment of the present application.
- FIG18 is another schematic diagram of the structure of a network node provided in an embodiment of the present application.
- FIG19 is a schematic diagram of the structure of a communication system provided in an embodiment of the present application.
- the embodiment of the present application provides an information transmission method and related equipment, which are used to avoid the problem of forwarding path failure when the controller sends a segment list to the network node.
- the embodiment of the present application also provides a corresponding controller, a network node, and a computer-readable storage medium, etc. The following are detailed descriptions.
- SR segment routing
- SR Policy segment routing policy
- the network node may include a main control board 210 and an interface board 220, the main control board 210 and the interface board 220 are connected, the main control board 210 includes a first processor 211 and a first memory 212, the first processor 211 and the first memory 212 are connected, the interface board 220 includes a second processor 221, a second memory 222 and an interface card 223, the second processor 221 and the second memory 222 are connected, and the second memory 222 and the interface card 223 are connected.
- the first processor 211 is used to call the program instructions in the first memory 212 to perform the corresponding processing function
- the second processor 221 is used to call the program instructions in the second memory 222 to perform the reception and transmission of the message
- the interface card 223 is used to connect to an external device to receive data.
- the network node may include a transceiver 302, a processor 301, a memory 303 and a bus 304.
- the transceiver 302 is used to receive and send messages
- the memory 303 is used to store program instructions
- the processor 301 is used to call the program instructions in the memory 303 to perform corresponding processing functions.
- the network includes network nodes P1, P2, PE1, PE2, PE3, PE4, CE1 and CE2.
- the controller completes the entire network topology collection through network node PE3, thereby determining the forwarding path.
- the data of network node CE2 will be sent to network node CE1 according to the specified forwarding path.
- SR can be based on Internet protocol version 4 (internet protocol version 4, IPv4) or Internet protocol version 6 (internet protocol version 6, IPv6).
- IPv4 Internet protocol version 4, IPv4
- IPv6 Internet protocol version 6
- SR can be expressed as segment routing over IPv4 (segment routing over IPv4, SRv4) or segment routing over IPv6 (segment routing over IPv6, SRv6).
- SRv6 Segment is in the form of an IPv6 address, which is also commonly referred to as an SRv6 SID.
- the SRv6 SID is determined by the locator.
- the format is Locator:Function, where the Locator occupies the high bits of the IPv6 address and the Function part occupies the rest of the IPv6 address. Locator has a positioning function, so it is generally unique in the SR domain. After the node is configured with Locator, the system will generate a Locator network segment route and spread it in the SR domain. Other nodes in the network can locate this node through the Locator network segment route, and all SRv6 SIDs published by this node can also be reached through this Locator network segment route.
- Function represents the device's instructions, which are pre-set by the device.
- the Function part is used to instruct the SRv6 SID generation node to perform corresponding functional operations.
- the Function part can also be divided into an optional parameter segment (Arguments).
- the format of the SRv6 SID becomes Locator:Function:Arguments.
- Arguments occupy the low bits of the IPv6 address.
- the Arguments field can be used to define some message flows and services.
- network nodes may support a variety of different behavioral capabilities, such as compression capability, encapsulation capability, and adhesion capability, which are described below.
- the extended header can be encapsulated through the source node (starting node) or the end node (terminating node) in the network node.
- SRH The extended header
- Insert Specify the SRv6 SID stack encapsulation mode as insert mode, and copy the SID to the SRH header.
- the transmitted information is a message, which includes a message header and a payload.
- the source address (SA) of the IPv6 message header is CE1
- the destination address (DA) is CE2.
- An SRH carrying label stack (CE2, B:13::1:0, B:12::1:0, B:11::1:0) is inserted after the IPv6 header of the data message, and the destination address of the current IPv6 message header is modified to the first SID (B::11:1:0), that is, segment list [SL].
- the new IPv6 message is forwarded by table lookup.
- the forwarding path will indicate node 11, node 12, node 13, and finally reach node CE2.
- Insert mode will continuously modify the destination address (DA) field of the original IPv6 packet header.
- DA destination address
- the original IPv6 packet DA will be placed in segment list[0].
- the penultimate segment pop of the SRH PSP
- the command operation is executed to clear the SRH and perform corresponding operations on the new IPv6 packet header.
- Encap Specify the SRv6 SID stack encapsulation mode as encaps mode, which will add an IPv6 header (the SID will not be copied to the newly added SRH header).
- SA source address
- DA destination address
- a new set of IPv6 headers and SRH headers are encapsulated. The source address in the new IPv6 message is set to the current node address, and the destination address is set to the first SID. After configuring other fields, the new IPv6 message is forwarded by table lookup.
- the content in the message header can refer to Insert.
- the Encap mode is to add a new IPv6 message header.
- the original DA does not need to be encapsulated during encapsulation.
- USD is configured for the SID of segment list[0].
- the first SID is not encapsulated in the SRH.
- the length of the SRH can be reduced without affecting service forwarding.
- the SRH extension header itself occupies a long length, and when the SRv6 source node encapsulates the SRH, it has already encapsulated the first SID to be processed into the destination address field of the IPv6 packet header. Therefore, the first SID in the SRH is no longer meaningful for forwarding.
- the SRv6 source node can use the Reduced SRH mode when encapsulating the SRH, that is, the first SID to be processed is not encapsulated. If the SRH itself has only one SID, then according to the standard, the SRH extension header can be not encapsulated.
- the SRH (segment routing header) extended header is a key extension to implement SRv6.
- the SRv6 head node will encapsulate the outer IPv6 header and SRH extended header on the message before forwarding it, but this brings a certain header overhead, and when the number of SRv6 SIDs is large, the length of the SRH extended header will further increase. This may cause the following problems: 1. Decreased payload efficiency: The message header added by SRv6 is a transmission overhead. When the number of SIDs in the SRH is large, the header length increases and the payload ratio decreases, resulting in low transmission efficiency. 2.
- MTU The maximum transmission unit limits message forwarding. MTU refers to the maximum data packet size that the network can transmit. The size of MTU determines the maximum number of bytes that the sender can send at one time. Because of the increase in the SRv6 message header, the size of the final generated SRv6 message may exceed the MTU limit, causing fragmentation or packet loss in the middle.
- G-SRv6 is an SRv6-compatible SRH compression solution.
- G-SRv6 not only supports SRH compression and reduces SRv6 header overhead, but can also be mixed with traditional SRv6 SIDs in one SRH, thus supporting the smooth evolution of SRv6 from non-compression to compression solutions.
- G-SRv6 is mainly divided into two parts: SRv6 SRH compression and compatibility with traditional SRv6.
- the principle of SRv6 SRH compression is based on the regularity of the SRv6 SID format. The redundant information of the segment list in the SRH is stripped off, and only the changed part is carried, thereby reducing the header overhead and achieving compression.
- Flavor includes PSP, the last segment performs SRH removal operation (ultimate segment POP of the SRH, USP), the last segment performs outer IPv6 decapsulation operation (ultimate segment decapsulation, USD), continue compression (COC) and shift (Next) and other types.
- SIDs in the SRv6 domain are all allocated from the SID address block, so these SIDs all have a common prefix (CP). If the SID in the destination address of the IPv6 message header already carries a common prefix, then the SID in the SRH only needs to carry the difference part. In this way, when the address is updated, the difference part is updated to the destination address of the IPv6 message header to completely restore the original SID.
- This difference part is called a generalized segment identifier (G-SID) in Generalized SRv6 Network Programming (G-SRv6). As shown in Figure 6, the relationship between the full SID and the 32-bit G-SID is shown. Arguments or blank padding are also set in the SID.
- Binding SID is used to provide network expansion capabilities, network internal invisibility, and service independence. Specifically, Binding SID (BSID) is used to identify the entire candidate path, provide tunnel connection, traffic guidance and other functions. If the message carries the BSID corresponding to the candidate path, it will be directed to the corresponding candidate path. If SRv6 Policy is regarded as a network service, then Binding SID is the interface to access this service. Therefore, the design of SRv6 Policy is a subscription and publication model. The business subscribes to the network service according to its own needs, and the network can provide the interface of the connection service it provides to the business.
- BSID traffic diversion is a data plane traffic diversion method used in scenarios where the service head node and the SRv6 Policy head node are not the same node. For example: providing SRv6 Policy connection services across management domains, or SRv6 Policy as a sub-path of an end-to-end path.
- a network node may support different capabilities. If a network node does not support a certain capability, and the SID sent by the controller indicates that the behavior executed by the network node needs to support the capability, the forwarding path will be blocked.
- SRv6 tunnel from node 0 to node 9, where head node 0 is a device from manufacturer A, and node 3 and node 5 are devices from manufacturer B.
- the device from manufacturer B sends a SID containing next.
- the device from manufacturer A does not support next intercommunication and cannot perform next-format compression on the 128-bit SID sent by the controller. If the controller does not perceive that head node 0 does not support next compression, the label stack sent to head node 0 contains node 3 and node 5, and the flavors of node 3 and node 5 also have the next attribute. Head node 0 cannot perform next-format compression on the label stack, and the SRv6 tunnel path is blocked (down).
- SRv6 tunnel from 0 to 9, where head node 0 is an old version device and does not have the encap capability.
- Node 9 is a new version device with the encap capability and supports publishing SIDs with PSP-USP-USD attributes. If the controller does not perceive that head node 0 does not have the encap capability, the label stack sent to head node 0 contains node 9, and the flavor of node 9 is psp-usp-usd. The old version of the head node cannot encap the label stack, and the SRv6 tunnel is down.
- the controller needs to sense which node in the network has the BSID adhesion capability in order to send the BSID.
- the current implementation is to manually specify which nodes the controller sends the BSID to, or the controller reads the SR Policy and other configurations of the network device and then tries to send the BSID. After the node reports the adhesion capability, it is convenient for the controller to send it, but when there are many nodes and many hops in the network, the current implementation has problems such as high maintenance cost and long time consumption.
- sending information to... e.g., a node/sending information to
- sending information to... can be understood as the destination of the information being a node. It can include sending information to a node directly or indirectly.
- receiving information from... e.g., a node/receiving information sent by
- the information may be processed as necessary between the source and destination of the information, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be understood similarly and will not be repeated here.
- the schematic diagram of the method in this application uses the controller and the network node as the execution subject of the interactive diagram as an example to illustrate the method, but this application does not limit the execution subject of the interactive diagram.
- the controller in the figure can also be a chip, chip system, or processor that supports the controller to implement the method, or a logical node, logic module, or software that can implement all or part of the controller function;
- the network in the figure can also be a logical node, logic module, or software that can implement all or part of the controller function.
- the node may also be a chip, a chip system, or a processor that supports the network node implementation method, or may be a logical node, a logical module, or software that can implement all or part of the network node functions.
- an embodiment of the information transmission method provided in the embodiment of the present application includes:
- a first node sends capability information to a controller.
- the controller sends a first segment list to the first node according to the capability information.
- node PE3 is the first node
- the first node sends capability information to the controller, wherein the capability information includes the behavior capabilities supported by the first node, and after receiving the capability information, the controller will issue the first segment list to the first node based on the capability information when it needs to issue the first segment list to the first node in the future, wherein the first segment list includes one or more first segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more first segment identifiers issued by the controller to the first node do not include behavior capabilities not supported by the first node.
- the behavior capabilities supported by the first node include at least one of compression capability, encapsulation capability and adhesion capability.
- the reported behavior capabilities include but are not limited to G-SID 32bit compression capability, G-SID 16bit compression capability, micro segment identifier (micro SID, uSID) 16bit compression capability, uSID 32bit compression capability, insert, encap or reduce encapsulation capability and Binding SID adhesion capability.
- the capability information can be included in the newly added structure data (type-length-value, TLV), sub-TLV or sub-sub-TLV under the preset communication protocol, and the controller and the first node can communicate based on the preset communication protocol. The following is a detailed description based on different communication protocols.
- IS-IS Intermediate system to intermediate system protocol
- sub-sub TLV sub-sub TLV
- SRv6Capabilities No. 25 of IS-IS routing capability (Router Capability) No. 242 in the protocol number to carry the supported SRv6 compression, encapsulation, Binding SID adhesion and other behavioral capabilities, that is, capability information, so as to publish, parse and flood (synchronize) the supported SRv6 compression, encapsulation, Binding SID adhesion and other behavioral capabilities of the first node within the ISIS level.
- the newly added extended sub-sub TLVs of SRv6Capabilities sub-TLV include but are not limited to the following sub-sub TLVs: 32-bit compression capability sub-sub TLV, 16-bit compression capability sub-sub TLV, encapsulation capability sub-sub TLV, Binding SID adhesion capability sub-sub TLV, etc.
- 32-bit compression means that the length of the compressed SID is fixed to 32 bits
- 16-bit compression means that the length of the compressed SID is fixed to 16 bits.
- each sub-sub TLV bits are used to identify specific various behavior capabilities.
- the length of each sub-sub TLV is 2, and 16 bits are used to identify such behavior capabilities; or as shown in FIG11 , the length is 4, and 32 bits are used to identify such behavior capabilities.
- the 32-bit compression capability includes, but is not limited to: 32-bit next compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 32-bit format in the form of next), 32-bit coc compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 32-bit format in the form of coc), whether the format after 32-bit next compression under the controller can be forwarded (the controller sends a SID label stack compressed 32 bits in the form of next, whether the node can forward it normally), whether the format after 32-bit coc compression under the controller can be forwarded (the controller sends a SID label stack compressed 32 bits in the form of coc, whether the node can forward it normally), etc.
- the 16-bit compression capability includes but is not limited to: 16-bit next compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 16-bit format in the form of next), 16-bit coc compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 16-bit format in the form of coc), whether the format after 16-bit next compression under the controller can be forwarded (the controller sends a SID label stack compressed 16 bits in the form of next, whether the node can forward it normally), whether the format after 16-bit coc compression under the controller can be forwarded (the controller sends a SID label stack compressed 16 bits in the form of coc, whether the node can forward it normally), etc.
- Encapsulation capabilities include but are not limited to: encap, insert, reduce, etc.
- Binding SID adhesion capabilities include but are not limited to: node adhesion capabilities.
- OSPFv3 Open Shortest Path First v3
- a new type of sub TLV can be added under the SRv6Capabilities TLV of the OSPFv3Router Information LSA (used to describe the status of all interfaces of the node) in the protocol number to carry the supported SRv6 compression, encapsulation, Binding SID adhesion capabilities and other behavioral capabilities, so as to publish, parse and flood the supported SRv6 compression, encapsulation, Binding SID adhesion capabilities and other behavioral capabilities of the first node in the OSPFv3 area.
- LSA used to describe the status of all interfaces of the node
- the newly added extended sub TLVs of SRv6Capabilities TLV include but are not limited to the following sub TLVs: 32-bit compression capability sub TLV, 16-bit compression capability sub TLV, encapsulation capability sub TLV, Binding SID adhesion capability sub TLV, etc.
- sub TLV bits are used to identify specific capabilities.
- each sub TLV has a length of 4 and 32 bits to identify this type of behavior capability.
- 32-bit compression capability 16-bit compression capability
- encapsulation capability encapsulation capability
- Binding SID adhesion capability refer to the corresponding description of the ISIS protocol.
- Border Gateway Protocol-Link State (BGP-LS)
- the first node where BGP-LS is deployed can report the first node's SRv6 compression, encapsulation, Binding SID adhesion capabilities and other behavioral capabilities to the controller through BGP-LS.
- the newly added extended top-level TLVs include but are not limited to the following top-level TLVs: 32-bit compression capability sub TLV, 16-bit compression capability sub TLV, encapsulation capability sub TLV, Binding SID adhesion capability sub TLV, etc.
- each sub TLV bits are used to identify specific various behavior capabilities.
- Each sub TLV has a length of 4 and 32 bits to identify such capabilities.
- 32-bit compression capability 16-bit compression capability, encapsulation capability, and Binding SID adhesion capability, refer to the corresponding description of the ISIS protocol.
- PCEP Path Computation Element Communication Protocol
- the first node where PCEP is deployed can report the SRv6 compression, encapsulation, Binding SID adhesion and other behavioral capabilities supported by the first node to the controller through PCEP.
- the behavioral capabilities will be carried in the sub-TLV newly added under PATH-SETUP-TYPE-CAPABILITY TLV No. 34 in the protocol number (TLV used to indicate support for path creation capabilities).
- the newly added extended sub TLVs of PATH-SETUP-TYPE-CAPABILITY TLV No. 34 include but are not limited to the following sub TLVs: 32-bit compression capability sub TLV, 16-bit compression capability sub TLV, encapsulation capability sub TLV, Binding SID adhesion capability sub TLV, etc.
- each sub TLV bits are used to identify specific behavior capabilities.
- Each sub TLV has a length of 4 and 32 bits are used to identify such behavior capabilities.
- the controller will issue an SRv6 SID label stack to the first node based on the received SRv6 compression, encapsulation, Binding SID adhesion capability and other capability information supported by the first node, that is, issue an SL, wherein the SID of the SRv6 label stack issued by the controller to the first node will not contain the SID of the SRv6 compression, encapsulation, Binding SID adhesion capability that the first node does not support.
- the behavior capabilities required by the behavior attributes of the SID in the SRv6 label stack issued by the controller to the first node do not include the behavior capabilities such as SRv6 compression, encapsulation or Binding SID adhesion capability that the first node does not support.
- the controller will issue the SR Policy label stack to the node according to the original policy.
- the capability information sent by the first node to the controller may also include behavior capabilities not supported by the first node to facilitate the judgment of the controller.
- the first node in a scenario of communication based on the above-mentioned IS-IS protocol, OSPFv3 protocol or BGP-LS protocol, can also receive capability information reported from the remote node and send it to the controller together, that is, the capability information sent by the first node also includes behavioral capabilities supported by the second node.
- the controller can also send the second segment list to the second node based on the capability information.
- the second segment list includes one or more second segment identifiers, and the behavioral capabilities required by the behavioral attributes of the one or more second segment identifiers do not include behavioral capabilities that are not supported by the second node.
- a first node receives a behavior capability supported by a second node and sent by the second node.
- the first node sends capability information to the controller.
- the controller sends a first segment list to the first node according to the capability information.
- the controller sends a second segment list to the second node according to the capability information.
- step 203 and step 204 is not limited.
- each network node floods the supported SRv6 compression, encapsulation, Binding SID adhesion and other capabilities through the interior gateway protocol (IGP) protocol in the IGP domain.
- IGP interior gateway protocol
- the node deployed with BGP-LS reports the supported SRv6 compression, encapsulation, Binding SID adhesion and other capability information of its own node and the received remote node to the controller.
- the controller will issue the SID label stack to the node based on the received SRv6 compression, encapsulation, Binding SID adhesion and other capability information supported by the node.
- the head node 0 is initially an old version device, which does not support the next compression capability and the encap encapsulation capability.
- Node 0 parses, publishes, and floods the supported capability information in the IGP domain through the above-mentioned ISIS/OSPFv3 extension protocol, and reports it to the controller through the BGP-LS extension protocol.
- the capability information supported by node 0 does not include the next compression capability and the encap encapsulation capability.
- the controller then sends the SR Policy label stack to the node based on the capability information, and the label stack will not contain SIDs with the usp and next behavior attributes.
- the head node 0 is upgraded to a new version device, which supports the next compression capability and the encap encapsulation capability.
- Node 0 will parse, publish, and flood the capability information of supporting the next compression capability and the encap encapsulation capability in the IGP domain through the ISIS/OSPFv3 extension protocol, and report it to the controller through the BGP-LS extension protocol.
- the controller sends the SR Policy label stack to the node, which may contain SIDs with usp and next behavior attributes.
- the controller receives the behavior capabilities supported by the first node reported by the first node, and sends the first segment list to the first node according to the supported behavior capabilities, wherein the first segment list includes one or more first segment identifiers, that is, before sending the segment list to the node, the controller will first determine the behavior capabilities supported by the node and the behavior capabilities required by each segment identifier in the segment list, and only send the segment list when the node has the behavior capabilities required by each segment identifier, so as to ensure that the forwarding path will not fail.
- an embodiment of a controller 1500 in the embodiment of the present application includes:
- the receiving unit 1501 is used to receive capability information reported by the first node, where the capability information includes behavior capabilities supported by the first node; the receiving unit 1501 can be used to execute step 101 or step 202 in the aforementioned method embodiment.
- the sending unit 1502 is configured to send a first segment list to the first node according to the capability information, wherein the first segment list includes one or more first segment identifiers.
- the sending unit 1502 may be configured to execute step 102 or step 203 in the above method embodiment.
- the behavior capabilities required by the behavior attributes identified by one or more first segments do not include behavior capabilities that are not supported by the first node.
- the behavior capabilities supported by the first node include at least one of compression capability, encapsulation capability, and adhesion capability.
- the controller 1500 and the first node communicate based on a preset communication protocol
- the preset communication protocol includes any one of the Intermediate System to Intermediate System ISIS protocol, the Open Shortest Path First OSPFv3 version 3 protocol, the BGP Link State BGP-LS protocol, or the Path Computation Unit Communication PCEP protocol.
- the capability information is included in a structure data TLV, sub-TLV or sub-sub-TLV newly added under the preset communication protocol.
- the capability information also includes the behavior capabilities supported by the second node, and the behavior capabilities supported by the second node are sent by the second node to the first node.
- the sending unit 1502 is also used to send a second segment list to the second node according to the capability information, and the second segment list includes one or more second segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more second segment identifiers do not include behavior capabilities that are not supported by the second node.
- the sending unit 1502 can also be used to execute step 204 in the aforementioned method embodiment.
- the controller 1500 provided in the embodiment of the present application can be understood by referring to the corresponding content of the aforementioned information transmission method embodiment.
- the controller 1500 is the controller in the aforementioned information transmission method embodiment, and will not be repeated here.
- an embodiment of a network node 1600 in an embodiment of the present application includes:
- the sending unit 1601 is used to send capability information to the controller, where the capability information includes the behavior capabilities supported by the first node; the sending unit 1601 can be used to execute step 101 or step 202 in the aforementioned method embodiment.
- the receiving unit 1602 is configured to receive a first segment list sent by the controller, wherein the first segment list includes one or more first segment identifiers.
- the receiving unit 1602 may be configured to execute step 102 or step 203 in the above method embodiment.
- the behavior capabilities required by the behavior attributes identified by one or more first segments do not include behavior capabilities that are not supported by the first node.
- the behavior capabilities supported by the first node include at least one of compression capability, encapsulation capability, and adhesion capability.
- the controller and the first node communicate based on a preset communication protocol
- the preset communication protocol includes an intermediate system to intermediate system ISIS protocol, an open shortest path first OSPFv3 protocol version 3, a BGP link state BGP-LS protocol, or a path computation unit communication PCEP protocol. Any item in the Agreement.
- the capability information is included in a structure data TLV, sub-TLV or sub-sub-TLV newly added under the preset communication protocol.
- the receiving unit 1602 is further used to receive the behavior capabilities supported by the second node sent by the second node, so that the controller sends a second segment list to the second node according to the capability information, the capability information also includes the behavior capabilities supported by the second node, the second segment list includes one or more second segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more second segment identifiers do not include behavior capabilities not supported by the second node.
- the receiving unit 1602 can also be used to execute step 201 in the aforementioned method embodiment.
- the network node 1600 provided in the embodiment of the present application can be understood by referring to the corresponding content of the aforementioned information transmission method embodiment.
- the network node 1600 is the first node or the second node in the aforementioned information transmission method embodiment, and will not be repeated here.
- the controller 1700 includes: a processor 1701, a communication interface 1702, a storage system 1703 and a bus 1704.
- the processor 1701, the communication interface 1702 and the storage system 1703 are interconnected through the bus 1704.
- the processor 1701 is used to control and manage the actions of the controller 1700.
- the processor 1701 is used to execute the information transmission method performed by the controller described in the above embodiment.
- the communication interface 1702 is used to support the controller 1700 to communicate.
- the storage system 1703 is used to store the program code and data of the controller 1700.
- the processor 1701 can be a central processing unit, a general processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application.
- the processor 1701 can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like.
- the bus 1704 can be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc.
- PCI peripheral component interconnect standard
- EISA Extended Industry Standard Architecture
- the bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in FIG. 17, but it does not mean that there is only one bus or one type
- the network node 1800 includes: a processor 1801, a communication interface 1802, a storage system 1803 and a bus 1804.
- the processor 1801, the communication interface 1802 and the storage system 1803 are interconnected via the bus 1804.
- the processor 1801 is used to control and manage the actions of the network node 1800.
- the processor 1801 is used to execute the information transmission method performed by the network node described in the above embodiment.
- the communication interface 1802 is used to support the network node 1800 to communicate.
- the storage system 1803 is used to store the program code and data of the network node 1800.
- the processor 1801 can be a central processing unit, a general processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application.
- the processor 1801 can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like.
- the bus 1804 can be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc.
- PCI peripheral component interconnect standard
- EISA Extended Industry Standard Architecture
- the bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in Figure 18, but it does not mean that there is only one bus or one type of
- an embodiment of the present application further provides a communication system, which includes a controller 1910 and a network node 1920 .
- the controller 1910 may be a controller as shown in FIG. 15 or a controller as shown in FIG. 17 .
- the controller 1910 includes: a processor 1911, a communication interface 1912, a storage system 1913, and a bus 1914.
- the processor 1911, the communication interface 1912, and the storage system 1913 are interconnected via the bus 1914.
- the processor 1911 is used to control and manage the actions of the controller 1910.
- the processor 1911 is used to execute the information transmission method executed by the controller described in the above embodiment.
- the communication interface 1912 is used to support the controller 1910 to communicate.
- the storage system 1913 is used to store the program code and data of the controller 1910.
- the network node 1920 may be a controller as shown in FIG. 16 or a network node as shown in FIG. 18.
- the network node 1920 includes: a processor 1921, a communication interface 1922, a storage system 1923, and a bus 1924.
- the processor 1921, the communication interface 1922, and the storage system 1923 are interconnected via the bus 1924.
- the processor 1921 is used to control and manage the actions of the network node 1920.
- the processor 1921 is used to execute the information transmission method executed by the controller described in the above embodiment.
- the communication interface 1922 is used to support the network node 1920 to communicate.
- the storage system 1923 is used to store the program code and data of the network node 1920.
- the controller 1910 and the network node 1920 are connected via a network.
- the communication interface in is connected to the network, and the network protocol may specifically be ISIS protocol, OSPFv3 protocol, BGP-LS protocol or PCEP protocol.
- a computer-readable storage medium in which computer-executable instructions are stored.
- the device executes the information transmission method described in the above embodiment.
- a computer program product which includes computer execution instructions, which are stored in a computer-readable storage medium; at least one processor of the device can read the computer execution instructions from the computer-readable storage medium, and at least one processor executes the computer execution instructions so that the device executes the information transmission method described in the above embodiment.
- a chip system in another embodiment, includes at least one processor and an interface, the interface is used to receive data and/or signals, and at least one processor is used to support the information transmission method described in the above embodiment.
- the chip system may also include a memory, the memory is used to store program instructions and data necessary for the computer device.
- the chip system can be composed of chips, and may also include chips and other discrete devices.
- the disclosed systems, devices and methods can be implemented in other ways.
- the device embodiments described above are only schematic.
- the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.
- Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
- the above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
- the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium.
- the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application.
- the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), disk or optical disk and other media that can store program code.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本申请要求于2023年2月22日提交中国国家知识产权局、申请号为CN202310151751.2、发明名称为“一种信息传输方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on February 22, 2023, with application number CN202310151751.2 and invention name “A method for information transmission and related equipment”, the entire contents of which are incorporated by reference in this application.
本申请实施例涉及通信领域,尤其涉及一种信息传输方法及相关设备。The embodiments of the present application relate to the field of communications, and in particular, to an information transmission method and related equipment.
段路由(segment routing,SR)是基于源路由理念而设计的在网络上转发数据包的一种协议。Segment routing (SR) is a protocol designed based on the concept of source routing to forward data packets on the network.
SR将网络路径分成一个个段,并且为这些段和网络节点分配段标识(segment ID,SID)。通过对SID进行有序排列组成得到段列表(segment list),就可以得到一条转发路径,指示报文遵循指定的转发路径在网络节点中传送。其中,SID中还会携带行为属性,用于指示网络节点执行对应的行为,且需要网络节点有能力支持该行为。SR divides the network path into segments and assigns segment IDs (SIDs) to these segments and network nodes. By arranging the SIDs in order to form a segment list, a forwarding path can be obtained, indicating that the message follows the specified forwarding path to be transmitted in the network node. Among them, the SID also carries a behavior attribute to instruct the network node to perform the corresponding behavior, and the network node needs to be able to support the behavior.
但不同的网络节点可能支持不同的能力,若网络节点不支持某种能力,而控制器对其下发的SID指示该网络节点执行的行为需要支持该能力,会导致该转发路径不通。However, different network nodes may support different capabilities. If a network node does not support a certain capability, and the SID sent by the controller indicates that the behavior executed by the network node needs to support the capability, the forwarding path will be blocked.
发明内容Summary of the invention
本申请实施例提供一种信息传输方法及相关设备,用于避免控制器向网络节点下发段列表时会出现转发路径失效的问题。本申请实施例还提供了相应的控制器、网络节点和计算机可读存储介质等。The embodiment of the present application provides an information transmission method and related equipment, which are used to avoid the problem of forwarding path failure when the controller sends a segment list to the network node. The embodiment of the present application also provides a corresponding controller, a network node and a computer-readable storage medium.
本申请第一方面提供一种信息传输方法,该方法包括:控制器接收第一节点上报的能力信息,能力信息包括第一节点支持的行为能力;控制器根据能力信息向第一节点下发第一段列表,第一段列表包括一个或多个第一段标识。The first aspect of the present application provides an information transmission method, which includes: a controller receives capability information reported by a first node, the capability information includes behavioral capabilities supported by the first node; the controller sends a first segment list to the first node based on the capability information, the first segment list includes one or more first segment identifiers.
本申请中,以控制器和网络节点作为交互示意的执行主体为例来示意方法,但本申请并不限制交互示意的执行主体。例如,控制器也可以是支持控制器实现方法的芯片、芯片系统、或处理器,还可以是能实现全部或部分控制器功能的逻辑节点、逻辑模块或软件;网络节点也可以是支持网络节点实现方法的芯片、芯片系统、或处理器,还可以是能实现全部或部分网络节点功能的逻辑节点、逻辑模块或软件。In this application, the controller and the network node are used as the execution subjects of the interactive schematic to illustrate the method, but this application does not limit the execution subjects of the interactive schematic. For example, the controller can also be a chip, a chip system, or a processor that supports the controller implementation method, and can also be a logical node, a logical module, or software that can implement all or part of the controller function; the network node can also be a chip, a chip system, or a processor that supports the network node implementation method, and can also be a logical node, a logical module, or software that can implement all or part of the network node function.
本申请中以应用场景为通过使用段路由(segment routing,SR)或段路由策略(segment routing policy,SR Policy)对网络进行流量调优进行举例说明。SR Policy将网络路径分成一个个段,并且为这些段和网络节点(简称为节点)分配段标识(segment ID,SID)。通过对SID进行有序排列组成得到段列表(segment list),就可以得到一条转发路径(也可以成为候选路径),指示报文遵循指定的转发路径在网络节点中传送。In this application, an application scenario is used to optimize network traffic by using segment routing (SR) or segment routing policy (SR Policy). SR Policy divides the network path into segments and assigns segment IDs (SIDs) to these segments and network nodes (referred to as nodes). By arranging the SIDs in order to form a segment list (segment list), a forwarding path (which can also be a candidate path) can be obtained, indicating that the message follows the specified forwarding path to be transmitted in the network node.
本申请中,网络可以为路由网络,网络包括控制器和多个网络节点,控制器为独立的控制器,具体可以为网络控制引擎(NCE)或计算机设备,网络节点可以看作一个转发设备,转发设备具体可以为路由器或交换机。In the present application, the network may be a routing network, the network includes a controller and multiple network nodes, the controller is an independent controller, specifically a network control engine (NCE) or a computer device, the network node may be regarded as a forwarding device, specifically a router or a switch.
本申请中的SR网际协议版本6,即为基于IPv6的段路由(segment routing over IPv6,SRv6),在SRv6中,网络节点可能支持多种不同的行为能力。控制器在收到包含第一节点支持的行为能力的能力信息后,在后续需要向第一节点下发第一段列表时,会基于能力信息进行下发,其中第一段列表包括一个或多个第一段标识。The SR Internet Protocol version 6 in this application is segment routing over IPv6 (SRv6). In SRv6, a network node may support multiple different behavioral capabilities. After receiving capability information including behavioral capabilities supported by a first node, the controller will issue a first segment list to the first node based on the capability information when it needs to issue the first segment list to the first node in the future, wherein the first segment list includes one or more first segment identifiers.
该第一方面,控制器接收第一节点上报的第一节点支持的行为能力,并根据支持的行为能力向第一节点下发第一段列表,其中,第一段列表包括一个或多个第一段标识,即控制器在向节点发送段列表前,会先确定节点支持的行为能力,控制器可以基于节点支持的行为能力和实际需求下发第一段列表,以保证转发路径不会失效。In the first aspect, the controller receives the behavior capabilities supported by the first node reported by the first node, and sends a first segment list to the first node based on the supported behavior capabilities, wherein the first segment list includes one or more first segment identifiers, that is, before sending the segment list to the node, the controller will first determine the behavior capabilities supported by the node. The controller can send the first segment list based on the behavior capabilities supported by the node and actual needs to ensure that the forwarding path will not fail.
在第一方面的一种可能的实现方式中,一个或多个第一段标识的行为属性所要求的行为能力中,不包含第一节点不支持的行为能力。 In a possible implementation manner of the first aspect, behavior capabilities required by the behavior attributes identified by the one or more first segments do not include behavior capabilities that are not supported by the first node.
该种可能的实现方式中,控制器在向节点发送段列表前,会先确定节点支持的行为能力和段列表中各个段标识要求的行为能力,只有在节点具备各个段标识要求的行为能力时才下发段列表,进而保证转发路径不会失效,提升了方案的可实现性。In this possible implementation, before sending the segment list to the node, the controller will first determine the behavioral capabilities supported by the node and the behavioral capabilities required by each segment identifier in the segment list. The segment list will be sent down only when the node has the behavioral capabilities required by each segment identifier, thereby ensuring that the forwarding path will not fail, thereby improving the feasibility of the solution.
在第一方面的一种可能的实现方式中,第一节点支持的行为能力包括压缩能力、封装能力和粘连能力中的至少一项。In a possible implementation manner of the first aspect, the behavior capability supported by the first node includes at least one of a compression capability, an encapsulation capability, and an adhesion capability.
该种可能的实现方式中,第一节点支持的行为能力有多种类型,第一节点可以向控制器上报自身具体具有的行为能力或不具有的行为能力,提升了方案的可实现性。In this possible implementation, the first node supports multiple types of behavioral capabilities, and the first node can report to the controller the specific behavioral capabilities it has or does not have, thereby improving the feasibility of the solution.
在第一方面的一种可能的实现方式中,控制器和第一节点基于预设通信协议进行通信,预设通信协议包括中间系统到中间系统ISIS协议、第3版开放式最短路径优先OSPFv3协议、BGP链路状态BGP-LS协议或路径计算单元通信PCEP协议中的任一项。In a possible implementation of the first aspect, the controller and the first node communicate based on a preset communication protocol, and the preset communication protocol includes any one of the Intermediate System to Intermediate System ISIS protocol, the Open Shortest Path First OSPFv3 version 3 protocol, the BGP Link State BGP-LS protocol, or the Path Computation Unit Communication PCEP protocol.
该种可能的实现方式中,控制器和第一节点可以基于多种不同的通信协议进行通信,基于不同的通信协议进行通信时,对应的需要上报的能力信息也可以相应调整,提升了方案的可实现性。In this possible implementation, the controller and the first node can communicate based on a variety of different communication protocols. When communicating based on different communication protocols, the corresponding capability information that needs to be reported can also be adjusted accordingly, thereby improving the feasibility of the solution.
在第一方面的一种可能的实现方式中,能力信息包含于预设通信协议下新增的结构数据TLV、子TLV或子子TLV中。In a possible implementation manner of the first aspect, the capability information is included in a structure data TLV, a sub-TLV, or a sub-sub-TLV newly added under a preset communication protocol.
该种可能的实现方式中,根据控制器和第一节点使用的不同的通信协议,能力信息可以包含于预设通信协议下新增的结构数据TLV、子TLV或子子TLV中,提升了方案的可实现性。In this possible implementation, according to the different communication protocols used by the controller and the first node, the capability information can be included in the newly added structure data TLV, sub-TLV or sub-sub-TLV under the preset communication protocol, thereby improving the feasibility of the solution.
在第一方面的一种可能的实现方式中,能力信息还包括第二节点支持的行为能力,第二节点支持的行为能力为第二节点发送给第一节点的,该方法还包括:控制器根据能力信息向第二节点下发第二段列表,第二段列表包括一个或多个第二段标识,一个或多个第二段标识的行为属性所要求的行为能力中,不包含第二节点不支持的行为能力。In a possible implementation of the first aspect, the capability information also includes behavioral capabilities supported by the second node, and the behavioral capabilities supported by the second node are sent by the second node to the first node. The method also includes: the controller sends a second segment list to the second node based on the capability information, and the second segment list includes one or more second segment identifiers. The behavioral capabilities required by the behavioral attributes of the one or more second segment identifiers do not include behavioral capabilities that are not supported by the second node.
该种可能的实现方式中,在某些通信协议下,第一节点还可以接收远端节点发送的自身支持的能力信息,并一起上报给控制器,控制器可以根据能力信息确定第一节点和第二节点各自支持的行为能力,并针对性的下发不同的段列表,从而避免了多个节点分别与控制器进行多次通信,节省了网络资源。In this possible implementation, under certain communication protocols, the first node can also receive capability information supported by the remote node and report it to the controller. The controller can determine the behavioral capabilities supported by the first node and the second node respectively based on the capability information, and send down different segment lists in a targeted manner, thereby avoiding multiple nodes communicating with the controller multiple times separately and saving network resources.
本申请第二方面提供一种信息传输方法,该方法包括:第一节点发送能力信息给控制器,能力信息包括第一节点支持的行为能力;第一节点接收控制器发送的第一段列表,第一段列表包括一个或多个第一段标识。A second aspect of the present application provides an information transmission method, which includes: a first node sends capability information to a controller, the capability information includes behavioral capabilities supported by the first node; the first node receives a first segment list sent by the controller, the first segment list includes one or more first segment identifiers.
在第二方面的一种可能的实现方式中,一个或多个第一段标识的行为属性所要求的行为能力中,不包含第一节点不支持的行为能力。In a possible implementation manner of the second aspect, behavior capabilities required by the behavior attributes of the one or more first segment identifiers do not include behavior capabilities that are not supported by the first node.
在第二方面的一种可能的实现方式中,第一节点支持的行为能力包括压缩能力、封装能力和粘连能力中的至少一项。In a possible implementation manner of the second aspect, the behavior capability supported by the first node includes at least one of a compression capability, an encapsulation capability, and an adhesion capability.
在第二方面的一种可能的实现方式中,控制器和第一节点基于预设通信协议进行通信,预设通信协议包括中间系统到中间系统ISIS协议、第3版开放式最短路径优先OSPFv3协议、BGP链路状态BGP-LS协议或路径计算单元通信PCEP协议中的任一项。In a possible implementation of the second aspect, the controller and the first node communicate based on a preset communication protocol, and the preset communication protocol includes any one of the Intermediate System to Intermediate System ISIS protocol, the Open Shortest Path First OSPFv3 version 3 protocol, the BGP Link State BGP-LS protocol, or the Path Computation Unit Communication PCEP protocol.
在第二方面的一种可能的实现方式中,能力信息包含于预设通信协议下新增的结构数据TLV、子TLV或子子TLV中。In a possible implementation manner of the second aspect, the capability information is included in a structure data TLV, a sub-TLV, or a sub-sub-TLV newly added under a preset communication protocol.
在第二方面的一种可能的实现方式中,其特征在于,上述步骤:第一节点发送能力信息给控制器之前,该方法还包括:第一节点接收第二节点发送的第二节点支持的行为能力,以使控制器根据能力信息向第二节点下发第二段列表,能力信息还包括第二节点支持的行为能力,第二段列表包括一个或多个第二段标识,一个或多个第二段标识的行为属性所要求的行为能力中,不包含第二节点不支持的行为能力。In a possible implementation of the second aspect, it is characterized in that, in the above-mentioned step: before the first node sends the capability information to the controller, the method also includes: the first node receives the behavior capabilities supported by the second node sent by the second node, so that the controller sends a second segment list to the second node according to the capability information, the capability information also includes the behavior capabilities supported by the second node, the second segment list includes one or more second segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more second segment identifiers do not include behavior capabilities not supported by the second node.
本申请第三方面提供一种控制器,包括:接收单元,用于接收第一节点上报的能力信息,能力信息包括第一节点支持的行为能力;发送单元,用于根据能力信息向第一节点下发第一段列表,第一段列表包括一个或多个第一段标识。The third aspect of the present application provides a controller, including: a receiving unit, used to receive capability information reported by a first node, the capability information including behavioral capabilities supported by the first node; a sending unit, used to send a first segment list to the first node according to the capability information, the first segment list including one or more first segment identifiers.
本申请第三方面的控制器执行本申请第一方面或第一方面的任意可能的实现方式中的方法。The controller of the third aspect of the present application executes the method in the first aspect of the present application or any possible implementation of the first aspect.
本申请第四方面提供一种网络节点,包括:发送单元,用于发送能力信息给控制器,能力信息包括第一节点支持的行为能力;接收单元,用于接收控制器发送的第一段列表,第一段列表包括一个或多个 第一段标识。A fourth aspect of the present application provides a network node, comprising: a sending unit, configured to send capability information to a controller, wherein the capability information includes a behavior capability supported by a first node; a receiving unit, configured to receive a first segment list sent by the controller, wherein the first segment list includes one or more The first paragraph identifies.
本申请第四方面的网络节点执行本申请第二方面或第二方面的任意可能的实现方式中的方法。The network node in the fourth aspect of the present application executes the method in the second aspect of the present application or any possible implementation manner of the second aspect.
本申请第五方面提供一种控制器,包括:处理器、通信接口和存储器,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码以使得所述控制器执行第一方面或第一方面的任意可能的实现方式中的方法。In a fifth aspect, the present application provides a controller, comprising: a processor, a communication interface and a memory, wherein the memory is used to store program code, and the processor is used to call the program code in the memory so that the controller executes the method in the first aspect or any possible implementation of the first aspect.
本申请第六方面提供一种网络节点,包括:处理器、通信接口和存储器,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码以使得所述网络节点执行本申请第二方面或第二方面的任意可能的实现方式中的方法。In a sixth aspect, the present application provides a network node, comprising: a processor, a communication interface and a memory, wherein the memory is used to store program code, and the processor is used to call the program code in the memory so that the network node executes the method in the second aspect of the present application or any possible implementation of the second aspect.
本申请第七方面提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如第一方面或第一方面的任意可能的实现方式中的方法。A seventh aspect of the present application provides a computer-readable storage medium, comprising instructions, which, when executed on a computer, enable the computer to execute a method as in the first aspect or any possible implementation of the first aspect.
本申请第八方面提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如第二方面或第二方面的任意可能的实现方式中的方法。An eighth aspect of the present application provides a computer-readable storage medium, comprising instructions, which, when executed on a computer, enable the computer to execute a method as in the second aspect or any possible implementation of the second aspect.
本申请第九方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第一方面或第一方面任意一种可能的实现方式的方法。A ninth aspect of the present application provides a computer program product storing one or more computer-executable instructions. When the computer-executable instructions are executed by a processor, the processor executes a method as described in the first aspect or any possible implementation of the first aspect.
本申请第十方面提供一种存储一个或多个计算机执行指令的计算机程序产品,当计算机执行指令被处理器执行时,处理器执行如上述第二方面或第二方面任意一种可能的实现方式的方法。The tenth aspect of the present application provides a computer program product storing one or more computer-executable instructions. When the computer-executable instructions are executed by a processor, the processor executes a method as described in the second aspect or any possible implementation of the second aspect.
本申请第十一方面提供了一种芯片系统,该芯片系统包括至少一个处理器和接口,该接口用于接收数据和/或信号,至少一个处理器用于支持计算机设备实现上述第一方面或第一方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。In the eleventh aspect of the present application, a chip system is provided, which includes at least one processor and an interface, the interface is used to receive data and/or signals, and at least one processor is used to support a computer device to implement the functions involved in the above-mentioned first aspect or any possible implementation of the first aspect. In one possible design, the chip system may also include a memory, which is used to store program instructions and data necessary for the computer device. The chip system can be composed of chips, or it can include chips and other discrete devices.
本申请第十二方面提供了一种芯片系统,该芯片系统包括至少一个处理器和接口,该接口用于接收数据和/或信号,至少一个处理器用于支持计算机设备实现上述第二方面或第二方面任意一种可能的实现方式中所涉及的功能。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。The twelfth aspect of the present application provides a chip system, which includes at least one processor and an interface, the interface is used to receive data and/or signals, and at least one processor is used to support a computer device to implement the functions involved in the above-mentioned second aspect or any possible implementation of the second aspect. In one possible design, the chip system may also include a memory, which is used to store program instructions and data necessary for the computer device. The chip system can be composed of chips, or it can include chips and other discrete devices.
本申请第十三方面提供了一种通信系统,该通信系统包括本申请第三方面提供的控制器和本申请第四方面提供的网络节点。The thirteenth aspect of the present application provides a communication system, which includes the controller provided by the third aspect of the present application and the network node provided by the fourth aspect of the present application.
本申请第十四方面提供了一种通信系统,该通信系统包括本申请第五方面提供的控制器和本申请第六方面提供的网络节点。The fourteenth aspect of the present application provides a communication system, which includes the controller provided by the fifth aspect of the present application and the network node provided by the sixth aspect of the present application.
图1为在网络中下发SR Policy的架构图;Figure 1 is an architecture diagram for issuing SR Policy in the network;
图2为网络节点的一结构示意图;FIG2 is a schematic diagram of a structure of a network node;
图3为网络节点的另一结构示意图;FIG3 is another schematic diagram of the structure of a network node;
图4为网络节点封装能力的示意图;FIG4 is a schematic diagram of network node encapsulation capabilities;
图5为网络节点压缩能力的示意图;FIG5 is a schematic diagram of the compression capability of a network node;
图6为段标识与通用段标识的关系示意图;FIG6 is a schematic diagram showing the relationship between a segment identifier and a general segment identifier;
图7为网络节点不具备压缩能力的网络架构示意图;FIG7 is a schematic diagram of a network architecture in which network nodes do not have compression capabilities;
图8为网络节点不具备封装能力的网络架构示意图;FIG8 is a schematic diagram of a network architecture in which network nodes do not have encapsulation capabilities;
图9为本申请实施例提供的信息传输方法的一实施例示意图;FIG9 is a schematic diagram of an embodiment of an information transmission method provided in an embodiment of the present application;
图10-图12为本申请实施例提供的能力信息的TLV格式图;10-12 are TLV format diagrams of capability information provided in embodiments of the present application;
图13为本申请实施例提供的信息传输方法的另一实施例示意图;FIG13 is a schematic diagram of another embodiment of the information transmission method provided in an embodiment of the present application;
图14为本申请实施例提供的信息传输方法的网络架构示意图;FIG14 is a schematic diagram of a network architecture of an information transmission method provided in an embodiment of the present application;
图15为本申请实施例提供的控制器的一结构示意图;FIG15 is a schematic diagram of a structure of a controller provided in an embodiment of the present application;
图16为本申请实施例提供的网络节点的一结构示意图;FIG16 is a schematic diagram of a structure of a network node provided in an embodiment of the present application;
图17为本申请实施例提供的控制器的另一结构示意图; FIG17 is another schematic diagram of the structure of the controller provided in an embodiment of the present application;
图18为本申请实施例提供的网络节点的另一结构示意图;FIG18 is another schematic diagram of the structure of a network node provided in an embodiment of the present application;
图19为本申请实施例提供的通信系统的一结构示意图。FIG19 is a schematic diagram of the structure of a communication system provided in an embodiment of the present application.
下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着技术发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。The following describes the embodiments of the present application in conjunction with the accompanying drawings. Obviously, the described embodiments are only embodiments of a part of the present application, rather than all embodiments. It is known to those skilled in the art that with the development of technology and the emergence of new scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。The word “exemplary” is used exclusively herein to mean “serving as an example, example, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。In addition, in order to better illustrate the present application, numerous specific details are provided in the following specific embodiments. It should be understood by those skilled in the art that the present application can also be implemented without certain specific details. In some examples, methods, means, components and circuits well known to those skilled in the art are not described in detail in order to highlight the subject matter of the present application.
本申请实施例提供一种信息传输方法及相关设备,用于避免控制器向网络节点下发段列表时会出现转发路径失效的问题。本申请实施例还提供了相应的控制器、网络节点和计算机可读存储介质等。以下分别进行详细说明。The embodiment of the present application provides an information transmission method and related equipment, which are used to avoid the problem of forwarding path failure when the controller sends a segment list to the network node. The embodiment of the present application also provides a corresponding controller, a network node, and a computer-readable storage medium, etc. The following are detailed descriptions.
下面对本申请实施例涉及的应用场景进行举例说明。The following is an example of the application scenario involved in the embodiments of the present application.
请参阅图1,当用户需要对网络进行流量调优时,可以通过使用段路由(segment routing,SR)或段路由策略(segment routing policy,SR Policy),SR Policy将网络路径分成一个个段,并且为这些段和网络节点(简称为节点)分配段标识(segment ID,SID)。通过对SID进行有序排列组成得到段列表(segment list),就可以得到一条转发路径(也可以成为候选路径),指示报文遵循指定的转发路径在网络节点中传送。其中,网络可以为路由网络,网络包括控制器和多个网络节点,控制器为独立的控制器,具体可以为网络控制引擎(NCE)或计算机设备,网络节点可以看作一个转发设备,转发设备具体可以为路由器或交换机。Please refer to Figure 1. When the user needs to tune the network traffic, segment routing (SR) or segment routing policy (SR Policy) can be used. SR Policy divides the network path into segments and assigns segment IDs (SIDs) to these segments and network nodes (referred to as nodes). By arranging the SIDs in order to form a segment list (segment list), a forwarding path (which can also be a candidate path) can be obtained, indicating that the message follows the specified forwarding path to be transmitted in the network node. Among them, the network can be a routing network, the network includes a controller and multiple network nodes, the controller is an independent controller, specifically a network control engine (NCE) or a computer device, the network node can be regarded as a forwarding device, and the forwarding device can specifically be a router or a switch.
示例性的,请参阅图2,网络节点可以包括主控板210和接口板220,主控板210和接口板220连接,主控板210包括第一处理器211和第一存储器212,第一处理器211和第一存储器212连接,接口板220包括第二处理器221、第二存储器222和接口卡223,第二处理器221和第二存储器222连接,第二存储器222和接口卡223连接。其中第一处理器211用于调用第一存储器212中的程序指令执行相应的处理功能,第二处理器221用于调用第二存储器222中的程序指令执行报文的接收和发送,接口卡223用于与外部设备连接以接收数据。Exemplarily, referring to FIG. 2 , the network node may include a main control board 210 and an interface board 220, the main control board 210 and the interface board 220 are connected, the main control board 210 includes a first processor 211 and a first memory 212, the first processor 211 and the first memory 212 are connected, the interface board 220 includes a second processor 221, a second memory 222 and an interface card 223, the second processor 221 and the second memory 222 are connected, and the second memory 222 and the interface card 223 are connected. The first processor 211 is used to call the program instructions in the first memory 212 to perform the corresponding processing function, the second processor 221 is used to call the program instructions in the second memory 222 to perform the reception and transmission of the message, and the interface card 223 is used to connect to an external device to receive data.
示例性的,请参阅图3,网络节点可以包括收发器302、处理器301、存储器303和总线304。收发器302用于执行报文的接收和发送,存储器303用于存储程序指令,处理器301用于调用存储器303中的程序指令执行相应的处理功能。3, the network node may include a transceiver 302, a processor 301, a memory 303 and a bus 304. The transceiver 302 is used to receive and send messages, the memory 303 is used to store program instructions, and the processor 301 is used to call the program instructions in the memory 303 to perform corresponding processing functions.
一并参阅图1,网络中包括网络节点P1、网络节点P2、网络节点PE1、网络节点PE2、网络节点PE3、网络节点PE4、网络节点CE1和网络节点CE2,控制器通过网络节点PE3完成整个网络拓扑收集,从而确定出转发路径,网络节点CE2的数据将按照指定的转发路径发送给网络节点CE1。其中,SR可以基于网际协议版本4(internet protocol version 4,IPv4)或网际协议版本6(internet protocol version 6,IPv6),此时SR可以表示为基于IPv4的段路由(segment routing over IPv4,SRv4)或基于IPv6的段路由(segment routing over IPv6,SRv6)。Referring to FIG. 1 , the network includes network nodes P1, P2, PE1, PE2, PE3, PE4, CE1 and CE2. The controller completes the entire network topology collection through network node PE3, thereby determining the forwarding path. The data of network node CE2 will be sent to network node CE1 according to the specified forwarding path. Among them, SR can be based on Internet protocol version 4 (internet protocol version 4, IPv4) or Internet protocol version 6 (internet protocol version 6, IPv6). At this time, SR can be expressed as segment routing over IPv4 (segment routing over IPv4, SRv4) or segment routing over IPv6 (segment routing over IPv6, SRv6).
具体的,SRv6 Segment是IPv6地址形式,通常也可以称为SRv6 SID,SRv6 SID由定位器(Locator) 和功能(Function)两部分组成,格式是Locator:Function,其中Locator占据IPv6地址的高比特位,Function部分占据IPv6地址的剩余部分。Locator具有定位功能,所以一般要在SR域内唯一,节点配置Locator之后,系统会生成一条Locator网段路由,并且在SR域内扩散。网络里其他节点通过Locator网段路由就可以定位到本节点,同时本节点发布的所有SRv6 SID也都可以通过该条Locator网段路由到达。Function代表设备的指令(Instruction),这些指令都由设备预先设定,Function部分用于指示SRv6 SID的生成节点进行相应的功能操作。Function部分还可以分出一个可选的参数段(Arguments),此时SRv6 SID的格式变为Locator:Function:Arguments,Arguments占据IPv6地址的低比特位,通过Arguments字段可以定义一些报文的流和服务等信息。在SRv6中,网络节点可能支持多种不同的行为能力,例如压缩能力、封装能力和粘连能力等,下面分别进行说明。Specifically, SRv6 Segment is in the form of an IPv6 address, which is also commonly referred to as an SRv6 SID. The SRv6 SID is determined by the locator. The format is Locator:Function, where the Locator occupies the high bits of the IPv6 address and the Function part occupies the rest of the IPv6 address. Locator has a positioning function, so it is generally unique in the SR domain. After the node is configured with Locator, the system will generate a Locator network segment route and spread it in the SR domain. Other nodes in the network can locate this node through the Locator network segment route, and all SRv6 SIDs published by this node can also be reached through this Locator network segment route. Function represents the device's instructions, which are pre-set by the device. The Function part is used to instruct the SRv6 SID generation node to perform corresponding functional operations. The Function part can also be divided into an optional parameter segment (Arguments). At this time, the format of the SRv6 SID becomes Locator:Function:Arguments. Arguments occupy the low bits of the IPv6 address. The Arguments field can be used to define some message flows and services. In SRv6, network nodes may support a variety of different behavioral capabilities, such as compression capability, encapsulation capability, and adhesion capability, which are described below.
一、封装能力:1. Packaging capability:
通过网络节点中的源节点(起始节点)或者端节点(终止节点)可以实现扩展报文头(segment routing header,SRH)封装。封装SRH的主要方式分为三种:插入(Insert)、封装(Encap)和削减(Reduce)。The extended header (SRH) can be encapsulated through the source node (starting node) or the end node (terminating node) in the network node. There are three main ways to encapsulate SRH: insert, encapsulate, and reduce.
(1)Insert:指定SRv6 SID栈封装模式为insert模式,会将SID复制到SRH头中,具体的,如图4所示,在节点CE1传输信息至节点CE2的过程中,传输的信息为报文,报文包括报文头和载荷(payload),IPv6报文头的源地址(SA)为CE1,目的地址(DA)为CE2,在数据报文的IPv6头后面插入一个SRH携带标签栈(CE2,B:13::1:0,B:12::1:0,B:11::1:0,),将当前IPv6报文头的目的地址修改为第一个SID(B::11:1:0),也就是segment list[SL],对这个新的IPv6报文进行查表转发,转发路径会指示节点11、节点12、节点13,最终达到节点CE2。Insert模式会不断修改原始IPv6报文头的目的地址(DA)字段,封装Segment List时要将原始IPv6报文DA放入segment list[0],Insert模式下,对segment list[1]的SID配置倒数第二跳SRH段信息弹出(penultimate segment pop of the SRH,PSP),到达该节点后执行指令操作,清除SRH,对新的IPv6报文头执行相应操作。(1) Insert: Specify the SRv6 SID stack encapsulation mode as insert mode, and copy the SID to the SRH header. Specifically, as shown in Figure 4, when node CE1 transmits information to node CE2, the transmitted information is a message, which includes a message header and a payload. The source address (SA) of the IPv6 message header is CE1, and the destination address (DA) is CE2. An SRH carrying label stack (CE2, B:13::1:0, B:12::1:0, B:11::1:0) is inserted after the IPv6 header of the data message, and the destination address of the current IPv6 message header is modified to the first SID (B::11:1:0), that is, segment list [SL]. The new IPv6 message is forwarded by table lookup. The forwarding path will indicate node 11, node 12, node 13, and finally reach node CE2. Insert mode will continuously modify the destination address (DA) field of the original IPv6 packet header. When encapsulating the Segment List, the original IPv6 packet DA will be placed in segment list[0]. In Insert mode, the penultimate segment pop of the SRH (PSP) is configured for the SID of segment list[1]. After reaching the node, the command operation is executed to clear the SRH and perform corresponding operations on the new IPv6 packet header.
(2)Encap:指定SRv6 SID栈封装模式为encaps模式,会新增IPv6头(不会把SID复制到新增的SRH头中),具体的,如图5所示,在节点CE1传输信息至节点CE2的过程中,IPv6报文头的源地址(SA)为CE1,目的地址(DA)为CE2,在数据报文的IPv6头前,封装一组新的IPv6头和SRH头,将新的IPv6报文中源地址设置为当前节点地址,目的地址设置为第一个SID,配置好其他字段,对这个新的IPv6报文进行查表转发,其中报文头中的内容可以参考Insert。Encap模式是新增加里一个IPv6报文头,封装时不需要再封入原始DA,此时对segment list[0]的SID配置USD,在到达签栈中相应的最后一个节点时解封装外层IPv6,根据内层IPv6报文头执行相应操作。(2) Encap: Specify the SRv6 SID stack encapsulation mode as encaps mode, which will add an IPv6 header (the SID will not be copied to the newly added SRH header). Specifically, as shown in Figure 5, when node CE1 transmits information to node CE2, the source address (SA) of the IPv6 header is CE1, and the destination address (DA) is CE2. Before the IPv6 header of the data message, a new set of IPv6 headers and SRH headers are encapsulated. The source address in the new IPv6 message is set to the current node address, and the destination address is set to the first SID. After configuring other fields, the new IPv6 message is forwarded by table lookup. The content in the message header can refer to Insert. The Encap mode is to add a new IPv6 message header. The original DA does not need to be encapsulated during encapsulation. At this time, USD is configured for the SID of segment list[0]. When reaching the corresponding last node in the signature stack, the outer IPv6 is decapsulated and corresponding operations are performed according to the inner IPv6 message header.
(3)Reduce:使能Reduced SRH功能,SRH中不封装第一个SID,在不影响业务转发的情况下,可以减少SRH的长度,具体的,SRH扩展头本身占用长度较长,且SRv6源节点在封装SRH时,已经将第一个需要处理的SID封装到了IPv6报文头的目的地址字段,所以SRH中第一个SID对于转发已经没有意义。为了减小SRH扩展头的大小,SRv6源节点在封装SRH时,可以采用Reduced SRH模式,也即不封装第一个需要处理的SID。如果SRH本身只有一个SID,那么按照标准规定,可以不封装SRH扩展头。(3) Reduce: Enable the Reduced SRH function. The first SID is not encapsulated in the SRH. The length of the SRH can be reduced without affecting service forwarding. Specifically, the SRH extension header itself occupies a long length, and when the SRv6 source node encapsulates the SRH, it has already encapsulated the first SID to be processed into the destination address field of the IPv6 packet header. Therefore, the first SID in the SRH is no longer meaningful for forwarding. In order to reduce the size of the SRH extension header, the SRv6 source node can use the Reduced SRH mode when encapsulating the SRH, that is, the first SID to be processed is not encapsulated. If the SRH itself has only one SID, then according to the standard, the SRH extension header can be not encapsulated.
二、压缩能力:2. Compression Capacity:
SRH(segment routing header)扩展报文头是实现SRv6的关键扩展。在封装模式下,SRv6头节点会对报文封装上外层IPv6报文头和SRH扩展报文头,再进行转发,但这带来了一定的报文头开销,而且当SRv6 SID数目很多时,SRH扩展报文头的长度将进一步增长。由此可能产生如下方面的问题:1.有效负载效率下降:SRv6增加的报文头属于传输开销,当SRH中SID数目很多时,报头长度增加,有效负载占比下降,导致传输效率低下;2.硬件转发性能下降:随着SID数目的增加,SID在SRv6报文里所处的位置可能超过硬件一次读取的深度,导致硬件进行二次读取,造成转发处理性能的下降;3.最大传输单元(maximum transmission unit,MTU)限制报文转发,MTU是指网络能够传输的最大数据包大小,MTU的大小决定了发送端一次能够发送报文的最大字节数,因为SRv6报文头的增加,可能会使得最终生成的SRv6报文的大小超出MTU的限制,造成中途分片或丢包。The SRH (segment routing header) extended header is a key extension to implement SRv6. In encapsulation mode, the SRv6 head node will encapsulate the outer IPv6 header and SRH extended header on the message before forwarding it, but this brings a certain header overhead, and when the number of SRv6 SIDs is large, the length of the SRH extended header will further increase. This may cause the following problems: 1. Decreased payload efficiency: The message header added by SRv6 is a transmission overhead. When the number of SIDs in the SRH is large, the header length increases and the payload ratio decreases, resulting in low transmission efficiency. 2. Decreased hardware forwarding performance: As the number of SIDs increases, the position of the SID in the SRv6 message may exceed the depth of the hardware's one-time read, causing the hardware to perform a second read, resulting in a decrease in forwarding processing performance. 3. The maximum transmission unit (MTU) limits message forwarding. MTU refers to the maximum data packet size that the network can transmit. The size of MTU determines the maximum number of bytes that the sender can send at one time. Because of the increase in the SRv6 message header, the size of the final generated SRv6 message may exceed the MTU limit, causing fragmentation or packet loss in the middle.
G-SRv6是一种兼容SRv6的SRH压缩解决方案。G-SRv6不仅能够支持SRH压缩,减少SRv6报文头开销,还可以与传统SRv6 SID混合编程在一个SRH中,从而支持SRv6从非压缩向压缩方案的平滑演进。 G-SRv6主要分为SRv6 SRH压缩和兼容传统SRv6两部分。SRv6 SRH压缩的原理是基于SRv6 SID格式的规律性,将SRH中segment list的冗余信息剥离,仅携带变化部分,从而减少包头开销,实现压缩。兼容SRv6是通过增加行为属性(Flavor)来指示下一个SID的格式,来实现不同长度SID的处理,从而支持不同类型SID的混合编程与处理,示例性的,Flavor包括PSP、最后一段执行SRH移除操作(ultimate segment POP of the SRH,USP)、最后一段执行外层IPv6解封装操作(ultimate segment decapsulation,USD)、继续压缩(COC)和移位(Next)等多种类型。G-SRv6 is an SRv6-compatible SRH compression solution. G-SRv6 not only supports SRH compression and reduces SRv6 header overhead, but can also be mixed with traditional SRv6 SIDs in one SRH, thus supporting the smooth evolution of SRv6 from non-compression to compression solutions. G-SRv6 is mainly divided into two parts: SRv6 SRH compression and compatibility with traditional SRv6. The principle of SRv6 SRH compression is based on the regularity of the SRv6 SID format. The redundant information of the segment list in the SRH is stripped off, and only the changed part is carried, thereby reducing the header overhead and achieving compression. Compatibility with SRv6 is to increase the behavior attribute (Flavor) to indicate the format of the next SID to achieve the processing of SIDs of different lengths, thereby supporting mixed programming and processing of different types of SIDs. For example, Flavor includes PSP, the last segment performs SRH removal operation (ultimate segment POP of the SRH, USP), the last segment performs outer IPv6 decapsulation operation (ultimate segment decapsulation, USD), continue compression (COC) and shift (Next) and other types.
SRv6域内的SID均从SID地址块中分配,因此这些SID都具有公共前缀(common prefix,CP)。如果IPv6报文头的目的地址中的SID已经携带了公共前缀,那么SRH中的SID只需要携带差异部分,这样在地址更新时,将差异部分更新到IPv6报文头的目的地址中,即可完整恢复原来的SID,这个差异部分在通用SRv6(Generalized SRv6 Network Programming,G-SRv6)中称为通用段标识符(generalized SID,G-SID)。如图6所示展示了完整SID和32比特(bit)G-SID的关系,SID中还设置有Arguments或空白填充(Padding)。SIDs in the SRv6 domain are all allocated from the SID address block, so these SIDs all have a common prefix (CP). If the SID in the destination address of the IPv6 message header already carries a common prefix, then the SID in the SRH only needs to carry the difference part. In this way, when the address is updated, the difference part is updated to the destination address of the IPv6 message header to completely restore the original SID. This difference part is called a generalized segment identifier (G-SID) in Generalized SRv6 Network Programming (G-SRv6). As shown in Figure 6, the relationship between the full SID and the 32-bit G-SID is shown. Arguments or blank padding are also set in the SID.
三、粘连能力3. Adhesion ability
Binding SID用于提供网络扩展能力、网络内部不可见和服务独立性的能力,具体的,Binding SID(BSID)用于标识整个候选路径(candidate path),提供隧道连接,流量引导等功能。报文如果携带candidate path对应的BSID,会被引导到对应的candidate path。如果把SRv6 Policy(SRv6策略)看成是一个网络服务,那Binding SID就是访问这个服务的接口。所以,SRv6 Policy的这个设计是一个订阅发布模型,业务根据自身的需求来订阅网络服务,网络可以把他提供的连接服务的接口提供给业务。Binding SID is used to provide network expansion capabilities, network internal invisibility, and service independence. Specifically, Binding SID (BSID) is used to identify the entire candidate path, provide tunnel connection, traffic guidance and other functions. If the message carries the BSID corresponding to the candidate path, it will be directed to the corresponding candidate path. If SRv6 Policy is regarded as a network service, then Binding SID is the interface to access this service. Therefore, the design of SRv6 Policy is a subscription and publication model. The business subscribes to the network service according to its own needs, and the network can provide the interface of the connection service it provides to the business.
BSID引流是一种数据面引流方式,用于业务头结点和SRv6 Policy头结点不是同一个结点的场景。例如:跨管理域提供SRv6 Policy连接服务,或者SRv6 Policy作为端到端Path的一个子Path场景。BSID traffic diversion is a data plane traffic diversion method used in scenarios where the service head node and the SRv6 Policy head node are not the same node. For example: providing SRv6 Policy connection services across management domains, or SRv6 Policy as a sub-path of an end-to-end path.
但不同的网络节点可能支持上述不同的能力,若网络节点不支持某种能力,而控制器对其下发的SID指示该网络节点执行的行为需要支持该能力,会导致该转发路径不通。However, different network nodes may support different capabilities. If a network node does not support a certain capability, and the SID sent by the controller indicates that the behavior executed by the network node needs to support the capability, the forwarding path will be blocked.
示例性的,基于压缩能力,如图7所示,从节点0到节点9有一条SRv6隧道,其中头节点0是厂商A的设备,节点3和节点5是厂商B的设备,厂商B的设备发了包含next的SID。而厂商A的设备不支持next互通,不能对控制器下发的128bit的SID进行next形式的压缩。若控制器没有感知到头节点0不支持next的压缩方式,下发给头节点0的标签栈中包含节点3和节点5,而节点3和节点5的flavor还有next属性,头节点0无法对该标签栈进行next形式的压缩,SRv6隧道路径不通(down)。Exemplarily, based on the compression capability, as shown in Figure 7, there is an SRv6 tunnel from node 0 to node 9, where head node 0 is a device from manufacturer A, and node 3 and node 5 are devices from manufacturer B. The device from manufacturer B sends a SID containing next. However, the device from manufacturer A does not support next intercommunication and cannot perform next-format compression on the 128-bit SID sent by the controller. If the controller does not perceive that head node 0 does not support next compression, the label stack sent to head node 0 contains node 3 and node 5, and the flavors of node 3 and node 5 also have the next attribute. Head node 0 cannot perform next-format compression on the label stack, and the SRv6 tunnel path is blocked (down).
示例性的,基于封装能力,如图8所示,从0到9有一条SRv6隧道,其中头节点0是老版本的设备,不具有encap能力。节点9是新版本的设备,具有encap能力,支持发布PSP-USP-USD属性的SID。若控制器没有感知到头节点0不具有encap能力,下发给头节点0的标签栈中包含节点9,节点9的flavor为psp-usp-usd,老版本的头节点无法对该标签栈进行encap封装,SRv6隧道down。Exemplarily, based on the encapsulation capability, as shown in Figure 8, there is an SRv6 tunnel from 0 to 9, where head node 0 is an old version device and does not have the encap capability. Node 9 is a new version device with the encap capability and supports publishing SIDs with PSP-USP-USD attributes. If the controller does not perceive that head node 0 does not have the encap capability, the label stack sent to head node 0 contains node 9, and the flavor of node 9 is psp-usp-usd. The old version of the head node cannot encap the label stack, and the SRv6 tunnel is down.
示例性的,基于粘连能力,控制器需要感知到网络中哪个节点具有BSID粘连能力,以便下发BSID。但目前的实现是人为指定控制器向哪些节点下发BSID,或者控制器读取网络设备的SR Policy等配置,然后尝试下发BSID。节点通报粘连能力后,方便控制器下发,但是当网络中的节点很多、跳数很多时,目前的实现存在维护成本高、耗时长等问题。For example, based on the adhesion capability, the controller needs to sense which node in the network has the BSID adhesion capability in order to send the BSID. However, the current implementation is to manually specify which nodes the controller sends the BSID to, or the controller reads the SR Policy and other configurations of the network device and then tries to send the BSID. After the node reports the adhesion capability, it is convenient for the controller to send it, but when there are many nodes and many hops in the network, the current implementation has problems such as high maintenance cost and long time consumption.
下面结合上述应用场景对本申请实施例提供的信息传输方法进行说明。The information transmission method provided in the embodiment of the present application is described below in combination with the above application scenario.
本申请中“向…(例如节点)发送信息/发送信息给…”可以理解为该信息的目的端是节点。可以包括直接或间接的向节点发送信息。“从…(例如节点)接收信息/接收…发送的信息”可以理解为该信息的源端是节点,可以包括直接或间接的从节点接收信息。信息在信息发送的源端和目的端之间可能会被进行必要的处理,例如格式变化等,但目的端可以理解来自源端的有效信息。本申请中类似的表述可以做类似的理解,在此不再赘述。In this application, "sending information to... (e.g., a node)/sending information to..." can be understood as the destination of the information being a node. It can include sending information to a node directly or indirectly. "Receiving information from... (e.g., a node)/receiving information sent by..." can be understood as the source of the information being a node, which can include receiving information from a node directly or indirectly. The information may be processed as necessary between the source and destination of the information, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be understood similarly and will not be repeated here.
可以理解,本申请中方法的示意图中以控制器和网络节点作为交互示意的执行主体为例来示意方法,但本申请并不限制交互示意的执行主体。例如,图中的控制器也可以是支持控制器实现方法的芯片、芯片系统、或处理器,还可以是能实现全部或部分控制器功能的逻辑节点、逻辑模块或软件;图中的网络 节点也可以是支持网络节点实现方法的芯片、芯片系统、或处理器,还可以是能实现全部或部分网络节点功能的逻辑节点、逻辑模块或软件。It is understood that the schematic diagram of the method in this application uses the controller and the network node as the execution subject of the interactive diagram as an example to illustrate the method, but this application does not limit the execution subject of the interactive diagram. For example, the controller in the figure can also be a chip, chip system, or processor that supports the controller to implement the method, or a logical node, logic module, or software that can implement all or part of the controller function; the network in the figure can also be a logical node, logic module, or software that can implement all or part of the controller function. The node may also be a chip, a chip system, or a processor that supports the network node implementation method, or may be a logical node, a logical module, or software that can implement all or part of the network node functions.
如图9所示,本申请实施例提供的信息传输方法的一实施例包括:As shown in FIG. 9 , an embodiment of the information transmission method provided in the embodiment of the present application includes:
101、第一节点发送能力信息给控制器。101. A first node sends capability information to a controller.
102、控制器根据能力信息向第一节点下发第一段列表。102. The controller sends a first segment list to the first node according to the capability information.
该信息传输方法可以应用在如图1所示的网络中,例如节点PE3为第一节点,第一节点会向控制器发送能力信息,其中能力信息包括第一节点支持的行为能力,控制器在收到该能力信息后,在后续需要向第一节点下发第一段列表时,会基于能力信息进行下发,其中第一段列表包括一个或多个第一段标识,而控制器向第一节点下发的一个或多个第一段标识的行为属性所要求的行为能力中,不包含第一节点不支持的行为能力。The information transmission method can be applied in a network as shown in FIG1 , for example, node PE3 is the first node, the first node sends capability information to the controller, wherein the capability information includes the behavior capabilities supported by the first node, and after receiving the capability information, the controller will issue the first segment list to the first node based on the capability information when it needs to issue the first segment list to the first node in the future, wherein the first segment list includes one or more first segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more first segment identifiers issued by the controller to the first node do not include behavior capabilities not supported by the first node.
其中,第一节点支持的行为能力包括压缩能力、封装能力和粘连能力中的至少一项,具体的,上报的行为能力包括但不限于G-SID 32bit压缩能力,G-SID 16bit压缩能力、微型段标识(micro SID,uSID)16bit压缩能力、uSID 32bit压缩能力、insert、encap或reduce封装能力和Binding SID粘连能力等。能力信息可以包含于预设通信协议下新增的结构数据(type-length-value,TLV)、子TLV或子子TLV中,且控制器和第一节点可以基于预设通信协议进行通信,下面基于不同的通信协议分别进行详细说明。The behavior capabilities supported by the first node include at least one of compression capability, encapsulation capability and adhesion capability. Specifically, the reported behavior capabilities include but are not limited to G-SID 32bit compression capability, G-SID 16bit compression capability, micro segment identifier (micro SID, uSID) 16bit compression capability, uSID 32bit compression capability, insert, encap or reduce encapsulation capability and Binding SID adhesion capability. The capability information can be included in the newly added structure data (type-length-value, TLV), sub-TLV or sub-sub-TLV under the preset communication protocol, and the controller and the first node can communicate based on the preset communication protocol. The following is a detailed description based on different communication protocols.
一、中间系统到中间系统协议(intermediate system-to-intermediate system,IS-IS)1. Intermediate system to intermediate system protocol (IS-IS)
基于ISIS协议,可以在协议号中的242号IS-IS路由能力(Router Capability)的25号SRv6Capabilities的子TLV(sub-TLV)下,新增一类子子TLV(sub-sub TLV),用于携带支持的SRv6压缩、封装、Binding SID粘连等行为能力,即能力信息,以将第一节点的支持的SRv6压缩、封装、Binding SID粘连能力等行为能力在ISIS的层级(level)内发布、解析和泛洪(同步)等。Based on the ISIS protocol, a new type of sub-sub TLV (sub-sub TLV) can be added under the sub-TLV (sub-TLV) of SRv6Capabilities No. 25 of IS-IS routing capability (Router Capability) No. 242 in the protocol number to carry the supported SRv6 compression, encapsulation, Binding SID adhesion and other behavioral capabilities, that is, capability information, so as to publish, parse and flood (synchronize) the supported SRv6 compression, encapsulation, Binding SID adhesion and other behavioral capabilities of the first node within the ISIS level.
其中,SRv6Capabilities sub-TLV新增扩展的sub-sub TLV包括但不限于如下形式的sub-sub TLV:32bit压缩能力sub-sub TLV,16bit压缩能力sub-sub TLV,封装能力sub-sub TLV,Binding SID粘连能力sub-sub TLV等。其中,32bit压缩指压缩SID的长度固定为32bit,16bit压缩指压缩SID的长度固定为16bit。The newly added extended sub-sub TLVs of SRv6Capabilities sub-TLV include but are not limited to the following sub-sub TLVs: 32-bit compression capability sub-sub TLV, 16-bit compression capability sub-sub TLV, encapsulation capability sub-sub TLV, Binding SID adhesion capability sub-sub TLV, etc. 32-bit compression means that the length of the compressed SID is fixed to 32 bits, and 16-bit compression means that the length of the compressed SID is fixed to 16 bits.
示例性的,在每个sub-sub TLV中,利用bit位标识具体的各种行为能力。如图10所示,每个sub-sub TLV的长度(length)为2,有16个bit用来标识这类行为能力;或者如图11所示,length为4,有32个bit用来标识这类行为能力。For example, in each sub-sub TLV, bits are used to identify specific various behavior capabilities. As shown in FIG10 , the length of each sub-sub TLV is 2, and 16 bits are used to identify such behavior capabilities; or as shown in FIG11 , the length is 4, and 32 bits are used to identify such behavior capabilities.
进一步的,32bit压缩能力包括但不限于:32bit next压缩能力(把控制器下发的一组128bit的SID标签栈按照next的形式进行32bit压缩)、32bit coc压缩能力(把控制器下发的一组128bit的SID标签栈按照coc的形式进行32bit压缩)、控制器下32bit next压缩后的格式能否转发(控制器下发了按照next的形式进行32bit压缩的SID标签栈,节点是否能正常转发)、控制器下32bit coc压缩后的格式能否转发(控制器下发了按照coc的形式进行32bit压缩的SID标签栈,节点是否能正常转发)等。Furthermore, the 32-bit compression capability includes, but is not limited to: 32-bit next compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 32-bit format in the form of next), 32-bit coc compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 32-bit format in the form of coc), whether the format after 32-bit next compression under the controller can be forwarded (the controller sends a SID label stack compressed 32 bits in the form of next, whether the node can forward it normally), whether the format after 32-bit coc compression under the controller can be forwarded (the controller sends a SID label stack compressed 32 bits in the form of coc, whether the node can forward it normally), etc.
16bit压缩能力包括但不限于:16bit next压缩能力(把控制器下发的一组128bit的SID标签栈按照next的形式进行16bit压缩)、16bit coc压缩能力(把控制器下发的一组128bit的SID标签栈按照coc的形式进行16bit压缩)、控制器下16bit next压缩后的格式能否转发(控制器下发了按照next的形式进行16bit压缩的SID标签栈,节点是否能正常转发)、控制器下16bit coc压缩后的格式能否转发(控制器下发了按照coc的形式进行16bit压缩的SID标签栈,节点是否能正常转发)等。The 16-bit compression capability includes but is not limited to: 16-bit next compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 16-bit format in the form of next), 16-bit coc compression capability (compressing a group of 128-bit SID label stacks sent by the controller into 16-bit format in the form of coc), whether the format after 16-bit next compression under the controller can be forwarded (the controller sends a SID label stack compressed 16 bits in the form of next, whether the node can forward it normally), whether the format after 16-bit coc compression under the controller can be forwarded (the controller sends a SID label stack compressed 16 bits in the form of coc, whether the node can forward it normally), etc.
封装能力包括但不限于:encap、insert、reduce等,Binding SID粘连能力包括但不限于:节点的粘连能力。Encapsulation capabilities include but are not limited to: encap, insert, reduce, etc. Binding SID adhesion capabilities include but are not limited to: node adhesion capabilities.
二、第3版开放式最短路径优先协议(open shortest path first v3,OSPFv3)2. Open Shortest Path First v3 (OSPFv3)
基于OSPFv3协议,可以在协议号中的OSPFv3Router Information LSA(用于描述该节点的所有接口状况)的SRv6Capabilities TLV下,新增一类sub TLV中携带支持的SRv6压缩、封装、Binding SID粘连能力等行为能力,以将第一节点的支持的SRv6压缩、封装、Binding SID粘连能力等行为能力在OSPFv3的区域(area)内发布、解析和泛洪等。 Based on the OSPFv3 protocol, a new type of sub TLV can be added under the SRv6Capabilities TLV of the OSPFv3Router Information LSA (used to describe the status of all interfaces of the node) in the protocol number to carry the supported SRv6 compression, encapsulation, Binding SID adhesion capabilities and other behavioral capabilities, so as to publish, parse and flood the supported SRv6 compression, encapsulation, Binding SID adhesion capabilities and other behavioral capabilities of the first node in the OSPFv3 area.
SRv6Capabilities TLV新增扩展的sub TLV包括但不限于如下形式的sub TLV:32bit压缩能力sub TLV,16bit压缩能力sub TLV,封装能力sub TLV,Binding SID粘连能力sub TLV等。在每个sub TLV中,利用bit位标识具体的各种能力。The newly added extended sub TLVs of SRv6Capabilities TLV include but are not limited to the following sub TLVs: 32-bit compression capability sub TLV, 16-bit compression capability sub TLV, encapsulation capability sub TLV, Binding SID adhesion capability sub TLV, etc. In each sub TLV, bits are used to identify specific capabilities.
示例性的,如图12所示,每个sub TLV,length为4,有32个bit用来标识这类行为能力。其中,32bit压缩能力、16bit压缩能力、封装能力和Binding SID粘连能力的具体示例可以参考ISIS协议的对应描述。For example, as shown in Figure 12, each sub TLV has a length of 4 and 32 bits to identify this type of behavior capability. For specific examples of 32-bit compression capability, 16-bit compression capability, encapsulation capability, and Binding SID adhesion capability, refer to the corresponding description of the ISIS protocol.
三、边界网关链路状态协议(border gateway protocol-link state,BGP-LS)3. Border Gateway Protocol-Link State (BGP-LS)
基于BGP-LS协议,可以在部署了BGP-LS的第一节点通过BGP-LS向控制器上报第一节点的SRv6压缩、封装、Binding SID粘连能力等行为能力。新增扩展的顶层(top-level)TLV包括但不限于如下形式的top-level TLV:32bit压缩能力sub TLV,16bit压缩能力sub TLV,封装能力sub TLV,Binding SID粘连能力sub TLV等。Based on the BGP-LS protocol, the first node where BGP-LS is deployed can report the first node's SRv6 compression, encapsulation, Binding SID adhesion capabilities and other behavioral capabilities to the controller through BGP-LS. The newly added extended top-level TLVs include but are not limited to the following top-level TLVs: 32-bit compression capability sub TLV, 16-bit compression capability sub TLV, encapsulation capability sub TLV, Binding SID adhesion capability sub TLV, etc.
示例性的,一并参考图12,在每个sub TLV中,利用bit位标识具体的各种行为能力。每个sub TLV,length为4,有32个bit用来标识这类能力。其中,32bit压缩能力、16bit压缩能力、封装能力和Binding SID粘连能力的具体示例可以参考ISIS协议的对应描述。For example, referring to FIG. 12, in each sub TLV, bits are used to identify specific various behavior capabilities. Each sub TLV has a length of 4 and 32 bits to identify such capabilities. For specific examples of 32-bit compression capability, 16-bit compression capability, encapsulation capability, and Binding SID adhesion capability, refer to the corresponding description of the ISIS protocol.
四、路径计算单元通信协议(path computation element communication protocol,PCEP)4. Path Computation Element Communication Protocol (PCEP)
基于PCEP协议,可以在部署了PCEP的第一节点通过PCEP向控制器上报第一节点支持的SRv6压缩、封装、Binding SID粘连能力等行为能力。该行为能力将携带于协议号中34号PATH-SETUP-TYPE-CAPABILITY TLV(用于表示支持创建路径能力的TLV)下新增的sub-TLV中。Based on the PCEP protocol, the first node where PCEP is deployed can report the SRv6 compression, encapsulation, Binding SID adhesion and other behavioral capabilities supported by the first node to the controller through PCEP. The behavioral capabilities will be carried in the sub-TLV newly added under PATH-SETUP-TYPE-CAPABILITY TLV No. 34 in the protocol number (TLV used to indicate support for path creation capabilities).
34号PATH-SETUP-TYPE-CAPABILITY TLV新增扩展的sub TLV包括但不限于如下形式的sub TLV:32bit压缩能力sub TLV,16bit压缩能力sub TLV,封装能力sub TLV,Binding SID粘连能力sub TLV等。The newly added extended sub TLVs of PATH-SETUP-TYPE-CAPABILITY TLV No. 34 include but are not limited to the following sub TLVs: 32-bit compression capability sub TLV, 16-bit compression capability sub TLV, encapsulation capability sub TLV, Binding SID adhesion capability sub TLV, etc.
示例性的,一并参考图12,在每个sub TLV中,利用bit位标识具体的各种行为能力。每个sub TLV,length为4,有32个bit用来标识这类行为能力。For example, referring to FIG. 12 , in each sub TLV, bits are used to identify specific behavior capabilities. Each sub TLV has a length of 4 and 32 bits are used to identify such behavior capabilities.
应理解,上述各个协议仅为本申请实施例所提供的示例,实际控制器和第一节点也可以基于其他预设协议进行通信,本申请实施例对此不作限制。It should be understood that the above-mentioned protocols are merely examples provided in the embodiments of the present application. The actual controller and the first node may also communicate based on other preset protocols, and the embodiments of the present application are not limited to this.
对于通告了自身支持的SRv6压缩、封装、Binding SID粘连能力等能力信息的第一节点,控制器将基于接收到的第一节点支持的SRv6压缩、封装、Binding SID粘连能力等能力信息向第一节点下发SRv6SID标签栈,即下发SL,其中,控制器给第一节点下发的SRv6标签栈的SID中,将不会含有第一节点不支持的SRv6压缩、封装、Binding SID粘连能力的SID,也可以理解为,控制器给第一节点下发的SRv6标签栈的SID中,SID的行为属性所要求的行为能力中,不包含第一节点不支持的SRv6压缩、封装或Binding SID粘连能力等行为能力。对于没有通告自身支持的SRv6压缩、封装、Binding SID粘连能力的能力信息的节点,控制器将按照原本的策略向该节点下发SR Policy标签栈。For the first node that has announced its supported SRv6 compression, encapsulation, Binding SID adhesion capability and other capability information, the controller will issue an SRv6 SID label stack to the first node based on the received SRv6 compression, encapsulation, Binding SID adhesion capability and other capability information supported by the first node, that is, issue an SL, wherein the SID of the SRv6 label stack issued by the controller to the first node will not contain the SID of the SRv6 compression, encapsulation, Binding SID adhesion capability that the first node does not support. It can also be understood that the behavior capabilities required by the behavior attributes of the SID in the SRv6 label stack issued by the controller to the first node do not include the behavior capabilities such as SRv6 compression, encapsulation or Binding SID adhesion capability that the first node does not support. For the node that has not announced its supported SRv6 compression, encapsulation, Binding SID adhesion capability, the controller will issue the SR Policy label stack to the node according to the original policy.
可选的,第一节点向控制器发送的能力信息中,还可以包括第一节点不支持的行为能力,以便控制器的判断。Optionally, the capability information sent by the first node to the controller may also include behavior capabilities not supported by the first node to facilitate the judgment of the controller.
可选的,如图13所示,在基于上述IS-IS协议、OSPFv3协议或BGP-LS协议中通信的场景中,第一节点还可以接收来自远端节点上报的能力信息,并一同发送给控制器,即第一节点发送的能力信息还包括第二节点支持的行为能力,控制器除了可以根据能力信息向第一节点下发第一段列表,还可以根据能力信息向第二节点下发第二段列表,第二段列表包括一个或多个第二段标识,一个或多个第二段标识的行为属性所要求的行为能力中,不包含第二节点不支持的行为能力。Optionally, as shown in Figure 13, in a scenario of communication based on the above-mentioned IS-IS protocol, OSPFv3 protocol or BGP-LS protocol, the first node can also receive capability information reported from the remote node and send it to the controller together, that is, the capability information sent by the first node also includes behavioral capabilities supported by the second node. In addition to sending the first segment list to the first node based on the capability information, the controller can also send the second segment list to the second node based on the capability information. The second segment list includes one or more second segment identifiers, and the behavioral capabilities required by the behavioral attributes of the one or more second segment identifiers do not include behavioral capabilities that are not supported by the second node.
201、第一节点接收第二节点发送的第二节点支持的行为能力。201. A first node receives a behavior capability supported by a second node and sent by the second node.
202、第一节点发送能力信息给控制器。202. The first node sends capability information to the controller.
203、控制器根据能力信息向第一节点下发第一段列表。203. The controller sends a first segment list to the first node according to the capability information.
204、控制器根据能力信息向第二节点下发第二段列表。204. The controller sends a second segment list to the second node according to the capability information.
应理解,步骤203和步骤204的执行先后顺序不限。It should be understood that the execution order of step 203 and step 204 is not limited.
下面再结合一个示例对本申请实施例提供的信息传输方法进行说明。 The information transmission method provided in the embodiment of the present application is described below with reference to an example.
如图14所示,在网络节点的升级场景中,各个网络节点在内部网关协议(interior gateway protocol,IGP)域内,通过IGP协议泛洪支持的SRv6压缩、封装、Binding SID粘连等能力。部署了BGP-LS的节点向控制器上报自身节点和接收到的远端节点的支持的SRv6压缩、封装、Binding SID粘连等能力信息。控制器将基于接收到的节点支持的SRv6压缩、封装、Binding SID粘连等能力信息向节点下发SID标签栈。As shown in Figure 14, in the upgrade scenario of network nodes, each network node floods the supported SRv6 compression, encapsulation, Binding SID adhesion and other capabilities through the interior gateway protocol (IGP) protocol in the IGP domain. The node deployed with BGP-LS reports the supported SRv6 compression, encapsulation, Binding SID adhesion and other capability information of its own node and the received remote node to the controller. The controller will issue the SID label stack to the node based on the received SRv6 compression, encapsulation, Binding SID adhesion and other capability information supported by the node.
其中,头节点0初始时为老版本设备,不支持next压缩能力,不支持encap封装能力,节点0将支持的能力信息在IGP域内通过上述ISIS/OSPFv3扩展协议解析、发布、泛洪,通过BGP-LS扩展协议上报给控制器,其中节点0支持的能力信息中不包括next压缩能力和encap封装能力,则控制器基于能力信息向该节点下发SR Policy标签栈,该标签栈中将不会含有带usp和next行为属性的SID。Among them, the head node 0 is initially an old version device, which does not support the next compression capability and the encap encapsulation capability. Node 0 parses, publishes, and floods the supported capability information in the IGP domain through the above-mentioned ISIS/OSPFv3 extension protocol, and reports it to the controller through the BGP-LS extension protocol. The capability information supported by node 0 does not include the next compression capability and the encap encapsulation capability. The controller then sends the SR Policy label stack to the node based on the capability information, and the label stack will not contain SIDs with the usp and next behavior attributes.
然后,头节点0升级为新版本设备,支持next压缩能力,支持encap封装能力,节点0将支持next压缩能力和支持encap封装能力的能力信息在IGP域内通过ISIS/OSPFv3扩展协议解析、发布、泛洪,通过BGP-LS扩展协议上报给控制器,控制器向该节点下发SR Policy标签栈,该标签栈中将可以含有带usp和next行为属性的SID。本申请实施例中,控制器接收第一节点上报的第一节点支持的行为能力,并根据支持的行为能力向第一节点下发第一段列表,其中,第一段列表包括一个或多个第一段标识,即控制器在向节点发送段列表前,会先确定节点支持的行为能力和段列表中各个段标识要求的行为能力,只有在节点具备各个段标识要求的行为能力时才下发段列表,保证转发路径不会失效。Then, the head node 0 is upgraded to a new version device, which supports the next compression capability and the encap encapsulation capability. Node 0 will parse, publish, and flood the capability information of supporting the next compression capability and the encap encapsulation capability in the IGP domain through the ISIS/OSPFv3 extension protocol, and report it to the controller through the BGP-LS extension protocol. The controller sends the SR Policy label stack to the node, which may contain SIDs with usp and next behavior attributes. In the embodiment of the present application, the controller receives the behavior capabilities supported by the first node reported by the first node, and sends the first segment list to the first node according to the supported behavior capabilities, wherein the first segment list includes one or more first segment identifiers, that is, before sending the segment list to the node, the controller will first determine the behavior capabilities supported by the node and the behavior capabilities required by each segment identifier in the segment list, and only send the segment list when the node has the behavior capabilities required by each segment identifier, so as to ensure that the forwarding path will not fail.
以上介绍了本申请实施例提供的信息传输方法,下面结合附图介绍本申请实施例提供的相关设备。The above introduces the information transmission method provided in the embodiment of the present application. The following introduces the related equipment provided in the embodiment of the present application in conjunction with the accompanying drawings.
请参阅图15,本申请实施例中控制器1500的一个实施例包括:Please refer to FIG. 15 , an embodiment of a controller 1500 in the embodiment of the present application includes:
接收单元1501,用于接收第一节点上报的能力信息,能力信息包括第一节点支持的行为能力;该接收单元1501可以用于执行前述方法实施例中的步骤101或步骤202。The receiving unit 1501 is used to receive capability information reported by the first node, where the capability information includes behavior capabilities supported by the first node; the receiving unit 1501 can be used to execute step 101 or step 202 in the aforementioned method embodiment.
发送单元1502,用于根据能力信息向第一节点下发第一段列表,第一段列表包括一个或多个第一段标识。该发送单元1502可以用于执行前述方法实施例中的步骤102或步骤203。The sending unit 1502 is configured to send a first segment list to the first node according to the capability information, wherein the first segment list includes one or more first segment identifiers. The sending unit 1502 may be configured to execute step 102 or step 203 in the above method embodiment.
可选的,一个或多个第一段标识的行为属性所要求的行为能力中,不包含第一节点不支持的行为能力。Optionally, the behavior capabilities required by the behavior attributes identified by one or more first segments do not include behavior capabilities that are not supported by the first node.
可选的,第一节点支持的行为能力包括压缩能力、封装能力和粘连能力中的至少一项。Optionally, the behavior capabilities supported by the first node include at least one of compression capability, encapsulation capability, and adhesion capability.
可选的,控制器1500和第一节点基于预设通信协议进行通信,预设通信协议包括中间系统到中间系统ISIS协议、第3版开放式最短路径优先OSPFv3协议、BGP链路状态BGP-LS协议或路径计算单元通信PCEP协议中的任一项。Optionally, the controller 1500 and the first node communicate based on a preset communication protocol, and the preset communication protocol includes any one of the Intermediate System to Intermediate System ISIS protocol, the Open Shortest Path First OSPFv3 version 3 protocol, the BGP Link State BGP-LS protocol, or the Path Computation Unit Communication PCEP protocol.
可选的,能力信息包含于预设通信协议下新增的结构数据TLV、子TLV或子子TLV中。Optionally, the capability information is included in a structure data TLV, sub-TLV or sub-sub-TLV newly added under the preset communication protocol.
可选的,能力信息还包括第二节点支持的行为能力,第二节点支持的行为能力为第二节点发送给第一节点的,发送单元1502还用于根据能力信息向第二节点下发第二段列表,第二段列表包括一个或多个第二段标识,一个或多个第二段标识的行为属性所要求的行为能力中,不包含第二节点不支持的行为能力。该发送单元1502还可以用于执行前述方法实施例中的步骤204。Optionally, the capability information also includes the behavior capabilities supported by the second node, and the behavior capabilities supported by the second node are sent by the second node to the first node. The sending unit 1502 is also used to send a second segment list to the second node according to the capability information, and the second segment list includes one or more second segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more second segment identifiers do not include behavior capabilities that are not supported by the second node. The sending unit 1502 can also be used to execute step 204 in the aforementioned method embodiment.
本申请实施例提供的控制器1500可以参阅前述信息传输方法实施例部分的相应内容进行理解,例如该控制器1500为前述信息传输方法实施例中的控制器,此处不再重复赘述。The controller 1500 provided in the embodiment of the present application can be understood by referring to the corresponding content of the aforementioned information transmission method embodiment. For example, the controller 1500 is the controller in the aforementioned information transmission method embodiment, and will not be repeated here.
请参阅图16,本申请实施例中网络节点1600的一个实施例包括:Please refer to FIG. 16 , an embodiment of a network node 1600 in an embodiment of the present application includes:
发送单元1601,用于发送能力信息给控制器,能力信息包括第一节点支持的行为能力;该发送单元1601可以用于执行前述方法实施例中的步骤101或步骤202。The sending unit 1601 is used to send capability information to the controller, where the capability information includes the behavior capabilities supported by the first node; the sending unit 1601 can be used to execute step 101 or step 202 in the aforementioned method embodiment.
接收单元1602,用于接收控制器发送的第一段列表,第一段列表包括一个或多个第一段标识。该接收单元1602可以用于执行前述方法实施例中的步骤102或步骤203。The receiving unit 1602 is configured to receive a first segment list sent by the controller, wherein the first segment list includes one or more first segment identifiers. The receiving unit 1602 may be configured to execute step 102 or step 203 in the above method embodiment.
可选的,一个或多个第一段标识的行为属性所要求的行为能力中,不包含第一节点不支持的行为能力。Optionally, the behavior capabilities required by the behavior attributes identified by one or more first segments do not include behavior capabilities that are not supported by the first node.
可选的,第一节点支持的行为能力包括压缩能力、封装能力和粘连能力中的至少一项。Optionally, the behavior capabilities supported by the first node include at least one of compression capability, encapsulation capability, and adhesion capability.
可选的,控制器和第一节点基于预设通信协议进行通信,预设通信协议包括中间系统到中间系统ISIS协议、第3版开放式最短路径优先OSPFv3协议、BGP链路状态BGP-LS协议或路径计算单元通信PCEP 协议中的任一项。Optionally, the controller and the first node communicate based on a preset communication protocol, and the preset communication protocol includes an intermediate system to intermediate system ISIS protocol, an open shortest path first OSPFv3 protocol version 3, a BGP link state BGP-LS protocol, or a path computation unit communication PCEP protocol. Any item in the Agreement.
可选的,能力信息包含于预设通信协议下新增的结构数据TLV、子TLV或子子TLV中。Optionally, the capability information is included in a structure data TLV, sub-TLV or sub-sub-TLV newly added under the preset communication protocol.
可选的,接收单元1602还用于接收第二节点发送的第二节点支持的行为能力,以使控制器根据能力信息向第二节点下发第二段列表,能力信息还包括第二节点支持的行为能力,第二段列表包括一个或多个第二段标识,一个或多个第二段标识的行为属性所要求的行为能力中,不包含第二节点不支持的行为能力。该接收单元1602还可以用于执行前述方法实施例中的步骤201。Optionally, the receiving unit 1602 is further used to receive the behavior capabilities supported by the second node sent by the second node, so that the controller sends a second segment list to the second node according to the capability information, the capability information also includes the behavior capabilities supported by the second node, the second segment list includes one or more second segment identifiers, and the behavior capabilities required by the behavior attributes of the one or more second segment identifiers do not include behavior capabilities not supported by the second node. The receiving unit 1602 can also be used to execute step 201 in the aforementioned method embodiment.
本申请实施例提供的网络节点1600可以参阅前述信息传输方法实施例部分的相应内容进行理解,例如该网络节点1600为前述信息传输方法实施例中的第一节点或第二节点,此处不再重复赘述。The network node 1600 provided in the embodiment of the present application can be understood by referring to the corresponding content of the aforementioned information transmission method embodiment. For example, the network node 1600 is the first node or the second node in the aforementioned information transmission method embodiment, and will not be repeated here.
如图17控制器所示,为本申请的实施例提供的控制器1700的一种可能的逻辑结构示意图。控制器1700包括:处理器1701、通信接口1702、存储系统1703以及总线1704。处理器1701、通信接口1702以及存储系统1703通过总线1704相互连接。在本申请的实施例中,处理器1701用于对控制器1700的动作进行控制管理,例如,处理器1701用于执行上述实施例所描述控制器执行的信息传输方法。通信接口1702用于支持控制器1700进行通信。存储系统1703,用于存储控制器1700的程序代码和数据。As shown in the controller of Figure 17, it is a possible logical structure diagram of the controller 1700 provided in the embodiment of the present application. The controller 1700 includes: a processor 1701, a communication interface 1702, a storage system 1703 and a bus 1704. The processor 1701, the communication interface 1702 and the storage system 1703 are interconnected through the bus 1704. In the embodiment of the present application, the processor 1701 is used to control and manage the actions of the controller 1700. For example, the processor 1701 is used to execute the information transmission method performed by the controller described in the above embodiment. The communication interface 1702 is used to support the controller 1700 to communicate. The storage system 1703 is used to store the program code and data of the controller 1700.
其中,处理器1701可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1701也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。总线1704可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图17中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。Among them, the processor 1701 can be a central processing unit, a general processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. The processor 1701 can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like. The bus 1704 can be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in FIG. 17, but it does not mean that there is only one bus or one type of bus.
如图18网络节点所示,为本申请的实施例提供的网络节点1800的一种可能的逻辑结构示意图。网络节点1800包括:处理器1801、通信接口1802、存储系统1803以及总线1804。处理器1801、通信接口1802以及存储系统1803通过总线1804相互连接。在本申请的实施例中,处理器1801用于对网络节点1800的动作进行控制管理,例如,处理器1801用于执行上述实施例所描述网络节点执行的信息传输方法。通信接口1802用于支持网络节点1800进行通信。存储系统1803,用于存储网络节点1800的程序代码和数据。As shown in the network node of Figure 18, a possible logical structure diagram of a network node 1800 provided in an embodiment of the present application is provided. The network node 1800 includes: a processor 1801, a communication interface 1802, a storage system 1803 and a bus 1804. The processor 1801, the communication interface 1802 and the storage system 1803 are interconnected via the bus 1804. In an embodiment of the present application, the processor 1801 is used to control and manage the actions of the network node 1800. For example, the processor 1801 is used to execute the information transmission method performed by the network node described in the above embodiment. The communication interface 1802 is used to support the network node 1800 to communicate. The storage system 1803 is used to store the program code and data of the network node 1800.
其中,处理器1801可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1801也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。总线1804可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图18中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。Among them, the processor 1801 can be a central processing unit, a general processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. The processor 1801 can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like. The bus 1804 can be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in Figure 18, but it does not mean that there is only one bus or one type of bus.
如图19所示,本申请实施例还提供了一种通信系统,该通信系统包括控制器1910和网络节点1920。As shown in FIG. 19 , an embodiment of the present application further provides a communication system, which includes a controller 1910 and a network node 1920 .
控制器1910可以为如图15所示的控制器或如图17所示的控制器,例如控制器1910包括:处理器1911、通信接口1912、存储系统1913以及总线1914。处理器1911、通信接口1912以及存储系统1913通过总线1914相互连接。在本申请的实施例中,处理器1911用于对控制器1910的动作进行控制管理,例如,处理器1911用于执行上述实施例所描述控制器执行的信息传输方法。通信接口1912用于支持控制器1910进行通信。存储系统1913,用于存储控制器1910的程序代码和数据。The controller 1910 may be a controller as shown in FIG. 15 or a controller as shown in FIG. 17 . For example, the controller 1910 includes: a processor 1911, a communication interface 1912, a storage system 1913, and a bus 1914. The processor 1911, the communication interface 1912, and the storage system 1913 are interconnected via the bus 1914. In an embodiment of the present application, the processor 1911 is used to control and manage the actions of the controller 1910. For example, the processor 1911 is used to execute the information transmission method executed by the controller described in the above embodiment. The communication interface 1912 is used to support the controller 1910 to communicate. The storage system 1913 is used to store the program code and data of the controller 1910.
网络节点1920可以为如图16所示的控制器或如图18所示的网络节点,例如网络节点1920包括:处理器1921、通信接口1922、存储系统1923以及总线1924。处理器1921、通信接口1922以及存储系统1923通过总线1924相互连接。在本申请的实施例中,处理器1921用于对网络节点1920的动作进行控制管理,例如,处理器1921用于执行上述实施例所描述控制器执行的信息传输方法。通信接口1922用于支持网络节点1920进行通信。存储系统1923,用于存储网络节点1920的程序代码和数据。The network node 1920 may be a controller as shown in FIG. 16 or a network node as shown in FIG. 18. For example, the network node 1920 includes: a processor 1921, a communication interface 1922, a storage system 1923, and a bus 1924. The processor 1921, the communication interface 1922, and the storage system 1923 are interconnected via the bus 1924. In an embodiment of the present application, the processor 1921 is used to control and manage the actions of the network node 1920. For example, the processor 1921 is used to execute the information transmission method executed by the controller described in the above embodiment. The communication interface 1922 is used to support the network node 1920 to communicate. The storage system 1923 is used to store the program code and data of the network node 1920.
控制器1910和网络节点1920之间通过网络进行连接。具体地,通过控制器1910和网络节点1920 中的通信接口与所述网络进行连接,网络协议具体可以为ISIS协议、OSPFv3协议、BGP-LS协议或PCEP协议。The controller 1910 and the network node 1920 are connected via a network. The communication interface in is connected to the network, and the network protocol may specifically be ISIS protocol, OSPFv3 protocol, BGP-LS protocol or PCEP protocol.
在本申请的另一实施例中,还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当设备的至少一个处理器执行该计算机执行指令时,设备执行上述实施例所描述的信息传输方法。In another embodiment of the present application, a computer-readable storage medium is provided, in which computer-executable instructions are stored. When at least one processor of a device executes the computer-executable instructions, the device executes the information transmission method described in the above embodiment.
在本申请的另一实施例中,还提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中;设备的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得设备执行上述实施例所描述的信息传输方法。In another embodiment of the present application, a computer program product is also provided, which includes computer execution instructions, which are stored in a computer-readable storage medium; at least one processor of the device can read the computer execution instructions from the computer-readable storage medium, and at least one processor executes the computer execution instructions so that the device executes the information transmission method described in the above embodiment.
在本申请的另一实施例中,还提供一种芯片系统,该芯片系统包括至少一个处理器和接口,该接口用于接收数据和/或信号,至少一个处理器用于支持实现上述实施例所描述的信息传输方法。在一种可能的设计中,芯片系统还可以包括存储器,存储器,用于保存计算机设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。In another embodiment of the present application, a chip system is also provided, the chip system includes at least one processor and an interface, the interface is used to receive data and/or signals, and at least one processor is used to support the information transmission method described in the above embodiment. In one possible design, the chip system may also include a memory, the memory is used to store program instructions and data necessary for the computer device. The chip system can be composed of chips, and may also include chips and other discrete devices.
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of the present application.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。 If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), disk or optical disk and other media that can store program code.
Claims (27)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310151751.2A CN118540259A (en) | 2023-02-22 | 2023-02-22 | Information transmission method and related equipment |
| CN202310151751.2 | 2023-02-22 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024174668A1 true WO2024174668A1 (en) | 2024-08-29 |
Family
ID=92388280
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/136634 Ceased WO2024174668A1 (en) | 2023-02-22 | 2023-12-06 | Information transmission method and related device |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN118540259A (en) |
| WO (1) | WO2024174668A1 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110870260A (en) * | 2017-07-14 | 2020-03-06 | 华为技术有限公司 | IPv6 Segment Routing Tunnel Establishment Method |
| CN112511429A (en) * | 2020-03-25 | 2021-03-16 | 中兴通讯股份有限公司 | Method, node, controller and computer readable medium for information transmission and processing |
| WO2021155759A1 (en) * | 2020-02-07 | 2021-08-12 | 中国移动通信有限公司研究院 | Method and device for processing segment identifier |
| CN115314562A (en) * | 2022-08-09 | 2022-11-08 | 中国电信股份有限公司 | Header compression method, device, device and medium for cross-domain transmission of SRv6 data message |
-
2023
- 2023-02-22 CN CN202310151751.2A patent/CN118540259A/en active Pending
- 2023-12-06 WO PCT/CN2023/136634 patent/WO2024174668A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110870260A (en) * | 2017-07-14 | 2020-03-06 | 华为技术有限公司 | IPv6 Segment Routing Tunnel Establishment Method |
| WO2021155759A1 (en) * | 2020-02-07 | 2021-08-12 | 中国移动通信有限公司研究院 | Method and device for processing segment identifier |
| CN112511429A (en) * | 2020-03-25 | 2021-03-16 | 中兴通讯股份有限公司 | Method, node, controller and computer readable medium for information transmission and processing |
| CN115314562A (en) * | 2022-08-09 | 2022-11-08 | 中国电信股份有限公司 | Header compression method, device, device and medium for cross-domain transmission of SRv6 data message |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118540259A (en) | 2024-08-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20220360525A1 (en) | Packet Processing Method, Apparatus, and System | |
| US9894003B2 (en) | Method, apparatus and system for processing data packet | |
| JP7481436B2 (en) | Method, device and system for forwarding packets in a SR network | |
| EP4009596B1 (en) | Message forwarding method, device, and system in sr network | |
| WO2022184169A1 (en) | Packet forwarding method and system, storage medium, and electronic device | |
| JP2023549797A (en) | BIER packet forwarding methods, devices, and systems | |
| US20220191138A1 (en) | Method for Making Host Network Performance Requirement Programmable, Device, and System | |
| CN111510386A (en) | Method and device for processing message | |
| CN115277526B (en) | Communication method and device | |
| CN115277530A (en) | Data processing method, device, equipment and medium based on SRv6 protocol | |
| CN116192995B (en) | A message processing method, device and system | |
| CN101499958B (en) | Method, system and routing device for implementing sub-interface by high-speed physical interface | |
| WO2024001701A1 (en) | Data processing method, apparatus and system | |
| WO2023078031A1 (en) | Message sending method and apparatus | |
| US20240283738A1 (en) | Packet Processing Method, Apparatus, and System | |
| WO2024174668A1 (en) | Information transmission method and related device | |
| CN114584509A (en) | A communication method and related equipment | |
| CN115567434B (en) | Data message forwarding method, device and routing equipment | |
| WO2024041064A1 (en) | Quic packet transmission method and related device | |
| WO2023208056A1 (en) | Method, apparatus and system for processing message | |
| WO2022135321A1 (en) | Packet transmission method, device and system | |
| CN115460138B (en) | Network intercommunication method and device | |
| CN115460140B (en) | Network intercommunication method and device | |
| CN115460141B (en) | Network intercommunication method and device | |
| WO2024098244A1 (en) | Node protection method and apparatus, electronic device, and medium |
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: 23923831 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |