Electronic device and frame transfer method for electronic device
By establishing multiple priority virtual channels between electronic devices and selecting frame spacing according to packet priority and size, the problem of uneven packet traffic during network congestion is solved, and the stability and balance of packet transmission is achieved.
Patent Information
- Application Number
- CN202111270261.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-29
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2041-10-29
AI Technical Summary
When the network is congested, the transmitter will switch between the transmission packets in full speed and the suspended transmission state, resulting in extremely uneven packet traffic, and the receiver needs to detect the packet buffer status to transmit the suspended frames in real time, causing the circuit processing burden.
By establishing multiple virtual channels between electronic devices, each virtual channel has a corresponding priority level. The receiving end receives the frame spacing control instructions in the pause frame, selects an appropriate frame spacing according to the priority level and size of the packet, and transmits the packet through the virtual channel with the corresponding priority level to ensure that the pause time after the packet is transmitted is reasonable.
The averaged packet transmission traffic is achieved, the packet accumulation phenomenon during network congestion is avoided, the processing burden on the receiver is reduced, and the stability of network transmission is improved.
Smart Images

Figure CN116074157B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a frame transmission method for an electronic device. Background Art
[0002] In the IEEE 802.3x standard, a pause frame is mentioned, which is used by the receiving end to send to the transmitting end when the network is congested, so as to notify the transmitting end to suspend sending packets to alleviate the congestion phenomenon. In addition, the transmitting end needs to wait until the pause time indicated by the pause frame expires, or until the receiving end sends another packet to notify that it can continue to receive packets, before it can resume sending packets to the receiving end. However, in the above operations, when encountering network congestion, the transmitting end will keep switching between the full-speed transmission and the suspended transmission states during packet transmission, thus causing extremely uneven packet traffic. In addition, the receiving end needs to continuously detect the status of the current packet buffer to send the pause frame in real time, which also causes a processing burden on the receiving end circuit. Summary of the Invention
[0003] Therefore, one object of the present invention is to provide a packet transmission method for a network device, which can adjust the pause time after subsequent packet transmissions according to the packet size and the priority level of the packet, so as to make the overall traffic more even and avoid the phenomenon that the sending end transmits too many packets instantaneously, resulting in congestion or packet accumulation at the receiving end.
[0004] In an embodiment of the present invention, a frame transmission method for an electronic device is disclosed, which includes the following steps: establishing a plurality of virtual channels by connecting to another electronic device, where each virtual channel has a corresponding priority level; receiving a pause frame from the another electronic device, where the pause frame includes a plurality of frame interval control indicators, and each of the plurality of frame interval control indicators indicates a plurality of packet size ranges and corresponding plurality of pause times; referring to the content of the pause frame, and selecting one from the plurality of frame interval control indicators according to the priority level of a first packet currently to be transmitted to the another electronic device, and determining a first frame interval according to which packet size range the first packet is located in among the plurality of packet size ranges; transmitting a first frame including the first packet to the another electronic device through a virtual channel corresponding to the same priority level; and after the first frame is transmitted to the another electronic device, waiting at least for the first frame interval before starting to transmit a second frame to the another electronic device.
[0005] In an embodiment of the present invention, an electronic device is disclosed, which is used to connect to another electronic device to establish a plurality of virtual channels, wherein each virtual channel has a corresponding priority level, and the electronic device includes a receiving circuit, a frame spacing controller, and a transmitting circuit. The receiving circuit is used to receive a pause frame from the other electronic device, wherein the pause frame includes a plurality of frame spacing control instructions, and each of the plurality of frame spacing control instructions indicates a plurality of packet size ranges and corresponding plurality of pause times. The frame spacing controller is used to refer to the content of the pause frame, and select one from the plurality of frame spacing control instructions according to the priority level of a first packet currently to be transmitted to the other electronic device, and determine a first frame spacing according to which packet size range among the plurality of packet size ranges the size of the first packet is located in. The transmitting circuit is used to transmit a first frame including the first packet to the other electronic device through a virtual channel corresponding to the same priority level, and after the first frame is transmitted, wait at least the first frame spacing before starting to transmit a second frame to the other electronic device.
[0006] In an embodiment of the present invention, a frame transmission method for an electronic device is disclosed, including the following steps: connecting to another electronic device to establish a plurality of virtual channels, wherein each virtual channel has a corresponding priority level; transmitting a pause frame to the other electronic device, wherein the pause frame includes a plurality of frame spacing control instructions, and each of the plurality of frame spacing control instructions indicates a plurality of packet size ranges and corresponding plurality of pause times for the other electronic device to use; and receiving a plurality of frames from the other electronic device, wherein each frame is received through a virtual channel having the same priority level as the packet included therein, and the spacing of the plurality of frames is determined by the other electronic device according to at least one of the plurality of packet size ranges and the corresponding plurality of pause times indicated by the plurality of frame spacing control instructions included in the pause frame.
[0007] In an embodiment of the present invention, an electronic device is disclosed, which is used to connect to another electronic device to establish a plurality of virtual channels, wherein each virtual channel has a corresponding priority level, and the electronic device includes a transmitting circuit and a receiving circuit. The transmitting circuit is used to transmit a pause frame to the other electronic device, wherein the pause frame includes a plurality of frame spacing control instructions, and each of the plurality of frame spacing control instructions indicates a plurality of packet size ranges and corresponding plurality of pause times for the other electronic device to use. The receiving circuit is used to receive a plurality of frames from the other electronic device, wherein each frame is received through a virtual channel having the same priority level as the packet included therein, and the spacing of the plurality of frames is determined by the other electronic device according to at least one of the plurality of packet size ranges and the corresponding plurality of pause times indicated by the plurality of frame spacing control instructions included in the pause frame. Description of the Drawings
[0008] FIG. 1 is a schematic diagram of a network system according to an embodiment of the present invention.
[0009] FIG. 2 is a flowchart of a frame transmission method for an electronic device according to an embodiment of the present invention.
[0010] FIG. 3 is a schematic diagram of establishing multiple virtual channels between electronic devices.
[0011] FIG. 4 is a schematic diagram of a pause frame according to an embodiment of the present invention.
[0012] FIG. 5 is a schematic diagram of a frame transmission method according to an embodiment of the present invention. Detailed Description of the Invention
[0013] FIG. 1 is a schematic diagram of a network system according to an embodiment of the present invention. As shown in FIG. 1, the network system includes electronic devices 110 and 120, wherein the electronic devices 110 and 120 are connected by a network cable 130 for data transmission and reception. In this embodiment, the electronic devices 110 and 120 support Full-Duplex Ethernet and comply with the IEEE 802.3x standard. The electronic device 110 includes a processing circuit 111, a receiving circuit 112, a pause frame parser 114, a frame spacing controller 116, and a transmitting circuit 118; and the electronic device 120 includes a processing circuit 121, a receiving circuit 122, a pause frame parser 124, a frame spacing controller 126, and a transmitting circuit 128. The electronic devices 110 and 120 in this embodiment can be any electronic devices that can use a network cable for data transmission and reception, such as switches, routers, or any electronic devices that can be connected to a network cable. It should be noted that in another embodiment, the pause frame parser 114, the frame spacing controller 116, and the processing circuit 111 may be integrated into the same circuit according to actual design requirements, but the present invention is not limited thereto.
[0014] In the operation of the electronic device 110, refer to the flowchart shown in FIG. 2. At step 200, the process starts, and the electronic device 110 establishes a connection with the electronic device 120 and begins signal transmission and reception. In this embodiment, the electronic device 110 and the electronic device 120 can establish multiple virtual lanes on a single Ethernet link, such as the eight virtual lanes 310_1 to 310_8 shown in FIG. 3, where the virtual lanes 310_1 to 310_8 can be individually paused or restarted. That is, when one of the virtual lanes is paused from transmitting packets, the packet transmission of other virtual lanes does not need to be interrupted. Since the content of the virtual lanes can refer to the standard content of IEEE 802.1Qbb and is well-known to those with ordinary knowledge in the art, the relevant details will not be elaborated herein. In addition, each virtual lane is assigned a priority level that complies with IEEE 802.1P (in one embodiment, the priority level can be the Class of Service (CoS)), where the number of priority levels can be eight, that is, each virtual lane has one of the eight priority levels, but the present invention is not limited thereto.
[0015] In step 202, the receiving circuit 112 receives frames / packets from the electronic device 120 via the network line 130, parses the received frames, and then transmits them to the processing circuit 111 for subsequent processing. In this embodiment, the receiving circuit 112 receives a pause frame from the electronic device 120 and transmits the pause frame to the pause frame parser 114 for parsing. In step 204, the pause frame parser 114 analyzes the received pause frame and determines whether the pause frame conforms to a specific format. If not, the process proceeds to step 206; if so, the process proceeds to step 208. Specifically, referring to the schematic diagram of the pause frame 400 conforming to a specific format according to an embodiment of the present invention shown in FIG. 4, the pause frame 400 includes a plurality of fields, which may include a 6-byte destination address, a 6-byte source address, a 2-byte frame type, a 2-byte opcode, a plurality of 2-byte inter-frame gap control indicators (in this embodiment, eight inter-frame gap control indicators #0 to #7), and eight groups of time information. One inter-frame gap control indicator corresponds to one group of time information. For example, the inter-frame gap control indicator #0 points to the time information #0_0 to #0_N0, the inter-frame gap control indicator #1 points to the time information #1_0 to #1_N1,..., and the inter-frame gap control indicator #7 points to the time information #7_0 to #7_N7. It should be noted that the destination address, source address, type, and opcode in the pause frame 400 shown in FIG. 4 are fields defined by the IEEE 802.3x standard, and their contents and functions can be referred to the IEEE 802.3x standard. In this embodiment, since only some codewords of the 2-byte opcode are defined in the IEEE 802.3x standard, the pause frame 400 can represent that the pause frame 400 has a specific format by setting the opcode to a codeword not currently defined in the IEEE 802.3x standard, such as 0xfd. In this embodiment, if the content of the opcode is already defined in the current IEEE 802.3x standard, such as the opcode 0x0001, the pause frame parser 114 determines that the received pause frame does not conform to the specific format; if the content of the opcode conforms to the codeword corresponding to the specific format, such as 0xfd, the pause frame parser 114 determines that the received pause frame conforms to the specific format.
[0016] In step 204, the main content for determining the pause frame 400 conforming to the specific format lies in the opcode, inter-frame gap control indicator, and time information parts, and the operations and definitions of the remaining fields can be referred to the IEEE 802.3x standard. Therefore, the following description mainly focuses on the opcode, inter-frame gap control indicator, and time information.
[0017] In step 206, since the pause frame received by the receiving circuit 112 does not conform to a specific format, flow control in accordance with the IEEE802.3x specification is performed. The operation of the electronic device 110 may bypass the inter-frame spacing controller 116, and the transmission circuit 118 pauses the transmission of subsequent frames until the pause time indicated in the pause frame expires or the receiving circuit 112 receives information indicating that transmission can be restarted.
[0018] In step 208, the inter-frame spacing controller 116 stores the inter-frame spacing control indications #0 to #7 and the corresponding time information shown in FIG. 4 in an internal buffer or memory for determining the inter-frame spacing during subsequent frame transmissions. Specifically, the inter-frame spacing control indications #0 to #7 may respectively correspond to different priority levels (for example, class of service (CoS)), and each inter-frame spacing control indication and the corresponding time information as a whole may be regarded as including a plurality of packet size ranges and the corresponding pause times. When the processing circuit 111 needs to transmit data to the electronic device 120, the transmission circuit 118 transmits information related to the size of the packet to be currently transmitted to the inter-frame spacing controller 116, and the inter-frame spacing controller 116 determines the corresponding pause time according to the priority level and the size of the packet currently to be transmitted to the electronic device 120, and determines the inter-frame spacing based on this, so as to pause for a period of time (i.e., the inter-frame spacing) after the transmission circuit 118 transmits the current packet to the electronic device 120 and then starts transmitting the next frame. In this embodiment, the inter-frame spacing controller 116 may determine the priority level of the packet by checking the priority level field in the header of the virtual local area network (VLAN) of the packet, for example, determining which one of the eight priority levels the packet belongs to, and the packet size may be the size of the packet actually sent by the network layer, data link layer, or physical layer included in the frame.
[0019] The operation of the inter-frame spacing controller 116 is described in detail. In the following embodiment, it is assumed that the inter-frame spacing controller 116 selects the inter-frame spacing control indication #0 according to the priority level of the packet currently to be transmitted to the electronic device 120, and the inter-frame spacing control indication #0 can be used to represent a plurality of packet size ranges. For example, the inter-frame spacing control indication #0 includes 2 bytes (16 bits), where bits 0 to 3 can be used to represent 16 or fewer valid index values, and bits 4 to 15 can be used to represent a parameter INC. The packet size ranges represented by the inter-frame spacing control indication #0 are as shown in Table 1 below:
[0020] Index value Packet size range 0 PKT_S<64B 1 64B ≤ PKT_S < 64B + INC 2 64B + INC ≤ PKT_S < 64B + 2*INC 3 64B + 2*INC ≤ PKT_S < 64B + 3*INC … … 15 64B + 14*INC ≤ PKT_S
[0021] Table 1
[0022] In the content of Table 1, "PKT_S" is used to represent the packet size, "B" is used to represent bytes, and the parameter INC can be any suitable value, such as 64 bytes.
[0023] In one embodiment, each of the time information #0_0 to #0_N0 corresponding to the frame spacing control indication #0 contains 2 bytes (16 bits), where bits 0 to 3 can be used to represent the pause time calculated using the packet size, and bits 4 to 15 can be used to represent the fixed pause time. The time information #0_0 to #0_N0 can be as shown in Table 2 below:
[0024]
[0025]
[0026] Table 2
[0027] In the content of Table 2, the time information #0_0 corresponds to the index value "0" of Table 1, the time information #0_1 corresponds to the index value "1" of Table 1, the time information #0_2 corresponds to the index value "2" of Table 1, and so on. "T" is used to represent the length of the pause time, where "T" can be an 8-bit time (bit time), and one bit time is the time required for the electronic device 110 to transmit 1 bit of data. For example, for a 100 Mbps (Million bits per second) Ethernet network, 1 bit time is 10 nanoseconds; for a 1000 Mbps Ethernet network, 1 bit time is 1 nanosecond. In addition, the pause time calculated using the packet size can directly take the integer part of the calculation result, and the pause time of the time information #0_0 to #0_N0 is the sum of the pause time calculated using the packet size in Table 2 and the fixed pause time.
[0028] In an example, assume that the current transmission circuit 118 is ready to transmit a 130-byte packet to the electronic device 120. When the parameter INC is set to 64 bytes, since the packet size corresponds to the index value "2" of Table 1, therefore, the calculation of its pause time corresponds to the time information #0_2 of Table 2, where the pause time calculated using the packet size is 65*T, and the fixed pause time is 2*T. Therefore, the pause time calculated through Table 2 is 67*T.
[0029] After determining the pause time of the frame to be transmitted by the transmission circuit 118, the inter-frame space controller 116 can determine the inter-frame space according to this pause time. Specifically, since IEEE 802.3x defines a minimum default inter-frame space of at least 96 bit times between two consecutive frames, the inter-frame space controller 116 can add 96 bit times to the above-mentioned pause time calculated according to Table II to obtain the final inter-frame space. For example, assume that the current transmission circuit 118 is ready to transmit a 130-byte packet to the electronic device 120, and the pause time calculated according to Table II is 67 * 8 bit times. Then, the inter-frame space finally determined by the inter-frame space controller 116 is (96 + 67 * 8) bit times.
[0030] It should be noted that the above content of calculating the pause time and the inter-frame space is only for illustrative purposes and not a limitation of the present invention. As long as the inter-frame space controller 116 can determine different inter-frame spaces according to the priority level and packet size of the packet to be transmitted currently, the content of Table I and Table II above can be modified correspondingly, or can be integrated into a single look-up table to directly determine the corresponding inter-frame space according to the packet size. And these related implementation changes should all fall within the scope of the present invention.
[0031] In addition, the above embodiments are described with the inter-frame space control indication #0 and the corresponding time information #0_0 to #0_N0. In other embodiments, if the packets to be transmitted to the electronic device 120 have different priority levels (for example, need to be transmitted through different virtual channels later), the inter-frame space controller 116 can select other inter-frame space control indications and corresponding time information. And these other inter-frame space control indications and corresponding time information have parameters that are not exactly the same. That is, the packet size range and the parameter INC in Table I, and the pause time calculated using the packet size and the fixed pause time in Table II will be different according to different priority levels.
[0032] In step 210, the transmission circuit 118 selects a virtual channel corresponding to the same priority level according to the priority level of the packet, and transmits the frame to the electronic device 120 through the virtual channel corresponding to the same priority level, and the process returns to step 208. For example, if the priority level field of the virtual local area network header of the packet indicates that the priority level of the packet is "0", it is transmitted through the virtual channel 310_1; if the priority level field of the virtual local area network header of the packet indicates that the priority level of the packet is "1", it is transmitted through the virtual channel 310_2, and so on. In addition, after the frame transmission is completed, the transmission circuit 118 will pause for a period of time before transmitting the next frame, so that the next frame has the frame spacing determined above with respect to the currently transmitted frame. Specifically, assuming that the transmission circuit 118 needs to transmit the first frame, the second frame, and the third frame in sequence, the frame spacing controller 116 can determine the first frame spacing corresponding to the first frame and the second frame spacing corresponding to the second frame according to the above mechanism, so that the first frame starts to transmit the second frame after pausing for the time of the first frame spacing after the end of the transmission, and starts to transmit the third frame after pausing for the time of the second frame spacing after the end of the transmission of the second frame.
[0033] It should be noted that if the pause frame transmitted by the electronic device 120 at the beginning is the pause frame 400 shown in FIG. 4, the frame spacing controller 116 will store the packet size ranges and the corresponding pause times or frame spacing information recorded in each frame spacing control indication #0 to #7 and the corresponding time information in the pause frame 400. Subsequently, whenever the transmission circuit 118 needs to transmit a packet, the frame spacing controller 116 will determine the frame spacing between the packet and the next frame after the transmission of the packet one by one according to the priority level and the packet size of each packet, so as to accurately control the network traffic transmitted from the electronic device 110 to the electronic device 120. In this way, the problem of serious uneven transmission speed of the electronic device 110 described in the prior art can be avoided. In addition, since the packet size ranges and the corresponding pause times or frame spacing information recorded in the pause frame 400 are stored in the memory or the buffer of the frame spacing controller 116 for subsequent long-term use, the electronic device 120 does not need to frequently send pause frames to the electronic device 110, but only needs to transmit a new pause frame 400 to update the packet size range and the corresponding pause time or frame spacing when necessary (for example, when network congestion suddenly occurs), so that each packet has a larger frame spacing during subsequent transmission.
[0034] In addition, since the rates of the network interfaces of the electronic devices 110 and 120 cannot be higher than the Committed Information Rate (CIR) of the network provider, if the electronic devices 110 and 120 use the highest rate for transmission, the electronic devices 110 and 120 will continuously switch between the full-speed transmission and pause transmission states. Therefore, the electronic device 120 can determine the packet size range and the corresponding pause time or frame interval information according to the above-mentioned committed information rate, and carry this information after the pause frame 400 and send it to the electronic device 110, so that the traffic between the electronic devices 110 and 120 is more balanced.
[0035] In the description of the above embodiments, the electronic device 110 receives the pause frame from the electronic device 120, and determines the frame interval according to the priority level and size of the packet and then transmits the frame to the electronic device 120. However, since the electronic devices 110 and 120 support full-duplex Ethernet, similarly, the electronic device 120 can also receive the pause frame from the electronic device 110, and determine the frame interval according to the priority level and size of the packet and then transmit the frame to the electronic device 110. Since they have the same or similar operations, that is, the operations of the processing circuit 121, receiving circuit 122, pause frame parser 124, frame interval controller 126, and transmission circuit 128 of the electronic device 120 are similar to those of the processing circuit 111, receiving circuit 112, pause frame parser 114, frame interval controller 116, and transmission circuit 118 of the above-mentioned electronic device 110, the relevant details will not be elaborated.
[0036] FIG. 5 is a schematic diagram of a frame transmission method according to an embodiment of the present invention. In FIG. 5, it is assumed that the electronic device 110 sequentially transmits packets of virtual channels 310_1, 310_2, 310_1, and 310_4 to the electronic device 120, and the virtual channels 310_1, 310_2, and 310_4 have different priority levels from each other. After the electronic device 110 receives a pause frame from the electronic device 120, starting at time t1, the electronic device 110 can determine the frame spacing according to the priority level and packet size of the packets currently required to be transmitted to the electronic device 120 as described in the above embodiments. As shown in FIG. 5, the electronic device 110 first uses a first spacing to transmit the packets of the virtual channel 310_1, then uses a second spacing to transmit the packets of the virtual channel 310_2, then uses the first spacing to transmit the packets of the virtual channel 310_1 (assuming that the packets of the virtual channel 310_1 are similar or the same in size as the previous packets), and finally uses a third spacing to transmit the packets of the virtual channel 310_4. As described above, the electronic device 110 only needs to receive a pause packet once, and can calculate the frame spacing suitable for each packet according to the information in the pause packet, such as frame spacing control indicators #0 to #7 and corresponding time information, so that the electronic device 110 can transmit the packets at a stable transmission rate.
[0037] Briefly summarizing the present invention, in the electronic device and related frame transmission method of the present invention, after receiving a pause frame from another electronic device, the frame spacing controller inside the electronic device can determine the frame spacing required for subsequent transmitted frames according to the information recorded in the pause frame. Through the present invention, the traffic between electronic devices can be appropriately controlled to avoid the problem in the prior art that frame transmission keeps switching between full-speed transmission and pause transmission when the network is congested, and another electronic device does not need to keep transmitting pause frames, thus causing a processing burden.
[0038] The above are only the preferred embodiments of the present invention, and all equivalent changes and modifications made according to the scope of the patent application of the present invention shall fall within the scope covered by the present invention.
Claims
1. A frame transmission method for an electronic device, comprising: Connecting to another electronic device to establish a plurality of virtual channels, wherein each virtual channel has a corresponding priority level; Receiving a pause frame from the other electronic device, wherein the pause frame contains a plurality of frame spacing control indicators, and each of the plurality of frame spacing control indicators indicates a plurality of packet size ranges and corresponding plurality of pause times; Referring to the content of the pause frame, and selecting one from the plurality of frame spacing control indicators according to the priority level of a first packet currently to be transmitted to the other electronic device, and determining a first frame spacing according to which packet size range the first packet size is located in among the plurality of packet size ranges; Transmitting a first frame containing the first packet to the other electronic device through a virtual channel corresponding to the same priority level; and After the first frame is transmitted to the other electronic device, waiting at least for the first frame spacing before starting to transmit a second frame to the other electronic device.
2. The frame transmission method according to claim 1, wherein the plurality of pause times are not all the same.
3. The frame transmission method according to claim 2, wherein the step of determining the first frame spacing according to which packet size range the first packet size is located in among the plurality of packet size ranges comprises: determining a first pause time according to which packet size range the first packet size currently to be transmitted to the other electronic device is located in among the plurality of packet size ranges; and Calculating the first frame spacing according to the first pause time and a minimum preset spacing.
4. The frame transmission method according to claim 3, wherein the step of determining the first pause time according to which packet size range the first packet size currently to be transmitted to the other electronic device is located in among the plurality of packet size ranges comprises: Determining a pause time calculated using the packet size and a fixed pause time according to which packet size range the first packet size currently to be transmitted to the other electronic device is located in among the plurality of packet size ranges; and Calculating the first pause time according to the pause time calculated using the packet size and the fixed pause time.
5. The frame transmission method according to claim 1, further comprising: Storing the plurality of frame spacing control indicators included in the pause frame, and the plurality of packet size ranges and corresponding plurality of pause times indicated by each frame spacing control indicator in the electronic device for determining the frame spacings corresponding to a plurality of frames subsequently transmitted to the other electronic device.
6. An electronic device for connecting to another electronic device to establish a plurality of virtual channels, where each virtual channel has a corresponding priority level, and the electronic device includes: A receiving circuit for receiving a pause frame from the other electronic device, where the pause frame includes a plurality of inter-frame spacing control indications, and each of the plurality of inter-frame spacing control indications indicates a plurality of packet size ranges and corresponding plurality of pause times; An inter-frame spacing controller for referring to the content of the pause frame and selecting one from the plurality of inter-frame spacing control indications according to the priority level of a first packet currently to be transmitted to the other electronic device, and determining a first inter-frame spacing according to which of the plurality of packet size ranges the size of the first packet is located in; and A transmitting circuit for transmitting a first frame including the first packet to the other electronic device through a virtual channel corresponding to the same priority level, and after transmitting the first frame, waiting at least for the first inter-frame spacing before starting to transmit a second frame to the other electronic device.
7. The electronic device according to claim 6, wherein the priority level of the first packet is a Class of Service (CoS).
8. The electronic device according to claim 6, wherein the plurality of inter-frame spacing control indications respectively correspond to different priority levels, and the plurality of packet size ranges and the corresponding plurality of pause times included in each of the plurality of inter-frame spacing control indications are not completely the same.
9. The electronic device according to claim 6, wherein the inter-frame spacing controller refers to the content of the pause frame and determines a second inter-frame spacing according to which of the plurality of packet size ranges the size of a second packet currently to be transmitted to the other electronic device is located in; and the transmitting circuit transmits the second frame including the second packet to the other electronic device through a virtual channel corresponding to the same priority level, and after the second frame is transmitted to the other electronic device, the transmitting circuit waits at least for the second inter-frame spacing before starting to transmit a third frame to the other electronic device.
10. An electronic device for connecting to another electronic device to establish a plurality of virtual channels, where each virtual channel has a corresponding priority level, and the electronic device includes: A transmitting circuit for transmitting a pause frame to the other electronic device, where the pause frame includes a plurality of inter-frame spacing control indications, and each of the plurality of inter-frame spacing control indications indicates a plurality of packet size ranges and corresponding plurality of pause times for use by the other electronic device; and A receiving circuit for receiving a plurality of frames from the other electronic device, wherein each frame is received through a virtual channel having the same priority level as the contained packet, and the spacing of the plurality of frames is determined by the other electronic device according to at least one of the packet size ranges and the corresponding pause times indicated by the plurality of frame spacing control indications contained in the pause frame.
Citation Information
Patent Citations
Systems and methods for providing quality of service precedence in tcp congestion control
CN103152279A
Priority-based fluid control PFC (Power Factor Correction) method, transmitting device and receiving device
CN103746927A