Data processing method and related equipment
By constructing destination and source segment identifiers (SIDs) in edge routers and utilizing SRv6 technology to convert IPv4 packets to IPv6 packets, the problem of inter-host communication in IPv4 and IPv6 incompatible networks is solved, achieving seamless delivery of IPv4 services and improved network performance.
Patent Information
- Application Number
- CN202410962059.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-17
- Publication Date
- 2026-01-20
AI Technical Summary
In a network environment where IPv4 and IPv6 are incompatible, host H1 cannot directly access H2.
By constructing Destination Segment Identifier (SID) and Source Segment Identifier (SID) in the edge router, the conversion of IPv4 packets to IPv6 packets is realized, and IPv4 services are provided in a pure IPv6 network using SRv6 technology.
It enables seamless delivery of IPv4 services in SRv6 networks that do not support IPv4, reducing network latency and overhead, lowering network device complexity and management costs, and improving network compatibility and flexibility.
Smart Images

Figure CN121367673A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the field of communication technology, and in particular, to a data processing method and related equipment. BACKGROUND
[0002] Figure 1 A network environment is shown, in which the following network element devices are involved:
[0003] PE1: an edge dual stack router, i.e., a router that supports both IPv4 and IPv6 protocol stacks. PE1 has two interfaces, one of which is connected to a LAN1 that supports only IPv4, and the other of which is connected to an IPv6 network internal link. The function of PE1 is to forward data between LAN1 and the IPv6 link, and to implement packet encapsulation and decapsulation functions.
[0004] PE2: an edge dual stack router, i.e., a router that supports both IPv4 and IPv6 protocol stacks. PE2 has two interfaces, one of which is connected to a LAN2 that supports only IPv4, and the other of which is connected to an IPv6 network internal link. The function of PE2 is to forward data between LAN2 and the IPv6 link, and to implement packet encapsulation and decapsulation functions.
[0005] H1: a host that accesses only through IPv4, i.e., a host that supports only IPv4 protocol stack. H1 is located in LAN1 and is connected to PE1 through an IPv4 link. The function of H1 is to send and receive IPv4 data packets, and to communicate data with other IPv4 hosts in the internal or external network.
[0006] H2: a host that accesses only through IPv4, i.e., a host that supports only IPv4 protocol stack. H2 is located in LAN2 and is connected to PE2 through an IPv4 link. The function of H2 is to send and receive IPv4 data packets, and to communicate data with other IPv4 hosts in the internal or external network.
[0007] The communication connection relationship between the above network element devices is as follows:
[0008] PE1 and PE2 are connected through an IPv6 link to form an IPv6 network. The link can be a physical link or a logical link. The data packets transmitted on the link are all based on the IPv6 protocol format.
[0009] H1 and LAN1 are connected through an Ethernet switch to form a LAN that supports only IPv4. The data packets transmitted on the LAN are all based on the IPv4 protocol format.
[0010] H2 and LAN2 are connected through an Ethernet switch, forming a LAN supporting only IPv4. The data packets transmitted on the LAN are all based on the IPv4 protocol format.
[0011] Since IPv4 and IPv6 are incompatible protocols, in Figure 1 In the network environment shown, H1 cannot directly access H2.
[0012] It should be noted that the information disclosed in the above Background section is only used to strengthen the understanding of the background of the present disclosure, and therefore can include information that does not constitute prior art known to those of ordinary skill in the art. SUMMARY
[0013] The present disclosure provides a data processing method and related equipment, which at least partially overcomes the problem that H1 cannot access H2 in a network environment similar to Figure 1 The present disclosure provides a data processing method and related equipment, which at least partially overcomes the problem that H1 cannot access H2 in a network environment similar to
[0014] Other characteristics and advantages of the present disclosure will become apparent from the following detailed description, or will be learned by practice of the present disclosure.
[0015] According to one aspect of the present disclosure, a data processing method is provided, applied to a first edge router, one interface of the first edge router being connected to a LAN supporting only IPv4, and another interface of the first edge router being connected to an internal link of a pure IPv6 network, the method comprising:
[0016] Upon receiving an IPv4 packet, in the address mapping rule of the remote edge router, it is queried whether there is an address mapping rule containing the destination IPv4 address block of the IPv4 packet, the address mapping rule indicating a mapping relationship between the IPv4 address block and the IPv6 mapping prefix of the remote edge router;
[0017] Based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, a destination segment identifier (SID) is constructed, the destination SID including a locator (LOC), a function (FUNCT), and an argument (ARG), the LOC being used to indicate the IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement the IPv4 to IPv6 packet destination address mapping function, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router of the first service node identifier storing the destination IPv4 address block;
[0018] The first edge router forwards the IPv6 packet to the remote edge router based on the LOC, and the remote edge router decapsulates the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block, and forwards the IPv4 packet to the next hop based on the IPv4 address block.
[0019] In an embodiment of the present disclosure, the method further comprises:
[0020] Based on the source IPv4 address of the IPv4 packet and the address mapping rule containing the destination IPv4 address block, a source SID is constructed, the source SID including a location LOC, a function FUNCT and a parameter ARG, the LOC being used to represent an IPv6 address of a remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the source SID is used to implement an IPv4-to-IPv6 packet source address mapping function, and the ARG recording the source IPv4 address of the IPv4 packet or a second service node identifier, the corresponding edge router storing a source IPv4 address block corresponding to the second service node identifier;
[0021] The source SID is added to the packet header of the IPv6 packet.
[0022] In an embodiment of the present disclosure, the method further comprises:
[0023] A broadcast message is sent in the IPv6 network, the broadcast message being used to inform other edge routers that the first edge router supports an IPv4 service delivery capability on the IPv6 network, and the broadcast message including an address mapping rule of the first edge router;
[0024] The broadcast message sent by other edge routers is received and stored.
[0025] In an embodiment of the present disclosure, the sum of the lengths of the LOC and the FUNCT is less than or equal to 96 bits.
[0026] In an embodiment of the present disclosure, adding the destination SID to the packet header of the IPv6 packet comprises:
[0027] The destination SID is written into a segment routing extension packet header SRH, the source address of the IPv6 packet into which the destination SID is written being an address of the first edge router, and the destination address of the IPv6 packet into which the destination SID is written being taken from the SRH according to an SRv6 procedure.
[0028] According to another aspect of the present disclosure, a data processing method is provided, which is applied to a remote edge router, one interface of the remote edge router is connected to a local area network supporting only IPv4, and another interface of the remote edge router is connected to an internal link of a pure IPv6 network, and the method comprises the following steps of:
[0029] receiving an IPv6 packet from the first edge router, wherein the packet header of the IPv6 packet comprises a destination SID, and the destination SID comprises a locator LOC, a function FUNCT, and a parameter ARG, the LOC is used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule containing a destination IPv4 address block, the FUNCT is used to identify that the destination SID is used to implement a function of mapping a destination address of an IPv4 packet to an IPv6 packet, and the ARG is used to record the destination IPv4 address block or a first service node identifier, and the corresponding edge router of the first service node identifier stores the destination IPv4 address block;
[0030] deciphering the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block;
[0031] forwarding an IPv4 packet to a next hop based on the IPv4 address block, and a data part of the IPv4 packet forwarded to the next hop is derived from a data part of the IPv6 packet.
[0032] According to another aspect of the present disclosure, a first edge router is provided, one interface of the first edge router is connected to a local area network supporting only IPv4, and another interface of the first edge router is connected to an internal link of a pure IPv6 network, and the first edge router comprises the following steps of:
[0033] a data query module, configured to, when an IPv4 packet is received, query, in an address mapping rule of a remote edge router, whether there is an address mapping rule containing a destination IPv4 address block of the IPv4 packet, and the address mapping rule represents a mapping relationship between the IPv4 address block and an IPv6 mapping prefix of the remote edge router;
[0034] a data processing module, configured to, based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, construct a destination segment identifier SID, and the destination SID comprises a locator LOC, a function FUNCT, and a parameter ARG, the LOC is used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule containing a destination IPv4 address block, the FUNCT is used to identify that the destination SID is used to implement a function of mapping a destination address of an IPv4 packet to an IPv6 packet, and the ARG is used to record the destination IPv4 address block or a first service node identifier, and the corresponding edge router of the first service node identifier stores the destination IPv4 address block;
[0035] The packet processing module is configured to add the destination SID into the packet header of the IPv6 packet, and add the data part of the IPv4 packet into the data part of the IPv6 packet; the first edge router forwards the IPv6 packet to the remote edge router based on the LOC; the remote edge router decapsulates the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block, and forwards the IPv4 packet to the next hop based on the IPv4 address block.
[0036] According to another aspect of the present disclosure, a remote edge router is provided, one interface of the remote edge router is connected to a LAN supporting only IPv4, another interface of the remote edge router is connected to an internal link of a pure IPv6 network, and the remote edge router comprises:
[0037] The packet receiving module is configured to receive the IPv6 packet from the first edge router, the packet header of the IPv6 packet comprises a destination SID, the destination SID comprises a location LOC, a function FUNCT, and a parameter ARG, the LOC is used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule containing a destination IPv4 address block, the FUNCT identifies that the destination SID is used to implement an IPv4-to-IPv6 packet destination address mapping function, and the ARG is used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router storing the destination IPv4 address block corresponding to the first service node identifier;
[0038] The packet decapsulating module is configured to decapsulate the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block.
[0039] The packet forwarding module is configured to forward the IPv4 packet to the next hop based on the IPv4 address block, and the data part of the IPv4 packet forwarded to the next hop is derived from the data part of the IPv6 packet.
[0040] According to another aspect of the present disclosure, an electronic device is provided, comprising a memory configured to store instructions, and a processor configured to invoke the instructions stored in the memory to implement the data processing method.
[0041] According to another aspect of the present disclosure, a computer readable storage medium is provided, and the computer readable storage medium stores computer instructions, the computer instructions are executed by a processor to implement the data processing method.
[0042] According to another aspect of the present disclosure, a computer program product is provided, and the computer program product stores instructions, the instructions are executed by a computer to cause the computer to implement the data processing method.
[0043] According to another aspect of the present disclosure, a chip is provided, comprising at least one processor and an interface.
[0044] an interface configured to provide program instructions or data for the at least one processor;
[0045] The at least one processor is configured to execute the program instructions to implement the data processing method.
[0046] The data processing method and related device provided by the embodiments of the present disclosure at least designs a destination SID for implementing the IPv4 to IPv6 message destination address mapping function. The destination SID provided by the present disclosure can implement the IPv4 / IPv6 conversion function based on the mapping rule on the edge router, and provide IPv4 service in the SRv6 network which does not support IPv4.
[0047] It should be understood that the foregoing general description and the following detailed description are only exemplary and explanatory, and are not limiting to the present disclosure. BRIEF DESCRIPTION OF DRAWINGS
[0048] The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments consistent with the present disclosure and serve to explain the principles of the present disclosure together with the specification.
[0049] Obviously, the drawings in the following description are only some embodiments of the present disclosure, and other drawings can be obtained by those skilled in the art without creative labor on the basis of these drawings.
[0050] Figure 1 A network environment scenario schematic diagram in an embodiment of the present disclosure is shown;
[0051] Figure 2 A data processing method flow chart in an embodiment of the present disclosure is shown;
[0052] Figure 3 An SRv6 SID composition format schematic diagram in an embodiment of the present disclosure is shown;
[0053] Figure 4 An SRH data packet delivery process schematic diagram in a pure IPv6 network with M46D / M46S in an embodiment of the present disclosure is shown;
[0054] Figure 5 Another data processing method flow chart in an embodiment of the present disclosure is shown;
[0055] Figure 6 Still another data processing method flow chart in an embodiment of the present disclosure is shown;
[0056] Figure 7 A first edge router structure schematic diagram in an embodiment of the present disclosure is shown;
[0057] Figure 8 Fig. 1 shows a structural schematic diagram of a remote edge router in an embodiment of the present disclosure;
[0058] Figure 9 Fig. 2 shows a structural block diagram of an electronic device in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0059] Example implementations are described more fully below with reference to the accompanying drawings.
[0060] Note that example implementations can be implemented in various forms and should not be understood to be limited to the examples set forth herein.
[0061] The inventors found that in a multi-domain IPv6 single-stack network, each PE will be identified by at least one IPv6 mapped prefix assigned by the operator and routable, and it will also have one or more associated IPv4 address blocks extracted from the local IPv4 routing table or address pool. In addition, a specific data structure is defined as an address mapping rule to express the mapping relationship between the IPv4 address block and the IPv6 mapped prefix of the remote PE. Through this design, if the mapping rule of the remote PE is obtained by the ingress PE, the mapping rule will give the forwarding guidance of the IPv4 data packet in the pure IPv6 network when the destination address of the IPv4 data packet matches its IPv4 address block, and the ingress PE will use the information in the mapping rule to generate the corresponding IPv6 source and destination addresses from its IPv4 source and destination addresses, and then generate a new IPv6 data packet.
[0062] This mapping-based conversion can also work in an SRv6 network. SRv6 defines the processing of data packets in an IPv6 network as a list of instructions, which are represented as 128-bit segments, commonly referred to as Segment ID (SID).
[0063] Embodiments of the present disclosure define two new segments for segment routing, namely the destination SID (Map IPv4 to IPv6 Destination, M46D) and the source SID (Map IPv4 to IPv6 Source, M46S), which implement the mapping rule-based IPv4 / IPv6 conversion function in the PE node. In a multi-domain IPv6 single-stack network using SRv6 technology, the M46S and M46D segments of the ingress node can convert the IPv4 data packet into an IPv6 data packet through stateless encapsulation or translation, and the egress node can restore it to an IPv4 data packet in a pure IPv6 network. This mechanism can be used to deliver IPv4 services over a pure IPv6 multi-domain network.
[0064] For ease of understanding, the related technologies and terms involved in the present disclosure are explained as follows:
[0065] SA(Source Address): packet source address.
[0066] DA(Destination Address): packet destination address.
[0067] SRH(Segment Routing Header): an explicit path of IPv6 is specified in the extended packet header, which stores the path constraint information of IPv6.
[0068] SID(Segment Identification): the identity of each segment in segment routing, which is used to store in SRH to guide packet forwarding. SRv6 SID is saved in the form of IPv6 address.
[0069] LOC(Locator): a component of SRv6 SID, which has a positioning function and is generally unique in the SRv6 domain. After the node is configured with Locator, the system will generate a network segment route and spread it in the SRv6 domain through IGP. Other nodes in the network can locate the node through the Locator network segment route, and all SRv6 SIDs published by the node can also be reached through the Locator network segment route.
[0070] FUNCT(Function): a component of SRv6 SID, which represents the instructions of the device. These instructions are pre-set by the device to instruct the generating node of SRv6 SID to perform corresponding functional operations. Opcode is used to represent it explicitly.
[0071] ARG(Arguments): a component of SRv6 SID, which occupies the low bit of IPv6 address as optional parameter segment. Through this field, some information of packet flow and service can be defined.
[0072] End SID(Endpoint SID): used to identify a certain destination node in the network. Configure Locator on each node, then configure Opcode of Function for the node to obtain SID, which can represent the node and is called End SID. End SID can be spread to other network elements through IGP protocol and is globally visible.
[0073] End.M46S(Map IPv4 to IPv6 Source): SRv6 End. extended service, which realizes the function of mapping IPv4 to IPv6 packet source address.
[0074] End.M46D (Map IPv4 to IPv6 Destination): SRv6 End. extended service, implements IPv4 to IPv6 packet destination address mapping function.
[0075] The present example embodiment will be described in detail below in conjunction with the accompanying drawings and examples.
[0076] Figure 2 A flow chart of a data processing method in the embodiment of the present disclosure is shown as follows. Figure 2 As shown in the figure, the data processing method provided in the embodiment of the present disclosure includes steps S201-S206.
[0077] In S201, when receiving an IPv4 packet, the first edge router queries whether there is an address mapping rule containing the destination IPv4 address block of the IPv4 packet in the address mapping rule of the remote edge router, and the address mapping rule represents the mapping relationship between the IPv4 address block and the IPv6 mapping prefix of the remote edge router.
[0078] The one interface of the first edge router is connected to a local area network supporting only IPv4, and the other interface of the first edge router is connected to a pure IPv6 network internal link. The first edge router can be PE1 in Figure 1 .
[0079] In S202, the first edge router constructs a destination segment identifier (SID) based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, the destination SID includes a locator (LOC), a function (FUNCT) and a parameter (ARG), the LOC is used to represent the IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifies that the destination SID is used to implement the IPv4 to IPv6 packet destination address mapping function, and the ARG is used to record the destination IPv4 address block or a first service node identifier, and the corresponding edge router of the first service node identifier stores the destination IPv4 address block.
[0080] The destination SID is an SRv6 SID, and its format can be the same as a 128-bit IPv6 address, the SID is composed of LOC:FUNCT:ARG, as shown in the figure, wherein the address (LOC) is encoded in the L most significant bits of the SID, followed by the function (FUNCT) of F bits and the parameter (ARG) of A bits. Figure 3
[0081] LOC identifies the node instantiating the SID and directs the packet (IPv6 message) to that node. FUNCT is an opaque identifier of the behavior bound to the SID. The ARG field provides additional information for its processing. As a new type of SID, the M46D segment will follow the format of the general SID. In addition, several information items specific to stateless address mapping and packet translation are carried in the relevant fields of the M46D SID, as follows:
[0082] The LOC field is a prefix allocated by the operator to identify the node instantiating the M46D-SID.
[0083] The FUNCT field identifies the behavior bound to the M46D-SID, which is defined in the subsequent implementation process.
[0084] The ARG field contains an IPv4 address related to the PE node. Since the IPv4 address requires 32 bits, the value of L+F should be less than or equal to 96.
[0085] For the PE node instantiating the M46D-SID, the IPv6 mapping prefix used for IPv4 transmission corresponds to the combination of the LOC and FUNCT fields. In general, the number of SIDs that the M46D-SID can instantiate is equal to the number of related IPv4 address blocks.
[0086] When the operator instantiates an M46D-SID at the edge node, they specify a SID value LOC:FUNCT:ARG bound to the behavior. An SRv6 endpoint behavior can require additional information for processing (e.g., tunneling or translation). These information can be done in the control plane.
[0087] In S203, the first edge router adds the destination SID to the packet header of the IPv6 message, and adds the data part of the IPv4 message to the data part of the IPv6 message.
[0088] In S204, the first edge router forwards the IPv6 message to the remote edge router based on the LOC.
[0089] The remote edge router has one interface connected to a LAN that only supports IPv4, and the other interface connected to a pure IPv6 network internal link. The remote edge router can be Figure 1 PE2 in FIG. 1.
[0090] In S205, the remote edge router decapsulates the IPv6 message based on the FUNCT to obtain the destination IPv4 address block or the first service node identifier; the edge router corresponding to the first service node identifier can obtain the destination IPv4 address block.
[0091] In the embodiment of the present disclosure, the destination IPv4 address block is recorded in the ARG, so that the remote router can directly obtain the destination IPv4 address block in the ARG, and the processing speed is faster and the efficiency is higher.
[0092] The first service node identifier is recorded in the ARG, so that the occupied space of the ARG field can be reduced while the IPv4 service is provided in the SRv6 network that does not support IPv4, and the influence on the original function of the ARG field is reduced.
[0093] In S206, the remote edge router forwards the IPv4 packet to the next hop based on the IPv4 address block, and the data part of the IPv4 packet forwarded to the next hop is derived from the data part of the IPv6 packet.
[0094] In some embodiments, the above method can further include: based on the source IPv4 address of the IPv4 packet and the address mapping rule containing the destination IPv4 address block, constructing a source SID, the source SID including a locator LOC, a function FUNCT, and an argument ARG, the LOC being used to represent the IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement the IPv4 to IPv6 packet source address mapping function, and the ARG recording the source IPv4 address of the IPv4 packet or a second service node identifier, the second service node identifier corresponding to an edge router storing the source IPv4 address block; and adding the source SID to the packet header of the IPv6 packet.
[0095] In some embodiments, the above method can further include: sending a broadcast message in the IPv6 network, the broadcast message being used to notify other edge routers that the first edge router supports the IPv4 service delivery capability on the IPv6 network, and the broadcast message including the address mapping rule of the first edge router; and receiving and storing the broadcast message sent by other edge routers.
[0096] In a multi-domain SRv6 network environment, M46S / M46D-SIDs need to be published. Nodes publish M46S / M46D-SIDs through the control plane, B:N:FUNCT:ARG. Together with the SRv6 endpoint behavior code point identifying the SID behavior. Similar to other types of SIDs, M46S / M46D-SIDs can be distributed within and across domains through IGP and BGP or other methods. The advertising method and reachability calculation are specific to the selected routing protocol.
[0097] For a specific data flow, one node is an ingress PE, denoted as PE1, and the other is an egress PE, denoted as PE2.
[0098] All PE nodes at the edge of the network only need to announce their M46D-SIDs to other nodes. PE2 announces its capability in the format of M46D-SID in the SRv6 domain in the control plane to other nodes. When PE1 receives the M46D-SID announced by PE2, it will be stored in the local database. This database can store multiple entries, each of which includes (but not limited to) IPv4 address block, LOC, FUNCT, device conversion capability (encapsulation or translation) and other information corresponding to the SID, IPv6 mapping prefix, i.e. LOC and FUNCT, represents the egress of the data packet whose destination address is the IPv4 address block.
[0099] When PE1 receives an IPv4 data packet, it first uses the destination IPv4 address block to find the corresponding IPv4 address block entry in the local database. If there is a matching IPv4 address block entry, the corresponding IPv6 mapping prefix will splice the IPv4 destination address, write the M46D-SID behavior identifier in the FUNCT field, generate the M46D-SID, and the 32-bit IPv4 destination address in the data packet is placed in the ARG field. According to the general SRv6 procedure, the M46D-SID is encoded into SRH.
[0100] Then the corresponding IPv6 mapping prefix needs to be spliced with the IPv4 destination address, the M46S-SID behavior identifier is written in the FUNCT field, the M46S-SID is generated, and the 32-bit IPv4 source address in the data packet is placed in the ARG field. According to the general SRv6 procedure, the M46S-SID is encoded into SRH.
[0101] The newly generated data packet with SRH is sent into the pure IPv6 network for further transmission. At this time, the source address SA of the IPv6 message is the local address of PE1, and the destination address DA is taken from the SRH according to the SRv6 procedure. The process is shown in Figure 4
[0102] When a new IPv6 data packet arrives at PE2, PE2 parses the LOC part of the SRH in the data packet layer by layer. If it matches the IPv6 mapping prefix instantiated by itself, it will decapsulate the data packet according to the instructions in FUNCT. Recognize End.M46S and End.M46D in FUNCT field respectively, extract the source IPv4 address and destination IPv4 address carried in the ARG field to restore the IPv4 data packet and forward it to the next hop.
[0103] According to the technical solution proposed in the present disclosure, how to implement end-to-end IPv4 service delivery in the case of IPv6 single stack in the network core can be guided for the edge PE device in the existing network. Through SRv6 technology, the network architecture and protocol stack are simplified, and cross-domain IPv4 service bearing can be implemented only based on the original IPv6 forwarding technology. In this way, the complexity and management cost of network devices can be reduced, and the reliability and maintainability of the network can be improved. The programmability and flexibility of the network are fully utilized to define the forwarding behavior and service function that meet the delivery of end-to-end IPv4 service, and the network path is programmed through the combination of segments, so as to realize the customization requirement of this service scenario.
[0104] The embodiments of the present disclosure provide two new segment types, source SID (M46S) and destination SID (M46D), for implementing IPv4 / IPv6 conversion function based on mapping rules. The technical point is the core innovation of the embodiments of the present disclosure, which enables seamless delivery of IPv4 services in a multi-domain pure IPv6 network without deploying additional conversion devices or protocols. Compared with the prior art, the technical point has the following advantages:
[0105] The network performance and efficiency are improved. Since the M46S and M46D segment types only need to perform encapsulation and decapsulation operations at the ingress node and the egress node, the intermediate nodes do not need to perform any conversion processing, but only need to perform normal IPv6 forwarding, so the network delay and overhead can be reduced, and the transmission speed and quality of data packets can be improved.
[0106] The network cost and complexity are reduced. Since the M46S and M46D segment types only need to use the original IPv6 forwarding technology, without using MPLS labels or other tunneling technologies, the complexity and management cost of network devices can be reduced, and the network architecture and protocol stack can be simplified.
[0107] The network compatibility and flexibility are enhanced. Since the M46S and M46D segment types can select stateless encapsulation or translation mode according to different mapping rules, various conversion scenarios and requirements can be supported.
[0108] On the source host, an M46S segment type is generated according to the protocol stack type and mapping rule of the target host, and is added to the IP packet header. The technical point is an important part of the present disclosure, which enables dynamic selection of appropriate conversion mode according to the protocol stack type of the target host in a dual-protocol stack network, and identification in the IP packet header. Compared with the prior art, the technical point has the following advantages:
[0109] The flexibility and compatibility of network communication are improved. Since the source host can generate different types of M46S segments according to the protocol stack type of the target host and add the M46S segments into the IP packet header, data communication in different protocol stack environments can be realized without changing the configuration of network equipment or the application layer.
[0110] The complexity of network configuration and management is reduced. Since the source host can automatically generate M46S segments according to the mapping rule and add the M46S segments into the IP packet header, manual address allocation or protocol selection is not needed, and the process of network configuration and management is simplified.
[0111] On the source host, an M46D segment is generated according to the protocol stack type of the source host and the mapping rule, and the M46D segment is added into the IP packet header. The technical point is an important part of the present application, which enables dynamic selection of a suitable conversion mode according to the protocol stack type of the source host in a dual-protocol stack network, and the conversion mode is identified in the IP packet header. Compared with the prior art, the technical point has the following advantages:
[0112] The flexibility and compatibility of network communication are improved. Since the source host can generate different types of M46D segments according to the protocol stack type of the source host and add the M46D segments into the IP packet header, data communication in different protocol stack environments can be realized without changing the configuration of network equipment or the application layer.
[0113] The complexity of network configuration and management is reduced. Since the source host can automatically generate M46D segments according to the mapping rule and add the M46D segments into the IP packet header, manual address allocation or protocol selection is not needed, and the process of network configuration and management is simplified.
[0114] Figure 5 A flowchart of a data processing method in the embodiment of the present disclosure is shown in FIG. 5. Figure 5 As shown in FIG. 5, the data processing method provided in the embodiment of the present disclosure is applied to a first edge router, one interface of the first edge router is connected to a local area network supporting only IPv4, and the other interface of the first edge router is connected to a pure IPv6 network internal link. The data processing method includes steps S502-S506.
[0115] In S502, when an IPv4 packet is received, whether there is an address mapping rule containing the destination IPv4 address block of the IPv4 packet in the address mapping rule of the remote edge router is queried, and the address mapping rule represents the mapping relationship between the IPv4 address block and the IPv6 mapping prefix of the remote edge router.
[0116] In S504, a destination segment identifier (SID) is constructed based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, the destination SID including a locator (LOC), a function (FUNCT), and an argument (ARG), the LOC being used to represent an IPv6 address of a remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement an IPv4-to-IPv6 message destination address mapping function, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router of the first service node identifier storing the destination IPv4 address block;
[0117] In S506, the destination SID is added to a message header of the IPv6 message, and a data part of the IPv4 message is added to a data part of the IPv6 message, the first edge router forwarding the IPv6 message to the remote edge router based on the LOC, the remote edge router decapsulating the IPv6 message based on the FUNCT to obtain the destination IPv4 address block or the first service node identifier, obtaining the destination IPv4 address block from the corresponding edge router of the first service node identifier, and forwarding the IPv4 message to a next hop based on the IPv4 address block.
[0118] In some embodiments, the above method can further include: constructing a source SID based on a source IPv4 address of the IPv4 message and the address mapping rule containing the destination IPv4 address block, the source SID including the LOC, the FUNCT, and the ARG, the LOC being used to represent the IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the source SID is used to implement an IPv4-to-IPv6 message source address mapping function, and the ARG recording the source IPv4 address of the IPv4 message or a second service node identifier, the corresponding edge router of the second service node identifier storing the source IPv4 address block; and adding the source SID to the message header of the IPv6 message.
[0119] In some embodiments, the above method can further include: sending a broadcast message in the IPv6 network, the broadcast message being used to notify other edge routers that the first edge router supports an IPv4 service delivery capability on the IPv6 network, the broadcast message including the address mapping rule of the first edge router; and receiving and storing the broadcast message sent by other edge routers.
[0120] In some embodiments, the sum of lengths of the LOC and the FUNCT is less than or equal to 96 bits.
[0121] In some embodiments, the destination SID is added to the packet header of the IPv6 packet, including: encoding the destination SID into a segment routing extension header (SRH), the source address of the IPv6 packet with the destination SID being the address of the first edge router, and the destination address of the IPv6 packet with the destination SID being obtained from the SRH according to the SRv6 procedure.
[0122] Figure 6 A flowchart of a data processing method in an embodiment of the present disclosure is shown in FIG. 6. Figure 6 As shown in FIG. 6, the data processing method provided in an embodiment of the present disclosure is applied to a remote edge router, one interface of the remote edge router is connected to a local area network supporting only IPv4, and another interface of the remote edge router is connected to an internal link of a pure IPv6 network, and the method includes steps S602-S606.
[0123] In S602, an IPv6 packet from a first edge router is received, and the packet header of the IPv6 packet includes a destination SID, the destination SID including a locator (LOC), a function (FUNCT), and a parameter (ARG), the LOC being used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule including a destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement a function of mapping a destination address of an IPv4 packet to an IPv6 packet, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router storing the destination IPv4 address block according to the first service node identifier;
[0124] In S604, the IPv6 packet is decrypted based on the FUNCT, and a destination IPv4 address block is obtained.
[0125] In S606, an IPv4 packet is forwarded to a next hop based on the IPv4 address block, and a data part of the IPv4 packet forwarded to the next hop is derived from a data part of the IPv6 packet.
[0126] In an embodiment of the present disclosure, the terms “first”, “second”, and “third” are only used for description purposes, and cannot be understood as indicating or implying relative importance.
[0127] In the present disclosure, the term “and / or” is only used to describe an association relationship of associated objects, and can represent three relationships, for example, A and / or B can represent three cases of A existing alone, A and B existing together, and B existing alone. In addition, the character “ / ” herein generally represents an “or” relationship between the front and rear associated objects.
[0128] In addition, although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the shown steps must be performed to achieve the desired result.
[0129] In some embodiments, certain steps can be omitted, multiple steps can be combined into one step, one step can be split into multiple steps, etc.
[0130] Based on the same inventive concept, the disclosure also provides a first edge router, one interface of the first edge router is connected to a local area network supporting only IPv4, and another interface of the first edge router is connected to an internal link of a pure IPv6 network, as shown in Figure 7 The first edge router 700 comprises:
[0131] The data query module 702 is configured to, when an IPv4 packet is received, query, in the address mapping rule of the remote edge router, whether there is an address mapping rule containing the destination IPv4 address block of the IPv4 packet, the address mapping rule indicating a mapping relationship between the IPv4 address block and an IPv6 mapping prefix of the remote edge router.
[0132] The data processing module 704 is configured to construct a destination segment identifier (SID) based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, the destination SID comprising a locator (LOC), a function (FUNCT), and an argument (ARG), the LOC being used to indicate an IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement a function of mapping the destination address of the IPv4 packet to the IPv6 packet, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router of the first service node identifier storing the destination IPv4 address block.
[0133] The packet processing module 706 is configured to add the destination SID to a packet header of the IPv6 packet, and add a data part of the IPv4 packet to a data part of the IPv6 packet, the first edge router forwarding the IPv6 packet to the remote edge router based on the LOC, the remote edge router unsealing the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block, and forwarding the IPv4 packet to a next hop based on the IPv4 address block.
[0134] In some embodiments, the packet processing module 706 can also be configured to construct a source SID based on the source IPv4 address of the IPv4 packet and the address mapping rule containing the destination IPv4 address block, the source SID including a locator LOC, a function FUNCT, and an argument ARG, the LOC being used to represent an IPv6 address of a remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement the IPv4-to-IPv6 packet source address mapping function, and the ARG recording the source IPv4 address of the IPv4 packet or a second service node identifier corresponding to an edge router storing a source IPv4 address block; and add the source SID to the packet header of the IPv6 packet.
[0135] In some embodiments, the first edge router 700 can further include:
[0136] a broadcast sending module configured to send a broadcast message on the IPv6 network, the broadcast message being used to notify other edge routers that the first edge router supports the IPv4 service delivery capability on the IPv6 network, and the broadcast message including the address mapping rule of the first edge router;
[0137] a storage receiving module configured to receive and store the broadcast message sent by other edge routers.
[0138] In some embodiments, the sum of the lengths of the LOC and the FUNCT is less than or equal to 96 bits.
[0139] In some embodiments, adding the destination SID to the packet header of the IPv6 packet includes: encoding the destination SID into a segment routing header SRH, the source address of the IPv6 packet with the encoded destination SID being an address of the first edge router, and the destination address of the IPv6 packet with the encoded destination SID being obtained from the SRH according to an SRv6 procedure.
[0140] Based on the same inventive concept, the disclosure also provides a remote edge router, one interface of the remote edge router being connected to an IPv4-only local area network, and another interface of the remote edge router being connected to an internal link of a pure IPv6 network, such as Figure 8 As shown in FIG. 8, the remote edge router 800 includes:
[0141] The packet receiving module 802 is configured to receive an IPv6 packet from the first edge router, wherein the IPv6 packet comprises a destination SID in a packet header, and the destination SID comprises a location LOC, a function FUNCT, and a parameter ARG. The LOC is used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule of a destination IPv4 address block. The FUNCT is used to identify that the destination SID is used to implement an IPv4-to-IPv6 packet destination address mapping function. The ARG is used to record the destination IPv4 address block or a first service node identifier, and the edge router corresponding to the first service node identifier stores the destination IPv4 address block.
[0142] The packet unsealing module 804 is configured to unseal the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block.
[0143] The packet forwarding module 806 is configured to forward an IPv4 packet to a next hop based on the IPv4 address block, and a data part of the IPv4 packet forwarded to the next hop is derived from a data part of the IPv6 packet.
[0144] The terms "first", "second", and the like in the present disclosure are merely used to distinguish different devices, modules or units, and do not limit the order or interdependence of the functions performed by these devices, modules or units.
[0145] As to the first edge router and the remote edge router in the above-described embodiments, the specific manners in which the respective modules perform operations have been described in detail in the embodiments of the data processing method, and thus will not be described in detail here.
[0146] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, such division is not mandatory.
[0147] In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into a plurality of modules or units.
[0148] Some of the block diagrams shown in the drawings are functional entities, which do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0149] The electronic device provided by the embodiments of the present disclosure will be described below with reference to Figure 9 Figure 9 The electronic device 900 shown is merely an example and should not impose any limitations on the scope of the functions and uses of the embodiments of the present disclosure.
[0150] Figure 9 An architecture schematic diagram of an electronic device 900 provided by the embodiments of the present disclosure is shown. As shown, the electronic device 900 includes but is not limited to at least one processor 910 and at least one memory 920. Figure 9
[0151] The memory 920 is configured to store instructions.
[0152] In some embodiments, the memory 920 can include a readable medium in the form of a volatile storage unit, such as a random access memory (RAM) 9201 and / or a cache memory unit 9202, and can further include a read-only memory (ROM) 9203.
[0153] In some embodiments, the memory 920 can further include a program / utility 9204 having a set (at least one) of program modules 9205, such as an operating system, one or more application programs, other program modules, and program data, each of which or a combination of which can include implementation of a network environment.
[0154] In some embodiments, the memory 920 can store an operating system. The operating system can be a real-time operating system (RTX), LINUX, UNIX, WINDOWS, or OS X.
[0155] In some embodiments, the memory 920 can further store data.
[0156] As an example, the processor 910 can read data stored in the memory 920, which can be stored in the same storage address as the instructions, or in a different storage address from the instructions.
[0157] The processor 910 is configured to invoke the instructions stored in the memory 920 to implement the steps of the various exemplary embodiments of the present disclosure described in the above “Exemplary Methods” section of the present specification. For example, the processor 910 can perform each step of the above method embodiments.
[0158] It should be noted that the above processor 910 can be a general-purpose processor or a special-purpose processor. The processor 910 can include one or more processing cores, and the processor 910 performs various functional applications and data processing by running instructions.
[0159] In some embodiments, the processor 910 can include a central processing unit (CPU) and / or a baseband processor.
[0160] In some embodiments, the processor 910 can determine one instruction according to the priority identification and / or the function category information carried in each control instruction.
[0161] In the present disclosure, the processor 910 and the memory 920 can be separately arranged or integrated together.
[0162] As an example, the processor 910 and the memory 920 can be integrated on a single board or a system on chip (SOC).
[0163] As shown in Figure 9 , the electronic device 900 is in the form of a general computing device. The electronic device 900 can also include a bus 930.
[0164] The bus 930 can be one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration bus, a processor or local bus using any of a variety of bus structures, etc.
[0165] The electronic device 900 can also communicate with one or more external devices 940, such as a keyboard or pointing device, via the I / O interface 950. Additionally, the electronic device 900 can communicate with one or more devices that enable a user to interact with the electronic device 900, and / or one or more devices (e.g., a router, a modem, etc.) that enable the electronic device 900 to communicate with one or more other computing devices. Such communication can occur via an I / O interface 950.
[0166] Also, the electronic device 900 can communicate with one or more networks, such as a local area network (LAN), a wide area network (WAN), and / or the Internet, via the network adapter 960.
[0167] As shown in Figure 9 , the network adapter 960 communicates with the other components of the electronic device 900 via the bus 930.
[0168] It should be appreciated that, although not shown, the electronic device 900 can employ other hardware and / or software modules that can be used in connection with the electronic device 900, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems, etc.
[0169] It can be understood that the structures shown in the embodiments of the present disclosure do not constitute a specific limitation on the electronic device 900. In other embodiments of the present disclosure, the electronic device 900 can include more or fewer components than those shown, or combine certain components, or split certain components, or different arrangement of components. Figure 9 The components shown can be implemented in hardware, software, or a combination of software and hardware. Figure 9
[0170] The present disclosure also provides a computer readable storage medium having stored thereon computer instructions, which when executed by a processor implement the data processing method described in the above method embodiments.
[0171] In the embodiments of the present disclosure, the computer readable storage medium is a computer readable medium that can send, propagate or transfer computer instructions for use by or in connection with an instruction execution system, apparatus or device.
[0172] As an example, the computer readable storage medium is a non-volatile storage medium.
[0173] In some embodiments, more specific examples of the computer readable storage medium in the present disclosure can include, but are not limited to, an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, a U disk, a mobile hard disk or any appropriate combination of the above.
[0174] In the embodiments of the present disclosure, the computer readable storage medium can include a data signal propagating in a baseband or as a carrier wave in a propagated data signal, which carries computer instructions (readable program code).
[0175] Such a propagated data signal can take a variety of forms, including but not limited to an electromagnetic signal, an optical signal or any appropriate combination of the above.
[0176] In some examples, the computer instructions contained on the computer readable storage medium can be transmitted by any appropriate medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any appropriate combination of the above.
[0177] The embodiments of the present disclosure also provide a computer program product, which stores instructions, which when executed by a computer, cause the computer to implement the data processing method described in the above method embodiments.
[0178] The above instructions can be program code. In specific implementation, the program code can be written in any combination of one or more programming languages.
[0179] The programming language can include an object-oriented programming language, such as Java, C++, or the like, as well as a conventional procedural programming language, such as the "C" programming language or similar programming languages.
[0180] The program code can execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server.
[0181] In the case of implementing the remote computing device, the remote computing device can be connected to the user's computing device through any kind of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, through the Internet by using an Internet service provider).
[0182] The embodiments of the present disclosure also provide a chip, comprising at least one processor and an interface;
[0183] The interface is configured to provide program instructions or data for the at least one processor;
[0184] The at least one processor is configured to execute the program instructions to implement the data processing method described in the above method embodiments.
[0185] In some embodiments, the chip can further comprise a memory configured to store the program instructions and the data, and the memory is located in the processor or outside the processor.
[0186] Those skilled in the art can understand that all or part of the steps of the above-mentioned embodiments can be implemented in the form of the following: entirely hardware embodiment, entirely software embodiment (including firmware, microcode, etc.), or hardware and software combination embodiment, which can be collectively referred to as "circuitry", "module" or "system".
[0187] Other embodiments of the present disclosure will be apparent to those skilled in the art with the consideration of the specification and practice of the disclosed invention.
[0188] The present disclosure is intended to cover any variations, uses or adaptive changes of the present disclosure that follow the general principles of the present disclosure and include general knowledge or conventional technical means in the art that are not disclosed in the present disclosure. The specification and embodiments are only regarded as exemplary, and the true scope and spirit of the present disclosure are indicated by the appended claims.
Claims
1. A data processing method applied to a first edge router, one interface of which is connected to a local area network supporting only IPv4, and another interface of which is connected to an internal link of a pure IPv6 network, characterized in that, The method comprises: Upon receiving an IPv4 packet, in the address mapping rule of the remote edge router, it is inquired whether there is an address mapping rule containing the destination IPv4 address block of the IPv4 packet, the address mapping rule representing the mapping relationship between the IPv4 address block and the IPv6 mapping prefix of the remote edge router; Based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, a destination segment identifier (SID) is constructed, the destination SID comprising a locator (LOC), a function (FUNCT) and a parameter (ARG), the LOC being used to represent the IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to realize the IPv4-to-IPv6 packet destination address mapping function, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router of the first service node identifier storing the destination IPv4 address block; The destination SID is added to the packet header of an IPv6 packet, and the data part of the IPv4 packet is added to the data part of the IPv6 packet, the first edge router forwarding the IPv6 packet to a remote edge router based on the LOC, and the remote edge router unsealing the IPv6 packet based on the FUNCT to obtain the destination IPv4 address block and forwarding the IPv4 packet to a next hop based on the IPv4 address block.
2. The method of claim 1, wherein, The method further comprises: Based on the source IPv4 address of the IPv4 packet and the address mapping rule containing the destination IPv4 address block, a source SID is constructed, the source SID comprising a locator (LOC), a function (FUNCT) and a parameter (ARG), the LOC being used to represent the IPv6 address of the remote edge router corresponding to the address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the source SID is used to realize the IPv4-to-IPv6 packet source address mapping function, and the ARG recording the source IPv4 address of the IPv4 packet or a second service node identifier, the corresponding edge router of the second service node identifier storing the source IPv4 address block; The source SID is added to the packet header of the IPv6 packet.
3. The method of claim 2, wherein, In the destination SID or the source SID, the importance of the position of the LOC is greater than that of the position of the FUNCT, and the importance of the position of the FUNCT is greater than that of the position of the ARG.
4. The method according to claim 1 or 2, characterized in that, The parameter ARG is further used to define the flow information and the service information of the packet.
5. The method of claim 1, wherein, The method further comprises: A broadcast message is sent on the IPv6 network, the broadcast message being used to inform other edge routers that the first edge router supports the IPv4 service delivery capability on the IPv6 network, and the broadcast message comprising the address mapping rule of the first edge router; The broadcast message sent by other edge routers is received and stored.
6. The method of claim 1, wherein, The sum of the lengths of the LOC and the FUNCT is less than or equal to 96 bits.
7. The method of claim 1, wherein, add the destination SID to a packet header of the IPv6 packet, including: add the destination SID to a Segment Routing Header (SRH), and a source address of the IPv6 packet with the destination SID is an address of the first edge router, and a destination address of the IPv6 packet with the destination SID is taken from the SRH according to an SRv6 procedure.
8. A data processing method applied to a remote edge router, one interface of which is connected to a local area network supporting only IPv4, and another interface of which is connected to an internal link of a pure IPv6 network, characterized in that, The method comprises: receiving an IPv6 packet from a first edge router, the IPv6 packet including a destination SID in a packet header, the destination SID including a locator (LOC), a function (FUNCT), and a parameter (ARG), the LOC being used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule containing a destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement an IPv4-to-IPv6 packet destination address mapping function, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router storing the destination IPv4 address block; decapsulating the IPv6 packet based on the FUNCT to obtain a destination IPv4 address block; forwarding an IPv4 packet to a next hop based on the IPv4 address block, the data part of the IPv4 packet to be forwarded to the next hop being derived from a data part of the IPv6 packet.
9. A first edge router having one interface connected to an IPv4-only local area network and another interface connected to an IPv6-only internal link within a network, wherein the first edge router is configured to: The first edge router comprises: a data query module configured to, upon receiving an IPv4 packet, query whether there is an address mapping rule containing a destination IPv4 address block of the IPv4 packet in address mapping rules of a remote edge router, the address mapping rule representing a mapping relationship between an IPv4 address block and an IPv6 mapping prefix of a remote edge router; a data processing module configured to, based on the destination IPv4 address block and the address mapping rule containing the destination IPv4 address block, construct a destination Segment Identifier (SID), the destination SID including a locator (LOC), a function (FUNCT), and a parameter (ARG), the LOC being used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule containing the destination IPv4 address block, the FUNCT identifying that the destination SID is used to implement an IPv4-to-IPv6 packet destination address mapping function, and the ARG being used to record the destination IPv4 address block or a first service node identifier, the corresponding edge router storing the destination IPv4 address block; a packet processing module configured to add the destination SID to a packet header of an IPv6 packet, and add a data part of the IPv4 packet to a data part of the IPv6 packet, the first edge router forwarding the IPv6 packet to a remote edge router based on the LOC, the remote edge router decapsulating the IPv6 packet based on the FUNCT to obtain a destination IPv4 address block, and forwarding an IPv4 packet to a next hop based on the IPv4 address block.
10. A remote edge router having one interface connected to an IPv4-only local network and another interface connected to an IPv6-only internal link, characterized in that, The remote edge router comprises: The packet receiving module is configured to receive an IPv6 packet from the first edge router, wherein a packet header of the IPv6 packet comprises a destination SID, the destination SID comprises a location LOC, a function FUNCT, and a parameter ARG, the LOC is used to represent an IPv6 address of a remote edge router corresponding to an address mapping rule of a destination IPv4 address block, the FUNCT identifies that the destination SID is used to implement an IPv4-to-IPv6 packet destination address mapping function, and the ARG is used to record the destination IPv4 address block or a first service node identifier, and the corresponding edge router of the first service node identifier stores the destination IPv4 address block; The packet unsealing module is configured to unseal the IPv6 packet based on the FUNCT to obtain a destination IPv4 address block. The packet forwarding module is configured to forward an IPv4 packet to a next hop based on the IPv4 address block, and a data part of the IPv4 packet forwarded to the next hop is derived from a data part of the IPv6 packet.
11. An electronic device, comprising: The computer program product comprises: a memory configured to store instructions; a processor configured to invoke the instructions stored in the memory to implement the data processing method according to any one of claims 1-8.
12. A computer readable storage medium having stored thereon computer instructions, wherein, The computer program product comprises: a memory configured to store instructions; a processor configured to invoke the instructions stored in the memory to implement the data processing method according to any one of claims 1-8.