A network system based on high-speed lossless ethernet forwarding of π type structure
The high-speed lossless Ethernet forwarding system with a π-type structure solves the problems of insufficient traffic balancing and monitoring in large-scale network data centers, realizes efficient traffic management and flexible network configuration, and improves network stability and security.
Patent Information
- Application Number
- CN202411872197.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2044-12-18
AI Technical Summary
Traditional Ethernet switches struggle to achieve traffic balancing and efficient scheduling in large-scale network data centers, resulting in low network efficiency, insufficient flexibility and security, and a lack of precise monitoring and priority traffic processing capabilities.
The high-speed lossless Ethernet forwarding system with a π-type structure includes an input priority queue module, a PFC frame generation module, a polling arbitration module, a frame parsing module, and an output scheduling module. It achieves traffic management and network monitoring through priority parsing, unfair polling, and protocol frame processing.
It ensures high reliability and load balancing of network data centers, supports multi-priority scheduling, provides fine-grained arbitration and strong security guarantees, adapts to large-scale network environments, and improves network stability and monitoring reliability.
Smart Images

Figure CN119676188B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of communication technology, specifically relating to a network system based on a π-type structure for high-speed lossless Ethernet forwarding. Background Technology
[0002] Driven by the technological wave sparked by ChatGPT (Chat Generative Pre-trained Transformer), major internet companies have launched a surge in research on large-scale language models and increased their deployment of cloud computing, intelligent computing centers, and lossless data centers. This has greatly promoted the vigorous development of cloud computing, intelligent computing centers, and lossless data centers. To effectively support the widespread application and in-depth practice of these cutting-edge technologies, further enhance the data throughput requirements of the entire network, and build a more efficient, robust, and secure network environment to meet the ever-increasing data processing demands, higher requirements are placed on the flexibility, security, and reliability of hardware devices. The network must be able to efficiently and accurately process massive data traffic and ensure the speed and quality of data transmission.
[0003] However, traditional access devices are typically designed for tree-structured network architectures, which perform well in small or medium-sized networks, ensuring stable data transmission and smooth network operation. However, in the complex environment of large-scale network data centers, their hierarchical flow control method struggles to ensure true traffic balance and efficient scheduling, leading to low network efficiency and compromised network flexibility, data security, and reliability.
[0004] For cloud computing, intelligent computing centers, and lossless data centers, these challenges are undoubtedly unacceptable. These fields handle massive volumes and diverse types of data, placing extremely high demands on network performance, stability, and security. They require access devices perfectly suited to large-scale network data center environments, as well as advanced technology systems that support efficient traffic management, flexible network configuration, and robust security.
[0005] Ethernet switches, based on Ethernet technology, use MAC addresses (Media Access Control Addresses) to forward data from one interface to another. By identifying the destination address of data packets, they accurately send the packets to the target device, achieving efficient data transmission within a local area network (LAN). However, switch ports may malfunction, causing devices to fail to connect and communicate properly, affecting network stability and reliability, leading to network congestion, and disrupting the normal communication of other devices. Furthermore, traditional Ethernet switches experience increased uncertainty in data transmission under heavy network loads, making them unsuitable for applications with high real-time requirements, such as industrial control.
[0006] Traditional Ethernet switches typically employ store-and-forward methods. The existing technology has several problems and shortcomings: Existing, easily implemented Ethernet access systems offer limited network monitoring and control methods, failing to provide precise monitoring and observation. Simple mirroring functionality is complex for debugging the entire network system and lacks sufficient ability to observe and adapt to specific protocol types. Furthermore, existing, easily implemented Ethernet access systems have a limited internal logic for handling priority traffic, lacking fine-tuning of different traffic models, poor adaptability to different network environments, poor priority differentiation and scheduling capabilities, and insufficient robustness. Summary of the Invention
[0007] To address the aforementioned problems in the existing technology, this invention provides a network system based on a π-type structure for high-speed lossless Ethernet forwarding.
[0008] The technical problem to be solved by this invention is achieved through the following technical solution:
[0009] In a first aspect, the present invention provides a network system for high-speed lossless Ethernet forwarding based on a π-type structure, the system comprising: an input priority queue module, a PFC frame generation module, a polling arbitration module, a frame parsing module, and an output scheduling module;
[0010] The input priority queue module is used to parse the priority of the received Ethernet data frames and transmit the Ethernet data frames to the corresponding input queue according to the parsed priority.
[0011] The PFC frame generation module is used to generate PFC frames to control the start and stop of the transmission of the Ethernet data frames;
[0012] The polling arbitration module is used to perform unfair polling on the Ethernet data frames stored in the input queue according to the polling arbitration algorithm, and send the polling result to the frame parsing module;
[0013] The frame parsing module is used to mark the protocol frames in the polling results according to the protocol frame configuration sent by the application terminal, and output the protocol frames and non-protocol frames in the polling results to the output scheduling module;
[0014] The output scheduling module is used to forward the protocol frames and the non-protocol frames according to the load of the output scheduling module.
[0015] Optionally, the system further includes: a first device channel, a second device channel, a monitoring device channel, and an application terminal channel;
[0016] The first device channel is used to access the network data center to transmit the Ethernet data frame to the input priority queue module;
[0017] The second device channel is used to transmit the protocol frame and the non-protocol frame in order to realize the forwarding of the protocol frame and the non-protocol frame;
[0018] The monitoring device channel is used to transmit the protocol frames and the non-protocol frames to the monitoring device for monitoring.
[0019] The application terminal channel is used to transmit configuration information input by the user in the application terminal; the configuration information is used to configure the input priority queue module, the PFC frame generation module, the polling arbitration module, the frame parsing module, and the output scheduling module.
[0020] Optionally, both the first device channel and the second device channel include: multiple physical ports;
[0021] The first device channel is used to evenly distribute the Ethernet data frames received by the plurality of physical ports when the load of the first device channel is greater than the load threshold.
[0022] The second device channel is used to evenly distribute the protocol frames and non-protocol frames received by the plurality of physical ports when the load of the second device channel is greater than the load threshold.
[0023] Optionally, the first device channel is used to transmit the protocol frame and the non-protocol frame when the second device channel fails;
[0024] The second device channel is used to transmit the Ethernet data frames when the first device channel fails.
[0025] Optionally, the input priority queue module includes: a COS priority extraction module, a TOS priority extraction module, a frame shifting module, and a PFC identification and filtering module;
[0026] The COS priority extraction module is used to mark the COS priority of the Ethernet data frame;
[0027] The TOS priority extraction module is used to mark the TOS priority of the Ethernet data frame;
[0028] The frame shifting module is used to determine the priority based on the COS priority and TOS priority of the Ethernet data frame, and to transmit the Ethernet data frame to the corresponding queue according to the priority based on the determination result.
[0029] The PFC identification and filtering module is used to extract the pause time of the priority contained in the PFC frame when a PFC frame is identified in the Ethernet data frame, and to turn off the transmission function of the input queue corresponding to the priority until the pause time of the priority ends or a new PFC frame with a pause time of zero is identified.
[0030] Optionally, the round-robin arbitration algorithm includes a strict round-robin arbitration algorithm, a weighted round-robin arbitration algorithm, and a differentially weighted round-robin arbitration algorithm; the round-robin arbitration algorithm selects the corresponding algorithm for unfair round-robin based on the network congestion situation; the network congestion situation is determined according to the input priority queue module and the output scheduling module.
[0031] Optionally, the protocol frame includes frame identification information and a corresponding Ethernet data frame; the output scheduling module is further configured to send the pause transmission time when the input queue buffer of different priorities is full to the polling arbitration module according to the frame identification information, so as to determine the network congestion situation.
[0032] Optionally, the output scheduling module is further configured to send alarm information to the application terminal when the first device channel, the second device channel, and the monitoring device channel all malfunction.
[0033] The technical solutions provided by the embodiments of the present invention may include the following beneficial effects:
[0034] In the above technical solution, the present invention can ensure the large-scale high-speed access and forwarding of network data centers and provide highly reliable link-level monitoring. The device channel can achieve load balancing, improve the bandwidth of the link, and perform backup to avoid large-scale network interruption caused by single point of failure. The monitoring device channel can greatly ensure the reliability and definability of network monitoring. The input priority queue module supports multiple priorities and can define priorities through application terminals. The polling arbitration module provides extremely fine-grained arbitration allocation. The output scheduling module can load balance the network and ensure network stability. The present invention can monitor the network without interfering with the lossless network. Its high configurability enables the diversity of accessible networks. It is a forwarding system that can perfectly adapt to large-scale network data center environments and can support efficient traffic management, flexible network configuration and strong security.
[0035] The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description
[0036] Figure 1 This is a schematic diagram of a high-speed lossless Ethernet forwarding network system based on a π-type structure provided in an embodiment of the present invention;
[0037] Figure 2This is a schematic diagram of the structure of a system channel provided in an embodiment of the present invention. Detailed Implementation
[0038] The present invention will be further described in detail below with reference to specific embodiments, but the implementation of the present invention is not limited thereto.
[0039] Figure 1 This is a schematic diagram of a high-speed lossless Ethernet forwarding network system based on a π-type structure provided in an embodiment of the present invention, as shown below. Figure 1 As shown, the system includes: an input priority queue module, a PFC frame generation module, a polling arbitration module, a frame parsing module, and an output scheduling module;
[0040] The input priority queue module is used to parse the priority of received Ethernet data frames and transmit the Ethernet data frames to the corresponding input queue according to the parsed priority.
[0041] Optionally, the input priority queue module includes: a COS priority extraction module, a TOS priority extraction module, a frame shifting module, and a PFC identification and filtering module;
[0042] The COS priority extraction module is used to mark the COS priority of Ethernet data frames.
[0043] The TOS priority extraction module is used to mark the TOS priority of Ethernet data frames;
[0044] The frame shifting module is used to determine the priority of Ethernet data frames based on their COS and TOS priorities, and then transmit the Ethernet data frames to the corresponding queues according to their priorities based on the determination results.
[0045] The PFC identification and filtering module is used to extract the priority pause time contained in the PFC frame when a PFC frame is identified in the Ethernet data frame, and to turn off the transmission function of the input queue corresponding to the priority until the priority pause time ends or a new PFC frame with a priority pause time of zero is identified.
[0046] Understandably, the COS (Class of Service) priority extraction module marks the COS priority of all Ethernet data frames based on the seven priorities represented by the three-digit field named "Priority Code Point PCP" in the TCL field of the Layer 2 802.1Q tag header; the TOS (Type of Service) priority extraction module marks the COS priority of all Ethernet data frames based on the seven priorities represented by the first three digits "IP Precedence" in the eight-digit TOS field of the Layer 3 IP header.
[0047] The frame shifting module uses a hybrid priority mode for priority differentiation. Specifically, it can determine whether the TOS priority and COS priority are equal or unequal. For example, if the TOS priority is higher than the COS priority by "n", then P(TOS) = P(COS) + n. For instance, when n = 1, Ethernet frames with a TOS priority of 0 and Ethernet frames with a COS priority of 1 are considered to have the same priority. The Ethernet frame with the higher TOS and COS priority is taken as the result, and all Ethernet frames are shifted to the input queue according to the priority order determined.
[0048] After identifying a PFC (Priority-based Flow Control) frame, the PFC identification and filtering module can extract the pause time of a certain priority in the PFC frame and disable the sending function of the input queue of the corresponding priority until the pause time of the priority ends or a new PFC frame with a pause time of zero is identified. If the pause time has not ended but a pause frame of the same priority is received, the time is reset to the pause time recorded in this frame instead of accumulating the pause time.
[0049] The PFC frame generation module is used to generate PFC frames to control the start and stop of Ethernet data frame transmission.
[0050] Understandably, the PFC frame generation module is used to proactively generate PFC frames to notify upstream devices to stop sending frames or to generate PFC frames with the transmission pause time field filled with 0 to start sending frames based on the buffer congestion of the input queue. PFC frames can pause for different priority streams, but a PFC frame can only be used for one priority.
[0051] The polling arbitration module is used to perform unfair polling of the Ethernet data frames stored in the input queue according to the polling arbitration algorithm, and send the polling results to the frame parsing module.
[0052] Optionally, the round-robin arbitration algorithm includes a strict round-robin arbitration algorithm, a weighted round-robin arbitration algorithm, and a differentially weighted round-robin arbitration algorithm; the round-robin arbitration algorithm selects the corresponding algorithm for unfair round-robin based on the network congestion situation; the network congestion situation is determined by the input priority queue module and the output scheduling module.
[0053] The frame parsing module is used to mark the protocol frames in the polling results according to the protocol frame configuration sent by the application terminal, and output the protocol frames and non-protocol frames in the polling results to the output scheduling module; wherein, the protocol frame includes frame identification information and the corresponding Ethernet data frame.
[0054] Understandably, when an Ethernet data frame is received from the polling result sent by the arbitration polling module, the source MAC address, destination MAC address, frame type, frame length, priority, and other information of these Ethernet data frames are used as frame identification information. The frame identification information is stored in the frame information FIFO of the frame parsing module. The Ethernet data frame is stored in the data frame FIFO (First Input First Output) of the frame parsing module. Among these, the source MAC address, destination MAC address, frame type, priority, and other information can be extracted from the front end of the Ethernet data frame, while the frame length information can only be synchronously counted at the end of the Ethernet data frame. After the complete frame identification information is recorded, the Ethernet data frame and the corresponding frame identification information are sent to the output scheduling module.
[0055] The output scheduling module is used to forward protocol frames and non-protocol frames according to the load of the output scheduling module.
[0056] Understandably, the output scheduling module primarily performs pass-through forwarding and aggregation forwarding on protocol frames and non-protocol frames based on the currently perceived load on the output scheduling module. Pass-through forwarding refers to the forwarding of Ethernet data frames between multiple devices; aggregation forwarding refers to merging data originally transmitted on multiple physical ports and forwarding it through a single port when the forwarding system's channel fails.
[0057] Optionally, the output scheduling module is also used to send the pause time for Ethernet data frames of different priorities when the input queue buffer is full to the polling arbitration module according to the frame identification information, so as to determine the network congestion situation.
[0058] Understandably, network congestion is determined jointly by the input priority queue module and the output scheduling module. The judgment is based on the empty / full status of different input queue FIFOs output by the input priority queue module, the pause time for different input queues in the output scheduling module, and the average frame length of different input queues over a period of time. The judgment process is as follows:
[0059] When the default polling arbitration algorithm is the strict polling arbitration algorithm, it arbitrates according to the priority of Ethernet data frames; Ethernet data frames with higher priority are sent first, and Ethernet data frames with lower priority can only start sending after the Ethernet data frames with higher priority have been completely sent. This long-term congestion will cause network congestion. If the lower priority input queue is full and the pause time exceeds the maximum pause time line of 1ms, the polling arbitration algorithm will be switched to the weighted polling arbitration algorithm after the currently transmitted Ethernet data frames have been completely output.
[0060] The weighted round-robin arbitration algorithm can solve long-term congestion in the input queue under high traffic volume, but it will cause uneven bandwidth distribution. Therefore, if the current round-robin arbitration algorithm is the weighted round-robin arbitration algorithm, and at this time, within a certain time range, the average frame length of the high-priority transmission is much greater than the average frame length of the low-priority transmission, then the round-robin arbitration algorithm should be switched to the differential weighted round-robin arbitration algorithm.
[0061] For example, the maximum pause time is configurable on the application terminal, with a default value of 1ms; the default value within a certain time range required to switch from the weighted round-robin arbitration algorithm to the differential weighted round-robin arbitration algorithm is 5ms, which is also configurable on the application terminal; the low-priority input queue number can be 0, 1, or 2; the high-priority input queue number can be 5, 6, or 7.
[0062] Optionally, refer to Figure 1 The system also includes: a first device channel, a second device channel, a monitoring device channel, and an application terminal channel;
[0063] The first device channel is used to access the network data center to transmit Ethernet data frames to the input priority queue module;
[0064] The second device channel is used to transmit protocol frames and non-protocol frames in order to enable the forwarding of protocol frames and non-protocol frames;
[0065] The monitoring equipment channel is used to transmit protocol frames and non-protocol frames to the monitoring equipment for monitoring.
[0066] The application terminal channel is used to transmit configuration information input by the user in the application terminal; the configuration information is used to configure the input priority queue module, PFC frame generation module, polling arbitration module, frame parsing module and output scheduling module.
[0067] Understandable, Figure 2 This is a schematic diagram of the structure of a system channel provided in an embodiment of the present invention, such as... Figure 2 As shown, the first device channel, the second device channel, and the monitoring device channel are all implemented as Ethernet ports, supporting 1g / 10g / 25g adaptive speeds; the application terminal channel is implemented as a PCIe (Peripheral Component Interconnect Express, a high-speed serial computer expansion bus standard) channel. Except for the application terminal channel, each device channel consists of multiple actual physical ports, which are functionally used for a single device.
[0068] The application terminal channel is used to transmit instructions from the application terminal, which is used by the user. It can configure the priority of the input priority queue module, configure the difference between the evaluation frame priority (TOS priority) and COS priority; configure the specific protocol type of the Ethernet data frame when the monitoring device channel forwards, so as to achieve real-time effect; configure the maximum pause time line for polling arbitration algorithm changes, and the time required for switching from the weighted polling arbitration algorithm to the differential weighted polling arbitration algorithm.
[0069] Optionally, both the first device channel and the second device channel include: multiple physical ports;
[0070] The first device channel is used to evenly distribute Ethernet data frames received from multiple physical ports when the load on the first device channel exceeds the load threshold.
[0071] The second device channel is used to evenly distribute protocol frames and non-protocol frames received from multiple physical ports when the load on the second device channel exceeds the load threshold.
[0072] It is understandable that the ports of the first and second device channels have port aggregation and load balancing functions. The aggregation function refers to aggregating multiple ports together to form an aggregation group under high load conditions, so as to achieve load balancing and traffic distribution among the ports under high load conditions, simulating the physical aggregation of ports in the form of logical aggregation; when the link status of one of the ports is lost, the system will automatically distribute the traffic on the link of that port to other ports aggregated with that port.
[0073] Load balancing refers to the function of distributing traffic evenly to the sub-port links of the aggregation port based on the characteristic value of the source MAC address + destination MAC address in the forwarded Ethernet data frame. By mapping the 32-bit value of the source MAC address + destination MAC address to an 11-bit hash value as the characteristic value, 1 to 29 are assigned to one port, and 29+1 to 210 are assigned to another port. The hash function selected is ITQ (Iterative Quantization Hash), which achieves the even distribution of traffic and load balancing.
[0074] It is worth mentioning that the first device channel and the second device channel are only used for distinction. The first device channel can be the second device channel, and the second device channel can also be the first device channel.
[0075] Optionally, the first device channel is used to transmit protocol frames and non-protocol frames when the second device channel fails.
[0076] The second device channel is used to transmit Ethernet data frames when the first device channel fails.
[0077] Optionally, the output scheduling module is also used to send alarm information to the application terminal when the first device channel, the second device channel, and the monitoring device channel all fail.
[0078] Under normal load conditions, when multiple physical ports in the first device channel, second device channel, and monitoring device channel are connected, by default, half of the ports are activated as master ports to receive Ethernet data frames, while the other half act as slave ports to transmit protocol frames and non-protocol frames according to the configuration of the application terminal device. Under high load conditions, if the load on the port transmitting Ethernet data frames exceeds 80% of the port's rated forwarding rate, port classification is stopped, and load balancing is implemented on the ports of the monitoring device channel to prioritize link stability and reliability.
[0079] The primary / backup port switching function refers to the process where, if only some physical ports in the first device channel, second device channel, and monitoring device channel have established physical connections, Ethernet data frames, protocol frames, and non-protocol frames are directly transmitted from the ports with established physical connections, ensuring the network can still operate normally in the event of a device failure. Based on the Ethernet data frame and frame identification information from the frame parsing module, a fair polling mechanism is used to perform primary / backup port switching and port classification, achieved through fair polling of the actual physical output ports. When the system detects that both physical port links are in a normal state, the monitoring port forwarding module will subdivide the Ethernet frames into control Ethernet frames and data Ethernet frames according to the protocol message type configured in the terminal application. According to the scheduling instructions of the polling arbitration module, control Ethernet frames and data Ethernet frames are output from two different physical ports, ensuring that user-specified control frames and data frames can be transmitted separately. If the system detects that only one of the multiple physical port links is normal, it will no longer distinguish between control Ethernet frames and data Ethernet frames, but will forward all Ethernet data frames from the normal port. If the system detects that multiple physical port links are abnormal, it will discard these Ethernet data frames and send an alarm message to the terminal application to prompt the user to troubleshoot the problem.
[0080] In one implementation, the output scheduling module may further include a polling arbitration feedback module, which is mainly used to forward the Ethernet data frames and frame identification information from the frame parsing module to the monitoring port forwarding module and the device port forwarding module at the same time, and to pass the frame identification information to the polling arbitration feedback module.
[0081] The polling arbitration feedback module, based on the frame identification information, transmits the pause time when the input queue buffers of different priorities are full, as well as the average transmission frame length of these Ethernet data frames over a period of time, to the polling arbitration module for selection of the arbitration polling algorithm.
[0082] Upon receiving the frame identification information, if the current polling arbitration algorithm is strict priority arbitration, the pause time for the low-priority input queue is started by obtaining the empty / full signal of the low-priority input queue based on the priority field in the frame identification information. If the low-priority queue remains congested for 1ms and no Ethernet data frames of that priority are transmitted, the polling arbitration feedback module will provide pause time congestion feedback information to the arbitration polling module and simultaneously clear the timing information of that priority timer. Afterwards, the timing restarts based on the state after sending the feedback information. If an Ethernet data frame is transmitted from the low-priority input queue during the timing period, the polling arbitration feedback module will clear the current timing information and restart the timing.
[0083] Upon receiving the frame identification information, if the current polling arbitration algorithm is a weighted polling arbitration algorithm, the polling arbitration feedback module will start to count the average transmission frame length of high-priority and low-priority frames based on the frame length and priority fields in the frame identification information. This is achieved by recording the number of transmission frames for each priority and calculating the average transmission frame length for each transmission.
[0084] The polling arbitration feedback module counts the number of frames received within 5ms, calculating the real-time average transmission frame length using the average formula each time. If, within 5ms, the average transmission frame length of a lower priority frame is less than one-twentieth of the average transmission frame length of a higher priority frame, the polling arbitration feedback module provides transmission frame length congestion feedback to the arbitration polling module and simultaneously clears the timing and counting information for that priority. It then restarts timing and counting based on the state after sending the feedback information. Conversely, if, within 5ms, the average transmission frame length of a lower priority frame is greater than or equal to one-twentieth of the average transmission frame length of a higher priority frame, the polling arbitration feedback module only clears the timing and counting information and restarts timing and counting without sending feedback to the arbitration polling module.
[0085] The monitoring port forwarding module uses Ethernet data frames and frame identification information from the frame parsing module. This process is accomplished through a fair polling mechanism of physical ports, which is achieved by fairly polling the actual physical output ports.
[0086] When the system detects that both physical port links are in normal condition, the monitoring port forwarding module will subdivide the Ethernet frame into control Ethernet frames and data Ethernet frames according to the protocol message type configured in the terminal application.
[0087] Subsequently, according to the scheduling instructions of the polling module, control Ethernet frames and data Ethernet frames will be output from two different physical ports respectively, ensuring that the user-specified control frames and data frames can be transmitted separately.
[0088] In this invention, unless otherwise explicitly specified and limited, "above" or "below" the second feature can include direct contact between the first and second features, or contact between the first and second features through another feature between them. Furthermore, "above," "over," and "on top" of the second feature includes the first feature directly above or diagonally above the second feature, or simply indicates that the first feature is at a higher horizontal level than the second feature. "Below," "below," and "under" the second feature includes the first feature directly below or diagonally below the second feature, or simply indicates that the first feature is at a lower horizontal level than the second feature.
[0089] The above description, in conjunction with specific preferred embodiments, provides a further detailed explanation of the present invention. It should not be construed that the specific implementation of the present invention is limited to these descriptions. For those skilled in the art, various simple deductions or substitutions can be made without departing from the concept of the present invention, and all such modifications and substitutions should be considered within the scope of protection of the present invention.
Claims
1. A network system based on a π-type structure for high-speed lossless Ethernet forwarding, characterized in that, The system includes: an input priority queue module, a PFC frame generation module, a polling arbitration module, a frame parsing module, and an output scheduling module; The input priority queue module is used to parse the priority of the received Ethernet data frames and transmit the Ethernet data frames to the corresponding input queue according to the parsed priority. The PFC frame generation module is used to generate PFC frames to control the start and stop of the transmission of the Ethernet data frames; The polling arbitration module is used to perform unfair polling on the Ethernet data frames stored in the input queue according to the polling arbitration algorithm, and send the polling result to the frame parsing module; The frame parsing module is used to mark the protocol frames in the polling results according to the protocol frame configuration sent by the application terminal, and output the protocol frames and non-protocol frames in the polling results to the output scheduling module; The output scheduling module is used to forward the protocol frames and the non-protocol frames according to the load of the output scheduling module; The input priority queue module includes: a COS priority extraction module, a TOS priority extraction module, a frame shifting module, and a PFC identification and filtering module. The COS priority extraction module is used to mark the COS priority of the Ethernet data frame; The TOS priority extraction module is used to mark the TOS priority of the Ethernet data frame; The frame shifting module is used to determine the priority based on the COS priority and TOS priority of the Ethernet data frame, and to transmit the Ethernet data frame to the corresponding queue according to the priority based on the determination result. The PFC identification and filtering module is used to extract the pause time of the priority contained in the PFC frame when a PFC frame is identified in the Ethernet data frame, and to turn off the transmission function of the input queue corresponding to the priority until the pause time of the priority ends or a new PFC frame with a pause time of zero is identified.
2. The network system based on a π-type structure for high-speed lossless Ethernet forwarding according to claim 1, characterized in that, The system also includes: a first device channel, a second device channel, a monitoring device channel, and an application terminal channel; The first device channel is used to access the network data center to transmit the Ethernet data frame to the input priority queue module; The second device channel is used to transmit the protocol frame and the non-protocol frame in order to realize the forwarding of the protocol frame and the non-protocol frame; The monitoring device channel is used to transmit the protocol frames and the non-protocol frames to the monitoring device for monitoring. The application terminal channel is used to transmit configuration information input by the user in the application terminal; the configuration information is used to configure the input priority queue module, the PFC frame generation module, the polling arbitration module, the frame parsing module, and the output scheduling module.
3. The network system based on a π-type structure for high-speed lossless Ethernet forwarding according to claim 2, characterized in that, Both the first device channel and the second device channel include: multiple physical ports; The first device channel is used to evenly distribute the Ethernet data frames received by the plurality of physical ports when the load of the first device channel is greater than the load threshold. The second device channel is used to evenly distribute the protocol frames and non-protocol frames received by the plurality of physical ports when the load of the second device channel is greater than the load threshold.
4. The network system based on a π-type structure for high-speed lossless Ethernet forwarding according to claim 3, characterized in that, The first device channel is used to transmit the protocol frame and the non-protocol frame when the second device channel fails; The second device channel is used to transmit the Ethernet data frames when the first device channel fails.
5. The network system based on a π-type structure for high-speed lossless Ethernet forwarding according to claim 1, characterized in that, The polling arbitration algorithm includes a strict polling arbitration algorithm, a weighted polling arbitration algorithm, and a differentially weighted polling arbitration algorithm; the polling arbitration algorithm selects the corresponding algorithm for unfair polling based on the network congestion situation; the network congestion situation is determined based on the input priority queue module and the output scheduling module.
6. The network system based on a π-type structure for high-speed lossless Ethernet forwarding according to claim 5, characterized in that, The protocol frame includes frame identification information and the corresponding Ethernet data frame; the output scheduling module is also used to send the pause transmission time when the input queue buffer of different priorities is full to the polling arbitration module according to the frame identification information, so as to determine the network congestion situation.
7. The network system based on a π-type structure for high-speed lossless Ethernet forwarding according to claim 4, characterized in that, The output scheduling module is also used to send alarm information to the application terminal when the first device channel, the second device channel and the monitoring device channel all fail.
Citation Information
Patent Citations
Method and device for congestion control capable of realization through hardware based on WRED algorithm
CN107426111A
Congestion control method, device and system based on PFC frame, and storage medium
CN111385216A