Method and device for realizing seamless switching of flexible Ethernet (FlexE)
By setting up software mapping tables and finite state machines in flexible Ethernet, decoupling the dependence on external factors, the reliability and robustness of FlexE seamless switching of flexible Ethernet is achieved, and the instability problem of switching process in the prior art is solved.
Patent Information
- Application Number
- CN202310804690.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-03
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2043-07-03
AI Technical Summary
In the prior art, the flexible Ethernet FlexE seamless switching process has a high dependence on the stability of physical port connections, which is prone to failure in switching or poor seamless effect due to bit error rate, link oscillation or unprepared configuration.
By setting up a software mapping table to save the time slot and CA/CR/C information of the main and standby tables of the sending and receiving ends of FlexE, the scheduler of the CPU regularly polls the negotiation information, and combines the finite state machine constraint switching process to decouple the dependence on external factors to achieve orderly and seamless switching.
Improve the reliability and robustness of seamless switching of flexible Ethernet, avoid switching failures caused by failure of interrupt mechanism, and ensure the stability and real-timeness of switching.
Smart Images

Figure CN116781215B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of electronic communications, and in particular to a method and device for achieving seamless switching of Flexible Ethernet (FlexE). Background Art
[0002] One advantage of FlexE technology over traditional Ethernet is that it overcomes the limitations of service ports and physical ports in traditional Ethernet. First, FlexE enables large-port bundling, effectively addressing the challenges of network bandwidth upgrades. Second, it implements channelization, dividing physical channels into time slots with a 5GE granularity. Service ports can choose the number of time slots based on their needs, regardless of the physical port type. This allows network deployment using non-standard service ports, effectively improving network utilization and reducing costs.
[0003] Furthermore, once a service port is successfully deployed and operational, Flexible Ethernet supports lossless bandwidth adjustments to the service port, enabling real-time network upgrades to accommodate traffic surges or decreases. For example, a 25G service port's bandwidth can be increased to 100G by adding timeslots without impacting service traffic, ensuring seamless FlexE switching.
[0004] FlexE seamless handover relies on the CR / CA / C bits and timeslot scheduling information carried in overhead frames on both ends. The transmission of this information is highly dependent on the stability of the physical port connection. Any missed or mis-transmission during FlexE seamless handover will result in handover failure or a failure to achieve seamless results. Therefore, this feature requires high fault tolerance and robustness.
[0005] In existing technologies, the seamless FlexE handover process is based on an interrupt mechanism. The FlexE receiver receives a change in the CR value and triggers an interrupt to notify the main CPU of the FlexE receiver device. The CPU then reads the overhead frame information sent by the FlexE transmitter to obtain the CR value and the change in timeslot scheduling. Similarly, the FlexE transmitter receives a change in the CA value in the FlexE receiver's reply and triggers an interrupt to notify the main CPU of the transmitter device. Through a single request and confirmation operation, the handover timing of the FlexE transmitter and receiver are aligned. The two ends then perform the handover by sending and receiving handover messages.
[0006] The information disclosed in this background technology section is only intended to enhance understanding of the overall background of the invention and should not be regarded as an admission or any form of suggestion that the information constitutes the prior art already known to a person skilled in the art. Summary of the Invention
[0007] The object of the present invention is to provide a method and device for realizing seamless switching of Flexible Ethernet (FlexE), which can realize the orderliness and robustness of seamless switching of Flexible Ethernet.
[0008] To achieve the above object, an embodiment of the present invention provides a method for implementing seamless switching of Flexible Ethernet (FlexE).
[0009] In one or more embodiments of the present invention, the method includes: after the FlexE transmitter updates the time slot scheduling configuration of the FlexE transmitter standby table, sending a first overhead frame to the flexible Ethernet FlexE receiver for polling by the FlexE receiver, wherein the first overhead frame includes the value of the scheduling request information CR and the information of the time slot scheduling configuration; the FlexE transmitter updates the value of the FlexE transmitter CR in the software mapping table, and updates the finite state machine of the sending direction from the first FlexE transmitter state to the second FlexE transmitter state, wherein the software mapping table includes the time slots of the FlexE transmitter main table, the time slots of the FlexE transmitter standby table, and the FlexE transmitter state. The values of the xE transmitter CR, scheduling confirmation information CA, and switching information C; the FlexE transmitter receives and polls the second overhead frame returned by the FlexE receiver, and when the value of CA in the second overhead frame is consistent with the value of the FlexE transmitter CR in the software mapping table, updates the finite state machine of the sending direction from the second FlexE transmitter state to the third FlexE transmitter state; and the FlexE transmitter sends a third overhead frame to the FlexE receiver, updates the finite state machine of the sending direction from the third FlexE transmitter state to the fourth FlexE transmitter state, and performs a primary-slave table switch, wherein the third overhead frame includes the value of the switching information C.
[0010] In one or more embodiments of the present invention, the method further includes: when the value of the scheduling confirmation information CA in the second overhead frame is inconsistent with the value of the FlexE transmitter C in the software mapping table, the FlexE transmitter does not update the finite state machine of the sending direction from the second FlexE transmitter state to the third FlexE transmitter state, and does not send the third overhead frame to the FlexE receiver.
[0011] In one or more embodiments of the present invention, the method further includes: after the FlexE transmitter master / slave table switching is completed, updating the finite state machine of the sending direction from the fourth FlexE transmitter state back to the first FlexE transmitter state.
[0012] An embodiment of the present invention also provides a method for implementing seamless switching of Flexible Ethernet (FlexE).
[0013] In one or more embodiments of the present invention, the method includes: a FlexE receiving end receives and polls a first overhead frame sent by a flexible Ethernet FlexE transmitting end; when the value of the scheduling request information CR in the first overhead frame is inconsistent with the value of the FlexE receiving end scheduling confirmation information CA in the software mapping table, the FlexE receiving end compares the time slot scheduling configuration in the first overhead frame with the time slot of the FlexE receiving end standby table in the software mapping table, wherein the software mapping table includes the time slot of the FlexE receiving end main table, the time slot of the FlexE receiving end standby table, the value of the FlexE receiving end CA and the switching information C; when the time slots are consistent, the FlexE receiving end updates the finite state machine of the receiving direction from the first FlexE receiving end The FlexE receiving end sends a second overhead frame to the FlexE transmitting end, updates the finite state machine of the receiving direction from the second FlexE receiving end state to the third FlexE receiving end state, wherein the second overhead frame includes the updated CA value; and the FlexE receiving end receives a third overhead frame sent by the FlexE transmitting end, updates the finite state machine of the receiving direction from the third FlexE receiving end state to the fourth FlexE receiving end state, and performs a primary-slave table switch, wherein the third overhead frame includes the value of the switching information C.
[0014] In one or more embodiments of the present invention, the FlexE receiving end receives and polls the first overhead frame sent by the FlexE transmitting end, specifically including: after the FlexE receiving end receives the first overhead frame, polling the configuration of the FlexE receiving end and the finite state machine of the receiving direction through the scheduler of the FlexE receiving end; when the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is ready, polling the first overhead frame through the scheduler of the FlexE receiving end; and / or, when the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is not ready, continuing to poll the configuration of the FlexE receiving end and the finite state machine of the receiving direction.
[0015] In one or more embodiments of the present invention, the method further includes: when the value of CR in the first overhead frame is consistent with the value of CA of the FlexE receiver in the software mapping table, the FlexE receiver does not compare the time slot scheduling configuration in the first overhead frame and the time slot in the FlexE receiver standby table in the software mapping table.
[0016] In one or more embodiments of the present invention, the method further includes: when the time slots are inconsistent, the FlexE receiver updates the time slot scheduling configuration in the first overhead frame to the FlexE receiver standby table; the FlexE receiver updates the finite state machine in the receiving direction from the first FlexE receiver state to the second FlexE receiver state, and updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame.
[0017] In one or more embodiments of the present invention, the method further includes: after the FlexE receiving end master / slave table switching is completed, updating the finite state machine of the receiving direction from the fourth FlexE receiving end state back to the first FlexE receiving end state.
[0018] In another aspect of the present invention, a device for implementing seamless switching of Flexible Ethernet (FlexE) is provided, which includes a first update module, a second update module, a third update module and a fourth update module.
[0019] The first update module is configured to send a first overhead frame to a flexible Ethernet FlexE receiver after the FlexE transmitter updates the time slot scheduling configuration of the FlexE transmitter standby table, for the FlexE receiver to poll, wherein the first overhead frame includes a value of scheduling request information CR and information about the time slot scheduling configuration.
[0020] The second update module is configured for the FlexE transmitter to update the value of the FlexE transmitter CR in the software mapping table, and update the finite state machine in the sending direction from the first FlexE transmitter state to the second FlexE transmitter state, wherein the software mapping table includes the time slot of the FlexE transmitter main table, the time slot of the FlexE transmitter standby table, the FlexE transmitter CR, the scheduling confirmation information CA and the switching information C.
[0021] A third update module is configured to receive, by the FlexE transmitter, and poll a second overhead frame returned by the FlexE receiver, and update, when a value of CA in the second overhead frame is consistent with a value of CR of the FlexE transmitter in the software mapping table, a finite state machine in the sending direction from the second FlexE transmitter state to a third FlexE transmitter state.
[0022] A fourth update module is configured to cause the FlexE transmitter to send a third overhead frame to the FlexE receiver, update the finite state machine in the sending direction from the third FlexE transmitter state to the fourth FlexE transmitter state, and perform a master-slave table switch, wherein the third overhead frame includes a value of the switching information C.
[0023] In one or more embodiments of the present invention, the third update module is further used to: when the value of the scheduling confirmation information CA in the second overhead frame is inconsistent with the value of the FlexE transmitter C in the software mapping table, the FlexE transmitter does not update the finite state machine of the sending direction from the second FlexE transmitter state to the third FlexE transmitter state, and does not send the third overhead frame to the FlexE receiver.
[0024] In one or more embodiments of the present invention, the fourth update module is further configured to: after the FlexE transmitter master / slave table switching is completed, update the finite state machine of the sending direction from the fourth FlexE transmitter state back to the first FlexE transmitter state.
[0025] In another aspect of the present invention, a device for implementing seamless switching of Flexible Ethernet (FlexE) is provided, which includes a polling module, an updating module, a sending module and a switching module.
[0026] The polling module is configured to receive and poll a first overhead frame sent by a flexible Ethernet FlexE transmitter at a FlexE receiver end. When the value of the scheduling request information CR in the first overhead frame is inconsistent with the value of the FlexE receiver end scheduling confirmation information CA in the software mapping table, the polling module compares the time slot scheduling configuration in the first overhead frame with the time slot of the FlexE receiver end standby table in the software mapping table, wherein the software mapping table includes the time slot of the FlexE receiver end main table, the time slot of the FlexE receiver end standby table, the value of the FlexE receiver end CA, and the switching information C.
[0027] An updating module is configured to, when the time slots are consistent, cause the FlexE receiving end to update a finite state machine in a receiving direction from a first FlexE receiving end state to a second FlexE receiving end state, and to update a value of a FlexE receiving end CA in a software mapping table to a value of a CR in the first overhead frame.
[0028] A sending module is configured to send, by the FlexE receiving end, a second overhead frame to the FlexE transmitting end, and update a finite state machine in the receiving direction from a second FlexE receiving end state to a third FlexE receiving end state, wherein the second overhead frame includes an updated CA value.
[0029] A switching module is configured to enable the FlexE receiving end to receive a third overhead frame sent by the FlexE transmitting end, update a finite state machine in the receiving direction from a third FlexE receiving end state to a fourth FlexE receiving end state, and perform a primary / standby table switch, wherein the third overhead frame includes a value of the switching information C.
[0030] In one or more embodiments of the present invention, the polling module is further used to: after the FlexE receiving end receives the first overhead frame, poll the configuration of the FlexE receiving end and the finite state machine of the receiving direction through the scheduler of the FlexE receiving end; when the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is ready, poll the first overhead frame through the scheduler of the FlexE receiving end; and / or, when the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is not ready, continue to poll the configuration of the FlexE receiving end and the finite state machine of the receiving direction.
[0031] In one or more embodiments of the present invention, the polling module is also used to: when the value of CR in the first overhead frame is consistent with the value of CA of the FlexE receiver in the software mapping table, the FlexE receiver does not compare the time slot scheduling configuration in the first overhead frame and the time slot in the FlexE receiver standby table in the software mapping table.
[0032] In one or more embodiments of the present invention, the update module is further used to: when the time slots are inconsistent, the FlexE receiver updates the time slot scheduling configuration in the first overhead frame to the FlexE receiver standby table; the FlexE receiver updates the finite state machine in the receiving direction from the first FlexE receiver state to the second FlexE receiver state, and updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame.
[0033] In one or more embodiments of the present invention, the switching module is further configured to: after the FlexE receiving end master / slave table is switched, update the finite state machine of the receiving direction from the fourth FlexE receiving end state back to the first FlexE receiving end state.
[0034] In another aspect of the present invention, a computing device is provided, comprising: at least one processor; and a memory, wherein the memory stores instructions, which, when executed by the at least one processor, enable the at least one processor to execute the method for implementing seamless switching of Flexible Ethernet FlexE as described above.
[0035] In another aspect of the present invention, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method for achieving seamless switching of Flexible Ethernet (FlexE) are implemented as described above.
[0036] Compared with the prior art, the method and apparatus for implementing flexible Ethernet FlexE seamless switching according to the embodiments of the present invention can save the master-slave table time slots and CA / CR / C information of the FlexE transmitter and the FlexE receiver by setting a software mapping table, and the CPU scheduler periodically polls the negotiation information in the flexible Ethernet seamless switching process, so that the CPU can control the flexible Ethernet seamless switching process and decouple the flexible Ethernet seamless switching from excessive dependence on external factors; by using a unidirectional finite state machine to constrain the flexible Ethernet seamless switching process, the flexible Ethernet seamless switching process can be carried out in an orderly manner; through the combination of software and hardware, the reliability and robustness of the flexible Ethernet seamless switching process are achieved. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] Figure 1 It is an architectural diagram of a flexible Ethernet device;
[0038] Figure 2 This is a specific flow chart of flexible Ethernet seamless switching in the prior art;
[0039] Figure 3 is a flowchart of a method for implementing seamless switching of Flexible Ethernet (FlexE) according to an embodiment of the present invention;
[0040] Figure 4 4 is a finite state machine flow chart of a method for implementing seamless switching of a flexible Ethernet (FlexE) according to an embodiment of the present invention;
[0041] Figure 5 4 is a finite state machine flow chart of a receiving direction of a method for implementing seamless switching of a flexible Ethernet (FlexE) according to an embodiment of the present invention;
[0042] Figure 6 is a specific flow chart of a method for implementing seamless switching of Flexible Ethernet (FlexE) according to an embodiment of the present invention;
[0043] Figure 7 1 is a structural diagram of an apparatus for implementing seamless switching of Flexible Ethernet (FlexE) according to an embodiment of the present invention;
[0044] Figure 8 1 is a structural diagram of an apparatus for implementing seamless switching of Flexible Ethernet (FlexE) according to an embodiment of the present invention;
[0045] Figure 9 FIG. 4 is a hardware structure diagram of a computing device for implementing seamless switching of Flexible Ethernet (FlexE) according to an embodiment of the present invention. DETAILED DESCRIPTION
[0046] The specific embodiments of the present invention are described in detail below with reference to the accompanying drawings, but it should be understood that the protection scope of the present invention is not limited by the specific embodiments.
[0047] Unless expressly stated otherwise, throughout the specification and claims, the term "comprise" or variations such as "include" or "comprising", etc., will be understood to include the stated elements or components but not to exclude other elements or other components.
[0048] The technical solutions provided by various embodiments of the present invention are described in detail below with reference to the accompanying drawings.
[0049] First combine Figures 1 to 2 Introduce the relevant technical knowledge involved in the embodiments of this application.
[0050] Flexible Ethernet (FlexE) technology is a low-cost, highly reliable, and dynamically configurable carrier-grade interface technology based on high-speed Ethernet interfaces. This technology is achieved by decoupling the Ethernet MAC layer from the PHY layer. The PHY layer, or physical layer, is the physical Ethernet interface. A collection of PHY layers is called a FlexEGroup. A FlexEGroup flexibly allocates time slots, or bandwidth resources, based on different service requirements, providing different users with interfaces of different bandwidths, or FlexEClients. Each interface has exclusive bandwidth. Figure 1 As shown in the figure, a 100GE physical interface is bound to a FlexEGroup. Based on possible service requirements, the MAC layer allocates bandwidth resources to two service ports: a 15GE port and an 85GE port.
[0051] As shown in the Flexible Ethernet connection architecture diagram, the Flexible Ethernet Shim (FlexEShim), a logical layer inserted between the MAC and PHY layers, primarily implements the mapping and demapping of FlexE client signals carried on a FlexE Group. The Flexible Ethernet Shim, through a timeslot allocator-based timeslot distribution mechanism, implements the core architecture of FlexE technology, decoupling the service ports of the MAC layer from the physical ports of the PHY layer.
[0052] like Figure 2The figure shows a negotiation process for seamless handover in Flexible Ethernet. The FlexE transmitter stores the prepared adjusted timeslot scheduling configuration in a backup timeslot table, i.e., the transmitter's backup table. The FlexE transmitter inserts the scheduling request information CR and the adjusted timeslot scheduling configuration information into the first overhead frame and sends it. This information is then sent to the FlexE receiver on the peer device via a physical port. The FlexE receiver receives an interrupt and parses the information in the first overhead frame to obtain the CR value and timeslot scheduling configuration, which are then synchronously distributed to the local backup table configuration. The FlexE receiver sends a second overhead frame to the FlexE transmitter, including the scheduling confirmation information CA. The FlexE transmitter receives the interrupt and parses the second overhead frame. After obtaining the CA value, it confirms that both ends have met the handover conditions. The FlexE transmitter sends a handover information C, agreeing that both ends will complete the handover in the next overhead frame. Both ends switch in the next frame, and the backup tables of the FlexE transmitter and receiver become the primary table, and the original primary table becomes the backup table, completing the seamless handover in Flexible Ethernet.
[0053] In Flexible Ethernet, information related to the bandwidth allocation configuration during the switching process is carried by the FlexE Overhead Frame. The FlexE Overhead Frame includes multiple bit field information, including the values of CR, CA, and C. CR is the scheduling request identifier. When the FlexE transmitter needs to switch the bandwidth allocation configuration, the value of the CR bit can be changed to the identifier of the bandwidth allocation configuration to be switched, and the CR information can be sent to the FlexE receiver to request the switching of the bandwidth allocation configuration. CA is the scheduling response / confirmation identifier. When the FlexE receiver receives the CR information, it changes the value of CA to a value consistent with CR, and sends CA information to the FlexE transmitter to respond to the switching of the bandwidth allocation configuration. C is the switching identifier. When the FlexE transmitter receives the CA information, the two ends are aligned. The FlexE transmitter sends the C information to the FlexE receiver, and the two ends agree to switch the bandwidth allocation configuration.
[0054] Typically, an interrupt is triggered by three conditions: 1) The physical port and physical link correctly receive the CR / CA values sent by the FlexE transmitter; 2) The FlexE receiver hardware correctly compares the CR / CA changes and triggers an interrupt; 3) The configuration of the FlexEGroup-bound physical port and the FlexE Client on the FlexE receiver must be completed in advance and able to respond in a timely manner.
[0055] Correspondingly, there are three types of failure scenarios in actual network environments: 1) The bit error rate of the high-speed port or human-induced link oscillation causes the FlexE transmitter or FlexE receiver to receive incorrect CR / CA values. 2) Due to the existence of the first failure scenario, the FlexE transmitter or FlexE receiver hardware does not recognize the existence of a CR / CA value jump, and thus does not trigger an interrupt. 3) There is a situation where the FlexEGroup or FlexEClient configuration of the FlexE receiver is not ready, resulting in an inability to respond to the interrupt normally. It can be seen that the existing technology has a serious dependence on the three aspects of physical port, FlexE hardware and FlexE software configuration.
[0056] At least for the above reasons, the present invention aims to provide a hardware-software-based approach to replace the interrupt-based approach of the prior art to shield the dependencies on physical ports, FlexE hardware, and FlexE software configuration.
[0057] Example 1
[0058] like Figures 3 to 6 As shown, a method for implementing seamless switching of Flexible Ethernet (FlexE) in an embodiment of the present invention is introduced. The method includes the following steps.
[0059] In step S301, the FlexE transmitter updates the time slot scheduling configuration of the FlexE transmitter standby table and then sends a first overhead frame to the Flexible Ethernet FlexE receiver.
[0060] In this embodiment, a software mapping table containing current connection status information is set and maintained. This software mapping table may include information from both the FlexE transmitter and the FlexE receiver. Specifically, the software mapping table includes the time slots in the FlexE transmitter's primary table, the time slots in the FlexE transmitter's backup table, the FlexE transmitter's CR, the scheduling confirmation information CA, and the switching information C values; as well as the time slots in the FlexE receiver's primary table, the time slots in the FlexE receiver's backup table, the FlexE receiver's CA, and the switching information C values. As is known, the primary table is the active scheduling table, and the backup table is the backup scheduling table.
[0061] Specifically, the FlexE transmitter stores the time slot scheduling configuration to be adjusted in the FlexE transmitter standby table, and records information about the time slots in the FlexE transmitter main table and the time slots in the FlexE transmitter standby table in the software mapping table.
[0062] The FlexE transmitter places the scheduling request information CR and the adjusted timeslot scheduling configuration information in a first overhead frame and sends it to the FlexE receiver. The first overhead frame is transmitted to the FlexE receiver of the opposite device through a physical port.
[0063] In step S302, the FlexE transmitter updates the value of the FlexE transmitter CR in the software mapping table.
[0064] After the FlexE transmitter sends the first overhead frame, the value of the FlexE transmitter CR in the software mapping table is updated, and the finite state machine in the sending direction is updated from the first FlexE transmitter state to the second FlexE transmitter state.
[0065] In this embodiment, a finite state machine in the sending direction and a finite state machine in the receiving direction are set to interact with the FlexE transmitter and the FlexE receiver, and state jumps of the finite state machine in the sending direction and the finite state machine in the receiving direction can only be executed in one direction.
[0066] Finite-state machine (FSM), also known as finite state automaton, or state machine for short, is a model that represents a finite number of states and behaviors such as transitions and actions between these states.
[0067] The finite state machine in the sending direction includes the first FlexE sender state, the second FlexE sender state, the third FlexE sender state, and the fourth FlexE sender state. Its state jump can only jump from the first FlexE sender state to the second FlexE sender state, from the second FlexE sender state to the third FlexE sender state, from the third FlexE sender state to the fourth FlexE sender state, and then from the fourth FlexE sender state back to the initial first FlexE sender state.
[0068] Correspondingly, the finite state machine in the receiving direction includes a first FlexE receiver state, a second FlexE receiver state, a third FlexE receiver state, and a fourth FlexE receiver state. Its state jump can only be from the first FlexE receiver state to the second FlexE receiver state, from the second FlexE receiver state to the third FlexE receiver state, from the third FlexE receiver state to the fourth FlexE receiver state, and then from the fourth FlexE receiver state back to the initial first FlexE receiver state.
[0069] like Figure 4 The figure shows a state and transition relationship of the finite state machine in the sending direction. The state can be in four states: the sender idle state, the CR state has been sent, the CA state has been received, and the C state has been sent. Based on the principle of one-way jump, it can be seen that the sender idle state cannot directly jump to a state other than the CR state. The transition relationship of other states is similar.
[0070] like Figure 5 The figure shows a state and transition relationship of the finite state machine in the receiving direction. The states can be four: the receiving end idle state, the CR received state, the CA sent state, and the C received state. Based on the principle of one-way jump, it can be seen that the receiving end idle state cannot directly jump to a state other than the CR received state. The transition relationship of other states is similar.
[0071] On the other hand, the FlexE receiver receives the first overhead frame from the FlexE transmitter. The FlexE receiver's scheduler first polls the FlexE receiver's configuration and the finite state machine for the receive direction. If conditions are met, the receiver polls the first overhead frame to obtain information from it. This information includes the value of the scheduling request (CR) sent by the FlexE transmitter and the timeslot scheduling configuration. Polling involves the main CPU using the scheduler to periodically query each device for processing requests.
[0072] In this embodiment, to ensure high real-time connection establishment, the main CPUs of the FlexE transmitter and receiver can periodically poll received overhead frames at a high frequency. In this embodiment, one period is set to 500 milliseconds. When the schedulers on both ends read the overhead frames, they extract the data in the received overhead frames and compare it with the locally maintained software mapping table and finite state machine to make appropriate decisions.
[0073] Specifically, the scheduler at the FlexE receiving end polls the configuration status of the current FlexE receiving end and the finite state machine of the receiving direction to determine whether the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is ready.
[0074] When the configuration of the FlexEGroup and FlexEClient on the FlexE receiving end is complete, polling of the first received overhead frame begins.
[0075] If the configuration of the FlexEGroup and FlexEClient on the FlexE receiving end is not complete, the FlexE receiving end configuration and the finite state machine of the receiving direction are polled, and the seamless switching process is exited.
[0076] Furthermore, the scheduler of the FlexE receiving end polls the received first overhead frame to determine whether the value of CR in the first overhead frame is consistent with the value of CA of the FlexE receiving end in the software mapping table.
[0077] When the CR value in the first overhead frame is consistent with the CA value of the FlexE receiver in the software mapping table, the FlexE receiver does not continue to compare the time slot scheduling configuration in the first overhead frame with the time slot in the FlexE receiver's backup table in the software mapping table, and exits the current seamless switching process.
[0078] When the value of CR in the first overhead frame is inconsistent with the value of CA of the FlexE receiver in the software mapping table, the FlexE receiver reads the time slot scheduling configuration in the first overhead frame and determines whether the time slot scheduling configuration in the first overhead frame is consistent with the time slot in the FlexE receiver standby table in the software mapping table.
[0079] When the time slots are consistent, the FlexE receiver updates the finite state machine of the receiving direction from the first FlexE receiver state to the second FlexE receiver state, and updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame.
[0080] When the time slots are inconsistent, the FlexE receiver first updates the time slot scheduling configuration in the first overhead frame to the FlexE receiver standby table, then updates the finite state machine of the receiving direction from the first FlexE receiver state to the second FlexE receiver state, and updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame.
[0081] After the FlexE receiver updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame, it replies to the FlexE transmitter with a second overhead frame in response to the scheduling request. The second overhead frame includes the updated CA value and updates the finite state machine in the receiving direction from the second FlexE receiver state to the third FlexE receiver state.
[0082] In step S303, the FlexE transmitter receives and polls the second overhead frame returned by the FlexE receiver.
[0083] In this embodiment, the FlexE transmitter receives the second overhead frame replied by the FlexE receiver, and polls the received second overhead frame through the scheduler of the FlexE transmitter, reads the information in the second overhead frame, and determines whether the value of CA in the second overhead frame is consistent with the value of CR of the FlexE transmitter in the software mapping table.
[0084] When the value of CA in the second overhead frame is consistent with the value of CR of the FlexE transmitter in the software mapping table, it can be confirmed that both the FlexE transmitter and the FlexE receiver meet the switching conditions, and the FlexE transmitter updates the finite state machine of the transmission direction from the second FlexE transmitter state to the third FlexE transmitter state.
[0085] When the value of CA in the second overhead frame is inconsistent with the value of CR of the FlexE transmitter in the software mapping table, the FlexE transmitter does not update the state machine of the finite state machine in the sending direction and exits the seamless switching process.
[0086] In step S304, the FlexE transmitter sends a third overhead frame to the FlexE receiver and performs a master / slave table switch.
[0087] After the FlexE transmitter updates the finite state machine of the transmission direction from the second FlexE transmitter state to the third FlexE transmitter state, it sends a third overhead frame to the FlexE receiver, agreeing that both ends can complete the active / standby switchover simultaneously in the next frame. The third overhead frame includes the switching information C.
[0088] After the FlexE transmitter completes sending the third overhead frame, the finite state machine of the sending direction is updated from the third FlexE transmitter state to the fourth FlexE transmitter state.
[0089] After the FlexE transmitter receives the third overhead frame, the finite state machine in the receiving direction is updated from the third FlexE transmitter state to the fourth FlexE transmitter state.
[0090] In the next frame, the backup table on the FlexE transmitter becomes the primary table, and the primary table on the FlexE transmitter becomes the backup table. The backup table on the FlexE receiver becomes the primary table, and the primary table on the FlexE receiver becomes the backup table. This allows the adjusted timeslot scheduling configurations on both ends to take effect, completing seamless FlexE switching.
[0091] After the active / standby switching of the FlexE transmitter is completed, the finite state machine of the transmitting direction may be updated to return from the fourth FlexE transmitter state to the first FlexE transmitter state, waiting for the next interaction.
[0092] After the active / standby switching of the FlexE receiving end is completed, the finite state machine of the receiving direction can be updated from the fourth FlexE sending end state to the first FlexE sending end state, waiting for the next interaction.
[0093] This embodiment, based on a combination of software and hardware and a finite state machine constraint mode, can resolve the three failure scenarios of the above-mentioned conventional FlexE seamless switching based on the interrupt mechanism, achieving higher reliability and robustness.
[0094] For the first fault scenario, where the high-speed port's bit error rate or human-induced link oscillation causes the FlexE transmitter or receiver to receive incorrect CR / CA values, this embodiment adds filtering conditions to filter out incorrect CR / CA values, ensuring that both ends receive stable CR / CA values.
[0095] Specifically, based on the main CPU polling mechanism, the FlexE receiver parses the CR / CA value in the overhead frame and compares it with the corresponding information in the software information table. If no rollover occurs, the FlexE seamless handover process is exited. If a rollover occurs, the corresponding finite state machine is determined to meet the jump conditions. If so, the process continues.
[0096] For the second fault scenario, that is, the FlexE transmitter or receiver hardware does not recognize the CR / CA value jump and thus does not trigger an interrupt, this embodiment uses a main CPU polling mechanism to avoid subsequent process errors caused by the interrupt not being triggered or a false alarm.
[0097] For the third fault scenario, that is, the FlexEGroup or FlexEClient configuration of the FlexE receiver is not ready, resulting in an inability to respond to the interrupt normally. This embodiment polls the current configuration status of the FlexE receiver. When the FlexEGroup or FlexEClient of the FlexE receiver is not ready, the behavior of the FlexE receiver can be controlled by the main CPU to suspend the operation until the configuration is completed and the receiver operation is resumed.
[0098] It is understandable that the FlexE transmitter and the FlexE receiver are the main bodies that perform functions based on the negotiation process of a FlexE seamless handover. The FlexE transmitter can be the receiver, and the FlexE receiver can also be the transmitter. When the FlexE transmitter performs functions in the sending direction, the FlexE transmitter can be the transmitter; when the FlexE transmitter performs functions in the receiving direction, the FlexE transmitter can be the receiver; when the FlexE receiver performs functions in the sending direction, the FlexE receiver can be the transmitter; when the FlexE introduction end performs functions in the receiving direction, the FlexE receiver can be the receiver. The present invention does not impose any functional restrictions on the devices at both ends based on the naming of the FlexE transmitter and the FlexE receiver.
[0099] According to the method and apparatus for implementing flexible Ethernet (FlexE) seamless switching according to the embodiments of the present invention, a software mapping table can be set to store the master / slave table time slots and CA / CR / C information of the FlexE transmitter and receiver, and the CPU scheduler periodically polls the negotiation information in the flexible Ethernet seamless switching process, so that the CPU can control the flexible Ethernet seamless switching process and decouple the flexible Ethernet seamless switching from excessive dependence on external factors. By using a unidirectional finite state machine to constrain the flexible Ethernet seamless switching process, the flexible Ethernet seamless switching process can be carried out in an orderly manner. Through the combination of software and hardware, the reliability and robustness of the flexible Ethernet seamless switching process are achieved.
[0100] In the above embodiments, the method for realizing seamless switching of flexible Ethernet FlexE of the present invention is described in a manner in which the FlexE transmitter and the FlexE receiver cooperate and interact. It can be understood that in some other embodiments, the FlexE transmitter and the FlexE receiver can each execute the method / function on the corresponding end side. For example, the FlexE transmitter can perform operations such as updating the time slot scheduling configuration of the FlexE transmitter standby table, sending the first overhead frame, updating the value of the FlexE transmitter CR in the software mapping table, updating the state of the finite state machine in the sending direction, receiving and polling the second overhead frame returned by the FlexE receiver, and sending the third overhead frame as shown in the above embodiments, but it does not mean that the FlexE receiver needs to perform some or all of the operations shown in the above embodiments at the same time, and the present invention is not limited to this.
[0101] like Figure 7 As shown, a device for implementing seamless switching of Flexible Ethernet FlexE according to a specific embodiment of the present invention is introduced.
[0102] In an embodiment of the present invention, the apparatus for implementing seamless switching of Flexible Ethernet (FlexE) includes a first update module 701 , a second update module 702 , a third update module 703 and a fourth update module 704 .
[0103] The first update module 701 is configured to send a first overhead frame to a Flexible Ethernet FlexE receiver after the FlexE transmitter updates the time slot scheduling configuration of the FlexE transmitter standby table, for the FlexE receiver to poll, wherein the first overhead frame includes the value of the scheduling request information CR and information about the time slot scheduling configuration.
[0104] The second update module 702 is configured for the FlexE transmitter to update the value of the FlexE transmitter CR in the software mapping table, and update the finite state machine in the sending direction from the first FlexE transmitter state to the second FlexE transmitter state, wherein the software mapping table includes the time slot of the FlexE transmitter main table, the time slot of the FlexE transmitter standby table, the FlexE transmitter CR, the scheduling confirmation information CA, and the switching information C.
[0105] The third update module 703 is configured to receive and poll the second overhead frame returned by the FlexE receiver at the FlexE transmitter, and update the finite state machine of the sending direction from the second FlexE transmitter state to the third FlexE transmitter state when the value of CA in the second overhead frame is consistent with the value of CR of the FlexE transmitter in the software mapping table.
[0106] A fourth update module 704 is configured to cause the FlexE transmitter to send a third overhead frame to the FlexE receiver, update the finite state machine in the sending direction from the third FlexE transmitter state to the fourth FlexE transmitter state, and perform a master-slave table switch, wherein the third overhead frame includes a value of the switching information C.
[0107] The third update module 703 is further used to: when the value of the scheduling confirmation information CA in the second overhead frame is inconsistent with the value of the FlexE transmitter C in the software mapping table, the FlexE transmitter does not update the finite state machine of the sending direction from the second FlexE transmitter state to the third FlexE transmitter state, and does not send the third overhead frame to the FlexE receiver.
[0108] The fourth updating module 704 is further configured to: after the FlexE transmitter master / slave table switching is completed, update the finite state machine of the sending direction from the fourth FlexE transmitter state back to the first FlexE transmitter state.
[0109] like Figure 8 As shown, a device for implementing seamless switching of Flexible Ethernet FlexE according to another specific embodiment of the present invention is introduced.
[0110] In an embodiment of the present invention, the apparatus for implementing seamless switching of Flexible Ethernet (FlexE) includes a polling module 801 , an updating module 802 , a sending module 803 and a switching module 804 .
[0111] The polling module 801 is configured to receive and poll a first overhead frame sent by a flexible Ethernet FlexE transmitter at a FlexE receiver. When the value of the scheduling request information CR in the first overhead frame is inconsistent with the value of the FlexE receiver scheduling confirmation information CA in the software mapping table, the polling module 801 compares the time slot scheduling configuration in the first overhead frame with the time slot of the FlexE receiver standby table in the software mapping table, wherein the software mapping table includes the time slot of the FlexE receiver main table, the time slot of the FlexE receiver standby table, the value of the FlexE receiver CA, and the switching information C.
[0112] The updating module 802 is configured to update, by the FlexE receiving end, a finite state machine in a receiving direction from a first FlexE receiving end state to a second FlexE receiving end state when the time slots are consistent, and update the value of the FlexE receiving end CA in the software mapping table to the value of the CR in the first overhead frame.
[0113] The sending module 803 is configured to send a second overhead frame from the FlexE receiving end to the FlexE transmitting end, and update the finite state machine of the receiving direction from the second FlexE receiving end state to the third FlexE receiving end state, wherein the second overhead frame includes the updated CA value.
[0114] The switching module 804 is configured to cause the FlexE receiving end to receive a third overhead frame sent by the FlexE transmitting end, update the finite state machine in the receiving direction from the third FlexE receiving end state to the fourth FlexE receiving end state, and perform a master-slave table switch, wherein the third overhead frame includes a value of the switching information C.
[0115] The polling module 801 is also used for: after the FlexE receiving end receives the first overhead frame, polling the configuration of the FlexE receiving end and the finite state machine of the receiving direction through the scheduler of the FlexE receiving end; when the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is ready, polling the first overhead frame through the scheduler of the FlexE receiving end; and / or, when the configuration of the FlexEGroup and FlexEClient of the FlexE receiving end is not ready, continuing to poll the configuration of the FlexE receiving end and the finite state machine of the receiving direction.
[0116] The polling module 801 is further configured to: when the value of CR in the first overhead frame is consistent with the value of CA of the FlexE receiving end in the software mapping table, the FlexE receiving end does not compare the time slot scheduling configuration in the first overhead frame with the time slot in the FlexE receiving end standby table in the software mapping table.
[0117] The update module 802 is also used to: when the time slots are inconsistent, the FlexE receiving end updates the time slot scheduling configuration in the first overhead frame to the FlexE receiving end standby table; the FlexE receiving end updates the finite state machine in the receiving direction from the first FlexE receiving end state to the second FlexE receiving end state, and updates the value of the FlexE receiving end CA in the software mapping table to the value of the CR in the first overhead frame.
[0118] The switching module 804 is further configured to: after the switching of the primary and backup tables of the FlexE receiving end is completed, update the finite state machine of the receiving direction from the fourth FlexE receiving end state back to the first FlexE receiving end state.
[0119] Figure 9 FIG. 1 shows a hardware structure diagram of a computing device 90 for implementing seamless switching of a flexible Ethernet FlexE according to an embodiment of the present specification. Figure 9 As shown, the computing device 90 may include at least one processor 901, a memory 902 (e.g., a non-volatile memory), a storage 903, and a communication interface 904, and the at least one processor 901, the storage 902, the storage 903, and the communication interface 904 are connected together via a bus 905. The at least one processor 901 executes at least one computer-readable instruction stored or encoded in the storage 902.
[0120] It should be understood that the computer executable instructions stored in the memory 902, when executed, cause at least one processor 901 to perform the above combined operations in various embodiments of this specification. Figure 1-9 Describes the various operations and functions.
[0121] In the embodiments of the present specification, the computing device 90 may include, but is not limited to, a personal computer, a server computer, a workstation, a desktop computer, a laptop computer, a notebook computer, a mobile computing device, a smart phone, a tablet computer, a cellular phone, a personal digital assistant (PDA), a handheld device, a messaging device, a wearable computing device, a consumer electronic device, and the like.
[0122] According to one embodiment, a program product such as a machine-readable medium is provided. The machine-readable medium may have instructions (i.e., the above-mentioned elements implemented in software form), which, when executed by a machine, causes the machine to perform the above-mentioned combined embodiments of the present specification. Figure 1-9 Specifically, a system or device equipped with a readable storage medium can be provided, on which software program codes for implementing the functions of any of the above-mentioned embodiments are stored, and a computer or processor of the system or device can be enabled to read and execute the instructions stored in the readable storage medium.
[0123] According to the method and apparatus for implementing flexible Ethernet (FlexE) seamless switching according to the embodiments of the present invention, a software mapping table can be set to store the master / slave table time slots and CA / CR / C information of the FlexE transmitter and receiver, and the CPU scheduler periodically polls the negotiation information in the flexible Ethernet seamless switching process, so that the CPU can control the flexible Ethernet seamless switching process and decouple the flexible Ethernet seamless switching from excessive dependence on external factors. By using a unidirectional finite state machine to constrain the flexible Ethernet seamless switching process, the flexible Ethernet seamless switching process can be carried out in an orderly manner. Through the combination of software and hardware, the reliability and robustness of the flexible Ethernet seamless switching process are achieved.
[0124] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROMs, optical storage, etc.) containing computer-usable program code.
[0125] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0126] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0127] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0128] The foregoing descriptions of specific exemplary embodiments of the present invention are for purposes of illustration and description. These descriptions are not intended to limit the invention to the precise forms disclosed, and it is apparent that many variations and modifications are possible in light of the foregoing teachings. The exemplary embodiments have been selected and described for the purpose of explaining the specific principles of the invention and their practical application, thereby enabling those skilled in the art to realize and utilize a variety of exemplary embodiments of the invention and various options and modifications. The scope of the invention is intended to be defined by the claims and their equivalents.
Claims
1. A method for implementing seamless switching of Flexible Ethernet (FlexE), characterized in that: The method comprises: After updating the timeslot scheduling configuration in the FlexE transmitting end standby table, the FlexE transmitting end sends a first overhead frame to the Flexible Ethernet FlexE receiving end for polling by the FlexE receiving end, wherein the first overhead frame includes a value of the scheduling request information CR and information about the timeslot scheduling configuration; The FlexE transmitter updates a value of the FlexE transmitter CR in a software mapping table, and updates a finite state machine in the transmitting direction from a first FlexE transmitter state to a second FlexE transmitter state, wherein the software mapping table includes a time slot of a FlexE transmitter main table, a time slot of a FlexE transmitter backup table, a FlexE transmitter CR, scheduling confirmation information CA, and switching information C. The FlexE transmitter receives and polls a second overhead frame returned by the FlexE receiver, and when a value of CA in the second overhead frame is consistent with a value of CR of the FlexE transmitter in the software mapping table, updates a finite state machine in the transmit direction from a second FlexE transmitter state to a third FlexE transmitter state; and The FlexE transmitter sends a third overhead frame to the FlexE receiver, updates the finite state machine of the sending direction from the third FlexE transmitter state to the fourth FlexE transmitter state, and switches the master and standby tables, wherein the third overhead frame includes a value of the switching information C.
2. The method for implementing seamless switching of Flexible Ethernet (FlexE) according to claim 1, wherein: The method further comprises: When the value of the scheduling confirmation information CA in the second overhead frame is inconsistent with the value of the FlexE transmitter CR in the software mapping table, the FlexE transmitter does not update the finite state machine of the sending direction from the second FlexE transmitter state to the third FlexE transmitter state, and does not send the third overhead frame to the FlexE receiver.
3. The method for implementing seamless switching of Flexible Ethernet (FlexE) according to claim 1, wherein: The method further comprises: After the FlexE transmitter master / slave table is switched, the finite state machine of the transmission direction is updated to return from the fourth FlexE transmitter state to the first FlexE transmitter state.
4. A method for implementing seamless switching of Flexible Ethernet (FlexE), characterized in that: The method comprises: The FlexE receiver receives and polls a first overhead frame sent by a flexible Ethernet FlexE transmitter. When a value of the scheduling request information CR in the first overhead frame is inconsistent with a value of the FlexE receiver scheduling confirmation information CA in the software mapping table, the FlexE receiver compares the time slot scheduling configuration in the first overhead frame with the time slots in the FlexE receiver backup table in the software mapping table, where the software mapping table includes the time slots in the FlexE receiver main table, the time slots in the FlexE receiver backup table, the values of the FlexE receiver CA, and the switching information C. When the time slots are consistent, the FlexE receiver updates the finite state machine of the receiving direction from the first FlexE receiver state to the second FlexE receiver state, and updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame; The FlexE receiver sends a second overhead frame to the FlexE transmitter, updating the finite state machine in the receive direction from the second FlexE receiver state to the third FlexE receiver state, wherein the second overhead frame includes the updated CA value; and The FlexE receiving end receives a third overhead frame sent by the FlexE transmitting end, updates the finite state machine in the receiving direction from the third FlexE receiving end state to the fourth FlexE receiving end state, and switches the primary and standby tables, wherein the third overhead frame includes a value of the switching information C.
5. The method for implementing seamless switching of Flexible Ethernet (FlexE) according to claim 4, wherein: The FlexE receiving end receives and polls a first overhead frame sent by a FlexE transmitting end, specifically including: After receiving the first overhead frame, the FlexE receiving end polls the configuration of the FlexE receiving end and the finite state machine of the receiving direction through the scheduler of the FlexE receiving end; When configuration preparation of the FlexE Group and the FlexE Client of the FlexE receiving end is completed, polling the first overhead frame by the scheduler of the FlexE receiving end; and / or, When the configuration of the FlexE Group and the FlexE Client of the FlexE receiving end is not yet complete, the configuration of the FlexE receiving end and the finite state machine of the receiving direction are continuously polled.
6. The method for implementing seamless switching of Flexible Ethernet (FlexE) according to claim 4, wherein: The method further comprises: When the value of CR in the first overhead frame is consistent with the value of CA of the FlexE receiver in the software mapping table, the FlexE receiver does not compare the time slot scheduling configuration in the first overhead frame with the time slot in the FlexE receiver standby table in the software mapping table.
7. The method for implementing seamless switching of Flexible Ethernet (FlexE) according to claim 4, wherein: The method further comprises: When the time slots are inconsistent, the FlexE receiving end updates the time slot scheduling configuration in the first overhead frame to the FlexE receiving end standby table; The FlexE receiver updates the finite state machine of the receiving direction from the first FlexE receiver state to the second FlexE receiver state, and updates the value of the FlexE receiver CA in the software mapping table to the value of the CR in the first overhead frame.
8. The method for implementing seamless switching of Flexible Ethernet (FlexE) according to claim 4, wherein: The method further comprises: After the master / slave table of the FlexE receiving end is switched, the finite state machine of the receiving direction is updated to return from the fourth FlexE receiving end state to the first FlexE receiving end state.
9. A device for implementing seamless switching of Flexible Ethernet (FlexE), characterized in that: The device comprises: A first updating module is configured to send, after the FlexE transmitter updates the timeslot scheduling configuration in the FlexE transmitter standby table, a first overhead frame to the Flexible Ethernet FlexE receiver for polling by the FlexE receiver, wherein the first overhead frame includes a value of scheduling request information CR and information about the timeslot scheduling configuration; a second updating module, configured for the FlexE transmitter to update a value of a FlexE transmitter CR in a software mapping table, and to update a finite state machine in a transmitting direction from a first FlexE transmitter state to a second FlexE transmitter state, wherein the software mapping table includes a time slot of a FlexE transmitter main table, a time slot of a FlexE transmitter standby table, a FlexE transmitter CR, scheduling confirmation information CA, and switching information C; a third updating module, configured for the FlexE transmitter to receive and poll a second overhead frame returned by the FlexE receiver, and update the finite state machine of the transmitting direction from the second FlexE transmitter state to a third FlexE transmitter state when a value of CA in the second overhead frame is consistent with a value of CR of the FlexE transmitter in the software mapping table; and A fourth update module is configured to cause the FlexE transmitter to send a third overhead frame to the FlexE receiver, update the finite state machine in the sending direction from the third FlexE transmitter state to the fourth FlexE transmitter state, and perform a master-slave table switch, wherein the third overhead frame includes a value of the switching information C.
10. A device for implementing seamless switching of Flexible Ethernet (FlexE), characterized in that: The device comprises: A polling module, configured to receive and poll a first overhead frame sent by a flexible Ethernet (FlexE) transmitter at a FlexE receiver, and compare, when a value of scheduling request information CR in the first overhead frame is inconsistent with a value of scheduling confirmation information CA of the FlexE receiver in a software mapping table, the timeslot scheduling configuration in the first overhead frame with a timeslot in a backup table of the FlexE receiver in the software mapping table, wherein the software mapping table includes the timeslots in the main table of the FlexE receiver, the timeslots in the backup table of the FlexE receiver, the values of CA of the FlexE receiver, and the switching information C; an updating module, configured to, when the time slots are consistent, update, by the FlexE receiver, a finite state machine in a receiving direction from a first FlexE receiver state to a second FlexE receiver state, and update a value of the FlexE receiver CA in a software mapping table to a value of the CR in the first overhead frame; a sending module, configured for the FlexE receiving end to send a second overhead frame to the FlexE transmitting end, and update the finite state machine of the receiving direction from the second FlexE receiving end state to the third FlexE receiving end state, wherein the second overhead frame includes an updated CA value; and A switching module is configured to enable the FlexE receiving end to receive a third overhead frame sent by the FlexE transmitting end, update a finite state machine in the receiving direction from a third FlexE receiving end state to a fourth FlexE receiving end state, and perform a primary / standby table switch, wherein the third overhead frame includes a value of the switching information C.
Citation Information
Patent Citations
Method and device for mapping physical resource of physical downlink shared channel
CN103248599A
Method, related equipment and system for obtaining target transmission path
CN109728968A