Service bearing method, service receiving method, electronic device, and storage medium

WO2025185156A8PCT designated stage Publication Date: 2025-10-02ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/124436
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-08
Filing Date
2024-10-12
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

When using the FlexE protocol, existing technologies suffer from bandwidth mismatch and waste when carrying customer services at speeds slower than 5G. This is especially true when carrying 2.048Mbit/s E1, 1.544Mbit/s T1, and 155.52Mbit/s STM-1 services. The speed of customer services cannot be effectively matched to the speed of the bearer timeslot, resulting in bandwidth waste.

Method used

By mapping the service into the bearer frame, which includes the start block, data block and end block, and flexibly configuring the overhead bytes, payload bytes, adjustment bytes and padding bytes in the frame structure, it adapts to different types of customer service rates, inserts idle blocks for rate adaptation, and improves the carrying efficiency.

Benefits of technology

It achieves flexible bandwidth adaptation for different types of customer services, reduces bandwidth waste, improves carrying efficiency, and meets flexible business needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024124436_02102025_PF_FP_ABST
    Figure CN2024124436_02102025_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a service bearing method, a service receiving method, an electronic device, and a storage medium. The service bearing method comprises: mapping a service into a bearer frame, wherein the bearer frame comprises one start block, n data blocks and one termination block, the bearer frame comprises at least one of an overhead byte, a payload byte, an adjustment byte or a filling byte, and n is an integer greater than or equal to 1. According to the solution of the embodiments of the present application, the number n of the data blocks of the bearer frame can be configured on the basis of a borne service, so that the bearer frame can adapt to the service rate of a client and improve the bearing efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Service carrying method, service receiving method, electronic device and storage medium

[0001] Cross-references

[0002] This application claims priority to the Chinese patent application filed with the China Patent Office on March 8, 2024, with application number 202410270166.9 and invention name “Service carrying method, service receiving method, electronic device and storage medium”. The entire contents of the application are incorporated by reference into this application. Technical Field

[0003] The present application relates to the field of communication technology, and in particular to a service carrying method, a service receiving method, an electronic device, a computer-readable storage medium, and a computer program product. Background Art

[0004] The Flexible Ethernet (FlexE) standard defines a method for delivering customer services at speeds of n (n is a positive integer) * 5G (in bits per second). FlexE physical interfaces can efficiently carry customer services at speeds exceeding 5G. The FlexE protocol divides a 100G physical port into 20 time slots, so each time slot corresponds to a 5G bandwidth. The number of time slots and bandwidth defined by the FlexE protocol meet the transmission needs of customer services in routers, Optical Transport Networks (OTNs), and other networks. However, implementing the FlexE protocol presents several challenges: a 100G physical channel has only 20 time slots, which is relatively small; and the bandwidth of each time slot is 5G, which is too high for small-scale services.

[0005] To solve the problem of carrying customer services at speeds lower than 5G, related technologies have developed different fine-grained frame formats. Fine-grained frames are carried on 5G time slots, which are then divided into 480 time slots. A 5G-rate bearer pipe is divided into 480 sub-time slots, and the bandwidth of each sub-time slot is approximately 10M bits / second. Therefore, fine-grained sub-time slots can carry 10M bit / second customer services, which basically meets the carrying requirements of ordinary Ethernet services (current Ethernet service bandwidths are 10M bit / second, 100M bit / second, 1G bit / second and above). When a fine-grained sub-time slot carries a 10M bit / second customer service, the 10M bit / second customer service is first 64B / 66B encoded, carried on part of the time slot after encoding, and then mapped to the time slot of the FlexE protocol and sent out. It is then delivered to the remote destination device through the 5G rate time slot of the FlexE protocol.

[0006] Fine-grained frames can carry services at 10 Mbps. However, in certain application scenarios, such as when carrying 2.048 Mbps E1, 1.544 Mbps T1, or 155.52 Mbps STM-1 services, using one or more sub-timeslots of a fine-grained frame directly can lead to a mismatch between the customer service speed and the speed of the timeslot carrying the customer service, or bandwidth waste. For example, using a 10 Mbps timeslot to carry an E1 or T1 service can lead to severe bandwidth waste. A 155.52 Mbps STM-1 service carried across 16 timeslots has a total speed of 160 Mbps, which is a bandwidth mismatch with the STM-1 speed.

[0007] Summary of the Invention

[0008] Embodiments of the present application provide a service carrying method, a service receiving method, an electronic device, a computer-readable storage medium, and a computer program product.

[0009] The technical solutions of the embodiments of this application are as follows:

[0010] In a first aspect, an embodiment of the present application provides a service carrying method, the method comprising: mapping the service into a carrying frame, wherein the carrying frame comprises 1 start block, n data blocks and 1 end block, the carrying frame comprises at least one of an overhead byte, a payload byte, an adjustment byte or a padding byte, and n is an integer greater than or equal to 1.

[0011] In second aspect, an embodiment of the present application provides a service receiving method, the method comprising: receiving a bearer frame carrying a service, wherein the bearer frame comprises 1 start block, n data blocks and 1 end block, and the bearer frame comprises at least one of an overhead byte, a payload byte, an adjustment byte or a padding byte, and n is an integer greater than or equal to 1.

[0012] In a third aspect, an embodiment of the present application provides an electronic device, comprising: one or more processors; a memory on which one or more programs are stored, and when the one or more programs are executed by the one or more processors, the one or more processors implement the service path establishment method described in the first aspect above or the service path establishment method described in the second aspect above.

[0013] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the service carrying method as described in the first aspect above, or the service receiving method as described in the second aspect above. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] The accompanying drawings are used to provide a further understanding of the technical solution of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present application and do not constitute a limitation on the technical solution of the present application.

[0015] FIG1 is a schematic diagram of a FlexE code block flow provided by related art;

[0016] FIG2 is a fine-grained frame (fgBU) structure provided by the related art;

[0017] FIG3 is a fine-grained frame (fgMU) structure provided by the related art;

[0018] FIG4 is a schematic diagram of a 64B / 66B coding block format provided by the related art;

[0019] FIG5 is a schematic diagram of an implementation environment of an embodiment of the present application;

[0020] Figures 6a and 6b are schematic diagrams of a frame structure of a bearer frame provided in an embodiment of the present application;

[0021] FIG7 is a schematic diagram of a frame structure of a bearer frame provided in an embodiment of the present application;

[0022] FIG8 is a schematic diagram of a frame structure of another bearer frame provided in an embodiment of the present application;

[0023] FIG9 is a schematic diagram of a frame structure of another bearer frame provided in an embodiment of the present application;

[0024] FIG10 is a schematic diagram of a frame structure of another bearer frame provided in an embodiment of the present application;

[0025] FIG11a is a schematic diagram of an overhead byte transmission process provided by an embodiment of the present application;

[0026] FIG11b is a schematic diagram of another overhead byte transmission process provided by an embodiment of the present application;

[0027] FIG12 is a schematic diagram of a frame structure of a bearer frame provided in an embodiment of the present application;

[0028] FIG13 is a schematic diagram of a frame structure of another bearer frame provided in an embodiment of the present application;

[0029] FIG14 is a schematic diagram of an overhead byte transfer process provided in an embodiment of the present application;

[0030] FIG15 is a schematic structural diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0031] In order to enable those skilled in the art to better understand the technical solution of the present application, the technical solution provided by the present application is described in detail below with reference to the accompanying drawings.

[0032] Example embodiments will be described more fully hereinafter with reference to the accompanying drawings, but the described example embodiments may be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this application will be thorough and complete and will fully convey the scope of this application to those skilled in the art.

[0033] As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.

[0034] The terms used herein are used only to describe specific embodiments and are not intended to limit this application. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms, unless the context clearly indicates otherwise. It will also be understood that when the terms "comprising" and / or "made of" are used in this specification, they specify the presence of features, wholes, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or groups thereof.

[0035] In the following description, reference is made to “some embodiments”, which describes a subset of all possible embodiments, but it will be understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0036] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by those of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and the present application, and will not be interpreted as having an idealized or overly formal meaning, unless clearly defined in the examples of the present application.

[0037] To facilitate a better understanding of the solutions of the embodiments of the present application, the following first introduces the terms involved in the present application.

[0038] The Flexible Ethernet (FlexE) standard defines a method for delivering customer services at speeds of n (n is a positive integer) * 5G (unit: bits per second). FlexE physical interfaces can efficiently carry customer services at speeds exceeding 5G. The FlexE protocol divides a 100G physical port into 20 time slots, so each time slot corresponds to 5G bandwidth.

[0039] Please refer to Figure 1, which shows a schematic diagram of the FlexE code block flow provided by related technologies. As shown in Figure 1, the number of time slots and time slot bandwidth defined by the FlexE protocol can meet the transmission needs of customer services such as routers and OTN networks. However, the application of the FlexE protocol encounters some difficulties: a 100G physical channel has only 20 time slots, which is relatively small; and the bandwidth of each time slot is 5G, which is too large for small-granular services.

[0040] In order to solve the problem of carrying customer services at speeds lower than 5G, relevant technologies have developed different fine-grained frame formats (which may be called fine-grained bearer frames, small-grained bearer frames or small-grained frames).

[0041] Please see Figure 2, which shows a fine-grained frame (fgBU) structure provided by related art. An FgBU consists of one start block (also known as an S-block), 195 data blocks (also known as D-blocks), and one end block (also known as a T-block). A frame is divided into overhead and 24 time slots. Every 20 frames form a multiframe, and a multiframe period has 480 time slots.

[0042] Please see Figure 3, which shows a fine-grained multi-frame (fgMU) structure provided by related technologies. An FgMU consists of one S-block, 990 D-blocks, and one T-block. The frame is divided into overhead and 480 time slots. 480 frames form a multiframe, and each frame in the multiframe carries the relevant overhead information for one time slot. The total overhead information for all 480 time slots is transmitted across 480 frames.

[0043] The fine-grained frame structures in Figures 2 and 3 are composed of S-blocks, D-blocks, and T-blocks, where S-blocks, D-blocks, and T-blocks are Ethernet-defined code blocks. Figure 4 illustrates the 64B / 66B code block format provided by related art. As shown in Figure 4, each code block consists of 66 bits. The first two bits are the synchronization header of the code block. A synchronization header bit of "01" indicates a D-block (data code block), followed by 8 bytes (64 bits) of data content. A synchronization header bit of "10" indicates a control block. The first byte following this indicates the control block type, followed by the next 7 bytes of the control block content. S-blocks, T-blocks, O-blocks, and idle blocks (abbreviated as IDLE blocks or I-blocks) all fall under the category of control blocks. The block type field in an S-block is 0x78, indicating that the control block is an S-block. The first code block in a data message code block stream is an S-block. The last code block in a data message code block stream (i.e., the end block of the message) is a T-block. In addition to indicating a termination block, the T block can also carry client byte content. The Ethernet standard categorizes T blocks into eight types: T0, T1, T2, T3, T4, T5, T6, and T7. T0 (first byte is 0x87) carries no client information. T1 (block type field is 0x99) carries one byte of client information, and T2 (block type field is 0xAA) carries two bytes of client information. Similarly, T7 (block type field is 0xFF) carries seven bytes of client information. IDLE blocks are idle blocks with a block type of 0x1E. O blocks are maintenance blocks with a block type of 0x4B.

[0044] Fine-grained frames are carried on 5G timeslots, which are further divided into 480 timeslots. A 5G-rate bearer pipe is divided into 480 sub-timeslots, each with a bandwidth of approximately 10Mbit / s (slightly greater than 10Mbit / s). Therefore, fine-grained sub-timeslots can carry 10Mbit / s customer services, essentially meeting the carrying requirements of common Ethernet services (current Ethernet service bandwidths include 10Mbit / s, 100Mbit / s, 1Gbit / s, and above). When a fine-grained sub-timeslot carries a 10Mbit / s customer service, the 10Mbit / s customer service is first 64B / 66B-encoded and carried on a portion of the timeslot. The fg-BU frame is then mapped to the FlexE protocol timeslot and transmitted, delivered to the remote destination device via the FlexE protocol's 5G-rate timeslots.

[0045] Fine-grained frames can carry 10 Mbit / s services. However, in certain application scenarios, such as those requiring 2.048 Mbit / s E1, 1.544 Mbit / s T1, and 155.52 Mbit / s STM-1 services, using one or more sub-timeslots of an fg-BU directly to carry these services creates a mismatch between the customer service speed and the timeslot speed they carry. Using a single 10 Mbit / s timeslot to carry an E1 or T1 service also results in significant bandwidth waste. Even if a 155.52 Mbit / s STM-1 service is carried across 16 timeslots, the total speed is 160 Mbit / s, which still creates a bandwidth mismatch with the STM-1 speed.

[0046] In view of this, the embodiments of the present application provide a service carrying method, a service receiving method, an electronic device, a computer-readable storage medium and a computer program product, in which the number n of data blocks of the carrying frame can be flexibly configured, so that the carrying frame can adapt to the carried customer service rate and improve the carrying efficiency, and can meet the flexible bandwidth requirements of the service.

[0047] Please refer to Figure 5, which is a schematic diagram of an implementation environment of an embodiment of the present application. As shown in Figure 5, the implementation environment includes a first node and a second node. The first node is configured to map the service to a bearer frame (also referred to as a container, encapsulation container or service container), and then send the bearer frame to the second node; the second node is configured to receive the bearer frame from the first node, and then demap the service from the bearer frame. The first node and the second node can be network nodes, and the network node can specifically be a physical node or a logical node. A physical node is a network device such as a switch or a router. A logical node is a functional module in a network device, for example, a logical node is a virtual switch, a virtual router, etc. deployed in a network device.

[0048] An embodiment of the present application provides a service carrying method, which can be applied to the first node shown in FIG5 . The method includes:

[0049] The service is mapped into a bearer frame, wherein the bearer frame includes 1 start block, n data blocks and 1 end block, and the bearer frame includes at least one of an overhead byte, a payload byte, an adjustment byte or a padding byte, and n is an integer greater than or equal to 1.

[0050] In an embodiment of the present application, the padding byte is located in at least one of the start block, data block or end block of the bearer frame; the adjustment byte is located in at least one of the start block, data block or end block of the bearer frame; and the payload byte is located in at least one of the start block, data block or end block of the bearer frame.

[0051] Please refer to Figures 6a and 6b, which are schematic diagrams of the frame structure of the bearer frame provided in an embodiment of the present application. As shown in Figure 6a, the bearer frame includes 1 start block (i.e., S block), n data blocks (i.e., D blocks) and 1 termination block (i.e., T block). As shown in Figure 6b, the 0th to 1st bits of the S block are the synchronization header "10", the 2nd to 9th bits are the type field "0x78", and the remaining bits can be used to carry at least one of the overhead bytes, payload bytes, adjustment bytes or padding bytes; the 0th to 1st bits of each D block are the synchronization header "01", and the remaining bits can be used to carry at least one of the overhead bytes, payload bytes, adjustment bytes or padding bytes; the 0th to 1st bits of the T block are the synchronization header "10", the 2nd to 9th bits are the type field "0xFF", and the remaining bits can be used to carry at least one of the overhead bytes, payload bytes, adjustment bytes or padding bytes. It is worth noting that, in the example shown in FIG6 b , the type of the T block is T7. In actual applications, the type of the T block may also be any one of T0, T1, T2, T3, T4, T5 or T6.

[0052] In the embodiment of the present application, the service mapped to the bearer frame may be a constant bit rate (CBR) service.

[0053] The bearer frame described in the embodiment of the present application is located in a multiframe, which is composed of multiple bearer frames.

[0054] Please refer to Figure 7, which is a schematic diagram of the frame structure of a bearer frame provided in an embodiment of the present application. As shown in Figure 7, the bearer frame includes an overhead (OH) and a payload (Payload), wherein the overhead includes overhead bytes, and the payload includes payload bytes, adjustment bytes, and padding bytes. It should be noted that the payload can include one or more of payload bytes, adjustment bytes, and padding bytes.

[0055] To reduce the rate difference between the service layer and the client service layer, a certain number of idle blocks can be inserted between bearer frames. In other words, there can be idle blocks between bearer frames. As shown in Figure 7, there is a space block (also called an idle block) between bearer frame 1 and bearer frame 2.

[0056] An Operation Administration and Maintenance (OAM) block may also be provided between two adjacent bearer frames to carry OAM information. As shown in FIG7 , an OAM block is provided between bearer 1 and bearer frame 2.

[0057] In the embodiment of the present application, a service is mapped into a bearer frame, and the service may include services of one or more customers. For example, the service includes services of customer A and customer B. The service signals of customer A and customer B may be mapped into the same bearer frame or into different bearer frames.

[0058] In the embodiment of the present application, a service is mapped into a bearer frame, and the service includes one or more services, for example, one or more of E1 service, T1 service and STM-1 service. Different types of services are mapped into different bearer frames.

[0059] In an embodiment of the present application, the bearer frames of the same length can carry different types of services; for the bearer frames carrying different types of services, the number of idle blocks or the length of adjustment bytes inserted between the bearer frames may be different.

[0060] It is understood that the number of idle blocks inserted after a bearer frame and the length of the included adjustment bytes are related to the service rate it carries. If two bearer frames of the same length carry different types of services, the number of idle blocks inserted after the two bearer frames and the length of the included adjustment bytes may be different.

[0061] In some examples, different bearer frames can carry different types of services. For example, bearer frame 1 carries E1 services, and bearer frame 2 carries STM-1 services.

[0062] In some examples, two bearer frames of the same length can carry different types of services. For example, bearer frame 1 and bearer frame 2 have the same length, bearer frame 1 carries E1 services, and bearer frame 2 carries STM-1 services.

[0063] In this embodiment of the present application, services are mapped to the justification bytes and / or payload bytes in the bearer frame. As shown in Figure 7 , one client signal (i.e., service) is mapped to the justification bytes, and another client signal is mapped to the payload bytes. The two client signals can be services of the same client or different clients.

[0064] Please refer to Figure 8, which is a schematic diagram of the frame structure of a bearer frame provided in an embodiment of the present application. As shown in Figure 8, bits 0 to 1 of the S block of the bearer frame are the synchronization header "10", bits 2 to 9 are the type field "0x78", and the remaining bits are divided into the overhead of the bearer frame, totaling 7 overhead bytes (OH); the last 64 bits of the n D blocks and the last 56 bits of the T block of the bearer frame are divided into the payload of the bearer frame, and the payload includes (8*n+7) bytes, and the (8*n+7) bytes include one or more of payload bytes, adjustment bytes, and padding bytes.

[0065] Please refer to Figure 9, which is a schematic diagram of the frame structure of another bearer frame provided in an embodiment of the present application. As shown in Figure 9, the second to the 57th bits of the first D block in the bearer frame are the bearer frame overhead, including 7 overhead bytes (OH); the last 8 bits of the first D block in the bearer frame, the last 64 bits of the second to nth D blocks, and the last 56 bits of the T block are the bearer frame payload, which includes 8*n ​​bytes, and the 8*n bytes include one or more of payload bytes, adjustment bytes, and padding bytes.

[0066] Please refer to Figure 10, which is a schematic diagram of the structure of another bearer frame provided by an embodiment of the present application. As shown in Figure 10, bits 10 to 49 of the T block in the bearer frame are the overhead of the bearer frame, including 5 overhead bytes (OH); bits 10 to 65 of the S block, the last 64 bits of n D blocks, and the last 14 bits of the T block are divided into the payload of the bearer frame, which includes (8*n+9) bytes, and the (8*n+9) bytes include one or more of payload bytes, adjustment bytes, and padding bytes.

[0067] For example, a bearer frame is configured with a certain number of payload bytes and a certain number of justification bytes for customer service A. The bearer frame prioritizes carrying customer service A through the payload bytes. When the rate of customer service A increases relative to the payload rate of the bearer frame, the number of justification bytes used to carry customer service A increases. When the rate of customer service A decreases relative to the payload rate of the bearer frame, the number of justification bytes used to carry customer service A decreases. This achieves rate adaptation between the service and the payload rate of the bearer frame. In specific implementations, whether each justification byte carries a service can be indicated through overhead.

[0068] In an embodiment of the present application, the overhead byte carries at least one of the following information: a multi-frame indication field, a service type field, a timestamp field, an idle indication field, a signal failure indication field, an adjustment indication field, an increase adjustment indication field, a decrease adjustment indication field or CRC check information.

[0069] The multiframe indication field is used to indicate the order relationship of each bearer frame in a multiframe group and can be represented by a sequence value, such as frame 0, frame 1, frame 2, frame 3...

[0070] The service type field is used to indicate the service type carried by the bearer frame, such as E1 service, STM-1 service, T1 service, etc.

[0071] The timestamp field is used by the receiving end to recover the service clock.

[0072] The No Bearer Indication field is used to indicate that there is no bearer service in the bearer frame.

[0073] The signal failure indication field is used to indicate customer service failure.

[0074] The adjustment indication field is used to indicate the number of adjustment bytes in the payload that carry services, or to directly indicate whether each adjustment byte carries services. For example, the payload contains 4 adjustment bytes, and the adjustment indication field includes 3 bits. The adjustment indication field indicates the number of adjustment bytes that carry services by taking a value, such as: a value of "100" indicates that the current payload has 4 adjustment bytes that carry services, and a value of "001" indicates that the current payload has 1 adjustment byte that carries services. For another example, the payload contains 4 adjustment bytes, and the adjustment indication field includes 4 bits, each bit corresponding to an adjustment byte; if the bit is "1", it indicates that the corresponding adjustment byte carries services, and if the bit is "0", it indicates that the corresponding adjustment byte does not carry services; based on the number of bits set to "1" in the adjustment indication field, it can be known how many adjustment bytes in the payload that carry services are present.

[0075] The Add Adjustment Indication field indicates which adjustment byte should be added to carry the service. For example, if the Add Adjustment Indication field in the previous bearer frame has a value of "0000" and the Add Adjustment Indication field in the current bearer frame has a value of "0001," this indicates that the first "adjustment byte" should be added as the adjustment byte for the service.

[0076] The Decrease Adjustment Indication field indicates which bearer service's adjustment byte should be reduced. For example, if the Decrease Adjustment Indication field in the previous bearer frame has a value of "0000" and the Decrease Adjustment Indication field in the current bearer frame has a value of "1000", it means that the fourth "adjustment byte" should be reduced as the adjustment byte for the bearer service.

[0077] The CRC (Cyclic Redundancy Check) check field is used to detect or verify errors that may occur after the bearer frame is transmitted or stored.

[0078] It should be noted that the bearer frame overhead may not include the Add Adjustment Indication field or the Decrease Adjustment Indication field. As shown in Figure 12, there is only one Adjustment byte in the bearer frame (the last byte of the first D-block). In this case, the Adjustment Indication field only needs one bit to indicate whether the Adjustment byte carries customer services. Therefore, the Add Adjustment Indication field and the Decrease Adjustment Indication field are not required in the overhead.

[0079] In the previous example, the Adjustment Indication field is used to indicate the number of adjustment bytes for carrying services. In actual applications, the Adjustment Indication field can also be used to indicate the number of adjustment bytes for services not carrying services. When the number of adjustment bytes is fixed, the two are equivalent. For example, if the number of adjustment bytes is 9 bytes and the number of adjustment bytes for carrying services is 6 bytes, then the number of adjustment bytes for services not carrying services is equivalent to 3 bytes, and the two have the same true meaning. All of these should be within the scope of protection of the embodiments of the present application.

[0080] In the embodiment of the present application, the number n of data blocks can be determined based on the business rate and the service layer rate.

[0081] The number of data blocks n can be determined by the following steps:

[0082] Step S101. Determine the range of values ​​of the number of data blocks according to preset parameters, wherein the preset parameters may include at least one of the following: the number of bytes used for payload or overhead in the starting block of the bearer frame, the number of bytes used for payload or overhead in the ending block of the bearer frame, the number of overhead bytes in the bearer frame, the rate of the service, the service layer rate, the number of starting blocks in the bearer frame, and the number of ending blocks in the bearer frame.

[0083] Step S102: Determine the number n of the data blocks according to the value range of the number of data blocks.

[0084] For example, the preset parameters are substituted into the following formula (1), and the range of the number of data blocks is calculated by the following formula (1):

[0085] Among them, S B T represents the number of bytes used for payload or overhead in the S block in the bearer frame; B represents the number of bytes used for payload or overhead in the T block in the bearer frame; n represents the number of D blocks in the bearer frame; OH B Indicates the number of overhead bytes in the bearer frame; client Indicates the rate of the business; f server represents the service layer rate; S represents the number of S blocks in the bearer frame; T represents the number of T blocks in the bearer frame.

[0086] After determining the value range of the number of data blocks, the number n of data blocks carrying the frame can be selected from the range of the number of data blocks according to a preset rule.

[0087] Preset rules can include one or more of the following:

[0088] (1) The payload rate in the bearer frame containing n data blocks is greater than the service rate; (2) The number of payload bytes in the bearer frame containing n data blocks is greater than or equal to the service byte requirement; (3) The number of idle blocks inserted between two bearer frames is as close to an integer as possible; (4) The frame length of the bearer frame is as short as possible.

[0089] In the embodiment of the present application, the service is mapped into the bearer frame, and the service may include multiple types of services, and different types of services have different rates.

[0090] When the services mapped into the bearer frame include services of multiple rates, the number n of data blocks can be determined by the following steps:

[0091] Step S201. Determine the range of values ​​of the number of data blocks according to preset parameters, wherein the preset parameters may include at least one of the following: the number of bytes used as payload or overhead in the starting block of the bearer frame, the number of bytes used as payload or overhead in the ending block of the bearer frame, the number of overhead bytes in the bearer frame, the rate of the service, the service layer rate, the number of starting blocks in the bearer frame, and the number of ending blocks in the bearer frame.

[0092] Step S202: Select the number n of data blocks that meets the preset conditions from the range of data block numbers.

[0093] For example, if the service includes E1 service and STM-1 service, the rate of the STM-1 service with the higher service rate is used as f client Substitute into formula (1) to calculate the range of the number of data blocks.

[0094] In the embodiment of the present application, after determining the number n of the data blocks, the following steps are further included:

[0095] Step S301, determine the payload length of the bearer frame according to the number n of the data blocks; taking the bearer frame shown in Figure 9 as an example, when n=123, the bearer frame includes 125 code blocks (1 S block, 123 D blocks, 1 T7 block), and the payload length = 8*n=984 bytes.

[0096] Step S302: Determine an average number of idle blocks inserted between two bearer frames according to the number n of the data blocks, the payload length of the bearer frame, the rate of the service, and the service layer rate.

[0097] Due to the rate difference between the service layer and the service, it is usually necessary to insert idle blocks (i.e., idle blocks) to perform rate adaptation when the service is mapped into the service layer. The number of idle blocks can be calculated according to the following formula (2):

[0098] Among them, p BIndicates the payload length in the bearer frame (encapsulation container) in bytes; I indicates the number of idle blocks between bearer frames.

[0099] The number of free blocks I calculated by formula (2) can be understood as the average number of free blocks inserted between two bearer frames. Its value can be an integer or a non-integer. For example, if the number of free blocks I calculated is 1.5, then two free blocks can be inserted between some bearer frames, and one free block can be inserted between some bearer frames. Of course, there may also be some bearer frames without free blocks. Here, it is sufficient to control the average number of free blocks between bearer frames to be 1.5.

[0100] In an embodiment of the present application, after determining the number n of data blocks contained in the bearer frame, the length of the bearer frame can be determined, and then the number of adjustment bytes and / or padding bytes contained in the bearer frame can be determined based on the length of the bearer frame.

[0101] In the embodiment of the present application, the number of adjustment bytes in the bearer frame can be determined by the following steps:

[0102] Step S401: Determine the basic byte quantity of the service according to the payload rate of the bearer frame and the rate of the service.

[0103] The payload rate of the bearer frame can be calculated according to the following formula (3):

[0104] Among them, f payload Indicates the payload rate.

[0105] The basic number of bytes required for carrying the service can then be calculated based on the payload rate and the service rate.

[0106] The number of basic bytes can be calculated using the following formula (4):

[0107] Base Bytes = f client / (f payload / p B ). (4)

[0108] Step S402: Determine the number of deviation bytes of the service according to the rate deviation parameter of the service.

[0109] The rate deviation parameter may be a preset parameter, with the unit being ppm (parts per million).

[0110] The calculation process of the number of deviation bytes can be as follows:

[0111] First, calculate the adjustment range of one byte of the bearer frame. The adjustment range of one byte of the bearer frame = 1 / p B*1000000 Then, calculate the number of deviation bytes, which is the rate deviation parameter / adjustment range of 1 byte of the bearer frame.

[0112] Step S403: Determine the adjusted byte quantity in the bearer frame according to the basic byte quantity and the offset byte quantity of the service.

[0113] Specifically, subtract the basic byte number from the deviation byte number to determine the minimum number of bytes required for the business; add the basic byte number and the deviation byte number to determine the maximum number of bytes required for the business; subtract the maximum number of bytes required for the business from the minimum number of bytes required to determine the adjusted byte number corresponding to the business.

[0114] In an embodiment of the present application, the number of padding bytes in the bearer frame can be determined by the following steps: determining the number of padding bytes in the bearer frame according to the length of the payload in the bearer frame and the number of adjustment bytes.

[0115] That is, the payload length (p B ) minus the number of adjustment bytes to determine the number of padding bytes.

[0116] The service carrying method of an embodiment of the present application also includes: determining an adjustment indication value based on the deviation between the service rate and the payload rate of the carrying frame; in a consecutive number of the carrying frames, setting the adjustment indication field to the adjustment indication value, where a is an integer greater than or equal to 3.

[0117] The service carrying method of the embodiment of the present application further includes: when the adjustment indication value changes, in a consecutive number of the carrying frames, setting the adjustment indication field to the changed adjustment indication value, where a is an integer greater than or equal to 3.

[0118] Figure 11a is a schematic diagram of an overhead byte transfer process provided by an embodiment of the present application. As shown in Figure 11a, in the m-1 frame, the value of the adjustment indicator field in the overhead byte is "01," indicating that the number of adjustment bytes in the payload carrying the service is one. Upon receiving an adjustment indicator indicating the need for one additional adjustment byte to carry the service, the adjustment indicator value is determined to be "10," and starting with the m-th frame, the adjustment indicator field is set to "10" in multiple consecutive bearer frames.

[0119] To reduce the impact of bit errors, the present embodiment uses multiple transmissions and a majority judgment principle to determine the adjustment indicator value. As shown in Figure 11a, the adjustment indicator value changes only every four frames. In each frame where the lower two digits of the multiframe indicator are "00" (frame m), "01" (frame m+1), and "10" (frame m+2), the adjustment indicator value is the newly changed, yet-to-be-effective value "10" (relative to the adjustment indicator value "01" in frame m-1). The newly changed adjustment indicator value "10" is sent three times consecutively in frames m, m+1, and m+2. This value only takes effect in frame m+3, when the lower two digits of the multiframe sequence value are "11." The new adjustment indicator value is activated in frame m+3. At the receiving end, in frames m, m+1, and m+2, where the lower two digits of the multiframe sequence value are "00," "01," and "10," the adjustment indicator value uses the previous value (i.e., the adjustment indicator value "01" in frame m-1) for operation. The receiver extracts the justification indicator values ​​carried in frames m, m+1, and m+2. Even if a single bit error occurs, and the other two data are correct and identical, the correct justification indicator value can be determined based on majority judgment. For example, the justification indicator value in frame m+1 should be "10," but due to a single bit error, it becomes "00." However, the justification indicator values ​​in frames m and m+2 are both "10," free of bit errors. The receiver uses the majority judgment principle to determine the justification indicator value as "10," based on the one "00" and two "10s." The updated justification indicator value of "10" takes effect in frame m+3, and customer services are extracted from the justification byte area based on this value.

[0120] In the embodiment of the present application, the adjustment indication value is determined according to the deviation between the service rate and the payload rate of the bearer frame.

[0121] The service carrying method in the embodiment of the present application may further include the following steps:

[0122] When it is detected that the adjustment byte of the bearer service needs to be increased, the increase indication value is determined and the increase indication field is set to the increase indication value; when it is detected that the adjustment byte of the bearer service needs to be reduced, the decrease indication value is determined and the decrease indication field is set to the decrease indication value.

[0123] It should be noted that whether the justification byte for a bearer service needs to be increased or decreased is determined by the deviation between the service rate and the payload rate of the bearer frame. When the service rate increases relative to the payload rate of the bearer frame, the justification byte needs to be increased; when the service rate decreases relative to the payload rate of the bearer frame, the justification byte needs to be decreased.

[0124] Figure 11b is a schematic diagram of another overhead byte transmission process provided by an embodiment of the present application. As shown in Figure 11b, in the m-1 frame, the value of the adjustment indication field in the overhead byte is "1000", indicating that the fourth adjustment byte in the payload carries the service. An adjustment indication is currently received, indicating that one adjustment byte needs to be added to carry the service. Here, it is assumed that the first adjustment byte is added as the adjustment byte for carrying the service, and the adjustment indication value is determined to be "1001". Therefore, in the m-th frame, the adjustment indication field is set to "1001"; at the same time, in the m-th frame, the increase indication field is set to "0001" to indicate that the first adjustment byte is added as the adjustment byte for carrying the service. In the example of Figure 11b, the content of the "adjustment indication" and the "increase indication" are consistent, so it can be assumed that the values ​​in the adjustment indication field and the increase adjustment indication field are correct. If an error occurs in the CRC check, the error occurs in other fields.

[0125] In an embodiment of the present application, the length of the adjustment indication field is determined according to the number of the adjustment bytes in the bearer frame. For example, if the bearer frame includes 4 adjustment bytes, the length of the adjustment indication field can be set to 4 bits.

[0126] An embodiment of the present application provides a service receiving method, which can be applied to the second node shown in FIG5 . The method includes:

[0127] A bearer frame for carrying a service is received, wherein the bearer frame includes 1 start block, n data blocks and 1 end block, the bearer frame includes at least one of an overhead byte, a payload byte, an adjustment byte or a padding byte, and n is an integer greater than or equal to 1.

[0128] In an embodiment of the present application, the padding byte is located in at least one of the start block, data block, or end block of the bearer frame; the adjustment byte is located in at least one of the start block, data block, or end block of the bearer frame;

[0129] The payload byte is located in at least one of a start block, a data block or a stop block of the bearer frame.

[0130] In an embodiment of the present application, there are idle blocks between some or all adjacent bearer frames.

[0131] It is understood that there are multiple bearer frames, the multiple bearer frames have a front-to-back order, and some or all adjacent bearer frames have idle blocks between them. In other words, there may or may not be idle blocks between two adjacent bearer frames.

[0132] In the embodiment of the present application, the business includes the business of one or more customers.

[0133] In the embodiment of the present application, the service includes one or more services.

[0134] In an embodiment of the present application, the bearer frames of the same length can carry different types of services; for the bearer frames carrying different types of services, the number of idle blocks or the length of adjustment bytes inserted between the bearer frames may be different.

[0135] In the embodiment of the present application, the service is carried in the adjustment byte and / or the payload byte in the bearer frame.

[0136] In an embodiment of the present application, the number n of data blocks is determined based on at least one of the following: the number of bytes used for payload or overhead in the starting block, the number of bytes used for payload or overhead in the ending block, the number of overhead bytes in the bearer frame, the rate of the service, the service layer rate, the number of starting blocks in the bearer frame, and the number of ending blocks in the bearer frame.

[0137] In an embodiment of the present application, the overhead byte carries at least one of the following information: a multiframe indication field, a service type field, a timestamp field, an idle indication field, a signal failure indication field, an adjustment indication field, an increase indication field, a decrease indication field, or a CRC check field.

[0138] The service receiving method of an embodiment of the present application also includes: when the value of the received adjustment indication field changes, detecting the value of the adjustment indication field in a consecutive a carrier frames, where a is an integer greater than or equal to 3; when the values ​​of the adjustment indication fields of a / 2 or more a / 2 carrier frames are the same, using the same value of the adjustment indication field for service processing.

[0139] For example, when the adjustment indication field in the received mth frame bearer frame changes compared to the adjustment indication field in the m-1th frame bearer frame, the value of the adjustment indication field in the mth frame bearer frame to the m+a-1th frame bearer frame (a consecutive a frame bearer frames) is obtained; when the adjustment indication field in no less than a / 2 frames from the mth frame bearer frame to the m+a-1th frame bearer frame is the first adjustment indication value, the service bandwidth is adjusted according to the first adjustment indication value.

[0140] Please refer to Figure 14, which is a schematic diagram of an overhead byte transmission process provided by an embodiment of the present application. In the example of Figure 14, the contents carried by the overhead bytes corresponding to the five bearer frames (frame m-1 to frame m+3) received by the receiving end are shown. The value of the adjustment indication field in the m-1 frame is "01000011". In the m frame, it is detected that the value of the adjustment indication field has changed, and then the value of the adjustment indication field in the m frame to the m+2 frame (i.e., a=3) is obtained. The values ​​of the adjustment indication fields in the three frames from the m frame to the m+2 frame are all "11000010" (the first adjustment indication value), which is more than a / 2 frames. According to the majority decision principle, the service processing is performed according to "11000010", that is, the adjustment bytes of the bearer service are adjusted. It should be noted that as long as the values ​​of the adjustment indication fields of two of the three frames are consistent, the service processing can be performed according to the values ​​of the adjustment indication fields of the two frames.

[0141] The service receiving method in the embodiment of the present application further includes:

[0142] When the value of the received adjustment indication field increases and the value of the adjustment indication field matches the value of the increase indication field, business processing is performed according to the value of the adjustment indication field; when the value of the received adjustment indication field decreases and the value of the adjustment indication field matches the value of the decrease indication field, business processing is performed according to the value of the adjustment indication field.

[0143] In order to reduce the error impact caused by bit errors, the adjustment indication value may also be determined in conjunction with the value of the increase indication field (increase the adjustment indication value) or the value of the decrease indication field.

[0144] For example, when the CRC check range covers multiple fields such as "timestamp," "adjustment indication," "increase indication," and "decrease indication," if the CRC check result is an error, it indicates that errors have occurred in these fields, but it is not possible to determine which fields have errors. If the contents of the "adjustment indication" and the "increase indication" are consistent, for example, the "adjustment indication" increases by "1" compared to the previous frame, and the corresponding bit of the "increase indication" is also 1, then the value in the "adjustment indication" can be considered correct, and the error occurred in another field. If the contents of the "adjustment indication" and the "decrease indication" are consistent, for example, the "adjustment indication" decreases by "1" compared to the previous frame, and the corresponding bit of the "decrease indication" is also 1, then the value in the "adjustment indication" can be considered correct. If an error occurs in the CRC check, the error occurred in another field.

[0145] The solution provided in the embodiments of the present application is further described in detail below through several application examples.

[0146] Application Example 1:

[0147] This example first constructs a bearer frame (encapsulation container) for the E1 service according to the solution of the embodiment of the present application.

[0148] According to the SDH system standard, the E1 service rate is 2.048 Mbit / s, and the maximum service speed that can be transmitted in a time slot of a fine-grained frame is 10.3844 Mbit / s.

[0149] A timeslot in a fine-grained frame can carry up to four E1-rate customer services. In the example of Figure 9, the S block of the bearer frame is not used for payload and overhead, the T block has 7 bytes for payload, and the OH byte is 7 bytes long (starting from the first D block).

[0150] According to formula (1):

[0151] The solution is n≥8.73.

[0152] That is, the value range of the number of data blocks is n≥9.

[0153] It is worth noting that the bearer frame in this example carries 4 E1 services, so f client The rate needs to be calculated based on 4 E1 services.

[0154] Regarding the selection principle of the number n of D blocks, the following factors can be considered: satisfying formula (1); the number of idle blocks inserted between two bearer frames is as close to an integer as possible; the payload rate in the bearer frame is greater than the service rate; and the frame length of the bearer frame is as short as possible.

[0155] Based on the above principles, n=14 can be taken. In this case, the bearer frame includes 16 code blocks (1 S block, 14 D blocks, and 1 T7 block).

[0156] According to formula (2), the number of Idle blocks inserted after the bearer frame is:

[0157] I is rounded down to an integer, and the number of Idle blocks is 1, that is, each time an E1 service bearer frame (hereinafter referred to as E1 container) is sent, one Idle block is sent.

[0158] According to formula (3), the payload rate of E1 container is: The rate is greater than 8.192 Mbit / s for 4-channel E1 services, meeting the E1 service carrying requirements.

[0159] The rate of one byte in the payload of an E1 container is: 8.292 / 112 ≈ 0.074 (Mbit / s); the adjustment range of one byte in the payload of an E1 container is: 1 / 112*1000000 ≈ 8928 (ppm).

[0160] The calculation process for the number of alignment bytes and padding bytes included in the E1 container payload is as follows:

[0161] The E1 rate deviation is ±50ppm, and the Ethernet rate deviation is ±100ppm. Therefore, the maximum total deviation is ±150ppm. Considering the margin, the design is based on a deviation of ±300ppm, resulting in:

[0162] Number of basic bytes = E1 service rate / rate of 1 byte in payload = 2.048 / 0.074 ≈ 27.7 (bytes)

[0163] Deviation byte number = service rate deviation / 1 byte adjustment range in payload = 300ppm / 8928ppm ≈ 0.3 (bytes)

[0164] Based on 27.7-0.3=27.4 (bytes) and 27.7+0.3=28 (bytes), it can be seen that based on the lowest rate of E1 services, each E1 service requires at least 27 bytes. Based on the highest rate of E1 services, each E1 service requires at most 28 bytes. Therefore, each E1 requires 1 byte adjustment (28-27=1), and 4 E1 services require a total of 4 adjustment bytes, and no padding bytes are required.

[0165] The adjustment indication field in the overhead may use 4 bits, and each bit indicates whether the adjustment byte of an E1 service is used to carry the service.

[0166] For example, the four bits in the adjustment indication field represent whether the adjustment byte of one E1 service carries the service, "1" for carrying and "0" for not carrying. When the adjustment indication field takes the value "1000", it means that the adjustment byte of the 4th E1 service carries the service, and the other three channels do not carry the service; when the adjustment indication field takes the value "1001", it means that the adjustment bytes of the 1st and 4th E1 services carry the service, and the other two channels do not carry the service. The four bits in the increase indication information represent whether the adjustment byte of one E1 service increases compared with the previous frame, "1" for increase and "0" for no change. The four bits in the decrease indication information represent whether the adjustment byte of one E1 service decreases compared with the previous frame, "1" for decrease and "0" for no change.

[0167] As shown in the example of Figure 11b, the m-1 frame indicates that the adjustment byte of the 1st E1 service does not carry any service, while the m-th frame indicates that the adjustment byte of the 1st E1 service needs to carry any service. Therefore, the adjustment indication field and the increase indication field of the m-th frame have both changed relative to the m-1 frame (from "0" to "1").

[0168] Application Example 2:

[0169] This example first constructs a bearer frame (encapsulation container) for the STM-1 service according to the solution of the embodiment of the present application.

[0170] According to the SDH system standard, the STM-1 service rate is 155.52 Mbit / s, which can be transmitted in 16 fine-grained time slots. The speed of 16 time slots is 160 Mbit / s.

[0171] In the example of FIG8 , the S block carrying the frame contains 7 overhead bytes, and the T block has 7 bytes for payload.

[0172] According to formula (1): The solution is n≥30.4.

[0173] That is, the value range of the number of data blocks is n≥31.

[0174] Assume that n=61, the length of the bearer frame is 63 code blocks (1 S code block, 61 D code blocks, and 1 T7 code block). According to formula (2), the number of idle blocks to be inserted is calculated as:

[0175] I is rounded down to get I=1. Every time an STM-1 container (STM-1 service bearer frame) is sent, one Idle block is sent.

[0176] According to formula (3), the payload rate of the STM-1 container is:

[0177] The payload rate of the STM-1 container is greater than the STM-1 service rate of 155.52 Mbit / s, meeting the STM-1 service carrying requirements.

[0178] The rate of one byte in the STM-1 container payload is: 155.766 / 495 ≈ 0.3147 (Mbit / s). The justification range of one byte in the STM-1 container payload is: 1 / 495 * 1000000 ≈ 2020 (ppm). The number of justification bytes and padding bytes included in the STM-1 container payload is calculated as follows:

[0179] The rate deviation of STM-1 is ±4.6ppm, and the rate deviation of Ethernet is ±100ppm, so the maximum total deviation is ±105ppm. Considering the margin, the deviation is designed to be ±310ppm. That is:

[0180] The number of basic bytes = 155.52 / 0.3147 ≈ 494.2 (bytes); the number of deviation bytes = 310ppm / 2020ppm ≈ 0.15 (bytes). Based on 494.2-0.15=494.05 (bytes) and 494.2+0.15=494.35 (bytes), we know that at the lowest rate of STM-1 services, at least 494 bytes are required (494.05 bytes rounded down). At the highest rate of STM-1 services, at most 495 bytes are required (494.35 bytes rounded up). Therefore, STM-1 services require one byte of adjustment (495-494=1). The adjustment indication field can use one bit to indicate whether the adjustment byte carries a service, eliminating the need for padding bytes.

[0181] Application Example 3:

[0182] This example considers designing a unified container for E1 and STM-1 services. E1 and STM-1 services have different carrying efficiencies. When encapsulating them in containers of the same length, it is necessary to calculate the number of idle blocks to insert and adjust the byte length for different customer services to accommodate different service rates.

[0183] In the first case, n=123.

[0184] For E1 services, when n is 123, the encapsulation container includes 125 code blocks (1 S block, 123 D blocks, and 1 T7 block). In the example of Figure 9, the S block of the bearer frame is not used for overhead or payload, the T block has 7 bytes for payload, and the overhead length is 7 bytes (set in the first D block).

[0185] For E1 services (4 E1 services are mapped into one 10M timeslot), when n=123, according to formula (2), the number of idle blocks inserted after the bearer frame is:

[0186] I is rounded down to 26, that is, 26 idle blocks are sent for each E1 container sent.

[0187] According to formula (3), the payload rate is: The rate of one byte in the payload is: 8.202 / 984≈0.0083 (Mbit / s). Since the rate of 4-channel E1 services / the rate of one byte in the payload = 8.192 / 0.0083≈987 (bytes), which is greater than the payload length of 984 bytes, the current number of payload bytes cannot meet the carrying requirements of 4-channel E1 services. In this case, the number of idle ports can be adjusted to 25.

[0188] After adjusting the number of idles to 25, according to formula (3), the payload rate is: The rate of one byte of payload is 8.257 / 984 ≈ 0.0084 Mbit / s. The rate of four E1 services / the rate of one byte of payload is 8.192 / 0.0084 ≈ 975.2 bytes, which is less than the payload length of 984 bytes. The current E1 container payload length meets the carrying requirements of four E1 services.

[0189] The adjustment range of one byte in the payload of an E1 container is: 1 / 984*1000000≈1016 (ppm)

[0190] The calculation process for the number of adjustment bytes and padding bytes contained in the E1 container payload is as follows:

[0191] The rate deviation of E1 is ±50ppm, and the rate deviation of Ethernet is ±100ppm, so the maximum total deviation is ±150ppm. Considering the margin, the deviation is designed to be ±300ppm. That is:

[0192] The number of base bytes = 2.048 / 0.0084 ≈ 243.8 bytes; the number of deviation bytes = 300ppm / 1016ppm ≈ 0.3 bytes. Based on 243.8-0.3=243.5 bytes and 243.8+0.3=244.1 bytes, we know that at the lowest E1 rate, each E1 channel requires at least 243 bytes (243.5 bytes rounded down); at the highest E1 rate, each E1 channel requires at most 245 bytes (244.1 bytes rounded up). Therefore, each E1 service requires 2 (245-243=2) bytes as adjustment bytes. Four E1 services require a total of 8 adjustment bytes. The overhead adjustment indication field can be set to 8 bits, with each 2 bits indicating whether the two adjustment bytes of an E1 service carry service.

[0193] According to 984-245*4=4 (bytes), 4 padding bytes need to be set in the payload, as shown in Figure 13. In Figure 13, except for the overhead (OH) bytes, padding bytes, and adjustment bytes, the other bytes are the bearer area of ​​4 E1 services (i.e., payload bytes).

[0194] As shown in Figure 14, the Adjustment Indication field contains 8 bits. For example, bits 1 and 2 in the Adjustment Indication field indicate whether adjustment byte 1 and adjustment byte 2 of E1-channel 1 are used; "01" indicates that adjustment byte 1 of E1-channel 1 is not used, but adjustment byte 2 is used. For example, bits 3 and 4 in the Adjustment Indication field indicate whether adjustment byte 3 and adjustment byte 4 of E1-channel 2 are used; "00" indicates that adjustment byte 3 and adjustment byte 4 of E1-channel 2 are not used. For example, bits 5 and 6 in the Adjustment Indication field indicate whether adjustment byte 5 and adjustment byte 6 of E1-channel 3 are used; "00" indicates that adjustment byte 5 and adjustment byte 6 of E1-channel 3 are not used. For example, bits 7 and 8 in the Adjustment Indication field indicate whether adjustment byte 7 and adjustment byte 8 of E1-channel 4 are used; "11" indicates that adjustment byte 7 and adjustment byte 8 of E1-channel 4 are used.

[0195] In the example in Figure 14, the adjustment indication field of frame m-1 is "01000011," while the adjustment indication field of frame m is "11000010." This indicates that the adjustment byte status of E1 channels 1 and 4 has changed. E1 channel 1 has changed from carrying services through the first adjustment byte to carrying services through both the first and second adjustment bytes. E1 channel 4 has changed from carrying services through the seventh and eighth adjustment bytes to carrying services through only the seventh adjustment byte, with no services through the eighth adjustment byte. To minimize the impact of bit errors, this new change value is determined by a majority decision across frames m, m+1, and m+2. The value in two or more frames with the same value is used as the adjustment indication value for frame m+3, which takes effect in frame m+3.

[0196] For STM-1 services, when n is 123, the length of the encapsulation container is 125 blocks (1 S-code block, 123 D-code blocks, and 1 T7-code block). In the example of Figure 9, the S-block of the bearer frame is not used for payload and overhead, the T-block has 7 bytes for payload, and the OH byte is 7 bytes long (starting from the first D-block).

[0197] For STM-1 services, when n=123, the number of idle blocks inserted according to formula (2) is:

[0198] I is rounded down to an integer to obtain I=2, that is, every time an STM-1 container (STM-1 bearer frame) is sent, two Idle blocks are sent.

[0199] According to formula (3),

[0200] The payload rate of the STM-1 container is: The rate of one byte in the payload of an STM-1 container is: 156.04 / 984 ≈ 0.1586 (Mbit / s); the adjustment range of one byte in the payload of an STM-1 container is: 1 / 984*1000000 ≈ 1016 (ppm)

[0201] The calculation process for the number of alignment bytes and padding bytes contained in the payload of an STM-1 container is as follows:

[0202] The rate deviation of STM-1 is ±4.6ppm, and the rate deviation of Ethernet is ±100ppm, so the maximum total deviation is ±150ppm. Considering the margin, the deviation is designed to be 500ppm. That is:

[0203] The number of base bytes = 155.52 / 0.1586 ≈ 980.6 (bytes); the number of deviation bytes = 500ppm / 1016ppm ≈ 0.49 (bytes); based on 980.6-0.49=980.11 (bytes) and 980.6+0.49=981.09 (bytes), we know that at the minimum STM-1 rate, at least 980 bytes are required (980.11 bytes rounded down); at the maximum STM-1 rate, at most 982 bytes are required (981.09 bytes rounded up). Therefore, 2 (982-980=2) bytes of adjustment bytes are required. The overhead adjustment indicator field can be set to 2 bits. 2 (984-982=2) bytes of padding bytes are also required.

[0204] The second case, n=508.

[0205] For E1 services, when n is 508, the encapsulation container includes 510 code blocks (1 S block, 508 D blocks, and 1 T7 block). In the example of Figure 9, the S block of the bearer frame is not used for overhead or payload, the T block has 7 bytes for payload, and the overhead length is 7 bytes (set in the first D block).

[0206] For E1 services (4 E1 services are mapped into one 10M timeslot), when n=508, the number of idle blocks inserted after the bearer frame is calculated according to formula (2):

[0207] Assuming the number of idle blocks is 114, according to formula (3),

[0208] The payload rate of the E1 container is: The rate of one byte in the payload of an E1 container is: 8.198 / 4064≈0.002017 (Mbit / s). Based on 8.192 / 0.002017≈4061 (bytes), which is less than the payload length of 4064 bytes, the current E1 container payload length meets the carrying requirements of four E1 services.

[0209] The adjustment range of one byte in the payload of the E1 container is: 1 / 4064*1000000≈246 (ppm).

[0210] The rate deviation of E1 is ±50ppm, and the rate deviation of Ethernet is ±100ppm, so the maximum total deviation is ±150ppm. Considering the margin, the deviation is designed to be ±300ppm. That is:

[0211] The number of basic bytes = 2.048 / 0.002017 ≈ 1015.4; the number of deviation bytes = 300ppm / 246ppm ≈ 1.22 (bytes); based on 1015.4-1.22=1014.18 (bytes), 1015.4+1.22=1016.62 (bytes), and 1016.62*4=4066.48 (bytes) > 4064 (bytes), the E1 container payload length cannot meet the carrying requirements of 4 E1 services.

[0212] Then the number of idle blocks can be adjusted to 113. According to formula (3),

[0213] The payload rate of the E1 container is: The rate of one byte in the payload of the E1 container is: 8.211 / 4064≈0.002020 (Mbit / s); 8.192 / 0.002020≈4055.4 (bytes), which is less than the payload length of 4064 bytes. The current E1 container payload length meets the carrying requirements of four E1 services.

[0214] The adjustment range of one byte in the payload of the E1 container is: 1 / 4064*1000000≈246 (ppm).

[0215] The calculation process for the number of adjustment bytes and padding bytes included in the E1 container payload is as follows:

[0216] The rate deviation of E1 is ±50ppm, and the rate deviation of Ethernet is ±100ppm, so the maximum total deviation is ±150ppm. Considering the margin, the deviation is designed to be ±300ppm. That is:

[0217] The number of basic bytes = 2.048 / 0.002020 ≈ 1013.9; the number of deviation bytes = 300 ppm / 246 ppm ≈ 1.22 (bytes); based on 1013.9-1.22=1012.68 (bytes), 1013.9+1.22=1015.1 (bytes), and 1015.1*4=4060.4 (bytes)<4064 (bytes), the payload length of the E1 container meets the carrying requirements of 4 E1 services.

[0218] Therefore, at the lowest E1 rate, each E1 service requires at least 1012 bytes (1012.68 bytes rounded down). At the highest E1 rate, each E1 service requires at most 1016 bytes (1015.1 bytes rounded up). Therefore, each E1 service requires 4 (1016 - 1012 = 4) adjustment bytes, for a total of 16 bytes for four E1 services. The adjustment indication field can be set to 16 bits, with each 4 bits indicating whether the 4 adjustment bytes of an E1 service carry a service.

[0219] For STM-1 services, when n=508, the encapsulation container includes 510 code blocks (1 S block, 508 D blocks, and 1 T7 block). In the example of FIG9 , the S block of the bearer frame is not used for overhead and payload, the T block has 7 bytes for payload, and the overhead length is 7 bytes (set in the first D block).

[0220] For STM-1 services, when n=508, the number of idle blocks inserted after the bearer frame is calculated according to formula (2):

[0221] I is rounded down to get I=16, that is, every time an STM-1 container (STM-1 bearer frame) is sent, 16 Idle blocks are sent.

[0222] According to formula (3),

[0223] The payload rate of the STM-1 container is: The rate of one byte in the payload of an STM-1 container is: 155.602 / 4064 ≈ 0.03829 (Mbit / s); the adjustment range of one byte in the payload of an STM-1 container is: 1 / 4064*1000000 ≈ 246 (ppm).

[0224] The calculation process for the number of alignment bytes and padding bytes contained in the payload of an STM-1 container is as follows:

[0225] The rate deviation of STM-1 is ±4.6ppm, and the rate deviation of Ethernet is ±100ppm, so the maximum total deviation is ±105ppm. Considering the margin, the deviation is designed to be ±400ppm. That is:

[0226] The number of base bytes = 155.52 / 0.03829 ≈ 4061.6 (bytes); the number of deviation bytes = 400ppm / 246ppm ≈ 1.63 (bytes). Based on 4061.6 - 1.63 = 4059.97 (bytes) and 4061.6 + 1.63 = 4063.23 (bytes), we know that at the minimum STM-1 rate, at least 4059 bytes are required (4059.97 bytes rounded down); at the maximum STM-1 rate, at most 4064 bytes are required (4063.23 bytes rounded up). Therefore, 5 (4064 - 4059 = 5) bytes are required as adjustment bytes. The overhead adjustment indication field can use 5 bits to indicate whether the entire byte is used to carry the service. No padding bytes are required.

[0227] The above examples are several specific implementation methods of this application, taking the carrying of E1 and STM-1 services as examples. Specifically, in the application, it can also carry T1 services (SDH defines the T1 service rate as 1.544M), VC12, V3, V4, STM-4, STM-16 and other fixed-rate CBR services. The carrying frame format can have various formats in the implementation, the number of D blocks can also have various different values, the specific type of T can be any type from T0 to T7, and the overhead information has specific different forms and contents, but these changes are within the scope of protection of this application. There may be various different forms in different application scenarios and different specific forms of equipment, and these different forms are all within the scope of protection of this application.

[0228] Application Example 4:

[0229] This example constructs another bearer frame (encapsulation container) of an E1 service according to the solution of the embodiment of the present application.

[0230] According to the SDH system standard, the E1 service rate is 2.048 Mbit / s, and the maximum service speed that can be transmitted in a time slot of a fine-grained frame is 10.3844 Mbit / s.

[0231] A timeslot in a fine-grained frame can carry up to four E1-rate customer services. In the example of Figure 9, the S block of the bearer frame is not used for payload and overhead, the T block has 7 bytes for payload, and the OH byte is 7 bytes long (starting from the first D block).

[0232] Assuming n=13, the bearer frame includes 15 code blocks (1 S block, 13 D blocks, and 1 T7 block).

[0233] According to formula (2), the number of Idle blocks inserted after the bearer frame is:

[0234] The number of Idle blocks is set to 0.5, that is, for every two E1 service bearer frames (hereinafter referred to as E1 containers) sent, one Idle block is sent.

[0235] According to formula (3), the payload rate of E1 container is: The rate is greater than 8.192 Mbit / s for 4-channel E1 services, meeting the E1 service carrying requirements.

[0236] The rate of one byte in the payload of an E1 container is: 8.4456 / 104 ≈ 0.08121 (Mbit / s); the adjustment range of one byte in the payload of an E1 container is: 1 / 104 * 1000000 ≈ 9615 (ppm).

[0237] The calculation process for the number of alignment bytes and padding bytes included in the E1 container payload is as follows:

[0238] The E1 rate deviation is ±50ppm, and the Ethernet rate deviation is ±100ppm. Therefore, the maximum total deviation is ±150ppm. Designing with a deviation of ±200ppm yields:

[0239] Number of basic bytes = E1 service rate / rate of 1 byte in payload = 2.048 / 0.08121 ≈ 25.2 (bytes); Number of deviation bytes = service rate deviation / adjustment range of 1 byte in payload = 200ppm / 9615ppm ≈ 0.2 (bytes); Based on 25.2-0.2=25 (bytes) and 25.2+0.2=25.4 (bytes), it can be seen that based on the minimum rate of E1 service, each E1 service requires at least 25 bytes. Based on the maximum rate of E1 service, each E1 service requires at most 26 bytes. Therefore, each E1 service requires one byte adjustment (26-25=1). Four E1 services require a total of four adjustment bytes, and no padding bytes are required.

[0240] The adjustment indication field in the overhead may use 4 bits, and each bit indicates whether the adjustment byte of an E1 service is used to carry the service.

[0241] The embodiment of the present application further provides an electronic device, as shown in FIG15 , wherein the electronic device 1400 includes:

[0242] One or more processors 1410; a memory 1420 having one or more programs stored thereon. When the one or more programs are executed by the one or more processors 1410, the one or more processors 1410 implement:

[0243] A service carrying method applied to the first node; or

[0244] A service receiving method applied to the second node.

[0245] The memory 1420 is a non-transient network system that can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory 1420 may include a high-speed random access memory and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory 1420 may optionally include a memory 1420 remotely located relative to the processor 1410, and these remote memories 1420 may be connected to the processor 1410 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0246] The memory 1420 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 1420 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1420 and is called by the processor 1410 to execute the methods of the embodiments of this application.

[0247] The processor 1410 can be implemented using a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application.

[0248] In some embodiments, the electronic device further comprises:

[0249] Input / output interface, used to realize information input and output; communication interface, used to realize communication interaction between this device and other devices, which can be realized through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.); bus, which transmits information between the various components of the device (such as processor 1410, memory 1420, input / output interface and communication interface); among which the processor 1410, memory 1420, input / output interface and communication interface can realize communication connection with each other within the device through the bus.

[0250] An embodiment of the present application further provides a computer-readable storage medium storing computer-executable instructions for executing:

[0251] A service carrying method applied to a first node; or a service receiving method applied to a second node.

[0252] An embodiment of the present application further provides a computer program product, including a computer program or computer instructions, wherein the computer program or computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer program or computer instructions from the computer-readable storage medium, and the processor executes the computer program or computer instructions, so that the computer device performs the following operations:

[0253] A service carrying method applied to a first node; or a service receiving method applied to a second node.

[0254] The system architecture and application scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. Those skilled in the art will appreciate that with the evolution of the system architecture and the emergence of new application scenarios, the technical solutions provided in the embodiments of the present application are equally applicable to similar technical problems.

[0255] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

[0256] Those skilled in the art will appreciate that all or some of the steps and systems in the method disclosed above can be implemented as software, firmware, hardware, and appropriate combinations thereof. Some physical components or all physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable medium, and the computer-readable medium can include computer storage media (or non-transitory media) and communication media (or temporary media). As known to those skilled in the art, the term computer storage media is included in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data) and is volatile and non-volatile, removable, and non-removable. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory, or other memory technology, CD-ROM, digital versatile disks (DVD), or other optical disk storage, magnetic cassettes, magnetic tapes, disk storage, or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, as is well known to those skilled in the art, communication media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.

[0257] The above description of some embodiments of the present application with reference to the accompanying drawings does not limit the scope of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and essence of the present application shall be within the scope of the present application.

Claims

1. A service carrying method, the method comprising: The service is mapped into a bearer frame, wherein the bearer frame includes 1 start block, n data blocks and 1 end block, and the bearer frame includes at least one of an overhead byte, a payload byte, an adjustment byte or a padding byte, and n is an integer greater than or equal to 1.

2. The method according to claim 1, wherein The padding byte is located in at least one of the start block, data block or end block of the bearer frame; the adjustment byte is located in at least one of the start block, data block or end block of the bearer frame; and the payload byte is located in at least one of the start block, data block or end block of the bearer frame.

3. The method according to claim 1, wherein There is an idle block between some or all of the adjacent two bearer frames.

4. The method according to claim 1, wherein The number n of data blocks is determined by the following steps: Determining a value range of the number of data blocks according to preset parameters, wherein the preset parameters include at least one of the following: the number of bytes used as payload or overhead in the start block, the number of bytes used as payload or overhead in the end block, the number of overhead bytes in the bearer frame, the rate of the service, the service layer rate, the number of start blocks in the bearer frame, and the number of end blocks in the bearer frame; The number n of the data blocks is determined according to the value range of the number of data blocks.

5. The method according to claim 4, wherein After determining the number n of the data blocks, the method further includes: Determining the payload length of the bearer frame according to the number n of the data blocks; An average number of idle blocks inserted between two bearer frames is determined according to the number n of the data blocks, the payload length of the bearer frame, the rate of the service and the service layer rate.

6. The method according to claim 1, wherein The service is mapped into the adjustment byte and / or the payload byte in the bearer frame.

7. The method according to claim 1, wherein The business includes the business of one or more customers.

8. The method according to claim 1, wherein The service includes one or more services.

9. The method according to claim 8, wherein The bearer frames of the same length carry different types of services; For the bearer frames carrying different types of services, the number of idle blocks or the length of adjustment bytes inserted between the bearer frames are different.

10. The method according to claim 1, wherein The number of the justification bytes in the bearer frame is determined by: Determining the basic byte quantity of the service according to the payload rate of the bearer frame and the rate of the service; Determining the number of deviation bytes of the service according to the rate deviation parameter of the service; The adjusted byte quantity in the bearer frame is determined according to the basic byte quantity and the offset byte quantity of the service.

11. The method according to claim 10, wherein: The number of the padding bytes in the bearer frame is determined by the following steps: The number of the padding bytes in the bearer frame is determined according to the payload length of the bearer frame and the number of the adjustment bytes.

12. The method according to claim 1, wherein The overhead byte carries at least one of the following: a multiframe indication field, a service type field, a timestamp field, a load indication field, a signal failure indication field, an adjustment indication field, an increase indication field, a decrease indication field or a CRC check field.

13. The method according to claim 12, wherein: The method further comprises: When the adjustment indication value changes, the adjustment indication field is set to the changed adjustment indication value in a consecutive number of the bearer frames, where a is an integer greater than or equal to 3.

14. The method according to claim 12, wherein: The length of the adjustment indication field is determined according to the number of the adjustment bytes in the bearer frame.

15. A service receiving method, the method comprising: A bearer frame for carrying a service is received, wherein the bearer frame includes 1 start block, n data blocks and 1 end block, the bearer frame includes at least one of an overhead byte, a payload byte, an adjustment byte or a padding byte, and n is an integer greater than or equal to 1.

16. The method according to claim 15, wherein The padding byte is located in at least one of the start block, data block or end block of the bearer frame; the adjustment byte is located in at least one of the start block, data block or end block of the bearer frame; and the payload byte is located in at least one of the start block, data block or end block of the bearer frame.

17. The method according to claim 15, wherein: There is an idle block between some or all of the adjacent two bearer frames.

18. The method according to claim 15, wherein The service is carried in the adjustment byte and / or the payload byte in the bearer frame.

19. The method according to claim 15, wherein The business includes the business of one or more customers.

20. The method according to claim 15, wherein The service includes one or more services.

21. The method according to claim 20, wherein The bearer frames of the same length carry different types of services; For the bearer frames carrying different types of services, the number of idle blocks or the length of adjustment bytes inserted between the bearer frames are different.

22. The method according to claim 15, wherein The number n of data blocks is determined based on at least one of the following: the number of bytes used for payload or overhead in the starting block, the number of bytes used for payload or overhead in the ending block, the number of overhead bytes in the bearer frame, the rate of the service, the service layer rate, the number of starting blocks in the bearer frame, and the number of ending blocks in the bearer frame.

23. The method according to claim 15, wherein The overhead byte carries at least one of the following information: a multiframe indication field, a service type field, a timestamp field, an idle indication field, a signal failure indication field, an adjustment indication field, an increase indication field, a decrease indication field or a CRC check field.

24. The method according to claim 23, wherein The method further comprises: When the value of the received adjustment indication field changes, detecting the value of the adjustment indication field in a consecutive bearer frames, where a is an integer greater than or equal to 3; When the values ​​of the adjustment indication fields of a / 2 or more bearer frames are the same, the same value of the adjustment indication field is used for service processing.

25. The method according to claim 23, wherein The method further comprises: When the value of the received adjustment indication field increases, and the value of the adjustment indication field matches the value of the increase indication field, performing service processing according to the value of the adjustment indication field; When the value of the received adjustment indication field decreases, and the value of the adjustment indication field matches the value of the decrease indication field, service processing is performed according to the value of the adjustment indication field.

26. An electronic device comprising: one or more processors; A memory having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the following: The service carrying method according to any one of claims 1 to 14; or, The service receiving method according to any one of claims 15 to 25.

27. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the computer program performs the following steps: The service carrying method according to any one of claims 1 to 14; or, The service receiving method according to any one of claims 15 to 25.

28. A computer program product comprising a computer program, wherein when the computer program is executed by a processor: The service carrying method according to any one of claims 1 to 14; or, The service receiving method according to any one of claims 15 to 25.