Method and device for transmitting routing information
By sending BGP routing information between network devices to determine the forwarding table entries, the problem of how to allocate service traffic to network shards that meet their service needs in 5G networks is solved, and efficient service traffic forwarding is achieved.
Patent Information
- Application Number
- CN202011008166.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-23
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2040-09-23
AI Technical Summary
How to allocate different service traffic to network shards that meet their service needs for forwarding, especially in the network slicing technology in different types of devices and diverse application scenarios in 5G networks, to achieve effective forwarding of service traffic.
By sending BGP routing information including the identity of the network shard and the service identity between the network devices, the forwarding table entry is determined so as to forward the service traffic through the specific network shard.
It realizes efficient forwarding of service traffic in network shards according to business needs, meeting service needs in different application scenarios.
Smart Images

Figure CN114258109B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a method and device for transmitting routing information. Background Art
[0002] In the 5G era, mobile network services are no longer limited to mobile phones, but will be available to a wide variety of devices, including mobile phones, tablets, fixed sensors, and vehicles. Application scenarios are also diverse, encompassing mobile broadband, large-scale internet, and mission-critical internet. To meet the demands of these diverse application scenarios, network slicing technology has emerged. Network slicing essentially divides an operator's physical network into multiple virtual networks, each tailored to specific service requirements, such as latency, bandwidth, security, and reliability, to flexibly address diverse network application scenarios. However, allocating different services to the network slices that best meet their service requirements remains a pressing technical challenge. Summary of the Invention
[0003] The embodiments of the present application provide a method and apparatus for transmitting routing information, which can solve the problem of forwarding different business flows using network slices that meet their service requirements.
[0004] In a first aspect of an embodiment of the present application, a method for transmitting routing information is provided, the method comprising: a first network device receives first BGP routing information sent by a second network device, the first BGP routing information including a service identifier and an identifier of a first network slice, the first network device being located within the first network slice; the first network device determines a first forwarding table entry based on the first BGP routing information, the first forwarding table entry being used to forward the service traffic corresponding to the service identifier to the second network device through the first network slice. In this embodiment, before sending service traffic to the second network device, the first network device receives first BGP routing information sent by the second network device, the first BGP routing information including a service identifier and an identifier of the first network slice, the first network device determines a first forwarding table entry based on the first BGP routing information, the first forwarding table entry being used to forward the service traffic corresponding to the service identifier to the second network device through the first network slice, so that the first network device can forward the service traffic based on the first forwarding table entry, thereby meeting the corresponding service requirements when forwarding the service traffic.
[0005] In one possible implementation, the first network device and the second network device belong to the same network domain, and the first network device determines a first forwarding table entry based on the first BGP routing information, including: the first network device generates the first forwarding table entry based on the service identifier and the identifier of the first network slice. In this implementation, upon receiving the first BGP routing information, the first network device generates the first forwarding table entry based on the service identifier in the first BGP routing information and the identifier of the first network slice, and then indicates service traffic forwarding information corresponding to the service identifier through the first forwarding table entry.
[0006] In a possible implementation, the first network device and the second network device belong to the same network domain, and the method further includes: the first network device determines the identifier of the second network slice based on the identifier of the first network slice and the corresponding relationship, where the corresponding relationship includes the corresponding relationship between the identifier of the first network slice and the identifier of the second network slice; the first network device sends second BGP routing information to a third network device, where the second BGP routing information includes the service identifier and the identifier of the second network slice, so that the third network device determines a second forwarding table entry based on the second BGP routing information, where the second forwarding table entry is used to forward the service traffic to the first network device through the second network slice, the third network device and the second network device belong to different network domains, and the third network device is located in the second network slice. In this implementation, when a third network device exists and the third network device and the second network device belong to different network domains, there may be a correspondence between the service identifier configured by the second network device and the network slice identifier that is different from the correspondence between the service identifier configured by the third network device and the network slice identifier. In this case, before the first network device sends the first BGP routing information sent by the second network device to the third network device, the first network device can determine the second network slice based on the identifier of the first network slice and the correspondence between the identifier of the first network slice and the identifier of the second network slice, and the third network device is located in the second network slice. The first network device sends second BGP routing information to the third network device, the second BGP routing information including the service identifier and the identifier of the second network slice, so that the third network device can determine a second forwarding table entry based on the second BGP routing information, and the second forwarding table entry is used to forward service traffic to the first network device through the second network slice.
[0007] In one possible implementation, the method further includes: the first network device sending the service traffic to the second network device via the first network slice using the first forwarding table entry. After the first network device determines the first forwarding table entry based on the first BGP routing information, if the first network device has service traffic corresponding to the service identifier, the first network device may send the service traffic to the second network device via the first network slice using the first forwarding table entry.
[0008] In one possible implementation, the method further includes: after determining the first forwarding table entry, the first network device may establish a correspondence between the service identifier and the first forwarding table entry, and store the correspondence in a local forwarding table. When the first network device obtains service traffic corresponding to the service identifier, the first forwarding table entry may be determined based on the service identifier and the correspondence.
[0009] In one possible implementation, the first forwarding table entry includes an identifier of the first network slice. In this implementation, the first forwarding table entry may include the identifier of the first network slice, so that the first network device can determine the first network slice based on the identifier of the first network slice and then use the first network slice to send service traffic to the second network device.
[0010] In one possible implementation, the service identifier is a virtual private network identifier, which is used to identify the virtual private network of the network device corresponding to the destination address of the service traffic, or the service identifier is a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic. In this implementation, the service identifier can be set based on the divided virtual private networks, and different service identifiers correspond to different virtual private network identifiers, and different virtual private networks can transmit different service traffic to users. Alternatively, the service identifier is a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic, so that different prefixes can correspond to the service traffic of users in different network segments.
[0011] In one possible implementation, the identifier of the first network slice is located in an extended community attribute of the first BGP routing information. In this implementation, the identifier of the first network slice can be added by adding a new attribute to the extended community attribute in the first BGP routing information.
[0012] In a second aspect of an embodiment of the present application, a method for transmitting routing information is provided, the method comprising: a second network device obtaining first BGP routing information, the first BGP routing information including a service identifier and an identifier of a first network slice; the second network device sending the first BGP routing information to a first network device within the first network slice, so that the first network device forwards the service traffic corresponding to the service identifier to the second network device through the first network slice. In this embodiment, the second network device can obtain the first BGP routing information, the first BGP routing information including the service identifier and the identifier of the first network slice, and send the first BGP routing information to the first network device within the first network slice, so that the first network device can determine the first network slice based on the first BGP routing information, and use the first network slice to send the service traffic corresponding to the service identifier to the second network device.
[0013] In one possible implementation, the second network device obtaining the first BGP routing information includes: the second network device generating the first BGP routing information based on a correspondence between the service identifier and the identifier of the first network slice. In this implementation, the second network device may generate the first BGP routing information based on the correspondence between the service identifier and the identifier of the first network slice.
[0014] In one possible implementation, the correspondence between the service identifier and the identifier of the first network slice is configured on the second network device, or the correspondence between the service identifier and the identifier of the first network slice is obtained by the first network device based on IGP routing information. In this implementation, the correspondence between the service identifier and the identifier of the first network slice can be preconfigured on the second network device, or determined by the second network device based on IGP routing information.
[0015] In a third aspect of an embodiment of the present application, a routing information transmission device is provided, the device comprising: a receiving unit for receiving first BGP routing information sent by a second network device, the first BGP routing information comprising a service identifier and an identifier of a first network slice, the first network device being located within the first network slice; a determining unit for determining a first forwarding table entry based on the first BGP routing information, the first forwarding table entry being used to forward service traffic corresponding to the service identifier to the second network device through the first network slice.
[0016] In a possible implementation, the network device where the apparatus is located and the second network device belong to the same network domain, and the determining unit is specifically configured to generate a first forwarding table entry according to the service identifier and an identifier of the first network slice.
[0017] In one possible implementation, the first network device and the second network device belong to the same network domain, and the apparatus further includes: a sending unit; the determining unit is further configured to determine the identifier of the second network slice based on the identifier of the first network slice and the corresponding relationship, wherein the corresponding relationship includes the corresponding relationship between the identifier of the first network slice and the identifier of the second network slice; the sending unit is configured to send second BGP routing information to a third network device, wherein the second BGP routing information includes the service identifier and the identifier of the second network slice, so that the third network device determines a second forwarding table entry based on the second BGP routing information, wherein the second forwarding table entry is used to forward the service traffic to the apparatus through the second network slice, the third network device and the second network device belong to different network domains, and the third network device is located within the second network slice.
[0018] In a possible implementation, the apparatus further includes: a sending unit; the sending unit is configured to send the service traffic to the second network device through the first network slice by using the first forwarding entry.
[0019] In a possible implementation, the first forwarding table entry includes an identifier of the first network slice.
[0020] In one possible implementation, the service identifier is a virtual private network identifier, which is used to identify the virtual private network of the network device corresponding to the destination address of the service traffic, or the service identifier is a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic.
[0021] In a possible implementation, the identifier of the first network slice is located in an extended community attribute of the first BGP routing information.
[0022] In a fourth aspect of an embodiment of the present application, a routing information transmission device is provided, the device comprising: an acquisition unit for acquiring first BGP routing information, the first BGP routing information comprising a service identifier and an identifier of a first network slice; a sending unit for sending the first BGP routing information to a first network device within the first network slice, so that the first network device forwards the service traffic corresponding to the service identifier to the network device where the device is located through the first network slice.
[0023] In a possible implementation, the acquiring unit is specifically configured to generate the first BGP routing information according to a correspondence between the service identifier and the identifier of the first network slice.
[0024] In a possible implementation, the correspondence between the service identifier and the identifier of the first network slice is configured on the second network device, or the correspondence between the service identifier and the identifier of the first network slice is obtained by the first network device according to IGP routing information.
[0025] In a fifth aspect of an embodiment of the present application, a communication device is provided, comprising: a processor and a memory; the memory is used to store instructions or computer programs; the processor is used to execute the instructions or computer programs in the memory, so that the communication device executes the method described in the first aspect or the second aspect.
[0026] In a sixth aspect of the embodiments of the present application, a computer-readable storage medium is provided, comprising instructions or a computer program, which, when executed on a computer, enables the computer to execute the method described in the first or second aspect above.
[0027] In a seventh aspect of an embodiment of the present application, a network system is provided, comprising a first network device and a second network device, wherein the first network device comprises the routing information transmission apparatus described in the third aspect, the second network device comprises the routing information transmission apparatus described in the fourth aspect, or the network system comprises the communication device described in the fifth aspect.
[0028] According to the technical solution of the embodiment of the present application, before forwarding a service traffic message, the first network device receives first BGP routing information sent by the second network device to determine a first forwarding table entry based on the service identifier and the identifier of the first network slice in the first BGP routing information. The first forwarding table entry is used to indicate that the service traffic corresponding to the service identifier is forwarded to the second network device via the first network slice. When the first network device receives a service traffic message corresponding to the service identifier, it determines the first network slice based on the first forwarding table entry, and then sends the service traffic to the second network device via the first network slice. That is, the network devices determine the forwarding table entry by sending BGP routing information including the network slice identifier and the service identifier, so as to use the forwarding table entry to determine the network slice through which the service traffic is forwarded, thereby meeting the service forwarding requirements. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments recorded in this application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0030] Figure 1aA schematic diagram of an application scenario provided in an embodiment of the present application;
[0031] Figure 1b A schematic diagram of network slicing provided in an embodiment of the present application;
[0032] Figure 1c A schematic diagram of another application scenario provided by an embodiment of the present application;
[0033] Figure 1d A schematic diagram of another application scenario provided in an embodiment of the present application;
[0034] Figure 1e A schematic diagram of another application scenario provided in an embodiment of the present application;
[0035] Figure 2 A flow chart of a routing information transmission method provided in an embodiment of the present application;
[0036] Figure 3a A schematic diagram of a message structure provided in an embodiment of the present application;
[0037] Figure 3b A schematic diagram of a newly added attribute structure provided in an embodiment of the present application;
[0038] Figure 4 A structural diagram of a routing information transmission device provided in an embodiment of the present application;
[0039] Figure 5 A structural diagram of another routing information transmission device provided in an embodiment of the present application;
[0040] Figure 6 A schematic diagram of a network device structure provided in an embodiment of the present application;
[0041] Figure 7 A schematic diagram of another network device structure provided in an embodiment of the present application. DETAILED DESCRIPTION
[0042] In order to enable people skilled in the art to better understand the solutions in the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments.
[0043] To facilitate understanding, the network elements and terms provided in the embodiments of the present application will be explained below.
[0044] See also Figure 1aThe network system architecture diagram is described as follows: the diagram includes one boundary exit device and two boundary entry devices, namely boundary exit device O, boundary entry device P and boundary entry device Q. Network slicing refers to dividing the basic network resources between adjacent network devices according to user needs and allocating them to users for use. Among them, user needs include latency, bandwidth, etc. Figure 1b As shown in a network slicing diagram, the total bandwidth resources reserved for the boundary exit device O is 40G, which can be divided into 4 network slices, wherein the reserved bandwidth of network slice sliceID1 is 5G, the reserved bandwidth of network slice sliceID2 is 5G, the reserved bandwidth of network slice sliceID3 is 10G, and the reserved bandwidth of network slice sliceID4 is 20G. In other words, there are 4 network slices in the boundary exit device, and different network slices can be used to transmit business traffic (data streams) with different bandwidth requirements. Specifically, network slicing can include soft slicing and hard slicing. Soft slicing refers to partial isolation between different users, but the degree of isolation is not thorough. Hard slicing refers to strong isolation between different users. From the perspective of service experience, the user can use as much network resources as allocated to him.
[0045] A boundary exit device refers to a device on the boundary of a network slice. The service traffic transmitted within the network slice leaves the network slice at the boundary exit device and continues to be forwarded to other network domains. The boundary exit device can send border gateway protocol (BGP) routing information including network slice information to the boundary entry device. The BGP routing information may include a service identifier and a network slice identifier. For example, the BGP routing information sent by the boundary exit device O to the boundary entry device P includes a service identifier 2 and a network slice identifier sliceID1, indicating that the boundary entry device P can use the network slice corresponding to sliceID1 to send the service traffic corresponding to service identifier 1 to the boundary exit device. Among them, the boundary exit device can send BGP routing information to the corresponding boundary entry device based on the information of the network slice it divides, so as to realize unified planning of service traffic transmission through the BGP routing information, without the need to configure transmission information separately, thereby reducing the amount of configuration.
[0046] A border ingress device is a device at the edge of a network slice. Service traffic enters a network slice for transmission at the border ingress device. The border ingress device learns the network slice information corresponding to the border egress device through BGP routing information. Based on the received BGP routing information, it determines a forwarding table entry and then forwards the service traffic corresponding to the service identifier sent by the source network device to the border egress device via the network slice indicated by the forwarding table entry.
[0047] See also Figure 1c The application scenario shown in the figure includes two network devices, namely network device router1 and network device router2, where router1 is the border entry device and router2 is the border exit device. Router1 and router2 can each be divided into three virtual local area networks (VLANs), namely vlan1, vlan12 and vlan22. Different VLANs can correspond to different virtual private network (VPN) instances, namely virtual routing forwarding (VRF), to correspond to network slicing through VRF. For example Figure 1c As shown in the figure, router2 corresponds to 3 network slices, vlan1 corresponds to VRF1, VRF1 corresponds to network slice 1; vlan12 corresponds to VRF2, VRF2 corresponds to network slice 2; vlan22 corresponds to VRF3, VRF3 corresponds to network slice 3.
[0048] Different VLANs can provide services to users in different Internet Protocol (IP) segments through different logical interfaces. Figure 1c In the example, VLAN 1 of router 1 provides services to users on the IP1 network segment through a logical interface; VLAN 12 provides services to users on the IP2 network segment through a logical interface; and VLAN 22 provides services to users on the IP2 network segment through a logical interface.
[0049] Figure 1d The forwarding path of business traffic involves one network domain as an example. Figure 1d The network domain may include multiple network devices. A network device refers to a device that provides routing and forwarding functions in a network system, such as a router, a switch, or a label switching router (LSR). Figure 1d The network device A and the network device B are included in the example. The network device A can be a border entry device, and the network device B can be a border exit device. For example, the network device A can be Figure 1c In router1, network device B can be Figure 1crouter2 in the figure. Network device B has four network slices, namely network slice 1, network slice 2, network slice 3, and network slice 4. The four network slices can correspond to different bandwidth resources to transmit service traffic with different bandwidth requirements. For example, network device B is configured to configure network slice 1 to transmit the service traffic corresponding to service identifier 1, network slice 2 to transmit the service traffic corresponding to service identifier 2, network slice 3 to transmit the service traffic corresponding to service identifier 4, and network slice 4 to transmit the service traffic corresponding to service identifier 3. Network device B sends BGP routing information including the service identifier and network slice identifier to network device A to instruct network device A to use the network slice when sending the service traffic corresponding to the service identifier to network device B.
[0050] It should be noted that there may be one or more intermediate forwarding devices between the boundary entry device (such as network device A) and the boundary exit device (such as network device B). Among them, network slicing can be performed between the boundary exit device and the intermediate forwarding device, and network slicing can be performed between the intermediate forwarding device and the boundary entry device. When the boundary exit device, the boundary entry device and the intermediate forwarding device belong to the same network domain, for example, they are located in the same autonomous system (AS) domain, the network slicing between the boundary exit device and the intermediate forwarding device can be the same as the network slicing between the intermediate forwarding device and the boundary entry device. For example, the number of divided network slices and the bandwidth resources corresponding to each network slice can be the same.
[0051] See also Figure 1e The application scenario embodiment shown is Figure 1d The following example illustrates a forwarding path for service traffic involving at least two network domains. Figure 1e and Figure 1d In comparison, network device A can be connected not only to network domain 1, but also to network domain 2. In this case, network device B is the boundary exit device in network domain 1, and network device A is the boundary entry device in network domain 1; network device A is the boundary exit device in network domain 2, and network device C is the boundary entry device of network domain 2. Among them, there may be only one network device A as a relay device. In this case, network device A belongs to two network domains at the same time, or there are at least two network devices A, for example, network device A1 and network device A2, wherein network device A1 belongs to network domain 1, and network device A2 belongs to network domain 2. Among them, the network slicing division between network device B and network device A may be different from the network slicing division between network device A and network device C. Different division situations may include different numbers of network slicing divided by the two network domains, or different bandwidths corresponding to the divided network slicing. For example Figure 1e As shown, four network slices are divided between network device B and network device A: slice 1, slice 2, slice 3, and slice 4. Three network slices are divided between network device A and network device C: slice 5, slice 6, and slice 7. The network slice division corresponding to the boundary egress devices belonging to different network domains can be planned according to actual needs and is not limited in this embodiment.
[0052] To facilitate understanding of the routing information transmission method provided in the embodiment of the present application, the following Figure 1d and Figure 1e Taking the network system structure shown in the figure as an example, the routing transmission process is explained. Figure 2 , which is a flow chart of a routing information transmission method provided by an embodiment of the present application, such as Figure 2 As shown, the method includes:
[0053] S201: The second network device obtains first BGP routing information, where the first BGP routing information includes a service identifier and an identifier of a first network slice.
[0054] In this embodiment, the second network device is a network device that obtains BGP routing information, such as Figure 1d or Figure 1e Network device B in the Figure 1e The network device A in the embodiment first obtains the first BGP routing information, which includes a service identifier and an identifier of the first network slice. The first BGP routing information is used to indicate that the service traffic corresponding to the service identifier will use the first network slice for forwarding. The service identifier can indicate that there are service traffic with different service level agreements (SLA) requirements, and the SLA requirements can be bandwidth, latency or jitter rate, etc. The correspondence between the service identifier and the service traffic can be determined based on the service type, for example, service types such as video, audio or text correspond to different service identifiers; or it can also be determined based on the user, such as different user groups correspond to different service identifiers. In one case, the service identifier can be a virtual private network (VPN) identifier, that is, different VPNs can transmit different service traffic, and the virtual private network identifier is used to identify the virtual private network of the network device corresponding to the destination address of the service traffic. For example, Figure 1c As shown, router2 has three VPN instances: vlan1 corresponds to VPN1, vlan12 corresponds to VPN2, and vlan22 corresponds to VPN3. The service identifier can be any of the VPN instances. In another case, the service identifier can be a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic.
[0055] In some specific embodiments, the second network device may obtain the first BGP routing information by obtaining a correspondence between a service identifier and an identifier of the first network slice, and generating the first BGP routing information based on the correspondence between the service identifier and the identifier of the first network slice. The second network device may obtain the correspondence between the service identifier and the identifier of the first network slice in the following ways: First, the correspondence between the service identifier and the identifier of the first network slice may be directly configured on the second network device, and the second network device reads the correspondence from a local configuration. Second, the second network device may obtain the correspondence between the service identifier and the identifier of the first network slice based on a local configuration policy, where the configuration policy includes the correspondence between the service identifier and the identifier of the first network slice. The configuration policy may be manually configured on the second network device based on the service traffic sent by a user, or may be obtained by the second network device from an external device such as a controller. The configuration policy may be based on VPN-based network slicing, for example, VPN1 corresponds to network slice 1, VPN2 corresponds to network slice 3, and VPN3 corresponds to network slice 4. Alternatively, the configuration policy plans network slices based on IP network segments, for example, network segment 1 corresponds to network slice 4, and other network segments correspond to network slice 3, etc. Alternatively, the second network device obtains the correspondence between the service identifier and the identifier of the first network device based on (IGP) routing information, where the IGP routing information includes the correspondence between the service identifier and the identifier of the first network slice.
[0056] Among them, BGP routing information is carried in BGP messages. BGP messages may include IP headers, transmission control protocol (TCP) headers, and update UPDATE messages. The format of BGP messages is as follows: Figure 3a As shown, the UPDATE message may include information such as a prefix and an extended community attribute. The identifier of the first network fragment may be located in the extended community attribute of the first BGP routing information, and the specific form of expression may be defined by the type-length value (TLV) in the extended community attribute. The Type field is used to indicate the extended community attribute type, the Length field is used to indicate the number of bytes included in the "Vlaue" field, such as 8 bytes, and the Vlaue field is used to indicate the identifier of the first network fragment, such as Figure 3b shown.
[0057] S202: The second network device sends the first BGP routing information to the first network device.
[0058] After obtaining the first BGP routing information, the second network device can forward it to the next-hop network device located in the first network slice, that is, the first network device. Figure 1d As shown, the second network device is network device B, and the first network device may be border entry device A. When there are multiple network domains in the network system, such as Figure 1e As shown, when the second network device is network device B, the first network device is network device A; when the second network device is network device A, the first network device is network device C.
[0059] S203: The first network device determines a first forwarding entry according to the first BGP routing information.
[0060] When the first network device receives the first BGP routing information sent by the second network device, it can determine a first forwarding table entry based on the first BGP routing information. The first forwarding table entry is used to instruct the second network device to forward service traffic corresponding to the service identifier via the first network slice. The first forwarding table entry stores the identifier of the first network slice. The first network device is located in the first network slice, that is, the first network device can recognize the identifier of the first network slice.
[0061] Specifically, when the first network device and the second network device belong to the same network domain, after receiving the first BGP routing information, the first network device generates a first forwarding table entry based on the service identifier in the first BGP routing information and the identifier of the first network shard, that is, establishes a mapping relationship between the service identifier and the identifier of the first network shard. After the first network device determines the first forwarding table entry based on the first BGP routing information, it can establish a corresponding relationship between the service identifier and the first forwarding table entry, and store the corresponding relationship in the forwarding table of the first network device, so that the first network device can implement subsequent forwarding of service traffic based on the forwarding table.
[0062] After the first network device determines the first forwarding table entry, it may perform different processing in different application scenarios. Specifically, the processing may include the following operations:
[0063] In one scenario, the first network device no longer forwards the first BGP routing information after determining the first forwarding entry based on the first BGP routing information. For example, when the first network device has no other neighboring network devices, or when the first network device is a device connected to the user equipment.
[0064] In another scenario, when the first network device has other neighboring network devices (such as a third network device) in addition to the second network device, in order to ensure that the third network device can identify the network slice used when forwarding business traffic, the first network device sends the first BGP routing information to the third network device, so that the third network device can determine the corresponding forwarding table item based on the first BGP routing information. In this scenario, when the first network device, the third network device, and the second network device belong to the same network domain, the business traffic corresponding to the same business identifier in the network domain can be forwarded using the same network slice. At this time, the first network device can directly forward the first BGP routing information to the third network device. Among them, regarding the specific implementation of the third network device determining the first forwarding table item based on the first BGP routing information, please refer to the detailed description of the first network device determining the first forwarding table item based on the first BGP routing information.
[0065] It should be noted that, in order to reflect the continuity of the transmission of routing information (such as the first BGP routing information mentioned above), in the embodiment of the present application, the first BGP routing information sent by the second network device to the first network device and the first BGP routing information sent by the first network device to the third network device are both referred to as first BGP routing information. However, it is understandable that the first BGP routing information sent by the second network device to the first network device and the first BGP routing information sent by the first network device to the third network device are different in actual application scenarios. For example, information such as the time to live (TTL) and the next-hop network device may be different. That is, when the first network device forwards the first BGP routing information sent by the second network device to the third network device, it may actually be the updated first BGP routing information with some necessary information modified.
[0066] When the third network device and the second network device belong to different network domains, there may be a situation where different network domains configure different network slices for the same business traffic. To ensure that the third network device can establish a correct forwarding table entry based on the received BGP routing information, the first network device first determines the identifier of the second network slice based on the identifier of the first network slice in the first BGP routing information and the corresponding relationship when sending BGP routing information to the third network device. The identifier of the first network slice is applied to the network domain to which the second network device belongs, and the identifier of the second network slice is applied to the network domain to which the third network device belongs. The corresponding relationship includes the corresponding relationship between the identifier of the first network slice and the identifier of the second network slice. The corresponding relationship can be manually configured by the user on the first network device according to actual application needs, or it can be obtained by the first network device from the controller. The first network device uses the identifier of the second network slice to update the identifier of the first network slice in the first BGP routing information, obtain the second BGP routing information, and send the second BGP routing information to the third network device. When the third network device receives the second BGP routing information, it can determine the second forwarding table entry based on the service identifier in the second BGP routing information and the identifier of the second network slice. The second forwarding table entry is used to indicate that the service traffic corresponding to the service identifier is forwarded to the first network device through the second network slice. The second forwarding table entry includes the identifier of the second network slice. The second network device is located in the second network slice, that is, the second network device can recognize the identifier of the second network slice. For example Figure 1e As shown, network device B belongs to network domain 1, and service traffic corresponding to a service identifier defined in network domain 1 is forwarded through network slice 1. Network device C belongs to network domain 2, and service traffic corresponding to a service identifier defined in network domain 2 is forwarded through network slice 5. Upon receiving first BGP routing information sent by network device B, network device A can determine network slice 5 based on network slice 1 in the first BGP routing information and the correspondence between network slice 1 and network slice 5 in network domain 2, and use network slice 5 to update network slice 1 in the first BGP routing information, thereby obtaining second BGP routing information. Network device A then sends this second BGP routing information to network device C. For the specific implementation of the third network device determining the second forwarding table entry based on the second BGP routing information, refer to the detailed description of the first network device determining the first forwarding table entry based on the first BGP routing information.
[0067] Furthermore, when the third network device and the second network device belong to different network domains, different network domains may set different service identifiers for the same service traffic. To ensure that the third network device can identify the service identifier in the BGP routing information, the service identifier used in another network domain can be obtained based on the service identifier carried in the first BGP routing information and used in the current network domain. The service identifier used in the other network domain can be referred to as an updated service identifier. The first network device can replace the service identifier in the second BGP routing information with the updated service identifier, and then send the second BGP routing information carrying the updated service identifier and the identifier of the second network slice to the third network device. This allows the third network device to identify the updated service identifier and the identifier of the second network slice in the second BGP routing information and determine a second forwarding table entry. The second forwarding table entry includes the identifier of the second network slice. The network domain can be an AS domain, an administrative domain, etc. The administrative domain can, for example, include multiple AS domains, which are uniformly managed by a controller. For the specific implementation of the third network device determining the second forwarding table entry based on the second BGP routing information, refer to the detailed description of the first network device determining the first forwarding table entry based on the first BGP routing information.
[0068] The message format corresponding to the second BGP routing information can be found in Figure 3a In the BGP message shown, the identifier of the second network fragment can be located in the extended community attribute of the second BGP routing information. The specific form of expression can be defined by the type-length value (TLV) in the extended community attribute. Among them, the Type field is used to indicate the extended community attribute type, the Length field is used to indicate the number of bytes included in the "Vlaue" field, such as 8 bytes, and the Vlaue field is used to indicate the identifier of the second network fragment, such as Figure 3b shown.
[0069] The above scenario is merely a specific example, and it is understandable that the first network device may also perform specific and reasonable operations in combination with other practical application scenarios. For example, although the third network device and the second network device belong to different network domains, if the network devices in different network domains have pre-determined the same service identifier and / or network slice identifier through a mechanism such as negotiation, the first network device may not update the service identifier and / or network slice identifier when performing cross-domain forwarding.
[0070] S204: The first network device sends the service traffic corresponding to the service identifier to the second network device through the first network slice using the first forwarding entry.
[0071] In this embodiment, when the first network device obtains the service traffic corresponding to the service identifier, it can determine the first forwarding table entry corresponding to the service identifier based on the service identifier and the corresponding relationship in the stored forwarding table. The first network device uses the first network slice included in the first forwarding table entry to forward the service traffic to the second network device.
[0072] Among them, the first network device can obtain business traffic in the following ways. One is that the first network device acts as a boundary entry device, which can receive business traffic sent by the source network device. Another way is that when the first network device is an intermediate forwarding device, it can receive business traffic sent by the previous hop network device (such as the third network device). In this case, the previous hop network device (the third network device) can send business traffic to the first network device according to the network slice indicated by its corresponding forwarding table entry. When the third network device and the second network device belong to the same network domain, the third network device uses the first network slice to send business traffic to the first network device, and the first network device uses the first network slice to send business traffic to the second network slice.
[0073] When the third network device and the second network device belong to different network domains, the third network device uses the second network slice to send service traffic to the first network device, and the first network device uses the first network slice to send service traffic to the second network device. In this case, when the third network device obtains the service traffic, it can determine the second forwarding table entry based on the service identifier corresponding to the service traffic and the corresponding relationship in the stored forwarding table, and use the second network slice in the second forwarding table entry to send service traffic to the first network device. When the first network device receives the service traffic sent by the third network device, the first network device can determine the first forwarding table entry based on the service identifier corresponding to the service traffic and the corresponding relationship in the stored forwarding table, and use the first network slice in the first forwarding table entry to send service traffic to the second network device.
[0074] In actual applications, there may be multiple border egress devices. In this case, each border egress device can send its own BGP routing information to the border ingress device. The border ingress device can select the destination border egress device based on its configured policy or priority, and determine the forwarding entry based on the BGP routing information sent by the destination border egress device. When the border ingress device receives service traffic, it forwards the traffic to the destination border egress device based on the network slice corresponding to the forwarding entry.
[0075] Based on the above method embodiment, the embodiment of the present application further provides a routing information transmission device, which will be described below with reference to the accompanying drawings.
[0076] See also Figure 4, which is a schematic diagram of the structure of a routing information transmission device provided in an embodiment of the present application. The device 400 can be applied to a first network device to execute Figure 2 In the illustrated embodiment, the function of the first network device, the apparatus 400 may include: a receiving unit 401 and a determining unit 402 .
[0077] The receiving unit 401 is configured to receive first BGP routing information sent by a second network device, wherein the first BGP routing information includes a service identifier and an identifier of a first network slice, and the first network device is located in the first network slice. Figure 2 Detailed description of S202 in the illustrated embodiment.
[0078] The determining unit 402 is configured to determine a first forwarding table entry according to the first BGP routing information, wherein the first forwarding table entry is used to forward the service flow corresponding to the service identifier to the second network device through the first network slice. For a specific implementation of the determining unit 402, please refer to Figure 2 Detailed description of S203 in the illustrated embodiment.
[0079] In a specific embodiment, the network device where the apparatus is located and the second network device belong to the same network domain, and the determining unit 402 is specifically configured to generate a first forwarding table entry according to the service identifier and the identifier of the first network slice. Figure 2 Detailed description of S203 in the illustrated embodiment.
[0080] In a specific embodiment, the first network device and the second network device are in the same network domain, and the apparatus further includes: a sending unit ( Figure 4 not shown);
[0081] The determining unit 402 is further configured to determine an identifier of the second network slice according to the identifier of the first network slice and a corresponding relationship, wherein the corresponding relationship includes a corresponding relationship between the identifier of the first network slice and the identifier of the second network slice;
[0082] The sending unit is used to send second BGP routing information to the third network device, where the second BGP routing information includes the service identifier and the identifier of the second network slice, so that the third network device determines a second forwarding table entry based on the second BGP routing information, and the second forwarding table entry is used to forward the service traffic to the device through the second network slice. The third network device and the second network device belong to different network domains, and the third network device is located in the second network slice.
[0083] The specific implementation of the determination unit 402 determining the identifier of the second network slice and the sending unit sending the second BGP routing information can be found in Figure 2 Relevant description of S203 in the illustrated embodiment.
[0084] In a specific embodiment, the device further includes: a sending unit ( Figure 4 not shown);
[0085] The sending unit is configured to send the service traffic to the second network device via the first network slice using the first forwarding entry. Figure 2 Detailed description of S204 in the illustrated embodiment.
[0086] In a specific implementation, the first forwarding table entry includes an identifier of the first network slice.
[0087] In a specific embodiment, the service identifier is a virtual private network identifier, which is used to identify the virtual private network of the network device corresponding to the destination address of the service traffic, or the service identifier is a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic. Figure 2 Relevant description of S201 in the example shown.
[0088] In a specific implementation, the identifier of the first network slice is located in an extended community attribute of the first BGP routing information.
[0089] For details on the specific functions and implementations of the transmission device 400, please refer to Figure 2 The corresponding description of the first network device in the illustrated embodiment will not be repeated here.
[0090] See also Figure 5 , which is a schematic diagram of the structure of another routing information transmission device provided in an embodiment of the present application, the device 500 can be applied to a second network device to perform Figure 2 The device includes a second network device in the network, and includes an acquiring unit 501 and a sending unit 502.
[0091] The acquisition unit 501 is configured to acquire first BGP routing information, wherein the first BGP routing information includes a service identifier and an identifier of a first network slice. Figure 2 Relevant description of S201 in the illustrated embodiment.
[0092] The sending unit 502 is configured to send the first BGP routing information to the first network device in the first network slice, so that the first network device forwards the service traffic corresponding to the service identifier to the network device where the device is located through the first network slice. Figure 2 Relevant description of S202 in the illustrated embodiment.
[0093] In a possible implementation, the acquisition unit 501 is specifically configured to generate the first BGP routing information according to the correspondence between the service identifier and the identifier of the first network slice. Figure 2 Relevant description of S202 in the illustrated embodiment.
[0094] In a possible implementation, the correspondence between the service identifier and the identifier of the first network slice is configured on the second network device, or the correspondence between the service identifier and the identifier of the first network slice is obtained by the first network device according to IGP routing information. Figure 2 Relevant description of S201 in the illustrated embodiment.
[0095] For details on the functions and implementations of the transmission device 500, please refer to Figure 2 The corresponding description about the second network device in the illustrated embodiment will not be repeated here.
[0096] Figure 6 A schematic diagram of the structure of a network device provided in an embodiment of the present application, the network device may be Figure 2 In the embodiment shown, the first network device, the second network device or the third network device may also be Figure 4 The routing transmission device 400 and Figure 5 The routing transmission apparatus 500 in the illustrated embodiment is implemented by a device.
[0097] See also Figure 6 As shown, the network device 600 includes: a processor 610, a communication interface 620 and a memory 630. The number of processors 610 in the packet forwarding device 600 can be one or more. Figure 6 In the embodiment of the present application, the processor 610, the communication interface 620 and the memory 630 may be connected via a bus system or other means, wherein: Figure 6 The connection via bus system 640 is taken as an example.
[0098] Processor 610 may be a CPU, an NP, or a combination of a CPU and an NP. Processor 610 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0099] Communication interface 620 is used to receive and send BGP routing information or service traffic. Specifically, communication interface 620 may include a receiving interface and a sending interface. The receiving interface may be used to receive BGP routing information or service traffic, and the sending interface may be used to send BGP routing information or service traffic. There may be one or more communication interfaces 620.
[0100] The memory 630 may include volatile memory, such as random-access memory (RAM); non-volatile memory, such as flash memory, a hard disk drive (HDD), or a solid-state drive (SSD); or a combination of the aforementioned types of memory. The memory 630 may, for example, store the aforementioned correspondence between the service identifier and the forwarding table entry.
[0101] Optionally, the memory 630 stores an operating system and programs, executable modules or data structures, or subsets thereof, or extended sets thereof, wherein the programs may include various operating instructions for implementing various operations. The operating system may include various system programs for implementing various basic services and processing hardware-based tasks. The processor 610 may read the programs in the memory 630 to implement the routing information transmission method provided in the embodiment of the present application.
[0102] The memory 630 may be a storage device in the network device 600 , or a storage device independent of the network device 600 .
[0103] The bus system 640 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus system 640 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.
[0104] Figure 7 It is a structural diagram of another network device 700 provided in an embodiment of the present application. The network device 700 can be configured as the first network device, the second network device or the third network device in the aforementioned embodiments, or a device implementation of the routing transmission device 400 or the routing transmission device 500 in the aforementioned embodiments.
[0105] The network device 700 includes a main control board 710 and an interface board 730 .
[0106] Main control board 710, also known as the main processing unit (MPU) or route processor card, controls and manages various components in network device 700, including routing calculations, device management, device maintenance, and protocol processing. Main control board 710 includes a central processing unit (CPU) 711 and memory 712.
[0107] Interface board 730 is also known as a line processing unit (LPU), line card, or service board. It provides various service interfaces and implements data packet forwarding. Service interfaces include, but are not limited to, Ethernet interfaces and POS (Packet over SONET / SDH) interfaces. Ethernet interfaces, for example, are Flexible Ethernet Clients (FlexE Clients). Interface board 730 includes a central processing unit (CPU) 731, a network processor (NPU) 732, a forwarding table memory 734, and a physical interface card (PIC) 733.
[0108] The central processing unit 731 on the interface board 730 is used to control and manage the interface board 730 and communicate with the central processing unit 711 on the main control board 710 .
[0109] The network processor 732 is used to implement packet forwarding processing. The network processor 732 can be in the form of a forwarding chip. Specifically, the processing of uplink packets includes: processing of the packet input interface, forwarding table lookup; processing of downlink packets includes: forwarding table lookup, etc.
[0110] Physical interface card 733 implements physical layer interconnection. Raw traffic enters interface board 730 through this card, and processed packets are sent from this physical interface card 733. Physical interface card 733 includes at least one physical interface, also known as a physical port. Physical interface card 733 corresponds to FlexE physical interface 204 in system architecture 200. Physical interface card 733, also known as a daughter card, can be installed on interface board 730. It converts optical and electrical signals into packets, performs a validity check on these packets, and then forwards them to network processor 732 for processing. In some embodiments, the central processing unit 731 of interface board 703 can also perform the functions of network processor 732, such as implementing software forwarding based on a general-purpose CPU. This eliminates the need for network processor 732 in physical interface card 733.
[0111] Optionally, the network device 700 includes multiple interface boards. For example, the network device 700 further includes an interface board 740 . The interface board 740 includes a central processing unit 741 , a network processor 742 , a forwarding table memory 744 , and a physical interface card 743 .
[0112] Optionally, the network device 700 further includes a switching fabric board 720. The switching fabric board 720 may also be referred to as a switch fabric unit (SFU). If the network device has multiple interface boards 730, the switching fabric board 720 is used to exchange data between the interface boards. For example, the interface board 730 and the interface board 740 can communicate via the switching fabric board 720.
[0113] The main control board 710 and the interface board 730 are coupled. For example, the main control board 710, the interface board 730, the interface board 740, and the switching network board 720 are connected to the system backplane via a system bus to achieve intercommunication. In one possible implementation, an inter-process communication (IPC) channel is established between the main control board 710 and the interface board 730, and communication between the main control board 710 and the interface board 730 is performed via the IPC channel.
[0114] Logically, network device 700 includes a control plane and a forwarding plane. The control plane includes a main control board 710 and a central processing unit 731. The forwarding plane includes various components that perform forwarding, such as a forwarding table entry memory 734, a physical interface card 733, and a network processor 732. The control plane performs functions such as routing, generating forwarding tables, processing signaling and protocol messages, and configuring and maintaining device status. The control plane sends the generated forwarding tables to the forwarding plane. On the forwarding plane, the network processor 732 forwards messages received by the physical interface card 733 based on the forwarding tables sent by the control plane. The forwarding tables sent by the control plane can be stored in the forwarding table entry memory 734. In some embodiments, the control plane and the forwarding plane can be completely separate and not located on the same device.
[0115] If the network device 700 is configured as a first network device, the central processor 711 may obtain first BGP routing information, determine a forwarding table entry based on the first BGP routing information, and the network processor 732 may trigger the physical interface card 733 to send service traffic to the second network device based on the determined forwarding table entry.
[0116] If the network device 700 is configured as the second network device, the central processor 711 may obtain the first BGP routing information. The network processor 732 may trigger the physical interface card 733 to send the first BGP routing information to the first network device.
[0117] It should be understood that the receiving unit 401 and the sending unit in the routing transmission device 400 can be equivalent to the physical interface card 733 or the physical interface card 743 in the network device 700; the determining unit 402 in the routing transmission device 400 can be equivalent to the central processor 711 or the central processor 731 in the network device 700.
[0118] It should be understood that the operations on the interface board 740 in the embodiment of the present application are consistent with the operations on the interface board 730. For the sake of brevity, detailed description is omitted. It should be understood that the network device 700 in this embodiment may correspond to the first network device or the second network device in each of the above-mentioned method embodiments. The main control board 710, interface board 730, and / or interface board 740 in the network device 700 may implement the functions and / or various steps of the first network device or the second network device in each of the above-mentioned method embodiments. For the sake of brevity, detailed description is omitted here.
[0119] It should be understood that there may be one or more main control boards, and when there are multiple boards, they may include a primary main control board and a backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There may also be one or more physical interface cards on the interface board. There may be no switching network board, or there may be one or more switching network boards. When there are multiple switching network boards, they can jointly achieve load sharing and redundant backup. In a centralized forwarding architecture, the network device may not need a switching network board, and the interface board is responsible for processing the business data of the entire system. In a distributed forwarding architecture, the network device can have at least one switching network board, which realizes data exchange between multiple interface boards through the switching network board, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network devices with a distributed architecture are greater than those of devices with a centralized architecture. Alternatively, a network device can consist of a single card, without a switching fabric board (SFB), integrating the functions of the interface board and the main control board. In this case, the CPUs on the interface board and the main control board can be combined into a single CPU, performing the combined functions of the two. This type of device has lower data exchange and processing capabilities (for example, low-end network devices such as switches or routers). The specific architecture used depends on the specific network deployment scenario.
[0120] In some possible embodiments, the above-mentioned first network device or second network device can be implemented as a virtualized device. For example, the virtualized device can be a virtual machine (English: Virtual Machine, VM) running a program for sending message functions, and the virtual machine is deployed on a hardware device (for example, a physical server). A virtual machine refers to a complete computer system with complete hardware system functions simulated by software and running in a completely isolated environment. The virtual machine can be configured as the first network device or the second network device. For example, the first network device or the second network device can be implemented based on a general physical server in combination with Network Function Virtualization (NFV) technology. The first network device or the second network device is a virtual host, a virtual router or a virtual switch. Those skilled in the art can virtualize the first network device or the second network device with the above-mentioned functions on a general physical server in combination with NFV technology by reading this application, and will not be repeated here.
[0121] It should be understood that the network devices in the various product forms mentioned above respectively have any functions of the first network device or the second network device in the above method embodiments, which will not be described in detail here.
[0122] The embodiment of the present application also provides a chip, including a processor and an interface circuit, the interface circuit is used to receive instructions and transmit them to the processor; the processor, for example, can be Figure 4A specific implementation of the routing transmission device 400 shown can be used to perform the above-mentioned message transmission method. The processor is coupled to a memory, and the memory is used to store programs or instructions. When the program or instructions are executed by the processor, the chip system implements the method in any of the above-mentioned method embodiments.
[0123] Optionally, there may be one or more processors in the chip system. The processor may be implemented in hardware or software. When implemented in hardware, the processor may be a logic circuit, an integrated circuit, etc. When implemented in software, the processor may be a general-purpose processor implemented by reading software code stored in a memory.
[0124] Optionally, the memory in the chip system may be one or more memories. The memory may be integrated with the processor or may be provided separately from the processor, which is not limited in this application. For example, the memory may be a non-transient processor, such as a read-only memory (ROM), which may be integrated with the processor on the same chip or provided on different chips. This application does not specifically limit the type of memory or the configuration of the memory and the processor.
[0125] Exemplarily, the chip system can be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a microcontroller unit (MCU), a programmable logic device (PLD) or other integrated chips.
[0126] An embodiment of the present application further provides a computer-readable storage medium, including instructions or a computer program, which, when executed on a computer, enables the computer to execute the routing information transmission method provided in the above embodiment.
[0127] The embodiments of the present application further provide a computer program product comprising instructions or a computer program, which, when executed on a computer, enables the computer to execute the routing information transmission method provided in the above embodiments.
[0128] The embodiment of the present application further provides a network system, which includes a first network device and a second network device, wherein the first network device may include a routing transmission device 400, and the second network device may include a routing transmission device 500.
[0129] In a specific embodiment, the network system may further include a third network device, wherein the third network device and the second network device may belong to different network domains. For the functions performed by the third network device, please refer to Figure 2 The specific implementation of the third network device in the embodiment.
[0130] The terms "first," "second," "third," "fourth," and the like (if any) in the specification and claims of this application and in the accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a particular order or sequential sequence. It should be understood that the terms used in this manner are interchangeable where appropriate so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including" and "having," and any variations thereof, are intended to cover non-exclusive inclusions, e.g., a process, method, system, product, or apparatus comprising a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0131] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0132] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of units is only a logical business division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.
[0133] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0134] In addition, each business unit in each embodiment of the present application can be integrated into a processing unit, each unit can exist physically separately, or two or more units can be integrated into a single unit. The above-mentioned integrated units can be implemented in the form of hardware or software business units.
[0135] If the integrated unit is implemented in the form of a software business unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0136] Those skilled in the art will appreciate that, in one or more of the above examples, the services described herein can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these services can be stored on a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media, including any medium that facilitates the transmission of computer programs from one location to another. Storage media can be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0137] The above specific implementation methods further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above are only specific implementation methods of the present invention.
[0138] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for transmitting routing information, characterized in that: The method comprises: The first network device receives first BGP routing information sent by the second network device, where the first BGP routing information includes a service identifier and an identifier of a first network slice, and the first network device is located in the first network slice; The first network device determines a first forwarding table entry based on the first BGP routing information. The first forwarding table entry is used to forward the service traffic corresponding to the service identifier to the second network device through the first network slice. The first network slice can meet the forwarding requirements corresponding to the service traffic.
2. The method according to claim 1, characterized in that The first network device and the second network device belong to the same network domain, and the first network device determines a first forwarding entry according to the first BGP routing information, including: The first network device generates a first forwarding entry according to the service identifier and the identifier of the first network slice.
3. The method according to claim 1 or 2, characterized in that The first network device and the second network device belong to the same network domain, and the method further includes: The first network device determines the identifier of the second network slice according to the identifier of the first network slice and a corresponding relationship, where the corresponding relationship includes a corresponding relationship between the identifier of the first network slice and the identifier of the second network slice; The first network device sends second BGP routing information to the third network device, where the second BGP routing information includes the service identifier and the identifier of the second network slice, so that the third network device determines a second forwarding table entry based on the second BGP routing information, where the second forwarding table entry is used to forward the service traffic to the first network device through the second network slice. The third network device and the second network device belong to different network domains, and the third network device is located in the second network slice.
4. The method according to claim 1 or 2, characterized in that The method further comprises: The first network device sends the service traffic to the second network device through the first network slice using the first forwarding entry.
5. The method according to claim 1 or 2, characterized in that The first forwarding table entry includes an identifier of the first network slice.
6. The method according to claim 1 or 2, characterized in that The service identifier is a virtual private network identifier, which is used to identify the virtual private network of the network device corresponding to the destination address of the service traffic, or the service identifier is a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic.
7. The method according to claim 1 or 2, characterized in that The identifier of the first network slice is located in the extended community attribute of the first BGP routing information.
8. A method for transmitting routing information, characterized in that: The method comprises: The second network device obtains first BGP routing information, where the first BGP routing information includes a service identifier and an identifier of the first network slice; The second network device sends the first BGP routing information to the first network device in the first network slice, so that the first network device forwards the service traffic corresponding to the service identifier to the second network device through the first network slice, and the first network slice can meet the forwarding requirements corresponding to the service traffic.
9. The method according to claim 8, characterized in that The second network device obtains the first BGP routing information, including: The second network device generates the first BGP routing information according to the correspondence between the service identifier and the identifier of the first network slice.
10. The method according to claim 9, characterized in that The correspondence between the service identifier and the identifier of the first network slice is configured on the second network device, or the correspondence between the service identifier and the identifier of the first network slice is obtained by the first network device according to IGP routing information.
11. A routing information transmission device, characterized in that: The apparatus is applied to a first network device and includes: A receiving unit, configured to receive first BGP routing information sent by a second network device, where the first BGP routing information includes a service identifier and an identifier of a first network slice, and the first network device is located in the first network slice; A determination unit is used to determine a first forwarding table entry based on the first BGP routing information, wherein the first forwarding table entry is used to forward the service traffic corresponding to the service identifier to the second network device through the first network slice, and the first network slice can meet the forwarding requirements corresponding to the service traffic.
12. The device according to claim 11, characterized in that The network device where the apparatus is located and the second network device belong to the same network domain, and the determining unit is specifically configured to generate a first forwarding table entry according to the service identifier and the identifier of the first network slice.
13. The device according to claim 11 or 12, characterized in that The first network device and the second network device belong to the same network domain, and the apparatus further includes: a sending unit; The determining unit is further configured to determine the identifier of the second network slice according to the identifier of the first network slice and a corresponding relationship, wherein the corresponding relationship includes a corresponding relationship between the identifier of the first network slice and the identifier of the second network slice; The sending unit is used to send second BGP routing information to the third network device, where the second BGP routing information includes the service identifier and the identifier of the second network slice, so that the third network device determines a second forwarding table entry based on the second BGP routing information, and the second forwarding table entry is used to forward the service traffic to the device through the second network slice. The third network device and the second network device belong to different network domains, and the third network device is located in the second network slice.
14. The device according to claim 11 or 12, characterized in that The device further includes: a sending unit; The sending unit is configured to send the service traffic to the second network device through the first network slice by using the first forwarding entry.
15. The device according to claim 11 or 12, characterized in that The first forwarding table entry includes an identifier of the first network slice.
16. The device according to claim 11 or 12, characterized in that The service identifier is a virtual private network identifier, which is used to identify the virtual private network of the network device corresponding to the destination address of the service traffic, or the service identifier is a prefix, which is the prefix of the network device corresponding to the destination address of the service traffic.
17. The device according to claim 11 or 12, characterized in that The identifier of the first network slice is located in the extended community attribute of the first BGP routing information.
18. A routing information transmission device, characterized in that: The apparatus is applied to a second network device, including: An acquiring unit, configured to acquire first BGP routing information, where the first BGP routing information includes a service identifier and an identifier of a first network slice; A sending unit is used to send the first BGP routing information to the first network device within the first network slice, so that the first network device forwards the business traffic corresponding to the business identifier to the network device where the device is located through the first network slice, and the first network slice can meet the forwarding requirements corresponding to the business traffic.
19. The device according to claim 18, characterized in that The acquisition unit is specifically configured to generate the first BGP routing information according to a correspondence between the service identifier and the identifier of the first network slice.
20. The device according to claim 19, characterized in that The correspondence between the service identifier and the identifier of the first network slice is configured on the second network device, or the correspondence between the service identifier and the identifier of the first network slice is obtained by the first network device according to IGP routing information.
21. A communication device, comprising: processor and memory; The memory is used to store instructions or computer programs; The processor is configured to execute the instructions or computer program in the memory, so that the communication device executes the method according to any one of claims 1 to 10.
22. A computer-readable storage medium comprising instructions or a computer program, which, when executed on a computer, causes the computer to execute the method according to any one of claims 1 to 10.
23. A network system comprising a first network device and a second network device, wherein the first network device comprises the routing information transmission apparatus according to any one of claims 11 to 17, and the second network device comprises the routing information transmission apparatus according to any one of claims 18 to 20.
Citation Information
Patent Citations
Path construction method and related equipment
CN111224874A
Cited By
Routing information transmission method and apparatus
WO2022063065A1