A Bandwidth Adjustment Method and Network Device Based on FlexE Service

By using cache filling and boundary alignment technology on the sending device side and receiving device side of FlexE service, the problems of service data loss and reception order during bandwidth adjustment are solved, and lossless service data transmission is achieved.

CN116235435BActive Publication Date: 2025-05-27HUAWEI TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202080104796.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-07-31
Publication Date
2025-05-27
Estimated Expiration
2040-07-31

AI Technical Summary

Technical Problem

During the bandwidth adjustment process of FlexE service, when the transmission device side adjusts from a large transmission channel to a small transmission channel, service data loss is prone to occur, and when the reception device side adjusts from a small transmission channel to a large transmission channel, the service data reception order is prone to occur incorrectly, resulting in data errors.

Method used

The traffic data is written to the cache at a rate greater than the first bandwidth at the first point in time on the transmission device side, and is filled to the first channel and the second channel between the first point in time to the second point in time. At the second point in time, when the first channel is adjusted to the second channel, the second channel can start sending service data to ensure boundaries are aligned and data loss is avoided. The receiving device side ensures that data is maintained by starting to write to the cache at the second time point and continuing to receive residual data, and starting to receive the service data in the cache at the third time point.

Benefits of technology

Lossless transmission and reception of service data during bandwidth adjustment is realized, and the problems of data loss and disordered reception order are avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116235435B_ABST
    Figure CN116235435B_ABST
Patent Text Reader

Abstract

The present application discloses a bandwidth adjustment method and a network device based on FlexE services, which are used to achieve the purpose that when the sending device side adjusts the sending channel, the boundary of the service data sent by the first channel is aligned with the boundary of the service data sent by the second channel, and there will be no phenomenon that part of the service data sent by the second channel is lost. The method includes: at a first time point before adjusting the current sending channel from the first channel to the second channel at a second time point, start writing the service data to be sent into the buffer at a rate greater than the first bandwidth, and fill the service data in the buffer into the first channel and the second channel; at the second time point, start sending the service data filled into the second channel through the second channel; wherein, the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technologies, and in particular, to a method for adjusting bandwidth based on FlexE services and a network device. Background Art

[0002] The Optical Internet Forum (OIF) has released the Flexible Ethernet (FlexE) technical standard. FlexE is a general technology that supports multiple Media Access Control (MAC) layer rates. FlexE divides each 100 Gigabit Ethernet (GE) Physical (PHYs) interface into 20 time slots (slots) of data-carrying channels with a granularity of 5G bandwidth in the time domain through Time Division Multiplexing (TDM). For simplicity, taking the data-carrying channel name of each time slot as the transmission channel as an example, that is, the bandwidth of each transmission channel is 5G, realizing the hard isolation of the transmission channel bandwidth. Among them, a service data stream can be allocated to one or more transmission channels, realizing the matching of various rate services.

[0003] FlexE can adjust the bandwidth size of the transmission channels carrying each service to meet the different bandwidth requirements of each service. For example, when a service requires a small bandwidth, FlexE can reduce the bandwidth of the transmission channel transmitting the service, or when the service requires a large bandwidth, FlexE can increase the bandwidth of the transmission channel transmitting the service.

[0004] Currently, on the sending device side, when FlexE adjusts from a large transmission channel (a transmission channel with a larger bandwidth) to a small transmission channel (a transmission channel with a smaller bandwidth), since the transmission rate of the large transmission channel is larger than that of the small transmission channel, it is easy to have the boundary of the service data sent by the large transmission channel and the service data sent by the small transmission channel misaligned at the switching boundary point, resulting in the phenomenon of losing some service data sent by the small transmission channel, making the transmission of service data lossy.

[0005] On the receiving device side, when FlexE adjusts from a small transmission channel to a large transmission channel, since the transmission rate of the small transmission channel is smaller than that of the large transmission channel, it is easy to have the phenomenon of simultaneously outputting the service data received by the small transmission channel and the service data received by the large transmission channel for a period of time after the switching boundary point, resulting in the disorder of the receiving order of service data and causing the content of the service data to be disordered, making the received service data incorrect. Summary of the Invention

[0006] An embodiment of the present application provides a method for adjusting the bandwidth of FlexE services and a network device, which are used to solve the problem that when adjusting the bandwidth of the transmission channel for transmitting service data, service data transmission may be damaged or errors may occur in receiving service data.

[0007] In a first aspect, an embodiment of the present application provides a method for adjusting the bandwidth of FlexE services. The method can be applied to a network device located on the service data sending side. The method may include: determining, according to the requirement of sending data, that it is necessary to adjust the current sending channel from a first channel to a second channel at a second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; starting to write the service data to be sent at a rate greater than the first bandwidth into a cache at a first time point before the second time point, and filling the service data in the cache into the first channel and the second channel; further, between the first time point and the second time point, sending the service data filled into the first channel through the first channel; further, at the second time point, starting to send the service data filled into the second channel through the second channel; where the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in one cycle on the second channel.

[0008] With the above design, since the amount of service data filled into the second channel between the first time point and the second time point can be equal to the amount of data sent in one cycle on the second channel, when the first channel is adjusted to the second channel at the second time point, the second channel can start to send service data, achieving the purpose of aligning the boundaries of the service data sent by the first channel and the service data sent by the second channel, and preventing the phenomenon that some service data sent by the second channel is lost. Furthermore, the effect of lossless transmission of service data can be achieved.

[0009] In a possible design, after starting to send the service data filled into the second channel through the second channel at the second time point, it may include: when the remaining service data in the cache is sent through the second channel, stopping writing the subsequent service data to be sent into the cache, and continuing to send the subsequent service data to be transmitted through the second channel.

[0010] With the above design, when the second channel finishes sending the service data in the cache, the subsequent service data to be sent does not need to be cached, thereby reducing the power consumption of the sending device for processing data.

[0011] In a possible design, between the first time point and the second time point, the transmission channels currently corresponding to the data inlet include the first channel and the second channel, and the transmission channel currently corresponding to the data outlet is the first channel; at the second time point and after, the transmission channels currently corresponding to both the data inlet and the data outlet are the second channel.

[0012] With the above design, at the first time point, the service data to be sent can be written into the buffer at a rate greater than the first bandwidth, filling the first channel and the second channel with the service data in the buffer. Further, since the amount of service data filled into the second channel between the first time point and the second time point can be equal to the amount of data sent in the previous cycle on the second channel, the service data can be sent through the second channel at the second time point, thus avoiding the phenomenon that the second channel cannot output data at the data outlet when reaching the second time point, achieving the purpose of aligning the boundaries of the service data sent through the first channel and the second channel, and achieving the purpose of lossless transmission of service data.

[0013] In a second aspect, an embodiment of the present application provides a method for adjusting the bandwidth of FlexE services. The method can be applied to a network device on the receiving side of service data and may include: determining, according to the requirements of the received data, that it is necessary to adjust the current receiving channel from the second channel to the first channel at the second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at the second time point, starting to write the service data that needs to be received through the first channel into the first buffer, and continuing to receive the remaining service data in the second channel; at a third time point after the second time point, starting to receive the service data in the first buffer through the first channel; or, at the second time point, starting to write the service data received through the first channel into the second buffer, and continuing to receive the remaining service data in the second channel; at the third time point, starting to output the service data in the second buffer; where the third time point is equal to or later than the time point when the remaining service data in the second channel is received.

[0014] With the above design, since the duration between the second time point and the third time point is sufficient to receive the remaining service data in the second channel, when starting to receive the service data in the first buffer through the first channel or starting to output the service data in the second buffer at the third time point, the effect of starting to process the service data received through the first channel after processing the service data received through the second channel can be achieved, thus achieving the purpose of keeping the order of the service data received through the first channel and the service data received through the second channel, and avoiding the phenomenon of disordered reception of service data, and further achieving the effect of lossless reception of service data.

[0015] In a possible design, starting to output the service data in the second buffer at the third time point may include: starting to output the service data in the second buffer at a rate greater than the first bandwidth at the third time point.

[0016] With the above design, the service data in the second buffer can be emptied, so that the service data received through the first channel subsequently can no longer be cached, thereby reducing the power consumption of the sending device for data processing.

[0017] In a possible design, starting to receive the service data in the first buffer through the first channel at a third time point after the second time point may include: starting to read the service data in the first buffer at a rate greater than the first bandwidth at the third time point, and filling the read service data into the first channel; receiving the service data filled into the first channel.

[0018] With the above design, the service data in the first buffer can be emptied, so that the service data that needs to be received through the first channel subsequently can no longer be cached, thereby reducing the power consumption of the sending device for data processing.

[0019] In a possible design, after starting to output the service data in the second buffer at the third time point, it may further include: when the service data in the second buffer is completely output, stopping writing the service data received through the first channel subsequently into the second buffer.

[0020] With the above design, the service data received through the first channel subsequently can no longer be cached, thereby reducing the power consumption of the sending device for data processing.

[0021] In a possible design, after starting to receive the service data in the first buffer through the first channel at a third time point after the second time point, it may further include: when the service data in the first buffer is completely received through the first channel, stopping writing the service data that needs to be received through the first channel subsequently into the first buffer, and continuing to receive the service data that needs to be received through the first channel subsequently through the first channel.

[0022] With the above design, the service data that needs to be received through the first channel subsequently can no longer be cached, thereby reducing the power consumption of the sending device for data processing.

[0023] In a possible design, between the second time point and the third time point, the receiving channel currently corresponding to the data inlet is the first channel, and the receiving channels currently corresponding to the data outlet include the first channel and the second channel; at the third time point and after, the receiving channels currently corresponding to both the data inlet and the data outlet are the first channel.

[0024] With the above design, it is possible to avoid simultaneously outputting the service data received by the first channel and the second channel between the second time point and the third time point. Further, since the duration between the second time point and the third time point is sufficient to receive the remaining service data in the second channel, when starting to output the service data in the second buffer at the third time point, it is possible to achieve the effect of starting to process the service data received by the first channel after processing the service data received by the second channel, and there will be no phenomenon of disordered reception of service data. Furthermore, it is possible to achieve the effect of lossless reception of service data.

[0025] In a possible design, between the second time point and the third time point, the receiving channel currently corresponding to the data inlet is the first channel, and the receiving channel currently corresponding to the data outlet is the second channel; at the third time point and after, the receiving channels currently corresponding to both the data inlet and the data outlet are the first channel.

[0026] With the above design, it is possible to avoid simultaneously outputting the service data received by the first channel and the second channel between the second time point and the third time point. Further, since the duration between the second time point and the third time point is sufficient to receive the remaining service data in the second channel, when starting to receive the service data in the first buffer through the first channel at the third time point, it is possible to achieve the effect of starting to process the service data received by the first channel after processing the service data received by the second channel, and there will be no phenomenon of disordered reception of service data. Furthermore, it is possible to achieve the effect of lossless reception of service data.

[0027] In a third aspect, an embodiment of the present application provides a method for adjusting the bandwidth of a FlexE service. The method can be applied to a network device on the service data sending side and may include: determining, according to the requirement of sending data, that it is necessary to adjust the current sending channel from a first channel to a second channel at a second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; starting to fill the second channel with preset format data or idle data at a first time point before the second time point; starting to send the preset format data or the idle data filled in the second channel through the second channel at the second time point; where the amount of the preset format data or the idle data filled in the second channel between the first time point and the second time point is equal to the amount of data sent in one cycle on the second channel; further, starting to send service data through the second channel at a third time point after the second time point; where the duration between the second time point and the third time point is equal to the duration required to send the preset format data or the idle data filled in the second channel.

[0028] With the above design, since the amount of the preset format data or the idle data filled in the second channel between the first time point and the second time point is equal to the amount of data sent in one cycle on the second channel, when the first channel is adjusted to the second channel at the second time point, the second channel can start sending data, and the purpose of aligning the boundary between the data sent by the first channel and the service data sent by the second channel can be achieved. Further, since the duration between the second time point and the third time point can be equal to the duration required to send the preset format data or the idle data filled in the second channel, when starting to send service data through the second channel at the third time point, the complete service data packet will not be cut off, and the phenomenon that part of the data sent by the second channel is lost will not occur, and thus the effect of lossless sending of service data can be achieved.

[0029] In a possible design, before the second time point, the sending channels currently corresponding to the data entry and the data exit are both the first channel; at and after the second time point, the sending channels currently corresponding to the data entry and the data exit are both the second channel.

[0030] With the above design, it is possible to start sending the preset format data or the idle data filled in the second channel through the second channel at the second time point, and the purpose of aligning the boundary between the data sent by the first channel and the service data sent by the second channel can be achieved. Further, when starting to send service data through the second channel at the third time point, the complete service data packet will not be cut off, and the phenomenon that part of the service data sent by the second channel is lost can be avoided, and thus the effect of lossless sending of service data can be achieved.

[0031] In a fourth aspect, an embodiment of the present application provides a method for adjusting the bandwidth of a FlexE service. The method can be applied to a network device located on the service data receiving side and may include: determining, according to the requirements of the received data, that it is necessary to adjust the current receiving channel from a first channel to a second channel at a second time point; where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at the second time point, starting to delete the preset format data or idle data received through the second channel; at a third time point after the second time point, starting to receive service data through the second channel; where the duration between the second time point and the third time point is equal to the duration required to delete all the preset format data or the idle data received through the second channel.

[0032] With the above design, since the duration between the second time point and the third time point is equal to the duration required to delete all the preset format data or the idle data received through the second channel, and the receiving rate of the first channel is relatively higher than that of the second channel, the receiving device can process the service data received through the first channel by the third time point. Therefore, when starting to receive service data through the second channel at the third time point, it can achieve the effect of starting to process the service data received through the second channel after processing the service data received through the first channel, so as to achieve the purpose of keeping the service data received through the first channel and the service data received through the second channel in order, and there will be no phenomenon of out-of-order reception of service data, and further, the effect of lossless reception of service data can be achieved.

[0033] In a possible design, before the second time point, the receiving channels currently corresponding to the data entry and the data exit are both the first channel; at and after the second time point, the receiving channels currently corresponding to the data entry and the data exit are both the second channel.

[0034] With the above design, it is possible to start deleting the preset format data or idle data received through the second channel at the second time point. Further, when starting to receive service data through the second channel at the third time point, it can achieve the purpose of starting to process the service data received through the second channel after processing the service data received through the first channel, and can achieve the effect of keeping the service data received through the first channel and the service data received through the second channel in order, and there will be no phenomenon of out-of-order reception of service data, and further, the effect of lossless reception of service data can be achieved.

[0035] In a fifth aspect, an embodiment of the present application provides a network device, including: a processing unit and a sending unit;

[0036] The processing unit is configured to determine, according to the requirement of sending data, that it is necessary to adjust the current sending channel from the first channel to the second channel at a second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at a first time point before the second time point, start writing service data to be sent into the buffer at a rate greater than the first bandwidth, and fill the service data in the buffer into the first channel and the second channel;

[0037] The sending unit is configured to, between the first time point and the second time point, send the service data filled into the first channel through the first channel; at the second time point, start sending the service data filled into the second channel through the second channel; where the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel.

[0038] In a possible design, the processing unit may further be configured to: when the remaining service data in the buffer is sent through the second channel, stop writing the subsequent service data to be sent into the buffer; the sending unit may further be configured to: continue to send the subsequent service data to be transmitted through the second channel.

[0039] In a possible design, between the first time point and the second time point, the sending channels currently corresponding to the data entry include the first channel and the second channel, and the sending channel currently corresponding to the data exit is the first channel; at the second time point and after, the sending channels currently corresponding to the data entry and the data exit are both the second channel.

[0040] The beneficial effects in the above fifth aspect and its possible designs may refer to the description of the beneficial effects of the method in the above first aspect and any of its possible designs.

[0041] Sixth aspect, an embodiment of the present application provides a network device, including: a processing unit and a receiving unit;

[0042] The processing unit is configured to determine, according to the requirement of receiving data, that it is necessary to adjust the current receiving channel from the second channel to the first channel at a second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at the second time point, start writing the service data to be received through the first channel into the first buffer, or start writing the service data received through the first channel into the second buffer;

[0043] The receiving unit is configured to continue receiving the residual service data in the second channel at the second time point; at a third time point after the second time point, start receiving the service data in the first buffer through the first channel, or start outputting the service data in the second buffer; wherein, the third time point is equal to or later than the time point when the residual service data in the second channel is received completely.

[0044] In a possible design, the receiving unit may specifically be configured to: at the third time point, start outputting the service data in the second buffer at a rate greater than the first bandwidth.

[0045] In a possible design, the processing unit may specifically be configured to: at the third time point, start reading the service data in the first buffer at a rate greater than the first bandwidth and fill the read service data into the first channel; the receiving unit may specifically be configured to: receive the service data filled into the first channel.

[0046] In a possible design, the processing unit may further be configured to: when the receiving unit finishes outputting the service data in the second buffer, stop writing the subsequent service data received through the first channel into the second buffer.

[0047] In a possible design, the processing unit may further be configured to: when the receiving unit finishes receiving the service data in the first buffer through the first channel, stop writing the subsequent service data that needs to be received through the first channel into the first buffer; the receiving unit may further be configured to: continue receiving the subsequent service data that needs to be received through the first channel through the first channel.

[0048] In a possible design, between the second time point and the third time point, the receiving channel currently corresponding to the data entry is the first channel, and the receiving channels currently corresponding to the data exits include the first channel and the second channel; at the third time point and after, the receiving channels currently corresponding to both the data entry and the data exits are the first channel.

[0049] In a possible design, between the second time point and the third time point, the receiving channel currently corresponding to the data entry is the first channel, and the receiving channel currently corresponding to the data exit is the second channel; at the third time point and after, the receiving channels currently corresponding to both the data entry and the data exits are the first channel.

[0050] The beneficial effects in the above sixth aspect and its possible designs may refer to the description of the beneficial effects of the method in the above second aspect and any of its possible designs.

[0051] In a seventh aspect, an embodiment of the present application provides a network device, including: a processing unit and a sending unit;

[0052] The processing unit is configured to determine, according to the requirement of sending data, that it is necessary to adjust the current sending channel from a first channel to a second channel at a second time point, where a first bandwidth of the first channel is greater than a second bandwidth of the second channel; at a first time point before the second time point, start filling the second channel with preset format data or idle data;

[0053] The sending unit is configured to start sending, at the second time point, the preset format data or the idle data filled in the second channel through the second channel; where the amount of the preset format data or the idle data filled in the second channel between the first time point and the second time point is equal to the amount of data sent in one cycle on the second channel; at a third time point after the second time point, start sending service data through the second channel; where the duration between the second time point and the third time point is equal to the duration required to send out the preset format data or the idle data filled in the second channel.

[0054] In a possible design, before the second time point, the sending channels currently corresponding to the data entry and the data exit are both the first channel; at and after the second time point, the sending channels currently corresponding to the data entry and the data exit are both the second channel.

[0055] For the beneficial effects in the above seventh aspect and its possible designs, reference may be made to the description of the beneficial effects of the method in the above third aspect and any of its possible designs.

[0056] In an eighth aspect, an embodiment of the present application provides a network device, including: a processing unit and a receiving unit;

[0057] The processing unit is configured to determine, according to the requirement of receiving data, that it is necessary to adjust the current receiving channel from a first channel to a second channel at a second time point; where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at the second time point, start deleting the preset format data or the idle data received by the receiving unit through the second channel;

[0058] The receiving unit is configured to start receiving service data through the second channel at a third time point after the second time point; where the duration between the second time point and the third time point is equal to the duration required to delete the preset format data or the idle data received through the second channel.

[0059] In a possible design, before the second time point, the receiving channels currently corresponding to the data inlet and the data outlet are both the first channel; at the second time point and after, the receiving channels currently corresponding to the data inlet and the data outlet are both the second channel.

[0060] For the beneficial effects in the eighth aspect and its possible designs above, reference can be made to the description of the beneficial effects of the method in the fourth aspect and any of its possible designs above.

[0061] In a ninth aspect, an embodiment of the present application provides a network device, which includes one or more processors, and one or more memories or non-volatile storage media. The one or more processors are connected to the one or more memories or non-volatile storage media. One or more computer instructions or computer programs are stored in the one or more memories or non-volatile storage media. When the one or more processors execute the one or more computer instructions or computer programs, the network device is enabled to execute the methods involved in the first aspect to the fourth aspect above.

[0062] In a tenth aspect, an embodiment of the present application provides a chip, including: at least one processor and an interface. The interface can be a code / data read-write interface, and the interface is used to provide computer instructions (the computer instructions are stored in a memory, and may be directly read from the memory, or may pass through other devices) to the at least one processor; the at least one processor is used to execute the computer instructions to implement the method involved in any one of the first aspect to the fourth aspect above.

[0063] In an eleventh aspect, an embodiment of the present application provides a computer-readable storage medium or non-volatile storage medium, in which computer instructions or computer programs are stored. When the computer instructions or computer programs are called by a computer, the computer is enabled to execute the method described in any one of the first aspect to the fourth aspect above, or when the computer instructions or computer programs are run on one or more processors, the network device including the one or more processors is enabled to execute the method described in any one of the first aspect to the fourth aspect above.

[0064] In a twelfth aspect, an embodiment of the present application provides a computer program product, which is used to store a computer program. When the computer program runs on a computer, the computer is enabled to execute the method described in any one of the first aspect to the fourth aspect above.

[0065] In a thirteenth aspect, an embodiment of the present application provides a network system, which includes two network devices. One network device (located on the side of sending service data) is used to execute the steps performed by this network device in the above first aspect or third aspect, or in the solution provided by the embodiment of the present application. The other network device (located on the side of receiving service data) is used to execute the steps performed by this network device in the above second aspect or fourth aspect, or in the solution provided by the embodiment of the present application. Description of the Drawings

[0066] Figure 1 FIG. is a schematic diagram of an existing communication system based on the Flexible Ethernet protocol;

[0067] Figure 2 FIG. is a schematic diagram of data transmission through the binding function of FlexE in the prior art;

[0068] Figure 3 FIG. is a schematic diagram of data transmission through the sub-rate function of FlexE in the prior art;

[0069] Figure 4 FIG. is a schematic diagram of data transmission through the channelization function of FlexE in the prior art;

[0070] Figure 5 FIG. is a schematic diagram of the data sending process on the sending device side in the prior art;

[0071] Figure 6 FIG. is a schematic diagram of the data receiving process on the receiving device side in the prior art;

[0072] Figure 7 FIG. is a schematic diagram of the process of a bandwidth adjustment method based on FlexE services provided by an embodiment of the present application;

[0073] Figure 8 FIG. is a schematic diagram of the bandwidth sizes of a first channel and a second channel provided by an embodiment of the present application;

[0074] Figure 9 FIG. is a schematic diagram of the process of adjusting the bandwidth on the sending device side provided by an embodiment of the present application;

[0075] Figure 10 FIG. is a schematic diagram of the data sending process on the sending device side applicable to an embodiment of the present application;

[0076] Figure 11 FIG. is a schematic diagram of the process of adjusting the bandwidth on the sending device side provided by an embodiment of the present application;

[0077] Figure 12 FIG. is a schematic diagram of the process of a bandwidth adjustment method based on FlexE services provided by an embodiment of the present application;

[0078] Figure 13 Schematic diagram of a process for adjusting the bandwidth on the receiving device side provided by an embodiment of this application;

[0079] Figure 14 Schematic diagram of a process for adjusting the bandwidth on the receiving device side provided by an embodiment of this application;

[0080] Figure 15 Schematic diagram of a data receiving process on the receiving device side applicable to an embodiment of this application;

[0081] Figure 16 Schematic diagram of a data receiving process on the receiving device side applicable to an embodiment of this application;

[0082] Figure 17 Schematic diagram of a process for adjusting the bandwidth on the receiving device side provided by an embodiment of this application;

[0083] Figure 18 Schematic diagram of a process for adjusting the bandwidth on the receiving device side provided by an embodiment of this application;

[0084] Figure 19 Schematic diagram of a process for a bandwidth adjustment method based on FlexE service provided by an embodiment of this application;

[0085] Figure 20 Schematic diagram of a process for adjusting the bandwidth on the sending device side provided by an embodiment of this application;

[0086] Figure 21 Schematic diagram of a process for a bandwidth adjustment method based on FlexE service provided by an embodiment of this application;

[0087] Figure 22 Schematic diagram of a process for adjusting the bandwidth on the receiving device side provided by an embodiment of this application;

[0088] Figure 23 Schematic diagram of the structure of a network device provided by an embodiment of this application;

[0089] Figure 24 Schematic diagram of the structure of a network device provided by an embodiment of this application;

[0090] Figure 25 Schematic diagram of the structure of a network device provided by an embodiment of this application;

[0091] Figure 26 Schematic diagram of the structure of a network device provided by an embodiment of this application;

[0092] Figure 27 Schematic diagram of the structure of a network device provided by an embodiment of this application. Detailed implementation manners

[0093] To make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings.

[0094] Before introducing the technical solutions provided by the embodiments of the present application below, first, Figures 1 to 4 an exemplary introduction to the data transmission principle in an existing FlexE group will be given, so that those skilled in the art can easily understand the technical solutions provided by the embodiments of the present application.

[0095] As Figure 1 shown, it is a schematic diagram of an existing communication system based on the Flexible Ethernet protocol. Among them, a FlexE group can include one or more physical link interfaces (which can be written as PHY in English). Figure 1 Taking FlexE Group including 4 PHYs as an example. The Flexible Ethernet protocol client (FlexE Client) represents the client data stream transmitted on the specified transmission channel (one transmission channel or multiple transmission channels) on the FlexE Group. Multiple FlexE Clients can be carried on one FlexE Group. One FlexE Client corresponds to one user service data stream (which can be called MAC Client). The Flexible Ethernet protocol function layer (FlexE Shim) provides data adaptation and conversion from FlexE Client to MAC Client.

[0096] Among them, FlexE binds multiple 100GE PHYs interfaces and divides each 100GE port into 20 transmission channels with a granularity of 5G bandwidth in the time domain. FlexE can support the following functions:

[0097] A. Binding function.

[0098] As Figure 2 shown, FlexE can support MAC services with a rate greater than that of a single PHY by binding multiple PHYs into a link group. For example, taking FlexE Client a transmitting 200G service as an example, since the rate of this service is greater than that of a single PHY and a single PHY cannot meet the transmission of 200G service, FlexE can bind PHY a and PHY b into a 200G link group to support FlexE Client a to transmit 200G service.

[0099] B. Sub-rate function.

[0100] As Figure 3As shown, FlexE can support MAC services with rates less than the link group bandwidth or less than the rate of a single PHY by allocating transmission channels for services. For example, taking the transmission of a 75G service by FlexE Client a as an example, since the rate of the 75G service is less than the rate of a single PHY, using a part of the transmission channels of a single PHY can meet the transmission of the 75G service. FlexE can allocate a part of the transmission channels of a certain PHY for FlexE Client a to support the transmission of the 75G service by FlexE Client a, and use the remaining transmission channels not occupied by the 75G service as idle transmission channels.

[0101] C. Channelization function.

[0102] As Figure 4 shown, FlexE can support the simultaneous transmission of multiple MAC services in a link group by allocating transmission channels for services. For example, in a link group composed of two PHYs, it can support the simultaneous transmission of a 125G MAC service and a 75G MAC service. For example, taking the transmission of a 75G service by FlexE Client a and the transmission of a 125G service by FlexE Client b as an example, since the rate of the service transmitted by FlexE Client a is less than the rate of a single PHY, and the rate of the service transmitted by FlexE Client b is greater than the rate of a single PHY, using a part of the transmission channels of a single PHY can meet the transmission of the 75G service, using a single PHY cannot meet the transmission of the 125G service, using two PHYs can meet the transmission of the 125G service, but there will be some remaining transmission channels not used. To improve the utilization rate of the transmission channels of the PHY, FlexE can allocate different proportions of the transmission channels in the link group for FlexE Client a and FlexE Client b to support the transmission of services by FlexE Client a and FlexE Client b.

[0103] The following will combine Figure 5 and Figure 6 to introduce the process of data transmission of the existing FelxE in detail.

[0104] Figure 5 Exemplarily shows a schematic diagram of the data transmission process on the sending device side. As Figure 5 shown, in a FlexE group composed of N PHYs on the sending device side, it can include one or more FlexE Clients. For example, Figure 5The shown FlexE Client#1, FlexE Client#2 to FlexE Client#M. The data corresponding to each FlexE Client will be processed, such as performing 64B / 66B encoding (encode) processing and sending it to the FlexE Shim. For example, the data corresponding to FlexE Client#1 is subjected to 64B / 66B encoding processing and sent to the FlexE Shim. Among them, Figure 5 It is illustrated by taking the encoding method of 64B / 66B encoding as an example. Those skilled in the art will know that other encoding forms can also be applicable.

[0105] Since in FlexE, there may be a deviation in the clock frequency between the client clock domain and the FlexE clock domain, and at the same time, due to the overhead (OH) inserted on the FlexE interface and the alignment marker (AM) requiring a certain bandwidth overhead, where AM refers to the code block used for alignment operations, therefore, rate adaptation between the FlexE Client and the FlexE Group can be achieved through IDLE insert / delete. For example, the encoded code block stream of FlexE Client#1 can be used to achieve rate adaptation between FlexE Client#1 and the FlexE Group by inserting / deleting IDLE code blocks. Optionally, rate adaptation can also be performed through other code blocks, such as achieving rate adaptation between the FlexE Client and the FlexE Group by deleting the ordered set block, etc. Figure 5 Only the insertion / delete of IDLE code blocks is used as an example for illustrative description.

[0106] Furthermore, through mapping (Calendar), the code block stream after IDLE code block insertion / deletion corresponding to each FlexE Client can be distributed to the transmission channels corresponding to each FlexE Client. For example, the FlexE shim adopts an N-way 100GE rate and, using time-division multiplexing, schedules the service data sent by multiple FlexE Clients with different transmission rates at the MAC layer according to the 5G transmission channels and distributes it into N-way FlexE instance frames with a transmission rate of 100G, such as Figure 5 the shown FlexE#1 instance, FlexE#2 instance to FlexE#N instance.

[0107] According to the predefined frame format, perform the operation of inserting OH (Overhead Insertion) in the 64B / 66B code block stream transmitted on 20 transmission channels corresponding to each PHY, and distribute the code block stream with inserted overhead to each PHY for transmission according to the correspondence between the transmission channels and each PHY. Among them, the sub-mapping table (Sub-calendar) of each PHY can represent the allocation relationship of the 20 transmission channels of each PHY. Among them, each PHY can correspond to a FlexE instance frame with a transmission rate of 100G. After each code block stream is mapped to each PHY, it goes from the sublayers defined by FlexE (FlexE defined sublayers) to the physical layer interface, such as Figure 5 the sublayers defined by 802.3 (802.3 defined sublayers) shown. The sublayers defined by 802.3 can also be understood as part of the standard physical layer defined by 802.3. Optionally, the 802.3 defined sublayers have multiple functions. For example, according to the 802.3 standard, it has a scrambling function; optionally, it can also include lane distribution, alignment code block insertion (AM insertion), physical medium attachment (PMA), physical medium dependent (PMD), etc. functions to perform corresponding processing on the received data.

[0108] Among them, during the process of sending data on the sending device side, FlexE can provide a transmission channel adjustment (reconfiguration) mechanism for each FlexE Client, realizing the dynamic adjustment of the transmission channels carrying the service data of each FlexE Client. Specifically, taking FlexE Client#1 as an example, the sub-mapping table (Sub-calendar) of the PHY corresponding to FlexE Client#1 can represent the allocation relationship between the 20 transmission channels of this PHY and FlexE Client#1. In the FlexEGroup, the sub-mapping table (Sub-calendar) of this PHY can have two sub-mapping tables, such as sub-mapping table A (Sub-calendar A, represented by 0 bit) and sub-mapping table B (Sub-calendar B, represented by 1 bit). Among them, sub-mapping B is used as a standby mapping table. The switching between the two mapping tables can be realized through the request / acknowledge mechanism embedded in the overhead management channel. During the process of switching from sub-mapping table A to sub-mapping table B, the number of transmission channels of FlexE Client#1 in sub-mapping table A is increased or decreased, which is used to change the size of the transmission channel capacity of FlexE Client#1 in FlexE, achieving the effect of dynamically adjusting the transmission channels carrying the service data of FlexE Client#1. Further, the effect of dynamically adjusting the bandwidth can be achieved.

[0109] Figure 6 An exemplary schematic diagram of the data reception process on the receiving device side is shown, such as Figure 6 As shown, the data on the sending device side is sent to the receiving device side through a standard physical interface. The 802.3 defined sublayers on the receiving device side perform a series of processing on the data received through each PHY, such as the physical medium dependent (PMD), physical medium attachment (PMA), physical coding sublayer (PCS), lane deskew, and alignment code block removal (AM removal) and descrambling (Descramble), etc.

[0110] Further, the data stream corresponding to each PHY is locked for overhead after descrambling, and the operation of extracting overhead is performed after the overhead is locked. After the data streams corresponding to each PHY perform the operation of overhead extraction, they can be sent to the calendar according to the corresponding relationship between each PHY and the transmission channel. In the calendar, the code block streams corresponding to each FlexE Client can be restored according to the allocation relationship between each FlexE Client and the transmission channel. Among them, the sub-calendar of each PHY can represent the allocation relationship of 20 transmission channels of each PHY, and each PHY can correspond to a FlexE instance frame with a transmission rate of 100G, such as Figure 6 shown, FlexE#1 instance, FlexE#2 instance to FlexE#N instance respectively correspond to a PHY, and the transmission rate is 100G. Specifically, these N FlexE instance frames can be obtained by the FlexE shim using a 100GE rate and multiplexing in time division to schedule and distribute multiple FlexE Clients (service data) with different transmission rates in the MAC layer according to 5G transmission channels.

[0111] Further, since there is a clock frequency deviation between the client clock domain and the FlexE clock domain in FlexE, and at the same time, inserting OH and AM on the FlexE interface requires a certain bandwidth overhead, rate adaptation between the FlexE Client and the FlexE Group can be achieved through idle code block insertion / delete. For example, the code block stream corresponding to FlexE Client#1 restored by the calendar can be adapted to the rate of FlexE Client#1 and the FlexE Group through idle code block insertion / delete. Optionally, rate adaptation can also be performed through other code blocks, such as achieving rate adaptation between the FlexE Client and the FlexE Group by deleting ordered set blocks, etc., Figure 6 only the insertion / delete of IDLE code blocks is used as an example for illustrative purposes.

[0112] The code block streams corresponding to each FlexE Client restored by the Calendar can be sequentially processed for idle code block insertion / removal and decoding, and then sent to each FlexE Client. For example, the code block stream corresponding to FlexE Client #1 restored by the Calendar can be sequentially processed through insertion / removal of idle code blocks and 64B / 66B decoding, and then sent to FlexE Client #1. Figure 6 Taking 64B / 66B decoding as an example of the decoding method, those skilled in the art will know that other coding forms can also be applicable.

[0113] Among them, during the process of receiving data on the receiving device side, FlexE can provide a transmission channel adjustment (reconfiguration) mechanism corresponding to each FlexE Client to achieve dynamic adjustment of the transmission channels carrying the service data of each FlexE Client. For the specific process, reference can be made to the above process of realizing dynamic adjustment of the transmission channels carrying the service data of each FlexE Client on the sending device side, which will not be elaborated here.

[0114] As can be seen from the foregoing content, FlexE can adjust the bandwidth of the transmission channels carrying each service to meet the different bandwidth requirements of each service. However, when FlexE switches from a large transmission channel to a small transmission channel, or from a small transmission channel to a large transmission channel, the paths of these two transmission channels are directly switched at the switching boundary point, which is likely to cause the phenomenon of partial loss of service data on the sending device side, or the phenomenon of out-of-order reception of service data on the receiving device side. For example:

[0115] Example 1, in the scenario where FlexE adjusts a large transmission channel to a small transmission channel, taking a certain FlexE Client (hereinafter referred to as the first FlexE Client) whose bandwidth requirement changes as an example, assuming that the bandwidth of the large transmission channel currently transmitting the service data of the first FlexE Client is 5G, and the bandwidth of the small transmission channel is 1G. When the transmission rate of the first FlexE Client needs to be switched from 5G to 1G, FlexE can divide each large transmission channel that will subsequently transmit the service data of the first FlexE Client into 5 small transmission channels with a granularity of 1G. Then, when reaching the switching boundary point, the large transmission channel currently transmitting the service data of the first FlexE Client is adjusted to a small transmission channel, and the service data of the first FlexE Client is transmitted through each small transmission channel. However, since the transmission rate of the large transmission channel is relatively large compared to that of the small transmission channel, in such Figure 5On the transmitting device side as shown, when reaching the handover boundary point, it is easy for the large transmission channel to have completed the transmission of service data while the small transmission channel has not yet started transmitting service data. This causes the boundaries of the service data transmitted by the large transmission channel and the service data transmitted by the small transmission channel to be misaligned, resulting in the FlexE instance frames corresponding to the first FlexE Client being discontinuous and some of the service data transmitted by the second channel being lost, causing loss of the service data of the first FlexE Client. As in Figure 6 On the receiving device side as shown, after reaching the handover boundary point, it is possible to start processing the service data received through the small transmission channel after finishing processing the service data received through the large transmission channel, achieving the purpose of the service data received through the large transmission channel and the small transmission channel being sequential (i.e., the service data is in order), so that the service data of the first FlexE Client can be lossless.

[0116] Example 2, in the scenario where FlexE adjusts the small transmission channel to a large transmission channel, taking the bandwidth of the small transmission channel currently transmitting the service data of the first FlexE Client as 1G as an example, if the bandwidth of the large transmission channel is 5G, when the transmission rate of the first FlexE Client needs to be switched from 1G to 5G, FlexE can form each large transmission channel with a granularity of 5G from each small transmission channel that needs to transmit the service data of the first FlexE Client in the future. Then, when reaching the handover boundary point, the small transmission channel currently transmitting the service data of the first FlexE Client is adjusted to a large transmission channel, and the service data of the first FlexE Client is transmitted through each large transmission channel. Since the transmission rate of the small transmission channel is relatively small compared to that of the large transmission channel, as in Figure 5 On the transmitting device side as shown, when reaching the handover boundary point, the small transmission channel can complete the transmission of service data and start transmitting service data through the large transmission channel. The boundaries of the service data transmitted by the large transmission channel and the service data transmitted by the small transmission channel can be aligned, and the problem of the discontinuous FlexE instance frames corresponding to the first FlexE Client existing on the transmitting device side in Example 1 will not occur. As in Figure 6 On the receiving device side as shown, when reaching the handover boundary point, the receiving device has not finished processing the service data received through the small transmission channel but has already started processing the service data received through the large transmission channel, resulting in the simultaneous output of the service data received through the small transmission channel and the large transmission channel for a period of time after switching the transmission channel, causing the FlexE instance frames corresponding to the first FlexE Client to be out of order, resulting in the service data being out of order (i.e., the service data is not in order) and the content being scrambled, causing errors in the service data of the first FlexE Client.

[0117] Taking the large transmission channel as the first channel, the small transmission channel as the second channel, the transmission channel on the sending device side as the sending channel, and the transmission channel on the receiving device side as the receiving channel as an example, the technical solutions provided by each embodiment of the present application will be specifically introduced.

[0118] In the first embodiment of the present application, in order to solve the problem that some service data is easily lost when the first channel is adjusted to the second channel on the sending device side (the network device that sends service data) in Example 1, the sending device can start writing the service data to be sent into the buffer at the first time point before reaching the switching boundary point (hereinafter referred to as the second time point) at a rate greater than the first bandwidth of the first channel, and fill the service data in the buffer into the first channel and the second channel. Optionally, the service data in the buffer can be filled into the first channel and the second channel in parallel. Further, between the first time point and the second time point, the service data filled into the first channel is sent through the first channel, and at the second time point, the service data filled into the second channel is started to be sent through the second channel. Among them, the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in one cycle on the second channel.

[0119] In the above first embodiment, by writing the service data to be sent into the buffer at the first time point before the second time point, the amount of service data filled into the second channel between the first time point and the second time point can be equal to the amount of data sent in one cycle on the second channel, so that when the first channel is adjusted to the second channel at the second time point, the second channel can start sending service data, and the purpose of aligning the boundaries of the service data sent by the first channel and the service data sent by the second channel can be achieved, and the phenomenon that some service data sent by the second channel is lost will not occur, and thus the effect of lossless transmission of service data can be achieved.

[0120] In the second embodiment of the present application, in order to solve the problem that service data is easily out of order when the receiving device side (the network device that receives service data) switches from the second channel to the first channel in Example 2, the receiving device can start writing the service data to be received through the first channel into the first buffer when reaching the second time point, and continue to receive the remaining service data in the second channel. Further, at the third time point after the second time point, the service data in the first buffer can be started to be received through the first channel. Or, the receiving device can start writing the service data received through the first channel into the second buffer when reaching the second time point, and continue to receive the remaining service data in the second channel. Further, when reaching the third time point, the service data in the second buffer is started to be output. Among them, the third time point is equal to or later than (that is, not earlier than) the time point when the remaining service data in the second channel is received.

[0121] In the second embodiment above, starting from the second time point, the service data to be received through the first channel is written into the first buffer, or the service data received through the first channel is written into the second buffer. The remaining data in the second channel is continuously processed, and at the third time point after the second time point, the service data in the first buffer is started to be received through the first channel, or the service data in the second buffer is started to be output. Since the duration between the second time point and the third time point is sufficient to receive the remaining service data in the second channel, the effect of starting to process the service data received through the first channel after processing the service data received through the second channel can be achieved. Thus, the purpose of ensuring the order of the service data received through the first channel and the service data received through the second channel can be achieved, and the phenomenon of disordered reception of service data will not occur. Furthermore, the effect of lossless reception of service data can be achieved.

[0122] In the third embodiment of the present application, to solve the problem that some service data is easily lost when the sending device changes from the first channel to the second channel at the sending device side in Example 1, at the sending device side, the sending device can start filling the second channel with preset format data or idle data at the first time point before reaching the second time point. Further, when reaching the second time point, the sending device can start sending the preset format data or idle data filled into the second channel through the second channel. Further, when reaching the third time point, the sending device can start sending service data through the second channel. Among them, the amount of the preset format data or idle data filled into the second channel between the first time point and the second time point can be equal to the amount of data sent on the second channel in the previous cycle, and the duration between the second time point and the third time point can be equal to the duration required to send the preset format data or idle data filled into the second channel.

[0123] Correspondingly, at the receiving device side, since the beginning of the data sent by the sending device through the second channel is composed of preset format data or idle data, when the receiving device reaches the second time point and adjusts the current receiving channel from the first channel to the second channel, the receiving device can start deleting the preset format data or idle data received through the second channel. Further, the receiving device can start receiving service data through the second channel when reaching the third time point. Among them, the duration between the second time point and the third time point can be equal to the duration required to send the preset format data or idle data filled into the second channel.

[0124] In the third embodiment of the present application, the sending device starts filling the second channel with preset format data or idle data at the first time point. Since the amount of preset format data or idle data filled into the second channel between the first time point and the second time point is equal to the amount of data sent on the second channel in the previous cycle, when the first channel is adjusted to the second channel at the second time point, the second channel can start sending data, achieving the purpose of aligning the data boundaries of the service data sent on the first channel and the data sent on the second channel. Further, since the duration between the second time point and the third time point can be equal to the duration required to send the preset format data or idle data filled into the second channel, when starting to send service data through the second channel at the third time point, it will not cause a complete service data packet to be cut off, and there will be no phenomenon of partial service data loss in the data sent by the second channel. Thus, the effect of lossless service data transmission can be achieved.

[0125] In the third embodiment of the present application, when the receiving device adjusts the current receiving channel from the first channel to the second channel at the second time point, it deletes the preset format data or idle data received through the second channel and starts receiving the service data through the second channel at the third time point. Since the duration between the second time point and the third time point is equal to the duration required to delete the preset format data or idle data received through the second channel, and the receiving rate of the first channel is relatively higher than that of the second channel, the receiving device can process the service data received through the first channel by the third time point. Therefore, when starting to receive service data through the second channel at the third time point, it can achieve the effect of starting to process the service data received through the second channel after processing the service data received through the first channel, thereby achieving the purpose of maintaining the order of the service data received through the first channel and the service data received through the second channel, and there will be no phenomenon of disordered received service data. Thus, the effect of lossless service data reception can be achieved.

[0126] It should be noted that in the specific implementation process, the above-mentioned first to third embodiments can be used in combination, and the present application does not limit this.

[0127] It should be noted that, in addition to the above-mentioned First Embodiment to Third Embodiment, the present application can also adopt other methods to solve the problems existing in the above-mentioned Example 1 and Example 2. For example, in some other embodiments, in order to solve the problem that when the sending device side adjusts from the first channel to the second channel in Example 1, it is easy to lose some service data, the sending device can uniformly send service data through the second channel. It can be understood that the sending device sends service data through the second channel from beginning to end without adjusting the sending channel, so as to avoid the phenomenon that when the sending device side adjusts from the first channel to the second channel, it is easy to lose some service data, and further achieve the effect of lossless sending of service data. Correspondingly, in order to solve the problem that when the receiving device side adjusts from the second channel to the first channel in Example 2, it is easy to have out-of-order service data, the receiving device side can uniformly receive service data through the second channel. It can be understood that the receiving device receives service data through the second channel from beginning to end without adjusting the receiving channel, so as to avoid the phenomenon that when the receiving device side adjusts from the second channel to the first channel, it is easy to have out-of-order service data, and further achieve the effect of lossless receiving of service data.

[0128] Before introducing the embodiments of the present application, some terms in the present application are first explained to facilitate the understanding of those skilled in the art.

[0129] In the embodiments of the present application, the switching boundary point (the second time point), on the sending device side, refers to the time point corresponding to the next OH frame header after the sending device sends a c bit (a field segment in the OH frame) to the receiving device side when FlexE decides to adjust the sending channel. On the receiving device side, it refers to the time point corresponding to the next OH frame header after the receiving device receives the c bit sent by the sending device side when FlexE decides to adjust the receiving channel.

[0130] In the embodiments of the present application, a period can refer to a time period composed of multiple time slots obtained by FlexE dividing 100G PHY in the time domain with different bandwidths as granularities through the TDM method. For example, when FlexE divides 100G PHY in the time domain with a 1G bandwidth as the granularity to obtain 100 time slots, these 100 time slots can form a period. Among them, when the second bandwidth of the second channel is 1G, the amount of data sent in one period on the second channel can be understood as the amount of data sent through 100 time slots on the second channel. Or, when FlexE divides 100G PHY in the time domain with a 5G bandwidth as the granularity to obtain 20 time slots, these 20 time slots can form a period. Among them, when the first bandwidth of the first channel is 5G, the amount of data received in one period on the first channel can be understood as the amount of data received through 20 time slots on the first channel.

[0131] The term "a plurality of" in the embodiments of the present application means two or more. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. Singular forms of expression such as "a", "a kind of", "the", "the above-mentioned", "this" and "this one" are also intended to include expressions such as "one or more", unless there is a clear indication to the contrary in the context. Also, unless otherwise stated, the ordinal numbers such as "first", "second", etc. mentioned in the embodiments of the present application are used to distinguish multiple objects, and are not used to limit the order, time sequence, priority or importance of multiple objects. For example, the first channel and the second channel are only used to distinguish different transmission channels, rather than indicating differences in the priority or importance of these two transmission channels, etc.

[0132] Referring to "one embodiment" or "some embodiments" described in the embodiments of the present application means that in one or more embodiments of the present application, specific features, structures or characteristics described in connection with that embodiment are included. Thus, the terms "including", "comprising", "having" and their variants that appear in different places in this specification all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0133] In addition, it should be understood that in the embodiments of the present application, the example is to adjust the bandwidth size of the transmission channel for transmitting the service data of a single FlexE Client. When the bandwidth size of the transmission channels for transmitting the service data of multiple FlexE Clients needs to be adjusted, the same method as that for adjusting the bandwidth size of the transmission channel for transmitting the service data of a single FlexE Client can be adopted. Among them, the bandwidth sizes of the transmission channels for transmitting the service data of multiple FlexE Clients can be adjusted simultaneously, or the bandwidth sizes of the transmission channels for transmitting the service data of multiple FlexE Clients can be adjusted in a corresponding order. The embodiments of the present application do not limit this.

[0134] Next, it will be combined with Figures 7 - 10 Specifically introduce the process of adjusting the bandwidth on the sending device side in the first embodiment of the present application.

[0135] Please refer to Figure 7 As shown, it is a schematic flowchart of a method for adjusting the bandwidth of a FlexE service provided by an embodiment of the present application. Among them, Figure 7 Taking the execution entity as the sending device as an example. As Figure 7 shown, the method may include the following steps:

[0136] S101. According to the requirement of the transmitted data, it is determined that the current transmission channel needs to be adjusted from the first channel to the second channel at the second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel.

[0137] As an example, when the first channel is a 5G channel and the second channel is a 1G channel, the schematic diagrams of the first channel and the second channel can be as Figure 8 shown, and the size of the first bandwidth can be 5 times the size of the second bandwidth.

[0138] In the specific implementation process, when the requirements of each FlexE Client for the sending cost change, the requirements for the data to be sent may also change. For example, if the first FlexE Client needs to reduce the sending cost, it will reduce the bandwidth of the service data to be sent. In other words, the sending device can reduce the sending cost of the service data by reducing the bandwidth of the service data to be sent.

[0139] In the first embodiment, when the requirement of the first FlexE Client for the data to be sent decreases, the sending device can determine, according to the requirement of the first FlexE Client for the data to be sent, that it is necessary to adjust the current sending channel from the first channel to the second channel at a future second time point.

[0140] S102: At a first time point before the second time point, start writing the service data to be sent into the buffer at a rate greater than the first bandwidth, and fill the service data in the buffer into the first channel and the second channel.

[0141] In the first embodiment, when the sending device determines that it is necessary to adjust the current sending channel from the first channel to the second channel at a future second time point, the sending device can start writing the service data to be sent into the buffer at a rate greater than the first bandwidth at the first time point. For example, when the first bandwidth is 5G, the sending device can write the service data to be sent into the buffer at a rate greater than 5G. Exemplarily, please refer to Figure 9 shown, the sending device sends service data through the first channel before the first time point t 0 , and when reaching the first time point t 0 , start writing the service data to be sent into the buffer at a rate greater than the first bandwidth. For example, please refer to Figure 10 shown, the sending device can write the service data to be sent into the buffer set on the data entry side of the FlexE shim. Among them, Figure 10 For the rest of the data sending process shown except for caching the service data to be sent through the first channel in the buffer, reference can be made to the relevant description of the data sending process shown in Figure 5 above, and details will not be described here again.

[0142] In a specific implementation process, between the first time point and the second time point, the sending device can fill the service data in the buffer into the first channel and the second channel. Specifically, the sending device can fill the service data in the buffer into the first channel and the second channel in parallel.

[0143] In the first embodiment, since the rate of writing into the buffer is greater than the first bandwidth, between the first time point and the second time point, the service data in the buffer can achieve the effect of being filled into the first channel and the second channel in parallel, which is convenient for the second channel to start sending service data when reaching the second time point. Exemplarily, please refer to Figure 9 As shown, since the rate of writing into the buffer is greater than the first bandwidth, the sending device can fill the service data in the buffer into the first channel and the second channel in parallel. For example, between the first time point t 0 and the second time point t 1 , the sending device can Figure 9 fill the service data in the white area of the buffer shown into the first channel and fill the service data in the gray area into the second channel in parallel.

[0144] S103. Between the first time point and the second time point, send the service data filled into the first channel through the first channel.

[0145] In the first embodiment, the sending device can send the service data filled into the first channel through the first channel between the first time point and the second time point, and can keep the state of sending service data through the first channel unchanged, that is, the service data stream can be kept continuous.

[0146] S104. At the second time point, start to send the service data filled into the second channel through the second channel; wherein, the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel.

[0147] In the first embodiment, since the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel, that is to say, before reaching the second time point or when reaching the second time point, the amount of service data filled into the second channel can reach the amount of data sent in the previous cycle on the second channel. Therefore, when reaching the second time point, the sending device can send the service data filled into the second channel through the second channel. At this time, the sending device has sent the service data filled into the first channel through the first channel.

[0148] Exemplarily, when the first channel is a 5G sending channel and the second channel is a 1G sending channel, as Figure 9 shown, at the first time point t 0to the second time point t 1 The amount of service data filled into the second channel between them can be equal to the amount of data sent in the previous cycle on the second channel, so that the sending device can start sending the service data filled into the second channel through the second channel when reaching the second time point t 1

[0149] In the first embodiment, by writing the service data to be sent in advance into the cache at the first time point before the second time point, the service data in the cache can satisfy that the service data filled into the second channel is equal to the amount of data sent in the previous cycle on the second channel. When the first channel is adjusted to the second channel at the second time point, the second channel can start sending the service data filled into the second channel, which can achieve the purpose of aligning the boundaries of the service data sent by the first channel and the service data sent by the second channel, and can avoid the phenomenon that some data sent by the second channel is lost. Furthermore, the effect of lossless transmission of service data can be achieved.

[0150] In the first embodiment, when the remaining service data in the cache is sent through the second channel, the sending device can stop writing the subsequent service data to be sent into the cache and continue to send the subsequent service data to be transmitted through the second channel. As Figure 9 shown, when the third time point when the service data in the cache is sent through the second channel is t 2 when, after t 2 it can continue to send the subsequent service data to be sent through the second channel. In other words, the subsequent service data to be sent is no longer written into the cache. For example, as shown in combination with Figure 9 and Figure 10 shown, after t 2 the subsequent service data to be sent is no longer written into the buffer for caching.

[0151] It should be noted that when reaching t 1 since there may still be a little remaining service data (1 or 2 service data) in the buffer that has not been sent, in order to be able to send the service data cached in the buffer, that is, to empty the service data cached in the buffer, between t 1 and t 2 the sending device can stop writing the subsequent service data to be sent into the buffer for caching, continue to read the remaining service data in the buffer, and fill the read service data into the second channel.

[0152] ​In the first embodiment of the present application, when the service data in the cache is sent through the second channel, writing the subsequent service data to be sent into the cache is stopped, and the subsequent service data to be transmitted is continuously sent through the second channel. That is, the subsequent service data to be sent is no longer cached, which can reduce the power consumption of the sending device for data processing.

[0153] In a specific implementation process, the FlexE shim of the sending device has two side ports. For example, one side port is a data entry port, and the other side port is a data exit port. Data is transmitted between the two side ports through a sending channel. Since it takes a certain amount of time for the amount of service data filled into the second channel to be equal to the amount of data sent in a previous cycle on the second channel, and the smaller the bandwidth of the sending channel, the longer this time is. Therefore, when the sending channel currently corresponding to the data exit port is adjusted from the first channel to the second channel at the second time point, the first channel has completed the sending of service data, while the amount of service data filled into the second channel is still less than the amount of data sent in a previous cycle on the second channel, and the service data cannot be sent through the second channel. That is, when reaching the second time point, the second channel cannot send service data at the data exit, resulting in misalignment of the boundaries of the service data sent by the first channel and the service data sent by the second channel, and thus there is a phenomenon of losing some service data sent by the second channel.

[0154] In the first embodiment, in order to avoid the phenomenon that the second channel cannot send service data at the data exit when reaching the second time point, the sending device can adopt corresponding methods to adjust the sending channels currently corresponding to the data entry and the data exit at different time points.

[0155] The following will combine Figures 7 - 11 to introduce in detail the process of bandwidth adjustment on the sending device side in the first embodiment of the present application.

[0156] Please refer to Figure 11 As shown, before the first time point t 0 , the sending channels currently corresponding to the data entry and the data exit are both the first channel. That is, before t 0 , the sending device sends service data through the first channel.

[0157] When reaching t 0 , the sending device starts to write the service data to be sent into the buffer at a rate greater than the first bandwidth and reads the service data from the buffer to fill the first channel and the second channel. That is, when reaching t 0 , the sending device adds the second channel at the data entry. In other words, the sending channels currently corresponding to the data entry include the first channel and the second channel, and the sending channel currently corresponding to the data exit is the first channel. That is, when reaching t 0When, the sending device sends the service data filled in the first channel through the first channel, and can keep the state of sending service data through the first channel unchanged until reaching the second time point t 1 When it stops sending service data through the first channel.

[0158] When reaching the second time point t 1 , when the sending device adjusts the sending channel currently corresponding to the data outlet from the first channel to the second channel, since the amount of service data filled in the second channel is equal to the amount of data sent in the previous cycle on the second channel, it can start sending the service data filled in the second channel through the second channel. At this time, the sending device has completed the sending of the service data filled in the first channel through the first channel, and the sending device can no longer fill the service data to be sent into the first channel, that is, at the second time point t 1 , the sending channels currently corresponding to the data inlet and the data outlet are both the second channel, and the sending device can send the service data filled in the second channel through the second channel. Optionally, between t 0 and t 1 , when the amount of service data filled in the second channel is equal to the amount of data sent in the previous cycle on the second channel, the sending device can stop writing the service data to be sent into the buffer at a rate greater than the first bandwidth, and resume writing the service data to be sent into the buffer at the rate of the first bandwidth. When reaching t 1 , since there may still be a little service data remaining in the buffer that has not been sent yet, in order to empty the service data cached in the buffer, after t 1 , the sending device can stop writing the subsequent service data to be sent into the buffer for caching, that is, the subsequent service data to be sent no longer goes through the caching process, and continue to fill the remaining service data cached in the buffer into the second channel.

[0159] When reaching the third time point t 2 , the remaining service data cached in the buffer has been filled into the second channel. At this time, the sending device can fill the subsequent service data to be sent into the second channel and send the subsequent service data to be sent through the second channel. After t 2 , continue to send the subsequent service data to be sent through the second channel, that is, when reaching t 2 or after t 2 , the sending device continues to send service data through the second channel.

[0160] In the first embodiment, the sending device starts writing the service data to be sent into the buffer at a rate greater than the first bandwidth when reaching the first time point, and fills the service data in the buffer into the first channel and the second channel. Since the amount of service data filled into the second channel between the first time point and the second time point can be equal to the amount of data sent in the previous cycle on the second channel, when the first channel is adjusted to the second channel at the second time point, the second channel can start sending service data, thereby avoiding the phenomenon that the second channel cannot output data at the data outlet when reaching the second time point, achieving the purpose of aligning the boundaries of the service data sent by the first channel and the second channel, and achieving the purpose of lossless transmission of service data.

[0161] Next, the process of bandwidth adjustment on the receiving device side in the second embodiment of the present application will be specifically introduced in combination with Figure 8 、 12 -18.

[0162] Please refer to Figure 12 shown, which is a schematic flowchart of a method for adjusting the bandwidth of a FlexE service provided by an embodiment of the present application. Among them, Figure 12 taking the execution entity as the receiving device as an example. As Figure 12 shown, the method may include the following steps:

[0163] S201. According to the requirement of receiving data, it is determined that the current receiving channel needs to be adjusted from the second channel to the first channel at the second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel.

[0164] As an example, when the first channel is a 5G channel and the second channel is a 1G channel, the schematic diagrams of the first channel and the second channel can be as Figure 8 shown, and the magnitude of the first bandwidth can be 5 times that of the second bandwidth.

[0165] In the second embodiment, when the requirement for receiving data by the first FlexE Client increases, the receiving device can determine, according to the requirement for receiving data by the first FlexE Client, to adjust the current receiving channel from the second channel to the first channel at the future second time point.

[0166] S202. At the second time point, start writing the service data that needs to be received through the first channel into the first buffer, and continue to receive the remaining service data in the second channel; at the third time point after the second time point, start receiving the service data in the first buffer through the first channel; or, at the second time point, start writing the service data received through the first channel into the second buffer, and continue to receive the remaining service data in the second channel; at the third time point, start outputting the service data in the second buffer; wherein, the third time point is equal to or later than the time point when the remaining service data in the second channel is received completely.

[0167] In Embodiment 2, when the receiving device adjusts the current receiving channel from the second channel to the first channel at the second time point, there is still some remaining service data in the second channel, and the receiving device can continue to receive the remaining service data in the second channel. At this time, the receiving device can start writing the service data that needs to be received through the first channel into the first buffer. Exemplarily, please refer to Figure 13 as shown, before reaching the second time point t 1 , the receiving device receives service data through the second channel. When reaching the second time point t 1 , the receiving device can start writing the service data that needs to be received through the first channel into the first buffer and continue to receive the remaining service data in the second channel. Or, please refer to Figure 14 as shown, before reaching the second time point t 1 , the receiving device receives service data through the second channel. When reaching the second time point t 1 , the receiving device can start writing the service data received through the first channel into the second buffer and continue to receive the remaining service data in the second channel.

[0168] In Embodiment 2, please combine Figure 13 and Figure 15 as shown. When the first buffer is set on the data entry side of the FlexE shim, the receiving device can start writing the service data that needs to be received through the first channel into the first buffer at the second time point. Among them, Figure 15 for the remaining processes in the data receiving process shown except for caching the service data that needs to be received through the first channel in the first buffer, reference can be made to the relevant description of the data receiving process shown in Figure 6 above, and details will not be elaborated here. Or, please combine Figure 14 and Figure 16 as shown. When the second buffer is set on the data exit side of the FlexE shim, the receiving device can start writing the service data received through the first channel into the second buffer at the second time point. Among them, Figure 16During the data receiving process shown, except for caching the service data received through the first channel in the second buffer, the remaining processes can refer to the above description regarding Figure 6 the relevant description of the data receiving process shown, which will not be elaborated here.

[0169] In the second embodiment, by starting to write the data that needs to be received through the first channel into the first buffer, or starting to write the data received through the first channel into the second buffer at the second time point, and continuing to receive the remaining service data in the second channel, it is possible to avoid the phenomenon of simultaneously outputting the service data received through the first channel and the second channel at the second time point. Further, it is possible to achieve the purpose of keeping in order the service data received through the first channel and the service data received through the second channel, and there will be no phenomenon of incorrect reception of service data, and thus the effect of lossless reception of service data can be achieved.

[0170] In the second embodiment, the receiving device starts to receive the service data in the first buffer through the first channel at the third time point after the second time point, or starts to output the service data in the second buffer at the third time point. After that, the receiving device can process the service data received through the first channel. For example, as Figure 15 or Figure 16 shown, perform operations such as inserting / deleting idle code blocks and 64B / 66B decoding on the data of the first channel service. Among them, the third time point can be a time point equal to or later than the time point when the remaining service data in the second channel is received. That is, when reaching the third time point, the remaining service data in the second channel has been received, which means that the remaining service data in the second channel has been processed, and it is possible to start receiving the service data in the first buffer through the first channel or start outputting the service data in the second buffer. Exemplarily, please refer to Figure 13 shown, the receiving device can start to receive the service data in the first buffer through the first channel at the third time point t 2 when the remaining service data in the second channel is received. Or, please refer to Figure 14 shown, the receiving device can start to output the service data in the second buffer at the third time point t 2 when the remaining service data in the second channel is received.

[0171] In the second embodiment of the present application, starting from the second time point, the service data to be received through the first channel is written into the first buffer, or the service data received through the second channel is written into the second buffer, and at the third time point after the second time point (where the duration between the second time point and the third time point can ensure that the receiving device receives the transmission of the remaining service data in the second channel), start receiving the service data in the first buffer through the first channel, or start outputting the service data in the second buffer, so as to achieve the effect of starting to process the service data received through the first channel after processing the service data received through the second channel, thereby achieving the purpose of keeping in order the service data received through the first channel and the service data received through the second channel, and there will be no phenomenon of incorrect reception of service data due to out-of-order reception. Further, the effect of lossless reception of service data can be achieved.

[0172] In the second embodiment, in order to empty the service data in the first buffer, when the receiving device reaches the third time point, it can start reading the service data in the first buffer at a rate greater than the first bandwidth, and fill the read service data into the first channel, and receive the service data filled into the first channel until at the fourth time point when the service data in the first buffer is read out, it can start to stop writing the subsequent service data to be received through the first channel into the first buffer, and continue to receive the subsequent service data to be received through the first channel through the first channel. As Figure 13 shown, between the third time point t 2 and the fourth time point t 3 , the receiving device can read the service data in the first buffer at a rate greater than the first bandwidth and receive the service data in the first buffer through the first channel. When reaching the fourth time point t 3 when the service data in the first buffer is read out, directly receive the subsequent service data to be received through the first channel through the first channel. In other words, the subsequent service data to be received through the first channel will no longer be cached. For example, as shown in Figure 13 and Figure 15 shown, the subsequent service data to be received through the first channel will no longer be cached by the first buffer.

[0173] Alternatively, in the second embodiment, in order to empty the service data in the second buffer, when the receiving device reaches the third time point, it can start outputting the service data in the second buffer at a rate greater than the first bandwidth until at the fourth time point when the service data in the second buffer is output, it can start to stop writing the subsequent service data received through the second channel into the second buffer. As Figure 14 shown, between the third time point t 2 and the fourth time point t 3Between them, the receiving device can output the service data in the second buffer at a rate greater than the first bandwidth. When reaching the fourth time point t when the service data in the second buffer is completely output 3 At this time, the service data received subsequently through the first channel is no longer written into the second buffer, and the service data received subsequently through the first channel no longer undergoes caching processing. For example, as shown in combination with Figure 14 And Figure 16 The service data received subsequently through the first channel no longer undergoes caching processing through the second buffer.

[0174] In the second embodiment of the present application, by reading the service data in the first buffer at a rate greater than the first bandwidth at the third time point, and at the fourth time point when the service data in the first buffer is completely read, stopping writing the service data that needs to be received subsequently through the first channel into the first buffer, or by outputting the service data in the second buffer at a rate greater than the first bandwidth at the third time point, and at the fourth time point when the service data in the second buffer is completely output, stopping writing the service data received subsequently through the first channel into the second buffer, that is, the service data that needs to be received subsequently no longer undergoes caching processing, which can reduce the power consumption of the receiving device for processing data.

[0175] In the specific implementation process, the receiving device has two side ports. For example, one side port is a data entry port, and the other side port is a data exit port. Data is transmitted between the two side ports through a receiving channel. Since it takes a certain amount of time for the receiving device to receive the service data received in the previous cycle on the first channel, and the greater the bandwidth of the receiving channel, the shorter this time. Therefore, when the receiving device adjusts the receiving channel currently corresponding to the data entry port from the second channel to the first channel at the second time point, the residual service data in the second channel has not been completely processed, and the first channel has already started to output service data. It is impossible to process the service data received by the first channel after processing the service data received by the second channel at the data exit, resulting in the phenomenon that the service data received by the first channel and the service data received by the second channel are output simultaneously at the data exit for a period of time after adjusting the receiving channel, causing the phenomenon of disorder of the service data received by the first channel and the service data received by the second channel.

[0176] In the second embodiment, in order to avoid the phenomenon that the service data received by the first channel and the service data received by the second channel are output simultaneously at the data exit for a period of time after the second time point, the receiving device can adopt corresponding methods to adjust the sending channels currently corresponding to the data entry port and the data exit port at different time points.

[0177] Next, the process of bandwidth adjustment on the receiving device side in the second embodiment of the present application will be introduced in detail in combination with Figures 12 - 18 Please refer to

[0178] Please refer to Figure 17or Figure 18 as shown, before the second time point t 1 previously, the currently corresponding transmission channels of the data inlet and the data outlet are both the second channel, and the receiving device receives service data through the second channel, that is, before t 1 previously, the receiving device receives service data through the second channel.

[0179] Please refer to Figure 17 or Figure 18 as shown, when reaching the second time point t 1 the receiving device adjusts the currently corresponding transmission channel of the data inlet from the second channel to the first channel. At this time, as Figure 17 shown, the receiving device can start writing the service data that needs to be received through the first channel into the first buffer and continue to receive the remaining service data in the second channel. At this time, the currently corresponding receiving channel of the data outlet is the second channel. As Figure 18 shown, the receiving device can start writing the service data received through the first channel into the second buffer and continue to receive the remaining service data in the second channel. At this time, the currently corresponding receiving channels of the data outlet include the first channel and the second channel. That is, when reaching t 1 the receiving device no longer fills the service data to be received into the second channel. Since there is still remaining service data in the second channel at this time, the receiving device can continue to receive the remaining service data in the second channel until it has received all the remaining service data in the second channel. In other words, until the receiving device has processed all the remaining service data in the second channel.

[0180] When reaching the third time point t 2 the receiving device has received all the remaining service data in the second channel. At this time, as Figure 17 shown, the receiving device can start reading the service data in the first buffer at a rate greater than the first bandwidth and filling the read service data into the first channel, and receiving the service data filled into the first channel through the first channel. At this time, the currently corresponding receiving channels of both the data inlet and the data outlet are the first channel. Or, as Figure 18 shown, the receiving device can start outputting the service data in the second buffer at a rate greater than the first bandwidth. At this time, the currently corresponding receiving channels of both the data inlet and the data outlet are the first channel. After that, the receiving device can perform corresponding processing on the service data received through the first channel. For example, as Figure 15 or Figure 16 shown, perform insertion / deletion of idle code blocks, 64B / 66B decoding processing, etc. After t 2 the receiving device continues to receive the service data in the first buffer through the first channel, or continues to output the service data in the second buffer. When reaching the third time point t2 After that, the current receiving channels corresponding to the data entry and the data exit are both the first channel.

[0181] At the fourth time point t 3 When the receiving device has read the service data in the first buffer, it can stop writing the service data that needs to be received through the first channel subsequently into the first buffer, and directly receive the subsequent service data through the first channel. As Figure 17 shown, when reaching t 3 When it reaches, directly receive the subsequent service data through the first channel, and the service data that needs to be received through the first channel subsequently will no longer be cached. Or, when reaching t 3 When it reaches, the receiving device has output the service data in the second buffer, and it can stop writing the service data received through the first channel subsequently into the second buffer. As Figure 18 shown, when reaching t 3 When it reaches, the service data received through the first channel subsequently will no longer be cached.

[0182] In the second embodiment, the receiving device starts writing the service data that needs to be received through the first channel into the first buffer or starts writing the service data received through the first channel into the second buffer at the second time point, continues to receive the remaining service data in the second channel, and at the third time point sufficient to complete receiving the remaining service data in the second channel, starts receiving the service data in the first buffer through the first channel, or starts outputting the service data in the second buffer, so as to achieve the effect of starting to process the service data received through the first channel after processing the service data received through the second channel, thereby achieving the purpose of keeping in order the service data received through the first channel and the service data received through the second channel, and there will be no phenomenon of incorrect reception due to out-of-order service data reception. Further, the effect of lossless reception of service data can be achieved.

[0183] Next, the process of bandwidth adjustment on the sending device side in the third embodiment of the present application will be specifically introduced in combination with Figure 5 , 8 , 19 - 20.

[0184] Please refer to Figure 19 shown, which is a schematic flowchart of a method for bandwidth adjustment of a FlexE service provided by an embodiment of the present application. Among them, Figure 19 Taking the execution entity as the sending device as an example. As Figure 19 shown, the method may include the following steps:

[0185] S301. Determine that it is necessary to adjust the current transmission channel from the first channel to the second channel at a second time point according to the requirement of transmitting data, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel.

[0186] As an example, when the first channel is a 5G channel and the second channel is a 1G channel, the schematic diagrams of the first channel and the second channel can be as Figure 8 shown, and the magnitude of the first bandwidth can be 5 times that of the second bandwidth.

[0187] In Embodiment 3, when the requirement of the first FlexE Client for transmitting data decreases, the transmitting device can determine that it is necessary to adjust the current transmission channel from the first channel to the second channel at a future second time point according to the requirement of the first FlexE Client for transmitting data.

[0188] S302. At a first time point before the second time point, start filling the second channel with preset format data or idle data.

[0189] In Embodiment 3, in order to distinguish the special format encoded data for FlexE, the preset format data may refer to other encoded format data except the special format encoded data for FlexE, and the present application does not limit this.

[0190] In Embodiment 3, when the transmitting device determines that the current transmission channel will be adjusted from the first channel to the second channel at a future second time point, the transmitting device can start filling the second channel with preset format data or idle data at the first time point.

[0191] For example, please refer to Figure 20 shown. Since the FlexE shim of the transmitting device has two-side ports, before the transmitting device reaches the first time point t 0 , it transmits service data through the first channel. At this time, the currently corresponding transmission channels of the data entry and the data exit are both the first channel. When reaching t 0 , the transmitting device can start filling the second channel with preset format data or idle data. At this time, the transmitting device still transmits service data through the first channel.

[0192] S303. At the second time point, start transmitting the preset format data or the idle data filled in the second channel through the second channel; where the amount of the preset format data or the idle data filled in the second channel between the first time point and the second time point is equal to the amount of data transmitted in one cycle on the second channel.

[0193] In the third embodiment, since the amount of data of the preset format data or the idle data filled into the second channel between the first time point and the second time point may be equal to the amount of data transmitted in one cycle on the second channel, when reaching the second time point, the sending device may start to transmit the preset format data or the idle data filled into the second channel through the second channel, and the purpose of aligning the data boundaries of the service data transmitted on the first channel and the data transmitted on the second channel can be achieved.

[0194] For example, as Figure 20 shown, since the amount of data of the preset format data or the idle data filled into the second channel between the first time point and the second time point may be equal to the amount of data transmitted in one cycle on the second channel, the sending device may transmit the preset format data or the idle data filled into the second channel through the second channel. At this time, the sending channels corresponding to the data entry and the data exit are both the second channel, and the sending device may no longer fill the second channel with the preset format data or the idle data, but fill the second channel with the service data.

[0195] In the third embodiment, by filling the second channel with the preset format data or the idle data at the first time point and starting to transmit the preset format data or the idle data filled into the second channel through the second channel at the second time point, when reaching the second time point, the sending device may start to transmit data through the second channel, and the purpose of aligning the data boundaries of the service data transmitted on the first channel and the data transmitted on the second channel can be achieved.

[0196] S304. At a third time point after the second time point, start to transmit service data through the second channel; wherein, the duration between the second time point and the third time point is equal to the duration required to transmit the preset format data or the idle data filled into the second channel.

[0197] Exemplarily, please refer to Figure 20 shown, the sending device may start to transmit service data through the second channel at the third time point t 2 and after t 2 .

[0198] In Embodiment 3, the sending device fills the second channel with preset format data or idle data at the first time point, and starts sending the preset format data or idle data filled in the second channel through the second channel at the second time point, so that the sending device can start sending data through the second channel at the second time point, achieving the purpose of aligning the boundaries of the data sent through the first channel and the service data sent through the second channel. Further, since the duration between the second time point and the third time point can be equal to the duration required to send the preset format data or idle data filled in the second channel, when starting to send service data through the second channel at the third time point, the complete service data packet will not be cut off, and the phenomenon that some service data sent through the second channel is lost can be avoided, and thus the effect of lossless service data transmission can be achieved.

[0199] The following will specifically introduce the process of bandwidth adjustment on the receiving device side in Embodiment 3 of the present application in combination with Figure 6 , 8 , 21 - 22.

[0200] Please refer to Figure 21 shown, which is a schematic flowchart of a method for adjusting the bandwidth of a FlexE service provided by an embodiment of the present application. Among them, Figure 21 taking the execution entity as the receiving device as an example. As Figure 21 shown, the method may include the following steps:

[0201] S401. According to the requirements of the received data, determine that it is necessary to adjust the current receiving channel from the first channel to the second channel at the second time point; wherein, the first bandwidth of the first channel is greater than the second bandwidth of the second channel.

[0202] In Embodiment 3, when the requirement for received data by the first FlexE Client decreases, the receiving device can determine, according to the requirement for received data by the first FlexE Client, that the current receiving channel will be adjusted from the first channel to the second channel at the future second time point.

[0203] S402. At the second time point, start deleting the preset format data or idle data received through the second channel; at the third time point after the second time point, start receiving service data through the second channel; wherein, the duration between the second time point and the third time point is equal to the duration required to delete the preset format data or the idle data received through the second channel.

[0204] Please refer to Figure 22 shown. Since the FlexE shim of the receiving device has two ports on both sides, when the receiving device reaches the second time point t 1Previously, service data was received through the first channel. At this time, the receiving channels currently corresponding to the data entry and the data exit were both the first channel. When reaching t 1 At this time, the receiving device can receive data through the second channel. At this time, the receiving channels currently corresponding to the data entry and the data exit are both the second channel, and the receiving device can delete the preset format data or idle data received through the second channel.

[0205] In the specific implementation process, since the receiving rate of the first channel is relatively large compared to the receiving rate of the second channel, when reaching the second time point, the receiving device has completed processing the service data received through the first channel. Exemplarily, please refer to Figure 22 As shown, before reaching the second time point t 1 the receiving device receives service data through the first channel. When reaching the second time point t 1 the receiving device has completed processing the service data received through the first channel. At this time, the receiving device no longer receives service data through the first channel. After t 1 the receiving channels currently corresponding to the data entry and the data exit are both the second channel.

[0206] Exemplarily, please refer to Figure 22 As shown, the sending device can start receiving service data through the second channel at the third time point t 2 and after t 2

[0207] In the third embodiment, when the receiving device adjusts the current receiving channel from the first channel to the second channel at the second time point, it deletes the preset format data or idle data received through the second channel. Since the duration between the second time point and the third time point is equal to the duration required to delete all the preset format data or idle data received through the second channel, and the receiving rate of the first channel is relatively large compared to the receiving rate of the second channel, when the receiving device starts receiving service data through the second channel at the third time point, it can achieve the purpose of starting to process the service data received through the second channel after processing the service data received through the first channel, and can achieve the effect of keeping the service data received through the first channel and the service data received through the second channel in order, and there will be no phenomenon of disordered reception of service data, and thus the effect of lossless reception of service data can be achieved.

[0208] It should be understood that in the embodiments of the present application, the sending device and the receiving device can execute some or all of the steps in the embodiments of the present application. These steps are only examples, and the embodiments of the present application can also execute other steps or various deformations of the steps. In addition, the various steps can be executed in different orders presented in the embodiments of the present application, and it is possible not to execute all the steps in the embodiments of the present application. ​

[0209] In various embodiments of the present application, without special instructions and logical conflicts, the terms and / or descriptions between different embodiments are consistent and can be referenced to each other. The technical features in different embodiments can be combined to form new embodiments according to their inherent logical relationships.

[0210] The above mainly introduces the solution provided by the embodiments of the present application from the perspective of the interaction between the sending device and the receiving device. It should be understood that in order to implement the above functions, the above sending device and receiving device include the corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of the examples described in the embodiments disclosed in this article, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.

[0211] The embodiments of the present application can divide the function modules of the sending device or the receiving device according to the above method examples. For example, each function module can be divided corresponding to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of a software function module. It should be noted that the division of modules in the embodiments of the present application is illustrative, only a logical function division, and there can be other division methods in actual implementation.

[0212] In the case of adopting an integrated unit (module), Figure 23 FIG. shows a schematic structural diagram of a network device provided by an embodiment of the present application. As Figure 23 shown, the network device 500 is a network device located on the service data sending side, and may include: a processing unit 501 and a sending unit 502.

[0213] Among them, the sending unit 502 is used to support the communication between the network device 500 and other devices, such as the communication between the network device located on the service data receiving side. The processing unit 501 is used to control and manage the actions of the network device 500. For example, the processing unit 501 is used to support the network device 500 to execute Figure 7 the processes S101 - S104 in Figures 9 - 11 and the processes in

[0214] The processing unit 501 is configured to determine, according to the requirement of sending data, that it is necessary to adjust the current sending channel from the first channel to the second channel at a second time point, where a first bandwidth of the first channel is greater than a second bandwidth of the second channel; at a first time point before the second time point, start writing service data to be sent into a buffer at a rate greater than the first bandwidth, and fill the service data in the buffer into the first channel and the second channel;

[0215] The sending unit 502 is configured to, between the first time point and the second time point, send the service data filled into the first channel through the first channel; at the second time point, start sending the service data filled into the second channel through the second channel; where the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel.

[0216] In a possible design, the processing unit 501 may further be configured to: stop writing the subsequent service data to be sent into the buffer when the remaining service data in the buffer is sent through the second channel; the sending unit 502 may further be configured to: continue to send the subsequent service data to be transmitted through the second channel.

[0217] In a possible design, between the first time point and the second time point, the sending channels currently corresponding to the data entry include the first channel and the second channel, and the sending channel currently corresponding to the data exit is the first channel; at the second time point and after, the sending channels currently corresponding to both the data entry and the data exit are the second channel.

[0218] It should be understood that the operations and / or functions of the respective modules in the network device 500 are respectively for implementing Figure 7 、 9 the corresponding processes of the FlexE service bandwidth adjustment method shown in FIG. -11. For the sake of brevity, details are not described herein again.

[0219] In the case of adopting an integrated unit (module), Figure 24 FIG. shows a schematic structural diagram of a network device provided by an embodiment of the present application. As Figure 24 shown, the network device 600 is a network device located on the service data receiving side, and may include: a processing unit 601 and a receiving unit 602.

[0220] Among them, the receiving unit 602 is used to support the communication between the network device 600 and other devices, such as the communication between the network device 600 and the network device on the service data sending side. The processing unit 601 is used to control and manage the actions of the network device 600. For example, the processing unit 601 is used to support the network device 600 to execute Figure 12 the processes S201 - S202 in Figures 13 - 18 and the processes in

[0221] and / or other processes for the technologies described in this article. Specifically, the following description can be referred to:

[0221] The processing unit 601 is used to determine, according to the requirements of the received data, that it is necessary to adjust the current receiving channel from the second channel to the first channel at the second time point, where the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at the second time point, start writing the service data that needs to be received through the first channel into the first buffer, or start writing the service data received through the first channel into the second buffer;

[0222] The receiving unit 602 is used to continue receiving the remaining service data in the second channel at the second time point; at the third time point after the second time point, start receiving the service data in the first buffer through the first channel, or start outputting the service data in the second buffer; where the third time point is equal to or later than the time point when the remaining service data in the second channel is received.

[0223] In a possible design, the receiving unit 602 can specifically be used to: at the third time point, start outputting the service data in the second buffer at a rate greater than the first bandwidth.

[0224] In a possible design, the processing unit 601 can specifically be used to: at the third time point, start reading the service data in the first buffer at a rate greater than the first bandwidth and fill the read service data into the first channel; the receiving unit 602 can specifically be used to: receive the service data filled into the first channel.

[0225] In a possible design, the processing unit 601 can also be used to: when the receiving unit 602 finishes outputting the service data in the second buffer, stop writing the subsequent service data received through the first channel into the second buffer.

[0226] In a possible design, the processing unit 601 can also be used to: when the receiving unit finishes receiving the service data in the first buffer through the first channel, stop writing the subsequent service data that needs to be received through the first channel into the first buffer; the receiving unit 602 can also be used to: continue to receive the subsequent service data that needs to be received through the first channel through the first channel.

[0227] In a possible design, between the second time point and the third time point, the receiving channel currently corresponding to the data entry is the first channel, and the receiving channels currently corresponding to the data exits include the first channel and the second channel; at and after the third time point, the receiving channels currently corresponding to both the data entry and the data exits are the first channel.

[0228] In a possible design, between the second time point and the third time point, the receiving channel currently corresponding to the data entry is the first channel, and the receiving channel currently corresponding to the data exit is the second channel; at and after the third time point, the receiving channels currently corresponding to both the data entry and the data exits are the first channel.

[0229] It should be understood that the operations and / or functions of the various modules in the network device 600 are respectively for implementing Figures 12 - 18 the corresponding processes of the bandwidth adjustment method for the FlexE service shown, and for the sake of brevity, they will not be elaborated here.

[0230] In the case of adopting an integrated unit (module), Figure 25 FIG. shows a schematic structural diagram of a network device provided by an embodiment of the present application. As Figure 25 shown, the network device 700 is a network device located on the service data sending side, and may include: a processing unit 701 and a sending unit 702.

[0231] Among them, the sending unit 702 is used to support the communication of the network device 700 with other devices, for example, the communication with a network device located on the service data receiving side. The processing unit 701 is used to control and manage the actions of the network device 700. For example, the processing unit 701 is used to support the network device 700 to execute Figure 19 the processes S301 - S304 in Figure 20 and the processes in

[0232] The processing unit 701 is configured to determine, according to the requirement of sending data, that it is necessary to adjust the current sending channel from the first channel to the second channel at a second time point, where a first bandwidth of the first channel is greater than a second bandwidth of the second channel; at a first time point before the second time point, start filling the second channel with preset format data or idle data;

[0233] The sending unit 702 is configured to start sending, at the second time point, the preset format data or the idle data filled in the second channel through the second channel; where the amount of the preset format data or the idle data filled in the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel; at a third time point after the second time point, start sending service data through the second channel; where the duration between the second time point and the third time point is equal to the duration required to send the preset format data or the idle data filled in the second channel.

[0234] In a possible design, before the second time point, the sending channels currently corresponding to the data entry and the data exit are both the first channel; at and after the second time point, the sending channels currently corresponding to the data entry and the data exit are both the second channel.

[0235] It should be understood that the operations and / or functions of the respective modules in the network device 700 are respectively for implementing Figures 19 - 20 the corresponding processes of the FlexE service bandwidth adjustment method shown, and for the sake of brevity, will not be elaborated here.

[0236] In the case of adopting an integrated unit (module), Figure 26 FIG. shows a schematic structural diagram of a network device provided by an embodiment of the present application. As Figure 26 shown, the network device 800 is a network device located on the service data receiving side, and may include: a processing unit 801 and a receiving unit 802.

[0237] Among them, the receiving unit 802 is configured to support the communication of the network device 800 with other devices, such as the communication with a network device located on the service data sending side. The processing unit 801 is configured to control and manage the actions of the network device 800. For example, the processing unit 801 is configured to support the network device 800 to execute Figure 21 the processes S401 - S402 in Figure 22 and the processes in

[0238] The processing unit 801 is configured to determine, according to the requirements of the received data, that it is necessary to adjust the current receiving channel from the first channel to the second channel at a second time point; wherein, a first bandwidth of the first channel is greater than a second bandwidth of the second channel; at the second time point, start deleting preset format data or idle data received by the receiving unit through the second channel;

[0239] The receiving unit 802 is configured to start receiving service data through the second channel at a third time point after the second time point; wherein, a duration between the second time point and the third time point is equal to a duration required to delete the preset format data or the idle data received through the second channel.

[0240] In a possible design, before the second time point, the receiving channels currently corresponding to the data entry and the data exit are both the first channel; at the second time point and after, the receiving channels currently corresponding to the data entry and the data exit are both the second channel.

[0241] It should be understood that the operations and / or functions of the respective modules in the network device 800 are respectively for implementing Figures 21 - 22 the corresponding processes of the bandwidth adjustment method for the FlexE service shown, and for the sake of brevity, will not be elaborated here.

[0242] In the case of adopting an integrated unit (module), Figure 27 FIG. shows a schematic structural diagram of a network device provided by an embodiment of the present application. As Figure 27 shown, the network device 900 may include at least one processor 901 and a memory 902; the memory 902 stores one or more computer programs, for example, one or more computer programs necessary for storing the network device 900. The at least one processor 901 is configured to support the network device 900 to implement the above-mentioned bandwidth adjustment method for the FlexE service. For example, when one or more computer programs stored in the memory 902 are executed by the at least one processor 901, the network device 900 can implement Figure 7 、 12 any one of the embodiments of the bandwidth adjustment method for the FlexE service shown in 19 and 21, and / or for implementing other embodiments described herein. In addition, the network device 900 may further include a communication interface 903, and this communication interface may be used to communicate with other devices or communication networks, such as FlexE, etc.

[0243] Based on the same concept as the above method embodiments, an embodiment of the present application further provides a network device, which includes one or more processors, and one or more memories or non-volatile storage media. The one or more processors are connected to the one or more memories or non-volatile storage media. Computer instructions or computer programs are stored in the one or more memories or non-volatile storage media. When the one or more processors execute the computer instructions or computer programs, it can implement Figure 7 , 12 , any possible implementation of the embodiment of the bandwidth adjustment method of the FlexE service shown in 19, 21, and / or other embodiments described herein.

[0244] Based on the same concept as the above method embodiments, an embodiment of the present application further provides a computer-readable storage medium or non-volatile storage medium. The computer-readable storage medium or non-volatile storage medium stores computer instructions or computer programs. When the computer instructions or computer programs run on a computer, the computer is caused to execute any possible implementation manner of the above method embodiments of receiving multicast information, method embodiments, or when the computer instructions or computer programs run on one or more processors, a network device including the one or more processors is caused to execute any possible implementation manner of the above method embodiments of receiving multicast information, method embodiments, for example, execute Figure 7 , 12 , any step of the embodiment of the bandwidth adjustment method of the FlexE service shown in 19, 21, and / or execute other processes of the technology described herein.

[0245] Based on the same concept as the above method embodiments, an embodiment of the present application further provides a program product. The computer program product is used to store a computer program. When the computer program runs on a computer, the computer is caused to execute any possible implementation manner of the above method embodiments of receiving multicast information, method embodiments, for example, execute as Figure 7 , 12 , any step of the embodiment of the bandwidth adjustment method of the FlexE service shown in 19, 21, and / or execute other processes of the technology described herein.

[0246] Based on the same concept as the above method embodiments, an embodiment of the present application further provides a chip, which may include at least one processor and an interface; the interface may be a code / data read-write interface, and the interface is used to provide computer execution instructions (the computer execution instructions are stored in a memory, and may be directly read from the memory or may pass through other devices) to the at least one processor; the at least one processor is used to execute the computer execution instructions to execute any possible implementation manner of the above method embodiments for receiving multicast information, for example, to execute Figure 7 , 12 , any step of the embodiment of the bandwidth adjustment method of the FlexE service shown in 19, 21, and / or to execute other processes of the technologies described herein.

[0247] Based on the same concept as the above method embodiments, an embodiment of the present application further provides a network system, which includes: An embodiment of the present application provides a network system, and the network system includes two network devices; one network device (located on the side of sending service data) is used to execute the above Figure 7 or Figure 19 shown steps, or the steps executed by this network device in the solution provided by the embodiment of the present application; the other network device (located on the side of receiving service data) is used to execute the above Figure 12 or Figure 21 shown steps, or the steps executed by this network device in the solution provided by the embodiment of the present application.

[0248] It should be understood that the processor or processing unit (such as the processor or processing unit shown in Figures 23 - 27 ) in the embodiment of the present application may be an integrated circuit chip with signal processing capabilities. In the implementation process, the above steps of the embodiments of the bandwidth adjustment method of the FlexE service shown in Figure 7 , 12 , 19, 21 can be completed by the integrated logic circuit in hardware or instructions in software form in the processor or processing unit. The above-mentioned processor or processing unit may be a programmable logic device, such as a digital signal processing (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof; it may also be a combination for realizing computing functions, such as including a combination of one or more microprocessors, a combination of DSP and a microprocessor, and so on.

[0249] It should be understood that the memory or storage unit in the embodiments of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchlink DRAM (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory of the systems and methods described in the present application is intended to include, but not be limited to, these and any other suitable types of memory.

[0250] The various illustrative logical units and circuits described in the embodiments of the present application can be implemented or operate the described functions by a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination of the above designs. The general-purpose processor can be a microprocessor. Optionally, the general-purpose processor can also be any conventional processor, controller, microcontroller, or state machine. The processor can also be implemented by a combination of computing devices, such as a digital signal processor and a microprocessor, multiple microprocessors, one or more microprocessors combined with a digital signal processor core, or any other similar configuration.

[0251] The steps of the methods or algorithms described in the embodiments of this application may be directly embedded in hardware, software units executed by a processor, or a combination of the two. The software units may be stored in a RAM, flash memory, ROM, EPROM, EEPROM, register, hard disk, removable disk, CD-ROM, or any other form of storage medium in the art. Exemplarily, the storage medium may be connected to the processor so that the processor can read information from the storage medium and write information to the storage medium. Optionally, the storage medium may also be integrated into the processor. The processor and the storage medium may be provided in an ASIC, and the ASIC may be provided in a communication device (such as a first terminal device, a network device, etc.), for example, in different components of the communication device.

[0252] In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are executed in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer program or instructions may be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium. The computer-readable storage medium may be any available medium accessible by the computer or a data storage device such as a server integrating one or more available media. The available medium may be a magnetic medium, for example, a floppy disk, a hard disk, a magnetic tape; it may also be an optical medium, for example, a DVD; or it may be a semiconductor medium, for example, a solid state disk (SSD).

[0253] The embodiments of this application are described with reference to the flowcharts and / or block diagrams of the methods, apparatuses, and computer program products involved in the embodiments. It should be understood that each process and / or block in the flowchart and / or block diagram, and the combination of processes and / or blocks in the flowchart and / or block diagram, may be implemented by computer program instructions. These computer program instructions may be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the functions specified in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.

[0254] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to work in a particular manner, such that the instructions stored in the computer-readable memory produce a manufacture including an instruction device that implements the functions specified in one or more of the processes Figure 1 one or more of the processes and / or blocks Figure 1 specified in one or more of the blocks or blocks.

[0255] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus, such that a series of operational steps are performed on the computer or other programmable apparatus to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in one or more of the processes Figure 1 one or more of the processes and / or blocks Figure 1 specified in one or more of the blocks or blocks.

[0256] Although the embodiments of the present application have been described in conjunction with specific features, it is obvious that various modifications and combinations can be made without departing from the spirit and scope of the embodiments of the present application. Accordingly, the present specification and drawings are merely exemplary illustrations of the embodiments of the present application defined by the appended claims, and are considered to cover any and all modifications, variations, combinations or equivalents within the scope of the embodiments of the present application.

Claims

1. A method for adjusting the bandwidth of FlexE services, characterized in that, it includes: According to the demand for sending data, it is determined that the current sending channel needs to be adjusted from the first channel to the second channel at the second time point, wherein the first bandwidth of the first channel is greater than the second bandwidth of the second channel; At the first time point before the second time point, start writing the service data to be sent into the cache at a rate greater than the first bandwidth, and fill the service data in the cache into the first channel and the second channel; Between the first time point and the second time point, send the service data filled into the first channel through the first channel; At the second time point, start sending the service data filled into the second channel through the second channel; wherein, the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel.

2. The method according to claim 1, characterized in that, after starting to send the service data filled into the second channel through the second channel at the second time point, it includes: When the remaining service data in the cache is sent through the second channel, stop writing the subsequent service data to be sent into the cache, and continue to send the subsequent service data to be sent through the second channel.

3. A method for adjusting the bandwidth of FlexE services, characterized in that, it includes: According to the demand for sending data, it is determined that the current sending channel needs to be adjusted from the first channel to the second channel at the second time point, wherein the first bandwidth of the first channel is greater than the second bandwidth of the second channel; At the first time point before the second time point, start filling the second channel with preset format data or idle data; At the second time point, start sending the preset format data or the idle data filled into the second channel through the second channel; wherein, the amount of the preset format data or the idle data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel; At the third time point after the second time point, start sending service data through the second channel; wherein, the duration between the second time point and the third time point is equal to the duration required to send the preset format data or the idle data filled into the second channel.

4. A network device, characterized in that, it includes: A processing unit and a sending unit; The processing unit is used to determine that the current sending channel needs to be adjusted from the first channel to the second channel at the second time point according to the demand for sending data, wherein the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at the first time point before the second time point, start writing the service data to be sent into the cache at a rate greater than the first bandwidth, and fill the service data in the cache into the first channel and the second channel; The sending unit is configured to send, between the first time point and the second time point, service data filled into the first channel through the first channel; and at the second time point, start to send, through the second channel, service data filled into the second channel; wherein, the amount of service data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel.

5. The device according to claim 4, wherein, the processing unit is further configured to: when the remaining service data in the buffer has been sent through the second channel, stop writing the subsequent service data to be sent into the buffer; the sending unit is further configured to: continue to send the subsequent service data to be sent through the second channel.

6. A network device, wherein, comprising: a processing unit and a sending unit; the processing unit is configured to determine, according to the requirement of sending data, that the current sending channel needs to be adjusted from the first channel to the second channel at a second time point, wherein the first bandwidth of the first channel is greater than the second bandwidth of the second channel; at a first time point before the second time point, start to fill the second channel with preset format data or idle data; the sending unit is configured to, at the second time point, start to send, through the second channel, the preset format data or the idle data filled into the second channel; wherein, the amount of the preset format data or the idle data filled into the second channel between the first time point and the second time point is equal to the amount of data sent in the previous cycle on the second channel; at a third time point after the second time point, start to send service data through the second channel; wherein, the duration between the second time point and the third time point is equal to the duration required to send the preset format data or the idle data filled into the second channel.

7. A computer-readable storage medium, wherein, the computer-readable storage medium stores computer instructions or a computer program, and when the computer instructions or the computer program are called by a computer, the computer is caused to execute the method according to any one of claims 1 to 3.

8. A computer program product, wherein, the computer program product is used to store a computer program, and when the computer program runs on a computer, the computer is caused to execute the method according to any one of claims 1 to 3.

Citation Information

Patent Citations

  • Transmission rate adjustment method and network equipment

    CN108242969A