Distributed system, transmission scheduling method and computer program

The distributed system architecture addresses the limitations of existing routers by using a decoupled network design with generic components, enhancing scalability and flexibility for cloud networks.

JP2025530264AActive Publication Date: 2025-09-11TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2025514551
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-04-20
Filing Date
2024-03-12
Publication Date
2025-09-11
Estimated Expiration
2044-03-12

AI Technical Summary

Technical Problem

Current network devices, such as edge routers and internal routers, are limited in choice, costly, and lack scalability and flexibility, making them unsuitable for cloud computing environments.

Method used

A distributed system architecture comprising first and second routing node devices and a global routing service node device, connected via a backbone network, maintains mapping relationships between peering connections and scheduling identifiers to facilitate flexible and efficient transmission scheduling.

Benefits of technology

This architecture decouples enterprise routers, reduces operational costs, improves scalability and flexibility, and achieves high-performance routing and forwarding in cloud networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025530264000001_ABST
    Figure 2025530264000001_ABST
Patent Text Reader

Abstract

An embodiment of the present application provides a distributed system and a transmission scheduling method applicable to a cloud network architecture including an access network, a backbone network, and a data center network. The distributed system includes a first routing node device installed in the access network and including a generic service component and a first generic switching component, a second routing node device installed in the data center network and including a second generic switching component, and a global routing service node device installed independently of the access network and the data center network, each of which is connected to the backbone network. A mapping relationship between peering connections and scheduling identifiers is transmitted between each of the node devices, and each of the node devices performs transmission scheduling for service messages on the cloud network based on the mapping relationship. The embodiment of the present application decouples business routers while being applicable to the cloud network, and can meet the transmission scheduling requirements of the cloud network.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] [CROSS-REFERENCE TO RELATED APPLICATIONS] This application claims the benefit of priority to Chinese Patent Application No. 202310439284.3, entitled "Distributed System and Transmission Scheduling Method," filed with the State Intellectual Property Office of the People's Republic of China on April 20, 2023, the entire contents of which are incorporated herein by reference.

[0002] [Technical field] The present application relates to the field of Internet technology, and in particular to a distributed system and a transmission scheduling method. [Background technology]

[0003] Currently, network devices such as edge routers (ER) are placed at the border of Internet Service Provider (ISP) networks, and internal routers (IR) are placed inside datacenter networks to enable interconnection between datacenter networks and ISP networks, thereby providing Internet services to a large number of objects. However, due to the large number of routing paths across the Internet (usually in the millions), the range of choices for routers is limited. Furthermore, they have disadvantages such as high cost, low scalability, slow iteration speed, and high operating costs, making them unable to meet the requirements for cloud computing. Summary of the Invention [Means for solving the problem]

[0004] In the embodiments of the present application, a distributed system and a transmission scheduling method are provided that can decouple business routers and at the same time be applied to a cloud network and meet the transmission scheduling requirements of the cloud network.

[0005] According to one aspect, an embodiment of the present application provides a distributed system applied to a cloud network having an architecture including an access network, a backbone network, and a data center network, the system including: a first routing node device that is distributedly installed in the access network to access one or more ISP networks, the first routing node device including a generic service component and a first generic exchange component; a second routing node device that is distributedly installed in the data center network to provide data connections between network modules in the data center network, the second routing node device including a second generic exchange component; and a global routing service node device that is installed independently of the access network and the data center network, the first routing node device, the second routing node device, and the global routing service node device being all connected to a backbone network; The distributed system maintains a mapping relationship between peering connections and scheduling identifiers transmitted between each node device of the distributed system, and each node device of the distributed system schedules transmission of service messages on the cloud network based on the mapping relationship.

[0006] According to one aspect, an embodiment of the present application provides a transmission scheduling method applied to the above-mentioned distributed system, comprising: obtaining a mapping relationship between a peering connection and a scheduling identifier; transmitting a mapping relationship between each node device of the distributed system; and performing transmission scheduling for the service message on the cloud network based on the mapping relationship.

[0007] A distributed system according to an embodiment of the present application includes a first routing node device including a generic service component and a first generic exchange component, a second routing node device including a second generic exchange component, and a global routing service node device. In this manner, by constructing a distributed system using inexpensive generic components instead of enterprise routers in the present application, it is possible to decouple large enterprise routers, greatly simplify the operation process, reduce operation costs, and improve the scalability and flexibility of the distributed system. The distributed system can also be applied to a cloud network, which has an architecture including an access network, a backbone network, and a data center network, and the first routing node device, the second routing node device, and the global routing service node device are all connected to the backbone network. In this manner, the access network and the backbone network can be interconnected via the first routing node device, and the data center network and the backbone network can be interconnected via the second routing node device. Therefore, by utilizing the distributed system to penetrate the cloud network architecture, it is possible to realize interconnection of each network within the cloud network architecture. The first routing node device is distributed and installed in the access network to access one or more ISP networks, the second routing node device is distributed and installed in the data center network to provide data connections between network modules in the data center network, and the global routing service node device is installed independently of the access network and the data center network.A distributed system maintains a mapping relationship between peers (peering connections) and labels (scheduling identifiers) transmitted between each node device in the distributed system, allowing each node device in the distributed system to obtain this mapping relationship and perform transmission scheduling for service messages on the cloud network based on the mapping relationship.Since transmission scheduling is achieved based on the mapping relationship between peers and labels, scheduling can be achieved at the peer level in a distributed system.However, since the number of peers is relatively limited, this effectively reduces the pressure on routing and forwarding in the distributed system, achieving high-performance routing and forwarding and flexible transmission scheduling, and meeting the transmission scheduling requirements of a cloud network. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 is an architecture diagram of a distributed system according to an exemplary embodiment of the present application. [Figure 2] 1 is a flowchart of a transmission scheduling method according to an exemplary embodiment of the present application; [Figure 3] FIG. 1 is a schematic diagram illustrating the transmission of routing information within a routing system according to an exemplary embodiment of the present application. [Figure 4] FIG. 1 is a schematic diagram illustrating synchronization of forwarding information according to an exemplary embodiment of the present application; [Figure 5] 1 is a flowchart illustrating transmission scheduling for outbound service messages on a cloud network according to an exemplary embodiment of the present application. [Figure 6a] 10 is a flowchart illustrating transmission scheduling for outbound service messages on a cloud network according to another exemplary embodiment of the present application. [Figure 6b] 10 is a flowchart illustrating transmission scheduling for outbound service messages on a cloud network according to another exemplary embodiment of the present application. [Figure 7] FIG. 1 is a schematic diagram illustrating high precision scheduling according to an exemplary embodiment of the present application; [Figure 8a] 1 is a flowchart illustrating transmission scheduling for an incoming service message on a cloud network according to an exemplary embodiment of the present application. [Figure 8b] 10 is a flowchart illustrating transmission scheduling for an incoming service message on a cloud network according to another exemplary embodiment of the present application. [Figure 9] 1 is a flowchart illustrating transmission scheduling for incoming attack traffic on a cloud network according to an exemplary embodiment of the present application. [Figure 10] 4 is a flowchart of a transmission scheduling method according to another exemplary embodiment of the present application; [Figure 11] 4 is a flowchart of a transmission scheduling method according to another exemplary embodiment of the present application; [Figure 12] 4 is a flowchart of a transmission scheduling method according to another exemplary embodiment of the present application; DETAILED DESCRIPTION OF THE INVENTION

[0009] 1. Cloud Network A cloud network is a network that performs service processing based on cloud technology. In an embodiment of the present invention, a cloud network architecture is provided. As shown in FIG. 1, a cloud network 101 can include an access network 102, a backbone network 103, and a data center network 104 as its architecture. The following introduces the related concepts of each network in the cloud network.

[0010] (1) Access network An access network is used to access one or more ISP (Internet Service Provider) networks. An ISP is a business that provides Internet services to objects, including but not limited to Internet access services, information services, and value-added services. An object is a service requester that requests Internet services from an ISP. An ISP network is a network provided by an ISP that provides Internet services to objects. An ISP network, also known as a public network or operator network, is a portal that allows objects to access the Internet. Different ISP networks (such as ISP Network 1, ISP Network 2, ISP Network 3, and ISP Network 4 in Figure 1) are provided by different ISPs.

[0011] An access network is a network for establishing interconnection between an ISP network and a data center network. An access network can include multiple POPs (Points-of-Presence). POPs, also known as network service provision points or local endpoints, are generally located at the edge of a cloud network and serve as access points to the ISP network, allowing data center networks to access the ISP network and enjoy Internet services. Different POPs may be located in the same or different regions, and each POP is used to serve a specific region. For example, as shown in FIG. 1 , the access network 102 includes POP1 located in city A and serving city A, and POP2 located in city B and serving city B. Note that the region where a POP is located and the region where the service is provided may be the same or different. For example, in the above example, POP1 may be located in city A but may also serve city C.

[0012] (2) Data Center Network A data center network, also known as an intranet, is a network built by a specific company or organization that can provide network services such as storage, computing, and resources and is available only to employees and devices within that specific company or organization. A data center network can include multiple availability zones (AZs), where AZs refer to one or more discrete physical data centers within the same region that are independent of each other in terms of infrastructure such as power and networks. An AZ can include one or more network modules (nets), which are internal networks within that AZ that can provide network services to specific regions. For example, as shown in FIG. 1, data center network 104 can include AZ1 and AZ2. AZ1 can include net1 and net2.

[0013] (3) Backbone network Because the backbone network functions as a communication hub between different networks within a cloud network and interconnects different data center networks, the backbone network is also called a DCI (Data Center Interconnection) network.

[0014] In the cloud network architecture shown in Figure 1, an access network 102 is connected to one or more ISP networks, and the access network 102 is connected to a backbone network 103, and a data center network 104 is also connected to the backbone network 103. By allowing the cloud network to access one or more ISP networks and interconnecting the networks within the cloud network, it is possible to provide Internet services for a large number of objects (more than a preset threshold).

[0015] 2. Border Gateway Protocol (BGP) BGP is used to exchange routing information between different autonomous systems (AS). An autonomous system is a collection of devices under the same organizational management and using the same policies. In other words, different devices in a network may be divided into different autonomous systems (AS), or all may be divided into one autonomous system. Therefore, these devices in one autonomous system share the same routing protocol and are managed by one organization, so BGP can realize communication between different autonomous systems. In the embodiment of the present application, one ISP network may be one AS.

[0016] 3. Routing and forwarding information Routing information is information generated by a routing algorithm to determine the transmission path of a message. Each piece of routing information contains three elements: a destination address, a mask, and a next hop. Here, the destination address is the address of the network to which the message should ultimately be delivered, such as the address of an ISP network or a network module. The mask is used to distinguish which bits in a network address identify the subnet in which the device resides and which bits identify the device's bit mask. The next hop is the next hop to which a service message is routed. If a message has not yet arrived at its destination address, it can be delivered to the destination address via the next hop. Routing information can be stored in a routing table, and each piece of routing information in the routing table can be called a routing table entry. Forwarding information is information that indicates the specific port to which a message should be moved, i.e., information that determines which appropriate specific port the message should be forwarded from. Forwarding information is generated according to the routing information. Specifically, a single piece of forwarding information can be generated by combining the routing information in the routing table with other information (e.g., information on network cards, ports, etc.). The forwarding information may be stored in a forwarding table, and any one piece of forwarding information in the forwarding table may be referred to as a forwarding table entry.

[0017] In an embodiment of the present application, the routing information in an ISP network is referred to as public network routing information. The size of the public network routing information usually reaches the level of one million. The routing information in a data center network may be referred to as intranet routing information. The size of the intranet routing information usually reaches only the level of one hundred thousand (i.e., one hundred thousand). The size here refers to the size of the routing information. When an ISP network is connected to a cloud network, the public network routing information is provided from the ISP network to the cloud network, so in a subsequent embodiment of the present application, the full routing information of the cloud network includes public network routing information and intranet routing information.

[0018] 4. Peering Connection A peering connection, or peer, refers to the establishment of a communication connection between two devices without distinguishing between a service requester and a service provider. Two devices that establish a peer connection can achieve equal and on-the-fly communication. In the embodiment of this application, a peer refers to a communication connection established between a first general-purpose switching component (e.g., an EAS (Edge Access Switch)) in an access network and any one of the ISP networks accessed by it. A peer is assigned a scheduling identifier (label) for mapping. The label can be used for scheduling the transmission of service messages.

[0019] 5. Cloud technology Cloud technology is a hosting technology that integrates a set of resources, including hardware, software, and networks, within a wide-area or local-area network to enable data computing, storage, processing, and sharing. Cloud technology is a collective term for network technology, information technology, integration technology, management platform technology, and application technology based on the cloud computing business model. It pools resources and allows for on-demand utilization, making it flexible and convenient. Background services in technology network systems, such as video streaming sites, image sharing sites, and more portal sites, require large amounts of computing and storage resources. With the rapid development and application of the Internet industry, in the future, each item may be given its own unique identification mark and will need to be transmitted to a background system for logical processing. Different levels of data will be processed separately, and industry-specific data will require robust system backup support. This can only be achieved through cloud computing, making cloud computing an important support.

[0020] 6. Cloud Computing Cloud computing refers to an IT infrastructure delivery and usage model that allows for on-demand, scalable access to resources over a network. In a broader sense, cloud computing refers to a service delivery and usage model that allows for on-demand, scalable access to services over a network. These services can be IT, software, Internet-related services, or other services. Cloud computing is an evolutionary integration of traditional computer and network technologies, such as grid computing, distributed computing, parallel computing, utility computing, network storage technologies, virtualization, and load balancing. Cloud computing has developed rapidly with the growth of the Internet, real-time streaming, and a diverse range of connected devices, as well as the growing demand for research services, social networks, mobile business, and open collaboration. Unlike traditional parallel and distributed computing, cloud computing conceptually promises to revolutionize the entire Internet model and enterprise management model.

[0021] Next, a distributed system according to an embodiment of the present invention will be described.

[0022] Referring to Figure 1, an architecture diagram of a distributed system according to an exemplary embodiment of the present application is shown. The distributed system is applied to a cloud network 101 and includes a first routing node device, a second routing node device, and a global routing service node device. Specifically, the distributed system is as follows:

[0023] (1) A first routing node device may be distributed across the access network 102 to access one or more ISP networks. The first routing node device is connected to the backbone network, thereby interconnecting the access network 102 and the backbone network 103. In one embodiment, the first routing node device may include a first generic switching component and a generic service component.

[0024] In one embodiment, the access network 102 includes multiple pops. The phrase "first routing node devices are distributed throughout the access network" refers to the fact that each pop is provided with at least one first routing node device. One first routing node device is comprised of one first generic switching component and one generic service component, both of which are connected to the backbone network. As shown in FIG. 1 , pop1 and pop2 are each provided with one first routing node device. The first routing node device in pop1 may include a first generic switching component 1011 and a generic service component 1012, both of which are connected to the backbone network 103. The first routing node device in pop2 may include a first generic switching component 1013 and a generic service component 1014, both of which are connected to the backbone network 103.

[0025] The first general-purpose exchange component is connected to one or more ISP networks and is used to establish peers with each ISP network it accesses using BGP and assign labels to each peer. Here, one peer is mapped to one label (i.e., there is a mapping relationship between one peer and one label). For example, if the first general-purpose exchange component 1011 is connected to ISP network 1 and ISP network 2, the first general-purpose exchange component 1011 establishes one peer (denoted as peer1-1) with ISP network 1 and assigns label1-1 to peer1-1. Similarly, the first general-purpose exchange component 1011 establishes one peer (denoted as peer1-2) with ISP network 2 and assigns label1-2 to peer1-2. Furthermore, when the first general-purpose exchange component 1013 is connected to ISP network 3 and ISP network 4, the first general-purpose exchange component 1013 establishes one peer (denoted as peer2-1) with ISP network 3 and assigns label 2-1 to map to peer 2-1. Similarly, the first general-purpose exchange component 1013 establishes a peer (denoted as peer2-2) with ISP network 4 and assigns label 2-2 to map to peer 2-2. Equal and equal communication can be performed between the first general-purpose exchange component with which a peer is established and the ISP network. Generally, the first general-purpose exchange component can include an EAS (Edge Access Switch). The EAS may be an inexpensive programmable switch, for example, a P4 switch.

[0026] The general-purpose service component may include an epp (Elastic Packet Processing) server. This epp server may be a general-purpose server. The general-purpose service component is used to perform high-precision transmission scheduling for service messages in a cloud network. High-precision transmission scheduling refers to flexible and customizable transmission scheduling for service messages in a cloud network. The general-purpose server may be an independent physical server or a server cluster consisting of multiple physical servers. It may also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.

[0027] (2) The second routing node devices are distributed throughout the data center network 104 to provide data connections between network modules within the data center network 104, thereby enabling data exchange between each network module within the data center network 104.

[0028] The datacenter network 104 includes one or more AZs, each containing one or more nets. "Second routing node devices are distributed throughout the datacenter network" means that at least one second routing node device is provided in each AZ, each second routing node device containing at least one second general-purpose switching component, and the second general-purpose switching component is connected to a backbone network. The second general-purpose switching component is connected to each net in the same AZ, thereby providing data connectivity between nets in the same AZ. For example, the datacenter network shown in FIG. 1 includes AZ1 and AZ2, with AZ1 containing net1 and net2, and AZ2 containing net3 and net4. Second routing node devices are provided in AZ1 and AZ2, respectively. The second routing node device in AZ1 includes a second general-purpose switching component 1021 connected to net1 and net2, respectively. The second routing node device in AZ2 includes a second general-purpose switching component 1022 connected to net3 and net4, respectively.

[0029] Here, the second general-purpose switching component may include an IAS (Internal Aggregate Switch), which may be an inexpensive programmable switch, such as a P4 switch.

[0030] (3) The global routing service node device 1023 is installed independently of the access network 102 and the data center network 104, and is connected to the backbone network 103. The global routing service node device 1023 may include an ERS (Elastic Routing Service) server, in which a global routing service program is physically or virtually deployed. In one aspect, the physical deployment refers to the global routing service program being deployed in the ERS server in the form of entity hardware. In another aspect, the virtual deployment refers to the global routing service program being deployed in the ERS server in the form of virtual software.

[0031] Each network in the cloud network architecture has a layered structure, in which the backbone network is at the lowest layer, the access network and the data center network are at layers above the backbone network, and the higher-layer networks (i.e., the access network and the data center network) can realize data connection through the backbone network at the lowest layer. A forwarding system and a routing system in a distributed system can also be built on the backbone network at the lowest layer.

[0032] (4) The routing system 105 in the distributed system is the routing plane of the entire distributed system. A routing plane is a functional module responsible for routing management and control. The routing plane determines the transmission path and forwarding policy of messages in the network. Generally, the routing system 105 may be referred to as a TVPN (Tencent Virtual Private Network) system. The routing system may be composed of a global routing service node device and a routing service instance deployed in the distributed system. The routing service instance may be an instance generated using virtual private network technology, and this routing service instance may be referred to as a TVPN instance, and is used to provide routing services to components. Generally, the routing service instance may be understood as a routing table. In one embodiment, a routing service instance is deployed in each of the generic service component, the first generic exchange component, and the second generic exchange component. The routing system is composed of a routing service instance deployed on the generic service component, a routing service instance deployed on the first generic exchange component, a routing service instance deployed on the second generic exchange component, and a global routing service node device. The routing service instance is deployed. These components (including the generic service component, the first generic exchange component, and the second generic exchange component) all belong to components in the routing system. The component in which the routing service instance is located can acquire and store routing information transmitted in the global routing service node device.

[0033] The routing system can exchange routing information based on the mapping relationship between peers and labels. Specifically, each node device (such as a first routing node device, a second routing node device, and a global routing node device) in the distributed system can exchange routing information of the cloud network, including the mapping relationship between peers and labels, in the routing system.

[0034] Each component in the routing system has its own routing plane, and the routing plane of each component in the routing system determines the transmission path and forwarding policy of messages in each component in the routing system. The routing plane of each component in the routing system is located and executed in the CPU subsystem of each component in the routing system. For example, the routing plane of the EAS is located and executed in the CPU subsystem of the EAS, and the routing plane of the IAS is located and executed in the CPU subsystem of the IAS. Each component in the routing system obtains routing information transmitted by the global routing service node device and stores full routing information of the cloud network in its own routing plane.

[0035] (5) The forwarding system 106 is the forwarding fabric of the entire distributed system. The so-called forwarding plane is a functional module responsible for executing forwarding policies for actual message forwarding. Generally, the forwarding system 106 may be referred to as a TEPE (Tencent Egress Peering Engineering) system. The forwarding system may be composed of a forwarding plane of a generic service component, a forwarding plane of a first generic switching component, and a forwarding plane of a second generic switching component. Therefore, the generic service component, the first generic switching component, and the second generic switching component all belong to the forwarding system. The forwarding plane of each component in the forwarding system is used to execute the forwarding policy of each component in the forwarding system on messages and perform actual forwarding of the messages in each component in the forwarding system. The forwarding plane of each component in the forwarding system is generally located and executed in the ASIC (Application Specific Integrated Circuit) subsystem of each component in the forwarding system. For example, the forwarding plane of an EAS is located and executed in the EAS ASIC subsystem. The forwarding plane of an IAS is located and executed in the IAS ASIC subsystem. In general, the ASIC subsystem may be an ASIC chip. A mapping relationship between peers and labels is maintained in the distributed system, and each node device in the distributed system can schedule transmission of service messages based on the mapping relationship within the forwarding system. Transmission scheduling here specifically refers to forwarding service messages according to routing information.

[0036] Each component in the forwarding system maintains its own local forwarding table. Each component in the forwarding system can synchronize forwarding information within its own forwarding plane based on the full routing information of the cloud network stored by it. The forwarding information synchronized by each component in the forwarding system is stored in its own local forwarding table, and the local forwarding table of each component in the forwarding system contains a label. When transmission scheduling for a service message is required, each component in the forwarding system can schedule the transmission of the service message on the cloud network according to the label in its local forwarding table.

[0037] A transmission scheduling method according to an embodiment of the present application can be realized based on the interactions between the node devices in the distributed system shown in Fig. 1. Referring to Fig. 2, Fig. 2 is a flowchart of a transmission scheduling method according to an exemplary embodiment of the present application. The transmission scheduling method includes the following steps S201 to S203.

[0038] S201: The mapping relationship between the peer and the label is obtained.

[0039] In one embodiment, when the first general-purpose exchange component accesses one or more ISP networks, the first general-purpose exchange component can establish a peer with each of the accessed ISP networks using the BGP protocol and assign a label to map to each peer. One peer is a communication connection established between one first general-purpose exchange component and one ISP network connected thereto, and one peer is mapped to one label.

[0040] For example, referring to Figure 3, there is shown a schematic diagram illustrating the transmission of routing information within a routing system according to an exemplary embodiment of the present application. A first generic exchange component 1 has access to two ISP networks, ISP network 1 and ISP network 2. The first generic exchange component 1 can establish peer 1 with ISP network 1 using BGP and assign label 1 that maps to peer 1. The first generic exchange component 1 can establish peer 2 with ISP network 2 using BGP and assign label 2 that maps to peer 2.

[0041] Furthermore, the first general-purpose switching component can store a mapping relationship between peers and labels. For example, in the example shown in FIG. 3, the first general-purpose switching component 1 can store a mapping relationship between peer1 and label1 and a mapping relationship between peer2 and label2. In one embodiment, the first general-purpose switching component can locally distribute the mapping relationship between peers and labels. The so-called local distribution refers to distributing the mapping relationship between peers and labels to the forwarding plane of the first general-purpose switching component. Thus, in the subsequent transmission scheduling process, the first general-purpose switching component can directly perform transmission scheduling (e.g., forwarding processing) on ​​the service message based on the mapping relationship on the forwarding plane.

[0042] It should be understood that when the first general-purpose exchange component accesses N ISP networks, it establishes N peers and locally distributes N mapping relationships. For example, in the above example, the first general-purpose exchange component establishes peer1 and peer2 and locally distributes mapping relationships corresponding to the two peers, i.e., the mapping relationship between peer1 and label1 and the mapping relationship between peer2 and label2.

[0043] S202: Transmit a mapping relationship between each node device in the distributed system.

[0044] In one embodiment, each node device in the distributed system exchanges cloud network routing information, including a mapping relationship between peers and labels, within the routing system. Specifically, a global routing service node device in the routing system collects cloud network routing information and transmits the cloud network routing information to each component in the routing system. In one embodiment, the global routing service node device includes an ERS server. The ERS server can transmit the cloud network routing information to each component that has a routing service instance deployed in the routing system via a global routing service program.

[0045] When a global routing service node device in a routing system collects routing information of a cloud network and transmits the routing information of the cloud network to each component in the routing system, there are the following two situations: 1) Each component in the routing system transmits routing information to the global routing service node, and the global routing service node device receives the routing information transmitted from each component in the routing system, organizes it, and transmits all the organized routing information to each component in the routing system; and 2) After receiving routing information transmitted from any component in the routing system, the global routing service node device transmits the routing information transmitted from any component it received to other components in the routing system.

[0046] Here, the routing information related to a peer includes a label that maps to the peer. For example, if there is a mapping relationship between peer1 and label1, the routing information related to peer1 includes label1. Since the routing information includes three elements, a destination address, a mask, and a next hop, the routing information related to a peer may be understood as follows: the destination address is a device address corresponding to the peer (e.g., the address of the first general-purpose exchange component or the address of an ISP network), the next hop is a device address corresponding to the peer, or the mask is a mask of the device corresponding to the peer.

[0047] In one embodiment, when the first generic exchange component transmits routing information used to access each ISP network to the global routing service node device, the first generic exchange component determines a peer associated with each ISP network and packages a label mapping to the peer in the routing information for each ISP network. The first generic exchange component transmits the routing information for each ISP network, with the label packaged, to the global routing service node device. For example, if peer 1 is established between the first generic exchange component and ISP network 1 and peer 2 is established between the first generic exchange component and ISP network 2, the first generic exchange component packages label 1, which maps to peer 1, in the routing information for ISP network 1 and packages label 2, which maps to peer 2, in the routing information for ISP network 2, and transmits the routing information for ISP network 1, with label 1 packaged, and the routing information for ISP network 2, with label 2 packaged, to the global routing service node device.

[0048] It should be understood that when the global routing service node device receives the routing information for each ISP network packaged with a label sent from the first general-purpose exchange component, it can transmit the routing information for each ISP network packaged with a label to each component in the routing system, thereby allowing each component in the routing system to store the routing information packaged with a label.

[0049] When the routing information of the cloud network is updated, the global routing service node device can transmit the updated routing information to each component in the routing system. An update of the routing information of the cloud network can include a change in routing information related to each component in the routing system, or a routing change due to each component in the routing system accessing a new network. For example, when the first generic exchange component receives a routing update message from the accessed ISP network, it means that the routing information of the cloud network has been updated, and the routing update message contains an updated routing message. The first generic exchange component attaches a label that maps to a peer related to the ISP network to the routing update message and sends the labeled routing update message to the global routing service node device. The global routing service node device can then send the labeled routing update message to each component in the routing system, allowing each component in the routing system to update its routing information based on the labeled routing update message.

[0050] Optionally, a routing update message is a BGP message that can carry a prefix and a community attribute. The community attribute is used to identify routes with the same characteristics and is an optional transitive attribute.

[0051] Among them, when the first general-purpose exchange component receives a routing update message from the ISP network, there is at least one of the following situations: 1) the first general-purpose exchange component receives the routing update message from the ISP network immediately after accessing the ISP network; 2) when the ISP network accessed by the first general-purpose exchange component changes, the first general-purpose exchange component receives the routing update message from the ISP network.

[0052] 3 as an example to specifically describe a procedure for transmitting routing information related to an ISP network between components in a routing system. This transmission procedure includes the steps of (1) when a first generic exchange component 1 accesses the ISP network 1, establishing a peer (denoted as peer1) with the ISP network 1 and assigning label 1 that maps to peer 1, (2) the ISP network 1 sending a routing update message including updated routing information to the first generic exchange component, (3) when the first generic exchange component 1 receives the routing update message, attaching label 1 to the routing update message and transmitting the routing update message with label 1 attached to a global routing service node device by a routing service instance arranged therein, and (4) the global routing service node device transmitting the routing update message with label 1 attached to each component in the routing system that has a routing service instance arranged therein. 3, the global service node device can use the routing service instance to send a routing update message labeled with label 1 to generic service component 1, generic service component 2, first generic switching component 2, second generic switching component 1, and second generic switching component 2 in the routing system. After receiving the routing update message labeled with label 1, each component in the routing system can store the updated routing information and label 1 included in the routing update message labeled with label 1.

[0053] It should be understood that, due to transmissions from the routing system, the global routing service node device and each component in the routing system stores full routing information for the cloud network. In some embodiments, the full routing information for the cloud network stored in each component in the routing system may be stored in each routing plane of each component in the routing system.

[0054] Furthermore, each component in the routing system can synchronize forwarding information on its forwarding plane based on the full routing information of the cloud network stored therein. However, there are slight differences in the forwarding information synchronized by the forwarding planes of different components. As shown in FIG. 4, FIG. 4 is a schematic diagram illustrating the synchronization of forwarding information by each component according to an exemplary embodiment of the present application. For a generic service component, the generic service component can synchronize the full forwarding information of the cloud network on its forwarding plane based on the full routing information stored therein. The full forwarding information of the cloud network synchronized on the forwarding plane of the generic service component is stored in the generic service component's local forwarding table. That is, the routing plane of the generic service component stores the full routing information, and the forwarding plane of the generic service component also stores the full forwarding information. Storing the full forwarding information in the forwarding plane of the generic service component enables highly accurate transmission scheduling of subsequent service messages. The full forwarding information may include forwarding information related to the ISP network and forwarding information related to the network module in the data center network, and the full forwarding information includes a label mapping to a peer. In this regard, since the forwarding information is generated based on the routing information, the forwarding information related to the ISP network may be understood as being generated based on the routing information related to the ISP network. Since the routing information includes three elements, namely, a destination address, a mask, and a next hop, the routing information related to the ISP network may be understood as the destination address being an address in the ISP network, or the next hop being an address in the ISP network, or the mask being a mask in the ISP network.

[0055] The first and second generic exchange components do not synchronize full forwarding information on their respective forwarding planes, but synchronize cloud network forwarding information on demand. The reasons for on-demand synchronization of cloud network forwarding information between the first and second generic exchange components are considered to be the following two: 1) The size of public network routing information is in the millions. When the first generic exchange component accesses the ISP network, it establishes a peer and assigns a mapping label. The first generic exchange component stores the label-peer mapping relationship, but the peer size is only in the hundreds. Therefore, when the first generic exchange component forwards a service message, it forwards the service message to the corresponding peer according to the label carried in the service message, thereby realizing peer-level scheduling. Therefore, the first generic exchange component does not need to synchronize full forwarding information. In the embodiment of the present application, the mapping relationship between a label and a peer may be referred to as a TEPE table entry. 2) Since the intranet routing information belongs to the internal network plan of the data center network, the size of the intranet routing information is smaller than the size of the public network routing information, and can be directly delivered to the forwarding plane of the first general-purpose exchange component and the second general-purpose exchange component.

[0056] Based on the above two reasons, the first generic exchange component can synchronize first component forwarding information of the cloud network on the forwarding plane of the first generic exchange component on demand based on the full routing information stored therein, where the first component forwarding information includes forwarding information related to the ISP network that accessed the first generic exchange component. The forwarding information related to the ISP network that accessed the first generic exchange component includes a TEPE table entry. In one embodiment, the first component forwarding information also includes forwarding information related to the network module.

[0057] Here, "synchronizing on-demand the first component forwarding information of the cloud network on the forwarding plane of the first generic exchange component" refers to determining an ISP network from which the first generic exchange component accessed the first generic exchange component, generating the first component forwarding information based on routing information associated with the ISP network from which the first generic exchange component accessed the first generic exchange component, and synchronizing the first component forwarding information on the forwarding plane of the first generic exchange component. Among these, the routing information associated with the ISP network from which the first generic exchange component accessed the first generic exchange component includes a label that maps to a peer associated with the ISP network. In some embodiments, the synchronized first component forwarding information of the cloud network is stored in a local forwarding table of the first generic exchange component.

[0058] It should be understood that the first component forwarding information includes all TEPE table entries. That is, if the first general-purpose switching component establishes peers with 10 ISP networks, the number of mapping relationships between peers and labels is 10, and the first component forwarding information includes 10 TEPE table entries. By synchronizing the first component forwarding information on the forwarding plane of the first general-purpose switching component, when forwarding a service message, the first general-purpose switching component can forward the service message to the corresponding peer according to the label carried in the service message, thereby realizing peer-level scheduling and eliminating the need for forwarding via million-level public network routing. In the embodiment of the present application, the forwarding model corresponding to the peer level may be referred to as TEPE forwarding.

[0059] The second generic exchange component synchronizes second component forwarding information of the cloud network on demand on the forwarding plane of the second generic exchange component based on the full routing information stored therein, where the second component forwarding information includes forwarding information related to a net located in the same AZ as the second generic exchange component. "Synchronizing second component forwarding information of the cloud network on demand on the forwarding plane of the second generic exchange component" refers to the second generic exchange component determining a net located in the same AZ as the second generic exchange component, generating forwarding information related to the net located in the same AZ based on the full routing information stored therein, generating second component forwarding information based on the forwarding information related to the net located in the same AZ, and synchronizing the second component forwarding information on the forwarding plane of the second generic exchange component. The synchronized second component forwarding information of the cloud network is stored in the local forwarding table of the second generic exchange component.

[0060] In some embodiments, the second component forwarding information also includes forwarding information related to the ISP network, i.e., the second general-purpose switching component synchronizes the forwarding information related to the ISP network on demand, thereby alleviating or sharing the pressure on the forwarding traffic of the general-purpose service component in scenarios that do not require elephant flows or precise scheduling of service messages. Here, elephant flows refer to the process of transmitting a large amount of general-purpose service messages continuously during network transmission.

[0061] By synchronizing full forwarding information to the generic service component as described above and synchronizing forwarding information on demand to the first generic switching component and the second generic switching component, it is possible to compress huge amounts of public network forwarding table entries (e.g., millions of entries) into smaller amounts of TEPE table entries (e.g., hundreds of entries), thereby achieving millions of public network routing forwarding entries within the limited table entry storage space of the ASIC subsystem (e.g., ASIC chip). Here, the table entry storage space refers to the storage space for storing forwarding table entries.

[0062] S203: Based on the mapping relationship, perform transmission scheduling for the service message on the cloud network.

[0063] A forwarding system in a distributed system can schedule the transmission of service messages on a cloud network based on the mapping relationship. Specifically, each node device in the distributed system schedules the transmission of service messages on the cloud network based on the mapping relationship within the forwarding system. In one embodiment, components included in each node device schedule the transmission of service messages on the cloud network based on the forwarding information in their local forwarding tables. When a service message on the cloud network arrives at a component in the forwarding system, the component searches its local forwarding table for the forwarding information required for forwarding. If the search is successful, the component packages a label related to the forwarding into the service message based on the searched forwarding information and forwards the service message according to the instructions in the searched forwarding information. On the other hand, if the search fails, the component sends the service message to a default next hop and schedules the transmission of the service message using the component pointed to by the default next hop.

[0064] Wherein, the service message can include both an incoming service message and an outgoing service message. An incoming service message is a service message transmitted from an ISP network to a data center network. An outgoing service message is a service message transmitted from a data center network to an ISP network. From the perspective of an incoming service message and an outgoing service message, the process in which each component in the forwarding system schedules the transmission of a service message on a cloud network based on the forwarding information in its local forwarding table will be described in detail in subsequent embodiments, and will not be further described here.

[0065] As described above, a distributed system according to an embodiment of the present application includes a first routing node device including a generic service component and a first generic exchange component, a second routing node device including a second generic exchange component, and a global routing service node device. In this manner, by constructing a distributed system using inexpensive generic components instead of enterprise routers, the large enterprise routers can be decoupled, greatly simplifying the operation process, reducing operation costs, and improving the scalability and flexibility of the distributed system. Furthermore, the routing system provides labels to each component in the forwarding system by transmitting a mapping relationship between labels and peers. This distributed system-based transmission scheduling method solves the problem of insufficient forwarding table entries stored in general-purpose switching components due to limited storage space in public network scenarios, and supports T-level standard forwarding speeds (T-level standard forwarding speed refers to the size of the forwarding bandwidth, where 1T=1024G, i.e., it can support 1024G of forwarding bandwidth), while reducing the number of routing paths and processing one million level routing forwarding on a hundred thousand level switching chip (i.e., the number of routing paths that can be processed by the switching chip is in the hundred thousand level), thereby realizing high-performance routing forwarding and flexible transmission scheduling, and meeting the transmission scheduling requirements of a cloud network.

[0066] Next, from the perspective of incoming service messages and outgoing service messages, the process of each component in the forwarding system scheduling the transmission of service messages on the cloud network based on the forwarding information in its local forwarding table will be described.

[0067] Referring to Figure 5, Figure 5 is a flowchart showing transmission scheduling for outgoing service messages on a cloud network according to an exemplary embodiment of the present application. The procedure for performing transmission scheduling for outgoing service messages on a cloud network includes the following steps s11 to s19.

[0068] s11: The second general-purpose exchange component receives an outgoing service message from the data center network, the outgoing service message including the address of the ISP network to be delivered.

[0069] In one embodiment, the second generic exchange component can receive an outgoing service message sent from a net connected to the second generic exchange component in the data center network, obtain an address of an ISP network to which the message should be delivered from the received outgoing service message, and perform step s12. For example, the second generic exchange component is connected to net1 in the data center network, and the second generic exchange component can receive an outgoing service message sent from net1 and obtain an address of an ISP network to which the message should be delivered from the outgoing service message. The outgoing service message can include a response when the net receives a service request sent from an object in the data center network. For example, if the service request is a data search, the outgoing service message includes the search results returned for the data search.

[0070] s12: The second general-purpose switching component searches for the forwarding information related to the ISP network to be delivered in its local forwarding table based on the address of the ISP network to be delivered. If the search is successful, it indicates that there is clear forwarding information for the forwarded service message in the local forwarding table of the second general-purpose switching component, so steps s13 to s14 can be executed. On the other hand, if the search is unsuccessful, it indicates that there is no clear forwarding information for the forwarded service message in the local forwarding table of the second general-purpose switching component, so it is necessary to forward the service message to the component where the full forwarding information is stored, i.e., execute steps s15 to s18.

[0071] The local forwarding table of the second generic exchange component records the second component forwarding information of the cloud network, which is synchronized on demand by the second generic exchange component. The forwarding information related to the ISP network to be delivered may include the address of the ISP network to be delivered, next hop, next hop port, label, etc. For example, the local forwarding table of the second generic exchange component is shown in Table 1. The address of the ISP network to be delivered is xxx.xxx.xxx.xxx, and the second generic exchange component can search for the forwarding information from Table 1 based on xxx.xxx.xxx.xxx. The forwarding information includes "next hop: first generic service group 1, next hop port: port A of first generic service component 1, label: label1".

[0072] [Table 1]

[0073] s13: If the search is successful, the second generic exchange component packages a label associated with the ISP network to which it should be delivered into the outgoing service message.

[0074] s14: The second general purpose switching component transfers the packaged outgoing service message to the corresponding first general purpose switching component according to the instruction of the retrieved transfer information, and then proceeds to step s19.

[0075] s15: If the search fails, the second generic exchange component sends the outgoing service message to a default next hop, which is directed to the generic service component.

[0076] Specifically, the second general-purpose exchange component can package the outgoing service message and then forward the packaged outgoing service message to a default next hop, where the general-purpose service component's local forwarding table records full forwarding information of the cloud network.

[0077] s16: The generic service component searches for forwarding information related to the ISP network to be delivered from the local forwarding table of the generic service component based on the address of the ISP network to be delivered.

[0078] In one embodiment, the local forwarding table of the generic service component records full forwarding information of the cloud network, and after receiving the outgoing service message sent from the second generic exchange component, the generic service component can obtain the address of the ISP network to be delivered from the outgoing service message, and based on the address of the ISP network to be delivered, search for forwarding information related to the ISP network to be delivered from the local forwarding table of the generic service component, and perform step s17.

[0079] s17: The generic service component packages a label associated with the ISP network to which the message should be delivered into the outgoing service message.

[0080] s18: The universal service component transfers the packaged outgoing service message to the corresponding first universal exchange component according to the instruction of the retrieved transfer information, and proceeds to s19.

[0081] s19: The first general-purpose exchange component unpackages the packaged outgoing service message to obtain an outgoing service message, and maps the outgoing service message to an ISP network to which it should be delivered based on the mapping relationship between peer and label.

[0082] In one embodiment, after receiving the packaged outgoing service message, the first general-purpose exchange component may unpackage the packaged outgoing service message to obtain an outgoing service and a label, and determine a peer to map to the label obtained by the unpackaging process based on the mapping relationship between the peer and the label stored on the forwarding plane, and directly map the outgoing service message to the ISP network to which the outgoing service message should be delivered via the peer. Through the mapping relationship between the peer and the label, the first general-purpose exchange component does not need to search a local routing table.

[0083] For ease of understanding, the process of scheduling the transmission of the entire outgoing service message will be described below using two examples.

[0084] (1) Transmitting an outbound service message from net1 in the data center network to ISP network 1.

[0085] 6A is a flowchart illustrating transmission scheduling for an outgoing service message on a cloud network according to another exemplary embodiment of the present application. The procedure for scheduling the transmission of the outgoing service message includes the following steps: 1) The second general-purpose exchange component 1 receives an outgoing service message from net1 in the data network center, the outgoing service message including the address of ISP1 to be delivered. 2) The second general-purpose exchange component 1 searches for forwarding information related to ISP network 1 in its local forwarding table based on the address of ISP network 1. At this time, it is assumed that the forwarding information related to ISP network 1 is successfully searched in the local forwarding table. For example, the forwarding information related to ISP network 1 includes label1 related to ISP network 1 and a next hop (the destination of which is set to the first general-purpose exchange component 1). The second general-purpose exchange component packages label1 into the outgoing service message to obtain the packaged outgoing service message. 3) The second general-purpose exchange component forwards the packaged outgoing service message to the corresponding first general-purpose exchange component 1 according to the searched forwarding information. 4) After receiving the packaged outgoing service message, the first general-purpose switching component 1 unpackages the packaged outgoing service message to obtain the outgoing service message and label 1, and determines a peer to map to label 1 based on the mapping relationship between label and peer. 5) Based on the peer to map to label 1, forward the outgoing service message to the exit of the ISP network 1.

[0086] (2) Transmit the outbound service message from net3 in the data center network to ISP network 3.

[0087] 6b is a flowchart showing transmission scheduling for an outgoing service message on a cloud network according to another exemplary embodiment of the present application. The procedure for scheduling the transmission of the outgoing service message includes the following steps: 1) The second generic exchange component 2 receives an outgoing service message from net3 in the data network center, the outgoing service message including the address of ISP3 to be delivered. 2) The second generic exchange component 2 searches its local forwarding table for forwarding information related to the ISP network 3 based on the address of the ISP network 3. 3) If the second generic exchange component 2 fails to search for forwarding information related to the ISP network 3 in the second generic exchange component 2, the second generic exchange component 2 sends the outgoing service message to the next hop for which the generic service component 2 is set as the destination. 4) After receiving the outgoing service message, the generic service component 2 searches its local forwarding table for forwarding information related to the ISP network 3 based on the address of the ISP network 3. The searched forwarding information related to the ISP network 3 includes the address of the forwarding information related to the ISP network 3, the next hop (for which the first generic exchange component 2 is set as the destination), and label3. 5) The general-purpose service component 2 packages label3 into the outgoing service message, obtains the packaged outgoing service message, and forwards the packaged outgoing service message to the corresponding first general-purpose exchange component 2 according to the instructions of the retrieved forwarding information. 6) After receiving the packaged outgoing service message, the first general-purpose exchange component 2 unpackages the packaged outgoing service message to obtain the outgoing service message and label3, and then determines the peer to map to label3 based on the mapping relationship between the stored label and peer, and forwards the outgoing service message directly to the exit of the ISP network 3 according to the peer to map to label3.

[0088] As described above, when forwarding an outgoing service message, by forwarding the outgoing service message based on the label, the first general-purpose switching component can forward the outgoing service message to the corresponding peer according to the label carried in the outgoing service message, thereby realizing peer-level scheduling, but eliminating the need for routing and forwarding by a million-level public network (i.e., eliminating the need for routing and forwarding based on million-level public network routing information).

[0089] In addition, in an embodiment of the present invention, high-precision scheduling can be performed for service messages (e.g., outbound service messages). In this case, the general-purpose service component in the forwarding system may store full routing information and full forwarding information, and may also optionally include traffic classification rules for defining classification rules for service messages and scheduling tables for recording transmission information for service messages of the same class. For example, FIG. 7 is a schematic diagram of high-precision scheduling according to an exemplary embodiment of the present application. In FIG. 7, the classification rules for service messages defined by the traffic classification rules may define service messages containing audio content as a normal service class, service messages containing video content as a high-quality service class, and service messages containing text content as a default service class. The high-quality service class corresponds to scheduling table 1, which records transmission information for service messages of the high-quality service class. The normal service class corresponds to scheduling table 2, which records transmission information for service messages of the normal service class. The default service class corresponds to scheduling table 3, which records transmission information for service messages of the default service class. In another example, the classification rule for service messages defined in the traffic classification rule may define service messages with high real-time requirements as a real-time service class, and service messages with low real-time requirements as a non-real-time service class.

[0090] Among them, the transmission information in one scheduling table can include route information and egress information for transmitting a service message of one class. The transmission information in one scheduling table can be comprehensively determined based on the class of the service message, the transmission quality of different egresses, and the transmission cost. For example, a service message of a high-quality service class requires high egress transmission quality and high egress transmission cost. Therefore, the distributed system can compile full routing information to search for route information with high egress transmission quality and high transmission cost to obtain the route information and egress information for transmitting the service message of the high-quality service class. For example, this route information can be from the first general-purpose switching component to China Telecom's ISP network, and the egress information can be "Telecom's ISP network." Furthermore, a service message of a default service class requires low egress transmission quality and low egress transmission cost. Therefore, the distributed system can compile full routing information to find route information with low egress transmission quality and low transmission cost, so the route information and egress information for the service message of the default service class can be transmitted. For example, the route information may be: first general-purpose exchange component->China Unicom's ISP network, and the exit information may be "China Unicom's ISP network."

[0091] In this case, the step of scheduling the transmission of the service message on the cloud network may further include the steps of: a general-purpose service component classifying the service message on the cloud network according to a traffic classification rule to obtain a class to which the service message belongs; and scheduling the transmission of the service message according to the transmission information recorded in the scheduling table corresponding to the class to which the service message belongs. In one embodiment, a splitter is disposed in the general-purpose service component, so that the general-purpose service component calls the splitter to classify the service message on the cloud network according to the traffic classification rule and obtain the class to which the service message belongs. For example, in FIG. 7, after calling the splitter and classifying the service message on the cloud network according to the traffic classification rule, it is determined that the class to which the service message belongs is the high-quality service class. Then, the general-purpose service component determines a scheduling table 1 corresponding to the high-quality service class and schedules the transmission of the service message according to the transmission information recorded in the scheduling table 1.

[0092] If the service message includes an outgoing service message, the general-purpose service component receives the outgoing service message from the second general-purpose exchange component, and, as necessary, schedules the transmission of the outgoing service message according to a local forwarding table, or schedules the transmission of the outgoing service message using a highly accurate scheduling method, but it should be understood that this is not limited to the embodiments of the present application. The above method can meet the highly accurate, customizable, and flexible scheduling requirements based on service and traffic in the cloud network, thereby improving the flexibility of service message transmission scheduling across the entire cloud network and showing significant advantages in terms of cost, performance, flexibility, etc.

[0093] A procedure for scheduling transmission of incoming service messages on a cloud network is described.

[0094] Referring to Figure 8a, Figure 8a is a flowchart illustrating transmission scheduling for incoming service messages on a cloud network according to an exemplary embodiment of the present application. The transmission scheduling procedure for incoming service messages on a cloud network includes the following steps s21 to s25:

[0095] s21: The first general switching component receives an incoming service message from the ISP network, the message including the address of a net in the data center network to be delivered.

[0096] s22: The first general-purpose exchange component searches for forwarding information related to the net to be delivered in a local forwarding table of the first general-purpose exchange component based on the address of the net to be delivered, where the local forwarding table of the first general-purpose exchange component records the first component forwarding information of the cloud network synchronized on demand by the first general-purpose exchange component.

[0097] In one embodiment, the forwarding of the incoming service message relies on intranet forwarding information, and the scale of the intranet routing information is much smaller than the scale of the public network routing information, i.e., the scale of the public network routing information is only in the hundreds of thousands. Therefore, when the forwarding plane of the first generic switching component and the forwarding plane of the second generic switching component are synchronized on demand, the forwarding information related to all nets in the data center network is synchronized. Therefore, the first component forwarding information recorded in the local forwarding table of the first generic switching component includes forwarding information related to the net to be delivered. Therefore, the first generic switching component can obtain the address of the net to be delivered from the incoming service message, and search the local forwarding table of the first generic switching component for forwarding information related to the net to be delivered based on the address of the net to be delivered, and then perform step s23. The forwarding information related to the net to be delivered obtained by the search can include the address of the net to be delivered, next hop, next hop port, label, etc.

[0098] s23: The first generic exchange component packages a label associated with the ISP network (ie, a label that maps to a peer associated with the ISP network) into the incoming service message according to the instructions of the retrieved forwarding information.

[0099] s24: The first generic switching component forwards the packaged incoming service message to a corresponding second generic switching component.

[0100] s25: The second general-purpose switching component unpackages the packaged incoming service message to obtain an incoming service message, and transmits the incoming service message to the net to which it should be delivered.

[0101] In one embodiment, after receiving a packaged incoming service message forwarded by the first general purpose exchange component, the second general purpose exchange component can unpackage the packaged incoming service message to obtain the incoming service message and the address of the net to which it is to be delivered, and then transmit the incoming service message to the net to which it is to be delivered based on the address of the net to which it is to be delivered.

[0102] For ease of understanding, a transmission scheduling procedure for the entire incoming service message will now be described using a specific example. FIG. 8B is a flowchart showing transmission scheduling for an incoming service message on a cloud network according to an exemplary embodiment of the present application. The transmission scheduling procedure for an incoming service message includes the following steps: 1) The first generic exchange component 1 receives an incoming service message from the ISP network 1, the incoming service message including the address of net1 in the data center network to which the message should be delivered. 2) The first generic exchange component 1 searches for forwarding information related to net1 in its local forwarding table based on the address of net1. The forwarding information related to net1 obtained by the search includes label1 related to the ISP network 1 and a next hop (the second generic exchange component 1 is set as the destination). 3) The first generic exchange component 1 packages label1 into the incoming service message according to the instruction of the searched forwarding information, and forwards the packaged incoming service message to the corresponding second generic exchange component 1. 4) The second general-purpose switching component 1 unpackages the packaged incoming service message to obtain the incoming service message and the address of net1, and transmits the incoming service message to net1 based on the address of net1.

[0103] As can be seen from Figure 8b, transmission scheduling for incoming service messages is handled directly by the first and second generic exchange components, but not via a generic service component such as an EPP server. Therefore, as shown in Figure 9, which is a flowchart of transmission scheduling for incoming attack traffic according to an exemplary embodiment of the present application, when the first generic exchange component receives incoming attack traffic from the network (incoming attack traffic refers to traffic intended to attack services provided by the data center network), all incoming service messages are processed by the first generic exchange component (i.e., processed by hardware), so that the incoming attack traffic is also processed by the first generic exchange component, but without posing any risk to the generic service component, and the security of the generic service component can be ensured to a certain extent. The incoming attack traffic may be a distributed denial of service attack (DDOS).

[0104] From the above, from the viewpoint that each component in the forwarding system performs transmission scheduling for incoming service messages and outgoing service messages on the cloud network based on the forwarding information in its local forwarding table, the first general-purpose switching component and the second general-purpose switching component perform differential treatment and asymmetric processing for outgoing service messages and incoming service messages, and asymmetric processing can perform TEPE forwarding for outgoing service messages, which solves the problem of insufficient forwarding table entries stored in general-purpose switching components due to limited storage space in public network scenarios, supports T-level standard forwarding speeds, reduces the number of routing paths, and processes million-level routing forwarding on a hundred thousand-level switching chip, realizing high-performance routing forwarding and flexible transmission scheduling, and meeting the transmission scheduling requirements of cloud networks.

[0105] Next, the transmission scheduling method according to the embodiment of the present application will be described from the perspective of the first general switching component, the second general switching component and the general service component respectively.

[0106] 10, which is a flowchart of a transmission scheduling method according to an exemplary embodiment of the present application, which is performed by a first general-purpose switching component in a distributed system and includes the following steps S1001 to S1003:

[0107] S1001: The mapping relationship between the peer and the label is acquired.

[0108] In one embodiment, the first generic switching component can access one or more ISP networks, and can establish peers with each of the accessed ISP networks using BGP, assign a label mapping to each peer, and store a mapping relationship between each peer and the label.

[0109] S1002: Perform transmission scheduling for service messages on the cloud network based on the mapping relationship between peers and labels, where the service messages include outgoing service messages and incoming messages.

[0110] (1) When the service message includes an outgoing service message, the step of scheduling transmission of the service message on the cloud network based on the mapping relationship between the peer and the label includes: 1) receiving a packaged outgoing service message sent from a second general-purpose exchange component, where the packaged outgoing service message is obtained by packaging a label related to the ISP network to which the outgoing service message should be delivered into an outgoing service message package after the second general-purpose exchange component receives the outgoing service message from the data center network; and 2) unpackaging the packaged outgoing service message to obtain the outgoing service message, and mapping the outgoing service message to the ISP network to which the outgoing service message should be delivered based on the mapping relationship between the peer and the label.

[0111] (2) If the service message includes an outgoing service message, the step of scheduling transmission of the service message on the cloud network based on the mapping relationship between the peer and the label includes: 1) receiving a packaged outgoing service message forwarded from the general-purpose service component, where the packaged outgoing service message is obtained by packaging the outgoing service message with a label related to the ISP network to which it should be delivered after the general-purpose service component receives the outgoing service message from the second general-purpose exchange component; and 2) unpackaging the packaged outgoing service message to obtain the outgoing service message, and mapping the outgoing service message to the ISP network to which it should be delivered based on the mapping relationship between the peer and the label.

[0112] (3) When the service message includes an incoming service message, the step of scheduling transmission of the service message on the cloud network based on the mapping relationship between the peer and the label includes: 1) receiving an incoming service message from an ISP network, the incoming service message including the address of a network module in the data center network to be delivered; 2) searching for forwarding information related to the network module to be delivered in a local forwarding table of a first general-purpose exchange component based on the address of the network module to be delivered, where the local forwarding table of the first general-purpose exchange component records the first component forwarding information of the cloud network synchronized on demand by the first general-purpose exchange component; and 3) according to the instruction of the searched forwarding information, packaging a label related to the ISP network into the incoming service message, and forwarding the packaged incoming service message to a corresponding second general-purpose exchange component, thereby using the second general-purpose exchange component to unpackage the packaged incoming service message to obtain a service message, and transmitting the incoming service message to the network module to which the incoming service message should be delivered.

[0113] In one embodiment, the transmission scheduling method further includes step S1003 of receiving a routing update message sent from an ISP network that has accessed the first general-purpose exchange component, labeling the routing update information, and sending the labeled routing update message to a global routing service node device, thereby utilizing the global routing service node device to transmit the labeled routing update message to a routing system of the distributed system.

[0114] In an embodiment of the present application, the first general-purpose exchange component performs transmission scheduling for service messages on the cloud network based on the mapping relationship between peer and label, thereby realizing peer-level scheduling, and eliminating the need for routing and forwarding via a million-level public network, thereby realizing high-performance routing and forwarding and flexible transmission scheduling, and meeting the transmission scheduling requirements of a cloud network.

[0115] 11, which is a flowchart of a transmission scheduling method according to another exemplary embodiment of the present application, which is performed by a second general-purpose switching component in a distributed system, and includes the following steps S1101 to S1102:

[0116] S1101: The mapping relationship between the peer and the label is obtained.

[0117] In a specific embodiment, the second general-purpose exchange component can obtain routing information to be transmitted, including a mapping relationship between a peer and a label, from a routing system.

[0118] S1102: Perform transmission scheduling for service messages on the cloud network based on the mapping relationship between peers and labels, where the service messages include outgoing service messages and incoming service messages.

[0119] (1) When the service message includes an outgoing service message, which is a service message transmitted from a data center network to an ISP network, the step of scheduling transmission of the service message on the cloud network based on the mapping relationship between peer and label includes: 1) receiving an outgoing service message from the data center network, the outgoing service message including the address of the ISP network to be delivered; 2) searching for forwarding information related to the ISP network to be delivered from a local forwarding table of a second general-purpose exchange component, the local forwarding table of the second general-purpose exchange component recording the second component forwarding information of the cloud network synchronized on demand by the second general-purpose exchange component; and 3) if the search is successful, using the second general-purpose exchange component to add a label related to the ISP network to be delivered to the outgoing service message. 3) using the generic service component to package the outgoing service message based on the address of the ISP network to which it should be delivered and the forwarding information in the local forwarding table of the generic service component by sending the outgoing service message to a default next hop pointing to the generic service component according to a local forwarding table, and forwarding the packaged outgoing service message to the corresponding first generic exchange component according to the instructions of the forwarding information retrieved, thereby using the first generic exchange component to unpackage the packaged outgoing service message to obtain the outgoing service message, and map the outgoing service message to the ISP network to which it should be delivered based on the mapping relationship between peer and label; and 4) if the search fails, using the generic service component to package the outgoing service message based on the address of the ISP network to which it should be delivered and the forwarding information in the local forwarding table of the generic service component by sending the outgoing service message to a default next hop pointing to the generic service component according to a local forwarding table, and forwarding the packaged outgoing service message to the corresponding first generic exchange component.

[0120] (2) If the service message includes an incoming service message, the step of scheduling transmission of the service message on the cloud network based on the mapping relationship between the peer and the label includes: 1) receiving a packaged incoming service message sent from the second general-purpose exchange component, where the packaged incoming service message is obtained by the first general-purpose exchange component packaging a label related to the ISP network to which the incoming service message is to be delivered into an incoming service message package; and 2) unpackaging the packaged incoming service message to obtain an incoming service message, and transmitting the incoming service message to the net to which the incoming service message is to be delivered based on the address of the net in the data center network to which the incoming service message is to be delivered.

[0121] In an embodiment of the present application, the second general-purpose exchange component performs transmission scheduling for service messages on the cloud network based on the mapping relationship between peer and label, thereby realizing peer-level scheduling, and eliminating the need for routing and forwarding via a million-level public network, thereby realizing high-performance routing and forwarding and flexible transmission scheduling, and meeting the transmission scheduling requirements of a cloud network.

[0122] 12, which is a flowchart of a transmission scheduling method according to another exemplary embodiment of the present application, which is performed by a general-purpose service component in a distributed system and includes the following steps S1201 to S1203:

[0123] S1201: Receive an outgoing service message sent from a second general-purpose exchange component, where the outgoing service message is a service message transmitted from a data center network to an ISP network, and the outgoing service message includes an address of the ISP network to which the message should be delivered.

[0124] S1202: Search for forwarding information related to the ISP network to be delivered in the local forwarding table of the general-purpose service component based on the address of the ISP network to be delivered, where the full forwarding information of the cloud network is recorded in the local forwarding table of the general-purpose service component.

[0125] S1203: Package a label related to the ISP network to which the message should be delivered into an outgoing service message, and forward the packaged outgoing service message to a corresponding first general-purpose exchange component according to the instructions of the retrieved forwarding information, thereby using the first general-purpose exchange component to unpackage the packaged outgoing service message to obtain an outgoing service message, and map the outgoing service message to the ISP network to which the message should be delivered.

[0126] Optionally, if the general-purpose service component is configured with a traffic classification rule for defining a classification rule for service messages and a scheduling table for recording transmission information of service messages of the same class, the transmission scheduling method further includes a step of classifying service messages on the cloud network according to the traffic classification rule and obtaining a class to which the service message belongs, and a step S1024 of performing transmission scheduling for service messages that may include outgoing service messages according to the transmission information recorded in the scheduling table corresponding to the class.

[0127] In an embodiment of the present application, a generic service component performs transmission scheduling for service messages on a cloud network based on the mapping relationship between peers and labels, thereby achieving peer-level scheduling. This eliminates the need for routing across a million-level public network, significantly reducing the number of routing paths on the Internet while achieving high-performance routing and flexible transmission scheduling, thereby meeting the transmission scheduling requirements of a cloud network. Furthermore, by deploying traffic classification rules and scheduling tables on the generic service component, high-precision scheduling based on objects and services can be achieved.

[0128] Those skilled in the art may understand that all or part of the steps in the above method embodiments can be realized by instructing relevant hardware through a computer program, the program being stored in a computer-readable storage medium, and the steps of each of the above method embodiments can be realized when the program is executed. Here, the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), a random access memory (RAM), etc.

[0129] What has been disclosed above is merely a preferred embodiment of the present application, and of course does not limit the present application, so any equivalent modifications to the claims of the present application should be included in the protection scope of the present application.

Claims

1. A distributed system applied to a cloud network including an access network, a backbone network, and a data center network as an architecture, The distributed system comprises: a first routing node device that is distributed across one or more internet service provider networks to access the access network, the first routing node device including a generic service component and a first generic exchange component; second routing node devices, which are distributed in the data center network to provide data connections between network modules in the data center network and include a second general-purpose switching component; a global routing service node device installed independently of the access network and the data center network; the first routing node device, the second routing node device, and the global routing service node device are all connected to the backbone network; The distributed system maintains a mapping relationship between peering connections and scheduling identifiers transmitted between each node device of the distributed system, and each node device of the distributed system schedules transmission of service messages on the cloud network based on the mapping relationship.

2. the access network includes a plurality of access points, each of which is provided with at least one of the first routing node devices, each of which is composed of a first general-purpose exchange component and a general-purpose service component, and both of the first general-purpose exchange component and the general-purpose service component are connected to the backbone network; the first generic exchange component is for accessing one or more internet service provider networks, establishing peering connections with each accessed internet service provider network via a border gateway protocol, and assigning a scheduling identifier mapping to each of the peering connections; the general-purpose service component is for performing a scheduling process on the service message on the cloud network based on the mapping relationship; 2. The distributed system of claim 1, wherein the peering connection is a communication connection established between the first generic exchange component and any one of the accessed Internet provider networks, the peering connection mapping to a corresponding one of the scheduling identifiers, the first generic exchange component including an edge access switch, and the generic service component including an elastic packet processing server.

3. the data center network includes a plurality of availability zones, each of the availability zones includes one or more network modules, each of the availability zones is provided with at least one second routing node device, one of the second routing node devices includes at least one second general-purpose exchange component, the second general-purpose exchange component is connected to the backbone network, the second general-purpose exchange component is connected to each of the network modules present in the same availability zone to provide a data connection between the network modules present in the same availability zone; 2. The distributed system of claim 1, wherein the second general purpose switching component comprises an internal access switch.

4. The global routing service node device includes an elastic routing service server on which a global routing service program is located; 2. The distributed system according to claim 1, wherein the global routing service program in the elastic routing service server is physically or virtually located.

5. a routing service instance is located on each of the generic service component, the first generic exchange component, and the second generic exchange component; the distributed system includes a routing system configured from the global routing service node device and a routing service instance located in the distributed system; The distributed system of claim 1, wherein each node device of the distributed system exchanges routing information of the cloud network within the routing system, and the routing information includes the mapping relationship.

6. a global routing service node device in the routing system collects routing information of the cloud network and transmits the routing information of the cloud network to each component in the routing system, the component in the routing system being a component in which a routing service instance is located in the distributed system; When the routing information of the cloud network is updated, the global routing service node device transmits the updated routing information to each component in the routing system; 6. The distributed system of claim 5, wherein the transmission causes the global routing service node device and each component in the routing system to store full routing information for the cloud network, and the routing information related to peering connections includes a scheduling identifier that maps to the peering connection.

7. the distributed system includes a forwarding system configured with a forwarding plane of the generic service component, a forwarding plane of the first generic switching component, and a forwarding plane of the second generic switching component, the generic service component, the first generic switching component, and the second generic switching component all belong to components within the forwarding system; The distributed system according to claim 1 , wherein each node device in the distributed system performs transmission scheduling for service messages on the cloud network based on the mapping relationship within the forwarding system.

8. the generic service component, the first generic exchange component, and the second generic exchange component store full routing information for the cloud network, and the routing information associated with a peering connection includes a scheduling identifier that maps to the peering connection; The generic service component synchronizes full forwarding information of the cloud network on a forwarding plane of the generic service component based on the full routing information; the first generic exchange component synchronizes, on demand, first component forwarding information of the cloud network on a forwarding plane of the first generic exchange component based on the full routing information; the second generic exchange component receives the full routing information and synchronizes on-demand second component forwarding information of the cloud network on a forwarding plane of the second generic exchange component; 2. The distributed system of claim 1, wherein the first component forwarding information includes forwarding information associated with an Internet service provider network that accessed the first generic exchange component, and the second component forwarding information includes forwarding information associated with a network module that resides in the same availability zone as the second generic exchange component.

9. The full forwarding information of the cloud network synchronized by the generic service component is stored in a local forwarding table of the generic service component; The first component forwarding information of the cloud network synchronized on demand by the first general-purpose exchange component is stored in a local forwarding table of the first general-purpose exchange component; The second component forwarding information of the cloud network synchronized on demand by the second general-purpose exchange component is stored in a local forwarding table of the second general-purpose exchange component; The distributed system of claim 7, wherein each component in the forwarding system schedules transmission of service messages on the cloud network based on forwarding information in its local forwarding table.

10. The performing of transmission scheduling includes: When a service message on the cloud network arrives at any one of the components in the forwarding system, the any one of the components searches for forwarding information required for forwarding in its local forwarding table; If the search is successful, the one component packages a scheduling identifier associated with transmission into the service message based on the searched forwarding information, and performs a forwarding process on the service message according to the instruction of the searched forwarding information; 8. The distributed system of claim 7, further comprising: if the search fails, the one component sends the service message to a default next hop and schedules transmission of the service message using a component pointed to by the default next hop.

11. When the general-purpose service component is configured with a traffic classification rule for defining a classification rule for service messages and a scheduling table for recording transmission information of service messages of the same class, performing transmission scheduling includes:

2. The distributed system of claim 1, wherein the general-purpose service component includes a step of classifying service messages on the cloud network according to the traffic classification rule to obtain a class to which the service message belongs, and a step of scheduling transmission of the service message according to transmission information recorded in a scheduling table corresponding to the class to which the service message belongs.

12. A transmission scheduling method applied to a distributed system according to any one of claims 1 to 11, comprising: obtaining a mapping relationship between a peering connection and a scheduling identifier; transmitting the mapping relationship between each node device of the distributed system; and performing transmission scheduling for the service message on the cloud network based on the mapping relationship.

13. When the service message on the cloud network includes an outgoing service message, which is a service message transmitted from the data center network to the internet service provider network, the step of performing transmission scheduling for the service message on the cloud network based on the mapping relationship includes: the second generic exchange component receiving from the data center network an outgoing service message including an address of an internet service provider network to be delivered; The second general-purpose exchange component searches for forwarding information related to the Internet service provider network to be delivered in a local forwarding table of the second general-purpose exchange component based on the address of the Internet service provider network to be delivered, wherein the local forwarding table of the second general-purpose exchange component stores second component forwarding information of the cloud network synchronized on demand by the second general-purpose exchange component; If the search is successful, the second generic exchange component packages a scheduling identifier associated with the destination internet service provider network into the outgoing service message, and forwards the packaged outgoing service message to a corresponding first generic exchange component as directed by the searched forwarding information; 13. The method of claim 12, further comprising: the first generic exchange component unpackaging the packaged outgoing service message to obtain the outgoing service message, and mapping the outgoing service message to the internet service provider network to which it should be delivered based on a mapping relationship between a peering connection and a scheduling identifier.

14. if the search fails, the second generic exchange component sends the outgoing service message to a default next hop, the generic service component being directed by the default next hop; the generic service component searches for forwarding information related to the destination internet service provider network in a local forwarding table of the generic service component based on the address of the destination internet service provider network, where the local forwarding table of the generic service component stores full forwarding information of the cloud network; the generic service component packages a scheduling identifier associated with the destination internet service provider network into the outgoing service message, and forwards the packaged outgoing service message to a corresponding first generic switching component as directed by the retrieved forwarding information; 14. The method of claim 13, further comprising: the first generic exchange component unpackaging the packaged outgoing service message to obtain the outgoing service message, and mapping the outgoing service message to the internet service provider network to which it should be delivered based on a mapping relationship between a peering connection and a scheduling identifier.

15. When the service messages on the cloud network include incoming service messages that are service messages transmitted from the internet service provider network to the data center network, the step of performing transmission scheduling for the service messages on the cloud network based on the mapping relationship includes: the first generic exchange component receiving an incoming service message from the internet service provider network, the incoming service message including an address of a network module in a data center network to which the message is to be delivered; The first general-purpose exchange component searches for forwarding information related to the network module to be delivered in a local forwarding table of the first general-purpose exchange component based on the address of the network module to be delivered, wherein the local forwarding table of the first general-purpose exchange component records first component forwarding information of the cloud network synchronized on demand by the first general-purpose exchange component; the first generic switching component packaging a scheduling identifier associated with the internet service provider network into the incoming service message as directed by the retrieved forwarding information, and forwarding the packaged incoming service message to a corresponding second generic switching component; 13. The method of claim 12, further comprising: the second generic exchange component unpackaging the packaged incoming service message to obtain the incoming service message, and transmitting the incoming service message to the network module to which it is to be delivered.

16. A computer program, which when executed causes the computer program to implement the method according to claim 12.

Citation Information

Patent Citations

  • Cloud-based services exchange

    CN106464592A

  • Programmable network platform for a cloud-based services exchange

    CN106464742A

  • Cloud-based service exchange

    JP2017524290A

  • A programmable network platform for cloud-based service exchange

    JP2017527151A

  • Communication system and communication method

    JP2019153911A