WO2025185376A1 - Communication method, apparatus and system - Google Patents
Communication method, apparatus and systemInfo
- Publication number
- WO2025185376A1 WO2025185376A1 PCT/CN2025/075335 CN2025075335W WO2025185376A1 WO 2025185376 A1 WO2025185376 A1 WO 2025185376A1 CN 2025075335 W CN2025075335 W CN 2025075335W WO 2025185376 A1 WO2025185376 A1 WO 2025185376A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- nerg
- ont
- terminal device
- prefix
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
Definitions
- the present application relates to the field of communications, and in particular to a communication method, device, and system.
- a Layer 2 network consists of a core layer and an access layer. Its workflow can be summarized as switches forwarding packets based on the media access control (MAC) address table.
- a Layer 3 network differs from a Layer 2 network in the addition of a convergence layer, which acts as an intermediary between the access layer and the core layer. While Layer 2 networks rely solely on MAC addressing for communication, Layer 3 networks require Internet Protocol (IP) routing for cross-segment communication, including across multiple collision domains.
- IP Internet Protocol
- DHCP Dynamic Host Configuration Protocol
- IPv6 Internet Protocol version 6
- VxLAN virtual extensible local area network
- Layer 2 tunneling technology is complex and requires operators to deploy and configure special resources in the upper layer network.
- the present application provides a communication method, device and system, thereby reducing the complexity of users' Layer 2 network intercommunication.
- the present application provides a communication method, which is applied to a first optical network terminal (ONT), wherein the first ONT is connected to a network enhanced residential gateway (NERG), the first ONT is connected to a first terminal device, and the NERG is connected to a second terminal device.
- the first ONT receives a prefix synchronization message sent by the NERG, it sends the IPv6 address prefix of the NERG contained in the prefix synchronization message to the first terminal device, so that the first terminal device obtains a first global unicast address (GUA) based on the IPv6 address prefix of the NERG.
- GUI global unicast address
- the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG. Then, the first ONT generates a first network segment routing item, and the destination IP address of the first network segment routing item is the bridge interface address of the NERG.
- the first GUA and the second GUA may also be referred to as IPv6 public network addresses.
- the first terminal device connected to the first ONT and the second terminal device connected to the NERG uniformly use the NERG's IPv6 address prefix to obtain the GUA. This ensures that the GUAs of the terminal device connected to the first ONT and the terminal device connected to the NERG have the same IPv6 address prefix and belong to the same network segment. Therefore, the terminal device connected to the first ONT and the terminal device connected to the NERG can directly learn each other's neighbor table, achieving Layer 2 network interoperability. This reduces the complexity of Layer 2 network interoperability compared to traditional Layer 2 network solutions that require operators to deploy and configure special resources in the upper layer network.
- the NERG's IPv6 address prefix is the IPv6 address prefix of the NERG's Point-to-Point Protocol over Ethernet (PPPoE) wide area network (WAN) interface.
- PPPoE Point-to-Point Protocol over Ethernet
- WAN wide area network
- the first ONT when forwarding the first Internet uplink message through its own PPPoE WAN interface, the first ONT performs IPv6-to-IPv6 network prefix translation (NPTv6) or IPv6-to-IPv6 network address translation (NAT66) on the first Internet uplink message.
- NTTv6 IPv6-to-IPv6 network prefix translation
- NAT66 IPv6-to-IPv6 network address translation
- the first ONT enables an NPTv6 function or a NAT66 function on a PPPoE WAN interface connected to the Internet.
- an NPTv6 conversion or a NAT66 conversion is required. Otherwise, the first Internet downlink packet corresponding to the first Internet uplink packet cannot reach the first ONT because there is no routing entry corresponding to the IPv6 address prefix to the first ONT.
- the Internet uplink message of the second terminal device connected to the NERG is forwarded by the PPPoE WAN interface of the NERG connected to the Internet, and the Internet can be accessed normally without special processing.
- the NPTv6 function or NAT66 function is enabled on the PPPoE WAN interface of the first ONT connected to the Internet, allowing the terminal device to access the Internet through a normal channel.
- the first ONT forwards the first application access uplink message to the NERG based on the first static route.
- the NERG performs NPTv6 or NAT66 on the first application access uplink message and then sends it to the application.
- the outbound port of the first static route is the bridge interface of the first ONT, and the next hop address is the bridge interface address of the NERG.
- the first application access uplink message from the first terminal device can reach the designated application based on the static route configuration, enabling user access to the application on the first ONT.
- the first ONT updates the MAC address of the first application's uplink access message to the MAC address of the ERG's bridge interface. This allows the first application's uplink access message to be forwarded on the first ONT over the Layer 2 network. This resolves the issue of communication interruption caused by issues with the Transmission Control Protocol (TCP) state and MAC learning entries when the first application's uplink access message from the first ONT to the application is forwarded over the Layer 3 network and the corresponding downlink message is forwarded over the Layer 2 network.
- TCP Transmission Control Protocol
- the first ONT's PPPoE WAN interface when the first ONT's PPPoE WAN interface fails, it sends a first failure state synchronization message to the NERG, instructing the NERG to send a first route advertisement message to the first terminal device.
- the first route advertisement message instructs the first terminal device to update its gateway to the gateway of the second terminal device.
- the first ONT then forwards the first terminal device's second Internet uplink message to the NERG, which then forwards the second Internet uplink message via the PPPoE WAN interface. This allows the first terminal device connected to the first ONT to use the NERG's Internet link as a backup link when the first ONT loses Internet access, ensuring network stability.
- the domain name system server of the first terminal device is proxied by the domain name system server of the second terminal device.
- the first ONT receives a second fault state synchronization message sent by the NERG and, in response to the second fault state synchronization message, sends a second route advertisement message to the second terminal device.
- the second route advertisement message instructs the second terminal device to update its gateway to the gateway of the first terminal device.
- the second route advertisement message includes a second route deletion advertisement message and a second route creation advertisement message.
- the source IP address of the second route deletion advertisement message is the bridge interface address of the first NERG.
- the source IP address of the second route creation advertisement message is the bridge interface address of the ONT.
- the present application provides a communication method, applied to a NERG, wherein the NERG is connected to a first ONT, the first ONT is connected to a first terminal device, and the NERG is connected to a second terminal device.
- the NERG sends a prefix synchronization message to the first ONT.
- the first ONT sends the NERG's IPv6 address prefix to the first terminal device and generates a first network segment routing entry.
- the first terminal device obtains a first GUA based on the NERG's IPv6 address prefix.
- the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA.
- the second GUA is obtained by the second terminal device based on the NERG's IPv6 address prefix.
- the destination address of the first network segment routing entry is the bridge interface address of the NERG.
- the NERG is also connected to a second ONT, and the second ONT is connected to a third terminal device.
- the NERG sends a prefix synchronization message to the second ONT.
- the second ONT responds to the prefix synchronization message by sending the NERG's IPv6 address prefix to the third terminal device.
- the third terminal device obtains a third GUA based on the NERG's IPv6 address prefix and generates a second network segment routing entry.
- the IPv6 address prefix of the third GUA is the same as the IPv6 address prefix of the second GUA.
- the second GUA is obtained by the second terminal device based on the NERG's IPv6 address prefix.
- the destination address of the second network segment routing entry is the bridge interface address of the NERG.
- terminal devices under multiple ONTs connected to the NERG can uniformly use the NERG's IPv6 address prefix to obtain the GUA.
- the IPv6 address prefix of NERG is the IPv6 address prefix of NERG's PPPoE WAN interface.
- the NERG receives a first application access uplink message sent by the first ONT based on the first static route, performs NPTv6 or NAT66 on the first application access uplink message, and then sends it to the application.
- the outbound port of the first static route is the bridge interface of the first ONT, and the next hop address is the bridge interface address of the NERG.
- the NERG upon receiving a first application access uplink message from the first ONT, the NERG adds a tag to the first application access uplink message. Upon receiving a first application access downlink message returned by the application containing the tag, the NERG sets the outbound port of the first application access downlink message to the NERG's bridge interface and the next hop address to the address of the first ONT's bridge interface. This allows the first application access uplink message from the first terminal device to reach the designated application based on the static routing configuration, and the first application access downlink message returned by the application can also be sent to the first ONT, enabling users on the first ONT to access the application.
- the NERG receives a first fault status synchronization message from the first ONT and, in response to the first fault status synchronization message, sends a first route advertisement message to the first terminal device.
- the first route advertisement message is used to instruct the first terminal device to update its gateway to the gateway of the second terminal device.
- the NERG then receives a second Internet uplink message from the first ONT for the first terminal device and forwards the second Internet uplink message via the PPPoE WAN interface.
- the first route advertisement message includes a first route deletion advertisement message and a first route creation advertisement message.
- the source IP address of the first route deletion advertisement message is the bridge interface address of the first ONT.
- the source IP address of the second route creation advertisement message is the bridge interface address of the NERG.
- the NERG when the NERG's PPPoE WAN interface is in a faulty state, the NERG sends a second fault state synchronization message to the first ONT, causing the first ONT to send a second route advertisement message to the second terminal device.
- the second route advertisement message instructs the second terminal device to update its gateway to the gateway of the first terminal device.
- the NERG then forwards a third Internet uplink message from the second terminal device to the first ONT, causing the first ONT to forward the third Internet uplink message via the PPPoE WAN interface.
- the NERG sends the second application access uplink message based on a second static route.
- the outbound port of the second static route is the NERG's PPPoE WAN interface, and the next hop address is the application address.
- NERG when NERG sends the second application access uplink message through the PPPoE WAN interface of NERG, NERG performs NPTv6 or NAT66 on the second application access uplink message.
- the second aspect differs from the first aspect in that the execution entity is different.
- the second aspect can be combined with any possible implementation method described in the first aspect, which will not be repeated here.
- the present application provides a communication device, comprising a receiving module, a sending module, and a processing module.
- the receiving module is used to receive a prefix synchronization message sent by NERG; the prefix synchronization message includes the IPv6 address prefix of NERG.
- the sending module is used to send the IPv6 address prefix of NERG to a first terminal device, so that the first terminal device obtains a first global unicast address GUA based on the IPv6 address prefix of NERG; the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of NERG.
- the processing module is used to generate a first network segment routing item; the destination IP address of the first network segment routing item is the bridge interface address of NERG.
- the communication device may further include other modules that execute the operation steps of the communication method of the first aspect.
- the present application provides a communication device, comprising a sending module.
- the sending module is configured to send a prefix synchronization message to a first ONT and generate a first network segment routing entry;
- the prefix synchronization message includes the IPv6 address prefix of the NERG, causing the first ONT to send the IPv6 address prefix of the NERG to a first terminal device;
- the first terminal device obtains a first GUA based on the IPv6 address prefix of the NERG, the IPv6 address prefix of the first GUA being the same as the IPv6 address prefix of a second GUA, the second GUA being obtained by the second terminal device based on the IPv6 address prefix of the NERG;
- the destination address of the first network segment routing entry being the bridge interface address of the NERG.
- the communication device may further include other modules for executing the operation steps of the communication method described in the second aspect.
- the present application provides a communication system, comprising a first ONT and a NERG, wherein the first ONT is connected to the NERG, the first ONT is connected to a first terminal device, and the NERG is connected to a second terminal device.
- the NERG is used to send a prefix synchronization message to the first ONT, wherein the prefix synchronization message includes the IPv6 address prefix of the NERG.
- the first ONT is used to receive the prefix synchronization message sent by the NERG.
- the first ONT is also used to send the IPv6 address prefix of the NERG to the first terminal device, so that the first terminal device obtains a first global unicast address GUA based on the IPv6 address prefix of the NERG, wherein the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG.
- the first ONT is also used to generate a first network segment routing item, wherein the destination IP address of the first network segment routing item is the bridge interface address of the NERG.
- a computing device comprising a processor and a memory.
- the processor is configured to execute instructions stored in the memory of the computing device, so that the computing device executes the communication method described in any possible implementation of the first aspect.
- a computing device cluster comprising at least one computing device, each computing device including a processor and a memory.
- the processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster performs the communication method described in any possible implementation of the second aspect.
- a computer program product which includes a computer program or instructions, and when the computer program or instructions are executed on a computing device, causes the computing device to execute the communication method described in any possible implementation of the first aspect.
- a computer program product comprising a computer program or instructions, which, when executed on a computing device cluster, causes the computing device cluster to execute the communication method described in any possible implementation of the second aspect.
- a computer-readable storage medium includes a computer program or instructions that, when executed on a computing device, causes the computing device to execute the communication method described in any possible implementation of the first aspect.
- a computer-readable storage medium includes a computer program or instructions that, when executed on a computing device cluster, causes the computing device cluster to execute the communication method described in any possible implementation of the second aspect.
- FIG1 is a schematic diagram of the architecture of a communication system provided by the present application.
- FIG2 is a flow chart of a communication method provided by the present application.
- FIG3 is a second flow chart of a communication method provided by the present application.
- FIG4 is a third flow chart of a communication method provided by the present application.
- FIG5 is a fourth flow chart of a communication method provided by the present application.
- FIG6 is a flow chart of a communication method provided by the present application.
- FIG7 is a sixth flow chart of a communication method provided by the present application.
- FIG8 is a flow chart of a communication method provided by the present application.
- FIG9 is a schematic structural diagram of a communication device provided by the present application.
- FIG10 is a schematic structural diagram of another communication device provided by the present application.
- FIG11 is a schematic diagram of the structure of a computing device provided by the present application.
- FIG12 is a schematic diagram of the structure of a computing device cluster provided by this application.
- FIG13 is a schematic diagram of a structure of a network connection between computing devices provided by the present application.
- the communication method provided in the embodiment of the present application can be applied to optical network terminal networking scenarios in the field of communications.
- the following is a brief introduction to the technologies that may be involved in this application.
- IPv6 Internet Protocol version 6, abbreviated as IPv6, not only expands the address space but also offers additional features and improvements over Internet Protocol version 4 (IPv4). These include improved security, reliability, and longevity, simpler address allocation, faster routing, and better support for mobile devices. IPv6 also supports flow labels and quality of service, making network traffic management more flexible and efficient.
- IPv4 Internet Protocol version 4
- IPv6 address is 128 bits long and consists of eight 16-bit fields, with adjacent fields separated by colons. Each field in an IPv6 address must contain a hexadecimal number.
- IPv6 address consists of an IPv6 address prefix and an interface identifier.
- the IPv6 address prefix is the portion of the address with a fixed value or the portion of the address that identifies the network.
- the IPv6 notation for subnet identifiers, routers, and address range prefixes is the same as the Classless Inter-Domain Routing (CIDR) notation used by IPv4.
- the prefix can be written as: address/prefix length.
- 21DA:D3::/48 is a router prefix
- 21DA:D3:0:2F3B::/64 is a subnet prefix. If multiple devices have the same IPv6 address prefix, they can directly learn each other's neighbor tables, enabling Layer 2 network interoperability.
- IPv6 address is an identifier for a single interface. All IPv6 addresses are assigned to interfaces, not nodes. Since each interface belongs to a specific node, any interface address of a node can be used to identify a node. IPv6 has three types of addresses: unicast, anycast, and multicast. Unicast is used to identify an address on a single interface. Packets sent to a unicast address are sent to the interface identified by that address. Based on packet reachability, unicast supports global unicast addresses, site-local unicast addresses, and link-local unicast addresses. A GUA is an address that can be reached and identified globally.
- IPv6 address prefix consists of a global routing prefix and a subnet ID, and the interface identifier is an interface ID (identify).
- interface ID an interface ID (identify).
- An optical network terminal also known as an ONT or optical modem, is a device that provides access to the internet for home users, offering services such as high-speed internet access, IPTV, voice, and Wi-Fi.
- An ONT can be understood as an optical network unit (ONU), and can be considered a part of the ONU.
- ONT optical network terminal
- ONU optical network unit
- the ONU can be connected to an x digital subscriber line (xDSL) or Ethernet access point gateway device, which can then be connected to the ONU.
- xDSL x digital subscriber line
- Ethernet access point gateway device which can then be connected to the ONU.
- An ONU is a user-side device in a passive optical network (PON), typically located at the user's end.
- PON passive optical network
- the ONU converts received optical signals into electrical signals and transmits them to user devices such as computers, televisions, or phones.
- the ONT is a component of the ONU, providing additional functionality such as voice, data, or video services.
- the ONT can connect directly to user terminals to provide network services or function as a home gateway.
- Edge cloud is a small-scale cloud data center distributed at the edge of the network that provides real-time data processing, analysis and decision-making. Both private cloud and public cloud rely on a large-scale cloud server to operate.
- the core of the edge cloud is cloud computing, primarily relying on edge computing capabilities. It's a platform built on edge infrastructure. Forming a triangular architecture with the central cloud and IoT terminals, it offloads network dispatch, storage, computing, and intelligent data analysis tasks to edge cloud processors, reducing response latency, alleviating overall cloud pressure, and lowering network costs. It also provides cloud services such as computer resource distribution and scheduling.
- the physical network architecture of cloud data centers needs to evolve from the traditional three-tier architecture to a two-tier spine-leaf network based on a non-blocking multi-stage switching network.
- This architecture, routing organization, and automated management and control must meet the requirements of elastic scalability, efficient forwarding, and high reliability for large-scale networking.
- the Spine is the core network node, providing high-speed IP forwarding capabilities and connecting to various functional Leaf nodes via high-speed interfaces.
- Leaf nodes are network function access nodes, providing access to various network devices.
- Spine and Leaf switches are interconnected using Layer 3 routing interfaces, with the choice of Open Shortest Path First (OSPF) or External Border Gateway Protocol (EBGP) for Layer 3 underlay network interconnection.
- OSPF Open Shortest Path First
- EBGP External Border Gateway Protocol
- Cross-device link aggregation technology and equal-cost multipath routing (ECMP) enable multipath forwarding and fast link switching, supporting non-blocking forwarding, horizontal elastic expansion, and network reliability.
- the present application provides a communication method, in particular, a "communication method for synchronizing IPv6 address prefixes using NERG as a control center.”
- NERG sends a prefix synchronization message containing NERG's IPv6 address prefix to the first ONT to instruct the first ONT to send NERG's IPv6 address prefix to the first terminal device connected to itself, so that the first terminal device obtains a first GUA based on NERG's IPv6 address prefix.
- the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device connected to NERG based on NERG's IPv6 address prefix.
- the first ONT generates a first network segment routing item, and the destination IP address of the first network segment routing item is the bridge interface address of NERG.
- the first terminal device connected to the first ONT and the second terminal device connected to the NERG uniformly use the NERG's IPv6 address prefix to obtain the GUA.
- FIG. 1 is a schematic diagram of the architecture of a communication system provided by this application.
- communication system 100 includes a first ONT 101, a second ONT 102, a switch 103, a NERG 104, a switch 110, a switch 105, and an edge cloud 106.
- the first ONT 101 and the second ONT 102 are connected to the NERG 104 via the switch 103.
- the first ONT 101 and the second ONT 102 are also connected to the Internet via the switch 110.
- the NERG 104 is connected to the edge cloud 106 via the switch 105.
- NERG 104 the structure of NERG 104 and how NERG 104 connects to the first ONT 101 , the second ONT 102 , and the edge cloud 106 are described.
- NERG 104 can be a virtual gateway on an edge cloud gateway (ECGW).
- NERG 104 can have DHCP server functions, domain name system (DNS) proxy functions, and PPPoE client functions.
- DNS domain name system
- ECGW is virtualized into the U-plane and the C-plane.
- the C-plane is responsible for establishing and managing channels for forwarding service data
- the U-plane is responsible for forwarding user service data.
- the C-plane of the ECGW includes NERG 104, which includes an L2 control plane and an L3 control plane.
- the L2 control plane includes a first local area network interface (LAN1) and a second local area network interface (LAN2).
- the L3 control plane includes a second wide area network interface (WAN2) and a third wide area network interface (WAN3).
- NERG 104 may also include a first wide area network interface (WAN1).
- the NERG 104 may be a virtual device implemented based on Kubernetes (k8s) containerization and may be managed by a Kubernetes client.
- k8s Kubernetes
- the LAN 1 of the NERG 104 is connected to the switch 103 via a U-plane, thereby being bridged to the first ONT 101 .
- LAN 1 of NERG 104 is connected to switch 103 via Ethernet virtual private network (EVPN) SRv6 (segment routing IPv6), thereby connecting to the bridge interface of first ONT 101.
- LAN 1 may utilize QinQ (802.1Q-in-802.1Q) technology based on a virtual local area network (VLAN).
- VLAN virtual local area network
- the LAN 2 of the NERG 104 is connected to the switch 103 via the U-plane, thereby being bridged to the second ONT 102 .
- LAN2 of NERG 104 is connected to switch 103 via EVPN SRv6, and is thus connected to the bridge interface of the second ONT 102.
- LAN2 can use QinQ VLAN technology.
- switch 103 can be considered an A-Leaf node in the spine-leaf architecture.
- Switch 103 connects to LAN 1 using EVPN SRv6 in TAG mode, and connects to LAN 2 using EVPN SRv6 in RAW mode.
- WAN1 of NERG 104 is connected to switch 110 via the U interface, thereby connecting to the Internet.
- WAN1 of NERG104 is connected to switch 110 through EVPN SRv6, thereby accessing the Internet through switch 110.
- WAN1 can use QinQ VLAN technology.
- switch 110 can be considered an S-Leaf in the Spine-Leaf architecture.
- Switch 110 connects to WAN1 using EVPN SRv6 in TAG mode.
- NERG 104 is connected to the switch 105 via the U-plane, and thus connected to the edge cloud 106 .
- WAN2 of NERG 104 is connected to switch 105 through virtual routing and forwarding (VRF), thereby connecting to edge cloud 106.
- VRF virtual routing and forwarding
- WAN2 can use Smart VLAN technology.
- WAN3 of NERG 104 is connected to switch 105 through EVPN VxLAN, thereby connecting to edge cloud 106.
- WAN3 can use QinQ VLAN technology.
- switch 105 can be a TOR (top of rack) switch.
- Switch 105 is connected to WAN2 through EVPN VxLAN RAW mode.
- the NERG 104 may isolate the first ONT 101 and the second ONT 102 according to users, or the ECGW may virtualize a NERG for each user.
- the first ONT 101 is connected to the switch 103 via a bridge interface, thereby being bridged to the NERG 104 .
- the first ONT 101 is connected to the switch 103 via the bridge interface BR0 , and is thus connected to the LAN 1 of the NERG 104 via the switch 103 .
- the first ONT 101 is connected to the switch 103 through the PPPoE interface, and is then connected to the switch 110 through the switch 103 , and accesses the Internet through the switch 110 .
- the first ONT 101 is connected to the switch 103 through the PPPoE interface, and is thereby connected to the switch 110 in the TAG mode of EVPN SRv6, and the switch 110 is connected to the Internet.
- the second ONT 102 is connected to the switch 103 via a bridge interface, thereby being bridged to the NERG 104 .
- the second ONT 102 is connected to the switch 103 via the bridge interface BR0 , and is thus connected to the LAN 2 of the NERG 104 via the switch 103 .
- the second ONT 102 is connected to the switch 103 through the PPPoE interface, and is thereby connected to the switch 110 through the switch 103 , and is accessed to the Internet through the switch 110 .
- the second ONT 102 is connected to the switch 103 through the PPPoE interface, and is thereby connected to the switch 110 in the TAG mode of EVPN SRv6, and the switch 110 is connected to the Internet.
- first ONT 101 and second ONT 102 can provide access functions for two households respectively.
- Devices connected to first ONT 101 include first terminal device 107, such as a TV with an address of 192.168.16.3 and a computer with an address of 192.168.16.2.
- Devices connected to second ONT 102 include third terminal device 108, such as a TV with an address of 192.168.17.2 and a computer with an address of 192.168.17.5.
- the edge cloud 106 may include one or more edge cloud services.
- the edge cloud services may be virtualized from the host machine, and the edge cloud services may be considered as the second terminal device 109 connected to the NERG 104 .
- the edge cloud 106 may include edge cloud-specific services, such as an edge cloud business instance (network attached storage (NAS) with an address of 192.168.31.8).
- the edge cloud-specific services are connected to WAN2 of NERG104 through the switch 105, thereby forming a large Layer 2 network with the home.
- NAS network attached storage
- the edge cloud 106 may include edge cloud shared services, such as intelligent computing with an address of 29.18.7.8.
- the edge cloud proprietary services are connected to WAN3 of NERG104 through the switch 105.
- the WAN3 address is 29.18.7.7, thereby supporting three-layer network access.
- FIG1 is merely a schematic diagram and should not be construed as limiting the present application.
- the communication system 100 may also include other modules not shown in FIG1.
- the switch 103 (or switch 110, or switch 105) is a network device, or may be formed by connecting one or more network devices (switches, routers, gateways, etc.).
- the steps of the communication method provided in the present application are executed by multiple devices in the communication system 100, such as the first ONT 101, the second ONT 102, the NERG 104 and the edge cloud 106.
- the communication method provided in the embodiment of the present application is described with reference to FIG2.
- FIG 2 is a flow chart of a communication method provided by this application.
- the communication method may include the following steps 201 to 205.
- dotted lines are used to indicate communication paths.
- Step 201 NERG 104 sends prefix synchronization information to the first ONT 101 .
- NERG 104 as the control point, sends prefix synchronization information to first ONT 101, synchronizing NERG 104's IPv6 address prefix to first ONT 101 through the prefix synchronization information.
- the prefix synchronization information includes NERG 104's IPv6 address prefix, i.e., the IPv6 address prefix of the PPPoE WAN.
- IPv6 address prefix of NERG104's PPPoE WAN is 2005::/56
- interface identifier is 2004::1.
- the IPv6 address prefix of the above NERG104 is 2005::/56.
- NERG 104 is connected to the new city network (such as switch 103) through bridge interface BR0, and thus connected to bridge interface BR0 of the first ONT 101 through the cloud LAN interface (CloudLAN).
- the local link address of bridge interface BR0 of NERG 104 can be fe80::101, and the local link address of bridge interface bro of the first ONT 101 can be fe80::1.
- Step 202 The first ONT 101 receives prefix synchronization information.
- Step 203 The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
- the first ONT 101 After receiving the prefix synchronization information, the first ONT 101 sends the IPv6 address prefix synchronized by the NERG 104 to the first terminal device 107 .
- Step 204 The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG.
- the IPv6 address prefix of the first GPU is the same as the IPv6 address prefix of the second GUA.
- the second GUA is acquired by the second terminal device 109 based on the IPv6 address prefix of the NERG.
- GUA may also be referred to as an IPv6 public network address in the embodiments of this application.
- the first GUA is 2005::111, that is, the IPv6 public network address of the first terminal device 107 is 2005::111.
- Step 205 The first ONT 101 generates a first network segment routing entry.
- the first network segment routing entry is used to implement routing between the first ONT 101 and the NERG 104.
- the destination IP address of the first network segment routing entry is the bridge interface address of the NERG 104.
- the first network segment routing entry is 2005::/56dev BR0.
- the above-mentioned other interface configurations and connection modes of the first ONT 101, NERG 104 and terminal devices do not affect the Layer 2 intercommunication between the terminal device connected to the first ONT 101 and the terminal device connected to the NERG 104, and are therefore only illustrative.
- IPv6 address prefix of the PPPoE WAN interface of the first ONT 101 is 2003::/56, and the interface identifier is 2002::1.
- the DNS server address of the first terminal device 107 is fe80::1, and the gateway address is fe80::1.
- IPv6 address prefix of NERG104's IPoE WAN interface is 2007::/56, and the interface identifier is 2006::1.
- the bridge interface BR0 of NERG104 is connected to the second terminal device 109 through a data center gateway (DC-GW).
- DC-GW data center gateway
- the IPv6 address of the second terminal device 109 is 2005::/101, the DNS server address is fe80::1, and the gateway address is fe80::1.
- NERG104 is connected to the first ONT101 through Newtown Network's EVPN SRv6.
- first terminal device 107 connected to first ONT 101 and second terminal device 109 connected to NERG 104 uniformly use NERG 104's IPv6 address prefix to obtain the GUA.
- NERG04 may also be connected to the second ONT 102 to implement Layer 2 intercommunication among multiple households.
- FIG. 3 is a second flow chart of a communication method provided by the present application.
- the communication method may include the following steps 301 to 310.
- Step 301 NERG 104 sends prefix synchronization information to the first ONT 101 .
- Step 302 The first ONT 101 receives prefix synchronization information.
- Step 303 The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
- Step 304 The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG 104 .
- Step 305 The first ONT 101 generates a first network segment routing entry.
- Step 306 NERG 104 sends prefix synchronization information to the second ONT 102 .
- Step 307 The second ONT 102 receives prefix synchronization information.
- Step 308 The second ONT 102 sends the IPv6 address prefix of the NERG 104 to the third terminal device 108 .
- Step 309 The third terminal device 108 obtains a third GUA based on the IPv6 address prefix of the NERG.
- the second network segment routing entry is used to implement routing between the second ONT 102 and NERG 104.
- the destination IP address of the second network segment routing entry is the bridge interface address of NERG 104.
- the second network segment routing entry is 2005::/56dev BR0.
- the above steps 301 to 305 are the same as steps 201 to 205 shown in FIG. 2 .
- the above steps 306 to 310 differ from steps 201 to 205 shown in FIG. 2 in that the interaction objects are different, which will not be repeated here.
- the other interface configurations and connection modes of the second ONT 102 and the terminal device do not affect the Layer 2 intercommunication between the terminal device connected to the second ONT 102, the terminal device connected to the first ONT 101, and the terminal device connected to the NERG 104, and are therefore only illustrative.
- the IPv6 address prefix of the PPPoE WAN interface of the second ONT 102 is 2013::/56, the interface identifier is 2012::1, and the link-local address of the bridge interface BR0 is fe80::111.
- the IPv6 address of the third terminal device 108 is 2005::222, the DNS server address is fe80::101, and the gateway address is fe80::101.
- NERG104 is connected to the second ONT102 via EVPN SRv6 of New Town Networks.
- NERG 104 as a control point, synchronizes the IPv6 address prefix of NERG 104 to the first ONT 101 and the second ONT 102, so that the terminal devices connected to the first ONT 101 and the second ONT 102 use the same IPv6 address prefix to obtain the GUA. That is, the terminal devices connected to the first ONT 101 and the second ONT 102 obtain the GUA of 2005::X, so that the terminal devices connected to the first ONT 101 and the second ONT 102 can achieve Layer 2 intercommunication at the GUA level.
- the first ONT 101 and the first terminal device 107 and the second terminal device 109 under the NERG 104 can access the Internet normally.
- FIG 4 is a flow chart of a communication method provided by the present application.
- the communication method may include the following steps 401 to 406.
- Step 401 NERG 104 sends prefix synchronization information to the first ONT 101 .
- Step 402 The first ONT 101 receives prefix synchronization information.
- Step 403 The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
- Step 404 The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG 104 .
- Step 405 The first ONT 101 generates a first network segment routing entry.
- steps 401 to 405 are the same as steps 201 to 205 shown in FIG. 2 , and are not described in detail here.
- Step 406 When forwarding the first Internet uplink message through the PPPoE WAN interface, the first ONT 101 performs NPTv6 or NAT66 on the first Internet uplink message.
- the first ONT 101 receives the first Internet uplink message sent by the first terminal device 107, and performs NPTv6 or NAT66 on the first Internet uplink message.
- the first ONT 101 performs NPTv6 on the first Internet uplink message, and transforms the source IP address of the first Internet uplink message into the IPv6 address prefix of the first ONT 101, such as 2003::X.
- the first ONT 101 performs NAT66 on the first Internet uplink message, and transforms the source IP address of the first Internet uplink message into the interface identifier of the first ONT 101, such as 2002::1.
- the Internet uplink message of the second terminal device 109 under NERG104 is directly forwarded by the PPPoE WAN interface of NERG104 without the need for special processing.
- NAT66 is an address translation technology based on IPv6 networks, used to translate the IPv6 address prefix in IPv6 packets into another IPv6 address prefix.
- NAT66 includes two address translation methods: NPTv6 and static NAT66.
- NPTv6 is one of the NAT66 address translation methods. After the source IPv6 address is translated through NPTv6, the IPv6 network prefix is replaced with the new network prefix. Based on the change in prefix before and after translation, a compensation value is added to the interface ID. This technology is generally applicable in scenarios with a high volume of IPv6 traffic and low sensitivity to the translated IP address.
- the second terminal device 109 under the NERG 104 can access applications, wherein the applications may be specific applications such as paid videos and network cloud disks.
- FIG 5 is a fourth flow chart of a communication method provided by the present application.
- the communication method may include the following steps 501 to 505.
- Step 501 NERG 104 configures a second static route.
- the second static route is used to indicate the forwarding path for uplink packets from the second application accessing the application.
- the second static route is 3003::/64dev WAN2.
- Step 502 NERG 104 sends the IPv6 address prefix of NERG 104 to the second terminal device 109 .
- Step 503 The second terminal device 109 obtains a second GUA based on the IPv6 address prefix of the NERG.
- steps 502 and 503 please refer to steps 203 and 204 shown in FIG. 2 , which will not be described in detail here.
- Step 504 The second terminal device 109 sends a second application access uplink message to the NERG 104 .
- Step 505 NERG 104 sends the second application access uplink message based on the second static route, and performs NPTv6 or NAT66 on the second application access uplink message.
- the source IP address when it leaves the IPoE WAN2 interface is changed to 2007::X.
- the source IP address when it leaves the IPoE WAN2 interface is changed to 2006::1.
- the terminal device under the first ONT 101 can achieve backup Internet access through the network of NERG 104, thereby ensuring the stability of the terminal device's access to the Internet.
- FIG. 6 is a flowchart diagram 5 of a communication method provided by this application.
- the communication method may include the following steps 601 to 610.
- Step 601 NERG 104 sends prefix synchronization information to the first ONT 101 .
- Step 602 The first ONT 101 receives prefix synchronization information.
- Step 603 The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
- Step 604 The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG 104 .
- Step 605 The first ONT 101 generates a first network segment routing entry.
- steps 601 to 605 are the same as steps 201 to 205 shown in FIG. 2 , and are not described in detail here.
- Step 606 When the PPPoE WAN interface is in a fault state, the first ONT 101 sends a first fault state synchronization message to NERG 104.
- Step 607 NERG 104 sends a first routing advertisement message to the first terminal device 107 .
- the first routing advertisement message is used to instruct the first terminal device 107 to update the gateway to the gateway of the second terminal device 109 .
- the first route advertisement message includes a first route deletion advertisement message and a first route creation advertisement message.
- NERG 104 first sends a first route deletion notification message to first terminal device 107 to instruct first terminal device 107 to delete the expired routing table entry.
- the lifetime of the first route deletion notification message is 0, and the source IP address is fe80::1.
- NERG 104 then sends a first route creation notification message to first terminal device 107 to instruct first terminal device 107 to create a new routing table entry.
- the lifetime of the first route creation notification message is not 0, and the source IP address is fe80::101.
- Step 608 The first terminal device 107 updates the gateway based on the first routing advertisement message.
- the first terminal device 107 updates the gateway to fe80::101 based on the first routing advertisement message.
- Step 609 The first terminal device 107 sends a second Internet uplink message to the NERG 104 .
- Step 610 NERG104 forwards the second Internet uplink message through the PPPoE WAN interface.
- the DNS server of the first terminal device 107 is still fe80::1, and the initiated DNS resolution is sent to the next-level DNS server fe80::101 for resolution through the fe80::1 proxy.
- the terminal device connected to the first ONT 101 can use the Internet link of NERG 104 as a backup link and access the Internet through NERG 104 to ensure network stability.
- the terminal device under NERG 104 can achieve backup Internet access through the network of the first ONT 101, thereby ensuring the stability of the terminal device's access to the Internet.
- the communication method may include the following steps 701 to 710.
- Step 701 The first ONT 101 synchronizes the gateway to the NERG 104 .
- the first ONT 101 synchronizes the gateway fe80::1 to NERG 104 .
- Step 702 The first ONT 101 generates a second network segment routing entry.
- the second network segment routing entry is used to indicate the forwarding path from the first ONT 101 to the NERG 104.
- the second network segment routing entry is 2005::/64dev BR0.
- Step 703 NERG 104 sends the IPv6 address prefix of NERG 104 to the second terminal device 109 .
- Step 704 The second terminal device 109 obtains a second GUA based on the IPv6 address prefix of the NERG 104 .
- steps 703 and 704 please refer to steps 203 and 204 shown in FIG. 2 , which will not be described in detail here.
- Step 705 When the PPPoE WAN interface is in a fault state, NERG 104 sends a second fault state synchronization message to the first ONT 101.
- NERG104 determines that the PPPoE WAN interface is in a faulty state when the PPPoE WAN interface is in the down state.
- Step 706 The first ONT 101 sends a second notification message to the second terminal device 109 .
- the second route advertisement message includes a second route deletion advertisement message and a second route creation advertisement message.
- first ONT 101 first sends a second route deletion notification message to second terminal device 109, instructing second terminal device 109 to delete the expired route table entry.
- the lifetime of the second route deletion notification message is 0, and the source IP address is fe80::101.
- First ONT 101 then sends a second route creation notification message to second terminal device 109, instructing second terminal device 109 to create a new route table entry.
- the lifetime of the second route creation notification message is not 0, and the source IP address is fe80::1.
- Step 707 The second terminal device 109 updates the gateway based on the second routing advertisement message.
- the second terminal device 109 updates the gateway to fe80::1 based on the first routing advertisement message.
- Step 708 The second terminal device 109 sends a third Internet uplink message to the first ONT 101 .
- Step 709 The first ONT 101 forwards the third Internet uplink message through the PPPoE WAN interface.
- the DNS server of the second terminal device 109 is still fe80::101, and the initiated DNS resolution is sent to the next-level DNS server fe80::1 for resolution through the fe80::101 proxy.
- Step 710 The first ONT 101 performs NPTv6 or NAT66 on the third Internet uplink message.
- the first ONT 101 performs NPTv6 on the third Internet uplink message, and changes the source IP address of the third Internet uplink message to 2003::X.
- the first ONT 101 performs NAT66 on the third Internet uplink message, and changes the source IP address of the third Internet uplink message to 2002::1.
- the terminal device connected to NERG 104 via NAT66 can use the Internet link of the first ONT 101 as a backup link and access the Internet through the first ONT 101, thereby ensuring network stability.
- the terminal device under NERG 104 can achieve backup Internet access through the network of the first ONT 101, thereby ensuring the stability of the terminal device's access to the Internet.
- the first terminal device 107 under the first ONT 101 can access applications, which may be specific applications such as paid videos and network cloud disks.
- the communication method may include the following steps 801 to 808.
- Step 801 The first ONT 101 configures a first static route.
- the outbound port of the first static route is the bridge interface of the first ONT 101
- the next hop address is the bridge interface address of the NERG 104 .
- Step 802 The first ONT 101 receives a first application access uplink message from the first terminal device 107 .
- Step 803 The first ONT 101 sends a first application access uplink message to the NERG 104 based on the second static route.
- first ONT 101 performs special processing on uplink packets from the first application with a destination IP address of 3003::/64.
- the packet's destination MAC address is modified to the MAC address of bridge interface BR0 on NERG 104, so that the packet is forwarded at Layer 2 in first ONT 101. This prevents communication interruption caused by TCP status and MAC learning table errors due to uplink and downlink packets being forwarded at Layer 2 and 3003, respectively.
- Step 804 NERG 104 forwards the first application access uplink message to the application.
- NERG104 When NERG104 forwards the first application access uplink message through IPoE WAN2, it performs NPTv6 or NAT66 on the first application access uplink message.
- Step 805 NERG 104 receives the first application access downlink message.
- Step 806 NERG 104 forwards the first application access downlink message to the first ONT 101 .
- NERG 104 adds a tag to the first application's uplink access message.
- NERG 104 sets the outbound port of the first application's downlink access message to the bridge interface of NERG 104 and the next hop address to the address of the bridge interface of first ONT 101. This prevents communication interruption caused by issues with TCP status and MAC learning entries due to uplink and downlink messages being forwarded at Layer 3 and Layer 2, respectively.
- step 806 If the destination MAC address of the first application access uplink message has been modified in step 803, then in step 806, there is no need to perform special processing on the first application access downlink message according to the tag.
- Step 807 The first ONT 101 receives the first application access downlink message.
- Step 808 The first ONT 101 forwards the first application access downlink message to the first terminal device 107 .
- the present application further provides a communication device 900, which can be used to implement the ONT functions in the above communication method.
- the communication device 900 includes a receiving module 910, a sending module 920, and a processing module 930.
- Receiving module 910 configured to receive a prefix synchronization message sent by a NERG; the prefix synchronization message includes the IPv6 address prefix of the NERG;
- a sending module 920 configured to send the IPv6 address prefix of the NERG to the first terminal device, so that the first terminal device obtains a first GUA based on the IPv6 address prefix of the NERG; the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG;
- the processing module 930 is configured to generate a first network segment routing entry; the destination IP address of the first network segment routing entry is the bridge interface address of NERG.
- the IPv6 address prefix of the NERG is the IPv6 address prefix of the PPPoE WAN interface of the NERG.
- the processing module 930 is further configured to: when forwarding the first Internet uplink message through the PPPoE wide area network interface, perform IPv6-to-IPv6 network prefix translation NPTv6 or IPv6-to-IPv6 network address translation NAT66 on the first Internet uplink message, so that the source IP address of the first Internet uplink message is the address of the first ONT.
- the sending module 920 is also used to: forward the first application access uplink message to the NERG based on the first static route, so that the NERG performs NPTv6 or NAT66 on the first application access uplink message and sends it to the application, the outbound port of the first static route is the bridge interface of the first ONT, and the next hop address is the bridge interface address of the NERG.
- the processing module 930 is further configured to update the destination media access control MAC address of the uplink message accessed by the first application to the MAC address of the bridge interface of the NERG.
- the sending module 920 is also used to: when the PPPoE wide area network interface of the first ONT is in a fault state, send a first fault state synchronization message to the NERG, so that the NERG sends a first route announcement message to the first terminal device, and the first route announcement message is used to instruct the first terminal device to update the gateway to the gateway of the second terminal device; forward the second Internet uplink message of the first terminal device to the NERG, so that the NERG forwards the second Internet uplink message through the PPPoE wide area network interface.
- the DNS server of the first terminal device is proxied by the DNS server of the second terminal device.
- receiving module 910 is further configured to receive a second fault state synchronization message sent by the NERG.
- Sending module 920 is further configured to, in response to the second fault state synchronization message, send a second route advertisement message to the second terminal device, the second route advertisement message being configured to instruct the second terminal device to update its gateway to the gateway of the first terminal device.
- Receiving module 910 is further configured to receive a third Internet uplink message from the second terminal device sent by the NERG.
- Sending module 920 is further configured to forward the third Internet uplink message via the PPPoE WAN interface.
- the second route announcement message includes a second route deletion announcement message and a second route creation announcement message
- the source IP address of the second route deletion announcement message is the bridge interface address of the first NERG
- the source IP address of the second route creation announcement message is the bridge interface address of the ONT.
- the receiving module 910, the sending module 920, and the processing module 930 can all be implemented in software or hardware.
- the implementation of the receiving module 910 will be described below using the receiving module 910 as an example.
- the implementation of the sending module 920 and the processing module 930 can refer to the implementation of the receiving module 910.
- the receiving module 910 may include code running on a computing instance.
- the computing instance may include at least one of a physical host (computing device), a virtual machine, and a container. Furthermore, the computing instance may be one or more.
- the receiving module 910 may include code running on multiple hosts/virtual machines/containers. It should be noted that the multiple hosts/virtual machines/containers used to run the code may be distributed in the same region or in different regions. Furthermore, the multiple hosts/virtual machines/containers used to run the code may be distributed in the same availability zone (AZ) or in different AZs, each AZ including one data center or multiple geographically close data centers. Typically, a region may include multiple AZs.
- AZ availability zone
- VPC virtual private cloud
- multiple hosts/virtual machines/containers running the code can be distributed within the same virtual private cloud (VPC) or across multiple VPCs.
- VPC virtual private cloud
- a VPC is set up within a region. Inter-region communication between two VPCs within the same region, or between VPCs in different regions, requires a communication gateway within each VPC to interconnect the VPCs.
- receiving module 910 may include at least one computing device, such as a server.
- receiving module 910 may be implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD).
- ASIC application-specific integrated circuit
- PLD programmable logic device
- the PLD may be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
- CPLD complex programmable logical device
- FPGA field-programmable gate array
- GAL generic array logic
- the multiple computing devices included in the receiving module 910 can be distributed in the same region or in different regions.
- the multiple computing devices included in the receiving module 910 can be distributed in the same AZ or in different AZs.
- the multiple computing devices included in the receiving module 910 can be distributed in the same VPC or in multiple VPCs.
- the multiple computing devices can be any combination of servers, ASICs, PLDs, CPLDs, FPGAs, GALs, and other computing devices.
- any one of the receiving module 910, the sending module 920, and the processing module 930 can be used to execute any step in the communication method, and the steps that the receiving module 910, the sending module 920, and the processing module 930 are responsible for implementing can be specified as needed.
- the full functions of the communication device 900 are realized by respectively implementing different steps in the communication method through the receiving module 910, the sending module 920, and the processing module 930.
- the present application further provides a communication device 1000 , which can be used to implement the NERG function in the above communication method.
- a sending module 1010 is configured to send a prefix synchronization message to the first ONT, where the prefix synchronization message includes the IPv6 address prefix of the NERG.
- the prefix synchronization message is used to instruct the first ONT to send the IPv6 address prefix to the first terminal device and generate a first network segment routing entry.
- the first terminal device obtains a first GUA based on the IPv6 address prefix of the NERG.
- the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA.
- the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG.
- the destination address of the first network segment routing entry is the bridge interface address of the NERG.
- the sending module 1010 is further used to: send a prefix synchronization message to the second ONT; the prefix synchronization message includes the IPv6 address prefix of the NERG, the prefix synchronization message is used to instruct the second ONT to send the IPv6 address prefix to the third terminal device, and generate a second network segment routing item, the third terminal device obtains a third GUA based on the IPv6 address prefix of the NERG, the IPv6 address prefix of the third GUA is the same as the IPv6 address prefix of the second GUA, the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG, and the destination address of the second network segment routing item is the bridge interface address of the NERG.
- the IPv6 address prefix of the NERG is the IPv6 address prefix of the PPPoE WAN interface of the NERG.
- communication device 1000 further includes a receiving module 1020 configured to receive a first application access uplink message sent by a first ONT based on a first static route, where the outbound port of the first static route is the bridge interface of the first ONT and the next hop address is the bridge interface address of the NERG.
- Transmitting module 1010 is further configured to perform NPTv6 or NAT66 on the first application access uplink message and then transmit it to the application.
- the communication device 1000 also includes a processing module 1030, which is used to: add a mark to the first application access uplink message; when the first application access downlink message sent by the receiving application includes a mark, the outbound port of the first application access downlink message is set to the bridge interface of the NERG, and the next hop address is set to the address of the bridge interface of the first ONT.
- a processing module 1030 which is used to: add a mark to the first application access uplink message; when the first application access downlink message sent by the receiving application includes a mark, the outbound port of the first application access downlink message is set to the bridge interface of the NERG, and the next hop address is set to the address of the bridge interface of the first ONT.
- the receiving module 1020 is further configured to receive a first fault state synchronization message sent by the first ONT.
- the sending module 1010 is further configured to, in response to the first fault state synchronization message, send a first route advertisement message to the first terminal device, the first route advertisement message being used to instruct the first terminal device to update its gateway to the gateway of the second terminal device.
- the receiving module 1020 is further configured to receive a second Internet uplink message from the first ONT for the first terminal device.
- the sending module 1010 is further configured to forward the second Internet uplink message via the PPPoE WAN interface.
- the first route announcement message includes a first route deletion announcement message and a first route creation announcement message
- the source IP address of the first route deletion announcement message is the bridge interface address of the first ONT
- the source IP address of the second route creation announcement message is the bridge interface address of the NERG.
- the sending module 1010 is further used to: when the PPPoE WAN interface of the NERG is in a fault state, send a second fault state synchronization message to the first ONT, so that the first ONT sends a second route announcement message to the second terminal device, and the second route announcement message is used to instruct the second terminal device to update the gateway to the gateway of the first terminal device; forward a third Internet uplink message of the second terminal device to the first ONT, so that the first ONT forwards the third Internet uplink message through the PPPoE WAN interface.
- the sending module 1010 is further configured to: send a second application access uplink message based on a second static route; the egress port of the second static route is the PPPoE WAN interface of the NERG, and the next hop address is the application address.
- the processing module 1030 is further configured to: when sending the second application access uplink message through the PPPoE WAN interface of the NERG, perform NPTv6 or NAT66 on the second application access uplink message.
- the sending module 1010, the receiving module 1020, and the processing module 1030 can all be implemented by software or hardware.
- the implementation of the sending module 1010 is described below.
- the implementation of the receiving module 1020 and the processing module 1030 can refer to the implementation of the sending module 1010.
- the sending module 1010 may include code running on a computing instance.
- the computing instance may be at least one of a physical host (computing device), a virtual machine, a container, and other computing devices.
- the above-mentioned computing device may be one or more.
- the sending module 1010 may include code running on multiple hosts/virtual machines/containers. It should be noted that the multiple hosts/virtual machines/containers used to run the application may be distributed in the same region or in different regions. The multiple hosts/virtual machines/containers used to run the code may be distributed in the same AZ or in different AZs, and each AZ includes one data center or multiple data centers with close geographical locations. Generally, a region may include multiple AZs.
- the multiple hosts/virtual machines/containers running the code can be distributed within the same VPC or across multiple VPCs.
- a VPC is located within a region. Cross-region communication between two VPCs within the same region, or between VPCs in different regions, requires a communication gateway within each VPC to interconnect the VPCs.
- the sending module 1010 may include at least one computing device, such as a server.
- the sending module 1010 may be implemented using an ASIC or a PLD.
- the PLD may be implemented using a CPLD, an FPGA, a GAL, or any combination thereof.
- the multiple computing devices included in the sending module 1010 can be distributed in the same region or in different regions.
- the multiple computing devices included in the sending module 1010 can be distributed in the same AZ or in different AZs.
- the multiple computing devices included in the sending module 1010 can be distributed in the same VPC or in multiple VPCs.
- the multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
- computing device 1100 includes a bus 1102, a processor 1104, a memory 1106, and a communication interface 1108.
- Processor 1104, memory 1106, and communication interface 1108 communicate with each other via bus 1102.
- Computing device 1100 can be a server or a terminal device. It should be understood that this application does not limit the number of processors and memories in computing device 1100.
- Bus 1102 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. Buses can be classified as address buses, data buses, control buses, and the like. For ease of illustration, FIG11 shows only one line, but this does not imply a single bus or type of bus. Bus 1102 may include a path for transmitting information between various components of computing device 1100 (e.g., memory 1106, processor 1104, and communication interface 1108).
- PCI Peripheral Component Interconnect
- EISA Extended Industry Standard Architecture
- Processor 1104 may include any one or more processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
- processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
- CPU central processing unit
- GPU graphics processing unit
- MP microprocessor
- DSP digital signal processor
- the memory 1106 may include volatile memory, such as random access memory (RAM).
- RAM random access memory
- the processor 1104 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).
- ROM read-only memory
- HDD hard disk drive
- SSD solid state drive
- the memory 1106 stores executable program code, and the processor 1104 executes the executable program code to respectively implement the functions of each module included in the aforementioned communication device 900 or communication device 1000, thereby implementing the communication method.
- the memory 1106 stores instructions for executing the communication method.
- the memory 1106 stores executable codes
- the processor 1104 executes the executable codes to implement the functions of the aforementioned ONT or NERG, thereby implementing the communication method. That is, the memory 1106 stores instructions for executing the communication method.
- the communication interface 1108 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 1100 and other devices or a communication network.
- a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 1100 and other devices or a communication network.
- the infrastructure of the communication system 100 typically includes multiple computing devices. Therefore, this application also provides a computing device cluster.
- the computing device cluster includes at least one computing device.
- the computing device can be a server, such as a central server, an edge server, or a local server in a local data center.
- the computing device can also be a terminal device such as a desktop computer, a laptop computer, or a smartphone.
- the computing device cluster includes at least one computing device 1100.
- the memory 1106 of one or more computing devices 1100 in the computing device cluster may store the same instructions for executing the communication method.
- the memory 1106 of one or more computing devices 1100 in the computing device cluster may also store partial instructions for executing the communication method.
- the combination of one or more computing devices 1100 can jointly execute the instructions for executing the communication method.
- the memory 1106 in different computing devices 1100 in the computing device cluster may store different instructions, each for executing part of the functions of the communication device 900 or the communication device 1000.
- the instructions stored in the memory 1106 in different computing devices 1100 may implement the functions of one or more modules included in the communication device 900 or the communication device 1000.
- one or more computing devices in a computing device cluster may be connected via a network.
- the network may be a wide area network (WAN) or a local area network (LAN), among others.
- FIG13 illustrates one possible implementation. As shown in FIG13 , two computing devices 1100A and 1100B are connected via a network. Specifically, the connection to the network is achieved via a communication interface in each computing device.
- the memory 1106 in the computing device 1100A stores instructions for executing the functions of one or more of the receiving module 910, the sending module 920, and the processing module 930.
- FIG13 illustrates an example of the memory 1106 in the computing device 1100A storing instructions for executing the functions of the receiving module 910.
- the memory 1106 in the computing device 1100B stores instructions for executing the functions of one or more of the receiving module 910, the sending module 920, and the processing module 930.
- FIG13 illustrates an example of the memory 1106 in the computing device 1100B storing instructions for executing the functions of the sending module 920 and the processing module 930.
- computing device 1100A shown in FIG13 may also be implemented by multiple computing devices 1100.
- functionality of the computing device 1100B may also be implemented by multiple computing devices 1100.
- Embodiments of the present application also provide a computer program product comprising instructions.
- the computer program product may be software or a program product comprising instructions that can be run on a computing device or stored in any available medium.
- the computer program product When the computer program product is run on at least one computing device, it causes the at least one computing device to perform the communication method provided in any embodiment of the present application, or the steps performed by an ONT or NERG in the communication method.
- the embodiments of the present application also provide a computer-readable storage medium.
- the computer-readable storage medium can be any available medium that can be stored by a computing device or a data storage device such as a data center that contains one or more available media.
- the available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive).
- the computer-readable storage medium includes instructions that instruct the computing device to execute the communication method provided in any embodiment of the present application, or the steps performed by the ONT or NERG in the communication method.
- the above embodiments can be implemented in whole or in part by software, hardware (such as circuits), firmware or any other combination.
- the above embodiments can be implemented in whole or in part in the form of a computer program product.
- the computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer program are loaded or executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part.
- the computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device.
- the computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium.
- the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (such as infrared, wireless, microwave, etc.) method.
- the computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that contains one or more available media sets.
- the available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (for example, a DVD), or a semiconductor medium.
- the semiconductor medium can be a solid-state drive.
- the disclosed systems, devices and methods can be implemented in other ways.
- the device embodiments described above are merely schematic.
- the division of the units is merely a logical function division.
- Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
- the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium.
- the computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application.
- the aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk, or an optical disk.
- At least one means one or more, and “more” means two or more.
- “And/or” describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and/or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character “/” generally indicates that the previous and next associated objects are in an “or” relationship. "At least one of the following items” or similar expressions refers to any combination of these items, including any combination of single items or plural items.
- At least one of a, b or c can mean: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b and c can be single or multiple.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本申请要求于2024年03月08日提交国家知识产权局、申请号为202410269946.1、申请名称为“通信方法、装置及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority to the Chinese patent application filed with the State Intellectual Property Office on March 8, 2024, with application number 202410269946.1 and application name “Communication Methods, Devices and Systems”, the entire contents of which are incorporated by reference into this application.
本申请涉及通信领域,尤其涉及一种通信方法、装置及系统。The present application relates to the field of communications, and in particular to a communication method, device, and system.
基于逻辑拓扑结构的区别,网络结构包括二层网络和三层网络。二层网络包括核心层和接入层,其工作流程可以概括为交换机根据媒体访问控制(media access control,MAC)地址表进行数据包转发。三层网络与二层网络的区别在于增加了汇聚层,汇聚层是网络接入层和核心层的中介。二层网络仅仅通过MAC寻址即可实现通信,三层网络需要通过互联网协议(internet protocol,IP)路由实现跨网段的通信,可以跨多个冲突域。Based on the differences in logical topology, network structures are divided into Layer 2 and Layer 3 networks. A Layer 2 network consists of a core layer and an access layer. Its workflow can be summarized as switches forwarding packets based on the media access control (MAC) address table. A Layer 3 network differs from a Layer 2 network in the addition of a convergence layer, which acts as an intermediary between the access layer and the core layer. While Layer 2 networks rely solely on MAC addressing for communication, Layer 3 networks require Internet Protocol (IP) routing for cross-segment communication, including across multiple collision domains.
由于二层网络的架构更简单,且动态主机配置协议(dynamic host configuration protocol,DHCP)等技术通常应用于二层网络中,用户可以基于二层网络进行互联,例如多家庭基于二层网络进行组网。Because the architecture of the Layer 2 network is simpler and technologies such as Dynamic Host Configuration Protocol (DHCP) are often used in Layer 2 networks, users can interconnect based on the Layer 2 network, for example, multiple families can be networked based on the Layer 2 network.
在互联网协议第6版(internet protocol version 6,IPv6)网络中,多家庭IPv6二层组网通常是使用虚拟扩展局域网(virtual extensible local area network,VxLAN)等二层隧道技术实现互通。但二层隧道技术较为复杂,需要运营商在上层网络进行特殊资源部署和配置。In Internet Protocol version 6 (IPv6) networks, multi-home IPv6 Layer 2 networking typically uses Layer 2 tunneling technologies, such as virtual extensible local area network (VxLAN), to achieve interoperability. However, Layer 2 tunneling technology is complex and requires operators to deploy and configure special resources in the upper layer network.
本申请提供一种通信方法、装置及系统,由此降低了用户的二层网络互通的复杂度。The present application provides a communication method, device and system, thereby reducing the complexity of users' Layer 2 network intercommunication.
第一方面,本申请提供一种通信方法,应用于第一光网络终端(optical network terminal,光网络终端),第一ONT与网络增强型住宅网关(network enhanced residential gateway,NERG)连接,第一ONT与第一终端设备连接,NERG与第二终端设备连接。在该通信方法的流程中,第一ONT接收到NERG发送的前缀同步消息时,向第一终端设备发送前缀同步消息包含的NERG的IPv6地址前缀,使第一终端设备基于NERG的IPv6地址前缀获取第一全球单播地址(global unicast address,GUA)。第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的。然后,第一ONT生成第一网段路由项,第一网段路由项的目的IP地址为NERG的网桥接口地址。In a first aspect, the present application provides a communication method, which is applied to a first optical network terminal (ONT), wherein the first ONT is connected to a network enhanced residential gateway (NERG), the first ONT is connected to a first terminal device, and the NERG is connected to a second terminal device. In the process of the communication method, when the first ONT receives a prefix synchronization message sent by the NERG, it sends the IPv6 address prefix of the NERG contained in the prefix synchronization message to the first terminal device, so that the first terminal device obtains a first global unicast address (GUA) based on the IPv6 address prefix of the NERG. The IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG. Then, the first ONT generates a first network segment routing item, and the destination IP address of the first network segment routing item is the bridge interface address of the NERG.
其中,第一GUA和第二GUA也可称为IPv6公网地址。The first GUA and the second GUA may also be referred to as IPv6 public network addresses.
基于上述通信方法,将NERG作为IPv6网络控制点,第一ONT连接的第一终端设备和NERG连接的第二终端设备统一使用NERG的IPv6地址前缀获取GUA,使接入第一ONT的终端设备和接入NERG的终端设备的GUA具有相同的IPv6地址前缀,属于同一网段,所以接入第一ONT的终端设备和接入NERG的终端设备可以直接学习对方的邻居表,实现二层网络互通。如此,相对于传统二层网络方案需要运营商在上层网络进行特殊资源部署和配置,降低了二层网络互通的复杂度。Based on the above communication method, using NERG as the IPv6 network control point, the first terminal device connected to the first ONT and the second terminal device connected to the NERG uniformly use the NERG's IPv6 address prefix to obtain the GUA. This ensures that the GUAs of the terminal device connected to the first ONT and the terminal device connected to the NERG have the same IPv6 address prefix and belong to the same network segment. Therefore, the terminal device connected to the first ONT and the terminal device connected to the NERG can directly learn each other's neighbor table, achieving Layer 2 network interoperability. This reduces the complexity of Layer 2 network interoperability compared to traditional Layer 2 network solutions that require operators to deploy and configure special resources in the upper layer network.
作为一种可能的实现方式,NERG的IPv6地址前缀为NERG的基于以太网的点对点通讯协议(point-to-point protocol over ethernet,PPPoE)广域网(wide area network,WAN)接口的IPv6地址前缀。如此,第一终端设备和第二终端设备的IPv6地址前缀与NERG的默认互联网接口即PPPoE WAN接口的IPv6地址前缀同步,便于第一终端设备和第二终端设备访问互联网。As one possible implementation, the NERG's IPv6 address prefix is the IPv6 address prefix of the NERG's Point-to-Point Protocol over Ethernet (PPPoE) wide area network (WAN) interface. This allows the first and second terminal devices to synchronize their IPv6 address prefixes with the IPv6 address prefix of the NERG's default Internet interface, the PPPoE WAN interface, facilitating Internet access for the first and second terminal devices.
作为一种可能的实现方式,第一ONT在通过自身的PPPoE广域网接口转发第一互联网上行报文时,对第一互联网上行报文进行IPv6-to-IPv6网络前缀转换(IPv6-to-IPv6 network prefix translation,NPTv6)或IPv6-to-IPv6网络地址转换(IPv6-to-IPv6 network address translation,NAT66)。As a possible implementation manner, when forwarding the first Internet uplink message through its own PPPoE WAN interface, the first ONT performs IPv6-to-IPv6 network prefix translation (NPTv6) or IPv6-to-IPv6 network address translation (NAT66) on the first Internet uplink message.
可选地,第一ONT在连接互联网的PPPoE WAN接口上开启NPTv6功能或NAT66功能,第一互联网上行报文经过第一ONT的PPPoE WAN接口转发时需要做NPTv6变换或NAT66变换,否则第一互联网上行报文对应的第一互联网下行报文会因为没有到第一ONT的IPv6地址前缀对应路由项而无法到达第一ONT。Optionally, the first ONT enables an NPTv6 function or a NAT66 function on a PPPoE WAN interface connected to the Internet. When the first Internet uplink packet is forwarded through the PPPoE WAN interface of the first ONT, an NPTv6 conversion or a NAT66 conversion is required. Otherwise, the first Internet downlink packet corresponding to the first Internet uplink packet cannot reach the first ONT because there is no routing entry corresponding to the IPv6 address prefix to the first ONT.
可选地,NERG连接的第二终端设备的互联网上行报文由NERG连接互联网的PPPoE WAN接口转发,无需特殊处理即可正常访问互联网。Optionally, the Internet uplink message of the second terminal device connected to the NERG is forwarded by the PPPoE WAN interface of the NERG connected to the Internet, and the Internet can be accessed normally without special processing.
基于上述实现方式,在接入第一ONT的终端设备和接入NERG的终端设备能够实现二层网络互通的基础上,对第一ONT连接互联网的PPPoE WAN接口上开启NPTv6功能或NAT66功能,实现了终端设备基于正常通道访问互联网。Based on the above implementation, while the terminal device connected to the first ONT and the terminal device connected to the NERG can achieve Layer 2 network intercommunication, the NPTv6 function or NAT66 function is enabled on the PPPoE WAN interface of the first ONT connected to the Internet, allowing the terminal device to access the Internet through a normal channel.
作为一种可能的实现方式,第一ONT基于第一静态路由向NERG转发第一应用访问上行报文。NERG将第一应用访问上行报文进行NPTv6或NAT66后发送至应用。第一静态路由的出端口为第一ONT的网桥接口,下一跳地址述NERG的网桥接口地址。如此,第一终端设备的第一应用访问上行报文能够基于静态路由的配置到达指定的应用,实现第一ONT下用户对应用的访问。As one possible implementation, the first ONT forwards the first application access uplink message to the NERG based on the first static route. The NERG performs NPTv6 or NAT66 on the first application access uplink message and then sends it to the application. The outbound port of the first static route is the bridge interface of the first ONT, and the next hop address is the bridge interface address of the NERG. In this way, the first application access uplink message from the first terminal device can reach the designated application based on the static route configuration, enabling user access to the application on the first ONT.
可选地,第一ONT将第一应用访问上行报文的MAC地址更新为ERG的网桥接口的MAC地址。如此,第一应用访问上行报文在第一ONT上基于二层网络转发,解决了第一ONT上行至应用的第一应用访问上行报文基于三层网络转发,第一应用访问上行报文对应的下行报文基于二层网络转发,传输控制协议(transmission control protocol,TCP)状态、MAC学习表项存在问题,导致通讯中断的问题。Optionally, the first ONT updates the MAC address of the first application's uplink access message to the MAC address of the ERG's bridge interface. This allows the first application's uplink access message to be forwarded on the first ONT over the Layer 2 network. This resolves the issue of communication interruption caused by issues with the Transmission Control Protocol (TCP) state and MAC learning entries when the first application's uplink access message from the first ONT to the application is forwarded over the Layer 3 network and the corresponding downlink message is forwarded over the Layer 2 network.
作为一种可能的实现方式,第一ONT在自身的PPPoE WAN接口处于故障状态时,向NERG发送第一故障状态同步消息,使NERG向第一终端设备发送第一路由通告报文,第一路由通告报文用于指示第一终端设备将网关更新为第二终端设备的网关。第一ONT向NERG转发第一终端设备的第二互联网上行报文,使NERG通过PPPoE广域网接口转发第二互联网上行报文。如此,在第一ONT无法连接互联网时,第一ONT连接的第一终端设备可以将NERG的互联网链路作为备份链路,通过NERG备份上网,保证了网络稳定性。As one possible implementation, when the first ONT's PPPoE WAN interface fails, it sends a first failure state synchronization message to the NERG, instructing the NERG to send a first route advertisement message to the first terminal device. The first route advertisement message instructs the first terminal device to update its gateway to the gateway of the second terminal device. The first ONT then forwards the first terminal device's second Internet uplink message to the NERG, which then forwards the second Internet uplink message via the PPPoE WAN interface. This allows the first terminal device connected to the first ONT to use the NERG's Internet link as a backup link when the first ONT loses Internet access, ensuring network stability.
可选地,第一终端设备的域名系统服务器由第二终端设备的域名系统服务器代理。Optionally, the domain name system server of the first terminal device is proxied by the domain name system server of the second terminal device.
作为一种可能的实现方式,第一ONT接收NERG发送的第二故障状态同步消息,响应于第二故障状态同步消息,向第二终端设备发送第二路由通告报文,第二路由通告报文用于指示第二终端设备将网关更新为第一终端设备的网关。如此,在NERG无法连接互联网时,NERG连接的第二终端设备可以将第一ONT的互联网链路作为备份链路,通过第一ONT备份上网,保证了网络稳定性。As one possible implementation, the first ONT receives a second fault state synchronization message sent by the NERG and, in response to the second fault state synchronization message, sends a second route advertisement message to the second terminal device. The second route advertisement message instructs the second terminal device to update its gateway to the gateway of the first terminal device. In this way, if the NERG loses internet access, the second terminal device connected to the NERG can use the first ONT's internet link as a backup link and access the internet through the first ONT, thereby ensuring network stability.
可选地,第二路由通告报文包括第二路由删除通告报文和第二路由创建通告报文。第二路由删除通告报文的源IP地址为第一NERG的网桥接口地址。第二路由创建通告报文的源IP地址为ONT的网桥接口地址。Optionally, the second route advertisement message includes a second route deletion advertisement message and a second route creation advertisement message. The source IP address of the second route deletion advertisement message is the bridge interface address of the first NERG. The source IP address of the second route creation advertisement message is the bridge interface address of the ONT.
第二方面,本申请提供一种通信方法,应用于NERG,NERG与第一ONT连接,第一ONT与第一终端设备连接,NERG与第二终端设备连接。在该通信方法的流程中,NERG向第一ONT发送前缀同步消息,第一ONT响应于前缀同步消息向第一终端设备发送NERG的IPv6地址前缀以及生成第一网段路由项。第一终端设备基于NERG的IPv6地址前缀获取第一GUA。第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的,第一网段路由项的目的地址为NERG的网桥接口地址。In a second aspect, the present application provides a communication method, applied to a NERG, wherein the NERG is connected to a first ONT, the first ONT is connected to a first terminal device, and the NERG is connected to a second terminal device. In the process of the communication method, the NERG sends a prefix synchronization message to the first ONT. In response to the prefix synchronization message, the first ONT sends the NERG's IPv6 address prefix to the first terminal device and generates a first network segment routing entry. The first terminal device obtains a first GUA based on the NERG's IPv6 address prefix. The IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA. The second GUA is obtained by the second terminal device based on the NERG's IPv6 address prefix. The destination address of the first network segment routing entry is the bridge interface address of the NERG.
作为一种可能的实现方式,NERG还与第二ONT连接,第二ONT与第三终端设备连接。在该通信方法中,NERG向第二ONT发送前缀同步消息,第二ONT响应于前缀同步消息向第三终端设备发送NERG的IPv6地址前缀,第三终端设备基于NERG的IPv6地址前缀获取第三GUA,生成第二网段路由项。第三GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的,第二网段路由项的目的地址为NERG的网桥接口地址。如此,NERG连接的多个ONT下的终端设备可以统一使用NERG的IPv6地址前缀获取GUA,使接入第一ONT的终端设备、接入第二ONT的终端设备和接入NERG的终端设备的GUA具有相同的IPv6地址前缀,属于同一网段,可以直接学习对方的邻居表,实现了多家庭终端设备的大二层网络互通。As a possible implementation, the NERG is also connected to a second ONT, and the second ONT is connected to a third terminal device. In this communication method, the NERG sends a prefix synchronization message to the second ONT. The second ONT responds to the prefix synchronization message by sending the NERG's IPv6 address prefix to the third terminal device. The third terminal device obtains a third GUA based on the NERG's IPv6 address prefix and generates a second network segment routing entry. The IPv6 address prefix of the third GUA is the same as the IPv6 address prefix of the second GUA. The second GUA is obtained by the second terminal device based on the NERG's IPv6 address prefix. The destination address of the second network segment routing entry is the bridge interface address of the NERG. In this way, terminal devices under multiple ONTs connected to the NERG can uniformly use the NERG's IPv6 address prefix to obtain the GUA. This ensures that the GUAs of terminal devices connected to the first ONT, the second ONT, and the NERG have the same IPv6 address prefix and belong to the same network segment. They can directly learn each other's neighbor tables, thus achieving large-scale Layer 2 network interoperability among multiple home terminal devices.
作为一种可能的实现方式,NERG的IPv6地址前缀为NERG的PPPoE WAN接口的IPv6地址前缀。As a possible implementation, the IPv6 address prefix of NERG is the IPv6 address prefix of NERG's PPPoE WAN interface.
作为一种可能的实现方式,NERG接收第一ONT基于第一静态路由发送的第一应用访问上行报文,将第一应用访问上行报文进行NPTv6或NAT66后发送至应用。其中,第一静态路由的出端口为第一ONT的网桥接口,下一跳地址为NERG的网桥接口地址。As a possible implementation, the NERG receives a first application access uplink message sent by the first ONT based on the first static route, performs NPTv6 or NAT66 on the first application access uplink message, and then sends it to the application. The outbound port of the first static route is the bridge interface of the first ONT, and the next hop address is the bridge interface address of the NERG.
作为一种可能的实现方式,NERG在接收到第一ONT发送的第一应用访问上行报文时,对第一应用访问上行报文添加标记,在接收到应用返回的第一应用访问下行报文包括标记时,将第一应用访问下行报文的出端口设置为NERG的网桥接口,下一跳地址设置为第一ONT的网桥接口的地址。如此,第一终端设备的第一应用访问上行报文能够基于静态路由的配置到达指定的应用,应用返回的第一应用访问下行报文也能被发送至第一ONT,实现第一ONT下用户对应用的访问。As one possible implementation, upon receiving a first application access uplink message from the first ONT, the NERG adds a tag to the first application access uplink message. Upon receiving a first application access downlink message returned by the application containing the tag, the NERG sets the outbound port of the first application access downlink message to the NERG's bridge interface and the next hop address to the address of the first ONT's bridge interface. This allows the first application access uplink message from the first terminal device to reach the designated application based on the static routing configuration, and the first application access downlink message returned by the application can also be sent to the first ONT, enabling users on the first ONT to access the application.
作为一种可能的实现方式,NERG接收第一ONT发送的第一故障状态同步消息,响应于第一故障状态同步消息,向第一终端设备发送第一路由通告报文,第一路由通告报文用于指示第一终端设备将网关更新为第二终端设备的网关。然后,NERG接收第一ONT发送的第一终端设备的第二互联网上行报文,并通过PPPoE WAN接口转发第二互联网上行报文。As one possible implementation, the NERG receives a first fault status synchronization message from the first ONT and, in response to the first fault status synchronization message, sends a first route advertisement message to the first terminal device. The first route advertisement message is used to instruct the first terminal device to update its gateway to the gateway of the second terminal device. The NERG then receives a second Internet uplink message from the first ONT for the first terminal device and forwards the second Internet uplink message via the PPPoE WAN interface.
可选地,第一路由通告报文包括第一路由删除通告报文和第一路由创建通告报文。第一路由删除通告报文的源IP地址为第一ONT的网桥接口地址。第二路由创建通告报文的源IP地址为NERG的网桥接口地址。Optionally, the first route advertisement message includes a first route deletion advertisement message and a first route creation advertisement message. The source IP address of the first route deletion advertisement message is the bridge interface address of the first ONT. The source IP address of the second route creation advertisement message is the bridge interface address of the NERG.
作为一种可能的实现方式,在NERG的PPPoE WAN接口处于故障状态时,NERG向第一ONT发送第二故障状态同步消息,使第一ONT向第二终端设备发送第二路由通告报文,第二路由通告报文用于指示第二终端设备将网关更新为第一终端设备的网关。然后,NERG向第一ONT转发第二终端设备的第三互联网上行报文,使第一ONT通过PPPoE广域网接口转发第三互联网上行报文。As one possible implementation, when the NERG's PPPoE WAN interface is in a faulty state, the NERG sends a second fault state synchronization message to the first ONT, causing the first ONT to send a second route advertisement message to the second terminal device. The second route advertisement message instructs the second terminal device to update its gateway to the gateway of the first terminal device. The NERG then forwards a third Internet uplink message from the second terminal device to the first ONT, causing the first ONT to forward the third Internet uplink message via the PPPoE WAN interface.
可选地,NERG基于第二静态路由发送第二应用访问上行报文。第二静态路由的出端口为NERG的PPPoE WAN接口,下一跳地址为应用的地址。Optionally, the NERG sends the second application access uplink message based on a second static route. The outbound port of the second static route is the NERG's PPPoE WAN interface, and the next hop address is the application address.
可选地,NERG在通过NERG的PPPoE WAN接口发送第二应用访问上行报文时,将第二应用访问上行报文进行NPTv6或NAT66。Optionally, when NERG sends the second application access uplink message through the PPPoE WAN interface of NERG, NERG performs NPTv6 or NAT66 on the second application access uplink message.
第二方面与第一方面区别在于执行主体不同,第二方面可以结合第一方面所述的任一种可能的实现方式,在此不再赘述。The second aspect differs from the first aspect in that the execution entity is different. The second aspect can be combined with any possible implementation method described in the first aspect, which will not be repeated here.
第三方面,本申请提供一种通信装置,包括接收模块、发送模块和处理模块。接收模块用于接收NERG发送的前缀同步消息;前缀同步消息包括NERG的IPv6地址前缀。发送模块用于向第一终端设备发送NERG的IPv6地址前缀,使第一终端设备基于NERG的IPv6地址前缀获取第一全球单播地址GUA;第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的。处理模块用于生成第一网段路由项;第一网段路由项的目的IP地址为NERG的网桥接口地址。In a third aspect, the present application provides a communication device, comprising a receiving module, a sending module, and a processing module. The receiving module is used to receive a prefix synchronization message sent by NERG; the prefix synchronization message includes the IPv6 address prefix of NERG. The sending module is used to send the IPv6 address prefix of NERG to a first terminal device, so that the first terminal device obtains a first global unicast address GUA based on the IPv6 address prefix of NERG; the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of NERG. The processing module is used to generate a first network segment routing item; the destination IP address of the first network segment routing item is the bridge interface address of NERG.
作为一种可能的实现方式,通信装置还可以包括执行第一方面的通信方法的操作步骤的其他模块。As a possible implementation manner, the communication device may further include other modules that execute the operation steps of the communication method of the first aspect.
第四方面,本申请提供一种通信装置,包括发送模块。发送模块用于向第一ONT发送前缀同步消息,以及生成第一网段路由项;前缀同步消息包括NERG的IPv6地址前缀,使第一ONT向第一终端设备发送NERG的IPv6地址前缀,第一终端设备基于NERG的IPv6地址前缀获取第一GUA,第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的,第一网段路由项的目的地址为NERG的网桥接口地址。In a fourth aspect, the present application provides a communication device, comprising a sending module. The sending module is configured to send a prefix synchronization message to a first ONT and generate a first network segment routing entry; the prefix synchronization message includes the IPv6 address prefix of the NERG, causing the first ONT to send the IPv6 address prefix of the NERG to a first terminal device; the first terminal device obtains a first GUA based on the IPv6 address prefix of the NERG, the IPv6 address prefix of the first GUA being the same as the IPv6 address prefix of a second GUA, the second GUA being obtained by the second terminal device based on the IPv6 address prefix of the NERG; and the destination address of the first network segment routing entry being the bridge interface address of the NERG.
作为一种可能的实现方式,通信装置还可以包括执行第二方面所述的通信方法的操作步骤的其他模块。As a possible implementation manner, the communication device may further include other modules for executing the operation steps of the communication method described in the second aspect.
第五方面,本申请提供一种通信系统,包括第一ONT和NERG,第一ONT与NERG连接,第一ONT与第一终端设备连接,NERG与第二终端设备连接。NERG用于向第一ONT发送前缀同步消息,前缀同步消息包括NERG的IPv6地址前缀。第一ONT用于接收NERG发送的前缀同步消息。第一ONT还用于向第一终端设备发送NERG的IPv6地址前缀,使第一终端设备基于NERG的IPv6地址前缀获取第一全球单播地址GUA,第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的。第一ONT还用于生成第一网段路由项,第一网段路由项的目的IP地址为NERG的网桥接口地址。In a fifth aspect, the present application provides a communication system, comprising a first ONT and a NERG, wherein the first ONT is connected to the NERG, the first ONT is connected to a first terminal device, and the NERG is connected to a second terminal device. The NERG is used to send a prefix synchronization message to the first ONT, wherein the prefix synchronization message includes the IPv6 address prefix of the NERG. The first ONT is used to receive the prefix synchronization message sent by the NERG. The first ONT is also used to send the IPv6 address prefix of the NERG to the first terminal device, so that the first terminal device obtains a first global unicast address GUA based on the IPv6 address prefix of the NERG, wherein the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG. The first ONT is also used to generate a first network segment routing item, wherein the destination IP address of the first network segment routing item is the bridge interface address of the NERG.
关于第二方面、第三方面、第四方面、第五方面的技术原理和有益效果,可以参考前述第一方面的相关描述,在此不再赘述。Regarding the technical principles and beneficial effects of the second, third, fourth and fifth aspects, please refer to the relevant description of the first aspect mentioned above and will not be repeated here.
第六方面,提供一种计算设备,包括处理器和存储器。处理器用于执行计算设备的存储器中存储的指令,以使得计算设备执行上述第一方面中任意一种可能的实施方式所述的通信方法。In a sixth aspect, a computing device is provided, comprising a processor and a memory. The processor is configured to execute instructions stored in the memory of the computing device, so that the computing device executes the communication method described in any possible implementation of the first aspect.
第七方面,提供一种计算设备集群,包括至少一个计算设备,每个计算设备包括处理器和存储器。至少一个计算设备的处理器用于执行至少一个计算设备的存储器中存储的指令,以使得计算设备集群执行上述第二方面中任意一种可能的实施方式所述的通信方法。In a seventh aspect, a computing device cluster is provided, comprising at least one computing device, each computing device including a processor and a memory. The processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster performs the communication method described in any possible implementation of the second aspect.
第八方面,提供一种计算机程序产品。该计算机程序产品包括计算机程序或指令,当该计算机程序或指令在计算设备上运行时,使得该计算设备执行上述第一方面中任意一种可能的实施方式所述的通信方法。In an eighth aspect, a computer program product is provided, which includes a computer program or instructions, and when the computer program or instructions are executed on a computing device, causes the computing device to execute the communication method described in any possible implementation of the first aspect.
第九方面,提供一种计算机程序产品。该计算机程序产品包括计算机程序或指令,当该计算机程序或指令在计算设备集群上运行时,使得该计算设备集群执行上述第二方面中任意一种可能的实施方式所述的通信方法。In a ninth aspect, a computer program product is provided, comprising a computer program or instructions, which, when executed on a computing device cluster, causes the computing device cluster to execute the communication method described in any possible implementation of the second aspect.
第十方面,提供一种计算机可读存储介质。该可读存储介质包括:计算机程序或指令;当该计算机程序或指令在计算设备上运行时,使得该计算设备执行上述第一方面中任意一种可能的实施方式所述的通信方法。In a tenth aspect, a computer-readable storage medium is provided. The computer-readable storage medium includes a computer program or instructions that, when executed on a computing device, causes the computing device to execute the communication method described in any possible implementation of the first aspect.
第十一方面,提供一种计算机可读存储介质。该可读存储介质包括:计算机程序或指令;当该计算机程序或指令在计算设备集群上运行时,使得该计算设备集群执行上述第二方面中任意一种可能的实施方式所述的通信方法。In an eleventh aspect, a computer-readable storage medium is provided. The computer-readable storage medium includes a computer program or instructions that, when executed on a computing device cluster, causes the computing device cluster to execute the communication method described in any possible implementation of the second aspect.
图1为本申请提供的一种通信系统的架构示意图;FIG1 is a schematic diagram of the architecture of a communication system provided by the present application;
图2为本申请提供的一种通信方法的流程示意图一;FIG2 is a flow chart of a communication method provided by the present application;
图3为本申请提供的一种通信方法的流程示意图二;FIG3 is a second flow chart of a communication method provided by the present application;
图4为本申请提供的一种通信方法的流程示意图三;FIG4 is a third flow chart of a communication method provided by the present application;
图5为本申请提供的一种通信方法的流程示意图四;FIG5 is a fourth flow chart of a communication method provided by the present application;
图6为本申请提供的一种通信方法的流程示意图五;FIG6 is a flow chart of a communication method provided by the present application;
图7为本申请提供的一种通信方法的流程示意图六;FIG7 is a sixth flow chart of a communication method provided by the present application;
图8为本申请提供的一种通信方法的流程示意图七;FIG8 is a flow chart of a communication method provided by the present application;
图9为本申请提供的一种通信装置的结构示意图;FIG9 is a schematic structural diagram of a communication device provided by the present application;
图10为本申请提供的又一种通信装置的结构示意图;FIG10 is a schematic structural diagram of another communication device provided by the present application;
图11为本申请提供的一种计算设备的结构示意图;FIG11 is a schematic diagram of the structure of a computing device provided by the present application;
图12为本申请提供的一种计算设备集群的结构示意图;FIG12 is a schematic diagram of the structure of a computing device cluster provided by this application;
图13为本申请提供的一种计算设备间通过网络连接的结构示意图。FIG13 is a schematic diagram of a structure of a network connection between computing devices provided by the present application.
本申请实施例提供的通信方法能够应用在通信领域中的光网络终端组网场景中。下面对本申请可能涉及的技术进行简单介绍。The communication method provided in the embodiment of the present application can be applied to optical network terminal networking scenarios in the field of communications. The following is a brief introduction to the technologies that may be involved in this application.
(1)互联网协议第6版(1) Internet Protocol Version 6
互联网协议第6版的英文缩写可以是IPv6,IPv6相对于互联网协议第4版(Internet Protocol version 4,IPv4)不仅仅扩大了地址空间,还提供了更多的功能和改进。其中包括改进的安全性、可靠性和寿命,更简单的地址分配方式,更快的路由处理能力以及对于移动设备的更好支持。IPv6还支持流标签(flow label)和服务质量(quality of service),这使得网络的流量管理更加灵活和高效。Internet Protocol version 6, abbreviated as IPv6, not only expands the address space but also offers additional features and improvements over Internet Protocol version 4 (IPv4). These include improved security, reliability, and longevity, simpler address allocation, faster routing, and better support for mobile devices. IPv6 also supports flow labels and quality of service, making network traffic management more flexible and efficient.
IPv6地址的长度为128位,由八个16位字段组成,相邻字段用冒号分隔。IPv6地址中的每个字段都必须包含一个十六进制数字。IPv6地址包括IPv6地址前缀和接口标识符。IPv6地址前缀是地址中具有固定值的位数部分或表示网络标识的位数部分。IPv6的子网标识、路由器和地址范围前缀表示法与IPv4采用的无类别域间路由(classless inter-domain routing,CIDR)标记法相同,其前缀可书写为:地址/前缀长度。例如21DA:D3::/48是一个路由器前缀,而21DA:D3:0:2F3B::/64是一个子网前缀。若多个设备的IPv6地址具有相同IPv6地址前缀,则多个设备可以直接学习对方的邻居表,实现二层网络互通。An IPv6 address is 128 bits long and consists of eight 16-bit fields, with adjacent fields separated by colons. Each field in an IPv6 address must contain a hexadecimal number. An IPv6 address consists of an IPv6 address prefix and an interface identifier. The IPv6 address prefix is the portion of the address with a fixed value or the portion of the address that identifies the network. The IPv6 notation for subnet identifiers, routers, and address range prefixes is the same as the Classless Inter-Domain Routing (CIDR) notation used by IPv4. The prefix can be written as: address/prefix length. For example, 21DA:D3::/48 is a router prefix, while 21DA:D3:0:2F3B::/64 is a subnet prefix. If multiple devices have the same IPv6 address prefix, they can directly learn each other's neighbor tables, enabling Layer 2 network interoperability.
IPv6地址是独立接口的标识符,所有的IPv6地址都被分配到接口,而非节点。由于每个接口都属于某个特定节点,因此节点的任意一个接口地址都可用来标识一个节点。IPv6有三种类型地址:单播(unicast)、任播(anycast)和组播(multicast)。其中,单播用于确认单独接口的一个地址。发往单播地址的数据包被发送到该地址所确认的接口。按照数据包的可到达性,单播支持全球单播地址、站点本地单播地址(site-local unicast addresses)和链路本地单播地址(link-local unicast addresses)。GUA是能够全球到达和确认的地址,其IPv6地址前缀由一个全球选路前缀、一个子网ID组成,接口标识符是一个接口ID(identify)。上述其他单播地址以及任播、组播的具体地址类型在此不再赘述。An IPv6 address is an identifier for a single interface. All IPv6 addresses are assigned to interfaces, not nodes. Since each interface belongs to a specific node, any interface address of a node can be used to identify a node. IPv6 has three types of addresses: unicast, anycast, and multicast. Unicast is used to identify an address on a single interface. Packets sent to a unicast address are sent to the interface identified by that address. Based on packet reachability, unicast supports global unicast addresses, site-local unicast addresses, and link-local unicast addresses. A GUA is an address that can be reached and identified globally. Its IPv6 address prefix consists of a global routing prefix and a subnet ID, and the interface identifier is an interface ID (identify). The other unicast addresses mentioned above, as well as the specific address types of anycast and multicast, are not discussed here.
(2)光网络终端(2) Optical Network Terminal
光网络终端又称ONT,俗称光猫,是接入网络中为家庭用户提供网络的设备,可以提供高速上网、IPTV、语音、Wi-Fi等业务。ONT可以理解为光网络单元(optical network unit,ONU),ONT可以被视为属于ONU的一部分。An optical network terminal, also known as an ONT or optical modem, is a device that provides access to the internet for home users, offering services such as high-speed internet access, IPTV, voice, and Wi-Fi. An ONT can be understood as an optical network unit (ONU), and can be considered a part of the ONU.
ONT和ONU的区别在于:ONT是光网络终端,直接位于用户端;ONU是光网络单元,与用户间还可能有其它的网络,例如ONU下面可以接入x数字用户线(x digital subscriber line,xDSL)或者以太网接入口的网关设备,之后再接入到ONU。The difference between ONT and ONU is that ONT is an optical network terminal, which is directly located at the user end; ONU is an optical network unit, which may have other networks between it and the user. For example, the ONU can be connected to an x digital subscriber line (xDSL) or Ethernet access point gateway device, which can then be connected to the ONU.
ONU是无源光纤网络(passive optical network,PON)中的用户侧设备,通常放置在用户端。ONU负责将接收到的光信号转换为电信号,并将其传输给用户设备(例如电脑、电视或电话等)。An ONU is a user-side device in a passive optical network (PON), typically located at the user's end. The ONU converts received optical signals into electrical signals and transmits them to user devices such as computers, televisions, or phones.
ONT是ONU的一部分,在ONU的基础上提供更多的功能,如语音、数据或视频等业务。ONT可以直接与用户终端设备连接,为用户提供网络服务,或作为家庭网关使用。The ONT is a component of the ONU, providing additional functionality such as voice, data, or video services. The ONT can connect directly to user terminals to provide network services or function as a home gateway.
(3)边缘云(3) Edge Cloud
边缘云是分布在网络边缘侧,提供实时数据处理、分析决策的小规模云数据中心,而私有云和共有云都依靠一个大规模的云服务器运作。Edge cloud is a small-scale cloud data center distributed at the edge of the network that provides real-time data processing, analysis and decision-making. Both private cloud and public cloud rely on a large-scale cloud server to operate.
边缘云的核心是基于云计算,主要依托的是边缘计算能力,以边缘基础设施构建的一个平台。与中心云和物联网终端形成三角协议架构,通过将网络下发,存储、计算,智能化数据分析等工作任务,放在边缘云处理器上处理,降低响应时延、减轻总云端压力、降低网络成本,并供计算机资源的分发、调度资源等云服务。The core of the edge cloud is cloud computing, primarily relying on edge computing capabilities. It's a platform built on edge infrastructure. Forming a triangular architecture with the central cloud and IoT terminals, it offloads network dispatch, storage, computing, and intelligent data analysis tasks to edge cloud processors, reducing response latency, alleviating overall cloud pressure, and lowering network costs. It also provides cloud services such as computer resource distribution and scheduling.
(4)叶脊网络架构(Spine-Leaf)(4) Spine-Leaf
随着云计算技术在数据中心的广泛应用,传统数据中心三层网络架构已经无法满足新业务对网络承载的要求。云数据中心物理网络架构需要从传统的三层网络架构向基于无阻塞多级交换网络的两层Spine-Leaf组网架构演进,在网络架构、路由组织和自动化管控等方面满足大规模组网能力下的弹性扩缩、高效转发和高可靠性等需求。With the widespread adoption of cloud computing technology in data centers, the traditional three-tier data center network architecture is no longer able to meet the network carrying requirements of new services. The physical network architecture of cloud data centers needs to evolve from the traditional three-tier architecture to a two-tier spine-leaf network based on a non-blocking multi-stage switching network. This architecture, routing organization, and automated management and control must meet the requirements of elastic scalability, efficient forwarding, and high reliability for large-scale networking.
在Spine-Leaf架构中,Spine(脊)是网络核心节点,提供高速IP转发能力,通过高速接口连接各个功能Leaf节点,Leaf(叶节点)是网络功能接入节点,提供各种网络设备接入功能。Spine和Leaf交换机之间采用三层路由接口互联,可以选择开放式最短路径优先(open shortest path first,OSPF)或外部边界网关协议(external border gateway protocol,EBGP)实现Underlay网络三层互联,通过跨设备链路聚合技术和等价多路径(equal-cost multipath routing,ECMP)实现多路径转发和链路快速切换,支持无阻塞转发、横向弹性扩展和网络可靠性。In the Spine-Leaf architecture, the Spine is the core network node, providing high-speed IP forwarding capabilities and connecting to various functional Leaf nodes via high-speed interfaces. Leaf nodes are network function access nodes, providing access to various network devices. Spine and Leaf switches are interconnected using Layer 3 routing interfaces, with the choice of Open Shortest Path First (OSPF) or External Border Gateway Protocol (EBGP) for Layer 3 underlay network interconnection. Cross-device link aggregation technology and equal-cost multipath routing (ECMP) enable multipath forwarding and fast link switching, supporting non-blocking forwarding, horizontal elastic expansion, and network reliability.
本申请提供一种通信方法,尤其是一种“将NERG作为控制中枢进行IPv6地址前缀同步的通信方法”。首先,NERG向第一ONT发送包含NERG的IPv6地址前缀的前缀同步消息,以指示第一ONT向自身连接的第一终端设备发送NERG的IPv6地址前缀,使第一终端设备基于NERG的IPv6地址前缀获取第一GUA。其中,第一GUA的IPv6地址前缀和第二GUA的IPv6地址前缀相同,第二GUA是NERG连接的第二终端设备基于NERG的IPv6地址前缀获取的。然后,第一ONT生成第一网段路由项,第一网段路由项的目的IP地址为NERG的网桥接口地址。The present application provides a communication method, in particular, a "communication method for synchronizing IPv6 address prefixes using NERG as a control center." First, NERG sends a prefix synchronization message containing NERG's IPv6 address prefix to the first ONT to instruct the first ONT to send NERG's IPv6 address prefix to the first terminal device connected to itself, so that the first terminal device obtains a first GUA based on NERG's IPv6 address prefix. The IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device connected to NERG based on NERG's IPv6 address prefix. Then, the first ONT generates a first network segment routing item, and the destination IP address of the first network segment routing item is the bridge interface address of NERG.
如此,将NERG作为IPv6网络控制点,第一ONT连接的第一终端设备和NERG连接的第二终端设备统一使用NERG的IPv6地址前缀获取GUA,使接入第一ONT的终端设备和接入NERG的终端设备的GUA具有相同的IPv6地址前缀,属于同一网段,所以接入第一ONT的终端设备和接入NERG的终端设备可以直接学习对方的邻居表,实现二层网络互通。如此,相对于传统二层网络方案需要运营商在上层网络进行特殊资源部署和配置,降低了二层网络互通的复杂度。In this way, using NERG as the IPv6 network control point, the first terminal device connected to the first ONT and the second terminal device connected to the NERG uniformly use the NERG's IPv6 address prefix to obtain the GUA. This ensures that the GUAs of the terminal device connected to the first ONT and the terminal device connected to the NERG have the same IPv6 address prefix and belong to the same network segment. Therefore, the terminal device connected to the first ONT and the terminal device connected to the NERG can directly learn each other's neighbor table, achieving Layer 2 network interoperability. This reduces the complexity of Layer 2 network interoperability compared to traditional Layer 2 network solutions that require operators to deploy and configure special resources in the upper layer network.
下面将结合附图对本申请实施例的实施方式进行详细描述。The implementation of the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
图1为本申请提供的一种通信系统的架构示意图。如图1所示,通信系统100包括第一ONT101、第二ONT102、交换机103、NERG104、交换机110、交换机105和边缘云106。第一ONT101、第二ONT102通过交换机103与NERG104连接,第一ONT101、第二ONT102还通过交换机110连接互联网,NERG104通过交换机105与边缘云106连接。Figure 1 is a schematic diagram of the architecture of a communication system provided by this application. As shown in Figure 1, communication system 100 includes a first ONT 101, a second ONT 102, a switch 103, a NERG 104, a switch 110, a switch 105, and an edge cloud 106. The first ONT 101 and the second ONT 102 are connected to the NERG 104 via the switch 103. The first ONT 101 and the second ONT 102 are also connected to the Internet via the switch 110. The NERG 104 is connected to the edge cloud 106 via the switch 105.
首先,对NERG104的结构,以及对NERG104如何连接第一ONT101、第二ONT102以及边缘云106进行说明。First, the structure of NERG 104 and how NERG 104 connects to the first ONT 101 , the second ONT 102 , and the edge cloud 106 are described.
NERG104可以是在边缘云网关(edge cloud gateway,ECGW)上虚拟出的网关。NERG104可以具有DHCP server功能、域名系统(domain name system,DNS)代理功能以及PPPoE客户端功能等。NERG 104 can be a virtual gateway on an edge cloud gateway (ECGW). NERG 104 can have DHCP server functions, domain name system (DNS) proxy functions, and PPPoE client functions.
作为一种可能的实现方式,ECGW虚拟化为U面和C面,C面负责建立和管理转发业务数据的通道,U面负责转发用户的业务数据。As a possible implementation method, ECGW is virtualized into the U-plane and the C-plane. The C-plane is responsible for establishing and managing channels for forwarding service data, and the U-plane is responsible for forwarding user service data.
ECGW的C面包括NERG104,NERG104包括L2控制面和L3控制面。L2控制面包括第一局域网(local area network)接口(LAN1)、第二局域网接口(LAN2)。L3控制面包括第二广域网接口(WAN2)、第三广域网接口(WAN3)。NERG104还可以包括第一广域网接口(WAN1)。The C-plane of the ECGW includes NERG 104, which includes an L2 control plane and an L3 control plane. The L2 control plane includes a first local area network interface (LAN1) and a second local area network interface (LAN2). The L3 control plane includes a second wide area network interface (WAN2) and a third wide area network interface (WAN3). NERG 104 may also include a first wide area network interface (WAN1).
可选地,上述NERG104可以是基于Kubernetes(k8s)容器化实现的虚拟设备,可以由Kubernetes客户端(client)进行管理。Optionally, the NERG 104 may be a virtual device implemented based on Kubernetes (k8s) containerization and may be managed by a Kubernetes client.
NERG104的LAN1通过U面与交换机103连接,从而与第一ONT101桥接。The LAN 1 of the NERG 104 is connected to the switch 103 via a U-plane, thereby being bridged to the first ONT 101 .
例如,NERG104的LAN1通过以太网虚拟专用网络(ethernet virtual private network,EVPN)SRv6(segment routing IPv6)与交换机103对接,从而与第一ONT101的网桥接口连接。其中,LAN1可以采用基于虚拟局域网(virtual local area network,VLAN)的QinQ(802.1Q-in-802.1Q)技术。For example, LAN 1 of NERG 104 is connected to switch 103 via Ethernet virtual private network (EVPN) SRv6 (segment routing IPv6), thereby connecting to the bridge interface of first ONT 101. LAN 1 may utilize QinQ (802.1Q-in-802.1Q) technology based on a virtual local area network (VLAN).
NERG104的LAN2通过U面与交换机103连接,从而与第二ONT102桥接。The LAN 2 of the NERG 104 is connected to the switch 103 via the U-plane, thereby being bridged to the second ONT 102 .
例如,NERG104的LAN2通过EVPN SRv6与交换机103对接,从而与第二ONT102的网桥接口连接。其中,LAN2可以采用QinQ VLAN技术。For example, LAN2 of NERG 104 is connected to switch 103 via EVPN SRv6, and is thus connected to the bridge interface of the second ONT 102. LAN2 can use QinQ VLAN technology.
在上述场景中,交换机103可以被视为Spine-Leaf架构中的A-Leaf。交换机103通过EVPN SRv6的TAG模式与LAN1对接,交换机103通过EVPN SRv6的RAW模式与LAN2对接。In the preceding scenario, switch 103 can be considered an A-Leaf node in the spine-leaf architecture. Switch 103 connects to LAN 1 using EVPN SRv6 in TAG mode, and connects to LAN 2 using EVPN SRv6 in RAW mode.
NERG104的WAN1通过U面与交换机110连接,从而与连接互联网。WAN1 of NERG 104 is connected to switch 110 via the U interface, thereby connecting to the Internet.
例如,NERG104的WAN1通过EVPN SRv6与交换机110对接,从而通过交换机110接入互联网。其中,WAN1可以采用QinQ VLAN技术。For example, WAN1 of NERG104 is connected to switch 110 through EVPN SRv6, thereby accessing the Internet through switch 110. WAN1 can use QinQ VLAN technology.
在上述场景中,交换机110可以被视为Spine-Leaf架构中的S-Leaf。交换机110通过EVPN SRv6的TAG模式与WAN1对接。In the preceding scenario, switch 110 can be considered an S-Leaf in the Spine-Leaf architecture. Switch 110 connects to WAN1 using EVPN SRv6 in TAG mode.
NERG104通过U面与交换机105连接,从而与边缘云106连接。NERG 104 is connected to the switch 105 via the U-plane, and thus connected to the edge cloud 106 .
例如,NERG104的WAN2通过虚拟路由转发(virtual routing andr orwarding,VRF)与交换机105对接,从而与边缘云106连接。其中,WAN2可以采用Smart VLAN技术。For example, WAN2 of NERG 104 is connected to switch 105 through virtual routing and forwarding (VRF), thereby connecting to edge cloud 106. WAN2 can use Smart VLAN technology.
又如,NERG104的WAN3通过EVPN VxLAN与交换机105对接,从而与边缘云106连接。其中,WAN3可以采用QinQ VLAN技术。For example, WAN3 of NERG 104 is connected to switch 105 through EVPN VxLAN, thereby connecting to edge cloud 106. WAN3 can use QinQ VLAN technology.
在上述场景中,交换机105可以是TOR(top of rack)交换机。交换机105通过EVPN VxLAN的RAW模式与WAN2对接。In the above scenario, switch 105 can be a TOR (top of rack) switch. Switch 105 is connected to WAN2 through EVPN VxLAN RAW mode.
在本申请可能的实施例中,NERG104可以按用户对第一ONT101、第二ONT102进行隔离,或者ECGW为每个用户虚拟化出一个NERG。In a possible embodiment of the present application, the NERG 104 may isolate the first ONT 101 and the second ONT 102 according to users, or the ECGW may virtualize a NERG for each user.
然后,对第一ONT101、第二ONT102的具体连接方式进行说明。Next, a specific connection method of the first ONT 101 and the second ONT 102 is described.
第一ONT101通过网桥接口与交换机103连接,从而与NERG104桥接。The first ONT 101 is connected to the switch 103 via a bridge interface, thereby being bridged to the NERG 104 .
例如,第一ONT101通过网桥接口BR0与交换机103连接,从而通过交换机103对接至NERG104的LAN1。For example, the first ONT 101 is connected to the switch 103 via the bridge interface BR0 , and is thus connected to the LAN 1 of the NERG 104 via the switch 103 .
第一ONT101通过PPPoE接口与交换机103连接,从而通过交换机103与交换机110连接,通过交换机110接入互联网。The first ONT 101 is connected to the switch 103 through the PPPoE interface, and is then connected to the switch 110 through the switch 103 , and accesses the Internet through the switch 110 .
例如,第一ONT101通过PPPoE接口与交换机103连接,从而以EVPN SRv6的TAG模式与交换机110连接,交换机110接入互联网。For example, the first ONT 101 is connected to the switch 103 through the PPPoE interface, and is thereby connected to the switch 110 in the TAG mode of EVPN SRv6, and the switch 110 is connected to the Internet.
第二ONT102通过网桥接口与交换机103连接,从而与NERG104桥接。The second ONT 102 is connected to the switch 103 via a bridge interface, thereby being bridged to the NERG 104 .
例如,第二ONT102通过网桥接口BR0与交换机103连接,从而通过交换机103对接至NERG104的LAN2。For example, the second ONT 102 is connected to the switch 103 via the bridge interface BR0 , and is thus connected to the LAN 2 of the NERG 104 via the switch 103 .
第二ONT102通过PPPoE接口与交换机103连接,从而通过交换机103与交换机110连接,通过交换机110接入互联网。The second ONT 102 is connected to the switch 103 through the PPPoE interface, and is thereby connected to the switch 110 through the switch 103 , and is accessed to the Internet through the switch 110 .
例如,第二ONT102通过PPPoE接口与交换机103连接,从而以EVPN SRv6的TAG模式与交换机110连接,交换机110接入互联网。For example, the second ONT 102 is connected to the switch 103 through the PPPoE interface, and is thereby connected to the switch 110 in the TAG mode of EVPN SRv6, and the switch 110 is connected to the Internet.
在上述场景中,第一ONT101和第二ONT102可以是分别为两个家庭提供接入功能。第一ONT101下接入的设备包括第一终端设备107,例如地址为192.168.16.3的电视以及地址为192.168.16.2的电脑等。第二ONT102下接入的设备包括第三终端设备108,例如地址为192.168.17.2的电视以及地址为192.168.17.5的电脑等。In the above scenario, first ONT 101 and second ONT 102 can provide access functions for two households respectively. Devices connected to first ONT 101 include first terminal device 107, such as a TV with an address of 192.168.16.3 and a computer with an address of 192.168.16.2. Devices connected to second ONT 102 include third terminal device 108, such as a TV with an address of 192.168.17.2 and a computer with an address of 192.168.17.5.
接下来,对边缘云106进行说明。Next, the edge cloud 106 will be described.
边缘云106可以包括一个或多个边缘云服务。边缘云服务可以是由宿主机虚拟化得到的,边缘云服务可以视为与NERG104连接的第二终端设备109。The edge cloud 106 may include one or more edge cloud services. The edge cloud services may be virtualized from the host machine, and the edge cloud services may be considered as the second terminal device 109 connected to the NERG 104 .
边缘云106可以包括边缘云专有型服务,例如边缘云业务实例(地址为192.168.31.8的云网络附属存储(network attached storage,NAS)),边缘云专有型服务通过交换机105与NERG104的WAN2对接,从而与家庭组成大二层网络。The edge cloud 106 may include edge cloud-specific services, such as an edge cloud business instance (network attached storage (NAS) with an address of 192.168.31.8). The edge cloud-specific services are connected to WAN2 of NERG104 through the switch 105, thereby forming a large Layer 2 network with the home.
边缘云106可以包括边缘云共享型服务,例如地址为29.18.7.8的智算,边缘云专有型服务通过交换机105与NERG104的WAN3对接,WAN3地址为29.18.7.7,从而支持三层网络访问。The edge cloud 106 may include edge cloud shared services, such as intelligent computing with an address of 29.18.7.8. The edge cloud proprietary services are connected to WAN3 of NERG104 through the switch 105. The WAN3 address is 29.18.7.7, thereby supporting three-layer network access.
值得注意的是,图1只是示意图,不应理解为对本申请的限定,该通信系统100的结构中还可以包括其他模块,在图1中未画出。例如,交换机103(或交换机110,或交换机105)是一个网络设备,也可以是一个或多个网络设备(交换机、路由器或网关等)连接而成。It should be noted that FIG1 is merely a schematic diagram and should not be construed as limiting the present application. The communication system 100 may also include other modules not shown in FIG1. For example, the switch 103 (or switch 110, or switch 105) is a network device, or may be formed by connecting one or more network devices (switches, routers, gateways, etc.).
接下来结合附图对本实施例提供的通信方法进行具体描述。The communication method provided by this embodiment will be described in detail below with reference to the accompanying drawings.
本申请提供的通信方法的步骤是由通信系统100中的多个设备执行,例如第一ONT101、第二ONT102、NERG104和边缘云106。接下来结合图2,对本申请实施例提供的通信方法进行说明。The steps of the communication method provided in the present application are executed by multiple devices in the communication system 100, such as the first ONT 101, the second ONT 102, the NERG 104 and the edge cloud 106. Next, the communication method provided in the embodiment of the present application is described with reference to FIG2.
请参考图2,图2为本申请提供的一种通信方法的流程示意图一。该通信方法可以包括如下步骤201-步骤205。上述图2,以及本申请后续实施例中的图示中虚线用于指示通信通路。Please refer to Figure 2, which is a flow chart of a communication method provided by this application. The communication method may include the following steps 201 to 205. In Figure 2 above and in the subsequent embodiments of this application, dotted lines are used to indicate communication paths.
步骤201、NERG104向第一ONT101发送前缀同步信息。Step 201 : NERG 104 sends prefix synchronization information to the first ONT 101 .
NERG104作为控制点向第一ONT101发送前缀同步信息,通过前缀同步信息将NERG104的IPv6地址前缀同步至第一ONT101。前缀同步信息包括NERG104的IPv6地址前缀,即PPPoE WAN的IPv6地址前缀。NERG 104, as the control point, sends prefix synchronization information to first ONT 101, synchronizing NERG 104's IPv6 address prefix to first ONT 101 through the prefix synchronization information. The prefix synchronization information includes NERG 104's IPv6 address prefix, i.e., the IPv6 address prefix of the PPPoE WAN.
例如,NERG104的PPPoE WAN的IPv6地址前缀为2005::/56,接口标识符为2004::1,上述NERG104的IPv6地址前缀为2005::/56。For example, the IPv6 address prefix of NERG104's PPPoE WAN is 2005::/56, and the interface identifier is 2004::1. The IPv6 address prefix of the above NERG104 is 2005::/56.
作为一种可能的实现方式,NERG104通过网桥接口BR0与新城网络(如交换机103等)连接,从而通过云局域网接口(CloudLAN)与第一ONT101的网桥接口BR0对接。其中,NERG104的网桥接口BR0的本地链路地址可以为fe80::101,第一ONT101的网桥接口bro的本地链路地址可以为fe80::1。As a possible implementation, NERG 104 is connected to the new city network (such as switch 103) through bridge interface BR0, and thus connected to bridge interface BR0 of the first ONT 101 through the cloud LAN interface (CloudLAN). The local link address of bridge interface BR0 of NERG 104 can be fe80::101, and the local link address of bridge interface bro of the first ONT 101 can be fe80::1.
步骤202、第一ONT101接收前缀同步信息。Step 202: The first ONT 101 receives prefix synchronization information.
步骤203、第一ONT101向第一终端设备107发送NERG104的IPv6地址前缀。Step 203 : The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
第一ONT101在接收到前缀同步信息后,向第一终端设备107发送NERG104同步的IPv6地址前缀。After receiving the prefix synchronization information, the first ONT 101 sends the IPv6 address prefix synchronized by the NERG 104 to the first terminal device 107 .
步骤204、第一终端设备107基于NERG的IPv6地址前缀获取第一GUA。Step 204: The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG.
第一GPU的IPv6地址前缀与第二GUA的IPv6地址前缀相同。第二GUA是第二终端设备109基于NERG的IPv6地址前缀获取的。The IPv6 address prefix of the first GPU is the same as the IPv6 address prefix of the second GUA. The second GUA is acquired by the second terminal device 109 based on the IPv6 address prefix of the NERG.
作为一种可能的实现方式,GUA在本申请的实施例中也可以称为IPv6公网地址。As a possible implementation manner, GUA may also be referred to as an IPv6 public network address in the embodiments of this application.
例如,第一GUA为2005::111,即第一终端设备107的IPv6公网地址为2005::111。For example, the first GUA is 2005::111, that is, the IPv6 public network address of the first terminal device 107 is 2005::111.
步骤205、第一ONT101生成第一网段路由项。Step 205: The first ONT 101 generates a first network segment routing entry.
第一网段路由项用于实现第一ONT101和NERG104之间的路由。第一网段路由项的目的IP地址为NERG104的网桥接口地址。例如,第一网段路由项为2005::/56dev BR0。The first network segment routing entry is used to implement routing between the first ONT 101 and the NERG 104. The destination IP address of the first network segment routing entry is the bridge interface address of the NERG 104. For example, the first network segment routing entry is 2005::/56dev BR0.
在本申请可能的实施例中,上述第一ONT101、NERG104以及终端设备的其他接口配置以及连接方式不影响接入第一ONT101的终端设备和接入NERG104的终端设备的二层互通,因此只进行示例性说明。In a possible embodiment of the present application, the above-mentioned other interface configurations and connection modes of the first ONT 101, NERG 104 and terminal devices do not affect the Layer 2 intercommunication between the terminal device connected to the first ONT 101 and the terminal device connected to the NERG 104, and are therefore only illustrative.
第一ONT101的PPPoE WAN接口的IPv6地址前缀为2003::/56,接口标识符为2002::1。The IPv6 address prefix of the PPPoE WAN interface of the first ONT 101 is 2003::/56, and the interface identifier is 2002::1.
第一终端设备107的DNS服务器地址为fe80::1,网关地址为fe80::1。The DNS server address of the first terminal device 107 is fe80::1, and the gateway address is fe80::1.
NERG104的IPoE WAN接口的IPv6地址前缀为2007::/56,接口标识符为2006::1。The IPv6 address prefix of NERG104's IPoE WAN interface is 2007::/56, and the interface identifier is 2006::1.
NERG104的网桥接口BR0通过数据中心网关(data center-gateway,DC-GW)与第二终端设备109连接。The bridge interface BR0 of NERG104 is connected to the second terminal device 109 through a data center gateway (DC-GW).
第二终端设备109的IPv6地址为2005::/101,DNS服务器地址为fe80::1,网关地址为fe80::1。The IPv6 address of the second terminal device 109 is 2005::/101, the DNS server address is fe80::1, and the gateway address is fe80::1.
NERG104通过新城网络的EVPN SRv6与第一ONT101连接。NERG104 is connected to the first ONT101 through Newtown Network's EVPN SRv6.
如此,将NERG04作为IPv6网络控制点,第一ONT101连接的第一终端设备107和NERG104连接的第二终端设备109统一使用NERG104的IPv6地址前缀获取GUA,使接入第一ONT101的终端设备和接入NERG104的终端设备的GUA具有相同的IPv6地址前缀,属于同一网段。因此,接入第一ONT101的终端设备和接入NERG104的终端设备可以直接学习对方的邻居表,实现二层网络互通。如此,相对于传统二层网络方案需要运营商在上层网络进行特殊资源部署和配置,降低了二层网络互通的复杂度。In this way, with NERG04 as the IPv6 network control point, first terminal device 107 connected to first ONT 101 and second terminal device 109 connected to NERG 104 uniformly use NERG 104's IPv6 address prefix to obtain the GUA. This ensures that the GUAs of terminal devices connected to first ONT 101 and NERG 104 have the same IPv6 address prefix and belong to the same network segment. Therefore, terminal devices connected to first ONT 101 and NERG 104 can directly learn each other's neighbor tables, achieving Layer 2 network interoperability. This reduces the complexity of Layer 2 network interoperability compared to traditional Layer 2 network solutions that require operators to deploy and configure special resources in the upper layer network.
在本申请实施例提供的如图2所示的通信方法的基础上,NERG04还可以与第二ONT102连接,以实现多家庭的二层互通。Based on the communication method shown in FIG. 2 provided in the embodiment of the present application, NERG04 may also be connected to the second ONT 102 to implement Layer 2 intercommunication among multiple households.
请参考图3,图3为本申请提供的一种通信方法的流程示意图二。该通信方法可以包括如下步骤301-步骤310。Please refer to Figure 3, which is a second flow chart of a communication method provided by the present application. The communication method may include the following steps 301 to 310.
步骤301、NERG104向第一ONT101发送前缀同步信息。Step 301 : NERG 104 sends prefix synchronization information to the first ONT 101 .
步骤302、第一ONT101接收前缀同步信息。Step 302: The first ONT 101 receives prefix synchronization information.
步骤303、第一ONT101向第一终端设备107发送NERG104的IPv6地址前缀。Step 303 : The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
步骤304、第一终端设备107基于NERG104的IPv6地址前缀获取第一GUA。Step 304 : The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG 104 .
步骤305、第一ONT101生成第一网段路由项。Step 305: The first ONT 101 generates a first network segment routing entry.
步骤306、NERG104向第二ONT102发送前缀同步信息。Step 306 : NERG 104 sends prefix synchronization information to the second ONT 102 .
步骤307、第二ONT102接收前缀同步信息。Step 307: The second ONT 102 receives prefix synchronization information.
步骤308、第二ONT102向第三终端设备108发送NERG104的IPv6地址前缀。Step 308 : The second ONT 102 sends the IPv6 address prefix of the NERG 104 to the third terminal device 108 .
步骤309、第三终端设备108基于NERG的IPv6地址前缀获取第三GUA。Step 309: The third terminal device 108 obtains a third GUA based on the IPv6 address prefix of the NERG.
步骤310、第一ONT101生成第二网段路由项。Step 310: The first ONT 101 generates a second network segment routing entry.
第二网段路由项用于实现第二ONT102和NERG104之间的路由。第二网段路由项的目的IP地址为NERG104的网桥接口地址。例如,第二网段路由项为2005::/56dev BR0。The second network segment routing entry is used to implement routing between the second ONT 102 and NERG 104. The destination IP address of the second network segment routing entry is the bridge interface address of NERG 104. For example, the second network segment routing entry is 2005::/56dev BR0.
上述步骤301-步骤305与图2所示的步骤201-步骤205相同,上述步骤306-步骤310与图2所示的步骤201-步骤205区别在于交互对象不同,在此不在赘述。The above steps 301 to 305 are the same as steps 201 to 205 shown in FIG. 2 . The above steps 306 to 310 differ from steps 201 to 205 shown in FIG. 2 in that the interaction objects are different, which will not be repeated here.
在本申请可能的实施例中,上述第二ONT102以及终端设备的其他接口配置以及连接方式不影响接入第二ONT102的终端设备、接入第一ONT101的终端设备以及接入NERG104的终端设备的二层互通,因此只进行示例性说明。In a possible embodiment of the present application, the other interface configurations and connection modes of the second ONT 102 and the terminal device do not affect the Layer 2 intercommunication between the terminal device connected to the second ONT 102, the terminal device connected to the first ONT 101, and the terminal device connected to the NERG 104, and are therefore only illustrative.
第二ONT102的PPPoE WAN接口的IPv6地址前缀为2013::/56,接口标识符为2012::1,网桥接口BR0的本地链路地址为fe80::111。The IPv6 address prefix of the PPPoE WAN interface of the second ONT 102 is 2013::/56, the interface identifier is 2012::1, and the link-local address of the bridge interface BR0 is fe80::111.
第三终端设备108的IPv6地址为2005::222,DNS服务器地址为fe80::101,网关地址为fe80::101。The IPv6 address of the third terminal device 108 is 2005::222, the DNS server address is fe80::101, and the gateway address is fe80::101.
NERG104通过新城网络的EVPN SRv6与第二ONT102连接。NERG104 is connected to the second ONT102 via EVPN SRv6 of New Town Networks.
如此,NERG104作为控制点,将NERG104的IPv6地址前缀统一同步给第一ONT101、第二ONT102,使第一ONT101、第二ONT102各自连接的终端设备统一使用相同的IPv6地址前缀获取GUA,即第一ONT101、第二ONT102各自连接的终端设备获取到2005::X的GUA,使第一ONT101、第二ONT102各自连接的终端设备在GUA层面实现二层互通。In this way, NERG 104, as a control point, synchronizes the IPv6 address prefix of NERG 104 to the first ONT 101 and the second ONT 102, so that the terminal devices connected to the first ONT 101 and the second ONT 102 use the same IPv6 address prefix to obtain the GUA. That is, the terminal devices connected to the first ONT 101 and the second ONT 102 obtain the GUA of 2005::X, so that the terminal devices connected to the first ONT 101 and the second ONT 102 can achieve Layer 2 intercommunication at the GUA level.
在本申请实施例提供的如图2所示的通信方法的基础上,第一ONT101与NERG104下的第一终端设备107和第二终端设备109能够正常访问互联网。Based on the communication method shown in FIG. 2 provided in the embodiment of the present application, the first ONT 101 and the first terminal device 107 and the second terminal device 109 under the NERG 104 can access the Internet normally.
请参考图4,图4为本申请提供的一种通信方法的流程示意图三。该通信方法可以包括如下步骤401-步骤406。Please refer to Figure 4, which is a flow chart of a communication method provided by the present application. The communication method may include the following steps 401 to 406.
步骤401、NERG104向第一ONT101发送前缀同步信息。Step 401 : NERG 104 sends prefix synchronization information to the first ONT 101 .
步骤402、第一ONT101接收前缀同步信息。Step 402: The first ONT 101 receives prefix synchronization information.
步骤403、第一ONT101向第一终端设备107发送NERG104的IPv6地址前缀。Step 403 : The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
步骤404、第一终端设备107基于NERG104的IPv6地址前缀获取第一GUA。Step 404 : The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG 104 .
步骤405、第一ONT101生成第一网段路由项。Step 405: The first ONT 101 generates a first network segment routing entry.
上述步骤401-步骤405与图2所示的步骤201-步骤205相同,在此不在赘述。The above steps 401 to 405 are the same as steps 201 to 205 shown in FIG. 2 , and are not described in detail here.
步骤406、第一ONT101在通过PPPoE WAN接口转发第一互联网上行报文时,对第一互联网上行报文进行NPTv6或NAT66。Step 406: When forwarding the first Internet uplink message through the PPPoE WAN interface, the first ONT 101 performs NPTv6 or NAT66 on the first Internet uplink message.
第一ONT101接收第一终端设备107发送的第一互联网上行报文,对第一互联网上行报文进行NPTv6或NAT66。The first ONT 101 receives the first Internet uplink message sent by the first terminal device 107, and performs NPTv6 or NAT66 on the first Internet uplink message.
例如,第一ONT101对第一互联网上行报文进行NPTv6,将第一互联网上行报文的源IP地址变换为第一ONT101的IPv6地址前缀,如2003::X。For example, the first ONT 101 performs NPTv6 on the first Internet uplink message, and transforms the source IP address of the first Internet uplink message into the IPv6 address prefix of the first ONT 101, such as 2003::X.
又如,第一ONT101对第一互联网上行报文进行NAT66,将第一互联网上行报文的源IP地址变换为第一ONT101的接口标识符,如2002::1。For another example, the first ONT 101 performs NAT66 on the first Internet uplink message, and transforms the source IP address of the first Internet uplink message into the interface identifier of the first ONT 101, such as 2002::1.
在本申请可能的实施例中,NERG104下的第二终端设备109的互联网上行报文直接由NERG104的PPPoE WAN接口转发,无需特殊处理。In a possible embodiment of the present application, the Internet uplink message of the second terminal device 109 under NERG104 is directly forwarded by the PPPoE WAN interface of NERG104 without the need for special processing.
其中,NAT66是基于IPv6网络的地址转换技术,用于将IPv6报文中的IPv6地址前缀转换为另一个IPv6地址前缀。NAT66包括NPTv6和静态NAT66两种地址转换方式。NPTv6是NAT66的其中一种地址转换方式。源IPv6地址经过NPTv6转换后,IPv6的网络前缀会被新的网络前缀替换。根据转换前后前缀的变化,将前缀变化的补偿值加到接口ID上。一般适用于在IPv6数量较多且对转换后的IP地址不敏感的场景。NAT66 is an address translation technology based on IPv6 networks, used to translate the IPv6 address prefix in IPv6 packets into another IPv6 address prefix. NAT66 includes two address translation methods: NPTv6 and static NAT66. NPTv6 is one of the NAT66 address translation methods. After the source IPv6 address is translated through NPTv6, the IPv6 network prefix is replaced with the new network prefix. Based on the change in prefix before and after translation, a compensation value is added to the interface ID. This technology is generally applicable in scenarios with a high volume of IPv6 traffic and low sensitivity to the translated IP address.
如此,解决了ONT连接的终端设备的互联网上行报文对应的下行报文会因为没有到ONT的IPv6地址前缀对应路由项而无法到达ONT的问题,使ONT连接的终端设备能够正常访问互联网。This solves the problem that the downlink message corresponding to the Internet uplink message of the terminal device connected to the ONT cannot reach the ONT because there is no routing entry corresponding to the IPv6 address prefix to the ONT, allowing the terminal device connected to the ONT to access the Internet normally.
在本申请实施例提供的如图2所示的通信方法的基础上,NERG104下的第二终端设备109能够访问应用。其中,应用可以是付费视频、网络云盘等特定应用。Based on the communication method shown in FIG2 provided in the embodiment of the present application, the second terminal device 109 under the NERG 104 can access applications, wherein the applications may be specific applications such as paid videos and network cloud disks.
请参考图5,图5为本申请提供的一种通信方法的流程示意图四。该通信方法可以包括如下步骤501-步骤505。Please refer to Figure 5, which is a fourth flow chart of a communication method provided by the present application. The communication method may include the following steps 501 to 505.
步骤501、NERG104配置第二静态路由。Step 501: NERG 104 configures a second static route.
在基于IP访问应用时,配置第二静态路由,第二静态路由用于指示访问应用的第二应用访问上行报文的转发路径。例如,第二静态路由为3003::/64dev WAN2。When accessing an application based on IP, configure a second static route. The second static route is used to indicate the forwarding path for uplink packets from the second application accessing the application. For example, the second static route is 3003::/64dev WAN2.
在基于域名访问应用时,配置特定域名对应IPoE WAN2的DNS解析路径,在解析得到IP地址后,配置第二静态路由。When accessing applications based on domain names, configure the DNS resolution path for the specific domain name corresponding to IPoE WAN2. After resolving the IP address, configure the second static route.
步骤502、NERG104向第二终端设备109发送NERG104的IPv6地址前缀。Step 502 : NERG 104 sends the IPv6 address prefix of NERG 104 to the second terminal device 109 .
步骤503、第二终端设备109基于NERG的IPv6地址前缀获取第二GUA。Step 503: The second terminal device 109 obtains a second GUA based on the IPv6 address prefix of the NERG.
上述步骤502和步骤503请参考图2所示的步骤203和步骤204,在此不在赘述。For the above steps 502 and 503 , please refer to steps 203 and 204 shown in FIG. 2 , which will not be described in detail here.
步骤504、第二终端设备109向NERG104发送第二应用访问上行报文。Step 504 : The second terminal device 109 sends a second application access uplink message to the NERG 104 .
步骤505、NERG104基于第二静态路由发送第二应用访问上行报文,并对第二应用访问上行报文进行NPTv6或NAT66。Step 505 : NERG 104 sends the second application access uplink message based on the second static route, and performs NPTv6 or NAT66 on the second application access uplink message.
例如,第二应用访问上行报文进行NPTv6后,出IPoE WAN2接口时的源IP地址变换为2007::X。又如,第二应用访问上行报文进行NAT66后,出IPoE WAN2接口时的源IP地址变换为2006::1。For example, after the second application performs NPTv6 on the uplink packet, the source IP address when it leaves the IPoE WAN2 interface is changed to 2007::X. For another example, after the second application performs NAT66 on the uplink packet, the source IP address when it leaves the IPoE WAN2 interface is changed to 2006::1.
如此,解决了NERG104下的终端设备的应用上行报文对应的下行报文由于无法查询到2007::/56的路由项而下行不通的问题,实现了NERG104下的终端设备对特定应用的访问。In this way, the problem that the downlink message corresponding to the uplink message of the application of the terminal device under NERG104 cannot be transmitted due to the inability to query the routing entry 2007::/56 is solved, and the terminal device under NERG104 can access the specific application.
在本申请实施例提供的如图2所示的通信方法的基础上,若第一ONT101的IPv6网络出现故障,第一ONT101下的终端设备可以通过NERG104的网络实现备份上网,保证终端设备访问互联网的稳定性。Based on the communication method shown in FIG. 2 provided in the embodiment of the present application, if the IPv6 network of the first ONT 101 fails, the terminal device under the first ONT 101 can achieve backup Internet access through the network of NERG 104, thereby ensuring the stability of the terminal device's access to the Internet.
请参考图6,图6为本申请提供的一种通信方法的流程示意图五。该通信方法可以包括如下步骤601-步骤610。Please refer to Figure 6, which is a flowchart diagram 5 of a communication method provided by this application. The communication method may include the following steps 601 to 610.
步骤601、NERG104向第一ONT101发送前缀同步信息。Step 601 : NERG 104 sends prefix synchronization information to the first ONT 101 .
步骤602、第一ONT101接收前缀同步信息。Step 602: The first ONT 101 receives prefix synchronization information.
步骤603、第一ONT101向第一终端设备107发送NERG104的IPv6地址前缀。Step 603 : The first ONT 101 sends the IPv6 address prefix of the NERG 104 to the first terminal device 107 .
步骤604、第一终端设备107基于NERG104的IPv6地址前缀获取第一GUA。Step 604 : The first terminal device 107 obtains a first GUA based on the IPv6 address prefix of the NERG 104 .
步骤605、第一ONT101生成第一网段路由项。Step 605: The first ONT 101 generates a first network segment routing entry.
上述步骤601-步骤605与图2所示的步骤201-步骤205相同,在此不在赘述。The above steps 601 to 605 are the same as steps 201 to 205 shown in FIG. 2 , and are not described in detail here.
步骤606、第一ONT101在PPPoE WAN接口处于故障状态时,向NERG104发送第一故障状态同步消息。Step 606: When the PPPoE WAN interface is in a fault state, the first ONT 101 sends a first fault state synchronization message to NERG 104.
第一ONT101在PPPoE WAN接口处于down状态时,确定PPPoE WAN接口处于故障状态。When the PPPoE WAN interface of the first ONT 101 is in the down state, it is determined that the PPPoE WAN interface is in a fault state.
步骤607、NERG104向第一终端设备107发送第一路由通告报文。Step 607 : NERG 104 sends a first routing advertisement message to the first terminal device 107 .
第一路由通告报文用于指示第一终端设备107将网关更新为第二终端设备109的网关。The first routing advertisement message is used to instruct the first terminal device 107 to update the gateway to the gateway of the second terminal device 109 .
作为一种可能的实现方式,第一路由通告报文包括第一路由删除通告报文和第一路由创建通告报文。As a possible implementation manner, the first route advertisement message includes a first route deletion advertisement message and a first route creation advertisement message.
可选地,NERG104先向第一终端设备107发送第一路由删除通告报文,以指示第一终端设备107删除已失效的路由表项。例如,第一路由删除通告报文的lifetime=0,源IP地址为fe80::1。NERG104再向第一终端设备107发送第一路由创建通告报文,以指示第一终端设备107创建新的路由表项。例如,第一路由创建通告报文的lifetime不为0,源IP地址为fe80::101。Optionally, NERG 104 first sends a first route deletion notification message to first terminal device 107 to instruct first terminal device 107 to delete the expired routing table entry. For example, the lifetime of the first route deletion notification message is 0, and the source IP address is fe80::1. NERG 104 then sends a first route creation notification message to first terminal device 107 to instruct first terminal device 107 to create a new routing table entry. For example, the lifetime of the first route creation notification message is not 0, and the source IP address is fe80::101.
步骤608、第一终端设备107基于第一路由通告报文更新网关。Step 608: The first terminal device 107 updates the gateway based on the first routing advertisement message.
例如,第一终端设备107基于第一路由通告报文更新网关为fe80::101。For example, the first terminal device 107 updates the gateway to fe80::101 based on the first routing advertisement message.
步骤609、第一终端设备107向NERG104发送第二互联网上行报文。Step 609 : The first terminal device 107 sends a second Internet uplink message to the NERG 104 .
步骤610、NERG104通过PPPoE WAN接口转发第二互联网上行报文。Step 610, NERG104 forwards the second Internet uplink message through the PPPoE WAN interface.
在本申请可能的实施例中,第一终端设备107的DNS服务器仍然为fe80::1,发起的DNS解析通过fe80::1代理发送至下一级DNS服务器fe80::101进行解析。In a possible embodiment of the present application, the DNS server of the first terminal device 107 is still fe80::1, and the initiated DNS resolution is sent to the next-level DNS server fe80::101 for resolution through the fe80::1 proxy.
如此,在第一ONT101无法连接互联网时,第一ONT101连接的终端设备可以将NERG104的互联网链路作为备份链路,通过NERG104备份上网,保证了网络稳定性。In this way, when the first ONT 101 cannot connect to the Internet, the terminal device connected to the first ONT 101 can use the Internet link of NERG 104 as a backup link and access the Internet through NERG 104 to ensure network stability.
在本申请实施例提供的如图2所示的通信方法的基础上,若NERG104的IPv6网络出现故障,NERG104下的终端设备可以通过第一ONT101的网络实现备份上网,保证终端设备访问互联网的稳定性。Based on the communication method shown in FIG2 provided in the embodiment of the present application, if the IPv6 network of NERG 104 fails, the terminal device under NERG 104 can achieve backup Internet access through the network of the first ONT 101, thereby ensuring the stability of the terminal device's access to the Internet.
请参考图7,图7为本申请提供的一种通信方法的流程示意图六。该通信方法可以包括如下步骤701-步骤710。Please refer to Figure 7, which is a sixth flow chart of a communication method provided by the present application. The communication method may include the following steps 701 to 710.
步骤701、第一ONT101将网关同步至NERG104。Step 701 : The first ONT 101 synchronizes the gateway to the NERG 104 .
例如,第一ONT101将网关fe80::1同步至NERG104。For example, the first ONT 101 synchronizes the gateway fe80::1 to NERG 104 .
步骤702、第一ONT101生成第二网段路由项。Step 702: The first ONT 101 generates a second network segment routing entry.
第二网段路由项用于指示第一ONT101至NERG104的转发路径。例如,第二网段路由项为2005::/64dev BR0。The second network segment routing entry is used to indicate the forwarding path from the first ONT 101 to the NERG 104. For example, the second network segment routing entry is 2005::/64dev BR0.
步骤703、NERG104向第二终端设备109发送NERG104的IPv6地址前缀。Step 703 : NERG 104 sends the IPv6 address prefix of NERG 104 to the second terminal device 109 .
步骤704、第二终端设备109基于NERG104的IPv6地址前缀获取第二GUA。Step 704 : The second terminal device 109 obtains a second GUA based on the IPv6 address prefix of the NERG 104 .
上述步骤703和步骤704请参考图2所示的步骤203和步骤204,在此不再赘述。For the above steps 703 and 704, please refer to steps 203 and 204 shown in FIG. 2 , which will not be described in detail here.
步骤705、NERG104在PPPoE WAN接口处于故障状态时,向第一ONT101发送第二故障状态同步消息。Step 705: When the PPPoE WAN interface is in a fault state, NERG 104 sends a second fault state synchronization message to the first ONT 101.
NERG104在PPPoE WAN接口处于down状态时,确定PPPoE WAN接口处于故障状态。NERG104 determines that the PPPoE WAN interface is in a faulty state when the PPPoE WAN interface is in the down state.
步骤706、第一ONT101向第二终端设备109发送第二由通告报文。Step 706 : The first ONT 101 sends a second notification message to the second terminal device 109 .
第二路由通告报文用于指示第二终端设备109将网关更新为第一终端设备107的网关。The second routing advertisement message is used to instruct the second terminal device 109 to update the gateway to the gateway of the first terminal device 107 .
作为一种可能的实现方式,第二路由通告报文包括第二路由删除通告报文和第二路由创建通告报文。As a possible implementation manner, the second route advertisement message includes a second route deletion advertisement message and a second route creation advertisement message.
可选地,第一ONT101先向第二终端设备109发送第二路由删除通告报文,以指示第二终端设备109删除已失效的路由表项。例如,第二路由删除通告报文的lifetime=0,源IP地址为fe80::101。第一ONT101再向第二终端设备109发送第二路由创建通告报文,以指示第二终端设备109创建新的路由表项。例如,第二路由创建通告报文的lifetime不为0,源IP地址为fe80::1。Optionally, first ONT 101 first sends a second route deletion notification message to second terminal device 109, instructing second terminal device 109 to delete the expired route table entry. For example, the lifetime of the second route deletion notification message is 0, and the source IP address is fe80::101. First ONT 101 then sends a second route creation notification message to second terminal device 109, instructing second terminal device 109 to create a new route table entry. For example, the lifetime of the second route creation notification message is not 0, and the source IP address is fe80::1.
步骤707、第二终端设备109基于第二路由通告报文更新网关。Step 707: The second terminal device 109 updates the gateway based on the second routing advertisement message.
例如,第二终端设备109基于第一路由通告报文更新网关为fe80::1。For example, the second terminal device 109 updates the gateway to fe80::1 based on the first routing advertisement message.
步骤708、第二终端设备109向第一ONT101发送第三互联网上行报文。Step 708 : The second terminal device 109 sends a third Internet uplink message to the first ONT 101 .
步骤709、第一ONT101通过PPPoE WAN接口转发第三互联网上行报文。Step 709: The first ONT 101 forwards the third Internet uplink message through the PPPoE WAN interface.
在本申请可能的实施例中,第二终端设备109的DNS服务器仍然为fe80::101,发起的DNS解析通过fe80::101代理发送至下一级DNS服务器fe80::1进行解析。In a possible embodiment of the present application, the DNS server of the second terminal device 109 is still fe80::101, and the initiated DNS resolution is sent to the next-level DNS server fe80::1 for resolution through the fe80::101 proxy.
步骤710、第一ONT101对第三互联网上行报文进行NPTv6或NAT66。Step 710: The first ONT 101 performs NPTv6 or NAT66 on the third Internet uplink message.
例如,第一ONT101对第三互联网上行报文进行NPTv6,将第三互联网上行报文的源IP地址变换为2003::X。For example, the first ONT 101 performs NPTv6 on the third Internet uplink message, and changes the source IP address of the third Internet uplink message to 2003::X.
又如,第一ONT101对第三互联网上行报文进行NAT66,将第三互联网上行报文的源IP地址变换为2002::1。For another example, the first ONT 101 performs NAT66 on the third Internet uplink message, and changes the source IP address of the third Internet uplink message to 2002::1.
如此,在NERG104无法连接互联网时,NERG104连NAT66接的终端设备可以将第一ONT101的互联网链路作为备份链路,通过第一ONT101备份上网,保证了网络稳定性。In this way, when NERG 104 cannot connect to the Internet, the terminal device connected to NERG 104 via NAT66 can use the Internet link of the first ONT 101 as a backup link and access the Internet through the first ONT 101, thereby ensuring network stability.
在本申请实施例提供的如图2所示的通信方法的基础上,若NERG104的IPv6网络出现故障,NERG104下的终端设备可以通过第一ONT101的网络实现备份上网,保证终端设备访问互联网的稳定性。Based on the communication method shown in FIG2 provided in the embodiment of the present application, if the IPv6 network of NERG 104 fails, the terminal device under NERG 104 can achieve backup Internet access through the network of the first ONT 101, thereby ensuring the stability of the terminal device's access to the Internet.
在本申请实施例提供的如图2所示的通信方法的基础上,第一ONT101下的第一终端设备107能够访问应用。其中,应用可以是付费视频、网络云盘等特定应用。Based on the communication method shown in FIG2 provided in the embodiment of the present application, the first terminal device 107 under the first ONT 101 can access applications, which may be specific applications such as paid videos and network cloud disks.
请参考图8,图8为本申请提供的一种通信方法的流程示意图七。该通信方法可以包括如下步骤801-步骤808。Please refer to Figure 8, which is a flow chart of a communication method provided by the present application. The communication method may include the following steps 801 to 808.
步骤801、第一ONT101配置第一静态路由。Step 801: The first ONT 101 configures a first static route.
第一静态路由的出端口为第一ONT101的网桥接口,下一跳地址为NERG104的网桥接口地址。The outbound port of the first static route is the bridge interface of the first ONT 101 , and the next hop address is the bridge interface address of the NERG 104 .
步骤802、第一ONT101从第一终端设备107接收第一应用访问上行报文。Step 802 : The first ONT 101 receives a first application access uplink message from the first terminal device 107 .
步骤803、第一ONT101基于第二静态路由向NERG104发送第一应用访问上行报文。Step 803: The first ONT 101 sends a first application access uplink message to the NERG 104 based on the second static route.
作为一种可能的实现方式,第一ONT101针对目标IP地址为3003::/64的第一应用访问上行报文进行特殊处理,将报文的目的MAC地址修改为NERG104的网桥接口BR0的MAC地址,以使报文在第一ONT101中为二层转发。如此,避免报文上行和下行分别属于三成转发和二层转发,TCP状态和MAC学习表项存在问题,导致通信中断。As a possible implementation, first ONT 101 performs special processing on uplink packets from the first application with a destination IP address of 3003::/64. The packet's destination MAC address is modified to the MAC address of bridge interface BR0 on NERG 104, so that the packet is forwarded at Layer 2 in first ONT 101. This prevents communication interruption caused by TCP status and MAC learning table errors due to uplink and downlink packets being forwarded at Layer 2 and 3003, respectively.
步骤804、NERG104向应用转发第一应用访问上行报文。Step 804 : NERG 104 forwards the first application access uplink message to the application.
NERG104在通过IPoE WAN2转发第一应用访问上行报文时,对第一应用访问上行报文进行NPTv6或NAT66。When NERG104 forwards the first application access uplink message through IPoE WAN2, it performs NPTv6 or NAT66 on the first application access uplink message.
步骤805、NERG104接收第一应用访问下行报文。Step 805: NERG 104 receives the first application access downlink message.
步骤806、NERG104向第一ONT101转发第一应用访问下行报文。Step 806 : NERG 104 forwards the first application access downlink message to the first ONT 101 .
作为一种可能的实现方式,NERG104对第一应用访问上行报文添加标记,在接收应用发送的第一应用访问下行报文包括标记时,将第一应用访问下行报文的出端口设置为NERG104的网桥接口,下一跳地址设置为第一ONT101的网桥接口的地址。如此,避免报文上行和下行分别属于三成转发和二层转发,TCP状态和MAC学习表项存在问题,导致通信中断。As a possible implementation, NERG 104 adds a tag to the first application's uplink access message. When receiving a first application's downlink access message sent by an application that includes the tag, NERG 104 sets the outbound port of the first application's downlink access message to the bridge interface of NERG 104 and the next hop address to the address of the bridge interface of first ONT 101. This prevents communication interruption caused by issues with TCP status and MAC learning entries due to uplink and downlink messages being forwarded at Layer 3 and Layer 2, respectively.
若步骤803中已将第一应用访问上行报文的目的MAC地址进行修改,则本步骤806无需根据标记对第一应用访问下行报文进行特殊处理。If the destination MAC address of the first application access uplink message has been modified in step 803, then in step 806, there is no need to perform special processing on the first application access downlink message according to the tag.
步骤807、第一ONT101接收第一应用访问下行报文。Step 807: The first ONT 101 receives the first application access downlink message.
步骤808、第一ONT101向第一终端设备107转发第一应用访问下行报文。Step 808 : The first ONT 101 forwards the first application access downlink message to the first terminal device 107 .
如此,解决了第一ONT101下的终端设备的应用上行报文对应的下行报文由于无法查询到第一ONT101的路由项而下行不通的问题,实现了第一ONT101下的终端设备对特定应用的访问。In this way, the problem that the downlink message corresponding to the uplink message of the application of the terminal device under the first ONT 101 cannot be transmitted due to the inability to query the routing entry of the first ONT 101 is solved, and the terminal device under the first ONT 101 can access the specific application.
为了配合本申请任一实施例提供的通信方法,本申请还提供了一种通信装置900,该通信装置900可以用于实现上述通信方法中ONT的功能。如图9所示,通信装置900包括接收模块910、发送模块920、处理模块930。To support the communication method provided in any embodiment of the present application, the present application further provides a communication device 900, which can be used to implement the ONT functions in the above communication method. As shown in Figure 9, the communication device 900 includes a receiving module 910, a sending module 920, and a processing module 930.
接收模块910,用于接收NERG发送的前缀同步消息;前缀同步消息包括NERG的IPv6地址前缀;Receiving module 910, configured to receive a prefix synchronization message sent by a NERG; the prefix synchronization message includes the IPv6 address prefix of the NERG;
发送模块920,用于向第一终端设备发送NERG的IPv6地址前缀,使第一终端设备基于NERG的IPv6地址前缀获取第一GUA;第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的;a sending module 920 configured to send the IPv6 address prefix of the NERG to the first terminal device, so that the first terminal device obtains a first GUA based on the IPv6 address prefix of the NERG; the IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA, and the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG;
处理模块930,用于生成第一网段路由项;第一网段路由项的目的IP地址为NERG的网桥接口地址。The processing module 930 is configured to generate a first network segment routing entry; the destination IP address of the first network segment routing entry is the bridge interface address of NERG.
作为一种可能的实现方式,NERG的IPv6地址前缀为NERG的PPPoE广域网接口的IPv6地址前缀。As a possible implementation, the IPv6 address prefix of the NERG is the IPv6 address prefix of the PPPoE WAN interface of the NERG.
作为一种可能的实现方式,处理模块930还用于:在通过PPPoE广域网接口转发第一互联网上行报文时,对第一互联网上行报文进行IPv6-to-IPv6网络前缀转换NPTv6或IPv6-to-IPv6网络地址转换NAT66,使第一互联网上行报文的源IP地址为第一ONT的地址。As a possible implementation, the processing module 930 is further configured to: when forwarding the first Internet uplink message through the PPPoE wide area network interface, perform IPv6-to-IPv6 network prefix translation NPTv6 or IPv6-to-IPv6 network address translation NAT66 on the first Internet uplink message, so that the source IP address of the first Internet uplink message is the address of the first ONT.
作为一种可能的实现方式,发送模块920还用于:基于第一静态路由向NERG转发第一应用访问上行报文,使NERG将第一应用访问上行报文进行NPTv6或NAT66后发送至应用,第一静态路由的出端口为第一ONT的网桥接口,下一跳地址为NERG的网桥接口地址。As a possible implementation method, the sending module 920 is also used to: forward the first application access uplink message to the NERG based on the first static route, so that the NERG performs NPTv6 or NAT66 on the first application access uplink message and sends it to the application, the outbound port of the first static route is the bridge interface of the first ONT, and the next hop address is the bridge interface address of the NERG.
作为一种可能的实现方式,处理模块930还用于:将第一应用访问上行报文的目的媒体访问控制MAC地址更新为NERG的网桥接口的MAC地址。As a possible implementation manner, the processing module 930 is further configured to update the destination media access control MAC address of the uplink message accessed by the first application to the MAC address of the bridge interface of the NERG.
作为一种可能的实现方式,发送模块920还用于:在第一ONT的PPPoE广域网接口处于故障状态时,向NERG发送第一故障状态同步消息,使NERG向第一终端设备发送第一路由通告报文,第一路由通告报文用于指示第一终端设备将网关更新为第二终端设备的网关;向NERG转发第一终端设备的第二互联网上行报文,使NERG通过PPPoE广域网接口转发第二互联网上行报文。As a possible implementation method, the sending module 920 is also used to: when the PPPoE wide area network interface of the first ONT is in a fault state, send a first fault state synchronization message to the NERG, so that the NERG sends a first route announcement message to the first terminal device, and the first route announcement message is used to instruct the first terminal device to update the gateway to the gateway of the second terminal device; forward the second Internet uplink message of the first terminal device to the NERG, so that the NERG forwards the second Internet uplink message through the PPPoE wide area network interface.
作为一种可能的实现方式,第一终端设备的DNS服务器由第二终端设备的DNS服务器代理。As a possible implementation manner, the DNS server of the first terminal device is proxied by the DNS server of the second terminal device.
作为一种可能的实现方式,接收模块910还用于:接收NERG发送的第二故障状态同步消息。发送模块920还用于响应于第二故障状态同步消息,向第二终端设备发送第二路由通告报文,第二路由通告报文用于指示第二终端设备将网关更新为第一终端设备的网关。接收模块910还用于:接收NERG发送的第二终端设备的第三互联网上行报文。发送模块920还用于通过PPPoE广域网接口转发第三互联网上行报文。As a possible implementation, receiving module 910 is further configured to receive a second fault state synchronization message sent by the NERG. Sending module 920 is further configured to, in response to the second fault state synchronization message, send a second route advertisement message to the second terminal device, the second route advertisement message being configured to instruct the second terminal device to update its gateway to the gateway of the first terminal device. Receiving module 910 is further configured to receive a third Internet uplink message from the second terminal device sent by the NERG. Sending module 920 is further configured to forward the third Internet uplink message via the PPPoE WAN interface.
作为一种可能的实现方式,第二路由通告报文包括第二路由删除通告报文和第二路由创建通告报文,第二路由删除通告报文的源IP地址为第一NERG的网桥接口地址,第二路由创建通告报文的源IP地址为ONT的网桥接口地址。As a possible implementation, the second route announcement message includes a second route deletion announcement message and a second route creation announcement message, the source IP address of the second route deletion announcement message is the bridge interface address of the first NERG, and the source IP address of the second route creation announcement message is the bridge interface address of the ONT.
其中,接收模块910、发送模块920、处理模块930均可以通过软件实现,或者可以通过硬件实现。示例性的,接下来以接收模块910为例,介绍接收模块910的实现方式。类似的,发送模块920、处理模块930的实现方式可以参考接收模块910的实现方式。The receiving module 910, the sending module 920, and the processing module 930 can all be implemented in software or hardware. For example, the implementation of the receiving module 910 will be described below using the receiving module 910 as an example. Similarly, the implementation of the sending module 920 and the processing module 930 can refer to the implementation of the receiving module 910.
模块作为软件功能单元的一种举例,接收模块910可以包括运行在计算实例上的代码。其中,计算实例可以包括物理主机(计算设备)、虚拟机、容器中的至少一种。进一步地,上述计算实例可以是一台或者多台。例如,接收模块910可以包括运行在多个主机/虚拟机/容器上的代码。需要说明的是,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的区域(region)中,也可以分布在不同的region中。进一步地,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的可用区(availability zone,AZ)中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。As an example of a software functional unit, the receiving module 910 may include code running on a computing instance. The computing instance may include at least one of a physical host (computing device), a virtual machine, and a container. Furthermore, the computing instance may be one or more. For example, the receiving module 910 may include code running on multiple hosts/virtual machines/containers. It should be noted that the multiple hosts/virtual machines/containers used to run the code may be distributed in the same region or in different regions. Furthermore, the multiple hosts/virtual machines/containers used to run the code may be distributed in the same availability zone (AZ) or in different AZs, each AZ including one data center or multiple geographically close data centers. Typically, a region may include multiple AZs.
同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云(virtual private cloud,VPC)中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内,同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。Similarly, multiple hosts/virtual machines/containers running the code can be distributed within the same virtual private cloud (VPC) or across multiple VPCs. Typically, a VPC is set up within a region. Inter-region communication between two VPCs within the same region, or between VPCs in different regions, requires a communication gateway within each VPC to interconnect the VPCs.
模块作为硬件功能单元的一种举例,接收模块910可以包括至少一个计算设备,如服务器等。或者,接收模块910也可以是利用专用集成电路(application-specific integrated circuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。As an example of a hardware functional unit, receiving module 910 may include at least one computing device, such as a server. Alternatively, receiving module 910 may be implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
接收模块910包括的多个计算设备可以分布在相同的region中,也可以分布在不同的region中。接收模块910包括的多个计算设备可以分布在相同的AZ中,也可以分布在不同的AZ中。同样,接收模块910包括的多个计算设备可以分布在同一个VPC中,也可以分布在多个VPC中。其中,所述多个计算设备可以是服务器、ASIC、PLD、CPLD、FPGA和GAL等计算设备的任意组合。The multiple computing devices included in the receiving module 910 can be distributed in the same region or in different regions. The multiple computing devices included in the receiving module 910 can be distributed in the same AZ or in different AZs. Similarly, the multiple computing devices included in the receiving module 910 can be distributed in the same VPC or in multiple VPCs. The multiple computing devices can be any combination of servers, ASICs, PLDs, CPLDs, FPGAs, GALs, and other computing devices.
需要说明的是,在其他实施例中,接收模块910、发送模块920、处理模块930中的任一模块可以用于执行通信方法中的任意步骤,接收模块910、发送模块920、处理模块930负责实现的步骤可根据需要指定,通过接收模块910、发送模块920、处理模块930分别实现通信方法中不同的步骤来实现通信装置900的全部功能。It should be noted that, in other embodiments, any one of the receiving module 910, the sending module 920, and the processing module 930 can be used to execute any step in the communication method, and the steps that the receiving module 910, the sending module 920, and the processing module 930 are responsible for implementing can be specified as needed. The full functions of the communication device 900 are realized by respectively implementing different steps in the communication method through the receiving module 910, the sending module 920, and the processing module 930.
为了配合本申请任一实施例提供的通信方法,本申请还提供了一种通信装置1000,该通信装置1000可以用于实现上述通信方法中NERG的功能。如图10所示,通信装置1000包括发送模块1010。In order to cooperate with the communication method provided in any embodiment of the present application, the present application further provides a communication device 1000 , which can be used to implement the NERG function in the above communication method.
发送模块1010,用于向第一ONT发送前缀同步消息,前缀同步消息包括NERG的IPv6地址前缀,前缀同步消息用于指示第一ONT向第一终端设备发送IPv6地址前缀,以及生成第一网段路由项,第一终端设备基于NERG的IPv6地址前缀获取第一GUA,第一GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的,第一网段路由项的目的地址为NERG的网桥接口地址。A sending module 1010 is configured to send a prefix synchronization message to the first ONT, where the prefix synchronization message includes the IPv6 address prefix of the NERG. The prefix synchronization message is used to instruct the first ONT to send the IPv6 address prefix to the first terminal device and generate a first network segment routing entry. The first terminal device obtains a first GUA based on the IPv6 address prefix of the NERG. The IPv6 address prefix of the first GUA is the same as the IPv6 address prefix of the second GUA. The second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG. The destination address of the first network segment routing entry is the bridge interface address of the NERG.
作为一种可能的实现方式,发送模块1010还用于:向第二ONT发送前缀同步消息;前缀同步消息包括NERG的IPv6地址前缀,前缀同步消息用于指示第二ONT向第三终端设备发送IPv6地址前缀,以及生成第二网段路由项,第三终端设备基于NERG的IPv6地址前缀获取第三GUA,第三GUA的IPv6地址前缀与第二GUA的IPv6地址前缀相同,第二GUA是第二终端设备基于NERG的IPv6地址前缀获取的,第二网段路由项的目的地址为NERG的网桥接口地址。As a possible implementation manner, the sending module 1010 is further used to: send a prefix synchronization message to the second ONT; the prefix synchronization message includes the IPv6 address prefix of the NERG, the prefix synchronization message is used to instruct the second ONT to send the IPv6 address prefix to the third terminal device, and generate a second network segment routing item, the third terminal device obtains a third GUA based on the IPv6 address prefix of the NERG, the IPv6 address prefix of the third GUA is the same as the IPv6 address prefix of the second GUA, the second GUA is obtained by the second terminal device based on the IPv6 address prefix of the NERG, and the destination address of the second network segment routing item is the bridge interface address of the NERG.
作为一种可能的实现方式,NERG的IPv6地址前缀为NERG的PPPoE广域网接口的IPv6地址前缀。As a possible implementation, the IPv6 address prefix of the NERG is the IPv6 address prefix of the PPPoE WAN interface of the NERG.
作为一种可能的实现方式,通信装置1000还包括接收模块1020,接收模块1020用于:接收第一ONT基于第一静态路由发送的第一应用访问上行报文,第一静态路由的出端口为第一ONT的网桥接口,下一跳地址为NERG的网桥接口地址。发送模块1010还用于:将第一应用访问上行报文进行NPTv6或NAT66后发送至应用。As a possible implementation, communication device 1000 further includes a receiving module 1020 configured to receive a first application access uplink message sent by a first ONT based on a first static route, where the outbound port of the first static route is the bridge interface of the first ONT and the next hop address is the bridge interface address of the NERG. Transmitting module 1010 is further configured to perform NPTv6 or NAT66 on the first application access uplink message and then transmit it to the application.
作为一种可能的实现方式,通信装置1000还包括处理模块1030,用于:对第一应用访问上行报文添加标记;在接收应用发送的第一应用访问下行报文包括标记时,将第一应用访问下行报文的出端口设置为NERG的网桥接口,下一跳地址设置为第一ONT的网桥接口的地址。As a possible implementation method, the communication device 1000 also includes a processing module 1030, which is used to: add a mark to the first application access uplink message; when the first application access downlink message sent by the receiving application includes a mark, the outbound port of the first application access downlink message is set to the bridge interface of the NERG, and the next hop address is set to the address of the bridge interface of the first ONT.
作为一种可能的实现方式,接收模块1020还用于:接收第一ONT发送的第一故障状态同步消息。发送模块1010还用于:响应于第一故障状态同步消息,向第一终端设备发送第一路由通告报文,第一路由通告报文用于指示第一终端设备将网关更新为第二终端设备的网关。接收模块1020还用于:接收第一ONT发送的第一终端设备的第二互联网上行报文。发送模块1010还用于:通过PPPoE广域网接口转发第二互联网上行报文。As a possible implementation, the receiving module 1020 is further configured to receive a first fault state synchronization message sent by the first ONT. The sending module 1010 is further configured to, in response to the first fault state synchronization message, send a first route advertisement message to the first terminal device, the first route advertisement message being used to instruct the first terminal device to update its gateway to the gateway of the second terminal device. The receiving module 1020 is further configured to receive a second Internet uplink message from the first ONT for the first terminal device. The sending module 1010 is further configured to forward the second Internet uplink message via the PPPoE WAN interface.
作为一种可能的实现方式,第一路由通告报文包括第一路由删除通告报文和第一路由创建通告报文,第一路由删除通告报文的源IP地址为第一ONT的网桥接口地址,第二路由创建通告报文的源IP地址为NERG的网桥接口地址。As a possible implementation, the first route announcement message includes a first route deletion announcement message and a first route creation announcement message, the source IP address of the first route deletion announcement message is the bridge interface address of the first ONT, and the source IP address of the second route creation announcement message is the bridge interface address of the NERG.
作为一种可能的实现方式,发送模块1010还用于:在NERG的PPPoE广域网接口处于故障状态时,向第一ONT发送第二故障状态同步消息,使第一ONT向第二终端设备发送第二路由通告报文,第二路由通告报文用于指示第二终端设备将网关更新为第一终端设备的网关;向第一ONT转发第二终端设备的第三互联网上行报文,使第一ONT通过PPPoE广域网接口转发第三互联网上行报文。As a possible implementation method, the sending module 1010 is further used to: when the PPPoE WAN interface of the NERG is in a fault state, send a second fault state synchronization message to the first ONT, so that the first ONT sends a second route announcement message to the second terminal device, and the second route announcement message is used to instruct the second terminal device to update the gateway to the gateway of the first terminal device; forward a third Internet uplink message of the second terminal device to the first ONT, so that the first ONT forwards the third Internet uplink message through the PPPoE WAN interface.
作为一种可能的实现方式,发送模块1010还用于:基于第二静态路由发送第二应用访问上行报文;第二静态路由的出端口为NERG的PPPoE广域网接口,下一跳地址为应用的地址。As a possible implementation, the sending module 1010 is further configured to: send a second application access uplink message based on a second static route; the egress port of the second static route is the PPPoE WAN interface of the NERG, and the next hop address is the application address.
作为一种可能的实现方式,处理模块1030还用于:在通过NERG的PPPoE广域网接口发送第二应用访问上行报文时,将第二应用访问上行报文进行NPTv6或NAT66。As a possible implementation manner, the processing module 1030 is further configured to: when sending the second application access uplink message through the PPPoE WAN interface of the NERG, perform NPTv6 or NAT66 on the second application access uplink message.
发送模块1010、接收模块1020和处理模块1030均可以通过软件实现,或者可以通过硬件实现。示例性的,接下来介绍发送模块1010的实现方式。类似的,接收模块1020、处理模块1030的实现方式可以参考发送模块1010的实现方式。The sending module 1010, the receiving module 1020, and the processing module 1030 can all be implemented by software or hardware. For example, the implementation of the sending module 1010 is described below. Similarly, the implementation of the receiving module 1020 and the processing module 1030 can refer to the implementation of the sending module 1010.
模块作为软件功能单元的一种举例,发送模块1010可以包括运行在计算实例上的代码。其中,计算实例可以是物理主机(计算设备)、虚拟机、容器等计算设备中的至少一种。进一步地,上述计算设备可以是一台或者多台。例如,发送模块1010可以包括运行在多个主机/虚拟机/容器上的代码。需要说明的是,用于运行该应用程序的多个主机/虚拟机/容器可以分布在相同的region中,也可以分布在不同的region中。用于运行该代码的多个主机/虚拟机/容器可以分布在相同的AZ中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。As an example of a software functional unit, the sending module 1010 may include code running on a computing instance. The computing instance may be at least one of a physical host (computing device), a virtual machine, a container, and other computing devices. Furthermore, the above-mentioned computing device may be one or more. For example, the sending module 1010 may include code running on multiple hosts/virtual machines/containers. It should be noted that the multiple hosts/virtual machines/containers used to run the application may be distributed in the same region or in different regions. The multiple hosts/virtual machines/containers used to run the code may be distributed in the same AZ or in different AZs, and each AZ includes one data center or multiple data centers with close geographical locations. Generally, a region may include multiple AZs.
同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个VPC中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内。同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。Similarly, the multiple hosts/virtual machines/containers running the code can be distributed within the same VPC or across multiple VPCs. Typically, a VPC is located within a region. Cross-region communication between two VPCs within the same region, or between VPCs in different regions, requires a communication gateway within each VPC to interconnect the VPCs.
模块作为硬件功能单元的一种举例,发送模块1010可以包括至少一个计算设备,如服务器等。或者,发送模块1010也可以是利用ASIC实现、或PLD实现的设备等。其中,上述PLD可以是CPLD、FPGA、GAL或其任意组合实现。As an example of a hardware functional unit, the sending module 1010 may include at least one computing device, such as a server. Alternatively, the sending module 1010 may be implemented using an ASIC or a PLD. The PLD may be implemented using a CPLD, an FPGA, a GAL, or any combination thereof.
发送模块1010包括的多个计算设备可以分布在相同的region中,也可以分布在不同的region中。发送模块1010包括的多个计算设备可以分布在相同的AZ中,也可以分布在不同的AZ中。同样,发送模块1010包括的多个计算设备可以分布在同一个VPC中,也可以分布在多个VPC中。其中,所述多个计算设备可以是服务器、ASIC、PLD、CPLD、FPGA和GAL等计算设备的任意组合。The multiple computing devices included in the sending module 1010 can be distributed in the same region or in different regions. The multiple computing devices included in the sending module 1010 can be distributed in the same AZ or in different AZs. Similarly, the multiple computing devices included in the sending module 1010 can be distributed in the same VPC or in multiple VPCs. The multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
本申请还提供一种计算设备1100。如图11所示,计算设备1100包括:总线1102、处理器1104、存储器1106和通信接口1108。处理器1104、存储器1106和通信接口1108之间通过总线1102通信。计算设备1100可以是服务器或终端设备。应理解,本申请不限定计算设备1100中的处理器、存储器的个数。This application also provides a computing device 1100. As shown in Figure 11, computing device 1100 includes a bus 1102, a processor 1104, a memory 1106, and a communication interface 1108. Processor 1104, memory 1106, and communication interface 1108 communicate with each other via bus 1102. Computing device 1100 can be a server or a terminal device. It should be understood that this application does not limit the number of processors and memories in computing device 1100.
总线1102可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。总线1102可包括在计算设备1100各个部件(例如,存储器1106、处理器1104、通信接口1108)之间传送信息的通路。Bus 1102 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. Buses can be classified as address buses, data buses, control buses, and the like. For ease of illustration, FIG11 shows only one line, but this does not imply a single bus or type of bus. Bus 1102 may include a path for transmitting information between various components of computing device 1100 (e.g., memory 1106, processor 1104, and communication interface 1108).
处理器1104可以包括中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。Processor 1104 may include any one or more processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
存储器1106可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。处理器1104还可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard disk drive,HDD)或固态硬盘(solid state drive,SSD)。The memory 1106 may include volatile memory, such as random access memory (RAM). The processor 1104 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).
存储器1106中存储有可执行的程序代码,处理器1104执行该可执行的程序代码以分别实现前述通信装置900或通信装置1000包含的各个模块的功能,从而实现通信方法。也即,存储器1106上存有用于执行通信方法的指令。The memory 1106 stores executable program code, and the processor 1104 executes the executable program code to respectively implement the functions of each module included in the aforementioned communication device 900 or communication device 1000, thereby implementing the communication method. In other words, the memory 1106 stores instructions for executing the communication method.
或者,存储器1106中存储有可执行的代码,处理器1104执行该可执行的代码以分别实现前述ONT或NERG的功能,从而实现通信方法。也即,存储器1106上存有用于执行通信方法的指令。Alternatively, the memory 1106 stores executable codes, and the processor 1104 executes the executable codes to implement the functions of the aforementioned ONT or NERG, thereby implementing the communication method. That is, the memory 1106 stores instructions for executing the communication method.
通信接口1108使用例如但不限于网络接口卡、收发器一类的收发模块,来实现计算设备1100与其他设备或通信网络之间的通信。The communication interface 1108 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 1100 and other devices or a communication network.
考虑到本申请提供的通信方法是应用于通信系统100中,通信系统100的ECGW等各自的基础设施通常包含多台计算设备。因此,本申请还提供了一种计算设备集群。该计算设备集群包括至少一台计算设备。该计算设备可以是服务器,例如是中心服务器、边缘服务器,或者是本地数据中心中的本地服务器。在一些实施例中,计算设备也可以是台式机、笔记本电脑或者智能手机等终端设备。Considering that the communication method provided in this application is applied to the communication system 100, the infrastructure of the communication system 100, such as the ECGW, typically includes multiple computing devices. Therefore, this application also provides a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a terminal device such as a desktop computer, a laptop computer, or a smartphone.
如图12所示,所述计算设备集群包括至少一个计算设备1100。计算设备集群中的一个或多个计算设备1100中的存储器1106中可以存有相同的用于执行通信方法的指令。As shown in Figure 12, the computing device cluster includes at least one computing device 1100. The memory 1106 of one or more computing devices 1100 in the computing device cluster may store the same instructions for executing the communication method.
在一些可能的实现方式中,该计算设备集群中的一个或多个计算设备1100的存储器1106中也可以分别存有用于执行通信方法的部分指令。换言之,一个或多个计算设备1100的组合可以共同执行用于执行通信方法的指令。In some possible implementations, the memory 1106 of one or more computing devices 1100 in the computing device cluster may also store partial instructions for executing the communication method. In other words, the combination of one or more computing devices 1100 can jointly execute the instructions for executing the communication method.
需要说明的是,计算设备集群中的不同的计算设备1100中的存储器1106可以存储不同的指令,分别用于执行通信装置900或通信装置1000的部分功能。也即,不同的计算设备1100中的存储器1106存储的指令可以实现通信装置900或通信装置1000包含的一个或多个模块的功能。It should be noted that the memory 1106 in different computing devices 1100 in the computing device cluster may store different instructions, each for executing part of the functions of the communication device 900 or the communication device 1000. In other words, the instructions stored in the memory 1106 in different computing devices 1100 may implement the functions of one or more modules included in the communication device 900 or the communication device 1000.
在一些可能的实现方式中,计算设备集群中的一个或多个计算设备可以通过网络连接。其中,所述网络可以是广域网或局域网等等。图13示出了一种可能的实现方式。如图13所示,两个计算设备1100A和1100B之间通过网络进行连接。具体地,通过各个计算设备中的通信接口与所述网络进行连接。在这一类可能的实现方式中,计算设备1100A中的存储器1106中存有执行接收模块910、发送模块920、处理模块930中的一个或多个模块的功能的指令,图13中以计算设备1100A中的存储器1106中存有执行接收模块910的功能的指令为例。同时,计算设备1100B中的存储器1106中存有执行接收模块910、发送模块920、处理模块930中的一个或多个模块的功能的指令,图13中以计算设备1100B中的存储器1106中存有执行发送模块920、处理模块930的功能的指令为例。In some possible implementations, one or more computing devices in a computing device cluster may be connected via a network. The network may be a wide area network (WAN) or a local area network (LAN), among others. FIG13 illustrates one possible implementation. As shown in FIG13 , two computing devices 1100A and 1100B are connected via a network. Specifically, the connection to the network is achieved via a communication interface in each computing device. In this type of possible implementation, the memory 1106 in the computing device 1100A stores instructions for executing the functions of one or more of the receiving module 910, the sending module 920, and the processing module 930. FIG13 illustrates an example of the memory 1106 in the computing device 1100A storing instructions for executing the functions of the receiving module 910. Simultaneously, the memory 1106 in the computing device 1100B stores instructions for executing the functions of one or more of the receiving module 910, the sending module 920, and the processing module 930. FIG13 illustrates an example of the memory 1106 in the computing device 1100B storing instructions for executing the functions of the sending module 920 and the processing module 930.
应理解,图13中示出的计算设备1100A的功能也可以由多个计算设备1100完成。同样,计算设备1100B的功能也可以由多个计算设备1100完成。It should be understood that the functionality of the computing device 1100A shown in FIG13 may also be implemented by multiple computing devices 1100. Similarly, the functionality of the computing device 1100B may also be implemented by multiple computing devices 1100.
本申请实施例还提供了一种包含指令的计算机程序产品。所述计算机程序产品可以是包含指令的,能够运行在计算设备上或被储存在任何可用介质中的软件或程序产品。当所述计算机程序产品在至少一个计算设备上运行时,使得至少一个计算设备执行如本申请任一实施例提供的通信方法,或通信方法中ONT或NERG执行的步骤。Embodiments of the present application also provide a computer program product comprising instructions. The computer program product may be software or a program product comprising instructions that can be run on a computing device or stored in any available medium. When the computer program product is run on at least one computing device, it causes the at least one computing device to perform the communication method provided in any embodiment of the present application, or the steps performed by an ONT or NERG in the communication method.
本申请实施例还提供了一种计算机可读存储介质。所述计算机可读存储介质可以是计算设备能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括指令,所述指令指示计算设备执行本申请任一实施例提供的通信方法,或通信方法中ONT或NERG执行的步骤。The embodiments of the present application also provide a computer-readable storage medium. The computer-readable storage medium can be any available medium that can be stored by a computing device or a data storage device such as a data center that contains one or more available media. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive). The computer-readable storage medium includes instructions that instruct the computing device to execute the communication method provided in any embodiment of the present application, or the steps performed by the ONT or NERG in the communication method.
上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。The above embodiments can be implemented in whole or in part by software, hardware (such as circuits), firmware or any other combination. When implemented using software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer program are loaded or executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (such as infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that contains one or more available media sets. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (for example, a DVD), or a semiconductor medium. The semiconductor medium can be a solid-state drive.
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk, or an optical disk.
在本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,a和b,a和c,b和c,或,a和b和c,其中a、b和c可以是单个,也可以是多个。In this application, "at least one" means one or more, and "more" means two or more. "And/or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and/or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character "/" generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b and c can be single or multiple.
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。It should be noted that, in this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described in this application as "exemplary" or "for example" should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的保护范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the protection scope of the technical solutions of the various embodiments of the present invention.
Claims (26)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410269946.1A CN120614338A (en) | 2024-03-08 | 2024-03-08 | Communication method, device and system |
| CN202410269946.1 | 2024-03-08 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2025185376A1 true WO2025185376A1 (en) | 2025-09-12 |
| WO2025185376A8 WO2025185376A8 (en) | 2025-10-02 |
Family
ID=96929637
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2025/075335 Pending WO2025185376A1 (en) | 2024-03-08 | 2025-01-26 | Communication method, apparatus and system |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN120614338A (en) |
| WO (1) | WO2025185376A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2009138034A1 (en) * | 2008-05-13 | 2009-11-19 | Huawei Technologies Co., Ltd. | Method and apparatus for internet protocol version six (ipv6) addressing and packet filtering in broadband networks |
| CN114567544A (en) * | 2020-11-27 | 2022-05-31 | 华为技术有限公司 | Route notification method, device and system |
| CN115733820A (en) * | 2022-11-01 | 2023-03-03 | 海尔优家智能科技(北京)有限公司 | Address prefix allocation method and device, storage medium and electronic device |
| CN117376313A (en) * | 2022-07-01 | 2024-01-09 | 荣耀终端有限公司 | Address configuration method and electronic device |
| CN117459497A (en) * | 2020-12-31 | 2024-01-26 | 华为技术有限公司 | An IPv6 address configuration method and routing device |
-
2024
- 2024-03-08 CN CN202410269946.1A patent/CN120614338A/en active Pending
-
2025
- 2025-01-26 WO PCT/CN2025/075335 patent/WO2025185376A1/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2009138034A1 (en) * | 2008-05-13 | 2009-11-19 | Huawei Technologies Co., Ltd. | Method and apparatus for internet protocol version six (ipv6) addressing and packet filtering in broadband networks |
| CN114567544A (en) * | 2020-11-27 | 2022-05-31 | 华为技术有限公司 | Route notification method, device and system |
| CN117459497A (en) * | 2020-12-31 | 2024-01-26 | 华为技术有限公司 | An IPv6 address configuration method and routing device |
| CN117376313A (en) * | 2022-07-01 | 2024-01-09 | 荣耀终端有限公司 | Address configuration method and electronic device |
| CN115733820A (en) * | 2022-11-01 | 2023-03-03 | 海尔优家智能科技(北京)有限公司 | Address prefix allocation method and device, storage medium and electronic device |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2025185376A8 (en) | 2025-10-02 |
| CN120614338A (en) | 2025-09-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7727787B2 (en) | First-hop gateway redundancy in a network computing environment. | |
| US11303515B2 (en) | IP MPLS PoP virtualization and fault tolerant virtual router | |
| US9253140B2 (en) | System and method for optimizing within subnet communication in a network environment | |
| RU2551814C2 (en) | Asymmetric network address encapsulation | |
| US9838309B1 (en) | Distributed network subnet | |
| EP2109962B1 (en) | Triple-tier anycast addressing | |
| EP2489172B1 (en) | Virtual layer 2 and mechanism to make it scalable | |
| US9385949B2 (en) | Routing controlled by subnet managers | |
| KR101340495B1 (en) | Implementation method and system of virtual private network | |
| CN113872845B (en) | Method for establishing VXLAN tunnel and related equipment | |
| US9178816B1 (en) | Control plane messaging in all-active multi-homed ethernet virtual private networks | |
| EP3069471B1 (en) | Optimized multicast routing in a clos-like network | |
| CN107094110B (en) | DHCP message forwarding method and device | |
| WO2011113393A2 (en) | Virtual local area network identity transformation method and apparatus | |
| CN113381929B (en) | Route processing method, gateway equipment and computer storage medium | |
| WO2018214809A1 (en) | Message transmission method and device, and storage medium | |
| US12028250B2 (en) | Communication of policy changes in LISP-based software defined networks | |
| US20210126812A1 (en) | Anycast address configuration for extended local area networks | |
| CN104009919B (en) | Message forwarding method and device | |
| WO2025185376A1 (en) | Communication method, apparatus and system | |
| Dumba et al. | Experience in implementing & deploying a non-ip routing protocol viro in geni | |
| JP6417720B2 (en) | Communication apparatus, network system, address resolution control method and program | |
| Briain | Diarmuid Ó Briain |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 25767120 Country of ref document: EP Kind code of ref document: A1 |