Shaping method, apparatus for frame transmission in a wired communication network and corresponding computer program

CN123023293APending Publication Date: 2026-10-30MITSUBISHI ELECTRIC CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202480089566.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-03-29
Filing Date
2024-09-26
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

大多数时候,这些空闲时段太短而无法启用LPI模式,从能量角度来看,这会导致效率低下

Benefits of technology

[0015]根据特定特征,在将网络控制器设置为空闲模式之前,所述方法包括传输被设置为针对所述至少一个当前队列要传输的帧。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123023293A_ABST
    Figure CN123023293A_ABST
Patent Text Reader

Abstract

This disclosure relates to a method for shaping the transmission of data frames within a communication network. The method involves the following steps: - For a set of transmission queues (Q1, Q2; ..., Q... n At least one current queue (Q) in ) k Determine (S01) for at least one current queue (Q) k The frame to be transmitted, - based on at least one current queue (Q) k The number of frames to be transmitted, calculate (S02) the end of transmission of the frames to be transmitted and the number of frames used for transmission of at least one current queue (Q). k The method includes at least one delay (ST) between the start of the next time slot of the frame and the frame, and includes: - when the at least one delay is greater than a predetermined time amount (STp), setting the network controller (S11) to idle mode according to the at least one delay.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of frame transmission in wired communication networks. More specifically, this disclosure relates to the optimization of frame transmission in wired communication networks to optimize idle periods of the transmission system from an energy-saving perspective. This application claims priority to European Patent Application No. EP24305491.3, filed on March 29, 2024, the contents of which are incorporated herein by reference. Background Technology

[0002] While product sustainability and eco-design are selection criteria in many situations, they remain unfulfilled in many areas due to incompatibilities between operational and environmental constraints. Wired transmission technology is one such example.

[0003] In fact, Time-Sensitive Networking (TSN) is a standard technology defined by IEEE 802.1 that ensures deterministic message delivery over standard Ethernet. This standard is widely used for time-critical information transmission in applications such as manufacturing or automotive. The key to timely delivery of TSN frames lies in 802.1Qbv, which schedules the transmission of specific TSN Ethernet frames using a round-robin TDMA mechanism. This synchronization across all network nodes enables fast and low-jitter delivery of critical communications. The IEEE 802.1 TSN standard encompasses three main components: time synchronization using the IEEE 1588 Precision Time Protocol, scheduling and traffic shaping for different traffic categories, and selection of communication paths with fault-tolerant mechanisms. Within the scheduling component, users can choose from various access control and scheduling mechanisms to prioritize Ethernet frames, including existing methods such as the IEEE 802.1Q Strict Priority Scheduler or newer methods such as the TSN IEEE 802.1Qbv Time-Aware Traffic Scheduler.

[0004] The IEEE 802.1Qbv time-aware scheduler is designed to organize communication over Ethernet into fixed-length, recurring time periods. These time periods can be divided into configurable time slots allocated to different traffic categories and / or frame transmission queues. This mechanism allows the Ethernet medium to be dedicated to traffic categories with stringent real-time requirements, ensuring uninterrupted transmission of time-critical data without buffering delays. The time slots (of the time periods) act as virtual communication channels, separating critical from non-critical communication. For example, in industrial applications, specific time slots can be dedicated to critical industrial fieldbus frames, while other time slots handle non-time-sensitive traffic.

[0005] On the other hand, Energy-Saving Ethernet (EEE) is an IEEE standard (802.3az-2010) method designed to reduce the power consumption of Ethernet devices during periods of low link utilization. This method, known as Low-Power Idle (LPI), involves switching between "active" and "LPI" states to save energy by shutting down unused circuits and maintaining synchronization for rapid reactivation. In the "LPI" state, power consumption is significantly reduced compared to the active state, demonstrating the advantages of EEE in networks with numerous nodes. For example, a 1Gbps network interface card (NIC) utilizing EEE can consume only 40% of the power used in the active state during idle, highlighting the efficiency gains of this technology.

[0006] However, enabling EEE has introduced some latency into frame transmission to date, which is completely incompatible with the stringent requirements of TSN data streams scheduled by 802.1Qbv. For example, when fixing short time periods and short time slots for each traffic queue, it is crucial to begin frame transmission at the beginning of the time slot so that all pending frames can be effectively transmitted within the current time slot. Otherwise, if some pending frames cannot be transmitted, these frames will suffer a delay equal to one time period, which is unacceptable to receiving peer applications. Using EEE adds transmission latency due to the wake-up period of the transmission components, which may result in the inability to transmit all pending frames in the next dedicated time slot.

[0007] Figure 1 The delay introduced by EEE is illustrated. The time period (period k, period k+1) is divided into two (fixed) time slots. The first time slot is dedicated to traffic categories with critical requirements (A1). The second time slot is dedicated to traffic categories with non-critical requirements (A2). The L4 time slot indicates the LPI mode, and the L3 time slot transitions from active to LPI, or vice versa. For example, it is noteworthy that with EEE enabled, the L3 and L4 time slots result in the inability to transmit the second A1 frame in a timely manner (i.e., before the end of the time slot dedicated to A1 frames).

[0008] Using 802.1Qbv scheduling with multiple traffic classes can also lead to fragmentation of bursty transmissions of frames to be processed. In fact, this is because the time period is divided into different time slots dedicated to each traffic class (e.g., ...). Figure 1 As shown, each time slot may not be fully available, and the transmitter cannot transmit frame bursts like a traditional Ethernet MAC. Therefore, the transmitted traffic is a collection of shortened frame bursts with short intervals of idle time. This type of traffic is not suitable for Energy Efficient Ethernet (EEE), as EEE requires minimal idle time to effectively save power.

[0009] Furthermore, because frames of different priorities are sent in separate unfilled time slots, some idle periods are inserted between the time slots. Most of the time, these idle periods are too short to enable LPI mode, which leads to inefficiency from an energy perspective.

[0010] Therefore, a plastic surgery method is needed that can: - Addresses the latency introduced by EEE so that critical frames to be processed can be fully transmitted within the expected time period, thereby protecting the receiver peer from unexpected (and unacceptable) delays.

[0011] - While processing dedicated time slots, optimize data traffic within a given IEEE 802.1Qbv time period to maximize the duration of idle periods. Summary of the Invention

[0012] Therefore, this disclosure relates to a method for shaping data frames for transmission within a communication network, the shaping method being implemented by an electronic device including at least one processor and a memory.

[0013] According to this disclosure, the method includes the following steps: - Determine the frame to be transmitted for at least one current queue in the set of transmission queues. -Based on the number of frames to be transmitted for the at least one current queue, calculate at least one delay between the end of the transmission of the frames to be transmitted and the start of the next time slot for transmitting the frames of the at least one current queue. And includes: - When the at least one delay is greater than a predetermined time, the network controller is set to idle mode according to the at least one delay.

[0014] Therefore, the proposed method meets both the requirements for real-time frame transmission associated with a specific transmission category and the requirements for energy saving in the device in a sustainable manner.

[0015] Based on specific characteristics, the method includes transmitting frames configured to be transmitted for the at least one current queue before setting the network controller to idle mode.

[0016] Based on specific characteristics, at least some queues in the set of transmission queues are labeled as critical periodic or latency-tolerant, and the latency is calculated based on labels associated with queues in the set of transmission queues.

[0017] Therefore, this allows the queues to be grouped into a set of two transmission queues, and in some cases, by allowing different transmission processes to be implemented, the two sets of transmission queues can be managed separately.

[0018] The calculation is performed based on specific characteristics, using repeated time slices for frame transmission during the transmission period, wherein each repeated time slice defines a time slot, and each time slot is assigned to at least one current queue in a set of queues.

[0019] Therefore, in some situations, it is possible to enter idle mode for more than one time period, which increases energy saving.

[0020] According to one feature, each frame in at least one current queue in the set of queues is affected by a lifetime value, the lifetime value of each frame depending on the tag associated with the transmission category of the at least one current queue into which the frame is inserted and / or depending on the number of time periods used to transmit the frame.

[0021] Based on a feature, for each of at least one current queue associated with a transmission category, the calculation includes: -The next transmit time value is calculated starting with the minimum lifetime value of the frames to be processed in the at least one current queue, the total duration of the frames to be processed in the at least one current queue, and the time of the next time slot dedicated to the transmission category in the next transmission time period. - Calculate the burst duration value for the transmission category.

[0022] Based on a feature, the calculation also includes: - If the total frame duration is greater than the slot duration, the next transmit time is set to the start of the next slot in the next time period for the transmission category, and the burst duration value is set to the slot duration. Otherwise, if the minimum lifetime is equal to 0, the burst duration value is set to the sum of the durations of frames that must be transmitted before all frames with the minimum duration, and the next transmission time is set to the end of the time slot minus the burst duration value. - Otherwise, the next launch time is set to the start time of the time slot of time period n + TTL.

[0023] According to one characteristic, the method is executed on a predetermined event that belongs to a group that includes at least the following: -After the transmission of frames in a frame burst, - When the wake-up timer expires, the wake-up timer is set according to at least one delay. - When inserting a frame into at least one queue in the set of queues.

[0024] According to one feature, after a burst of frames in the transmission frame, the method further includes: - Calculate the duration of the delay and set a wake-up timer based on the wake-up time negotiated at link startup, wherein the end time of the delay is the smaller of the next transmit times in the queues of the transmission queue set minus the wake-up time. - Use the end of the aforementioned delay to set the internal wake-up timer.

[0025] Based on a characteristic, during the period when the network controller is set to idle mode, the network controller's energy control mechanism implements the following steps: - Activate low-power idle mode to move the controller's MAC layer and PHY layer to an idle, energy-efficient Ethernet state. - The highest active state power management level that can be entered is determined by comparing the delay with at least some of the predetermined transition time values ​​for active state power management. - Set the maximum delay tolerance reporting value based on the determined activity state power management level to notify the underlying hardware.

[0026] According to a feature, when the wake-up timer expires, the wake-up timer is set based on at least one delay, and the method further includes: - For each queue in the transmission category, determine the next transmission time. - Determine the next burst consisting of bursts of frames from each queue, wherein determining the composition and duration of the active burst includes at least one iteration of the following: - Obtain the queue and its associated next launch time value. - Determine if the next transmit time value is greater than the minimum supported LPI period duration, and if so, interrupt the determination of the next frame burst. - Otherwise, add the queued frames to the composition of the burst, and - Add the burst duration of the queue scheduling to the activity burst duration value.

[0027] Determining the next burst based on a feature involves sorting the set of queues by incrementing the value of the next launch time of each queue.

[0028] According to a feature, regarding frames inserted in at least one queue in the set of queues, the method further includes: - Set a time-to-live value for the frames inserted into the at least one queue. -If the current transmission mode is active mode, then determine that the at least one queue belongs to the current transmission burst, and Update the burst duration value and the event burst duration value.

[0029] According to another aspect, this disclosure also relates to a shaping device for transmitting data frames within a communication network, the shaping device including at least one processor and a memory, and including necessary components for the following operations: - Determine the frame to be transmitted for at least one current queue in the set of transmission queues. -Based on the number of frames to be transmitted for the at least one current queue, calculate at least one delay between the end of the transmission of the frames to be transmitted and the start of the next time slot for transmitting the frames of the at least one current queue. And includes: - When the at least one delay is greater than a predetermined time, the network controller is set to idle mode according to the at least one delay.

[0030] According to one aspect, this disclosure also relates to a service in which the described method and apparatus are used to save energy.

[0031] This disclosure also aims to provide a computer program that includes instructions that, when executed by a processor, cause the methods defined above to be implemented. Attached Figure Description

[0032] More details are presented in the following instructions with reference to the accompanying drawings, in which: Figure 1 This illustrates a simple example of an energy-efficient Ethernet implementation for transmitting keyframes. Figure 2 The main steps of the plastic surgery method according to this disclosure are shown. Figure 3 The performance obtained by implementing the method of this disclosure is shown in the example. Figure 4 The management of frame lifetime is illustrated in a purely illustrative example. Figure 5 An example of cyclic transmission of CC-tagged frames is shown. Figure 6 Examples of burst creation and idle mode (LPI) implemented through the methods of this disclosure are shown. Figure 7 An example of an apparatus for implementing the method according to this disclosure is shown. Detailed Implementation

[0033] Overall Disclosure Content

[0034] As mentioned above, with the advent of Industry 4.0, the number of connected Ethernet devices has increased, as have interconnect devices such as switches. Therefore, there is an urgent need for an efficient energy-saving mechanism, such as the one proposed in the shaping method.

[0035] This disclosure relates to a shaping method, for example, suitable for TSN Ethernet transmitters using an IEEE 802.1Qbv time-aware scheduler. This method reduces power consumption while maintaining QoS for different data streams by managing a set of Energy Efficient Ethernet (EEE) enhancements introduced by the IEEE 802.3az standard.

[0036] More generally, refer to Figure 2 Cosmetic surgery methods include: - For a set of transmission queues (Q1, Q2; …, Q n At least one current queue in ) is determined (S01) for the at least one current queue (Q) k The frame to be transmitted -Based on the at least one current queue (Q) k The number of frames to be transmitted, calculate (S02) the end of transmission of the frames to be transmitted and the number of frames in the at least one current queue (Q). k At least one delay between the start of the next time slot and the beginning of the next time slot. And includes: - When the at least one delay is greater than a predetermined time amount (STp), the network controller is set to idle mode (S11) according to the at least one delay.

[0037] Depending on whether some frames must be transmitted, the method implements transmission (S10) for at least one current queue (Q) before setting the network controller (S11) to idle mode. k ) is set to the (burst) of the frame to be transmitted.

[0038] As disclosed in some examples, the set of transmission queues (Q1, Q2; …, Q n All or some queues in the set are labeled as critical periodic (CC) or delay-tolerant (DT). Furthermore, based on the set of transmission queues (Q1, Q2; …, Q…), n The delay (S02) is calculated by using the labels associated with the queues in the queue.

[0039] Furthermore, calculation (S02) is based on the transmission cycle. k cycle k+1 This is achieved by using repeated time slices (slots) for frame transmission during the period, wherein the repeated time slices define the slots (slot1, slot2, ..., slot...). nEach time slot is assigned to a set of queues (Q1, Q2; …, Q). n At least one current queue (Q) in ) k ).

[0040] In some implementations, the shaping method calculates the timing and duration of frame bursts based on parameters and state of the transmission queue. The shaping method also manages EEE Low Power Idle (LPI) entries (sleep, idle) and exits (wake-up) based on a predetermined amount of time (STp) that depends on the hardware (e.g., network controller interface), as described below. In implementation, the shaping method allows: - Avoid violating the strict latency constraints of each traffic category. - Maximize the duration of "idle" (LPI) periods to improve the efficiency of energy-saving mechanisms. - In some implementations, additional energy-saving mechanisms such as PCIe ASPM are managed.

[0041] To address latency issues, one implementation introduces a QoS parameter appended to each traffic class. This QoS parameter indicates the traffic class type: either "critical periodicity" with predictable traffic but zero latency tolerance, or "latency-tolerant" with unpredictable traffic characteristics. For "latency-tolerant" traffic classes, each frame to be processed (i.e., frames inserted into the traffic class queue and awaiting transmission) has an additional Time-to-Live (TTL) parameter, expressed as the number of periodic units. The shaping method guarantees transmission of any frame before the TTL parameter of any frame reaches 0.

[0042] Shaping methods can be implemented in industrial communication systems using Gigabit Ethernet and TSN IEEE 802.1Qbv, particularly for next-generation PLCs or industrial I / O / motor drive devices. Shaping methods can also be deployed on TSN switches that require support for energy-efficient Ethernet standards. A key feature of shaping methods in at least one implementation is their ability to support the QoS requirements of industrial environments, especially those with strong latency constraints. Typically, network modifications are not required in such environments because non-critical data flows are primarily generated by control / management applications with low bandwidth requirements (sporadic traffic). Therefore, long idle periods are achieved in time slots dedicated to latency-tolerant traffic categories. Consequently, this shaping method provides significant energy savings due to the ability to activate LPI modes.

[0043] Figure 3 The energy-saving benefits of the shaping method are shown in two TSN configurations, where the "delay-tolerant" traffic category uses 5% (20%) of the bandwidth.

[0044] For example, if the total time slots dedicated to CC TC represent 30% of the bandwidth, then for a low-cost network, the expected energy reduction is approximately 30%, and for a network with more DT traffic, the expected energy reduction is approximately 21%. Considering a network with 64 nodes consuming approximately 100W (considering only network interfaces), this represents a gain of 30 / 21W, which is quite significant.

[0045] Description of Implementation

[0046] In this implementation, it is assumed that some traffic categories are associated with at least two different types of data streams. More specifically, the traffic categories are divided into two groups: Critical Cyclic (CC) and Delay-Tolerant (DT) traffic categories: The traffic categories are labeled as Critical Cyclic (CC) and Delay-Tolerant (DT).

[0047] “ Delayed tolerance Traffic Categories (TCs) (marked as " Delayed tolerance The traffic category ("traffic category") carries network data streams that accept delayed transmissions, such as TCP / IP application data streams, or more generally, any common IT data streams transmitted over the Internet. To assume a minimum quality of service, a Time-to-Live (TTL) parameter is appended to each transmission frame entering the pending transmission queue. The shaping method uses this parameter to limit delayed transmissions: the goal is to allow a certain level of delay in frame transmission, for example, when the queue includes more frames than the number of frames that can be transmitted within a given time slot.

[0048] Figure 4 and Figure 5 This illustrates the management of a delay-tolerant transmission class queue with per-cycle TTL updates. TTL represents the number of network cycle times and is essentially dependent on the duration of the cycle and the duration of the queue slot. For frames to be processed, the TTL decreases in each cycle: if a frame is not transmitted in the current cycle (k), then in the next cycle (k+1), the TTL of the untransmitted frame is decreased by one. The shaping method prioritizes transmitting frames with a TTL equal to 0. When the slot is shorter than the time required to transmit the frames in the queue, frames with a TTL greater than 0 can be transmitted in later cycles.

[0049] According to this disclosure, for each DT TC queue, the initial TTL value is... TSV k Used to enter the frame into queue "k" (Q) k The TTL is fixed at this time. This initial value depends on the flow identifier mechanism. This flow identifier mechanism may rely on a combination of VLAN ID, VLAN PCP, or protocol header values ​​such as MAC address, IP address, Ethernet type, TCP / UDP port, etc. TSV k Strictly greater than 0.

[0050] According to this disclosure, flow classes designated as Critical Cyclic (CC) carry periodic network data flows common in fieldbus networks. For example, industrial installations transmit their I / O status in Ethernet frames at fixed time intervals, i.e., multiples of the fieldbus network cycle time "L". Therefore, the associated network data flow is transmitted once every "L" cycles (e.g., every cycle, every two cycles, every three cycles, and so on) with a length of... l Ethernet frames. For example, the first device may transmit a CC frame in every network cycle, while the second device may transmit one CC frame every two cycles. Therefore, the switch responsible for relay transmission may have only one frame to transmit in the first cycle and two frames to transmit in the second cycle.

[0051] As a result, for any period #L, the number and length of Ethernet frames for a given CC transmission labeled TC#m are predictable. Therefore, for traffic categories... m and cycle L The duration of the sudden event is denoted as BD in the following text. m,L BD m,L It can be calculated during initialization and derived from the sequence BD. m,n express.

[0052] In industrial automation (IA) networks, periodic network data streams cannot be delayed. For TSN Qbv applications, this means that time slots are long enough to transmit each pending Ethernet frame. Frames are typically prepared by the application layer and published to the processing queue before the time limit, so that the MAC layer can transmit these frames in the next cycle.

[0053] To standardize the shaping method, some virtual queues were associated with the CC traffic category. In each cycle, sequence-based BD was utilized. m,n Configure a virtual queue. The TTL for frames used in the CC traffic category is set to 0.

[0054] According to this disclosure, the described shaping method is implemented, for example, based on the above category definition. The shaping method determines the start time and composition of frame transmission by optimizing idle periods that can activate LPI modes. The shaping method takes as input time slots (time slots for transmission cycles) defined by the IEEE 802.1Qbv shaper and the queue status (i.e., the number of frames to be processed, their size, and frame TTL values). The shaping method also determines the duration of the LPI period.

[0055] According to this disclosure, the shaping method is performed, for example, on three different events: - At the end of the frame burst transmission (i.e., after the last frame of the burst has been transmitted). - When the wake-up timer set when the network interface enters LPI mode expires. - After inserting a frame into the queue Of course, other scenarios can be considered for the implementation of this method. The shaping method works in conjunction with the power control mechanism. The power control mechanism is responsible for actually activating / disabling LPI modes and setting power management parameters. The network interface can be configured as follows: Activity pattern or LPI Mode. When in active mode, this enables the network interface to transmit bursts (denoted as B) of Ethernet frames belonging to the set of queues for that Transport Class (TC). n In other words, for frames belonging to multiple TCs (and multiple queues), B n It is a component of the sudden event, such as Figure 6 This is only an example and is aimed at sudden B. i and B i+1 As shown.

[0056] When LPI mode is enabled (e.g.) Figure 4 Sudden B in i and B i+1 (Between), regardless of the state of the transmission queue, the MAC will pause the transmission of any frame. LPI mode is enabled via a shaping method. In LPI mode, the PCIe network controller can also be in PCIe ASPM mode, the depth of which (L0s, L1, L2) depends on the time allocated to the idle period (an example of how the idle depth is implemented is disclosed below using the PCI Express architecture).

[0057] When in active mode, the MAC transmits frames from the transmission queue as soon as a time slot dedicated to the associated queue (i.e., TC) begins. This means that the transmitter transmits any pending frames from the transmission queue while the associated time slot is not terminated, without having to infer from the TTL of the transmission frame (but if the queue is larger than the available time slots allowed for the queue, the frame with the lowest TTL is processed first).

[0058] In one implementation, for transmission class TC k Each associated frame transmission queue (Q) k The shaping method is maintained as the "next launch time" NET. k The value is determined by using the minimum TTL of the frames to be processed, the total duration of the frames to be processed (the sum of the durations of individual frames to be processed), and the value specific to the transmission class TC. k The calculation starts from the time of the next time slot. The burst duration value BD is also maintained. TCk .

[0059] - If the total frame duration is greater than the slot duration, then NET k Set for use with the TC class k The next time slot of the next cycle begins. The burst duration value is set to the time slot duration. Otherwise, if the minimum TTL equals 0, then the burst duration BD TCk The value is set to the sum of the durations of the frames that must be sent before all frames with the minimum duration. The next transmission time is set to the end of the time slot minus BD. TCk , Otherwise, the next launch time is set to the start time of the time slot of period n + TTL.

[0060] Due to this overall coordination and scheduling mechanism, such as Figure 4 As the example shows, the shaping method allows for large time periods with LPI mode enabled, thereby significantly reducing energy consumption.

[0061] In addition to the previous calculation steps, the following operations can be performed on at least the listed events.

[0062] a. After the transmit frame burst, the shaping method includes the following steps: - Calculate the duration of the LPI period and set the wake-up timer taking into account the wake-up time negotiated at link startup according to the IEEE 802.3az standard. The end time of the LPI period is the smaller next transmit time (NET) among all TC queues. k Subtract the time required to wake up.

[0063] - Set the internal wake-up timer by using the calculated end of the LPI period.

[0064] Then, the energy control mechanism performs the following steps: - Activate LPI mode to immediately move the MAC and PHY layers of the controller that are in an idle EEE state. - The highest ASPM level that can be accessed is determined by comparing the duration of the LPI period with the ASPM conversion time value. - Consider the determined ASPM level when setting the maximum PCIe Latency Tolerance Report (LTR) value to inform the underlying hardware.

[0065] b. When the wake-up timer expires, the shaping method includes the following steps: -For each TC k (i.e., Q) k ), determine the next launch time NET k For example, as described above.

[0066] - Determine the next active burst B, which consists of bursts of frames from each transmission category queue. n By traversing by NET k Different queues k arranged in ascending order determine the composition and duration of the activity burst BD n : - Obtain the next TC k (Associated with its queue). If NETk is greater than BD n The process stops when the sum of the minimum supported LPI period duration and the duration of the LPI period are reached (meaning it can be stopped from burst B). n (This queue and consecutive queues are omitted). Otherwise, TC will be used. k Frames in the queue are added to burst B n The composition includes the burst duration of the TC schedule (i.e., the entire time slot typically associated with the TC) and adds it to the active burst duration value BD. n , - Repeat this process until all queues have been managed.

[0067] Then, the energy control mechanism implements the following steps: - Disable LPI mode to immediately move the MAC layer + PHY layer of the active controller.

[0068] After inserting a frame into queue k, perform the following operations: - Set TTL to TTL Initial value TSV k - If the current mode is active mode, check TC. k Does this belong to the current launch's sudden B? n If so, then BD is updated by executing the algorithm described for the wake-up timer expiration. TCk And the duration value of the event suddenness BD n .

[0069] The shutdown depth during idle periods is controllable, depending on both the implementation conditions and the availability of network controllers.

[0070] In fact, taking the PCI Express architecture as an example, PCI Express Active State Power Management (ASPM) can be used to reduce system-level idle power on both the network controller and the PCI Express controller. ASPM allows individual serial links in a PCI Express architecture to have progressively lower power as the link becomes less active. Two power level states, L0s and L1, are introduced. L0 is the default active state of the bus. When the board is in the D0 active state, the PCI Express link can be in a lower power state (L0s / L1 state), thereby reducing system-level power. When entering L0s, a device entering this energy-saving state sends an Electrically Idle Ordered Set (EIOS) to the receiving device and then shuts down its transmitter. When returning from L0s to L0, the device first generates a specific number of small ordered sets, called Fast Training Sequences (FTS). The specific number to be repeated is defined by the receiving device and broadcast during the training sequence at link time. The more FTSs transmitted, the easier it is to achieve receiver lock-in on the transmitted signal. However, the goal of L0s is to regain receiver lock and be able to receive traffic as soon as possible, so receiving devices typically select the minimum number of FTSs that ensure clock recovery based on their specific design.

[0071] ASPM also defines an optional L1 ASPM state, which can be entered for greater energy savings. In this state, both directions of the link are placed in L1. L1 completely shuts down the PCI Express link, including the reference clock signal, until a dedicated signal (CLKREQ#) is asserted. Returning to L0 requires both devices to go through the link recovery process. This results in a greater delay when returning to L0, so this power state is typically used when no activity on the link is expected for a longer period of time (e.g., milliseconds).

[0072] In practice, it has been observed that ASPM recovery from L0 can introduce a latency of approximately 5µs, and recovery from L1 can introduce a latency of up to 60µs. Therefore, this has a significant impact on PCIe device performance as it increases the latency of DMA (Direct Memory Access) transfers and interrupts. In addition to the “normal” L1 state, some additional sub-states can be used to reduce power consumption while allowing a relatively faster return to L0. Therefore, the predetermined time amount (STp) essentially depends on these latency values, thus enabling entry into idle mode when the duration of the idle period is greater than the latency introduced by entering low power and waking up.

[0073] The underlying mechanism behind the L1 substate is to wake up the device using techniques other than the high-speed logic within the PCIe transceiver. This is achieved by adding additional functionality to the existing PCIe pin (CLKREQ#) to provide a simple signaling protocol. Two of these new substates, L1.1 and L1.2, are defined, providing their own power-to-delay tradeoffs. Both L1.1 and L1.2 allow the PCIe transceiver to shut down its PLL, as well as its receiver and transmitter, with L1.2 even allowing the common-mode hold circuitry to be turned off. Therefore, idle power consumption is significantly reduced, with the power consumption of tens of milliwatts in the L1 state decreasing by several orders of magnitude in either the L1.1 or L1.2 substate. According to this disclosure, a shaping method allows the use of both substates.

[0074] According to this disclosure, when data transmission is not required, a request to enter "Transmit LPI" mode is issued on the internal xxMII (Physical Layer (PHY) interface in Ethernet used for transmitting data between the MAC (Media Access Control) layer and the PHY layer) Tx interface, causing the PHY to transmit sleep symbols for a predefined time period, followed by a silent period. During LPI, the PHY periodically sends refresh symbols, which link partners use to update adaptive filters and timing circuitry to maintain link integrity. The PHY communicates a shift to an active link state to link partners by sending wake-up symbols within a predefined time period.

[0075] Evaluate the following conditions to enter Tx-LPI (one condition is sufficient): - No transmissions are pending during a predefined time period (empty Tx queue): This time period is set to avoid frequent entry into the TX LPI state within a short duration, which increases latency and is therefore inefficient. - Pause frame reception (assuming flow control is activated). - Software control.

[0076] When none of the above conditions are met, the controller exits the Tx LPI link state and transitions the link to the active link state. Thanks to the shaping method, the implementation of the first condition is software-controlled (on the network controller), which enables entry into the LPI state.

[0077] Depending on the implementation, some controllers can also automatically send LTR messages when entering / exiting LPI state. One approach is to predefine two LTR (Link Training and Status Register) values, a minimum and a maximum, for strict and relaxed latency, respectively. When entering LPI, the NIC hardware automatically sends a PCIe LTR message with the maximum value to indicate to the PCIe controller that it can support longer latency. When exiting LPI state, the same operation is performed with the minimum LTR value.

[0078] Based on the maximum LTR, when the network controller enters the LPI state, the PCIe host controller can enter either the L1.1 or L1.2 sub-state, which helps to further reduce power consumption.

[0079] like Figure 7 As shown above, a shaping device (DV) for transmitting data frames within a communication network may include an antenna system (AS) connected, for example, via an interface (IN) to a processing circuit including a processor (PROC) and a memory (MEM). Alternatively, as a supplement or variation of the antenna system (AS), necessary data (e.g., queue status, predetermined parameters, PCIe controller parameters, network controller parameters and status (active, idle)) may be received via a communication link (CL), allowing the device to generate a set of test vectors. The memory stores at least the instructions of a computer program according to this disclosure. By performing this type of processing, particularly by implementing data structures (queue management, transmission category labels, time to survival, and next transmission time) according to the method of this disclosure, the device's processor has been shown to be able to generate optimal transmission of frames from different queues within short time periods in order to effectively manage EEE periods, save power, and maintain the transmission of critical frames. This effect would obviously be impossible to achieve by attempting to manually or through mental calculations, as described above, this would be resource-intensive, inefficient, and unusable.

[0080] In a preferred embodiment, the computer system or apparatus includes one or more processors (which may belong to the same computer or different computers) and one or more memories (magnetic hard disk, optical disk, electronic memory, or any computer-readable storage medium), wherein a computer program product is stored in the form of a set of program code instructions to be executed, in order to implement all or part of the steps of the generation and / or testing method. Alternatively, or in combination, the computer system may include one or more programmable logic circuits (FPGA, PLD, etc.) and / or one or more application-specific integrated circuits (ASICs), etc., adapted to implement all or part of the steps of the generation and / or testing method and / or a portion of the above modules. In other words, the computer system includes a collection of means configured by software (specific computer program product) and / or hardware (processors, FPGAs, PLDs, ASICs, etc.) to implement the steps of the generation and / or testing method.

Claims

1. A shaping method for transmitting data frames within a communication network, the shaping method being implemented by an electronic device including at least one processor and a memory, the shaping method comprising the following steps: - For a set of transmission queues (Q1, Q2; …, Q n At least one current queue (Q) in ) k Determine (S01) for the at least one current queue (Q) k The frame to be transmitted -Based on the at least one current queue (Q) k The number of frames to be transmitted, calculate (S02) the end of transmission of the frames to be transmitted and the at least one current queue (Q) used for transmission. k At least one delay (ST) between the start of the next time slot of the frame. The shaping method includes the following steps: - When the at least one delay is greater than a predetermined time amount (STp), the network controller is set to idle mode (S11) according to the at least one delay.

2. The shaping method according to claim 1, wherein, Before setting the network controller (S11) to the idle mode, the shaping method includes the following steps: transmission (S10) is set for the at least one current queue (Q). k The frame to be transmitted.

3. The shaping method according to claim 1, wherein, The set of transmission queues (Q1, Q2; …, Q n At least some of the queues in the set (Q1, Q2; …, Q) are marked as critical periodic (CC) or delay-tolerant (DT), and wherein, according to the set of transmission queues (Q1, Q2; …, Q…), n The delay is calculated (S02) by using the tag associated with the queue in the queue.

4. The shaping method according to claim 1, wherein, The calculation (S02) step is based on the transmission cycle. k ,cycle k+1 The process is implemented by using repeated time slices, i.e., time slots, during frame transmission, wherein the repeated time slices define time slots (slot1, slot2, ..., slot...). n Each time slot is assigned to the set of said queues (Q1, Q2; …, Q). n At least one current queue (Q) in ) k ).

5. The shaping method according to claim 1, wherein, The set (Q1, Q2; …, Q) existing in the queue n At least one current queue (Q) in ) k Each frame (f) in ) k i , f k i+1 All are affected by the Time-to-Live (TTL) value, which for each frame depends on the at least one current queue (Q) to which the frame is inserted. k The tag associated with the transmission category and / or depends on the number of time periods used to transmit the frame.

6. The shaping method according to claim 5, wherein, For transmission category (TC) k The at least one current queue (Q) associated with k For each of the following steps, the calculation (S03) step includes: - By using the at least one current queue (Q) k The minimum lifetime value of the frames to be processed, and the at least one current queue (Q) k The total duration of the frames to be processed and the time allotted in the next transmission period for the transmission category (TC) k Starting from the time of the next time slot, calculate the next transmission time (NET). k )value, - Calculate the transmission category (TC) k The burst duration value (BD) TCk ).

7. The shaping method according to claim 6, wherein, The calculation (S03) step also includes: - If the total frame duration is greater than the slot duration, then the next transmit time (NET) will be... k ) is set for use with transmission category (TC) k The next time slot of the next time period begins, and the burst duration value is set to the duration of the time slot. - Otherwise, if the minimum survival time TTL is equal to 0, then the burst duration (BD) TCk The value is set to the sum of the durations of frames that must be sent before all frames with a minimum duration, and the next transmission time (NET) is... k ) is set to the end of the time slot minus the burst duration (BD) TCk )value, - Otherwise, the next launch time (NET) k ) is set to the start time of the time slot with time period n + TTL.

8. The shaping method according to any one of claims 1 to 7, wherein, The shaping method is performed on a predetermined event that belongs to a group that includes at least the following: -After the transmission of frames in a frame burst, - When the wake-up timer expires, the wake-up timer is set according to at least one delay. -In the set of queues (Q1, Q2; …, Q n At least one queue (Q) in ) i When inserting frames into ).

9. The shaping method according to claim 8, wherein, Following the transmission of a burst of frames, the shaping method further includes the following steps: - Calculate the duration of the delay and set a wake-up timer according to the wake-up time negotiated at link startup, wherein the end time of the delay is the set of transmission queues (Q1, Q2; …, Q…). n The next launch time in the queue (NET) k Subtract the time required to wake up from the smaller of the two values. - Use the end of the aforementioned delay to set the internal wake-up timer.

10. The shaping method according to claim 9, wherein, The energy control mechanism of the network controller implements the following steps: - Activate the low-power idle LPI mode to move the controller's MAC layer and PHY layer to an idle, energy-efficient Ethernet EEE state. - The highest active state power management (ASPM) level that can be accessed is determined by comparing the delay with at least some of the predetermined transition time values ​​of the active state power management (ASPM). - Set the maximum value of the Delay Tolerance Report (LTR) based on the determined active state power management (ASPM) level to notify the underlying hardware.

11. The shaping method according to claim 8, wherein, When the wake-up timer expires, the wake-up timer is set according to at least one delay, and the shaping method further includes the following steps: -For transmission category (TC) k Each queue (Q) k ), determine the next launch time (NET) k ), - Determine the next burst (B) consisting of bursts of frames from each queue. n ), including determining the composition and duration of the event outbreak (BD) n The iteration includes at least one of the following: -Get queue (Q) i ) and its associated next launch time value (NET) i ), - Determine the next launch time value (NET) i Whether the duration of the burst is greater than the minimum supported LPI period, and if so, interrupt the next burst (B). n The determination of ) - Otherwise, the queue (Q) i The frame is added to the burst (B) n In the composition of ), and -The queue (Q) i The scheduled burst duration is added to the activity burst duration value (BD). n )middle.

12. The shaping method according to claim 11, wherein, After obtaining the queue (Q) i ) and its associated next launch time value (NET) i Before that, determine the next outbreak (B). n This includes increasing the set of said queues (Q1, Q2;..., Q...). n The value of the next launch time is used to determine the set of queues (Q1, Q2; …, Q). n Sort them.

13. The shaping method according to claim 8, wherein, Regarding the set (Q1, Q2; …, Q) in the queue n At least one queue (Q) in ) i The shaping method further includes the following steps: (The text abruptly ends here, so the translation stops as well.) -For insertion into the at least one queue (Q) i The frame set in the text contains a Time-to-Live (TTL) value. - If the current transmission mode is active, then determine the at least one queue (Q) i ) belongs to the current launch burst (B) n ),as well as -Update burst duration (BD) TCk The value and the duration of the activity burst (BD) n ).

14. A shaping apparatus for transmitting data frames within a communication network, the shaping apparatus comprising at least one processor and a memory, and including necessary components for the following operations: - For a set of transmission queues (Q1, Q2; …, Q n At least one current queue (Q) in ) k Determine (S01) for the at least one current queue (Q) k The frame to be transmitted -Based on the at least one current queue (Q) k The number of frames to be transmitted, calculate (S02) the end of transmission of the frames to be transmitted and the at least one current queue (Q) used for transmission. k At least one delay between the start of the next time slot of the frame, The shaping device includes components for the following operations: - When the at least one delay is greater than a predetermined time amount (STp), the network controller is set to idle mode (S11) according to the at least one delay.

15. A computer program comprising instructions that, when executed by a processor, cause the implementation of the method according to any one of claims 1 to 13.