CN114531360A - Semantic name acquisition method, device, equipment and storage medium - Google Patents

Semantic name acquisition method, device, equipment and storage medium Download PDF

Info

Publication number
CN114531360A
CN114531360A CN202011206224.XA CN202011206224A CN114531360A CN 114531360 A CN114531360 A CN 114531360A CN 202011206224 A CN202011206224 A CN 202011206224A CN 114531360 A CN114531360 A CN 114531360A
Authority
CN
China
Prior art keywords
network device
semantic name
segment identifier
semantic
network
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.)
Pending
Application number
CN202011206224.XA
Other languages
Chinese (zh)
Inventor
闫朝阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202011206224.XA priority Critical patent/CN114531360A/en
Priority to PCT/CN2021/099024 priority patent/WO2022088685A1/en
Publication of CN114531360A publication Critical patent/CN114531360A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting

Abstract

The embodiment of the application provides a semantic name acquisition method, a semantic name acquisition device, semantic name acquisition equipment and a semantic name storage medium, wherein the method comprises the following steps: receiving a message sent by first network equipment, wherein the message comprises a segment identifier and a semantic name of associated network equipment, and the semantic name is used for indicating the meaning of the segment identifier; and storing the incidence relation between the semantic name and the segment identifier. By implementing the embodiment of the application, the network equipment can be managed and operated conveniently according to the semantic name.

Description

Semantic name acquisition method, device, equipment and storage medium
Technical Field
The present application relates to the field of communications technologies, and in particular, to a semantic name obtaining method, apparatus, device, and storage medium.
Background
In the context of segment routing for IPv6, SRv6 based on the sixth version of the internet protocol, the routing protocol is generally run to dynamically assign a Segment Identification (SID) to each node or port in the network, where each SID is used to identify a node or a port. The controller establishes a network topology according to the collected information by collecting information (including SID, neighbor relation and the like of each node or port) of each node or port in the network, calculates and generates a forwarding strategy, and issues the forwarding strategy to a certain device or a plurality of devices, and each device forwards a message according to the forwarding strategy.
In some scenarios, it is necessary to specify that the forwarding policy must pass through a certain link or a certain node, but in the prior art, there is no scheme capable of conveniently and quickly specifying a certain link or a certain node.
Disclosure of Invention
The embodiment of the application discloses a semantic name acquisition method, a semantic name acquisition device, equipment, a semantic name acquisition system and a storage medium, which are convenient for managing and operating network equipment according to semantic names.
In a first aspect, the present application provides a semantic name obtaining method, including: receiving a message sent by a first network device, wherein the message comprises a segment identifier and a semantic name of an associated network device, and the semantic name is used for indicating the meaning of the segment identifier; and storing the incidence relation between the semantic name and the segment identifier.
The method can be applied to target equipment, and the target equipment receives a message sent by first network equipment, wherein the message comprises a segment identifier and a semantic name of associated network equipment, and stores the association relation between the semantic name and the segment identifier. The semantic name is used for indicating the meaning of the segment identifier, so that the target device can manage or use the segment identifier according to the semantic name.
Based on the first aspect, in a possible implementation manner, the associated network device is a first network device or a third network device.
The target device receives a message sent by a first network device, wherein the message comprises a segment identifier and a semantic name of an associated network device, and the associated device can be the first network device, namely the segment identifier and the corresponding semantic name of the first network device are sent by the first network device; the association device may also send segment identifications and corresponding semantic names of other network devices for a third network device, i.e. the first network device.
Based on the first aspect, in a possible implementation manner, after storing the association relationship between the semantic name and the segment identifier, the method further includes: displaying the association relationship between the semantic name and the segment identifier.
After the association relationship between the semantic name and the segment identifier is stored, the target device can also display the association relationship between the semantic name and the segment identifier through a graphical user interface, so that a network administrator can manage the segment identifier according to the association relationship.
Based on the first aspect, in a possible implementation manner, the semantic name is used to indicate that the segment identifier is used for going to a second network device, and the method further includes: and displaying a business view, wherein the business view is used for displaying the topological relation between the associated network equipment and the second network equipment.
In case the semantic name is used to indicate the segment identifier to the second network device, the target device can display the topological relation of the associated device and the second network device in the service view, so that the network administrator manages the segment identifier according to the associated relation.
Based on the first aspect, in a possible implementation manner, the method further includes: generating a forwarding policy, the forwarding policy including the segment identifier, wherein the forwarding policy is obtained from the semantic name; and sending the forwarding strategy, wherein the forwarding strategy is used for indicating the use of the segment identifier.
When the target device is the control device, the target device can generate a forwarding strategy according to the semantic name and send the forwarding strategy to the underlying network. Therefore, the forwarding strategy is more convenient to generate.
In a second aspect, an embodiment of the present application provides a semantic name obtaining method, which is described based on a first network device, and includes: the method comprises the steps that a first network device sends a first message to a target device, wherein the first message comprises a segment identifier and a semantic name of an associated network device, and the semantic name is used for indicating the meaning of the segment identifier.
The first network device sends a first message to a target device, where the first message includes a segment identifier and a semantic name of an associated network device, where the semantic name is used to indicate a meaning of the segment identifier, and specifically, the semantic name may indicate a function or a role of the segment identifier, may also indicate that the segment identifier goes to the network device, may also indicate that the segment identifier goes to another segment identifier, and so on. The target device may be a control device or a third network device, referred to herein as a third network device, for the purpose of distinguishing between other network devices.
Based on the second aspect, in a possible implementation manner, the associated network device is the first network device or the second network device.
Based on the second aspect, in a possible implementation manner, the associated network device includes a second network device, and the method further includes: and receiving a second message sent by the second network device, wherein the second message comprises the segment identifier and the semantic name.
When the target device is a control device and the associated network device is a second network device, the first network device further needs to receive a second packet sent by the second network device, where the second packet includes a segment identifier and a semantic name of the second network device.
Based on the second aspect, in a possible implementation manner, the first packet includes a segment identification type-length-value TLV field, and the TLV field includes a sub-TLV that includes the semantic name.
The first message comprises a segment identifier and a semantic name, wherein the segment identifier is a type-length-value TLV field, the TLV field comprises a sub-TLV, the value in the sub-TLV is the semantic name, and the length in the sub-TLV is the length of the semantic name.
Based on the second aspect, in a possible implementation manner, the first packet includes a border gateway protocol packet or an interior gateway protocol packet.
When the target device is a third network device, the first network device sends a first message to the third network device, if the two network devices belong to the same autonomous domain range, the first message is an interior gateway protocol message, and if the two network devices do not belong to the same autonomous domain range, the first message is a border gateway protocol message.
Based on the second aspect, in a possible implementation, the method is applied in a segment routing network.
The method described in any of the above embodiments is applied in a segment routed network, for example, an SRv6 network or an SR-MPLS network.
In a third aspect, an embodiment of the present application provides a semantic name obtaining apparatus, including a receiving unit, configured to receive a packet sent by a first network device, where the packet includes a segment identifier and a semantic name of an associated network device, where the semantic name is used to indicate a meaning of the segment identifier; and the storage unit is used for storing the incidence relation between the semantic name and the segment identifier.
Based on the third aspect, in a possible implementation manner, the apparatus further includes: and the display unit is used for displaying the incidence relation between the semantic name and the segment identifier.
Based on the third aspect, in a possible implementation manner, the semantic name is used to indicate that the segment identifier is used for going to a second network device, and the display unit is further configured to display a service view, where the service view is used to display a topological relation between the associated network device and the second network device.
Based on the third aspect, in a possible implementation manner, the apparatus further includes: a generating unit, configured to generate a forwarding policy, where the forwarding policy includes the segment identifier, and the forwarding policy is obtained according to the semantic name; a sending unit, configured to send the forwarding policy, where the forwarding policy is used to indicate that the segment identifier is used.
Each functional unit in the third aspect device is configured to implement the method described in any implementation manner of the first aspect and the first aspect.
In a fourth aspect, an embodiment of the present application further provides a semantic name obtaining apparatus, including: a sending unit, configured to send a first packet to a target device, where the first packet includes a segment identifier and a semantic name of an associated network device, where the semantic name is used to indicate a meaning of the segment identifier.
Based on the fourth aspect, in a possible implementation manner, the apparatus further includes a receiving unit, where the associated network device includes a second network device, and the receiving unit is configured to receive a second packet sent by the second network device, where the second packet includes the segment identifier and the semantic name.
Based on the fourth aspect, in a possible implementation manner, the first packet includes a segment identifier type-length-value TLV field, where the TLV field includes a sub-TLV, and the sub-TLV includes the semantic name.
Based on the fourth aspect, in a possible implementation manner, the packet includes a border gateway protocol packet or an interior gateway protocol packet.
Based on the fourth aspect, in a possible implementation manner, the apparatus is applied in a segment routing network.
Each functional unit in the fourth aspect device is configured to implement the method described in any implementation manner of the second aspect and the second aspect.
In a fifth aspect, an embodiment of the present application provides a semantic name obtaining apparatus, including a memory and a processor, where the memory is used to store instructions, and the processor is used to call the instructions stored in the memory, and execute the method described in the first aspect or any possible implementation manner of the first aspect.
In a sixth aspect, an embodiment of the present application provides yet another semantic name obtaining device, including a memory and a processor, where the memory is used to store instructions, and the processor is used to call the instructions stored in the memory, and execute the method described in the second aspect or any possible implementation manner of the second aspect.
In a seventh aspect, an embodiment of the present application provides a computer storage medium, which includes program instructions, and when the program instructions are executed on a computer, the computer executes the method according to the first aspect or any implementation manner of the first aspect.
In an eighth aspect, the present application provides a computer storage medium including program instructions, which when run on a computer, cause the computer to perform the method of the second aspect or any implementation manner of the second aspect.
In a ninth aspect, the present application provides a computer program product, where the computer program product includes program instructions, and when the computer program product is executed by a first semantic name obtaining device, the first semantic name obtaining device executes the method in the foregoing first aspect. The computer program product may be a software installation package, which, in case it is required to use the method provided by any of the possible designs of the first aspect described above, may be downloaded and executed on the first semantic name obtaining device to implement the method described in the first aspect or any of the possible implementations of the first aspect.
In a tenth aspect, the present application provides a further computer program product, which includes program instructions, and when the computer program product is executed by a second semantic name obtaining device, the second semantic name obtaining device executes the method according to the foregoing second aspect. The computer program product may be a software installation package, which, in case it is required to use the method provided by any of the possible designs of the second aspect described above, may be downloaded and executed on the second semantic name obtaining device to implement the method described in the second aspect or any of the possible embodiments of the second aspect.
In an eleventh aspect, an embodiment of the present application provides a system, where the system includes a target device and a first network device, where the target device is the semantic name obtaining apparatus described in the first aspect or any possible implementation manner of the first aspect, and the first network device is the semantic name obtaining apparatus described in the second aspect or any possible implementation manner of the second aspect.
The embodiment of the application provides a semantic name acquisition method, a semantic name acquisition device, semantic name acquisition equipment and a semantic name storage medium, wherein the method comprises the following steps: the first network equipment acquires the semantic name of the segment identifier, sends a message containing the segment identifier and the corresponding semantic name to the target equipment, and the target equipment receives and stores the segment identifier and the corresponding semantic name. In a possible implementation manner, the target device may further display an association relationship between the segment identifier and the semantic name in the service view, generate a forwarding policy according to the semantic name, send the forwarding policy to the underlying network, and forward the data packet by each network device in the underlying network according to the forwarding policy. According to the embodiment of the application, the semantic names are configured on the segment identifiers, so that the network equipment can be managed conveniently, and in actual scene application, relevant operation and relevant processing can be performed on the network equipment conveniently according to the semantic names.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a schematic diagram of a software-defined networking architecture provided herein;
fig. 2 is an exemplary diagram of a service chain scenario provided in the present application;
fig. 3 is a schematic flow chart of a semantic name obtaining method provided in the present application;
FIGS. 4 (a) - (c) are schematic diagrams of various SID types provided herein;
FIG. 5 is a schematic flow chart of another semantic name obtaining method provided in the present application;
FIG. 6 is a schematic diagram illustrating a semantic name displayed in a business view according to the present application;
FIG. 7 is a schematic diagram illustrating a semantic name displayed in a business view according to another embodiment of the present invention;
fig. 8 is a schematic diagram of a forwarding policy provided in the present application;
FIG. 9 is a schematic diagram of a segment list sequence provided herein;
FIG. 10 is a schematic flow chart illustrating a semantic name obtaining method according to the present application;
FIG. 11 is a diagram of a sub-TLV field provided herein;
FIG. 12 is a schematic flow chart illustrating another semantic name obtaining method provided in the present application;
fig. 13 is an exemplary diagram of an application scenario provided in the present application;
FIG. 14 is a schematic diagram illustrating a semantic name displayed in a business view according to the present application;
fig. 15 is a schematic structural diagram of a semantic name obtaining apparatus according to the present application;
fig. 16 is a schematic structural diagram of another semantic name obtaining apparatus provided in the present application;
fig. 17 is a schematic structural diagram of a network device provided in the present application;
fig. 18 is a schematic structural diagram of another network device provided in the present application;
fig. 19 is a schematic structural diagram of a system provided in the present application.
Detailed Description
The terminology used in the description of the embodiments section of the present application is for the purpose of describing particular embodiments of the present application only and is not intended to be limiting of the present application.
The terms "first," "second," "third," and the like in this application are used for distinguishing between similar items and items that have substantially the same function or similar functionality, and it is to be understood that "first," "second," and "third" do not have any logical or temporal dependency or limitation on the number or order of execution.
To facilitate an understanding of the present application, some of the routing protocols referred to in the present application will first be briefly explained.
Routing protocols may be divided into interior gateway routing protocols (IGPs) and exterior gateway routing protocols (EGPs). IGP is generally a routing protocol used in an Autonomous System (AS), and mainly aims to discover and calculate routing information in a self-made system, and exchange routing information in the same autonomous system, such AS an Open Shortest Path First (OSPF) protocol, an intermediate-to-intermediate (ISIS) protocol, and the like, which all belong to an interior gateway routing protocol. EGPs are generally used between different autonomous systems to perform dynamic exchange of routing information between the autonomous systems, wherein Border Gateway Protocol (BGP) is the most common external gateway routing protocol, and is commonly used between gateways of the internet.
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application.
Software Defined Network (SDN) is a new network architecture, and the SDN system architecture enables general programmers to define network functions by using general software on a general operating system of a general server, so that the network can be programmed. The control plane of the network is separated from the data forwarding plane, so that the programmability is realized through the centralized control area, the bottom hardware is controlled, and the flexible allocation of network resources according to needs is realized. The SDN network architecture is divided into three layers, as shown in fig. 1, fig. 1 is a schematic diagram of an SDN system architecture provided in the present application, and the architecture is described in the present application100Including an application layer, a control layer, and a forwarding layer. The application layer is an upper application program which embodies the user intention and comprises various different services and applications; the control layer is responsible for processing the arrangement of data forwarding plane data, maintaining network topology, state information and the like, including the collection of the network topology, the calculation of routing, the generation and the issuing of forwarding strategies, the management and the control of the network and the like; the forwarding layer is responsible for forwarding traffic and executing policies.
The control layer is a control center of the whole system architecture, the entity implementation of the control layer is a controller, and the controller is also the most core component of the system architecture. The control layer is connected with the application layer through a northbound interface and is connected with the forwarding layer through a southbound interface, the controller issues the calculated forwarding strategy to the repeater of the forwarding layer through a southbound protocol, and the repeater forwards the message according to the forwarding strategy.
Segment Routing (SR) is a protocol designed based on the concept of source routing to control forwarding of data packets in a network. SR divides the network path into segments, and assigns Segment IDs (SID) to the segments and network nodes, and by arranging the SIDs in order, a SID List (also called label stack in SR-MPLS) can be obtained, where the SID List can indicate a forwarding path. By carrying the sequentially arranged segment identifiers in the data packet, the data packet can be transmitted through the forwarding path indicated by the segment identifiers. Through the SR technology, the node and the path through which the data packet carrying the SIDList passes can be specified, so that the requirement of traffic optimization is met. By way of an analogy, the data packet may be compared to luggage, the SR may be compared to labels attached to luggage, and if luggage is to be sent from area a to area D, on the way to area B and area C, the luggage may be attached with a label "first to area B, then to area C, and finally to area D" at originating area a, so that each area only needs to identify the label on the luggage and forward luggage from one area to another according to the label of the luggage. In the SR technique, a source node adds a label to a packet, and an intermediate node may forward the packet to a next node according to the label until the packet reaches a destination node.
Segment routing (SRv6) based on Internet Protocol Version 6 (IPv 6): refers to the application of SR technology in IPv6 networks.
In some scenarios, a corresponding SID list needs to be specified for a service, so as to determine a path corresponding to a packet. For example, fig. 2 is an exemplary view of a service chain scenario provided in this application scenario, where the service chain includes a router R1, a Provider Edge router (PE) PE1, a PE2, a PE3, and other devices, where a value added service device VAS1 and a value added service device VAS2 are mounted on a router R1, and a forwarding path of a service chain request packet is started by the router PE1, first passes through the value added service device VAS1, then passes through the value added service device VAS2, and forwards the service chain request packet to the router PE 3. In this case, after the controller collects the network link state information, in the process of scheduling the service chain, the port information of the R1 device may only be found in the network link state information, and then by looking up the SIDs of the two ports of the R1 device, it is determined which port is connected to the VAS1 device and which port is connected to the VAS2 device, and then the SID of the port connected to the VAS1 device and the SID of the port connected to the VAS2 device are selected in sequence, or the SID of the port connected to the VAS1 device and the SID of the port connected to the VAS2 device are copied to the designated position of scheduling, so as to implement scheduling of the service chain. However, in a large-scale network, because there are a large number of network devices, it is necessary to find the target device and the SID corresponding to the target device in the large number of network devices, and if such a deployment manner of forwarding policy is adopted, the efficiency is extremely low, and it is inconvenient to manage.
In order to solve the above problem, the present application provides a semantic name obtaining method, which may be applied to a Segment Routing (SR) network and may also be applied to other similar networks.
Based on the SDN system architecture, a semantic name acquisition method provided by the application is introduced. Referring to fig. 3, fig. 3 is a schematic flow chart of a semantic name obtaining method provided in the present application, where the method includes, but is not limited to, the following descriptions of S101 to S103.
S101, the first network equipment acquires semantic names corresponding to segment identifiers of the associated network equipment.
In one example, the associated network device obtains a semantic name corresponding to its segment identifier for the first network device, i.e., the first network device.
In another example, the associated network device obtains the segment identifier and its corresponding semantic name for the second network device, i.e., the first network device. Specifically, the second network device first acquires the semantic name of its segment identifier, and then the second network device sends its segment identifier and semantic name to the first network device, so that the first network device acquires the segment identifier and semantic name of the second network device.
SIDs include, but are not limited to, node (node) SIDs, proxy (proxy) SIDs, binding (binding) SIDs, and the like. The End SID may be used to identify a destination address prefix in a network, for example, see the schematic diagram shown in fig. 4, fig. 4 is a schematic diagram of various SID types provided in the present application, and (a) in fig. 4, the network device 2 is connected to the network device 1 and the network device 3, and the End SID type SID a:: identify the network device 1, SID B:: identify the network device 2, SID C:: identify the network device 3; the end.X SID can be used to identify a certain link in the network, for example, referring to the schematic diagram shown in (b) of FIG. 4, the network device is a node with three layers crossing, and the corresponding link can be identified by SID A::1, SID A::2, and SID A::3 of the end.X SID type, respectively. The binding SID type may be used to identify a certain tunnel in the network, for example, see the schematic diagram shown in fig. 4 (c), where an Autonomous System Border Router (ASBR) ASBR2, a network device P2, and a network device PE2 form tunnel 1, and a network device ASBR3, a network device P3, and a network device PE3 form tunnel 2, and when representing a forwarding path or a segment list, the entire tunnel 1 may be identified by a SID of the binding SID type. The proxy SID type may include an end.ad SID, an end.as SID, and the like, where the end.as SID is a static SID, generally set manually and statically, and the end.ad SID is a dynamic SID, and is automatically generated after the routing protocol is run, and the proxy SID is used to provide an agent for a certain object to control access of other objects to the object. For example, in the example shown in fig. 2, SID1 and SID2 on router R1 are proxy SID types, where one proxy SID is to provide a proxy for value added device VAS1, and the other proxy SID is to provide a proxy for value added device VAS2, for convenience of description, a proxy port connected to device VAS1 on router R1 is identified by a proxy SID1 of a proxy SID type, and a proxy port connected to device VAS2 is identified by a proxy SID2 of a proxy SID type.
Semantic names are used to indicate the meaning of segment identifiers, including in particular, semantic names may be used to indicate the purpose of the segment identifier, the function of the segment identifier, to which network device the segment identifier goes, to which SID the segment identifier goes, and so on. For example, in the example shown in FIG. 2, the semantic name SID-of-VAS1 of SID1 is used to indicate that SID1 is used to go to VAS 1; the semantic name SID-of-VAS2 of SID2 indicates that SID2 is destined for device VAS2, and in an actual application scenario, VAS1 device and VAS2 device may be firewalls, accelerators, filters, and so on.
There are various ways to obtain semantic names. For example, the first network device may be manually statically configured to identify a configuration semantic name for the segment. For another example, the first network device may also dynamically generate the information according to the related information (the related information may be one or more of the SID, the loopback address, the port number, the affiliated virtual local area network, the network device adjacent to the segment identifier, the SID adjacent to the segment identifier, and the like of the first network device). For example, in the example shown in fig. 2, the first network device is router R1, and router R1 generates semantic names according to the network devices adjacent to the segment identifier and a preset format, "SID-of-xxx", where "xxx" is the network device adjacent to the segment identifier, and generates semantic names "SID-of-VAS 1" and "SID-of-VAS 2". For another example, the first network device may obtain configuration information sent by the controller or management device, the configuration information including the segment identification and the semantic name, thereby configuring the semantic name for the segment identification.
In one example, there may be one SID or a plurality of SIDs, and when configuring the SIDs, a semantic name may be configured for each SID.
Before configuring the semantic name for the SID, data configuration may be performed on each device in the network, for example, routing configuration is performed on a router in the network, including configuring an interface address of the router, a loopback address, and the like; and then running a routing protocol to distribute SIDs to each node or port in the network, thereby establishing the neighbor relation among each node in the network.
S102, the first network equipment sends the message to target equipment, wherein the message comprises segment identification and semantic name of the associated network equipment.
The associated network device may be the first network device or the second network device. That is, the first network device may send its segment identifier and its corresponding semantic name to the target device, or may send the segment identifiers of other devices and their corresponding semantic names to the target device.
In one example, the target device may be another network device in the same IGP or BGP network as the first network device.
In another example, the target device may also be a control device.
After the semantic name of the segment identifier is obtained, the first network device sends the message to a target device, and correspondingly, the target device receives the message sent by the first network device, wherein the message comprises the segment identifier and the semantic name of the first network device, and the semantic name is used for indicating the meaning of the segment identifier.
Optionally, the packet further includes link state information of the network, where the link state information of the network includes information of capabilities of each node, neighbor relations, and SID of each device in the network. A border gateway protocol-link state (BGP-LS) is a commonly used way for collecting link state information of a network, where BGP-LS mainly includes three routes respectively used to carry node, link, and route prefix information, and the three routes cooperate with each other to jointly complete transmission of link state information. For example, in the example traffic chain scenario shown in fig. 2, the collected link state information is abstracted to the controller by BGP-LS as node, link, prefix reporting. In one example, the first network device may send the segment identifications and their corresponding semantic names to the target device via a BGP-LS message. In another example, the first network device may further send the segment identifier and its corresponding semantic name to the target device through a PCEP protocol packet. The present application does not limit what form the first network device sends the segment identifier and the semantic name corresponding to the segment identifier to the target device.
S103, the target device stores the association relation between the semantic name and the segment identification of the associated network device.
The target device stores the received association relationship between the semantic name and the segment identifier associated with the network device.
The first network device obtains a semantic name corresponding to the segment identifier of the associated device, where the semantic name is used to indicate the meaning of the segment identifier, and the meaning may be a use, a function, which network device to go to, which SID to go to, and the like. In this embodiment, the semantic name may be configured in a manual static configuration manner or a manner dynamically generated by the associated network device, or the configuration information may be sent to the associated network device by the controller and the management device, and the associated network device configures the semantic name according to the configuration information, configures the semantic name for the segment identifier, and can clearly know the function, action, or destination, etc. of the segment identifier, so as to facilitate the operation of the segment identifier according to the semantic name.
Referring to fig. 5, fig. 5 is a schematic flow chart of the semantic name obtaining method provided by the present application, where the method includes, but is not limited to, the following descriptions of S201 to S207.
S201, the first network equipment acquires semantic names corresponding to the segment identifiers of the associated network equipment.
S202, the first network equipment sends the message to the target equipment, wherein the message comprises the segment identification and the semantic name of the associated network equipment.
S203, the target device stores the association relation between the semantic name and the segment identifier of the associated network device.
In this embodiment, the contents of S201 to S203 refer to the description of the related contents of S101 to S103, and are not repeated herein for brevity of the description.
S204, the target device displays the association relation between the semantic name and the segment identification of the associated network device.
The target device displays the association relation between the semantic name and the segment identifier of the associated network device through a graphical user interface according to the association relation between the segment identifier and the received message middle segment identifier, so that a network manager can visually see the semantic name corresponding to the SID, and obtain the meaning of the SID according to the semantic name.
In one example, the target device restores the network topology according to the association relationship between the segment identifier and the semantic name, and the target device displays the restored network topology in the service view. For example, in the example of fig. 2, the associated network device is the router R1, and the network topology restored by the controller may be the schematic diagram as shown in fig. 6, that is, the semantic name of SID1 is displayed on one end of the router R1, the semantic name of SID2 is displayed on the other end, and the network administrator can know the meaning of SID according to the displayed semantic names.
In one example, the semantic name is used to indicate that the segment identifier is used to go to a third network device, the control device restores the network topology according to the association relationship between the segment identifier and the semantic name, and displays the topology relationship between the associated network device and the third network device in the service view. For example, in the example of fig. 2, the segment id SID1 goes to the value added device VAS1 (third network device), the segment id SID2 goes to the value added device VAS2 (third network device), and the network topology in the service view may be a schematic diagram as shown in fig. 7, that is, two points are exposed on the router R1, each point represents one SID, a name of each SID and a semantic name corresponding to each SID are displayed, a relationship between the SID1 and the value added device VAS1 is displayed, and a relationship between the SID2 and the value added device VAS2 is displayed. The display mode of the semantic name of the SID in the service view of the controller may also be other modes, which is not specifically limited in this application.
S205, the target device generates a forwarding strategy.
The target device generates a forwarding policy, the forwarding policy including segment identifiers of the associated network devices, wherein the forwarding policy is obtained according to the semantic name. The target device in this step is typically a control device, such as a controller.
In one example, a network manager searches according to semantics, displays a semantic name and a corresponding segment identifier in a search result, determines the segment identifier to be used, and controls a device to receive a selection (or click) operation of a user and automatically generate a forwarding policy in response to the selection operation of the user.
In one example, when calculating the forwarding path, the target device may automatically obtain all or part of the semantic name, determine the segment identifier to be used, and calculate the forwarding policy.
In general, a forwarding policy may contain multiple candidate paths (candidate paths), each of which carries a priority attribute (reference). When the message is forwarded, the candidate paths are selected according to the priority from high to low, that is, the candidate path with the highest priority is the preferred path of the forwarding policy, and the candidate path with the second priority is the alternative path of the forwarding policy. The core of each candidate path in the forwarding strategy is a segment list sequence, each segment list sequence represents a message forwarding path, and the forwarding strategy also indicates that the equipment in the network needs to follow a specified path to forward the message. For example, referring to fig. 8, fig. 8 is a schematic diagram of a forwarding policy provided in the present application, in fig. 8, a candidate path includes multiple segment lists, each segment list carries a weight (weight) attribute, and when packet forwarding is performed, a device or a node or a link or a tunnel represented by each segment list may share traffic according to the weight. In practical applications, each segment list is an explicit IPv6 or IPv4 address, and the segment list is used to instruct the network device to forward the packet.
For example, in the example of fig. 2, the network administrator may adopt a mode of statically configuring mandatory nodes, and first select SID1 corresponding to SID-of-VAS1 and then select SID2 corresponding to SID-of-VAS2 according to the displayed semantic names, where the selection operation may be understood as that the user clicks SID-of-VAS1 and then clicks SID-of-VAS2, and the controller calculates the forwarding policy in response to the selection of the user. In this example, the arrangement of the segment list sequence in the forwarding policy may be as shown in fig. 9, when the controller organizes the forwarding policy, the SID1 and the SID2 on the router R1 are organized in the forwarding path, and the SID1 in the segment list is located at the lower layer of the SID2, and when a node in the network performs packet forwarding, the node will first pass through the port where the SID1 is located, and then pass through the port where the SID2 is located.
In a practical application scenario, there may be a requirement for bandwidth of a certain link, for example, the bandwidth of a certain link is required to be 500 Mbps/s. In this case, the controller also receives and responds to the operation of the user on the selection of the link bandwidth, calculates the forwarding strategy, and finally obtains the forwarding strategy meeting the condition.
S206, the target device issues a forwarding strategy.
After the target device obtains the forwarding policy through calculation, the target device issues the forwarding policy in some way, and generally speaking, the target device issues the forwarding policy to the head node of the preferred path.
In one example, a BGP neighbor is established between the target device and the head node, and after the forwarding policy is calculated, the BGP neighbor is issued to the head node of the preferred path through a BGP-LS or PCEP packet. For example, in the service chaining scenario shown in fig. 2, the controller may issue the forwarding Policy to the router PE1 through BGP SR Policy.
S207, the first network equipment forwards the data message.
And importing the data packet into a forwarding strategy, encapsulating the data message and forwarding the data message. After receiving a forwarding policy issued by a target device, a certain node or device in the network, which is generally a head node of a preferred path, introduces a data packet into the forwarding policy, and encapsulates the data packet, so that the network device in the network forwards the data packet according to the sequence corresponding to the segment list sequence.
It can be seen that after configuring a semantic name for a segment identifier and a first network device sends a message containing the semantic name and the segment identifier to a target device, the target device can display an association relationship between the semantic name and the segment identifier of an associated network device, so that a network manager can intuitively know the function or the effect or the use or the destination and the like of the segment identifier according to the semantic name; the target device generates a forwarding strategy according to the message, then issues the forwarding strategy, and the associated network device forwards the data message according to the forwarding strategy. In this embodiment, the target device stores the association relationship between the semantic name and the segment identifier, and generates the forwarding policy according to the semantic name, which is more convenient to operate compared with the prior art in which the segment identifier is manually searched for in the control device, then the searched segment identifier is written into the designated location, and then the forwarding policy is generated according to the written segment identifier.
Referring to fig. 10, fig. 10 is a schematic flow chart of a semantic name obtaining method provided by the present application, where the method includes, but is not limited to, the following descriptions of S301 to S304.
S301, the second network equipment acquires the semantic name of the segment identifier.
In one example, the second network device may not be in a BGP neighbor relationship with the control device.
In this step, reference may be made to the description of the relevant content in S101, and for brevity of the description, no further description is provided here.
S302, the second network device sends a message to the first network device, wherein the message comprises the segment identifier and the semantic name of the second network device.
And correspondingly, the first network equipment receives the message sent by the second network equipment, and the message is used for indicating the first network equipment to obtain the meaning of the segment identifier according to the semantic name. The message may be an IGP protocol message or a BGP protocol message, or a message in other forms. The packet includes a segment identifier and a semantic name of the second network device, and specifically, the packet includes a segment identifier type-length-value (TLV) field, where the TLV field includes a type sub-TLV, which may be referred to as a sub-TLV, where the value in the sub-TLV is the semantic name, the type is the type of the semantic name, and the length is the length of the semantic name.
Referring to fig. 11, fig. 11 is a schematic diagram of a sub-TLV field provided in the present application, where the sub-TLV is composed of a Type, a Length, and a Value, where the Value is a semantic name of a SID, the Length is used to indicate the Length of the sub-TLV, and the Type field is used to indicate that the sub-TLV is a semantic name. In one example, Value is variable long, max is no more than 255 x 8 bits, Length is 8 bits, and Type is 8 bits.
The first network equipment receives a message sent by the second network equipment, and the segment identifier and the semantic name corresponding to the segment identifier of the second network equipment are obtained from the message. For example, the service chain scenario shown in fig. 2 belongs to an autonomous system, so the router R1 sends the interior gateway protocol packet to the router reflector RR, and the router reflector RR obtains the semantic name of the segment identifier of the router R1, where the interior gateway protocol packet may be an ISIS protocol packet or an OSPF protocol packet, or other forms of packets.
S303, the first network equipment sends a message to the control equipment, wherein the message comprises the segment identifier and the semantic name of the second network equipment.
In one example, the first network device may be a device that establishes a BGP neighbor with the controller, and may send the message to the control device via a BGP-LS or PCEP message. For example, in the example of fig. 2, the first network device may be a router reflector RR (not shown in the figure), the router R1 sends the message to the router reflector RR, and the router reflector RR uploads the message to the control device.
S304, the control device stores the association relationship between the semantic name and the segment identifier of the second network device.
It can be seen that, in this embodiment, a semantic name is configured for the segment identifier of the second network device, then the second network device sends the packet to the first network device, where the packet includes the segment identifier and the semantic name of the second network device, the first network device sends the packet to the control device, and the control device stores the association relationship between the segment identifier and the semantic name. Wherein, the message is an IGP protocol message or a BGP protocol message. In this embodiment, a semantic name is configured for the segment identifier of the second network device, so that the control device can operate the segment identifier of the second network device according to the semantic name.
In this embodiment, referring to fig. 12, fig. 12 is a schematic flow chart of a semantic name obtaining method provided by the present application, where the method includes, but is not limited to, the following descriptions of S401 to S408.
S401, the second network equipment obtains the semantic name of the segment identifier.
S402, the second network device sends a message to the first network device, wherein the message comprises the segment identifier and the semantic name of the second network device.
S403, the first network device sends a message to the control device, wherein the message includes the segment identifier and the semantic name of the second network device.
S404, the control device stores the association relationship between the semantic name and the segment identifier of the second network device.
S405, the control device displays the association relationship between the semantic name and the segment identifier of the second network device.
S406, the control device generates a forwarding strategy.
S407, the control equipment issues a forwarding strategy.
S408, the second network equipment forwards the data message.
In this embodiment, the contents of S401 to S404 refer to the description of the related contents of S301 to S304, and the contents of S405 to S408 refer to the description of the related contents of S204 to S207, and for the sake of brevity of the description, no further description is repeated here.
It can be seen that, in this embodiment, after obtaining the segment identifier and the semantic name of the second network device, the control device generates the forwarding policy according to the semantic name, which is more convenient to operate compared with the prior art in which the segment identifier is manually searched for in the control device, then the searched segment identifier is written into the designated location, and then the forwarding policy is generated according to the written segment identifier.
In order to more clearly understand the present application, the method embodiment provided in the present application is described below with reference to the application scenario shown in fig. 13.
In the scenario shown in fig. 13, router PE3, router ASBR1, and router ASBR2 form a metropolitan area network 1, router PE4, router ASBR3, and router ASBR4 form a metropolitan area network 2, and two backbones of a certain operator exist between metropolitan area network 1 and metropolitan area network 2: backbone network 1 and backbone network 2. In this example, BGP EPE (edge Peer Engineering) Egress Peer traffic Engineering is configured on the router ASBR1 and the router ASBR2, and the BGP EPE can dynamically configure BGP SID for the Egress interface of the router ASBR1 and the Egress interface of the router ASBR2, respectively, including: SID1 and SID2, for convenience of description, in the embodiment of the present application, the SID configured for the outgoing interface where the router ASBR1 is connected to the backbone network 1 is referred to as SID1, and the SID configured for the outgoing interface where the router ASBR1 is connected to the backbone network 2 is referred to as SID 2. Similarly, BGP EPE egress peer traffic engineering is also configured on ASBR3 and ASBR4, respectively, to dynamically configure BGP EPE SIDs for the egress interfaces of ASBR3 and ASBR 4. The user now needs to carry some traffic on the backbone network 1 through the egress interface SID1 of the router ASBR1, and carry some traffic on the backbone network 2 through the egress interface SID2 of the router ASBR1, in this case, a semantic name may be configured for the port of the router ASBR1, and then a corresponding port is selected to deploy the traffic according to the semantic name in the traffic view of the controller.
The method embodiments described in fig. 5 or fig. 12 may be applied in the above-described scenarios. Firstly, a semantic name EPE-SID 1-to-backbone 1 is configured for SID1 of router ASBR1, where EPE-SID 1-to-backbone 1 is used to indicate that segment id SID1 is an SID going to backbone 1, a semantic name EPE-SID 2-to-backbone 2 is configured for SID2, and EPE-SID 2-to-backbone 2 is used to indicate that segment id SID2 is an SID going to backbone 2. Then, the ASBR1 sends the message to the control device, and accordingly, the control device receives the message, where the message includes SID1, EPE-SID 1-to-backbone network 1, SID2, and EPE-SID 2-to-backbone network 2. Secondly, the control device saves and displays the association relationship between the SID1 and the EPE-SID 1-to-backbone network 1, and the association relationship between the SID2 and the EPE-SID 2-to-backbone network 2 through a graphical user interface. And finally, the control equipment generates a forwarding strategy according to the semantic name and sends the forwarding strategy to the underlying network, and each network equipment in the underlying network forwards the data message according to the forwarding strategy.
If the router ASBR1 cannot interact with the control device, the SID and the corresponding semantic name thereof may be sent to another network device that may interact with the control device, such as the router ASBR2, and the router ASBR2 sends the SID and the corresponding semantic name thereof to the control device.
In an example, the control device displays the association relationship between SID1 and EPE-SID 1-to-backbone 1 and the association relationship between SID2 and EPE-SID 2-to-backbone 2 in a service view, referring to fig. 14, fig. 14 is a schematic diagram of displaying a semantic name in a service view, which is provided by an embodiment of the present application, and a network administrator can visually see two SIDs on the router ASBR1 through the service view, where the semantic name of SID1 is referred to as EPE-SID 1-to-backbone 1, and the semantic name of SID2 is referred to as EPE-SID 2-to-backbone 2. In this embodiment, the display mode of the SID and the semantic name is not specifically limited.
Fig. 15 is a schematic structural diagram of a semantic name obtaining apparatus 600 according to an embodiment of the present application, where the apparatus 600 has any function of the first network device, the second network device, or the third network device in fig. 3, fig. 5, fig. 10, or fig. 12. As shown in fig. 15, the apparatus 600 includes: a sending unit 601, configured to send a first message to a target device, where the first message includes a segment identifier and a semantic name of an associated device, for example, the sending unit 601 is configured to execute S102 in fig. 3, S202 in fig. 5, S303 in fig. 10, S403 in fig. 12, and the like; a receiving unit 602, configured to receive or acquire a message, for example, the receiving unit 602 is configured to execute S101 in fig. 3, S201 in fig. 5, S302 in fig. 10, S402 in fig. 12, and the like. Optionally, the semantic name obtaining apparatus 600 further includes a processing unit (not shown in the figure) for processing the steps of obtaining semantic names and managing semantic names.
The semantic name obtaining apparatus 600 corresponds to the first network device in the foregoing method embodiment, and each unit and the foregoing other operations and/or functions in the semantic name obtaining apparatus 600 are respectively for implementing various steps and methods implemented by the first network device in the method embodiment, and specific details may be referred to the description of the foregoing method, and are not described herein again for brevity.
The semantic name acquiring device 600 only exemplifies the division of each functional unit when acquiring the semantic name, and in practical applications, the functions may be allocated by different functional units according to needs, that is, the internal structure of the semantic name acquiring device 600 is divided into different functional units to complete all or part of the functions described above.
Fig. 16 is a schematic structural diagram of another semantic name obtaining apparatus 700 according to an embodiment of the present application, where the apparatus 700 has any function of the target device in fig. 3, 5, 10, or 12. As shown in fig. 16, the apparatus 700 includes: a receiving unit 701, configured to receive a packet sent by a first network device, where the packet includes a segment identifier and a semantic name of an associated device, for example, the receiving unit 701 is configured to execute S102 in fig. 3, S202 in fig. 5, S303 in fig. 10, S403 in fig. 12, and the like; a saving unit 702 for saving the association relationship of the semantic name and the segment identifier, for example, performing S404, S304, S203, and S103; a display unit 703, configured to display an association relationship between the semantic name and the segment identifier, or when the semantic name indicates that the segment identifier is destined for the second network device, the display unit 703 is configured to display a topological relationship between the associated network device and the second network device in the service view, for example, execute S204 and S405; a generating unit 704, configured to generate a forwarding policy, for example, perform S205 and S406; the sending unit 705 is configured to send the forwarding policy, for example, the sending unit is configured to execute S206, S407, and the like.
The semantic name obtaining apparatus 700 corresponds to the target device or the control device in the foregoing method embodiment, and each unit and the other operations and/or functions in the semantic name obtaining apparatus 700 are respectively for implementing various steps and methods implemented by the target device or the control device in the method embodiment, and specific details may be referred to in the description of the foregoing method, and are not described herein again for brevity.
The semantic name obtaining apparatus 700 is only illustrated by dividing the above functional units when performing network management, and in practical applications, the above functions may be allocated to different functional units as needed, that is, the internal structure of the semantic name obtaining apparatus 700 is divided into different functional units to complete all or part of the above described functions.
Corresponding to the method embodiment and the virtual device embodiment provided by the present application, a network device is also provided in the present application embodiment, and a hardware structure of the network device is introduced below.
The following description of the network device 800 or the network device 1000 corresponds to the first semantic name obtaining apparatus 600 or the second semantic name obtaining apparatus 700 in the foregoing method embodiment, and details of how the network device 800 or the network device 1000 obtains semantic names and related processing after obtaining semantic names and the like in order to implement various steps and methods implemented by the first semantic name obtaining apparatus 600 or the second semantic name obtaining apparatus 700 in the method embodiment, respectively, may be referred to in the foregoing method embodiment for details, and for brevity, details are not repeated here. Wherein the steps of fig. 3 or fig. 5 or fig. 10 or fig. 12 above are performed by instructions in the form of hardware integrated logic circuits or software in a processor of network device 800 or network device 1000. The steps of a method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware processor, or may be implemented by a combination of hardware and software modules in a processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor. To avoid repetition, it is not described in detail here.
The network device 800 or the network device 1000 corresponds to the apparatus 600 or the apparatus 700 in the virtual device embodiment described above, and each functional unit in the apparatus 600 or the apparatus 700 is implemented by software of the network device 800 or the network device 1000. In other words, the apparatus 600 or 700 includes functional units generated by a processor of the network device 800 or 1000 after reading program codes stored in a memory.
Referring to fig. 17, fig. 17 is a schematic structural diagram of a network device 800 according to an exemplary embodiment of the present application, where the network device 800 may be configured as a first network device or a target device. The network device 800 may be implemented by a generic bus architecture.
Network device 800 includes at least one processor 801, a communication bus 802, a memory 803, and at least one communication interface 804.
The processor 801 may be a general purpose CPU, NP, microprocessor, or may be one or more integrated circuits such as an application-specific integrated circuit (ASIC), Programmable Logic Device (PLD), or a combination thereof for implementing aspects of the present disclosure. The PLD may be a Complex Programmable Logic Device (CPLD), a field-programmable gate array (FPGA), a General Array Logic (GAL), or any combination thereof.
A communication bus 802 is used to transfer information between the above components. The communication bus 802 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The Memory 803 may be a read-only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable programmable read-only Memory (EEPROM), a compact disc read-only Memory (CD-ROM) or other optical disc storage, optical disc storage (including compact disc, laser disc, optical disc, digital versatile disc, blu-ray disc, etc.), a magnetic disc storage medium, or other magnetic storage device, or any other medium which can be used to carry or store desired program code in the form of instructions or data structures and which can be accessed by a computer, but is not limited to such. The memory 803 may be self-contained and coupled to the processor 801 through a communication bus 802. The memory 803 may also be integrated with the processor 801.
The communication interface 804 uses any transceiver or the like for communicating with other devices or communication networks. The communication interface 804 includes a wired communication interface, and may also include a wireless communication interface. The wired communication interface may be an ethernet interface, for example. The ethernet interface may be an optical interface, an electrical interface, or a combination thereof. The wireless communication interface may be a Wireless Local Area Network (WLAN) interface, a cellular network communication interface, or a combination thereof.
In particular implementations, processor 801 may include one or more CPUs such as CPU0 and CPU1 shown in fig. 17 as an example.
In particular implementations, network device 800 may include multiple processors, such as processor 801 and processor 805 shown in FIG. 17, as an embodiment. Each of these processors may be a single-Core Processor (CPU) or a multi-Core Processor (CPU). A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
In particular implementations, network device 800 may also include an output device 806 and an input device 807 as an example. An output device 806 is in communication with the processor 801 and may display information in a variety of ways. For example, the output device 806 may be a Liquid Crystal Display (LCD), a Light Emitting Diode (LED) display device, a Cathode Ray Tube (CRT) display device, a projector (projector), or the like. The input device 807 is in communication with the processor 801 and may receive user input in a variety of ways. For example, the input device 807 may be a mouse, keyboard, touch screen device, or sensing device, among others.
In some embodiments, the memory 803 is used to store program code 810 for performing aspects of the present application, and the processor 801 may execute the program code 810 stored in the memory 803. That is, the network device 800 may implement the method provided by the method embodiments of fig. 3 or fig. 5 or fig. 10 or fig. 12 by the processor 801 and the program code 810 in the memory 803.
The network device 800 of the present embodiment may correspond to the first network device or the target device in the above-described method embodiments, and the processor 801, the communication interface 804, and the like in the network device 800 may implement the functions of the devices in the above-described method embodiments and/or various steps and methods implemented. For brevity, no further description is provided herein.
The transmitting unit 601 and the receiving unit 602 in the apparatus 600 may correspond to the communication interface 804 in the network device 800.
The receiving unit 701 and the transmitting unit 705 in the apparatus 700 may correspond to the communication interface 804 in the network device 800; the holding unit 702 in the apparatus 700 may correspond to the memory 803 in the network device 800; the generating unit 704 in the apparatus 700 may correspond to the processor 801 in the network device 800; the display unit 703 in the apparatus 700 may correspond to the output device 806 in the network device 800.
Referring to fig. 18, fig. 18 is a schematic structural diagram of a network device 1000 according to an exemplary embodiment of the present application, where the network device 1000 may be configured as a first network device or a target device. The network device 1000 includes: a main control board 1010 and an interface board 1030.
The main control board 1010 is also called a Main Processing Unit (MPU) or a route processor card (route processor card), and the main control board 1010 is used for controlling and managing each component in the network device 1000, including routing computation, device management, device maintenance, and protocol processing functions. The main control board 1010 includes: a central processor 1011 and a memory 1012.
The interface board 1030 is also referred to as a Line Processing Unit (LPU), a line card (line card), or a service board. The interface board 1030 is used to provide various service interfaces and to forward packets. The service interfaces include, but are not limited to, Ethernet interfaces, such as Flexible Ethernet services interfaces (FlexE Ethernet Clients), POS (Packet over SONET/SDH) interfaces, and the like. The interface board 1030 includes: a central processor 1031, a network processor 1032, a forwarding table entry memory 1034, and a Physical Interface Card (PIC) 1033.
The central processor 1031 on the interface board 1030 is used for controlling and managing the interface board 1030 and communicating with the central processor 1011 on the main control board 1010.
The network processor 1032 is configured to implement forwarding processing of the packet. The network processor 1032 may take the form of a forwarding chip. Specifically, the network processor 1032 is configured to forward the received message based on the forwarding table stored in the forwarding table entry memory 1034, and if a destination address of the message is an address of the network device 1000, send the message to a CPU (e.g., the central processing unit 1011) for processing; if the destination address of the message is not the address of the network device 1000, the next hop and the outgoing interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the outgoing interface corresponding to the destination address. The processing of the uplink message comprises the following steps: processing a message input interface and searching a forwarding table; and (3) downlink message processing: forwarding table lookups, and the like.
The physical interface card 1033 is used to implement the interfacing function of the physical layer, from which the original traffic enters the interface board 1030, and the processed packets are sent out from the physical interface card 1033. The physical interface card 1033, also called a daughter card, may be installed on the interface board 1030, and is responsible for converting the optical signal into a packet, performing validity check on the packet, and forwarding the packet to the network processor 1032 for processing. In some embodiments, a central processor may also perform the functions of network processor 1032, such as implementing software forwarding based on a general purpose CPU, so that network processor 1032 is not required in physical interface card 1033.
Optionally, the network device 1000 includes a plurality of interface boards, for example, the network device 1000 further includes an interface board 1040, and the interface board 1040 includes: a central processor 1041, a network processor 1042, a forwarding table entry store 1044, and a physical interface card 1043.
Optionally, the network device 1000 further comprises a switch screen 1020. The switch board 1020 may also be called a Switch Fabric Unit (SFU). In the case of a network device having a plurality of interface boards 1030, the switch board 1020 is used to complete data exchange between the interface boards. For example, interface board 1030 and interface board 1040 can communicate with each other through switch board 1020.
The main control board 1010 and the interface board 1030 are coupled. For example. The main control board 1010, the interface board 1030, the interface board 1040, and the switch board 1020 are connected to the system backplane through a system bus to implement intercommunication. In a possible implementation manner, an inter-process communication protocol (IPC) channel is established between the main control board 1010 and the interface board 1030, and the main control board 1010 and the interface board 1030 communicate with each other through the IPC channel.
Logically, network device 1000 includes a control plane including main control board 1010 and central processor 1031, and a forwarding plane including various components to perform forwarding, such as forwarding entry memory 1034, physical interface cards 1033, and network processor 1032. The control plane performs functions of a router, generating a forwarding table, processing signaling and protocol messages, configuring and maintaining the state of the device, and the like, issues the generated forwarding table to the forwarding plane, and in the forwarding plane, the network processor 1032 looks up the table of the message received by the physical interface card 1033 and forwards the table based on the forwarding table issued by the control plane. The forwarding table issued by the control plane may be stored in the forwarding table entry storage 1034. In some embodiments, the control plane and the forwarding plane may be completely separate and not on the same device.
If network device 1000 is configured as a first network device, physical interface card 1033 receives or obtains a message associated with the network device and sends the message to network processor 1032, and network processor 1032 processes the message and sends the message out from physical interface card 1033.
If the network device 1000 is configured as a target device or a control device, the physical interface card 1033 receives a packet sent by a first network device, where the packet includes a segment identifier and a semantic name of an associated network device, and sends the packet to the network processor 1032, and the network processor 1032 generates a forwarding policy according to the semantic name and sends the forwarding policy to the network device through the physical interface card 1033.
The transmitting unit 601 and the receiving unit 602 in the apparatus 600 correspond to a physical interface card 1033 in the network device 1000.
The receiving unit 701 and the transmitting unit 705 in the apparatus 700 correspond to a physical interface card 1033 in the network device 1000; the generating unit 704 in the apparatus 700 may correspond to the network processor 1032 or the central processor 1011; the saving unit 702 in the apparatus 700 corresponds to the forwarding table entry storage 1034 or the storage 1012 in the network device 1000; the display unit 703 corresponds to the main control board 1010 in the network device 1000.
In the embodiment of the present application, operations on the interface board 1040 are the same as operations on the interface board 1030, and are not described again for brevity. The network device 1000 of this embodiment may correspond to the first network device or the target device in the foregoing method embodiments, and the main control board 1010, the interface board 1030, and/or 1040 in the network device 1000 may implement the functions and/or various steps implemented by the first network device or the target device in the foregoing method embodiments, and for brevity, no further description is provided here.
It should be noted that there may be one or more main control boards, and when there are more main control boards, the main control boards may include a main control board and a standby main control board. The interface board may have one or more blocks, and the stronger the data processing capability of the network device, the more interface boards are provided. There may also be one or more physical interface cards on an interface board. The exchange network board may not have one or more blocks, and when there are more blocks, the load sharing redundancy backup can be realized together. Under the centralized forwarding architecture, the network device does not need a switching network board, and the interface board undertakes the processing function of the service data of the whole system. Under the distributed forwarding architecture, the network device can have at least one switching network board, and the data exchange among a plurality of interface boards is realized through the switching network board, so that the high-capacity data exchange and processing capacity is provided. Therefore, the data access and processing capabilities of network devices in a distributed architecture are greater than those of devices in a centralized architecture. Optionally, the form of the network device may also be only one board card, that is, there is no switching network board, and the functions of the interface board and the main control board are integrated on the one board card, at this time, the central processing unit on the interface board and the central processing unit on the main control board may be combined into one central processing unit on the one board card to perform the function after the two are superimposed, and the data switching and processing capability of the device in this form is low (for example, network devices such as a low-end switch or a router, etc.). Which architecture is specifically adopted depends on the specific networking deployment scenario, and is not limited herein.
In some possible embodiments, the first network device or the target device may be implemented as a virtualized device.
For example, the virtualized device may be a Virtual Machine (VM) running a program for sending messages, and the VM is deployed on a hardware device (e.g., a physical server). A virtual machine refers to a complete computer system with complete hardware system functionality, which is emulated by software, running in a completely isolated environment. The virtual machine may be configured as a network device. For example, the first Network device or the target device may be implemented based on a general purpose physical server in combination with Network Function Virtualization (NFV) technology. The first network device or target device is a virtual host, a virtual router, or a virtual switch. Through reading the application, a person skilled in the art can combine the NFV technology to virtually create a first network device or a target device with the above functions on a general physical server. And will not be described in detail herein.
For example, a virtualization appliance may be a container, which is an entity for providing an isolated virtualization environment, e.g., a container may be a docker container. The container may be configured as a first network device or a target device. For example, a first network device or a target device may be created by a corresponding mirror image, for example, 2 container instances, namely, container instance proxy-container1, container instance proxy-container2, container instance proxy-container1 as the first network device, and container instance proxy-container2 as the target device may be created for proxy-container (a container providing proxy service) by a mirror image of the proxy-container. When the container technology is adopted for implementation, the first network device or the target device may run by using a kernel of the physical machine, and a plurality of first network devices or target devices may share an operating system of the physical machine. Different first network devices or target devices may be isolated by container technology. The containerized first network device or target device may run in a virtualized environment, such as a virtual machine, or the containerized first network device or target device may run directly in a physical machine.
For example, the virtualization device may be Pod, and Pod is kubernets (kubernets is a container arrangement engine of google open source, abbreviated as K8s in english) which is a basic unit for deploying, managing and arranging containerized applications. The Pod may include one or more containers. Each container in the same Pod is typically deployed on the same host, so each container in the same Pod can communicate through the host and can share the storage resources and network resources of the host. The Pod may be configured as a first network device or a target device. For example, a Pod as a service (hereinafter, referred to as a container as a service, which is a container-based PaaS service) may be specifically instructed to create a Pod, and provide the Pod as a first network device or a target device.
Of course, the first network device or the target device may also be other virtualization devices, which are not listed here.
In some possible embodiments, the first network device or the target device may also be implemented by a general-purpose processor. For example, the general purpose processor may be in the form of a chip. Specifically, the general-purpose processor implementing the first network device or the target device includes a processing circuit, and an input interface and an output interface connected and communicated with the processing circuit, where the processing circuit is configured to execute the message generating step in each of the above method embodiments through the input interface, the processing circuit is configured to execute the receiving step in each of the above method embodiments through the input interface, and the processing circuit is configured to execute the sending step in each of the above method embodiments through the output interface. Optionally, the general-purpose processor may further include a storage medium, and the processing circuit is configured to execute the storage steps in the above-described method embodiments through the storage medium. The storage medium may store instructions for execution by a processing circuit that executes the instructions stored by the storage medium to perform the various method embodiments described above.
Referring to fig. 19, an embodiment of the present application provides a system 1100, where the system 1100 includes: a first network device 1101 and/or a target device 1102. Optionally, the first network device 1101 is, for example, the apparatus 600, the network device 800, or the network device 1000, and the target device 1102 is, for example, the apparatus 700, the network device 800, or the network device 1000.
Embodiments of the present application provide a computer program product, which, when running on a first network device or a target device, causes the first network device or the target device to perform the method embodiments described above in fig. 3 or fig. 5 or fig. 10 or fig. 12.
The apparatuses in the various product forms respectively have any functions of the first network device or the target device in the method embodiments, and are not described herein again.
Those of ordinary skill in the art will appreciate that the various method steps and elements described in connection with the embodiments disclosed herein can be implemented as electronic hardware, computer software, or combinations of both, and that the steps and elements of the various embodiments have been described above generally in terms of their functionality in order to clearly illustrate the interchangeability of hardware and software. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It can be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, the disclosed system, apparatus and method can be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the unit is only one type of logical functional division, and other divisions may be realized in practice, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may also be an electrical, mechanical or other form of connection.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiments of the present application.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method in the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive various equivalent modifications or substitutions within the technical scope of the present application, and these modifications or substitutions should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer program instructions. When loaded and executed on a computer, produce, in whole or in part, the procedures or functions according to the embodiments of the application. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer program instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer program instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire or wirelessly. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that includes one or more of the available media. The available media may be magnetic media (e.g., floppy disks, hard disks, tapes), optical media (e.g., Digital Video Disks (DVDs), or semiconductor media (e.g., solid state disks), among others.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is intended only to illustrate the alternative embodiments of the present application, and should not be construed as limiting the present application, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present application should be included in the scope of the present application.

Claims (20)

1. A semantic name acquisition method is characterized by comprising the following steps:
receiving a message sent by a first network device, wherein the message comprises a segment identifier and a semantic name of an associated network device, and the semantic name is used for indicating the meaning of the segment identifier;
and storing the incidence relation between the semantic name and the segment identifier.
2. The method of claim 1, wherein after preserving the association of the semantic name and the segment identifier, the method further comprises: displaying the association relationship between the semantic name and the segment identifier.
3. The method of claim 1 or 2, wherein the semantic name is used to indicate that the segment identifier is used to go to a second network device, the method further comprising:
and displaying a service view, wherein the service view is used for displaying the topological relation between the associated network equipment and the second network equipment.
4. The method according to any one of claims 1-3, further comprising:
generating a forwarding policy, the forwarding policy including the segment identifier, wherein the forwarding policy is obtained from the semantic name;
and sending the forwarding strategy, wherein the forwarding strategy is used for indicating the use of the segment identifier.
5. A semantic name acquisition method is characterized by comprising the following steps:
the method comprises the steps that a first network device sends a first message to a target device, wherein the first message comprises a segment identifier and a semantic name of an associated network device, and the semantic name is used for indicating the meaning of the segment identifier.
6. The method of claim 5, wherein the associated network device comprises a second network device, the method further comprising: and receiving a second message sent by the second network device, wherein the second message comprises the segment identifier and the semantic name.
7. The method according to claim 5 or 6, wherein the first packet comprises a segment identification type-length-value, TLV, field, wherein the TLV field comprises a sub-TLV, wherein the sub-TLV comprises the semantic name.
8. The method according to any of claims 5-7, wherein the first packet comprises: a border gateway protocol message or an interior gateway protocol message.
9. The method according to any of claims 5-8, characterized in that it is applied in a segment routed network.
10. A semantic name acquisition apparatus, comprising:
a receiving unit, configured to receive a packet sent by a first network device, where the packet includes a segment identifier and a semantic name of an associated network device, where the semantic name is used to indicate a meaning of the segment identifier;
and the storage unit is used for storing the incidence relation between the semantic name and the segment identifier.
11. The apparatus of claim 10, further comprising:
and the display unit is used for displaying the incidence relation between the semantic name and the segment identifier.
12. The apparatus according to claim 10 or 11, wherein the semantic name is used to indicate that the segment identifier is used for going to a second network device, and wherein the display unit is further configured to display a service view, wherein the service view is used to display a topological relationship between the associated network device and the second network device.
13. The apparatus of any one of claims 10-12, further comprising:
a generating unit, configured to generate a forwarding policy, where the forwarding policy includes the segment identifier, and the forwarding policy is obtained according to the semantic name;
a sending unit, configured to send the forwarding policy, where the forwarding policy is used to indicate that the segment identifier is used.
14. A semantic name acquisition apparatus, comprising:
a sending unit, configured to send a first packet to a target device, where the first packet includes a segment identifier and a semantic name of an associated network device, and the semantic name is used to indicate a meaning of the segment identifier.
15. The apparatus of claim 14, wherein the apparatus further comprises a receiving unit, wherein the associated network device comprises a second network device,
the receiving unit is configured to receive a second packet sent by the second network device, where the second packet includes the segment identifier and the semantic name.
16. The apparatus according to claim 14 or 15, wherein the first packet comprises a segment identification type-length-value, TLV, field, wherein the TLV field comprises a sub-TLV, wherein the sub-TLV comprises the semantic name.
17. The apparatus according to any of claims 14-16, wherein the message comprises a border gateway protocol message or an interior gateway protocol message.
18. The apparatus according to any of claims 14-17, wherein the apparatus is applied in a segment routing network.
19. A computer storage medium comprising program instructions which, when run on a computer, cause the computer to perform the method of any one of claims 1-9.
20. A system, characterized in that the system comprises a target device and a first network device, wherein the target device is the semantic name obtaining apparatus according to any one of claims 10 to 13, and the first network device is the semantic name obtaining apparatus according to any one of claims 14 to 18.
CN202011206224.XA 2020-10-30 2020-10-30 Semantic name acquisition method, device, equipment and storage medium Pending CN114531360A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011206224.XA CN114531360A (en) 2020-10-30 2020-10-30 Semantic name acquisition method, device, equipment and storage medium
PCT/CN2021/099024 WO2022088685A1 (en) 2020-10-30 2021-06-08 Semantic name acquisition method and apparatus, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011206224.XA CN114531360A (en) 2020-10-30 2020-10-30 Semantic name acquisition method, device, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114531360A true CN114531360A (en) 2022-05-24

Family

ID=81381823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011206224.XA Pending CN114531360A (en) 2020-10-30 2020-10-30 Semantic name acquisition method, device, equipment and storage medium

Country Status (2)

Country Link
CN (1) CN114531360A (en)
WO (1) WO2022088685A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115001931A (en) * 2022-05-25 2022-09-02 湖南亚信软件有限公司 Message processing method, device, equipment, medium and program product

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981457A (en) * 2017-12-27 2019-07-05 华为技术有限公司 A kind of method of Message processing, network node and system
CN109981458A (en) * 2019-03-08 2019-07-05 华为技术有限公司 A kind of method, network node and the system of determining message forwarding path
CN110636001A (en) * 2018-06-25 2019-12-31 华为技术有限公司 Method for sending network performance parameters and calculating network performance and network node
CN111107004A (en) * 2018-10-27 2020-05-05 华为技术有限公司 Message processing method, related equipment and computer storage medium
CN111431800A (en) * 2020-03-20 2020-07-17 新华三技术有限公司合肥分公司 Method, device and equipment for establishing path and machine-readable storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3319067B1 (en) * 2016-11-02 2019-05-15 Skeyecode Method for authenticating a user by means of a non-secure terminal
CN113839871A (en) * 2017-09-25 2021-12-24 华为技术有限公司 Message forwarding method and network equipment
CN110061920B (en) * 2018-01-18 2021-10-19 中兴通讯股份有限公司 Method, equipment and storage medium for establishing bidirectional segment routing tunnel
US10841172B2 (en) * 2018-05-30 2020-11-17 Cisco Technology, Inc. Network fabric visualization and management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981457A (en) * 2017-12-27 2019-07-05 华为技术有限公司 A kind of method of Message processing, network node and system
CN110636001A (en) * 2018-06-25 2019-12-31 华为技术有限公司 Method for sending network performance parameters and calculating network performance and network node
CN111107004A (en) * 2018-10-27 2020-05-05 华为技术有限公司 Message processing method, related equipment and computer storage medium
CN109981458A (en) * 2019-03-08 2019-07-05 华为技术有限公司 A kind of method, network node and the system of determining message forwarding path
CN111431800A (en) * 2020-03-20 2020-07-17 新华三技术有限公司合肥分公司 Method, device and equipment for establishing path and machine-readable storage medium

Also Published As

Publication number Publication date
WO2022088685A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
US9979605B2 (en) Virtualization mapping
CN107438983B (en) Compiler and method for determining physical and virtual resources for software defined networking, storage and computing
JP7432095B2 (en) How to forward packets in SRv6 service function chain, SFF, and SF devices
CN107113241B (en) Route determining method, network configuration method and related device
WO2022078415A1 (en) Packet forwarding method and network device
CN111355661B (en) VPN processing method, PE equipment and system
WO2022012689A1 (en) Route advertisement method and related device
CN103825826A (en) Method and device for implementing dynamic routing
CN114024888A (en) Route notification method and related equipment
WO2022048418A1 (en) Method, device and system for forwarding message
WO2022012489A1 (en) Capability indication method and related device
US20230412508A1 (en) Packet processing method and related apparatus
WO2022088685A1 (en) Semantic name acquisition method and apparatus, device, and storage medium
WO2022188530A1 (en) Route processing method and network device
EP4207640A1 (en) Path identifier allocation method, system, apparatus and device, and storage medium
CN114567544A (en) Route notification method, device and system
CN114338518A (en) Route processing method and network equipment
WO2022012690A1 (en) Router advertisement method and related device
EP4210290A1 (en) Packet transmission method and apparatus
CN114629834B (en) Communication method and device
CN114025025B (en) SRv6SID publishing method and network equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20220524

RJ01 Rejection of invention patent application after publication