Networking method, line card, switching device, electronic device, chip and storage medium

By using line cards and switching equipment, and employing packet switching technology and load balancing algorithms, the high cost and scalability issues of traditional networking methods are resolved, resulting in a low-cost, high-performance network architecture that can adapt to the needs of different business scenarios.

CN119449719BActive Publication Date: 2026-07-10CHINA MOBILE COMM LTD RES INST +1

Patent Information

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

AI Technical Summary

Technical Problem

Traditional cluster routers/switches are limited by high complexity, high power consumption, high cost, and tight coupling, making it difficult to meet the network requirements for large-scale expansion and low latency. Moreover, existing networking methods are costly, have limited scalability, or are highly closed, making them unable to flexibly adapt to different business scenarios.

Method used

It employs packet switching technology, assembles data packets and distributes them using load balancing algorithms through line cards, and achieves data forwarding in conjunction with switching equipment. It uses control request messages and spatial acknowledgment message formats to form a load-balanced network architecture, supporting elastic expansion and flexible networking.

Benefits of technology

It achieves an efficient and flexible network architecture based on packet switching technology, reduces network costs, reduces packet loss risk, improves network latency performance, and supports adaptive expansion for different business scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449719B_ABST
    Figure CN119449719B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a networking method, a line card, a switching device, an electronic device, a chip and a computer readable storage medium, wherein the method is applied to a first line card and includes: receiving a plurality of first data packets; the plurality of first data packets are data packets sent by a first device to a second device; assembling the plurality of first data packets to obtain at least one first data packet group, each first data packet group including one or more first data packets; and distributing the at least one first data packet group to at least one first switching device through a load balancing algorithm, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a networking method, a network interface card, a switching device, an electronic device, a chip, and a computer-readable storage medium. Background Technology

[0002] With the booming development of emerging businesses such as big data cloud services, computing networks, 5G, and AI, network traffic is growing rapidly at a rate of 30% annually. However, traditional cluster architecture routers / switches face limitations such as high requirements for deployment environments, poor single-point heat dissipation, and significant impact from single-point failures, hindering their further development. The highly complex, high-power, high-cost, and tightly coupled architecture of traditional cluster routers / switches urgently needs to be changed, redefining a new IP product architecture that is simple, low-carbon, open, and scalable. Simultaneously, with the development of distributed storage and high-performance computing, there is an urgent need for networks with high bandwidth and low latency characteristics, which can be elastically scaled to meet real-time, high-speed business scenarios. Summary of the Invention

[0003] This application provides a networking method, a line card, a switching device, an electronic device, a chip, and a computer-readable storage medium.

[0004] The technical solution of this application embodiment is implemented as follows:

[0005] In a first aspect, embodiments of this application provide a networking method applied to a first line card, characterized in that it includes:

[0006] Receive multiple first data packets; the multiple first data packets are data packets sent by the first device to the second device;

[0007] The plurality of first data packets are assembled to obtain at least one first data packet group, and each first data packet group includes one or more first data packets;

[0008] The at least one first data packet group is distributed to at least one first switching device through a load balancing algorithm, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device.

[0009] Secondly, embodiments of this application provide a networking method applied to switching equipment, characterized in that it includes:

[0010] Receive a first data packet group sent by a first line card, the first data packet group including one or more first data packets, the first data packet being one of a plurality of first data packets sent by the first device to the second device;

[0011] The first data packet group is forwarded to the second line card; wherein the first line card is the line card connected to the first device, and the second line card is the line card connected to the second device.

[0012] Thirdly, embodiments of this application provide a line card, characterized in that it includes:

[0013] First receiving unit: used to receive multiple first data packets; the multiple first data packets are data packets sent by the first device to the second device;

[0014] First sending unit: configured to assemble the plurality of first data packets to obtain at least one first data packet group, each first data packet group including one or more first data packets; and to distribute the at least one first data packet group to at least one first switching device through a load balancing algorithm, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device.

[0015] Fourthly, embodiments of this application provide a switching device, characterized in that it includes:

[0016] Second receiving unit: used to receive a first data packet group sent by the first line card, the first data packet group including one or more first data packets, the first data packet being one of a plurality of first data packets sent by the first device to the second device;

[0017] The second sending unit is used to forward the first data packet group to the second line card; wherein the first line card is the line card connected to the first device, and the second line card is the line card connected to the second device.

[0018] Fifthly, this application provides an electronic device, including: a processor and a memory, the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to execute any of the networking methods provided in the embodiments of this application.

[0019] Sixthly, this application provides a chip, including: a processor, for calling and running a computer program from a memory, causing a device equipped with the chip to execute any of the networking methods provided in the embodiments of this application.

[0020] Seventhly, this application provides a computer-readable storage medium for storing a computer program that causes a computer to execute any of the networking methods provided in the embodiments of this application.

[0021] The networking method provided in this application embodiment assembles data packets sent from the first device to the second device using a line card to obtain data packet groups. The data packet groups are then distributed to the switching device using a load balancing algorithm. In this way, data forwarding based on packet switching technology can be achieved through the switching device. Since this data forwarding method uses packet switching technology based on a load balancing algorithm, it has lower network costs and lower network latency. Attached Figure Description

[0022] Figure 1 Schematic diagram of the implementation process of the networking method provided in the embodiments of this application Figure 1 ;

[0023] Figure 2 This is a schematic diagram illustrating the combination and reconstruction of Packet groups provided in the embodiments of this application;

[0024] Figure 3 This is a schematic diagram showing the location of the Packet group information in the VXLAN packet provided in the embodiments of this application;

[0025] Figure 4 This is a schematic diagram showing the location of the Packet group information in the SRv6 message provided in the embodiments of this application;

[0026] Figure 5 Network diagram provided for embodiments of this application Figure 1 ;

[0027] Figure 6 This is a data forwarding diagram provided in an embodiment of this application;

[0028] Figure 7 Network diagram provided for embodiments of this application Figure 2 ;

[0029] Figure 8 This is a schematic diagram of the message format headers for the space request message and the space request response message provided in the embodiments of this application;

[0030] Figure 9 A schematic diagram of the implementation process of the networking method provided in the embodiments of this application. Figure 2 ;

[0031] Figure 10 This is a schematic diagram of the structure of the line card 1000 provided in the embodiments of this application;

[0032] Figure 11 This is a schematic diagram of the structure of the switching device 1100 provided in the embodiments of this application;

[0033] Figure 12A schematic structural diagram of an electronic device provided in the embodiments of this application;

[0034] Figure 13 This is a schematic structural diagram of the chip provided in an embodiment of this application. Detailed Implementation

[0035] The technical solutions of the embodiments of this application will now be described with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0036] It should be noted that, in the embodiments of this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, in the embodiments of this application, the character " / " generally indicates that the preceding and following related objects have an "or" relationship.

[0037] In the description of the embodiments of this application, the term "correspondence" may indicate that there is a direct or indirect correspondence between two things, or that there is an association between two things, or that there is a relationship of instruction and being instructed, configuration and being configured, etc.

[0038] To facilitate understanding of the technical solutions of the embodiments of this application, the relevant technologies of the embodiments of this application are described below. The following relevant technologies are optional solutions and can be combined with the technical solutions of the embodiments of this application in any way, and they all fall within the protection scope of the embodiments of this application.

[0039] The networking in the relevant technologies adopts the following three methods:

[0040] The first type: Infiniband. Infiniband networking is currently the optimal solution for high-performance networks, utilizing ultra-high bandwidth and a credit-based mechanism to ensure congestion-free operation and ultra-low latency. A dedicated network protocol stack, specifically designed by IBTA for RDMA, guarantees data transmission reliability at the hardware level, relying on the data link layer (IB Link Layer) for flow control and reliable low-latency transmission. It requires dedicated IB network interface cards (NICs) and IB switches.

[0041] The second type is the chassis-based cluster. This type of network device has its own independent main control board, service board, power module, fan module, etc., and comes with its own external frame. The devices are connected in a cluster manner to form a multi-level, multi-plane system, enabling them to work collaboratively.

[0042] The third type: DDC. DCC is a solution for distributed decoupled chassis equipment. The service line card acts as the front end and becomes NCP (Network Cloud Packet (Line card in Chassis)), while the switching board acts as the back end and becomes NCF (Network Cloud Fabric (Fabric card in Chassis)). The connector components between the two are now replaced by fiber optic cables, and forwarding supports cell switching.

[0043] However, the following technical problems still exist in the aforementioned related technologies:

[0044] 1. IB networking

[0045] Utilizing ultra-high bandwidth and a credit-based mechanism to ensure congestion-free operation and ultra-low latency results in costs several times higher than traditional Ethernet networks with the same bandwidth. It is costly, slow to evolve, and difficult to maintain.

[0046] 2. Frame-based cluster

[0047] Limited scalability, chassis size limits the maximum number of ports, high power consumption, high power requirements for the rack, large number of ports per device, and large fault domain.

[0048] 3. DDC

[0049] DDC technology is closed, requiring line cards and switching network boards to use Broadcom chips, making it impossible for end users to source components from a second source. Furthermore, DDC requires line cards and switching network boards to support cell switching, resulting in higher costs and technical requirements.

[0050] Figure 1 Schematic diagram of the implementation process of the networking method provided in the embodiments of this application Figure 1 ,like Figure 1 As shown in the embodiment of this application, a networking method is provided and applied to a line card. The method includes the following steps:

[0051] Step 101: Receive multiple first data packets; the multiple first data packets are data packets sent by the first device to the second device.

[0052] In practical applications, the first device and the second device can be virtual machines or other devices, and this application does not limit them.

[0053] In practical applications, the line card can be a standalone box switch or router device, or other devices; this application does not limit this.

[0054] Step 102: Assemble the plurality of first data packets to obtain at least one first data packet group, each first data packet group including one or more first data packets.

[0055] Since the packets in a data packet group are only virtually reassembled, the order of the packets remains unchanged.

[0056] The messages in the data packet group carry at least one of the following information: first information, second information, and third information; wherein...

[0057] The first information represents the number of the data packet group to which the data packet belongs;

[0058] The second information indicates whether the data packet is the starting data packet of its data packet group;

[0059] The third piece of information indicates whether the data packet is the end data packet of its data packet group.

[0060] refer to Figure 2 , Figure 2 This diagram illustrates the assembly and reconstruction of packet groups provided in this application embodiment. Packet groups are based on virtual reassembly and reconstruction technology for data packets. The incoming line card needs to support assembly, and the outgoing line card needs to support reconstruction. The LC side of the incoming line card assembles the packets, and the LC side of the outgoing line card separates the packets. A packet group is a logically fixed-length packet, such as 10000, which can be uniformly agreed upon according to the chip and device specifications. Packet group1, Packet group2, and Packet group3 are three data packet groups. Figure 2 Packet group1, Packet group2, and Packet group3 can be arranged for sorting and restoration with sequence numbers. Sorting and restoration can be performed using the original messages. For example, refer to... Figure 3 , Figure 3 This diagram illustrates the location of Packet group information within a VXLAN packet, as provided in this embodiment. Taking a VXLAN packet as an example, reserved bits in the VXLAN header can store the Packet group number, the start and end information of the Packet group packet. The packet group number can be used to obtain the overall packet order. The First of group and Last of group information can be used to determine whether the packet is the start or end packet in the packet; where the Packet group number corresponds to the first piece of information, and the First of group and Last of group information correspond to the second and third pieces of information, respectively. (Reference) Figure 4 , Figure 4This diagram illustrates the location of Packet group information in an SRv6 message according to an embodiment of this application. Reserved bits in the SRv6 header can store the Packet group number, the start and end information of the Packet group message. The order of the entire packet can be obtained by querying the Packet group number. Whether a message is the start or end message in the packet can be determined using the First of group and Last of group information; where the Packet group number corresponds to the first piece of information, and First of group and Last of group correspond to the second and third pieces of information, respectively.

[0061] Step 103: Distribute the at least one first data packet group to at least one first switching device through a load balancing algorithm, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device.

[0062] In some alternative implementations, distributing the at least one first data packet group to at least one first switching device using a load balancing algorithm includes:

[0063] Obtain a connection diagram showing the load status of the line card and switching equipment;

[0064] Based on the load diagram, a distribution link is selected for the at least one first data packet group;

[0065] According to the distribution link, the at least one first data packet is distributed to at least one first switching device.

[0066] In practical applications, the line card can obtain the load connection diagram between the line card and the switching equipment on its own; or it can obtain the load connection diagram between the line card and the switching equipment through an external control device. Obtaining the load connection diagram between each line card and each switching equipment through an external control device can save the line card's energy consumption and resources.

[0067] In some optional implementations, the load condition connection diagram is obtained by marking the connections between line cards and switching devices in the first connection diagram based on the traffic range and the first traffic. The first connection diagram is drawn based on the connection relationship between the line cards and the switching devices, and the first traffic includes the traffic from the line card to the switching device and / or the traffic from the switching device to the line card.

[0068] The second line card is one of at least one second line card connected to the second device.

[0069] For example, refer to Figure 5 and Figure 6 , Figure 5 Network diagram provided for embodiments of this application Figure 1 , Figure 6 This is a schematic diagram of data forwarding provided in an embodiment of this application. Figure 6 In this diagram, the Ingress LC is the incoming line card, connected to the first device, and the Egress LC is the outgoing line card, connected to the second device. After receiving data packets from the first device, the incoming line card obtains the connection relationships between each line card and each switching device. Based on these relationships, it draws a connection diagram and counts the bidirectional traffic between each line card and each switching device. It sets traffic ranges and, based on these ranges and the bidirectional traffic between each line card and each switching device, marks the connections between each line card and each switching device in the connection diagram to generate a load diagram. Based on the load diagram, it selects a distribution link for at least one data packet group and distributes it to the switching device on that link. The switching device then forwards the data packets to the corresponding outgoing line card of the second device, which restores the data packets and sends them back to the second device.

[0070] In some implementations, the load condition is divided into three levels: green for connection lines with a message volume below 60%, yellow for connection lines with a message volume between 60% and 80%, and red for connection lines with a message volume above 80%.

[0071] For example, refer to Figure 5 , Figure 5In this example, LC1, LC2, LC3, and LC4 are line cards, and FE1, FE2, FE3, and FE4 are switching devices. For instance, VM1 is connected to LC1, and VM2 is connected to LC2. When VM1 wants to send data to VM2, VM1 sends multiple first data packets to LC1. LC1 stores these first data packets and obtains a load balancing connection diagram. In this embodiment, there are four paths for the data sent from LC1 to LC2: LC1-FE1-LC2, LC1-FE2-LC2, LC1-FE3-LC2, and LC1-FE4-LC2. LC1 selects the link for sending the first space request message using a load balancing algorithm. For instance, if the selected sending link is LC1-FE1-LC2, the first space request message is forwarded to LC2 via FE1. After receiving the first space request message, LC2 calculates whether VM2 has cache space to process the data that VM1 wants to send to VM2. If VM2 has... The cache space processes this data. LC2 sends a first space request response message to FE1 to inform VM2 that it has cache space to process the data. FE1 forwards the first space request response message to LC1. After receiving the first space request response message, LC1 assembles the first data packet sent by VM1 to obtain at least one first data packet group. The distribution link of at least one first data packet group is selected through a load balancing algorithm. For example, the paths LC1-FE1-LC2, LC1-FE2-LC2, and LC1-FE3-LC2 are selected to distribute at least one first data packet group. FE1, FE2, and FE3 forward one or more first data packet groups sent by LC1 to LC2. For example, if FE1 receives one first data packet group sent by LC1, FE1 forwards the first data packet group to LC2. If FE1 receives two first data packet groups sent by LC1, FE1 forwards both first data packet groups to LC2. In this embodiment, the second device is connected to only one line card LC2. Therefore, at least one first data packet group is forwarded to LC2 through three switching devices. LC2 restores one or more first data packet groups sent by FE1, FE2 and FE3 to obtain multiple first data packets, stores the first data packets in the buffer of each port, and forwards the first data packets to VM2.

[0072] refer to Figure 7 , Figure 7 Network diagram provided for embodiments of this application Figure 2 , and network topology diagram Figure 1The difference lies in the addition of an external control device, which is a control line card. This control device collects the entire system topology connections and gathers bidirectional traffic information for each FE and LC node through message statistics, forming an overall load connection diagram. When the WMA sends a message to the VMB, the LC1 line card can use the control device to obtain the load information from LC1 to each FE node and from each FE node to the LC3 node, and then make routing decisions.

[0073] It should be noted that, Figure 5 , Figure 6 and Figure 7 The network connection methods shown are only examples. In actual application of this application, other network connection methods can be used for networking. For example, to improve transmission efficiency or facilitate backup, a virtual machine can be connected to multiple line cards.

[0074] In some alternative implementations, after receiving the plurality of first data packets, the method further includes:

[0075] Store the plurality of first data packets;

[0076] Send a first space request message to the switching network board, the switching network board including the at least one first switching device;

[0077] The device receives a first space request response message sent by the switching network board, wherein the first space request response message is used to indicate whether the second device has buffer space for processing the first data packet;

[0078] Assembling the plurality of first data packets to obtain at least one first data packet group includes:

[0079] If the first space request response message indicates that the second device has a cache space for processing the first data packet, then the plurality of first data packets are assembled to obtain at least one first data packet group.

[0080] Due to the scalability of switching equipment, the various devices involved in data forwarding can be flexibly expanded. Interactive devices suitable for different business scenarios can be added to the switching network board to meet different business scenarios. For example, switching devices suitable for real-time and high-speed business scenarios can be added to the switching network board to meet real-time and high-speed business scenarios.

[0081] The line card receives data packets from the network and classifies them for storage in its VOQ (Voice of Message). Before sending data packets, it sends a space request control message to determine if the second device has enough buffer space to process these packets.

[0082] If no response is received from the first space request or the second device is temporarily unable to process the message, the message will be temporarily stored in the first device's storage. The line card has on-chip and off-chip buffers, which can cache data for a period of time. The message will only be sent when the second device confirms that it can be received, thus avoiding packet loss caused by direct forwarding to the second device.

[0083] In some alternative implementations, sending the first space request message to the switching network board includes:

[0084] The sending link for the first space request message is selected based on the load connection diagram.

[0085] A first space request message is sent to the switching network board according to the transmission link.

[0086] In network setup, a line card can be used as both an incoming line card and an outgoing line card.

[0087] In some optional implementations, the networking method further includes

[0088] Receive a second data packet group sent by a second switching device; the second data packet group includes one or more second data packets, which are data packets sent by the second device to the first device;

[0089] The received second data packet group is restored to obtain the one or more second data packets;

[0090] Send the one or more second data packets to the first device.

[0091] In practical applications, the line card reconstructs one or more second data packets from the second data packet group, stores the second data packets in the buffer of each port, and then forwards the second data packets to the first device.

[0092] In some optional implementations, the networking method further includes

[0093] The first device receives a second space request message sent by the second switching device. The second space request message is used to determine whether the cache space of the first device is greater than or equal to the cache space required to process the second data packet.

[0094] Based on the second space request message, obtain the cache space of the first device;

[0095] If the cache space of the first device is greater than or equal to the cache space required to process the second data packet, a second space request response message is sent to the second switching device. The second space request response message is used to indicate that the first device has cache space for processing the second data packet.

[0096] For example, refer to Figure 8 , Figure 8 This is a schematic diagram of the message format headers for the space request message and the space request response message provided in the embodiments of this application, as shown below. Figure 8 As shown, the DMAC position is the outgoing line card MAC, the SMAC position is the incoming line card MAC, the TYPE position is the message type, the DIP position is the outgoing line card IP, the SIP position is the incoming line card IP, the Command Type is the message type (for example, 00 represents a request and 01 represents a response; in actual applications, this can be set according to the actual situation, and this application does not limit this), the Space position is the requested space, and the Free space or not position is the response result (for example, 00 represents initialization, 01 represents no space, and 10 represents space); in actual applications, this can be set according to the actual situation, and this application does not limit this), and the Payload position is the payload.

[0097] refer to Figure 9 , Figure 9 A schematic diagram of the implementation process of the networking method provided in the embodiments of this application. Figure 2 In this embodiment, the networking method is applied to a switching device, and the method includes the following steps:

[0098] Step 901: Receive a first data packet group sent by the first line card. The first data packet group includes one or more first data packets, and the first data packet is one of a plurality of first data packets sent by the first device to the second device.

[0099] In practical applications, the switching equipment can be a standalone box switch or router, or other devices; this application does not limit the specific device used.

[0100] Step 902: Forward the first data packet group to the second line card; wherein the first line card is the line card connected to the first device, and the second line card is the line card connected to the second device.

[0101] In some alternative implementations, the data packet carries at least one of the following information: first information, second information, and third information; wherein,

[0102] The first information represents the number of the data packet group to which the data packet belongs;

[0103] The second information indicates whether the data packet is the starting data packet of its data packet group;

[0104] The third piece of information indicates whether the data packet is the end data packet of its data packet group.

[0105] In some alternative implementations, the method further includes:

[0106] Receive the first space request message sent by the first line card, and send the first space request message to the second line card;

[0107] The device receives a first space request response message sent by the second line card and sends the first space request response message to the first line card; wherein the first space request response message is used to indicate whether the second device has buffer space for processing the first data packet.

[0108] The networking method provided in this application adopts a high-performance network architecture scheme based on packet switching technology. The line card device and the switching network device use the control request message and space confirmation message format in this application embodiment to confirm the space information. Multiple messages are combined into a group by the line card device. The packet group information is stored in the message and participates in the sorting of the group message. The addition of control cards or control devices forms an overall load connection topology diagram and adopts a full-path load balancing scheme.

[0109] The networking method provided in this application adopts packet switching technology, with a wide range of selectable chips and product forms, and can be implemented with simple modifications to existing equipment. It can also flexibly support larger-scale networks. It does not require support for cell switching. The packet switching method used is simple and convenient, and the network cost is lower. Furthermore, since the packets remain unchanged, it solves the problem of cell switching being fragmented into small pieces, making tracking and location difficult; it reduces system packet loss through simple packet interaction; packet group information can guarantee the correct order of packets; and the full-path load balancing scheme, through multi-path forwarding, makes the load on different paths more even.

[0110] refer to Figure 10 , Figure 10 This is a schematic diagram of the structure of the line card 1000 provided in the embodiments of this application, as shown below. Figure 10 As shown, the line card 1000 includes:

[0111] First receiving unit 1010: used to receive multiple first data packets; the multiple first data packets are data packets sent from the first device to the second device;

[0112] First sending unit 1020: assembles the plurality of first data packets to obtain at least one first data packet group, each first data packet group including one or more first data packets; distributes the at least one first data packet group to at least one first switching device through a load balancing algorithm, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device.

[0113] In this embodiment of the application, the first sending unit 1020 is further configured to store the plurality of first data packets; send a first space request message to the switching network board, the switching network board including the at least one first switching device; the first receiving unit 1010 is further configured to receive a first space request response message sent by the switching network board, the first space request response message being used to indicate whether the second device has buffer space for processing the first data packets; the first sending unit 1020 is specifically configured to assemble the plurality of first data packets to obtain at least one first data packet group if the first space request response message indicates that the second device has buffer space for processing the first data packets.

[0114] In this embodiment of the application, the first sending unit 1020 is specifically used to: obtain a load connection diagram of the line card and the switching device; select a distribution link for the at least one first data packet group based on the load connection diagram; and distribute the at least one first data packet group to at least one first switching device according to the distribution link.

[0115] In this embodiment of the application, the load condition connection diagram is obtained by marking the connection between the line card and the switching device in the first connection diagram based on the traffic range and the first traffic. The first connection diagram is drawn based on the connection relationship between the line card and the switching device, and the first traffic includes the traffic from the line card to the switching device and / or the traffic from the switching device to the line card.

[0116] In this embodiment of the application, the first sending unit 1020 is further configured to select the sending link of the first space request message based on the load connection diagram; and send the first space request message to the switching network board according to the sending link.

[0117] In this embodiment of the application, the first receiving unit 1010 is further configured to receive a second data packet group sent by the second switching device; the second data packet group includes one or more second data packets, the second data packets being data packets sent by the second device to the first device; restore the received second data packet group to obtain the one or more second data packets; and send the one or more second data packets to the first device.

[0118] In this embodiment of the application, the first receiving unit 1010: receives a second space request message sent by the second switching device, the second space request message being used to determine whether the cache space of the first device is greater than or equal to the cache space required to process the second data packet; and obtains the cache space of the first device based on the second space request message; the first sending unit 1020: is further used to send a second space request response message to the second switching device when the cache space of the first device is greater than or equal to the cache space required to process the second data packet, the second space request response message being used to indicate that the first device has cache space for processing the second data packet.

[0119] In this embodiment of the application, the data packet carries at least one of the following information: first information, second information, and third information; wherein, the first information represents the number of the data packet group to which the data packet belongs; the second information represents whether the data packet is the starting data packet of the data packet group to which it belongs; and the third information represents whether the data packet is the ending data packet of the data packet group to which it belongs.

[0120] Those skilled in the art should understand that Figure 10 The functions of each unit in the line card shown can be understood by referring to the relevant descriptions of the aforementioned methods. Figure 10 The functions of each unit in the line card shown can be implemented by a program running on a processor or by specific logic circuits.

[0121] refer to Figure 11 , Figure 11 This is a schematic diagram of the structure of the switching device 1100 provided in the embodiments of this application, as shown below. Figure 11 As shown, the switching device 1100 includes:

[0122] Second receiving unit 1110: used to receive a first data packet group sent by the first line card, the first data packet group including one or more first data packets, the first data packet being one of a plurality of first data packets sent by the first device to the second device;

[0123] Second sending unit 1120: forwards the first data packet group to the second line card; wherein the first line card is the line card connected to the first device, and the second line card is the line card connected to the second device.

[0124] In this embodiment of the application, the second receiving unit 1110 is further configured to receive a first space request message sent by the first line card; the second sending unit 1120 is further configured to send the first space request message to the second line card; the second receiving unit 1110 is further configured to receive a first space request response message sent by the second line card; the second sending unit 1120 is further configured to send the first space request response message to the first line card; wherein, the first space request response message is used to indicate whether the second device has buffer space for processing the first data packet.

[0125] Figure 12 This is a schematic structural diagram of an electronic device 1200 provided in an embodiment of this application. Figure 12 The illustrated electronic device 1200 includes a processor 1210, which can call and run computer programs from memory to implement the methods in the embodiments of this application.

[0126] Optionally, such as Figure 12 As shown, the electronic device 1200 may further include a memory 1220. The processor 1210 can retrieve and run computer programs from the memory 1220 to implement the methods described in the embodiments of this application.

[0127] The memory 1220 can be a separate device independent of the processor 1210, or it can be integrated into the processor 1210.

[0128] Optionally, such as Figure 12 As shown, the electronic device 1200 may also include a transceiver 1230, and the processor 1210 may control the transceiver 1230 to communicate with other devices. Specifically, it may send information or data to other devices or receive information or data sent by other devices.

[0129] The transceiver 1230 may include a transmitter and a receiver. The transceiver 1230 may further include an antenna, and the number of antennas may be one or more.

[0130] The electronic device 1200 may specifically be a line card or a switching device in the embodiments of this application, and the electronic device 1200 can implement the corresponding processes implemented by the line card or the switching device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.

[0131] Figure 13 This is a schematic structural diagram of the chip according to an embodiment of this application. Figure 13 The chip 1300 shown includes a processor 1310, which can call and run computer programs from memory to implement the methods in the embodiments of this application.

[0132] Optionally, such as Figure 13 As shown, chip 1300 may further include memory 1320. Processor 1310 can retrieve and run computer programs from memory 1320 to implement the methods described in this embodiment.

[0133] The memory 1320 can be a separate device independent of the processor 1310, or it can be integrated into the processor 1310.

[0134] Optionally, the chip 1300 may also include an input interface 1330. The processor 1310 can control the input interface 1330 to communicate with other devices or chips; specifically, it can acquire information or data sent by other devices or chips.

[0135] Optionally, the chip 1300 may also include an output interface 1340. The processor 1310 can control the output interface 1340 to communicate with other devices or chips, specifically, to output information or data to other devices or chips.

[0136] This chip can be applied to the line card and switching device in the embodiments of this application, and the chip can implement the corresponding processes implemented by the line card and switching device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.

[0137] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.

[0138] It should be understood that the processor in the embodiments of this application may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method embodiments can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor described above can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.

[0139] It is understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DR RAM). It should be noted that the memory used in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0140] It should be understood that the above-described memory is exemplary and not a limiting description. For example, the memory in the embodiments of this application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DR RAM), etc. That is to say, the memory in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.

[0141] This application also provides a computer-readable storage medium for storing a computer program. This computer-readable storage medium can be applied to the line cards and switching devices in the embodiments of this application, and the computer program causes the computer to execute the corresponding processes implemented by the line cards and switching devices in the various methods of the embodiments of this application. For the sake of brevity, further details are omitted here.

[0142] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0143] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0144] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0145] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0146] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0147] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or line card, switching device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0148] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A networking method applied to a first line card, characterized in that, include: Receive multiple first data packets; The plurality of first data packets are data packets sent from the first device to the second device; The plurality of first data packets are assembled to obtain at least one first data packet group, and each first data packet group includes one or more first data packets; the first data packet group is a virtual reassembly. Data packet group information is stored in the message; The message order remains unchanged; The data packet group information includes: first information, second information, and third information; wherein, the first information represents the number of the data packet group to which the first data packet belongs; the second information represents whether the first data packet is the starting data packet of the data packet group to which it belongs; and the third information represents whether the first data packet is the ending data packet of the data packet group to which it belongs. Obtain a load connection diagram of the line card and the switching device; the load connection diagram is obtained by marking the flow of the connection between the line card and the switching device in the first connection diagram based on the flow range and the first flow, wherein the first connection diagram is drawn based on the connection relationship between the line card and the switching device, and the first flow includes the flow of the line card to the switching device and / or the flow of the switching device to the line card; Based on the load diagram, a distribution link is selected for the at least one first data packet group; According to the distribution link, the at least one first data packet group is distributed to the at least one first switching device, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device.

2. The networking method according to claim 1, characterized in that, After receiving multiple first data packets, the process further includes: Store the plurality of first data packets; A first space request message is sent to the switching network board, the switching network board including the at least one first switching device, the first space request message being used to determine whether the second device has buffer space for processing the first data packet; The device receives a first space request response message sent by the switching network board based on the first space request message. The first space request response message is used to indicate that the second device has buffer space for processing the first data packet. Assembling the plurality of first data packets to obtain at least one first data packet group includes: Based on the first space request response message, the plurality of first data packets are assembled to obtain the at least one first data packet group.

3. The networking method according to claim 2, characterized in that, Sending the first space request message to the switching network board includes: The sending link for the first space request message is selected based on the load connection diagram. A first space request message is sent to the switching network board according to the transmission link.

4. The networking method according to claim 3, characterized in that, Also includes: Receive a second data packet group sent by a second switching device; the second data packet group includes one or more second data packets, which are data packets sent by the second device to the first device; The received second data packet group is restored to obtain the one or more second data packets; Send the one or more second data packets to the first device.

5. The networking method according to claim 4, characterized in that, Also includes: The first device receives a second space request message sent by the second switching device. The second space request message is used to determine whether the cache space of the first device is greater than or equal to the cache space required to process the second data packet. Based on the second space request message, obtain the cache space of the first device; If the cache space of the first device is greater than or equal to the cache space required to process the second data packet, a second space request response message is sent to the second switching device. The second space request response message is used to indicate that the first device has cache space for processing the second data packet.

6. A networking method applied to switching equipment, characterized in that, include: The system receives a first data packet group sent by a first line card. The first data packet group includes one or more first data packets. The first data packet group is a virtual reassembled data packet. The data packet group information is stored in the message. The message order remains unchanged. The first data packet is one of a plurality of first data packets sent by the first device to the second device. The first data packet group is a connection diagram of the load status between the first line card and the switching device obtained by the first line card. Based on the load condition connection diagram, a distribution link is selected for at least one first data packet group; the data packets are sent to the switching device according to the distribution link; the data packet group information includes: first information, second information, and third information; wherein, the first information represents the number of the data packet group to which the first data packet belongs; the second information represents whether the first data packet is the starting data packet of its data packet group; the third information represents whether the first data packet is the ending data packet of its data packet group; the load condition connection diagram is obtained by marking the flow of the connection between the line card and the switching device in the first connection diagram based on the flow range and the first flow, wherein the first connection diagram is drawn based on the connection relationship between the line card and the switching device, and the first flow includes the flow of the line card to the switching device and / or the flow of the switching device to the line card; The first data packet group is forwarded to the second line card; wherein the first line card is the line card connected to the first device, and the second line card is the line card connected to the second device.

7. The networking method according to claim 6, characterized in that, Also includes: Receive the first space request message sent by the first line card, and send the first space request message to the second line card; The device receives a first space request response message sent by the second line card and sends the first space request response message to the first line card; wherein the first space request response message is used to indicate whether the second device has buffer space for processing the first data packet.

8. A line card, characterized in that, include: First receiving unit: used to receive multiple first data packets; The plurality of first data packets are data packets sent from the first device to the second device; First sending unit: used to assemble the plurality of first data packets to obtain at least one first data packet group, each first data packet group including one or more first data packets; the first data packet group is a virtual reassembly; the data packet group information is stored in the message; the message order remains unchanged; and to obtain the load connection diagram of the line card and the switching equipment. Based on the load diagram, a distribution link is selected for the at least one first data packet group; according to the distribution link, the at least one first data packet group is distributed to the at least one first switching device, so that the at least one first data packet group is forwarded to at least one second line card through the at least one first switching device; The data packet group information includes: first information, second information, and third information; wherein, the first information represents the number of the data packet group to which the first data packet belongs; the second information represents whether the first data packet is the starting data packet of its data packet group; the third information represents whether the first data packet is the ending data packet of its data packet group; the load connection diagram is obtained by marking the connections between the line card and the switching device in the first connection diagram based on the traffic range and the first traffic, wherein the first connection diagram is drawn based on the connection relationship between the line card and the switching device, and the first traffic includes the traffic from the line card to the switching device and / or the traffic from the switching device to the line card.

9. A switching device, characterized in that, include: The second receiving unit is used to receive a first data packet group sent by the first line card. The first data packet group includes one or more first data packets. The first data packet group is a virtual reassembly. The data packet group information is stored in the message. The message order remains unchanged. The first data packet is one of a plurality of first data packets sent by the first device to the second device. The first data packet group is a connection diagram of the load status between the line card and the switching device obtained by the first line card. Based on the load condition connection diagram, a distribution link is selected for at least one first data packet group; the data packets are sent to the switching device according to the distribution link; the data packet group information includes: first information, second information, and third information; wherein, the first information represents the number of the data packet group to which the first data packet belongs; the second information represents whether the first data packet is the starting data packet of its data packet group; the third information represents whether the first data packet is the ending data packet of its data packet group; the load condition connection diagram is obtained by marking the flow of the connection between the line card and the switching device in the first connection diagram based on the flow range and the first flow, wherein the first connection diagram is drawn based on the connection relationship between the line card and the switching device, and the first flow includes the flow of the line card to the switching device and / or the flow of the switching device to the line card; The second sending unit is used to forward the first data packet group to the second line card; wherein the first line card is the line card connected to the first device, and the second line card is the line card connected to the second device.

10. An electronic device, characterized in that, include: A processor and a memory, the memory for storing computer programs, the processor for calling and running the computer programs stored in the memory to perform the networking method as described in any one of claims 1-5, or the networking method as described in any one of claims 6-7.

11. A chip, characterized in that, include: A processor for retrieving and running a computer program from memory, causing a device with the chip installed to perform the networking method of any one of claims 1-5, or the networking method of any one of claims 6-7.

12. A computer-readable storage medium, characterized in that, Used to store computer programs that cause a computer to perform the networking method as described in any one of claims 1-5, or the networking method as described in any one of claims 6-7.