Packet distribution method and device, communication device and readable storage medium

By forwarding packets to the corresponding virtual system in the root system of the SRv6 node according to the pre-configured mapping between SRv6 addresses and virtual systems, the problem of virtual system traffic distribution in the SRv6 network is solved, and effective virtual system isolation and service independence are achieved.

CN119449682BActive Publication Date: 2026-04-24CHINA MOBILE COMM LTD RES INST +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILE COMM LTD RES INST
Filing Date
2023-08-03
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

In SRv6 networks, since SRv6 addresses are generally public network addresses, the private service attributes of virtual systems conflict with the public network routing attributes of SRv6, making it difficult for virtual systems to distribute traffic.

Method used

By extracting the SRv6 destination address of the packet from the root system of the SRv6 node, and forwarding the packet to the corresponding virtual system according to the pre-configured correspondence between the SRv6 address and the virtual system, a new function type END.V is introduced to identify the virtual system.

Benefits of technology

It effectively resolves the conflict between the private service attributes of virtual systems and the public network routing attributes of SRv6, realizes the traffic offloading of virtual systems in SRv6 networks, and has simple configuration with minimal changes to the existing packet offloading process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449682B_ABST
    Figure CN119449682B_ABST
Patent Text Reader

Abstract

The application discloses a message distribution method and device, communication equipment and a readable storage medium, and belongs to the technical field of communication. The message distribution method in the embodiment of the application comprises the following steps: forwarding the obtained first message to a root system in the SRv6 node; extracting an SRv6 destination address in the first message in the root system; in the case that the function type of the SRv6 destination address is a preset type, forwarding the first message from the root system to a virtual system corresponding to the SRv6 destination address in the SRv6 node according to the correspondence between the preconfigured SRv6 address and the virtual system. Thus, the problem that the private service attribute of the virtual system conflicts with the SRv6 public network routing attribute in the related art can be solved, so that the virtual system distribution in the SRv6 network is effectively realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of communication technology, specifically relating to a message splitting method, apparatus, communication equipment, and readable storage medium. Background Technology

[0002] Considering security and differentiated business needs, segment routing IPv6 (SRv6) nodes based on the IPv6 forwarding plane often need to provide independent services for different tenants or services. When an SRv6 node serves multiple tenants / services, and these tenants / services require independent service isolation, the internal structure of the SRv6 node can be divided into multiple independent and isolated virtual systems, each providing separate services to different tenants / services. However, in SRv6 networks, since SRv6 addresses are generally public IP addresses, the private service attributes of virtual systems can conflict with the public routing attributes of SRv6, thus affecting SRv6 packet offloading. Therefore, effectively implementing virtual system offloading in SRv6 networks is a pressing issue that needs to be addressed. Summary of the Invention

[0003] The purpose of this application is to provide a message splitting method, apparatus, communication device, and readable storage medium to solve the problem of how to effectively implement virtual system splitting in SRv6 networks.

[0004] To solve the above-mentioned technical problems, this application is implemented as follows:

[0005] Firstly, a message routing method is provided, applicable to SRv6 nodes, including:

[0006] The first message obtained is forwarded to the root system in the SRv6 node;

[0007] Extract the SRv6 destination address from the first message in the root system;

[0008] If the function type of the SRv6 destination address is a preset type, the first packet is forwarded from the root system to the virtual system in the SRv6 node corresponding to the SRv6 destination address, according to the pre-configured correspondence between the SRv6 address and the virtual system.

[0009] Optionally, after extracting the SRv6 destination address from the first message in the root system, the method further includes:

[0010] In the root system, it is determined whether the SRv6 destination address is a local SRv6 address, and if the SRv6 destination address is a local SRv6 address, it is determined whether the function type of the SRv6 destination address is a preset type.

[0011] Optionally, determining whether the SRv6 destination address is a local SRv6 address in the root system includes:

[0012] The local SRv6 address table is searched in the root system, and it is determined whether the local SRv6 address table includes the SRv6 destination address. When the local SRv6 address table includes the SRv6 destination address, the SRv6 destination address is a local SRv6 address; or, when the local SRv6 address table does not include the SRv6 destination address, the SRv6 destination address is not a local SRv6 address.

[0013] Optionally, the SRv6 destination address is a segment identifier (SID), and the preset type is END.V.

[0014] Optionally, forwarding the first packet from the root system to the virtual system in the SRv6 node corresponding to the SRv6 destination address based on the pre-configured mapping between SRv6 addresses and virtual systems includes:

[0015] In the root system, the next-hop address of the first packet is updated according to the SRv6 protocol to obtain the second packet; according to the pre-configured correspondence between SRv6 addresses and virtual systems, the second packet is forwarded from the root system to the virtual system corresponding to the SRv6 destination address.

[0016] Optionally, after forwarding the second message from the root system to the virtual system corresponding to the SRv6 destination address, the method further includes:

[0017] In the virtual system corresponding to the SRv6 destination address, the second packet is processed and the processed packet is forwarded to the root system; the processed packet is then forwarded from the root system.

[0018] The forwarding of the processed message from the root system includes:

[0019] The public network route is found in the root system, and the processed message is forwarded according to the SRv6 destination address in the processed message.

[0020] Secondly, a message splitting device is provided for use in SRv6 nodes, including a forwarding module, a root system, and at least one virtual system;

[0021] The forwarding module is used to: forward the acquired first message to the root system;

[0022] The root system is used to: extract the SRv6 destination address from the first message, and if the function type of the SRv6 destination address is a preset type, forward the first message to the virtual system in the SRv6 node corresponding to the SRv6 destination address according to the pre-configured correspondence between SRv6 addresses and virtual systems.

[0023] Thirdly, a communication device is provided, including a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the method described in the first aspect.

[0024] Fourthly, a readable storage medium is provided, on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method described in the first aspect.

[0025] In this embodiment, the root system in the SRv6 node forwards received packets to the virtual system corresponding to the SRv6 destination address based on the pre-configured mapping between SRv6 addresses and virtual systems. This resolves the conflict between the private service attributes of virtual systems and the public network routing attributes of SRv6 in related technologies, thereby effectively achieving virtual system traffic offloading in the SRv6 network. Furthermore, the scheme in this application is simple to configure and requires minimal modification to the packet offloading process in related technologies, which is beneficial for achieving virtual system traffic offloading in the SRv6 network. Attached Figure Description

[0026] Figure 1 This is a schematic diagram illustrating the correspondence between SRv6 addresses and virtual systems in an embodiment of this application;

[0027] Figure 2 This is a flowchart of a message splitting method provided in an embodiment of this application;

[0028] Figure 3 This is a schematic diagram of the message routing process in an embodiment of this application;

[0029] Figure 4 This is a flowchart illustrating the message routing process in the embodiments of this application;

[0030] Figure 5 This is a schematic diagram of the structure of a message splitting device provided in an embodiment of this application;

[0031] Figure 6 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation

[0032] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0033] The terms "first," "second," etc., used in the specification and claims of this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more. Furthermore, in the specification and claims, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects are in an "or" relationship.

[0034] To facilitate understanding of the embodiments of this application, the following will be described first.

[0035] SRv6 is a protocol designed based on source routing principles for forwarding Internet Protocol Version 6 (IPv6) packets over a network. An SRv6 message mainly consists of three parts: the IPv6 basic header, the SRv6 routing extension header, and the upper-layer protocol data unit.

[0036] The SRv6 Segment Identifier (SID) is an IPv6 address format, typically 128 bits long, including Locator, Function, and Arguments. The Locator identifies a network node and is used for routing and forwarding packets to that node. The Function expresses the forwarding action the device command is to perform, such as specifying forwarding by looking up the forwarding table (end.t), specifying forwarding by the outgoing interface (end.x), etc. Arguments is an optional field that represents the parameters used when executing the command.

[0037] The SRv6 Segment Routing Header (SRH) contains an explicit SRv6 address stack. When the SRv6 source node encapsulates an SRv6 packet, it encapsulates the nodes that the packet will traverse and the destination SRv6 addresses into the SRH. During packet forwarding, the packet is forwarded in the network according to the path defined in the SRH, passing through the nodes included in the SRH.

[0038] A virtual system refers to multiple independent logical devices partitioned from a single physical device. Through its characteristics, a physical device can be logically divided into two or more virtual systems. Each virtual system is equivalent to a real device, possessing its own resources and processing packets according to the policies and entries within the virtual system. Administrators can configure and manage the services and resources within each virtual system individually.

[0039] Virtual systems can be divided into two types: a root system (Public) and a virtual system (VSYS). A root system (Public) is a special virtual system that exists by default, while a virtual system (VSYS) is a logically independent device that is partitioned from a physical device.

[0040] With the digital transformation of enterprises and the development of cloud computing and virtualization technologies, public clouds and multi-tenant data centers need to be able to orderly route packets to various service function nodes to flexibly provide various services to different users. When packets are forwarded in the network, they often need to pass through various service nodes to ensure that the network can provide users with secure, fast, and stable services according to a pre-planned schedule. These service nodes include firewalls (FW), load balancers (LB), and intrusion prevention systems (IPS). Packets need to pass through these service nodes in a predetermined order required by business logic to achieve the required business functionality.

[0041] When an SRv6 node serves multiple tenants / services, and these tenants / services require independent service isolation, the internal structure of the SRv6 node can be divided into multiple independent and isolated virtual systems, each providing separate services to different tenants / services. Accordingly, it is necessary to be able to distinguish the mapping between SRv6 traffic and virtual systems, and to implement traffic offloading from the traffic forwarding device to the virtual systems.

[0042] To address the issue of virtual system offloading in SRv6 networks, this application extends the SRv6 address definition by introducing new function types, such as the END.V type, to identify virtual systems within an SRv6 node. After creating a virtual system on an SRv6 node, the mapping between SRv6 addresses and virtual systems can be configured, i.e., configuring the binding relationship between SRv6 addresses and virtual systems. Different virtual systems on the same SRv6 node can be distinguished using different functions, or by different Locators or Arguments.

[0043] like Figure 1As shown, after creating virtual systems vsys2 and vsys3 on an SRv6 node, the mapping between SRv6 addresses and virtual systems can be configured. For example, SRv6 address SID2 can be configured to correspond to virtual system vsys2 with a function type of END.V, and SRv6 address SID3 can be configured to correspond to virtual system vsys3 with a function type of END.V. This allows for the identification of multiple virtual systems within a single device / system / platform. SID2 and SID3 can be distinguished using different functions, or by different Locators or Arguments.

[0044] The message splitting method, apparatus, communication device, and readable storage medium provided in this application will be described in detail below with reference to the accompanying drawings and through specific embodiments and application scenarios.

[0045] Please see Figure 2 , Figure 2 This is a flowchart of a packet splitting method provided in an embodiment of this application. The method is applied to a segment routing SRv6 node based on the IPv6 forwarding plane. This SRv6 node can be, but is not limited to, a firewall, load balancer, intrusion prevention system, etc. Figure 2 As shown, the method includes the following steps:

[0046] Step 21: Forward the first acquired packet to the root system in the SRv6 node;

[0047] Step 22: Extract the SRv6 destination address from the first packet in the root system;

[0048] Step 23: If the function type of the SRv6 destination address is a preset type, according to the pre-configured correspondence between SRv6 addresses and virtual systems, forward the first packet from the root system to the virtual system in the SRv6 node corresponding to the SRv6 destination address.

[0049] Here, the root system is a special virtual system that exists by default within the SRv6 node. The SRv6 node can virtualize multiple virtual systems, thereby providing independent isolation services for multiple tenants / services. Virtual systems can meet the multi-tenant / service isolation needs in scenarios such as large-scale data centers, cloud computing, and cloud services, avoiding the resource waste caused by deploying multiple independent devices.

[0050] The first message is specifically an SRv6 message.

[0051] The preset type can be understood as a new functional type introduced in this application for SRv6 addresses, used to identify virtual systems in SRv6 nodes. That is, if the functional type of the SRv6 destination address is the preset type, then there is a correspondence between the SRv6 destination address and the virtual system.

[0052] Optionally, the SRv6 destination address is SID, and the preset type is END.V type.

[0053] The packet splitting method in this application, through the root system in the SRv6 node, forwards received packets to the virtual system corresponding to the SRv6 destination address based on the pre-configured mapping between SRv6 addresses and virtual systems. This resolves the conflict between the private service attributes of virtual systems and the public network routing attributes of SRv6 in related technologies, thereby effectively achieving virtual system splitting in the SRv6 network. Furthermore, the scheme in this application is simple to configure and requires minimal modification to the packet splitting process in related technologies, which is beneficial for achieving virtual system splitting in the SRv6 network.

[0054] Optionally, after extracting the SRv6 destination address from the first packet in the root system, the packet splitting method in this embodiment may further include:

[0055] In the root system, it is determined whether the SRv6 destination address is a local SRv6 address. If the SRv6 destination address is a local SRv6 address, it is determined whether the function type of the SRv6 destination address is a preset type. Then, if the function type of the SRv6 destination address is a preset type, the first packet is forwarded to the virtual system corresponding to the SRv6 destination address according to the pre-configured mapping between SRv6 addresses and virtual systems.

[0056] In other words, only when the extracted SRv6 destination address is a local SRv6 address and the corresponding function type is a preset type, will the corresponding message be forwarded to the virtual system corresponding to the SRv6 destination address according to the pre-configured correspondence between the SRv6 address and the virtual system.

[0057] In this embodiment of the application, the local SRv6 address table can be used to determine whether the extracted SRv6 destination address is a local SRv6 address. The aforementioned determination of whether an SRv6 destination address is a local SRv6 address in the root system can include:

[0058] The local SRv6 address table is searched in the root system, and it is determined whether the local SRv6 address table includes an SRv6 destination address. If the local SRv6 address table includes an SRv6 destination address, the SRv6 destination address is a local SRv6 address. Alternatively, if the local SRv6 address table does not include an SRv6 destination address, the SRv6 destination address is not a local SRv6 address.

[0059] By using the local SRv6 address table, it is easy to determine whether the extracted SRv6 destination address is a local SRv6 address.

[0060] Optionally, step 23 above, which involves forwarding the first packet from the root system to the virtual system corresponding to the SRv6 destination address based on the pre-configured mapping between SRv6 addresses and virtual systems, may include:

[0061] In the root system, the next-hop address of the first message is updated according to the SRv6 protocol to obtain the second message;

[0062] Based on the pre-configured mapping between SRv6 addresses and virtual systems, the second packet is forwarded from the root system to the virtual system corresponding to the SRv6 destination address.

[0063] In this way, updating the next-hop address of the packet before forwarding it to the corresponding virtual system facilitates the forwarding and processing of subsequent packets.

[0064] The following explains the update of the next-hop address according to the SRv6 protocol: The SRH of the SRv6 packet has two key fields: 1) Segment List in the form of IPv6 address. Each Segment List (e.g., Segment List[0], Segment List[1], ..., Segment List[n]) is a path segment. By arranging them in order, they form the IPv6 display path; 2) Segment Left (abbreviated as SL) in the form of a pointer, which points to the currently active Segment List. The minimum value of SL is 0, and the maximum value is the number of Segment Lists minus 1. During the forwarding of the SRv6 packet, the destination address field of the header changes continuously. Its value is determined by the Segment Left (SL) and Segment List in the SRH. When SL points to an active Segment List, the path segment information in that Segment List is copied to the destination address field of the header, thus updating the destination address.

[0065] Optionally, after the root system forwards the second packet to the virtual system corresponding to the SRv6 destination address, the packet diversion method in this embodiment may further include:

[0066] In the virtual system corresponding to the SRv6 destination address, the second message is processed, the processed message is forwarded to the root system, and the processed message is forwarded from the root system.

[0067] For example, the above-mentioned processing of the second message could be: processing the second message and providing services according to the tenant / business requirements.

[0068] Optionally, forwarding the processed message from the root system includes: finding a public network route in the root system and forwarding the processed message according to the SRv6 destination address in the processed message.

[0069] The following is combined Figure 3 and Figure 4 The message routing process in the embodiments of this application is described.

[0070] In the embodiments of this application, such as Figure 3 As shown, virtual systems, such as vsys2 and vsys3, can be created first on the SRv6 node; then, SRv6 addresses of type End.V can be defined on the root system of the SRv6 node, and these SRv6 addresses can be mapped to the virtual systems, that is, the mapping / binding relationship between SRv6 addresses and virtual systems can be established, such as END.V SID2 corresponding to vsys2, and END.V SID3 corresponding to vsys3; and the SRv6 addresses that identify the virtual systems can be routed to the network in the root system.

[0071] When encapsulating SRv6 packets based on tenant / service requirements, the SRv6 header node can add the SRv6 address identifying the virtual system (such as SID2 or SID3) to the packet's SRH extension header and send the resulting SRv6 packet into the network. The SRv6 packet is then routed and forwarded to this SRv6 node within the network. When the SRv6 packet is forwarded to this SRv6 node, it first enters the root system and searches the local SID table. If a match is found in the local SID table and the function type is END.V, the corresponding virtual system is located. The SRv6 packet is then updated with its next-hop destination address according to the SRv6 protocol and forwarded to the corresponding virtual system. For example, an SRv6 packet with a destination address of SID2 is updated with its next-hop address according to the SRv6 protocol and forwarded to virtual system vsys2; or an SRv6 packet with a destination address of SID3 is updated with its next-hop address according to the SRv6 protocol and forwarded to virtual system vsys3. Afterwards, once the SRv6 message enters the corresponding virtual system, it is processed and provided with services according to the tenant / business requirements. The processed message is then forwarded to the root system, which looks up the routing table based on the destination address in the SRv6 message and forwards it.

[0072] like Figure 4 As shown, the specific traffic splitting process after a message enters the SRv6 node with the virtual system enabled includes:

[0073] S1: The message is forwarded to the SRv6 node, and the SRv6 node has virtual system functionality enabled.

[0074] S2: The root system of the SRv6 node determines whether this message is an SRv6 message; if it is not an SRv6 message, it enters the original message processing flow, that is, it performs routing forwarding according to the destination address in the message; if it is an SRv6 message, it enters S3.

[0075] S3: The root system of the SRv6 node looks up the local SID table to determine whether the SRv6 destination address in this message is a local SRv6 address; if it is not a local SRv6 address, it proceeds to the original message processing flow; if it is a local SRv6 address, it proceeds to S4.

[0076] S4: The root system of the SRv6 node determines whether the SRv6 destination address is of type END.V; if the SRv6 destination address is not of type END.V, it enters the SRv6 message processing flow; if the SRv6 destination address is of type END.V, it enters S5.

[0077] S5: The root system of the SRv6 node continues to update the next-hop destination address of this packet according to the SRv6 protocol, that is, update the next-hop destination address in the SRH to the SRv6 destination address. After the SRv6 address is updated, the packet is forwarded to the corresponding virtual system according to the configured correspondence between the SRv6 address and the virtual system.

[0078] S6: After the message enters the corresponding virtual system, the virtual system processes the message according to the configuration, such as performing security checks or other value-added services.

[0079] S7: After the message is processed, the virtual system forwards the processed message to the root system.

[0080] S8: Root system forwards and processes SRv6 packets.

[0081] It should be noted that the message splitting method provided in this application embodiment can be executed by a message splitting device or a control module in the message splitting device for executing the message splitting method. This application embodiment uses the execution of the message splitting method by a message splitting device as an example to illustrate the message splitting device provided in this application embodiment.

[0082] Please see Figure 5 , Figure 5 This is a schematic diagram of a packet splitting device provided in an embodiment of this application. This device is applied to segment routing SRv6 nodes based on the IPv6 forwarding plane, such as... Figure 5 As shown, the message splitting device 50 includes a forwarding module 51, a root system 52, and at least one virtual system 53;

[0083] The forwarding module 51 is used to: forward the acquired first message to the root system 52;

[0084] The root system 52 is used to: extract the SRv6 destination address from the first message, and if the function type of the SRv6 destination address is a preset type, forward the first message to the virtual system 53 corresponding to the SRv6 destination address according to the pre-configured correspondence between the SRv6 address and the virtual system.

[0085] Optionally, the root system 52 is further configured to: determine whether the SRv6 destination address is a local SRv6 address, and if the SRv6 destination address is a local SRv6 address, determine whether the function type of the SRv6 destination address is a preset type.

[0086] Optionally, the root system 52 is further configured to: look up a local SRv6 address table and determine whether the local SRv6 address table includes the SRv6 destination address; when the local SRv6 address table includes the SRv6 destination address, the SRv6 destination address is a local SRv6 address; or, when the local SRv6 address table does not include the SRv6 destination address, the SRv6 destination address is not a local SRv6 address.

[0087] Optionally, the SRv6 destination address is a segment identifier (SID), and the preset type is END.V.

[0088] Optionally, the root system 52 is further configured to: update the next-hop address of the first message according to the SRv6 protocol to obtain the second message; and forward the second message to the virtual system corresponding to the SRv6 destination address according to the pre-configured correspondence between SRv6 addresses and virtual systems.

[0089] Optionally, the virtual system 53 corresponding to the SRv6 destination address is used to: process the second message and forward the processed message to the root system 52;

[0090] The root system 52 is also used to forward the processed message.

[0091] Optionally, the root system 52 is further configured to: find public network routes and forward the processed packets according to the SRv6 destination address in the processed packets.

[0092] The message splitting device 50 of this application embodiment can achieve the above-mentioned... Figure 2The various processes of the method embodiments shown can achieve the same technical effect, and will not be described again here to avoid repetition.

[0093] Optional, such as Figure 6 As shown, this application embodiment also provides a communication device 60, including a processor 61, a memory 62, and a program or instructions stored in the memory 62 and executable on the processor 61. When the program or instructions are executed by the processor 61, they implement the various processes of the above-described message splitting method embodiment and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0094] This application also provides a readable storage medium storing a program or instructions. When the program or instructions are executed by a processor, they can implement the various processes of the above-described message splitting method embodiments and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0095] Computer-readable media include both permanent and non-permanent, removable and non-removable media, which can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0096] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0097] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0098] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a service classification device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0099] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.

Claims

1. A message splitting method applied to SRv6 nodes, characterized in that, The method includes: The first message obtained is forwarded to the root system in the SRv6 node; Extract the SRv6 destination address from the first message in the root system; If the function type of the SRv6 destination address is a preset type, the first packet is forwarded from the root system to the virtual system in the SRv6 node corresponding to the SRv6 destination address according to the pre-configured correspondence between the SRv6 address and the virtual system. The preset type is a new functional type introduced for SRv6 addresses, used to identify virtual systems in the SRv6 node; The SRv6 destination address is a segment identifier (SID), and the preset type is END.V. The step of forwarding the first packet from the root system to the virtual system in the SRv6 node corresponding to the SRv6 destination address, based on the pre-configured mapping between SRv6 addresses and virtual systems, includes: In the root system, the next-hop address of the first message is updated according to the SRv6 protocol to obtain the second message; Based on the pre-configured mapping between SRv6 addresses and virtual systems, the second packet is forwarded from the root system to the virtual system corresponding to the SRv6 destination address; After forwarding the second message from the root system to the virtual system corresponding to the SRv6 destination address, the method further includes: In the virtual system corresponding to the SRv6 destination address, the second packet is processed, and the processed packet is forwarded to the root system; The processed message is forwarded from the root system; The forwarding of the processed message from the root system includes: The public network route is found in the root system, and the processed message is forwarded according to the SRv6 destination address in the processed message.

2. The method according to claim 1, characterized in that, After extracting the SRv6 destination address from the first message in the root system, the method further includes: In the root system, it is determined whether the SRv6 destination address is a local SRv6 address, and if the SRv6 destination address is a local SRv6 address, it is determined whether the function type of the SRv6 destination address is a preset type.

3. The method according to claim 2, characterized in that, The step of determining whether the SRv6 destination address is a local SRv6 address in the root system includes: The local SRv6 address table is searched in the root system, and it is determined whether the local SRv6 address table includes the SRv6 destination address. Wherein, when the local SRv6 address table includes the SRv6 destination address, the SRv6 destination address is a local SRv6 address; or, when the local SRv6 address table does not include the SRv6 destination address, the SRv6 destination address is not a local SRv6 address.

4. A message splitting device, applied to an SRv6 node, characterized in that, Includes a forwarding module, a root system, and at least one virtual system; The forwarding module is used to: forward the acquired first message to the root system; The root system is used to: extract the SRv6 destination address from the first message, and if the function type of the SRv6 destination address is a preset type, forward the first message to the virtual system in the SRv6 node corresponding to the SRv6 destination address according to the pre-configured correspondence between the SRv6 address and the virtual system. The preset type is a new functional type introduced for SRv6 addresses, used to identify virtual systems in the SRv6 node; The SRv6 destination address is a segment identifier (SID), and the preset type is END.V. The root system is further configured to: update the next-hop address of the first packet in accordance with the SRv6 protocol in the root system to obtain the second packet; and forward the second packet from the root system to the virtual system corresponding to the SRv6 destination address according to the pre-configured correspondence between the SRv6 address and the virtual system. The virtual system corresponding to the SRv6 destination address is used to: process the second message and forward the processed message to the root system; The root system is also used to: forward the processed messages; The root system is also used to: find public network routes and forward the processed packets according to the SRv6 destination address in the processed packets.

5. A communication device, characterized in that, It includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the packet de-routing method as described in any one of claims 1 to 3.

6. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the steps of the message routing method as described in any one of claims 1 to 3.

Citation Information

Patent Citations

  • Message shunting method and device

    CN104917687A

  • Message forwarding method and device based on SRv6 network, storage medium and electronic device

    CN111935014A