CN114531385B - Method, device and system for sending message - Google Patents

Method, device and system for sending message Download PDF

Info

Publication number
CN114531385B
CN114531385B CN202011198931.9A CN202011198931A CN114531385B CN 114531385 B CN114531385 B CN 114531385B CN 202011198931 A CN202011198931 A CN 202011198931A CN 114531385 B CN114531385 B CN 114531385B
Authority
CN
China
Prior art keywords
identifier
network
network device
message
segment
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.)
Active
Application number
CN202011198931.9A
Other languages
Chinese (zh)
Other versions
CN114531385A (en
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 CN202011198931.9A priority Critical patent/CN114531385B/en
Priority to PCT/CN2021/117322 priority patent/WO2022089027A1/en
Publication of CN114531385A publication Critical patent/CN114531385A/en
Application granted granted Critical
Publication of CN114531385B publication Critical patent/CN114531385B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers

Abstract

The application discloses a method, a device and a system for sending a message, and belongs to the field of communication. The method comprises the following steps: a first network device receives a first message, wherein a message header of the first message comprises a segment identifier, the segment identifier corresponds to a device set and an entity set, the device set comprises a plurality of second network devices, the entity set comprises a plurality of functional entities, and the second network devices in the device set are communicated with the functional entities in the entity set; and the first network equipment sends the first message to second network equipment in the equipment set corresponding to the segment identifier. The method and the device can reduce the burden of the boundary network equipment.

Description

Method, device and system for sending message
Technical Field
The present application relates to the field of communications, and in particular, to a method, an apparatus, and a system for sending a packet.
Background
Segment Routing (SR) networks include Virtual Network Functions (VNFs), distributed Virtual Routers (DVRs), and border routers. The VNF includes a plurality of virtual machines corresponding to a Virtual Private Network (VPN), and each virtual machine is configured to process a service packet of the VPN. The number of DVRs may be multiple, each DVR communicating with at least one virtual machine in the VNF, the DVF including a Segment Identity (SID) for each of the at least one virtual machine. The border router includes a route for each virtual machine in the VNF, the route for one virtual machine including the VPN identification, a DVR address in communication with the virtual machine, and a SID for the virtual machine.
The boundary router receives a first service message, wherein the first service message belongs to the VPN, and the first service message comprises the VPN identification; acquiring a plurality of routes comprising the VPN identification, and selecting one route from the plurality of routes; and generating a second service message based on the selected route and the first service message, wherein the message header of the second service message comprises a destination address and a segment list, the payload of the second service message comprises the first service message, the destination address is the DVR address in the selected route, and the segment list comprises the SID of the virtual machine in the selected route. And the boundary router sends the second service message according to the DVR address in the second service message. And the DVR receives the second service message, acquires the SID of the virtual machine and the first service message which are included in the second service message, sends the first service message to the virtual machine corresponding to the SID, and processes the first service message by the virtual machine.
In the process of implementing the present application, the inventors found that the prior art has at least the following problems:
each border router of the SR network includes a number of routes equal to an accumulated value of a number of virtual machines corresponding to each VPN. For example, assuming there are three VPNs, each corresponding to four virtual machines, each border router includes 12 routes. The border router may not store many routes due to limited resources, which increases the burden of the border router.
Disclosure of Invention
The application provides a method, a device and a system for sending a message, which are used for reducing the burden of boundary network equipment. The technical scheme is as follows:
in a first aspect, the present application provides a method for sending a packet, where: the method comprises the steps that a first network device receives a first message, a message header of the first message comprises a segment identification, the segment identification corresponds to a device set and an entity set, the device set comprises a plurality of second network devices, the entity set comprises a plurality of functional entities, and the second network devices in the device set are communicated with the functional entities in the entity set. And the first network equipment sends the first message to the second network equipment in the equipment set corresponding to the segment identifier.
Because the segment identifier included in the first packet corresponds to the device set and the entity set, for the boundary network device of the segment routing network, only one piece of routing data including the VPN identifier and the segment identifier needs to be stored in the boundary network device, and the boundary network device can generate the first packet based on the routing data, so that the first network device sends the first packet to the second network device in the device set corresponding to the segment identifier. Therefore, no matter how many functional entities corresponding to the VPN exist, the number of the routing data stored in the boundary network equipment is not influenced, the number of the routing data required to be stored in the boundary network equipment can be greatly reduced, and the burden of the boundary network equipment is reduced.
In a possible implementation manner, the first network device sends the first packet to one second network device in the device set based on the segment identifier and the sharing factor of the second network device in the device set. Therefore, based on the sharing factor of the second network device, the balance service can be provided for the message of the VPN.
In another possible implementation manner, the first network device obtains the sharing factor of the second network device in the device set according to the segment identifier.
In another possible implementation, the first network device includes a plurality of first routing data, each of the first routing data includes the segment identification, a device identification of one of the set of devices, and a sharing factor. The first network device obtains the sharing factor of the second network device in the device set according to the plurality of first routing data. Therefore, the sharing factor of the second network equipment can be accurately acquired.
In another possible implementation, the sharing factor of the second network device is used to indicate the number of functional entities or the performance of the functional entities communicating with the second network device. Therefore, when the balance service is provided for the message of the VPN based on the sharing factor of the second network equipment, the balance effect can be improved.
In another possible implementation manner, the first network device receives the first routing data sent by the second network device in the device set.
In another possible implementation manner, the device set corresponds to a set identifier, and the set identifier is a part of content in the segment identifier.
In another possible implementation, the first network device is a data center gateway.
In a second aspect, the present application provides a method for sending a packet, where the method includes: the second network device receives a first message, a message header of the first message includes a segment identifier, the segment identifier corresponds to a device set and an entity set, the device set includes a plurality of second network devices, the entity set includes a plurality of functional entities, and the second network devices in the device set communicate with the functional entities in the entity set. And the second network equipment sends a second message to the functional entity in the entity set corresponding to the segment identifier, wherein the second message is generated based on the first message.
Because the segment identifier included in the first packet corresponds to the device set and the entity set, for the border network device of the segment routing network, only one piece of routing data including the VPN identifier and the segment identifier needs to be stored in the border network device, and the border network device can generate the first packet based on the routing data, so that the second network device sends the second packet to the functional entity in the entity set corresponding to the segment identifier. Therefore, no matter how many functional entities corresponding to the VPN exist, the number of the routing data stored in the boundary network equipment is not influenced, the number of the routing data required to be stored in the boundary network equipment can be greatly reduced, and the burden of the boundary network equipment is reduced.
In a possible implementation manner, the second network device sends the first routing data, where the first routing data includes the segment identifier, the device identifier of the second network device, and the sharing factor of the second network device. Therefore, the first network equipment can be ensured to forward the first message based on the first routing data.
In another possible implementation manner, the second network device sends the second routing data, where the second routing data includes the VPN identifier and the segment identifier, and the first packet includes the VPN identifier. This ensures that the border network device can generate the first packet based on the second routing data and transmit the first packet.
In another possible implementation manner, the device set corresponds to a set identifier, and the set identifier is a part of content in the segment identifier.
In a third aspect, the present application provides a method for sending a packet, where: the third network equipment acquires a first message, wherein the message header of the first message comprises a segment identifier, the segment identifier corresponds to an equipment set and an entity set, the equipment set comprises a plurality of second network equipment, the entity set comprises a plurality of functional entities, and the second network equipment in the equipment set is communicated with the functional entities in the entity set; and the third network equipment sends the first message.
Since the segment identifier included in the first packet corresponds to the device set and the entity set, the third network device only needs to store one piece of routing data including the VPN identifier and the segment identifier, and the third network device can obtain the first packet based on the routing data. Therefore, no matter how many functional entities correspond to the VPN, the number of the routing data stored in the third network equipment is not influenced, and the number of the routing data required to be stored in the third network equipment can be greatly reduced, so that the burden of the third network equipment is reduced.
In one possible implementation, the third network device includes second routing data that includes a virtual private network, VPN, identification and the segment identification. And the third network equipment receives a second message, wherein the second message comprises the VPN identification. Thus, the third network device can generate the first message according to the second routing data and the second message.
In another possible implementation, the third network device receives the second routing data. This may enable the third network device to obtain the second routing data to generate the first packet.
In another possible implementation manner, the device set corresponds to a set identifier, and the set identifier is a part of content in the segment identifier.
In another possible implementation, the third network device is a border network device of the segment routing network.
In a fourth aspect, the present application provides an apparatus for sending a packet, configured to execute the method performed by the first network device in the first aspect or any one of the possible implementation manners of the first aspect. In particular, the apparatus comprises means for performing the first aspect or the method performed by the first network device in any one of its possible implementations.
In a fifth aspect, the present application provides an apparatus for sending a packet, which is configured to execute the method performed by the second network device in the second aspect or any one of the possible implementation manners of the second aspect. In particular, the apparatus comprises means for performing the second aspect or the method performed by the second network device in any one of its possible implementations.
In a sixth aspect, the present application provides an apparatus for sending a packet, configured to execute the method performed by the third network device in any possible implementation manner of the third aspect or the third aspect. In particular, the apparatus includes means for performing the third aspect or the method performed by the third network device in any one of its possible implementations.
In a seventh aspect, the present application provides an apparatus for sending a message, where the apparatus includes a transceiver, a processor, and a memory. Wherein, the transceiver, the processor and the memory can be connected through internal connection. The memory is configured to store a program, and the processor is configured to execute the program in the memory and cooperate with the transceiver to cause the apparatus to perform the method performed by the first network device in the first aspect or any possible implementation manner of the first aspect.
In an eighth aspect, the present application provides an apparatus for sending a message, which includes a transceiver, a processor, and a memory. Wherein, the transceiver, the processor and the memory can be connected through internal connection. The memory is configured to store a program, and the processor is configured to execute the program in the memory and cooperate with the transceiver to cause the apparatus to perform the method of the second aspect or any possible implementation manner of the second aspect, the method being performed by a second network device.
In a ninth aspect, the present application provides an apparatus for sending a message, the apparatus comprising a transceiver, a processor, and a memory. Wherein, the transceiver, the processor and the memory can be connected through internal connection. The memory is configured to store a program, and the processor is configured to execute the program in the memory and cooperate with the transceiver to enable the apparatus to perform the method performed by the third network device in the third aspect or any possible implementation manner of the third aspect.
In a tenth aspect, the present application provides a computer program product, where the computer program product includes a computer program stored in a computer-readable storage medium, and the computer program is loaded by a device to implement the instructions of the method of the first aspect, the second aspect, the third aspect, any possible implementation manner of the first aspect, any possible implementation manner of the second aspect, or any possible implementation manner of the third aspect.
In an eleventh aspect, the present application provides a computer-readable storage medium for storing a computer program, where the computer program is loaded by a device to execute instructions of the method of the first aspect, the second aspect, the third aspect, any possible implementation manner of the first aspect, any possible implementation manner of the second aspect, or any possible implementation manner of the third aspect.
In a twelfth aspect, the present application provides a system for sending a packet, where the system includes the apparatus of the fourth aspect, the apparatus of the fifth aspect, and the apparatus of the sixth aspect, or the system includes the apparatus of the seventh aspect, the apparatus of the eighth aspect, and the apparatus of the ninth aspect.
Drawings
Fig. 1 is a schematic structural diagram of an SR network according to an embodiment of the present application;
fig. 2 is a schematic structural diagram of another SR network provided in an embodiment of the present application;
fig. 3 is a flowchart of a method for distributing routing data according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a routing message according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a forwarding table in a network device according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a forwarding table in another network device according to an embodiment of the present application;
fig. 7 is a flowchart of a method for sending a message according to an embodiment of the present application;
fig. 8 is a flowchart of another method for sending a message according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of an apparatus for sending a packet according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of another apparatus for sending a message according to an embodiment of the present application;
fig. 11 is a schematic structural diagram of another apparatus for sending a message according to the embodiment of the present application;
fig. 12 is a schematic structural diagram of another apparatus for sending a message according to the embodiment of the present application;
fig. 13 is a schematic structural diagram of another apparatus for sending a message according to the embodiment of the present application;
fig. 14 is a schematic structural diagram of another apparatus for sending a message according to the embodiment of the present application;
fig. 15 is a schematic structural diagram of a system for sending a message according to an embodiment of the present application.
Detailed Description
Embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Referring to fig. 1, an embodiment of the present application provides an SR network, including:
the first network device, the plurality of second network devices, the at least one third network device and the VNF, the VNF comprising a plurality of functional entities.
The at least one third network device is located at a boundary of the SR network. Each third network device is in communication with the first network device, the first network device is in communication with each second network device, and each second network device is in communication with at least one functional entity in the VNF.
Optionally, the functional entity communicating with each second network device is different.
Each third network device and each second network device are internet protocol version 6 (ipv 6) segment routing (SRv 6) devices and have an SRv6 function, so that when each third network device receives a packet, a packet header may be added to the packet to form a new packet, where the packet header includes a segment list, and the segment list includes a segment identifier, and after each second network device receives the new packet, the segment identifier may be obtained from the segment list of the new packet, and the new packet is processed according to the segment identifier.
The functional entities in the VNF correspond to VPNs, and the VNF includes a plurality of functional entities corresponding to the VPNs, and the functional entities are configured to process packets belonging to the VPNs. For example, it is assumed that the functional entities are all firewalls for address resolution, so that the functional entities can be used for address resolution of packets belonging to the VPN.
The VNF includes a plurality of functional entities corresponding to each VPN of the at least one VPN, and the plurality of functional entities corresponding to any two VPNs may be completely different, partially identical, or completely identical.
In the embodiment of the present application, a plurality of functional entities corresponding to a VPN are grouped into an entity set, that is, an entity set including the plurality of functional entities corresponds to the VPN, and the entity set is uniquely identified by using a segment identifier. In addition, the VPN also corresponds to a set of devices that includes a second network device in communication with each functional entity in the set of entities.
For the set of devices, the set of devices may also be identified using the segment identification, that is, the segment identification corresponds to the set of entities and the set of devices. In this case, the set identifier corresponding to the device set may be part of the content in the segment identifier. For example, assuming the segment identification is B1::11, the set identification may be B1:/64. Where B1:/64 is the content of the first 64 bits of the segment identifier, that is, the set identifier is the content of the first 64 bits of the segment identifier. Alternatively, the first and second liquid crystal display panels may be,
the set identity may not be part of the content of the segment identity, in which case the set of devices is identified using a single set identity, i.e. the set identity corresponds to the set of devices, and the segment identity corresponds to the set of entities.
For each second network device in the set of devices, the second network device saves a correspondence between the VPN identifier and the segment identifier if the segment identifier corresponds to the set of entities and the set of devices. Alternatively, the first and second electrodes may be,
in a case where the set identifier corresponds to the device set and the segment identifier corresponds to the entity set, the second network device stores a correspondence relationship between the VPN identifier, the segment identifier of the entity set, and the set identifier of the device set.
The second network device communicates with at least one functional entity in the set of entities via at least one port, the segment identifier also being bound to the at least one port in the second network device.
Optionally, the second network device may store a corresponding relationship between the segment identifier and a port identifier of each port of the at least one port, so as to implement that the segment identifier is bound to the at least one port.
For example, referring to fig. 1, it is assumed that a VPN includes a first functional entity, a second functional entity, and a third functional entity on a VNF, and a VPN includes a second network device1 and a second network device 2. The first network device1 communicates with a first functional entity and a second functional entity. Wherein the second network device1 communicates with the first functional entity through a first port and communicates with the second functional entity through a second port.
The second network device1 may store a corresponding relationship between the VPN identifier and the segment identifier as shown in table 1, where a first record in the corresponding relationship includes a VPN identifier Net1 and a segment identifier B1::11, and the segment identifier includes a set identifier B1:, which may be represented as B1:/64. Alternatively, the second network device1 may store the corresponding relationship between the VPN identifier Net1, the segment identifier Bsid1 of the entity set, and the set identifier G1 of the device set, as shown in table 2.
The second network device1 further stores the corresponding relationship between the segment identifier and the port identifier as shown in table 3, where a first corresponding relationship among the corresponding relationships shown in table 3 stores the segment identifier (Bsid 1 or B1:: 11) and the port identifier P1 of the first port, and a second corresponding relationship stores the segment identifier (Bsid 1 or B1:: 11) and the port identifier P2 of the second port.
TABLE 1
VPN identification Segment identification
Net1 B1::11
TABLE 2
VPN identification Segment identification for entity collections Set identification for a set of devices
Net1 Bsid1 G1
TABLE 3
Figure BDA0002754830350000061
The second network device2 communicates with the third functional entity via one port. The second network device2 may store the corresponding relationship between the VPN identifier and the segment identifier as shown in table 1, or store the corresponding relationship between the VPN identifier Net1, the segment identifier Bsid1 of the entity set, and the set identifier G1 of the device set as shown in table 2.
The second network device2 may further store the corresponding relationship between the segment identifier and the port identifier as shown in table 4, where a first corresponding relationship in the corresponding relationship shown in table 4 stores the segment identifier Bsid1 and the port identifier P3 of the port.
TABLE 4
Segment identification Port identification
Bsid1 or B1: 11 P3
Referring to fig. 1, the SR network further includes a network management device, where the network management device may deploy a set of entities corresponding to a VPN on the VNF, select a plurality of second network devices to form the set of devices corresponding to the VPN, and configure each second network device in the set of devices to communicate with one or more functional entities in the set of entities.
The network management device may select existing functional entities and/or newly created functional entities in the VNF when deploying the entity set, and form the selected existing functional entities and/or newly created functional entities into the entity set.
For each second network device in the set of devices, the network management device may store a correspondence between the VPN identifier and a segment identifier in the second network device, the segment identifier corresponding to the set of entities and the set of devices. Or the network management device stores the correspondence between the VPN identifier, the segment identifier of the entity set, and the set identifier of the device set in the second network device, where the set identifier corresponds to the device set, and the segment identifier corresponds to the entity set.
The process of the network management device storing the corresponding relationships on each second network device in the device set may be:
after configuring each second network device in the device set to communicate with one or more functional entities in the entity set, the network management device allocates segment identifiers corresponding to the entity set and the device set, and sends the VPN identifiers, the segment identifiers, and identifiers of each functional entity communicating with the second network device to the second network devices in the device set. And the second network equipment in the equipment set receives the VPN identification, the segment identification and the identification of each functional entity communicating with the second network equipment, and stores the corresponding relation between the VPN identification and the segment identification. And according to the identification of each functional entity communicating with the second network equipment, determining the port identification of the port communicating with each functional entity in the second network equipment, and storing the segment identification and the port identification communicating with each functional entity in the corresponding relation of the segment identification and the port identification. Alternatively, the first and second electrodes may be,
after configuring each second network device in the device set to communicate with one or more functional entities in the entity set, the network management device allocates a segment identifier of the entity set and a set identifier of the device set, and sends the VPN identifier, the segment identifier of the entity set, the set identifier of the device set, and an identifier of each functional entity communicating with the second network device to the second network device. And the second network device in the device set receives the VPN identification, the segment identification of the entity set, the set identification of the device set and the identification of each functional entity communicating with the second network device, and stores the corresponding relation among the VPN identification, the segment identification of the entity set and the set identification of the device set. And according to the identification of each functional entity communicating with the second network equipment, determining the port identification of the port communicating with each functional entity in the second network equipment, and storing the segment identification and the port identification communicating with each functional entity in the corresponding relation of the segment identification and the port identification.
The VNF may be one network device or a device cluster comprising a plurality of network devices. When the VNF is a network device, a plurality of functional entities included in an entity set corresponding to one VPN are located in the network device. When the VNF is a device cluster including a plurality of network devices, a plurality of functional entities included in an entity set corresponding to one VPN are located on different network devices in the device cluster or on the same network device.
Alternatively, referring to fig. 1, the second network device may be a separate physical device, such that the second network device may communicate with functional entities on one or more network devices in the VNF. Alternatively, referring to fig. 2, for each second network device, the second network device may be a virtual device, the second network device being located on one network device in the VNF, the second network device being in communication with one or more functional entities on the one network device.
The first network device and the second network device may communicate as follows: a network connection exists between the first network device and the second network device.
The second network device communicating with the functional entity in the VNF may include: the second network device is an independent physical device, and a network connection exists between the second network device and the functional entity in the VNF; the second network device is a virtual device located on one network device in the VNF, and an internal connection exists between the second network device and a functional entity in the one network device.
Optionally, the third network device may be an SR network border network device, for example, the third network device is a border router, a switch, a gateway, or another forwarding device having a function of forwarding a packet. The first network device may be a Data Center Gateway (DCGW), or the like. Under the condition that the second network device is a physical device, the second network device may be a router, a switch, a gateway or other forwarding devices with a function of forwarding messages; in the case where the second network device is a virtual device, the second network device may be a DVR. The functional entity on the VNF may be a single board, a virtual machine, or a container. The VNF may be one server or a server cluster comprising a plurality of servers.
Referring to fig. 3, an embodiment of the present application provides a method for publishing routing data, where the method may be applied to the network architecture shown in fig. 1 or fig. 2, and the method includes:
step 301: the VNF sends a traffic route publish message to the first network device, the traffic route publish message including the VPN identification.
Optionally, the VNF sends a service route publishing message to the first network device through an External Border Gateway Protocol (EBGP), where the service route publishing message may be an EBGP message.
Optionally, after the VNF deploys the entity set corresponding to the VPN on the VNF, the VNF sends a service routing publish message.
Assume that the VNF sends a traffic route publication message to the first network device, the traffic route publication message including the VPN identification Net1.
Step 302: and the first network equipment receives the service routing release message and sends the service routing release message to each second network equipment which is communicated with the first network equipment.
And each second network device communicated with the first network device comprises a second network device in the device set corresponding to the VPN. Therefore, the first network device sends the service routing and issuing information, and the second network device in the device set receives the service routing and issuing information.
Step 303: and the second network equipment receives the service route release message and sends the first route data and the second route data to the first network equipment.
Before sending the first routing data and the second routing data, the second network device generates the following two types of first routing data and second routing data, where the two types are:
first, the first routing data includes a segment identifier, a device identifier of the second network device, and a sharing factor of the second network device, where the sharing factor of the second network device is used to indicate the number and/or performance of functional entities communicating with the second network device. The second routing data includes the VPN identification and the segment identification.
Second, the first routing data includes a set identifier of the device set, a device identifier of the second network device, and a sharing factor of the second network device, and the second routing data includes a segment identifier of the VPN identifier, a set identifier of the device set corresponding to the VPN, and a segment identifier of the entity set corresponding to the VPN.
Optionally, in a case that the set identifier is part of the content in the segment identifier, the second network device generates the first routing data and the second routing data in the first form. In the case that the set identifier is not part of the content in the segment identifier, the second network device generates the second type of first routing data and the second routing data.
In step 303, the second network device receives the service routing publish message, which includes the VPN identification. Under the condition that the corresponding relation between the VPN identification and the segment identification is stored in the second network equipment, the second network equipment generates and sends the first routing data and the second routing data in the first form, and the generation process is as follows:
and the second network equipment inquires the corresponding relation between the VPN identification and the segment identification according to the VPN identification, and if the corresponding segment identification is inquired, each functional entity which is communicated with the second network equipment in the entity set corresponding to the VPN is determined according to the segment identification, so that a sharing factor for indicating the number and/or the performance of each functional entity is determined. The second network device sends first routing data including the VPN identifier, the device identifier of the second network device, and the sharing factor to the first network device, and sends second routing data including the VPN identifier and the segment identifier. If the second network device does not inquire out the corresponding segment identifier, it indicates that the second network device is not the second network device in the device set corresponding to the VPN, and the operation is ended.
Under the condition that the second network device stores the corresponding relationship among the VPN identifier, the segment identifier of the entity set and the set identifier of the device set, the second network device generates and sends the first routing data and the second routing data in the second form, and the generation process is as follows:
and the second network equipment inquires the corresponding relation among the VPN identification, the segment identification of the entity set and the set identification of the equipment set according to the VPN identification. If the segment identifier of the entity set and the set identifier of the device set corresponding to the VPN are inquired, determining each functional entity communicating with the second network device in the entity set according to the segment identifier of the entity set, and further determining a sharing factor for indicating the number and/or the performance of each functional entity. Sending first routing data including the set identification of the set of devices, the device identification of the second network device, and the sharing factor to the first network device, and sending second routing data including the VPN identification, the set identification of the set of devices, and the segment identification of the set of entities. If the second network device does not inquire the segment identifier of the entity set and the set identifier of the device set corresponding to the VPN, it indicates that the second network device is not the second network device in the device set corresponding to the VPN, and the operation is ended.
The sharing factor of the second network device may be the number of functional entities communicating with the second network device, or the sharing factor of the second network device may be the performance of the functional entities communicating with the second network device.
Optionally, the functional entity communicating with the second network device can process the total packet number of the packet in unit time, where the total packet number is used to reflect the performance of the functional entity communicating with the second network device, that is, the total packet number may be a sharing factor of the second network device.
Optionally, the operation of the second network device determining each functional entity in the entity set that communicates with the second network device may be:
and the second network equipment inquires at least one corresponding port identification from the corresponding relation between the segment identification and the port identification according to the segment identification, and a port corresponding to each port identification in the at least one port identification is communicated with one functional entity in the entity set, so that each functional entity communicated with the second network equipment in the entity set is determined based on each port identification. And the second network equipment counts the number of the functional entities to obtain the sharing factor of the second network equipment. Or the second network device obtains the resource quantity of each functional entity from each functional entity, and determines the sharing factor of the second network device according to the resource quantity of each functional entity.
Optionally, the resource amount of the functional entity may be a calculation resource amount, a storage resource amount, and/or a network resource amount, and the second network device may determine, according to the resource amount of the functional entity, the packet amount processed by the functional entity in unit time. After the number of the messages of each functional entity is determined, the number of the messages of each functional entity is accumulated to obtain the total number of the messages, and the sharing factor of the second network equipment is obtained.
For example, referring to fig. 1 or fig. 2, it is assumed that the second network device1 receives a traffic route publication message including a VPN identification Net1. In the case where the correspondence between the VPN identifier and the segment identifier shown in table 1 is stored in the second network device1, the second network device1 queries the correspondence between the VPN identifier and the segment identifier shown in table 1 according to the VPN identifier Net1, and queries that the corresponding segment identifier is B1::11. 11, inquiring the corresponding port identification P1 of the first port and the port identification P2 of the second port from the corresponding relation between the segment identification and the port identification shown in the table 3, and determining that two functional entities in the entity set are communicated with the second network equipment 1, wherein the two functional entities are the first functional entity and the second functional entity, so that the sharing factor of the second network equipment 1 is the functional entity number 2. The second network device1 sends the first routing data and the second routing data to the first network device. The first routing data comprises the segment identifier B1::11, the Device identifier Device1 of the second network Device1 and the sharing factor 2 of the second network Device1, and the second routing data comprises the VPN identifier Net1 and the segment identifier B1::11.
Under the condition that the correspondence between the VPN identifier, the segment identifier of the entity set, and the set identifier of the device set, as shown in table 2, is stored in the second network device1, the second network device1 queries the correspondence between the VPN identifier, the segment identifier of the entity set, and the set identifier of the device set, as shown in table 2, according to the VPN identifier Net1, and queries the segment identifier Bsid1 of the entity set and the set identifier G1 of the device set, which correspond to the VPN. According to the segment identifier Bsid1 of the entity set, the corresponding port identifier P1 of the first port and the port identifier P2 of the second port are queried from the corresponding relationship between the segment identifier and the port identifier shown in table 3, and it is determined that there are two functional entities in the entity set, which are the first functional entity and the second functional entity, communicating with the second network device1, so that the sharing factor of the second network device1 is the number 2 of the functional entities. The second network Device1 sends first routing data and second routing data to the first network Device, the first routing data includes the set identifier G1 of the Device set, the Device identifier Device1 of the second network Device1 and the sharing factor 2 of the second network Device1, and the second routing data includes the VPN identifier Net1, the set identifier G1 of the Device set and the segment identifier Bsid1 of the entity set.
For another example, referring to fig. 1 or fig. 2, it is assumed that the second network device2 receives a traffic route distribution message, and the traffic route distribution message includes a VPN identification Net1. Under the condition that the corresponding relation between the VPN identification and the segment identification shown in the table 1 is stored in the second network equipment 2, the second network equipment 2 inquires the corresponding relation between the VPN identification and the segment identification shown in the table 1 according to the VPN identification Net1, and inquires that the corresponding segment identification is B1::11. 11, inquiring the port identification P3 of a corresponding port from the corresponding relation between the segment identification and the port identification shown in the table 4, and determining that one functional entity in the entity set is communicated with the second network equipment 1, wherein the functional entity is a third functional entity, so that the sharing factor of the second network equipment 2 is the number of the functional entities 1. The second network device2 sends the first routing data and the second routing data to the first network device. The first routing data comprises the segment identifier B1::11, the Device identifier Device2 of the second network Device2 and the sharing factor 1 of the second network Device2, and the second routing data comprises the VPN identifier Net1 and the segment identifier B1::11.
Under the condition that the correspondence between the VPN identifier, the segment identifier of the entity set, and the set identifier of the device set, as shown in table 2, is stored in the second network device2, the second network device2 queries the correspondence between the VPN identifier, the segment identifier of the entity set, and the set identifier of the device set, as shown in table 2, according to the VPN identifier Net1, and queries the segment identifier Bsid1 of the entity set and the set identifier G1 of the device set, which correspond to the VPN. According to the segment identifier Bsid1 of the entity set, the port identifier P3 of a corresponding port is queried from the corresponding relationship between the segment identifier and the port identifier shown in table 4, and it is determined that there is a functional entity in the entity set to communicate with the second network device2, where the functional entity is a third functional entity, so that the sharing factor of the second network device2 is the number of the functional entities 1. The second network Device2 sends first routing data and second routing data to the first network Device, the first routing data includes the set identifier G1 of the Device set, the Device identifier Device2 of the second network Device2, and the sharing factor 1 of the second network Device2, and the second routing data includes the VPN identifier Net1, the set identifier G1 of the Device set, and the segment identifier Bsid1 of the entity set.
In step 303, the second network device may send a routing message to the first network device, the routing message including the first routing data and the second routing data.
Optionally, referring to fig. 4, a first Type Length Value (TLV) and a second TLV may be included in the routing message, where a value field of the first TLV includes the first routing data, that is, includes the segment identifier in the first routing data, the device identifier of the second network device, and the sharing factor of the second network device, or includes the set identifier of the set of devices in the first routing data, the device identifier of the second network device, and the sharing factor of the second network device. The value field of the second TLV includes the second routing data, i.e. includes the VPN identification, the segment identification of the set of entities and the set identification of the set of devices in the second routing data, or includes the VPN identification and the segment identification in the second routing data.
Step 304: the first network device receives the first routing data and the second routing data, stores the first routing data, and sends the second routing data to a third network device in communication with the first network device.
After receiving the first routing data, the first network device may store the first routing data in a forwarding table, that is, the first routing data is used as a forwarding table entry and is stored in the forwarding table.
For example, referring to fig. 5, the first network Device receives the first routing data including the segment identifier B1::11, the Device identifier Device1 of the second network Device1 and the sharing factor 2, the second routing data including the VPN identifier Net1 and the segment identifier B1::11, sent by the second network Device1, and receives the first routing data including the segment identifier B1::11, the Device identifier Device2 of the second network Device2 and the sharing factor 1, the second network Device including the VPN identifier Net1 and the segment identifier B1::11, sent by the second network Device2, and saves the two received first routing data in a forwarding table.
For another example, referring to fig. 6, the first network Device receives the first routing data including the set identifier G1, the Device identifier Device1 of the second network Device1, and the sharing factor 2, which is sent by the second network Device1, the second routing data including the VPN identifier Net1, the set identifier G1, and the segment identifier Bsid1, and receives the first routing data including the set identifier G1, the Device identifier Device2 of the second network Device2, and the sharing factor 1, which is sent by the second network Device2, and the second network Device including the VPN identifier Net1, the set identifier G1, and the segment identifier Bsid1, and stores the two received first routing data in the forwarding table.
Step 305: and the third network equipment receives the second routing data and stores the second routing data.
After receiving the second routing data, the third network device may combine the second routing data and the interface identifier of the ethernet interface communicating with the first network device into a forwarding table entry, and store the forwarding table entry in a forwarding table.
For example, referring to fig. 5, the third network device receives the second routing data including the VPN identifier Net1 and the segment identifier B1::11, and forms a forwarding table entry with the second routing data and the interface identifier Eth1 of the ethernet interface in the third network device, which communicates with the first network device, and stores the forwarding table entry in the forwarding table.
For another example, referring to fig. 6, the third network device receives the second routing data including the VPN identifier Net1, the set identifier G1, and the segment identifier Bsid1, and forms a forwarding table entry with the second routing data and the interface identifier Eth1 of the ethernet interface in the third network device, which communicates with the first network device, and stores the forwarding table entry in the forwarding table.
Optionally, the VNF may not send the traffic routing publish message to the first network device. Instead, after the network management device deploys the entity set and configures the second network device in the entity set to communicate with the functional entity in the entity set, the network management device directly sends a service route publishing message including the VPN identifier to the first network device, and then starts to execute from step 302. Alternatively, the network management device sends the traffic route distribution message including the VPN identifier directly to each second network device in the device set, and then starts to execute from step 303 above. Alternatively, each second network device in the device set generates the first routing data and the second routing data when communicating with the functional entity in the entity set, i.e. starting from step 303 above.
In this embodiment of the present application, the second routing data includes a VPN identifier and a segment identifier, or the second routing data includes a VPN identifier, a set identifier of a device set, and a segment identifier of an entity set, that is, one VPN corresponds to one entity set, and the entity set corresponds to one piece of second routing data, instead of one piece of routing data corresponding to each functional entity in the entity set. In this way, no matter how many functional entities in the entity set are, the number of the second routing data stored in the third network device will not be affected, so that the number of the second routing data that needs to be stored in the third network device can be greatly reduced, thereby reducing the burden of the third network device. And the third network device is a border network device of the SR network, i.e. the burden of the border network device is reduced. And because the number of the functional entities in the entity set does not affect the number of the second routing data stored in the third network device, a large number of functional entities can be deployed for the VPN in the VNF to process the VPN message, and the expansibility is enhanced.
Referring to fig. 7, an embodiment of the present application provides a method for sending a packet, where the method may be applied to the network architecture shown in fig. 1 or fig. 2, where the packet is a first packet, and a header of the first packet includes a segment identifier, or a header of the first packet includes an aggregation identifier and a segment identifier, where the segment identifier corresponds to an equipment aggregation and an entity aggregation, and the aggregation identifier is a partial content in the segment identifier. The method comprises the following steps:
step 701: the third network equipment acquires a first message, wherein a message header of the first message comprises a segment identifier, the segment identifier corresponds to an equipment set and an entity set, the equipment set comprises a plurality of second network equipment, the entity set comprises a plurality of functional entities, and the second network equipment in the equipment set is communicated with the functional entities in the entity set.
The entity set corresponds to a VPN, and each functional entity in the entity set can process messages of the VPN.
The header of the first packet may include a destination address that is a set identification of the set of devices and a segment list that includes the segment identification. The set identifier is part of the content in the segment identifier.
In step 701, the third network device may obtain the first packet in the following two manners, which are:
in the first manner, the third network device may directly generate the first packet.
In the first manner, when the third network device needs to send the first packet to the functional entity in the entity set corresponding to the VPN, the third network device may obtain a forwarding table entry including the VPN identifier from a forwarding table stored in the third network device, where the forwarding table entry includes the second routing data, and generate the first packet based on the second routing data.
The second routing data also includes a segment identification. The header of the first packet includes the segment identifier. Or, the header of the first packet includes a destination address and a segment list, the destination address is a set identifier of the device set, and the segment identifier list includes the segment identifier, and the set identifier is a part of the content in the segment identifier.
For example, referring to fig. 5, the third network device includes a forwarding table entry of the VPN identifier Net1, the forwarding table entry includes second routing data and an interface identifier Eth1 of the ethernet interface, and the second routing data includes the VPN identifier Net1 and a segment identifier B1::11. The third network equipment generates a first message, the message header of the first message comprises a destination address and a segment list, the destination address is B1:/64, and the segment identifier in the segment list is B1::11. The set identification B1:/64 is the content of the first 64 bits of the segment identification B1::11.
In a second manner, the third network device receives a second packet, where the second packet includes a VPN identifier, and generates a first packet according to the first routing data, where a packet header of the first packet includes a segment identifier, a payload of the first packet includes the second packet, and the first routing data includes the VPN identifier and the segment identifier.
The third network device is located at the boundary of the SR network, and may be connected to the terminal or the local area network, and is configured to receive the second packet from the terminal or the second packet from the local area network.
In a second manner, the second network device receives the second packet, obtains the VPN identifier from the second packet, obtains a forwarding table entry including the VPN identifier, where the forwarding table entry includes the second routing data, and generates the first packet according to the second routing data.
Optionally, when the first packet is generated, the second packet is used as a payload, and a packet header is added on the basis of the payload, where the packet header includes a segment list, and the segment list includes a segment identifier in the second routing data. Or, the message header includes a destination address and a segment list, where the destination address is a set identifier of the device set, and the segment list includes the segment identifier, and the set identifier is a part of content in the segment identifier.
Optionally, the packet header is an SRv6 packet header, the destination address of the SRv6 packet header is a part of content in the segment identifier included in the second routing data, and the segment list in the SRv6 packet header includes the segment identifier.
For example, referring to fig. 5, the third network device obtains the VPN identifier Net1 from the second packet, obtains a forwarding table including the VPN identifier Net1, where the forwarding table includes second routing data and an interface identifier Eth1 of an ethernet interface, the second routing data includes the VPN identifier Net1 and a segment identifier B1::11, takes the second packet as a payload, and adds a packet header to the payload, where a destination address of the packet header is a set identifier B1:/64, and a segment list of the packet header includes the segment identifier B1::11.
Step 702: and the third network equipment sends the first message to the first network equipment.
The forwarding table entry obtained by the third network device further includes an interface identifier of an ethernet interface communicating with the first network device, and the first packet is sent to the first network device through the ethernet interface corresponding to the interface identifier.
For example, referring to fig. 5, the forwarding table entry obtained by the third network device further includes an interface identifier Eth1 of the ethernet interface, and the first packet is sent to the first network device through the ethernet interface corresponding to the Eth 1.
And the first network equipment receives the first message and sends the first message to the second network equipment in the equipment set corresponding to the segment identifier. The first network device may send the first packet to one second network device in the device set, or send the first packet to multiple second network devices in the device set, which is implemented in detail in steps 703 and 704 as follows.
Step 703: the first network equipment receives the first message, and obtains the sharing factor of the second network equipment in the equipment set according to the segment identifier included in the first message, wherein the equipment set is the set corresponding to the segment identifier.
Wherein the sharing factor of each second network device in the device set is respectively used for indicating the number and/or performance of the functional entities communicating with each second network device.
In step 703, the first network device obtains the segment identifier from the first packet, obtains at least one piece of first routing data including the segment identifier from a forwarding table stored in the first network device, where each piece of first routing data in the at least one piece of first routing data further includes a device identifier and a sharing factor of the second network device, and obtains, from each piece of first routing data, the device identifier and the sharing factor of each second network device in a device set corresponding to the set identifier. Or, the first network device obtains the set identifier in the segment identifier from the first packet, obtains at least one piece of first routing data including the set identifier from a forwarding table stored in the first network device, where each piece of first routing data in the at least one piece of first routing data further includes a device identifier and a sharing factor of the second network device, and obtains, from each piece of first routing data, the device identifier and the sharing factor of each second network device in the device set corresponding to the set identifier.
For example, referring to fig. 5, a first network Device receives a first message, acquires the segment identifier B1::11 from the first message, and acquires two pieces of first routing data including the segment identifier B1::11 from its own forwarding table, where one piece of first routing data further includes a Device identifier Device1 and a sharing factor 2 of a second network Device1, and the other piece of first routing data further includes a Device identifier Device2 and a sharing factor 1 of a second network Device2, so as to obtain a Device identifier Device1 and a sharing factor 2 of the second network Device1 and a Device identifier Device2 and a sharing factor 1 of the second network Device2, which are included in a Device set corresponding to the segment identifier B1::11.
Step 704: and the first network equipment sends a first message according to the sharing factor of each second network equipment.
In step 704, the second network device selects one second network device from the device set according to the specified first balancing policy and the sharing factor of each second network device, and sends the first packet to the selected second network device.
Optionally, the first equalization strategy is: the contribution factor of the second network device is proportional to the probability of selecting the second network device. I.e. the greater the share factor at the second network device, the greater the probability of selecting the second network device.
For example, the sharing factor of the second network device1 in the device set is 2, and the sharing factor of the second network device1 is 1, so the probability that the first network device selects the second network device1 is twice as high as the probability that the second network device2 is selected.
For example, in implementation, the first network device records the device identifier of the second network device that was selected last time, and in this selection, selects one second network device from the device set based on the recorded information, and sends the first packet to the selected second network device. For example, the sharing factor of the second network device1 is 2, and the sharing factor of the second network device1 is 1, the first network device selects the second network device2 once after continuously selecting the second network device1 twice, that is, when the first network device receives the 1 st first packet and the 2 nd first packet belonging to the VPN, the first network device selects the second network device1 and sends the 1 st first packet and the 2 nd first packet to the second network device1, and when the 3 rd first packet belonging to the VPN is received, the second network device2 is selected and sends the 3 rd first packet to the second network device 2. When receiving a 4 th first message and a 5 th first message belonging to the VPN, the first network device selects the second network device1 and transmits the 4 th first message and the 5 th first message to the second network device1, and when receiving a 6 th first message belonging to the VPN, selects the second network device2 and transmits the 6 th first message to the second network device 2; by analogy, the following description is omitted.
Optionally, the first network device may select a second network device from the device set in other manners besides the manner of selecting a second network device in the foregoing step 704, for example, in a polling manner. Wherein, in the polling manner, the number of functional entities communicating with each second network device in the device set may be equal or substantially equal. The polling method is to select a first second network device from the device set when a first packet is received for the first time, select a second network device from the device set when a first packet is received for the second time, and so on, so that they are not listed one by one.
Step 705: and the second network equipment receives the first message and sends a second message to the functional entity in the entity set corresponding to the segment identifier, wherein the second message is generated based on the first message.
Optionally, the second network device selects one functional entity from a plurality of functional entities in the entity set, which communicate with the second network device, according to the specified second balancing policy, where the entity set is the entity set corresponding to the segment identifier in the first message.
In step 705, since the second network device has an SRv6 device, the second network device obtains the segment identifier from the segment list of the first packet, where the segment identifier is used to identify an entity set, determine each port bound to the segment identifier, determine a functional entity communicating with each port, that is, obtain at least one functional entity in the entity set that communicates with the second network device, and select one functional entity from the at least one functional entity according to a specified second balancing policy. And the second network equipment sends the second message to the selected functional entity so as to enable the functional entity to process the second message. The second message may be the first message or the message obtained by removing the SRv6 header from the first message.
The second equalization strategy may be: the performance of a functional entity is proportional to the probability of selecting the functional entity, i.e. the greater the performance of the functional entity, the greater the probability of selecting the functional entity. Alternatively, the first and second liquid crystal display panels may be,
the second equalization strategy may be: polling sequentially, for example, assuming that there are three functional entities, the second network device selects the first functional entity for the first time, the second functional entity for the second time, and the third functional entity for the third time; the first functional entity is selected for the fourth time, the second functional entity is selected for the fifth time, the third functional entity is selected for the sixth time, and so on, and the following listing is not repeated.
If the polling mode is adopted, the second network equipment records the functional entity selected last time, and during the selection, one functional entity is selected from the entity set based on the recorded information, and a first message is sent to the selected functional entity.
Optionally, the operation of determining each port bound to the segment identifier may be:
and the second network equipment acquires at least one port identifier from the corresponding relation between the segment identifier and the port identifier in the second network equipment according to the segment identifier, wherein the port corresponding to each port identifier in the at least one port identifier is the port bound with the segment identifier in the second network equipment.
For example, referring to fig. 5, suppose that the second network device1 receives a first message sent by the first network device, and obtains a segment identifier B1::1 from a segment list of the first message; 11, acquiring a port identifier P1 of a first port and a port identifier P2 of a second port from the corresponding relation between the segment identifier and the port identifier stored in the entity set and shown in the table 3, and further determining a first functional entity and a second functional entity which are communicated with a second network device1 in the entity set; and selecting one functional entity from the first functional entity and the second functional entity according to a second balancing strategy.
It is assumed that the second balancing policy is sequential polling, and the second network device1 selects the first functional entity last time, so that the second functional entity is selected this time. The second network device1 sends the first message to the second functional entity, and the second functional entity receives the first message and provides service for the first message.
In this embodiment, the third network device receives the second packet, where the second packet includes the VPN identifier, obtains second routing data that includes the VPN identifier and is stored in the third network device, and generates the first packet according to the second routing data, where a packet header of the first packet includes a segment list, where the segment list includes the segment identifier in the second routing data, and sends the first packet to the first network device. That is to say: the second routing data includes the VPN identification and the segment identification, such that the set of entities corresponds to a piece of second routing data instead of one piece of routing data for each functional entity in the set of entities. In this way, no matter how many functional entities in the entity set are, the number of the second routing data stored in the third network device is not affected, so that the number of the second routing data required to be stored in the third network device can be greatly reduced, and the burden of the third network device, that is, the burden of the boundary network device of the SR network, is reduced. And, a large number of functional entities can be deployed for the VPN in the VNF to provide services for the VPN, so that the expansibility is enhanced. The first network device receives the first message, obtains the sharing factor of each second network device in the device set according to the segment identifier in the first message, and selects the second network device to send the first message according to the sharing factor of each second network device, so that the first network device performs the first balancing processing on the messages belonging to the VPN according to the sharing factor of each second network device. After receiving the first message, the second network device determines at least one functional entity communicating with the second network device in the entity set corresponding to the segment identifier according to the segment identifier in the first message, selects one functional entity from the at least one functional entity according to a second balancing strategy, and sends the first message to the selected functional entity, so that the second balancing of the messages belonging to the VPN is realized. Therefore, the message belonging to the VPN can be balanced twice, so that the aim of balancing the service of the message belonging to the VPN is fulfilled.
Referring to fig. 8, an embodiment of the present application provides a method for sending a packet, where the method may be applied to the network architecture shown in fig. 1 or fig. 2, in the method, a packet header of a first packet includes an aggregation identifier and a segment identifier, where the aggregation identifier corresponds to a device aggregation, and the segment identifier corresponds to an entity aggregation. The method comprises the following steps:
step 801: the third network equipment acquires a first message, wherein the message header of the first message comprises a set identifier and a segment list of the equipment set, and the segment list comprises a segment identifier.
The entity set corresponds to a VPN, and each functional entity in the entity set can process messages of the VPN.
In step 801, the third network device may obtain the first packet in the following two manners, where the two manners are:
in the first manner, the third network device may directly generate the first packet.
In the first manner, when the third network device needs to send the first packet to the functional entity in the entity set corresponding to the VPN, the third network device may obtain a forwarding table entry including the VPN identifier from a forwarding table stored in the third network device, where the forwarding table entry includes the second routing data, and generate the first packet based on the second routing data.
The second routing data also includes a set identification and a segment identification. The header of the first packet includes a destination address and a segment list, the destination address being the set identifier and the segment identifier list including the segment identifier.
For example, referring to fig. 6, the third network device includes a forwarding entry of the VPN identification Net1, the forwarding entry includes second routing data and an interface identification Eth1 of the ethernet interface, and the second routing data includes the VPN identification Net1, the set identification G1, and the segment identification Bsid1. The third network equipment generates a first message, wherein the message header of the first message comprises a destination address and a segment list, the destination address is G1, and the segment identifier in the segment list is Bsid1.
In a second manner, the third network device receives a second packet, where the second packet includes a VPN identifier, and generates a first packet according to the first routing data, where a packet header of the first packet includes a set identifier of a device set corresponding to the VPN and a segment identifier of an entity set, and a payload of the first packet includes the second packet.
In a second manner, the second network device obtains the VPN identifier from the second packet, obtains a forwarding table entry including the VPN identifier from a forwarding table stored in the second network device, where the forwarding table entry includes the second routing data, and generates the first packet according to the second routing data. Optionally, in implementation, the second packet is used as a payload, and a packet header is added on the basis of the payload, where the packet header includes a segment list and a set identifier included in the second routing data, and the segment list includes a segment identifier in the second routing data.
Optionally, the packet header is an SRv6 packet header, and a destination address of the SRv6 packet header is a set identifier included in the second routing data.
For example, referring to fig. 6, the third network device obtains the VPN identifier Net1 from the second packet, obtains a forwarding table including the VPN identifier Net1, where the forwarding table includes second routing data and an interface identifier Eth1 of an ethernet interface, the second routing data includes the VPN identifier Net1, an aggregation identifier G1, and a segment identifier Bsid1, takes the second packet as a payload, and adds a packet header to the payload, where a destination address of the packet header is the aggregation identifier G1, and a segment list of the packet header includes the segment identifier Bsid1.
Step 802: and the third network equipment sends the first message to the first network equipment.
The forwarding table entry obtained by the third network device further includes an interface identifier of an ethernet interface communicating with the first network device, and the first packet is sent to the first network device through the ethernet interface corresponding to the interface identifier.
And the first network equipment receives the first message and sends the first message to second network equipment in the equipment set corresponding to the set identifier. The first network device may send the first packet to one second network device in the device set or send the first packet to a plurality of second network devices in the device set, which is implemented in detail as shown in the following steps 803 and 804.
Step 803: the first network device receives the first message, and obtains a sharing factor of each second network device in the device set according to the set identifier included in the first message, where the device set is a set corresponding to the set identifier, and the sharing factor of each second network device is used to indicate the number and/or performance of the functional entities communicating with each second network device.
In step 803, the first network device obtains the set identifier from the first packet, obtains at least one piece of first routing data including the set identifier from a routing table stored in the first network device, where each piece of first routing data in the at least one piece of first routing data further includes a device identifier and a sharing factor of the second network device, and obtains, from each piece of first routing data, the device identifier and the sharing factor of each second network device in the device set corresponding to the set identifier.
For example, referring to fig. 6, a first network Device receives a first message, acquires the set identifier G1 from the first message, and acquires two pieces of first routing data including the set identifier G1 from its own forwarding table, where one piece of first routing data further includes a Device identifier Device1 and a contribution factor 2 of a second network Device1, and another piece of first routing data further includes a Device identifier Device2 and a contribution factor 1 of a second network Device2, so as to obtain a Device identifier Device1 and a contribution factor 2 of the second network Device1 and a Device identifier Device2 and a contribution factor 1 of the second network Device2 that are included in a Device set corresponding to the set identifier G1.
Steps 804-805: respectively, as in steps 704-705 of the embodiment of fig. 7, and will not be described in detail herein.
For example, referring to fig. 6, it is assumed that the second network device1 receives a first packet sent by the first network device, and acquires a segment identifier Bsid1 from a segment list of the first packet; according to the segment identifier Bsid1, acquiring a port identifier P1 of the first port and a port identifier P2 of the second port from the corresponding relationship between the segment identifier and the port identifier stored in the segment identifier and shown in the table 3, and further determining a first functional entity and a second functional entity communicating with the second network device1 in the entity set; and selecting one functional entity from the first functional entity and the second functional entity according to a second balancing strategy. It is assumed that the second balancing policy is sequential polling, and the second network device1 selects the first functional entity last time, so the second functional entity is selected this time. The second network device1 sends the first packet to the second functional entity, and the second functional entity receives the first packet and provides service for the first packet.
In this embodiment, the third network device receives the second packet, where the second packet includes a VPN identifier, acquires second routing data that includes the VPN identifier and is stored in the third network device, and generates the first packet according to the second routing data, where a packet header of the first packet includes a segment list and an aggregate identifier in the second routing data, and the segment list includes the segment identifier in the second routing data, and sends the first packet to the first network device. That is to say: the second routing data includes the VPN identification, the segment identification of the entity set corresponding to the VPN, and the set identification of the device set, so that the entity set corresponds to a piece of second routing data, rather than each functional entity in the entity set corresponding to a piece of routing data. Therefore, no matter how many functional entities in the entity set are, the number of the second routing data stored in the third network device is not affected, so that the number of the second routing data required to be stored in the third network device can be greatly reduced, and the burden of the boundary network device is lightened. And a large number of functional entities can be deployed for the VPN in the VNF to provide services for the VPN, so that the expansibility is enhanced. The first network device receives the first message, obtains the sharing factor of each second network device in the device set according to the set identifier in the first message, and selects the second network device to send the first message according to the sharing factor of each second network device, so that the first network device performs first balancing processing on the message belonging to the VPN according to the sharing factor of each second network device. After receiving the first message, the second network device determines at least one functional entity communicating with the second network device in the entity set corresponding to the segment identifier according to the segment identifier in the first message, selects one functional entity from the at least one functional entity according to a second balancing strategy, and sends the first message to the selected functional entity, so that the second balancing of the messages belonging to the VPN is realized. Therefore, the message belonging to the VPN can be balanced twice, so that the aim of balancing the service of the message belonging to the VPN is fulfilled.
Referring to fig. 9, an embodiment of the present application provides an apparatus 900 for sending a packet, where the apparatus 900 may be deployed in the first network device, and includes:
a receiving unit 901, configured to receive a first packet, where a packet header of the first packet includes a segment identifier, where the segment identifier corresponds to an equipment set and an entity set, where the equipment set includes a plurality of second network devices, the entity set includes a plurality of functional entities, and the second network devices in the equipment set communicate with the functional entities in the entity set;
a sending unit 902, configured to send the first packet to the second network device in the device set corresponding to the segment identifier.
Optionally, the sending unit 902 is configured to:
and sending a first message to a second network device in the device set based on the segment identifier and the sharing factor of the second network device in the device set.
Optionally, a detailed implementation process of the sending unit 902 sending the first packet may refer to relevant contents in steps 703 and 704 in the embodiment shown in fig. 7, or relevant contents in steps 803 and 804 in the embodiment shown in fig. 8, which is not described in detail herein.
Optionally, the apparatus 900 further includes:
a processing unit 903, configured to obtain a sharing factor of the second network device in the device set according to the segment identifier.
Optionally, the apparatus 900 includes a plurality of first routing data, each of the first routing data includes the segment identifier, the device identifier of one second network device in the device set, and the sharing factor;
a processing unit 903, configured to obtain a sharing factor of the second network device in the device set according to the multiple first routing data.
Optionally, the detailed implementation process of the processing unit 903 to obtain the sharing factor may refer to the relevant content of step 703 in the embodiment shown in fig. 7, or the relevant content of step 803 in the embodiment shown in fig. 8, and will not be described in detail here.
Optionally, the receiving unit 901 is further configured to:
and receiving first routing data sent by a second network device in the device set.
Optionally, the detailed implementation process of the receiving unit 901 for receiving the first routing data may refer to the relevant content of step 304 in the embodiment shown in fig. 3, and will not be described in detail here.
Optionally, the device set corresponds to a set identifier, and the set identifier is a part of the content in the segment identifier.
Optionally, the apparatus 900 is a data center gateway.
In this embodiment of the present application, since the segment identifier included in the first packet corresponds to the device set and the entity set, for a boundary network device of the segment routing network, only one piece of routing data including the VPN identifier and the segment identifier needs to be stored in the boundary network device, and the boundary network device may generate the first packet based on the routing data, so that the sending unit sends the first packet to the second network device in the device set corresponding to the segment identifier. Therefore, no matter how many functional entities corresponding to the VPN exist, the number of the routing data stored in the boundary network equipment is not influenced, the number of the routing data required to be stored in the boundary network equipment can be greatly reduced, and the burden of the boundary network equipment is reduced.
Referring to fig. 10, an embodiment of the present application provides an apparatus 1000 for sending a packet, where the apparatus 1000 may be deployed in the second network device, and includes:
a receiving unit 1001, configured to receive a first packet, where a packet header of the first packet includes a segment identifier, where the segment identifier corresponds to an equipment set and an entity set, the equipment set includes a plurality of second network devices, the entity set includes a plurality of functional entities, and the second network devices in the equipment set communicate with the functional entities in the entity set;
a sending unit 1002, configured to send a second packet to the functional entity in the entity set corresponding to the segment identifier, where the second packet is generated based on the first packet.
Optionally, the detailed implementation process of the sending unit 1002 sending the second message may refer to the relevant content of step 705 in the embodiment shown in fig. 7, or refer to the relevant content of step 805 in the embodiment shown in fig. 8, and is not described in detail here.
Optionally, the sending unit 1002 is further configured to:
first routing data is sent, the first routing data comprising the segment identification, the device identification of said apparatus 1000 and a sharing factor of said apparatus 1000.
Optionally, the sending unit 1002 is further configured to:
and sending second routing data, wherein the second routing data comprises a Virtual Private Network (VPN) identifier and the segment identifier, and the first message comprises the VPN identifier.
Optionally, details of the implementation process of the sending unit 1002 for sending the first routing data and the second routing data may refer to relevant contents of step 303 in the embodiment shown in fig. 3, and are not described in detail here.
Optionally, the device set corresponds to a set identifier, and the set identifier is a part of the content in the segment identifier.
In this embodiment of the present application, since the segment identifier included in the first packet corresponds to the device set and the entity set, for a border network device of the segment routing network, only one piece of routing data including the VPN identifier and the segment identifier needs to be stored in the border network device, and the border network device may generate the first packet based on the routing data, so that the sending unit sends the second packet to the functional entity in the entity set corresponding to the segment identifier. Therefore, no matter how many functional entities corresponding to the VPN exist, the number of the routing data stored in the boundary network equipment is not influenced, the number of the routing data required to be stored in the boundary network equipment can be greatly reduced, and the burden of the boundary network equipment is reduced.
Referring to fig. 11, an apparatus 1100 for sending a packet is provided in the embodiment of the present application, where the apparatus 1100 may be deployed in the third network device, and includes:
a processing unit 1101, configured to obtain a first packet, where a packet header of the first packet includes a segment identifier, where the segment identifier corresponds to an equipment set and an entity set, the equipment set includes a plurality of second network devices, the entity set includes a plurality of functional entities, and the second network devices in the equipment set communicate with the functional entities in the entity set;
a sending unit 1102, configured to send a first packet.
Optionally, the detailed implementation process of the processing unit 1101 acquiring the first packet may refer to the related content of step 701 in the embodiment shown in fig. 7, or refer to the related content of step 801 in the embodiment shown in fig. 8, which is not described in detail herein.
Optionally, the apparatus 1100 includes second routing data, where the second routing data includes a virtual private network VPN identifier and the segment identifier, and the apparatus 1100 further includes: the receiving unit 1103 is configured to receive a signal from the receiver,
a receiving unit 1103, configured to receive a second packet, where the second packet includes the VPN identifier;
the processing unit 1101 is configured to generate a first packet according to the second routing data and the second packet.
Optionally, the receiving unit 1103 is further configured to receive the second routing data.
Optionally, the detailed implementation process of the receiving unit 1103 to receive the second routing data may refer to the related content of step 305 in the embodiment shown in fig. 3, and will not be described in detail here.
Optionally, the device set corresponds to a set identifier, and the set identifier is a part of content in the segment identifier.
Optionally, the apparatus 1100 is a border network device of a segment routing network.
In this embodiment of the present application, since the segment identifier included in the first packet corresponds to the device set and the entity set, only one piece of routing data including the VPN identifier and the segment identifier needs to be stored in the apparatus, and the processing unit may obtain the first packet based on the routing data. Thus, the number of routing data stored in the device is not affected no matter how many functional entities the VPN corresponds to, and the number of routing data required to be stored in the device can be greatly reduced, thereby reducing the burden of the device.
Referring to fig. 12, an embodiment of the present application provides a schematic diagram of an apparatus 1200 for sending a message. The apparatus 1200 may be the first network device in any of the embodiments described above. The apparatus 1200 includes at least one processor 1201, internal connections 1202, memory 1203, and at least one transceiver 1204.
The apparatus 1200 is a hardware structure apparatus, and can be used to implement the functional modules in the apparatus 700 described in fig. 7. For example, those skilled in the art may appreciate that the processing unit 903 in the apparatus 900 shown in fig. 9 may be implemented by the at least one processor 1201 calling code in the memory 1203, and the receiving unit 901 and the transmitting unit 902 in the apparatus 900 shown in fig. 9 may be implemented by the transceiver 1204.
Optionally, the apparatus 1200 may also be used to implement the function of the first network device in any embodiment described above.
Optionally, the processor 1201 may be a general processing unit (CPU), a Network Processor (NP), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program according to the present disclosure.
The internal connections 1202 may include a path for passing information between the components. Optionally, the internal connection 1202 is a single board or a bus.
The transceiver 1204 is used for communication with other devices or communication networks.
The memory 1203 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 disk read-only memory (CD-ROM) or other optical disk storage, optical disk storage (including compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.), magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to these. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integrated with the processor.
The memory 1203 is used for storing application program codes for executing the scheme of the application, and the processor 1201 controls the execution. The processor 1201 is configured to execute application program code stored in the memory 1203 and in cooperation with the at least one transceiver 1204, thereby causing the apparatus 1200 to perform the functions of the method of the present patent.
In a specific implementation, the processor 1201 may include one or more CPUs, such as CPU0 and CPU1 in fig. 12, as an embodiment.
In particular implementations, the apparatus 1200 may include multiple processors, such as the processor 1201 and the processor 1207 in fig. 12, for example, as an example. Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
Referring to fig. 13, an embodiment of the present application provides a schematic diagram of an apparatus 1300 for sending a message. The apparatus 1300 may be the second network device in any of the embodiments described above. The apparatus 1300 includes at least one processor 1301, internal connections 1302, memory 1303, and at least one transceiver 1304.
The apparatus 1300 is a hardware structure apparatus, and can be used to implement the functional modules in the apparatus 700 described in fig. 7. For example, those skilled in the art may appreciate that the receiving unit 1001 and the transmitting unit 1002 in the apparatus 1000 shown in fig. 10 may be implemented by the transceiver 1304.
Optionally, the apparatus 1300 may be further configured to implement the function of the second network device in any embodiment described above.
Optionally, the processor 1301 may be a general processing unit (CPU), a Network Processor (NP), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program according to the present disclosure.
The internal connections 1302 may include a path for passing information between the components. Optionally, the internal connection 1302 is a single board or a bus.
The transceiver 1304 is used for communicating with other devices or communication networks.
The memory 1303 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a Random Access Memory (RAM) or other types of dynamic storage devices 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 that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to these. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integral to the processor.
The memory 1303 is used for storing application program codes for executing the scheme of the present application, and is controlled by the processor 1301 to execute the application program codes. The processor 1301 is configured to execute the application program code stored in the memory 1303 and cooperate with the at least one transceiver 1304 to enable the apparatus 1300 to implement the functions of the method of the present patent.
In particular implementations, processor 1301 may include one or more CPUs such as CPU0 and CPU1 in fig. 13 as one embodiment.
In particular implementations, the apparatus 1300 may include multiple processors, such as the processor 1301 and the processor 1307 of fig. 13, for example. Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
Referring to fig. 14, an embodiment of the present application provides a schematic diagram of an apparatus 1400 for sending a message. The apparatus 1400 may be the third network device in any of the embodiments described above. The apparatus 1400 comprises at least one processor 1401, an internal connection 1402, a memory 1403, and at least one transceiver 1404.
The apparatus 1400 is a hardware structure apparatus, and can be used to implement the functional modules in the apparatus 1100 described in fig. 11. For example, it is conceivable for a person skilled in the art that the processing unit 1101 in the apparatus 1100 shown in fig. 11 can be implemented by the at least one processor 1401 invoking code in the memory 1403, and the transmitting unit 1102 and the receiving unit 1103 in the apparatus 1100 shown in fig. 11 can be implemented by the transceiver 1404.
Optionally, the apparatus 1400 may also be used to implement the function of the third network device in any of the embodiments described above.
Alternatively, the processor 1401 may be a general Central Processing Unit (CPU), a Network Processor (NP), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program according to the present disclosure.
The internal connections 1402 may include a path for passing information between the components. Optionally, the internal connection 1402 is a single board or a bus, etc.
The transceiver 1404 is used for communicating with other devices or a communication network.
The memory 1403 may be, but is not limited to, 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 that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integral to the processor.
The memory 1403 is used for storing application program codes for executing the scheme of the application and is controlled by the processor 1401 to execute. The processor 1401 is adapted to execute the application program code stored in the memory 1403 and to cooperate with the at least one transceiver 1404 such that the apparatus 1400 performs the functions of the method of the patent.
In particular implementations, processor 1401 may include one or more CPUs such as CPU0 and CPU1 in fig. 14 as one embodiment.
In one implementation, for example, the apparatus 1400 may include multiple processors, such as processor 1401 and processor 1407 from fig. 14. Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. A processor herein may refer to one or more devices, circuits, and/or processing cores that process data (e.g., computer program instructions).
Referring to fig. 15, an embodiment of the present application provides a system 1500 for sending a message, where the system 1500 includes: the apparatus 900 of FIG. 9, the apparatus 1000 of FIG. 10, and the apparatus 1100 of FIG. 11; alternatively, the system 1500 includes: the apparatus 1200 of fig. 12, the apparatus 1300 of fig. 13, and the apparatus 1400 of fig. 14.
The apparatus 900 shown in fig. 9 or the apparatus 1200 shown in fig. 12 may be a first network device 1501, the apparatus 1000 shown in fig. 10 or the apparatus 1300 shown in fig. 13 may be a second network device 1502, the apparatus 1100 shown in fig. 11 or the apparatus 1400 shown in fig. 14 may be a third network device 1503.
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, where 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 only an example of the present application and should not be taken as limiting the present application, and any modifications, equivalents, improvements and the like that are made within the principles of the present application should be included in the scope of the present application.

Claims (23)

1. A method for sending a message, the method comprising:
a first network device receives a first message, wherein a message header of the first message comprises a segment identifier, the segment identifier corresponds to a device set and an entity set, the device set comprises a plurality of second network devices, the entity set comprises a plurality of functional entities, and the second network devices in the device set are communicated with the functional entities in the entity set;
and the first network equipment sends the first message to second network equipment in the equipment set corresponding to the segment identifier.
2. The method of claim 1, wherein the sending, by the first network device, the first packet to a second network device in the device set corresponding to the segment identifier comprises:
and the first network device sends the first message to one second network device in the device set based on the segment identifier and the sharing factor of the second network device in the device set.
3. The method of claim 2, wherein the method further comprises:
and the first network equipment acquires the sharing factor of the second network equipment in the equipment set according to the segment identifier.
4. The method of claim 3, wherein the first network device includes a plurality of first routing data, each first routing data including the segment identification, a device identification of one second network device in the set of devices, and a share factor;
the obtaining, by the first network device, the sharing factor of the second network device in the device set according to the segment identifier includes:
and the first network equipment acquires the sharing factor of the second network equipment in the equipment set according to the plurality of first routing data.
5. The method of claim 4, wherein the method further comprises:
and the first network equipment receives first routing data sent by second network equipment in the equipment set.
6. The method according to any of claims 1 to 5, wherein said set of devices corresponds to a set identifier, said set identifier being part of the content in said segment identifier.
7. The method of any of claims 1 to 5, wherein the first network device is a data center gateway.
8. A method for sending a message, the method comprising:
the method comprises the steps that second network equipment receives a first message, the message header of the first message comprises segment identification, the segment identification corresponds to an equipment set and an entity set, the equipment set comprises a plurality of second network equipment, the entity set comprises a plurality of functional entities, and the second network equipment in the equipment set is communicated with the functional entities in the entity set;
and the second network equipment sends a second message to the functional entity in the entity set corresponding to the segment identifier, wherein the second message is generated based on the first message.
9. The method of claim 8, wherein the method comprises:
and the second network equipment sends first routing data, wherein the first routing data comprises the segment identifier, the equipment identifier of the second network equipment and the sharing factor of the second network equipment.
10. The method of claim 8 or 9, wherein the method further comprises:
and the second network equipment sends second routing data, the second routing data comprises a Virtual Private Network (VPN) identifier and the segment identifier, and the first message comprises the VPN identifier.
11. The method according to any of claims 8 to 9, wherein the device set corresponds to a set identifier, and the set identifier is a part of the content in the segment identifier.
12. An apparatus for sending a message, the apparatus comprising:
a receiving unit, configured to receive a first packet, where a packet header of the first packet includes a segment identifier, where the segment identifier corresponds to an equipment set and an entity set, the equipment set includes a plurality of second network devices, the entity set includes a plurality of functional entities, and the second network devices in the equipment set communicate with the functional entities in the entity set;
and the sending unit is used for sending the first message to a second network device in the device set corresponding to the segment identifier.
13. The apparatus of claim 12, wherein the sending unit is configured to:
and sending the first message to one second network device in the device set based on the segment identifier and the sharing factor of the second network device in the device set.
14. The apparatus of claim 13, wherein the apparatus further comprises:
and the processing unit is used for acquiring the sharing factor of the second network equipment in the equipment set according to the segment identifier.
15. The apparatus of claim 14, wherein the apparatus comprises a plurality of first routing data, each first routing data comprising the segment identification, a device identification of one second network device in the set of devices, and a share factor;
the processing unit is configured to obtain a sharing factor of a second network device in the device set according to the plurality of first routing data.
16. The apparatus of claim 15, wherein the receiving unit is further configured to:
and receiving first routing data sent by a second network device in the device set.
17. The apparatus according to any of claims 12 to 16, wherein the device set corresponds to a set identifier, and the set identifier is part of the content in the segment identifier.
18. The apparatus of any one of claims 12 to 17, wherein the apparatus is a data center gateway.
19. An apparatus for sending a message, the apparatus comprising:
a receiving unit, configured to receive a first packet, where a packet header of the first packet includes a segment identifier, where the segment identifier corresponds to an equipment set and an entity set, the equipment set includes a plurality of second network devices, the entity set includes a plurality of functional entities, and the second network devices in the equipment set communicate with the functional entities in the entity set;
a sending unit, configured to send a second packet to a functional entity in the entity set corresponding to the segment identifier, where the second packet is generated based on the first packet.
20. The apparatus of claim 19, wherein the sending unit is further configured to:
transmitting first routing data, the first routing data including the segment identification, a device identification of the apparatus, and a sharing factor of the apparatus.
21. The apparatus of claim 19 or 20, wherein the sending unit is further configured to:
and sending second routing data, wherein the second routing data comprises a Virtual Private Network (VPN) identifier and the segment identifier, and the first message comprises the VPN identifier.
22. The apparatus according to any of claims 19 to 20, wherein said set of devices corresponds to a set identifier, said set identifier being part of the content in said segment identifier.
23. A system for transmitting messages, the system comprising: apparatus as claimed in any one of claims 12 to 16 and apparatus as claimed in any one of claims 19 to 20.
CN202011198931.9A 2020-10-31 2020-10-31 Method, device and system for sending message Active CN114531385B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011198931.9A CN114531385B (en) 2020-10-31 2020-10-31 Method, device and system for sending message
PCT/CN2021/117322 WO2022089027A1 (en) 2020-10-31 2021-09-08 Method, apparatus and system for sending packet, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011198931.9A CN114531385B (en) 2020-10-31 2020-10-31 Method, device and system for sending message

Publications (2)

Publication Number Publication Date
CN114531385A CN114531385A (en) 2022-05-24
CN114531385B true CN114531385B (en) 2022-12-27

Family

ID=81383592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011198931.9A Active CN114531385B (en) 2020-10-31 2020-10-31 Method, device and system for sending message

Country Status (2)

Country Link
CN (1) CN114531385B (en)
WO (1) WO2022089027A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410803A (en) * 2006-01-24 2009-04-15 思杰***有限公司 Methods and systems for providing access to a computing environment
CN104219142A (en) * 2013-05-30 2014-12-17 中国电信股份有限公司 Method, system and DCBR for accessing across-IDC migrating virtual machine
CN105763444A (en) * 2016-01-27 2016-07-13 杭州华三通信技术有限公司 Route synchronization method and route synchronization device
CN107409083A (en) * 2015-03-26 2017-11-28 思科技术公司 Expansible processing to the bgp routing information in the VXLAN with EVPN control planes
CN107547374A (en) * 2017-06-01 2018-01-05 新华三技术有限公司 One kind polymerization reason treating method and apparatus
CN108429685A (en) * 2018-04-28 2018-08-21 电子科技大学 A kind of service function chain method for searching based on Segment routing technology
CN110830543A (en) * 2018-08-13 2020-02-21 华为技术有限公司 Communication method and communication device
CN111092801A (en) * 2018-10-23 2020-05-01 华为技术有限公司 Data transmission method and device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8259726B2 (en) * 2009-05-28 2012-09-04 Force10 Networks, Inc. Method and apparatus for forwarding table reduction
US20160353367A1 (en) * 2015-06-01 2016-12-01 Huawei Technologies Co., Ltd. System and Method for Virtualized Functions in Control and Data Planes
CN107710832B (en) * 2015-06-01 2020-10-09 华为技术有限公司 System and method for virtualization functions in control and data planes
WO2017161484A1 (en) * 2016-03-21 2017-09-28 华为技术有限公司 Message interaction method, device and system
US10506469B1 (en) * 2018-05-17 2019-12-10 Cisco Technology, Inc. Resilient in-band mobile core user plane function selection using segment routing load balancing
US11134002B2 (en) * 2018-10-22 2021-09-28 Cisco Technology, Inc. Packet network interworking including segment routing

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410803A (en) * 2006-01-24 2009-04-15 思杰***有限公司 Methods and systems for providing access to a computing environment
CN104219142A (en) * 2013-05-30 2014-12-17 中国电信股份有限公司 Method, system and DCBR for accessing across-IDC migrating virtual machine
CN107409083A (en) * 2015-03-26 2017-11-28 思科技术公司 Expansible processing to the bgp routing information in the VXLAN with EVPN control planes
CN105763444A (en) * 2016-01-27 2016-07-13 杭州华三通信技术有限公司 Route synchronization method and route synchronization device
CN107547374A (en) * 2017-06-01 2018-01-05 新华三技术有限公司 One kind polymerization reason treating method and apparatus
CN108429685A (en) * 2018-04-28 2018-08-21 电子科技大学 A kind of service function chain method for searching based on Segment routing technology
CN110830543A (en) * 2018-08-13 2020-02-21 华为技术有限公司 Communication method and communication device
CN111092801A (en) * 2018-10-23 2020-05-01 华为技术有限公司 Data transmission method and device

Also Published As

Publication number Publication date
CN114531385A (en) 2022-05-24
WO2022089027A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
US11563602B2 (en) Method and apparatus for providing a point-to-point connection over a network
US8705513B2 (en) Methods and apparatus to communicatively couple virtual private networks to virtual machines within distributive computing networks
US9356912B2 (en) Method for load-balancing IPsec traffic
CN112422393A (en) Method for transmitting message of extensible virtual local area network, computer equipment and readable medium
CN111355661B (en) VPN processing method, PE equipment and system
US20220255862A1 (en) Packet forwarding method, device, storage medium, and system
CN112187649B (en) Message forwarding method, message processing method and device
CN109150638A (en) A kind of route management method and device
US20230300070A1 (en) Packet Sending Method, Device, and System
US20230216786A1 (en) Method for forwarding service packet, method for sending sr policy, device, and system
US10608942B1 (en) Reducing routes based on network traffic utilization
CN111182022A (en) Data transmission method and device, storage medium and electronic device
CN107517129B (en) Method and device for configuring uplink interface of equipment based on OpenStack
EP3503484B1 (en) Message transmission methods and devices
CN110022263B (en) Data transmission method and related device
EP3629559B1 (en) Method for configuring forwarding table for user equipment and apparatus
CN114531385B (en) Method, device and system for sending message
WO2022188530A1 (en) Route processing method and network device
CN116016448A (en) Service network access method, device, equipment and storage medium
US11924166B2 (en) Resource-path-based, dynamic group membership support for membership groups
CN110324435B (en) Network request processing method and system
CN114531360A (en) Semantic name acquisition method, device, equipment and storage medium
CN112988320A (en) Method and device for creating virtual machine
WO2022012690A1 (en) Router advertisement method and related device
WO2022143572A1 (en) Message processing method and related device

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
GR01 Patent grant
GR01 Patent grant