WO2020132928A1 - 数据传输方法及装置 - Google Patents

数据传输方法及装置 Download PDF

Info

Publication number
WO2020132928A1
WO2020132928A1 PCT/CN2018/123825 CN2018123825W WO2020132928A1 WO 2020132928 A1 WO2020132928 A1 WO 2020132928A1 CN 2018123825 W CN2018123825 W CN 2018123825W WO 2020132928 A1 WO2020132928 A1 WO 2020132928A1
Authority
WO
WIPO (PCT)
Prior art keywords
link
slice
containers
data
container
Prior art date
Application number
PCT/CN2018/123825
Other languages
English (en)
French (fr)
Inventor
龚兆明
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2018/123825 priority Critical patent/WO2020132928A1/zh
Priority to CN201880100468.4A priority patent/CN113228538B/zh
Priority to EP18944729.5A priority patent/EP3883154A4/en
Publication of WO2020132928A1 publication Critical patent/WO2020132928A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1652Optical Transport Network [OTN]

Definitions

  • the present application relates to the field of optical communication technology, and in particular, to a data transmission method and device.
  • Optical transport network as the basic bearer network requires efficient and flexible networks, but in specific implementations, there are a lot of bandwidth fragments in the optical transport network, which affects network utilization and flexibility of service deployment .
  • an optical channel data unit (ODU) virtual concatenation technology is used to solve the fragmentation problem.
  • ODU optical channel data unit
  • an independent ODU frame structure synchronized with N frame headers is interleaved and multiplexed into a virtual container with a larger capacity.
  • the virtual container can be used to carry large-grain services (also can be understood as large-bandwidth services).
  • large-grain services also can be understood as large-bandwidth services.
  • each ODU is transmitted independently.
  • the large particle service is recovered from the virtual container.
  • the minimum container bandwidth of the OTN system is 1.24416Gbps
  • the virtual containers must be cascaded at a granularity of 1.24416Gbps, so small bandwidth fragments cannot be used.
  • the present application discloses a data transmission method and device, which can effectively utilize the bandwidth fragmentation in the optical transmission network and improve the utilization rate of the link bandwidth.
  • an embodiment of the present application provides a data transmission method.
  • the method is applied to an optical transmission network.
  • the method includes: determining a total bandwidth of N slice containers according to a reference unit, where the reference unit is transmission The minimum bandwidth of the data service, the total bandwidth of the N slice containers is an integer multiple of the reference unit, and each slice container includes slice data, the slice data is obtained by slicing the data Data, the N is an integer greater than or equal to 2; M links carrying the N slice containers are determined according to the total bandwidth of the N slice containers and available link resources, and the M is greater than or equal to 1 An integer of; carrying the N slice containers through the M links to send the data to the receiving end.
  • the total bandwidth of N slice containers is determined by a reference unit, for example, the bandwidth of the N slice containers may be an integer multiple of the reference unit, and the reference unit may be the minimum bandwidth of the data transmission service, such as data
  • the minimum bandwidth of the service is 2Mbps
  • the reference unit can be 2Mbps
  • the total bandwidth of the N slice containers can be (2n)Mbps (n is an integer greater than or equal to 1), thus avoiding the necessity of 1.24416 Gbps as a unit; because the total bandwidth of the N slice containers can be less than 1.24416Gbps, it also avoids the waste of the small bandwidth link because the small bandwidth link is insufficient to carry the N slice containers, and thus effectively uses Small bandwidth links in optical transport networks (which can also be understood as small bandwidth fragments) improve the utilization of small bandwidth links.
  • each slice container further includes a link identifier, and the link identifier is an identifier of a link that carries each slice container.
  • each slice container includes a link identifier, so that the data transmission device can effectively identify the slice containers carried by the M links.
  • each slice container further includes a sequence identifier, and the sequence identifier is obtained by encoding the N slice containers according to a preset rule, and the The sequence identifier is used to indicate the ordering of the N slice containers.
  • each slice container includes a sequence identifier, so that the receiving end can sort the slice data according to the sequence identifier, thereby recovering the data, that is, continuous data sent by the data transmission device, thereby improving the receiving end Data recovery efficiency.
  • the M links include a first link and a second link; the M links carry the N links
  • the slicing container includes: carrying K slicing containers out of the N slicing containers according to the bandwidth ratio of the first link and the second link; wherein, the slicing containers carried on the first link
  • the number and the number of slice containers carried on the second link are determined by the ratio of the bandwidths of the first link and the second link, where K ⁇ the N.
  • the number of slice containers carried on the first link and the number of slice containers carried on the second link can be determined by the bandwidth ratio of the first link and the second link.
  • the bandwidth of the first link and the second link improves the utilization rate of the bandwidth, thereby improving the utilization rate of the network bandwidth in the optical transmission network.
  • the K slices of the N slice containers are carried according to the bandwidth ratio of the first link and the second link Containers, including: sequentially allocating the K slice containers to the first link and according to the bandwidth ratio of the first link and the second link, and the sequence identifier included in each slice container The second link; wherein, the slice container carried on the first link is at least one first slice container, and the slice container carried on the second link is at least one second slice container; The first link carries the first slice container, and the second link carries the second slice container.
  • the K slice containers of the N slice containers are carried according to the bandwidth ratio of the first link and the second link Including: determining the number of slice containers carried on the first link and the second link according to the bandwidth ratio of the first link and the second link, and the N; wherein, the The number of slice containers carried on the first link is the first number, and the number of slice containers carried on the second link is the second number; the first number of slice containers is carried through the first link, and The second number of slice containers are carried through the second link.
  • the method further includes: updating the M according to the total bandwidth of the N slice containers and the available link resources; wherein, the updated M is equal to the M+A before the update, or the updated M Equal to the MB before the update, the A is an integer greater than or equal to 1, and the B is an integer greater than or equal to 1.
  • M in the process of carrying N slice containers through M links, M may also be updated according to the total bandwidth of the N slice containers and the available link resources.
  • links in the process of carrying N slice containers through M links, links can also be added or deleted, thereby dynamically adjusting bandwidth and improving the flexibility of allocating slice containers.
  • an embodiment of the present application further provides a data transmission method.
  • the method is applied to an optical transmission network.
  • the method includes: receiving N slice containers carried by M sending links through M links; wherein, the The total bandwidth of the N slicing containers is an integer multiple of the reference unit, and the reference unit is the minimum bandwidth of the data transmission service, and each slicing container includes slicing data, and the slicing data is after slicing the data
  • the obtained data, and each slice container further includes a sequence identifier, where N is an integer greater than or equal to 2; sort the N slice containers according to the sequence identifier to obtain the data.
  • the slice container includes the sequence identifier, so that the receiving end can effectively recover data after receiving N slice containers, thereby improving the efficiency of data recovery.
  • the M links include a first link and a second link, and the number of slice containers carried on the first link is different from the second link
  • the number of slice containers carried on the road is determined by the bandwidth ratio of the first link and the second link.
  • each slicing container further includes a link identifier, and the link identifier is used to indicate an identifier of a link that carries each slicing container .
  • an embodiment of the present application provides a data transmission apparatus, including: a first determining unit, configured to determine a total bandwidth of N slice containers according to a reference unit, where the reference unit is a minimum service for transmitting data Bandwidth, the total bandwidth of the N slice containers is an integer multiple of the reference unit, and each slice container includes slice data, the slice data is data obtained by slicing the data, the N Is an integer greater than or equal to 2; a second determining unit, configured to determine M links carrying the N slice containers according to the total bandwidth of the N slice containers and available link resources, where M is greater than or equal to An integer equal to 1; a sending unit, configured to carry the N slice containers through the M links to send the data to the receiving end.
  • each slice container further includes a link identifier, and the link identifier is an identifier of a link that carries each slice container.
  • each slice container further includes a sequence identifier, and the sequence identifier is obtained by encoding the N slice containers according to a preset rule, and the The sequence identifier is used to indicate the ordering of the N slice containers.
  • the M links include a first link and a second link; the sending unit carries the N through the M links Slice containers, specifically used to carry K slice containers out of the N slice containers according to the bandwidth ratio of the first link and the second link; wherein, the slices carried on the first link
  • the number of containers and the number of slicing containers carried on the second link are determined by the ratio of the bandwidth of the first link and the second link, where K ⁇ the N.
  • the sending unit is specifically configured to use the bandwidth ratio of the first link and the second link, and each slice The sequence identifier included in the container sequentially allocates the K slice containers to the first link and the second link; wherein, the slice container carried on the first link is at least one first slice container , The slice container carried on the second link is at least one second slice container; and the first slice container is carried through the first link, and the second is carried through the second link Slice container.
  • the sending unit is specifically configured to determine the value according to the bandwidth ratio of the first link and the second link, and the N The number of slice containers carried on the first link and the second link; wherein, the number of slice containers carried on the first link is the first number, and the number of slice containers carried on the second link A second number; and carrying the first number of slice containers through the first link, and carrying the second number of slice containers through the second link.
  • the apparatus further includes: a link processing unit, configured to update according to the total bandwidth of the N slice containers and the available link resources The M; wherein, the updated M is equal to the M+A before the update, or the updated M is equal to the MB before the update, the A is an integer greater than or equal to 1, and the B is greater than Or an integer equal to 1.
  • a link processing unit configured to update according to the total bandwidth of the N slice containers and the available link resources The M; wherein, the updated M is equal to the M+A before the update, or the updated M is equal to the MB before the update, the A is an integer greater than or equal to 1, and the B is greater than Or an integer equal to 1.
  • the data transmission device in the embodiments of the present application may also be understood as a sending end.
  • an embodiment of the present application provides a receiving end, including: a receiving unit, configured to receive N slicing containers carried by the sending end through M links; wherein the total bandwidth of the N slicing containers is An integer multiple of the reference unit, the reference unit is the minimum bandwidth of the data transmission service, and each slice container includes slice data, the slice data is data obtained by slicing the data, and each of the The slice container further includes a sequence identifier, where N is an integer greater than or equal to 2; a sorting unit is configured to sort the N slice containers according to the sequence identifier to obtain the data.
  • the M links include a first link and a second link, and the number of slice containers carried on the first link is different from the second link
  • the number of slice containers carried on the road is determined by the bandwidth ratio of the first link and the second link.
  • each slice container further includes a link identifier, and the link identifier is used to indicate an identifier of a link that carries each slice container .
  • an embodiment of the present application further provides a data transmission device, including a processor, a memory, and an optical module, the processor and the memory are coupled, and the processor is used to run instructions or programs in the memory,
  • the processor is configured to determine a total bandwidth of N slice containers according to a reference unit; and determine M links carrying the N slice containers according to the total bandwidth of the N slice containers and available link resources; wherein ,
  • the reference unit is the minimum bandwidth of the data transmission service, the total bandwidth of the N slice containers is an integer multiple of the reference unit, and each slice container includes slice data, the slice data is For data obtained by slicing data, the N is an integer greater than or equal to 2, and the M is an integer greater than or equal to 1;
  • the optical module is coupled to the processor, and the optical module is used to pass The M links carry the N slice containers to send the data to the receiving end.
  • the optical module carries the N slice containers through the M links, and is specifically used to The bandwidth ratio of the second link carries K slice containers of the N slice containers; wherein, the number of slice containers carried on the first link and the number of slice containers carried on the second link The number is determined by the ratio of the bandwidth of the first link and the second link, where K ⁇ the N.
  • the optical module is specifically configured to use the bandwidth ratio of the first link and the second link, and each slice The sequence identifier included in the container sequentially allocates the K slice containers to the first link and the second link; wherein, the slice container carried on the first link is at least one first slice container , The slice container carried on the second link is at least one second slice container; and the first slice container is carried through the first link, and the second is carried through the second link Slice container.
  • the optical module is specifically configured to determine the value according to the bandwidth ratio of the first link and the second link, and the N The number of slice containers carried on the first link and the second link; wherein, the number of slice containers carried on the first link is the first number, and the number of slice containers carried on the second link A second number; and carrying the first number of slice containers through the first link, and carrying the second number of slice containers through the second link.
  • the processor is further configured to update the M according to the total bandwidth of the N slice containers and the available link resources; wherein, The updated M is equal to the M+A before the update, or the updated M is equal to the MB before the update, the A is an integer greater than or equal to 1, and the B is an integer greater than or equal to 1.
  • the data transmission device in the embodiments of the present application may also be understood as a sending end.
  • an embodiment of the present application further provides a receiving end, including a processor, a memory, and an optical module, the processor and the optical module are coupled, and the optical module is configured to receive the sending end through M links N slice containers carried; wherein the total bandwidth of the N slice containers is an integer multiple of the reference unit, the reference unit is the minimum bandwidth of the data transmission service, and each slice container includes slice data,
  • the slicing data is data obtained by slicing the data, and each slicing container further includes a sequence identifier, the N is an integer greater than or equal to 2; the processor and the memory are coupled, the The processor is used to run a program or instruction in the memory, and perform the steps of sorting the N slice containers according to the sequence identifier to obtain the data.
  • the M links include a first link and a second link, and the number of slice containers carried on the first link is different from the second link The number of slice containers carried on the road is determined by the bandwidth ratio of the first link and the second link.
  • each slice container further includes a link identifier, and the link identifier is used to indicate an identifier of a link that carries each slice container .
  • an embodiment of the present application provides a data transmission system.
  • the data transmission system includes a sending end and a receiving end, and the sending end and the receiving end are connected through an optical transmission network; wherein, the sending end, It is used to determine the total bandwidth of N slice containers according to the reference unit, and determine M links carrying the N slice containers according to the total bandwidth of the N slice containers and available link resources, where M is greater than or An integer equal to 1, and carrying the N slice containers through the M links to send the data to the receiving end; wherein the reference unit is the minimum bandwidth of the data transmission service, and the N slices
  • the total bandwidth of the container is an integer multiple of the reference unit, and each slicing container includes slice data, the slice data is data obtained by slicing the data, and the N is an integer greater than or equal to 2.
  • M is an integer greater than or equal to 1; the receiving end is used to receive N slice containers carried by the sending end through the M links, and sort the N slice containers to Get the data.
  • an embodiment of the present application provides a computer-readable storage medium, in which instructions are stored in a computer-readable storage medium, which when executed on a computer, causes the computer to execute the method described in the above aspects.
  • an embodiment of the present application provides a computer program product including instructions, which when run on a computer, causes the computer to execute the methods described in the above aspects.
  • FIG. 1 is a schematic diagram of a data transmission system provided by an embodiment of the present application.
  • FIG. 2 is a schematic diagram of another data transmission system provided by an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of a data transmission device according to an embodiment of the present application.
  • FIG. 4 is a schematic flowchart of a data transmission method according to an embodiment of the present application.
  • FIG. 5 is a schematic diagram of a format of a slice container provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of a slice allocation process provided by an embodiment of the present application.
  • FIG. 7 is a schematic diagram of another slice allocation process provided by an embodiment of the present application.
  • FIG. 8 is a schematic diagram of another slice allocation process provided by an embodiment of the present application.
  • FIG. 9 is a schematic diagram of another slice allocation process provided by an embodiment of the present application.
  • FIG. 10 is a schematic diagram of a sorting process provided by an embodiment of the present application.
  • FIG. 11 is a schematic diagram of a line container format provided by an embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of a sending end according to an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of another sending end according to an embodiment of the present application.
  • FIG. 14 is a schematic structural diagram of a receiving end provided by an embodiment of the present application.
  • At least one (item) refers to one or more
  • “multiple” refers to two or more
  • “at least two (items)” refers to two or three And more than three
  • "and/or” used to describe the association relationship of the associated object, indicating that there can be three kinds of relationships, for example, "A and/or B” can mean: only A, only B and A And B three cases, where A, B can be singular or plural.
  • the character “/” generally indicates that the related object is a "or” relationship.
  • “At least one of the following” or a similar expression refers to any combination of these items, including any combination of a single item or a plurality of items.
  • At least one (a) of a, b, or c can be expressed as: a, b, c, "a and b", “a and c", “b and c", or "a and b and c" ", where a, b, c can be a single or multiple.
  • FIG. 1 is a schematic diagram of a data transmission system according to an embodiment of the present application.
  • the data transmission system may include a sending end and a receiving end, and the sending end and the receiving end may transmit data and the like through an optical transmission network.
  • the sending end and the receiving end may be transmission devices, where the transmission devices may include OTN transmission devices, wavelength division transmission devices, and optical terminals, optical modems, optical fiber transceivers, optical switches, and quasi-synchronous digital Series (plesiochronous digital hierarchy, PDH), synchronous digital hierarchy (synchronous digital (hierarchy, SDH), packet transport network (packet transport network, PTN) and other types of equipment.
  • the transmission devices may include OTN transmission devices, wavelength division transmission devices, and optical terminals, optical modems, optical fiber transceivers, optical switches, and quasi-synchronous digital Series (plesiochronous digital hierarchy, PDH), synchronous digital hierarchy (synchronous digital (hierarchy, SDH), packet transport network (packet transport network, PTN) and other types of equipment.
  • the sending end can be used to obtain data from the first client and determine the total bandwidth of N slice containers according to a reference unit; wherein the reference unit is the minimum bandwidth of the data transmission service and the total bandwidth of the N slice containers is An integer multiple of the reference unit, and each slice container includes slice data.
  • the N slice containers can be sent out through different links (such as M links).
  • the receiving end processes the N slice containers to recover the data, and then sends the data to the second client.
  • the first client may be a client device port connected to a transmission device (such as a sending end).
  • the first client may include a router device, a storage device, and a video device (including a video capture device, etc.).
  • the embodiment does not limit the specific type of the first client.
  • the second client may be a client device port connected to a transmission device (such as a receiving end).
  • the second client may include a router device, a storage device, a video device, and so on.
  • the type is not limited.
  • FIG. 2 is a schematic diagram of another data transmission system provided by an embodiment of the present application.
  • the sending end may include a business processing unit, a switching unit, a line processing unit, and a processing unit
  • the receiving end may also include a business processing unit, a switching unit, a line processing unit, and a processing unit.
  • the service processing unit can be used to slice data and generate N slice containers, and each slice container includes slice data. And the service processing unit can also be used to distribute N slice containers to M links. Specifically, in the process of sending N slice containers to the receiving end through M links, the N slice containers may sequentially pass through the switching unit and the line processing unit.
  • the exchange unit can be used to perform slice exchange or packet exchange on the slice data
  • the line processing unit can be used to encapsulate the slice data into the corresponding line container.
  • the processing unit may also be understood as a control unit. The processing unit may be used to control the service processing unit to perform data processing, and control the switching unit and the line processing unit.
  • the sending end carries N slice containers through M links to send data to the receiving end. After receiving the N slice containers carried through the M links, the receiving end may sort the N slice containers to obtain data.
  • the receiving end may sequentially pass through the line processing unit, the switching unit, and the service processing unit.
  • the service processing unit can be used to sort the N slice containers. Specifically, when the slice containers are transmitted through different links, the link delay on different links is generally different, so the service processing unit can delay the alignment of the slice containers with different delays and restore the continuous The data.
  • FIG. 3 is a schematic structural diagram of a data transmission device provided by the embodiment of the present application. Understandably, the data transmission device can be used as both a sending end and a receiving end.
  • the data transmission device includes a processor 301, a memory 302, and an optical module 303.
  • the processor 301, the memory 302, and the optical module 303 are coupled through a connector, which may include various interfaces, transmission lines, or buses. This is not limited in the embodiments of the present application.
  • coupling refers to mutual connection in a specific manner, including direct connection or indirect connection through other devices, for example, it may be connected through various interfaces, transmission lines, buses, and so on.
  • the memory 302 may be used to store computer program instructions, including an operating system (OS), and various computer program codes for executing the program codes of the embodiments of the present application.
  • the memory 302 includes, but is not limited to, non-volatile volatile memory, such as an embedded multimedia card (embedded multimedia card (EMMC), universal flash storage (UFS), or read-only memory (read- only memory (ROM), or other types of static storage devices that can store static information and instructions, can also be volatile memory (volatile memory), such as random access memory (random access memory, RAM) or Other types of dynamic storage devices that store information and instructions can also be electrically erasable programmable read-only memory (electrically erasable programmable-read-only memory (EEPROM), compact disc-read only read-only memory (CD-ROM) Or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or programs that can be used to carry
  • the memory 302 is used to store relevant instructions and data.
  • the optical module 303 is used to receive and send data.
  • the optical module 303 can be used to receive data from the first client or send data to the second client, etc., which is not limited in this embodiment of the present application. Understandably, the optical module 303 can also be understood as a transceiver interface.
  • the optical module 303 may be an optoelectronic device that performs photoelectric and electro-optical conversion, and the optoelectronic device may include two parts of transmitting and receiving. It can be understood that the embodiment of the present application does not limit the specific type or type of the optical module.
  • the processor 301 may be one or more central processing units (CPUs).
  • the CPU may be a single-core CPU or a multi-core CPU.
  • the processor 301 may be a processor group composed of multiple processors, and the multiple processors are coupled to each other through one or more buses. Understandably, the processor 301 may also be other types of processors, such as network processors and so on. Specifically, the processor may be used to perform the functions performed by the processing unit and the business processing unit shown in FIG. 2.
  • the data transmission device may further include a controller, a buffer, and the like, which are not limited in the embodiments of the present application.
  • the buffer included in the data transmission device can be used for buffering data, etc.
  • the embodiment of the present application does not limit the specific role of the buffer.
  • the processor 301 may be used to process data to be sent, etc., which is not limited in the embodiments of the present application.
  • the master node may have more or fewer components than the illustrated ones, and two or more may be combined. Multiple components, or may be implemented with different configurations of different components, and so on.
  • FIG. 4 is a schematic flowchart of a data transmission method provided by an embodiment of the present application.
  • the data transmission method can be applied to the data transmission system shown in FIGS. 1 and 2.
  • the data transmission method can also be applied to the data transmission device shown in FIG. 3. Understandably, the method shown in FIG. 4 can be applied to an optical transmission network.
  • the data transmission method includes:
  • the sending end determines the total bandwidth of N slice containers according to the reference unit.
  • the above reference unit is the minimum bandwidth of the data transmission service
  • the total bandwidth of the above N slice containers is an integer multiple of the above reference unit
  • each slice container includes slice data respectively
  • the slice data is to slice the data After the data obtained
  • the above N is an integer greater than or equal to 2.
  • the reference unit can also be understood as the minimum bandwidth of the service carried by the data transmitted by the sending end, and the data can be understood as the data acquired by the sending end and required to be sent to the receiving end through the optical transmission network.
  • the data may also be understood as a service flow or data flow obtained by the sending end from a client (such as the first client), and the service flow may include an Ethernet service flow or a synchronous digital hierarchy (synchronous digital hierarchy). SDH) service flow, etc.
  • the embodiment of the present application does not limit the specific type of the data.
  • the reference unit may be 10 Mbps
  • the reference unit may be 2 Mbps.
  • the bandwidth of the slicing container may be greater than or equal to the reference bandwidth, which may be understood as the customer service bandwidth, more specifically, the bandwidth of the Ethernet port or the bandwidth of the service flow, and so on.
  • the total bandwidth of the N slice containers may be an integer multiple of the reference unit. If the reference unit is 2 Mbps, the total bandwidth of the N slice containers may be n*(2Mbps), where n is a positive integer. That is to say, the total bandwidth of the N slice containers can also be greater than or equal to the reference bandwidth, so as to ensure the effective transmission of data, avoid data loss, and so on. Understandably, the above n can be determined according to system requirements. If the service bandwidth is 115 Mbps, then n can be 58.
  • the slice container may be understood as a container capable of carrying slice data.
  • the slicing container may also be referred to as a carrying container, etc.
  • the specific name of the slicing container is not limited in the embodiments of the present application.
  • the sending end may slice the data to obtain N slice data, and then carry the N slice data in N slice containers, respectively.
  • the sender can slice the continuous data obtained from the client (such as the first client) into N fixed-length slice data, and then carry the N slice data in N slice containers, respectively.
  • one slice container may include one slice data.
  • each slice container may further include a sequence identifier, which is obtained by encoding the N slice containers according to a preset rule, and the sequence identifier is used to indicate the ordering of the N slice containers.
  • the sequence identifier can be used to indicate the ordering of the slice data included in the N slice containers.
  • the preset rule may be an encoding rule preset by the sending end, or the preset rule may also be a preset encoding rule of the sending end and the receiving end, or the preset rule may also be predefined for other devices Encoding rules, etc., the embodiment of the present application does not limit the source of the preset rule.
  • N may be any positive integer greater than 2
  • the N may be based on data and the amount of data that each slice container can carry to make sure.
  • FIG. 5 is a schematic diagram of a format of a slice container provided by an embodiment of the present application.
  • the slice container may further include a label, label information (PL_info), and serial number (SN).
  • the label included in the slicing container can be used to identify slicing data as an identifier for business exchange or business processing.
  • the label can be used to represent different slicing data.
  • the indication information can be used to indicate the data volume of the slice data included in the payload area of the slice container, or the indication information can also be used to indicate various customer path information, which can be used to indicate reception
  • the end restores the slice data, that is, the relevant information generated at the sending end is sent along with the slice data.
  • the typical client associated information of the slice data may include clock information of the slice data and so on.
  • SN can be understood as the sequence identifier in the embodiment of the present application.
  • Cyclic redundancy check (cyclic redundancy check, CRC) can be used to detect or verify possible errors after slice data transmission.
  • the following uses two different types of data as examples to illustrate how the sender slices the data.
  • Type 1 Ethernet packet data
  • the sending end may also be referred to as a packet service, and slices the Ethernet packet data to obtain slice data.
  • the header and end of the slice data may be marked by 65B encoding or 257B encoding, and then the encoded
  • the slice data is encapsulated into the payload area of the slice container, and the indication information is used to mark how much slice data is in the slice container (that is, to indicate the amount of slice data carried in the slice container).
  • it can start from 0, and every time a slice data is generated, the SN is increased by 1, and the maximum value 2 ⁇ 32-1 is returned to 0.
  • the instruction information is used to mark how much slice data is in the slicing container, and to discriminate the customer service clock, and transmit the clock information after the phase discrimination with the instruction information, which can be used to recover the clock information.
  • it can start from 0, and every time a slice data is generated, the SN is increased by 1, and the maximum value 2 ⁇ 32-1 is returned to 0.
  • the sending end determines M links carrying the N slicing containers according to the total bandwidth of the N slicing containers and available link resources, where the M is an integer greater than or equal to 1.
  • the available link resources may be understood as currently available link resources
  • the sending end may determine which links are the links carrying the N slice containers according to the total bandwidth of the N slice containers and the available link resources road. Specifically, the sending end may determine M links carrying N slice containers according to the total bandwidth of N slice containers and the currently available link resources such as the bandwidth of available links. As an example, for example, if the total bandwidth of the N slice containers is 100 Mbps, and the currently available link resources include links with a link bandwidth of 100 Mbps, it can be determined that the link used to carry the N slice containers is the link bandwidth. 100Mbps link.
  • the link used to carry the N slice containers is a link with a link bandwidth of 40 Mbps and A link with a link bandwidth of 60Mbps and so on.
  • the link bandwidth is sufficient to carry N slice containers.
  • the link bandwidth of the currently available link resources may not be sufficient to carry N slice containers.
  • the bandwidth of the N slice containers is 100 Mbps, but only the links with a link bandwidth of 40 Mbps and link bandwidth of 50 Mbps Link.
  • the data transmission method provided in the embodiments of the present application may also be applied. That is to say, whether the link bandwidth is enough to carry N slice containers does not affect the embodiments of the present application, but in this case, packet loss may occur during data transmission.
  • the sending end carries the N slice containers through the M links to send the data to the receiving end; the receive end receives the N slice containers carried through the M links.
  • each slice container further includes a link identifier
  • the link identifier is an identifier of a link carrying each slice container.
  • the N slice containers can be distributed to the determined links respectively, and then the corresponding slice containers are carried through the determined links, so that Send data to the receiver.
  • Each slice container can indicate the link where each slice container is located by including a link identifier. Understandably, there is no limitation on how to set the link identification.
  • the determined links include link A, link B, and link C.
  • the sequence identifiers are SN0, SN1, ..., SN99 in sequence.
  • SN0, SN1 ..., SN99 sequentially allocates 100 slice containers to link A, link B, and link C, that is, SN0 is assigned to link A (carrying the identifier of link A), and SN1 is assigned to link B ( (Carrying the identification of link B), SN2 is assigned to link C (carrying the identification of link C) and so on.
  • the sending end may carry N slicing containers through the M links.
  • the detailed description of how the sending end carries N slice containers through M links is as follows.
  • the N slice containers are carried through the M links, including:
  • N slice containers may be carried according to the bandwidth ratio of the first link and the second link.
  • the number of slice containers carried on the first link and the number of slice containers carried on the second link may be determined by the ratio of the bandwidth of the first link and the second link.
  • the first link can carry 2k slice containers
  • the second link can carry k slice containers.
  • the first link can carry 2k slice containers
  • the second link can carry k slice containers
  • the remaining 3k +1 can be allocated to the first link.
  • the receiving end may continue to acquire data, and then continue to allocate slice containers according to the bandwidth ratio of the first link and the second link.
  • 2k slice containers can be carried on the first link
  • k+1 slice containers can be carried on the second link.
  • the total number X of slice containers carried on the first link and the second link can be determined according to the bandwidth ratio, and then on which link the remaining (NX) slice containers are carried, which is not limited in this embodiment .
  • the remaining (NK) slice containers can continue to be allocated according to the above X slice container allocation order, and if the sending end no longer sends data to the receiving end, the remaining (NK) (NX) slice containers can be carried on the first link or on the second link. Understandably, the above X is related to the bandwidth ratio.
  • the bandwidth ratio according to the first link and the second link To determine the proportion of the number of slicing containers carried on the first link and the second link, so that when one link has insufficient bandwidth to carry N slicing containers, the N can be carried through two links A slice container, thus avoiding the waste of resources of small bandwidth fragments, improving the utilization of small bandwidth fragments, and improving the utilization of network bandwidth in the optical transmission network.
  • the sending end may carry K slice containers of the N slice containers according to the bandwidth ratio of the first link and the second link, as for the K The value of can be determined according to the bandwidth ratio of all links included in the M links to the first link and the second link.
  • the M links are the first link, the second link, and the third link, and the bandwidth ratio of the first link, the second link, and the third link is A:B:C, then K The value of can be determined by A+B/(A+B+C).
  • the specific method reference may be made to the foregoing embodiment, which will not be elaborated here.
  • some embodiments of the present application also provide a method of how to allocate N slice containers, as follows:
  • the foregoing carrying K slice containers out of the N slice containers according to the bandwidth ratio of the first link and the second link includes:
  • each of the slicing containers includes a sequence identifier
  • the K slicing containers are allocated to the first link and the second link in sequence;
  • the slice container carried on a link is at least one first slice container, and the slice container carried on the second link is at least one second slice container;
  • the first slice container is carried by the first link
  • the second slice container is carried by the second link.
  • the sending end may allocate K slice containers to the first link and the second link, and then pass the first link and the second link
  • the link carries the K slice containers to send data to the receiving end.
  • the slice container carried on the first link may be referred to as at least one first slice container
  • the second The slice container carried on the link may be referred to as at least one second slice container. That is, the slice container allocated to the first link is called a first slice container, and the slice container allocated to the second link is called a second slice container.
  • the sending end may carry the first slice container through the first link and the second slice container through the second link.
  • first slice container and the second slice container shown above are distinguished by different links where the slice container is located.
  • the first slice container may include one or more slice containers, and the second slice container may also include One or more slicing containers, the number of slicing containers specifically included in the first slicing container and the second slicing container may be determined according to actual conditions, and this embodiment is not limited.
  • FIG. 6 is a schematic diagram of a slice allocation process provided by an embodiment of the present application.
  • this embodiment takes three links, such as link A, link B, and link C as an example, the bandwidth ratio is 3:2:1, and the sequence identifier included in the slice container is SN1 , SN2, ..., SNN as an example to illustrate.
  • the sending end may allocate adjacent slice containers to different links, for example, a slice container with SN 1 is assigned to link A, a slice container with SN 2 is assigned to link B, and SN is The slice container of 3 is allocated to link C. Since the bandwidth ratio of the three links is 3:2:1, the slice container with SN 4 can be allocated to link A, and the slice container with SN 5 can be allocated to The slice container with link B and SN 6 is allocated to link A, and so on.
  • the slice container with SN 1 and the slice container with SN 4 are assigned to the link and the slice container with SN 6 can be called the first slice container; the slice container with SN 2 and the slice container with SN 5 It may be called a second slice container, and a slice container with SN 6 is called a third slice container. It can be understood that the slice container included in the above first slice container is not complete in examples, and therefore, it should not be construed as a limitation to this embodiment.
  • the sending end may allocate some adjacent slice containers to different links according to the bandwidth ratio.
  • the sender can allocate the slice container with SN 1, the slice container with SN 2 and the slice container with SN 3 to link A, and the slice container with SN 4 and the slice container with SN 5 to the link On B, the slice container with SN 6 is allocated to link C, and so on.
  • some embodiments of the present application also provide a method of how to allocate N slice containers, as follows:
  • the foregoing carrying K slice containers out of the N slice containers according to the bandwidth ratio of the first link and the second link includes:
  • the first number of slice containers are carried through the first link, and the second number of slice containers are carried through the second link.
  • the sending end may determine the number of slice containers that can be allocated on the first link and the second link according to the bandwidth ratio of the first link and the second link and the total number N of slice containers. For example, if the bandwidth ratio of the first link and the second link is 1:2, and the total number of slicing containers is 3N, the number of slicing containers carried on the first link, that is, the first number is N, and the second link The number of slice containers carried on the road, that is, the second number is 2N. Optionally, if the number of slice containers is 3N+1, the first number may be N+1, or the second number may be 2N+1.
  • the sending end may allocate the N slice containers to the first link and the second link according to the ratio of the first quantity to the second quantity, or directly The first number of slice containers and the second number of slice containers are allocated to the first link and the second link, respectively.
  • FIG. 8 is a schematic diagram of another slice allocation process provided by an embodiment of the present application, where three links, such as link A, link B, and link C are used as examples, and the bandwidth The ratio is 3:2:1, and the sequence identifiers carried in the slice container are described by taking SN1, SN2, ..., SN6N as examples.
  • the bandwidth ratio of the three links is 3:2:1
  • the number of slice containers carried on link A is 3N
  • the number of slice containers carried on link B is 2N
  • the number of slice containers carried on link C Is N
  • the slice container is sent via link C.
  • the above number 3N can be understood as the first number, 2N as the second number, and N as the third number. Or, the first quantity is N, the second quantity is 2N, the third quantity is 3N, etc., and the specific order is not limited in this embodiment.
  • the slicing containers carried on each link shown above are only an example, and should not be construed as limiting the present embodiment.
  • the slice containers with the sequence identifiers SN1 to SNN can also be sent via link C
  • the slice containers with the sequence identifiers SN3N+1 to SN6N can be sent via link A.
  • FIG. 9 is another schematic diagram of a slice allocation process provided by an embodiment of the present application.
  • the slice containers on different links may be determined according to the ratio of the first quantity, the second quantity, and the third quantity.
  • the first quantity is 3N
  • the second quantity is 2N
  • the third quantity is N
  • the slice containers whose sequences are identified as SN1 to SN3 can be sent via link A according to the ratio of 3:2:1, and the sequence
  • the slice containers identified as SN4 and SN5 are sent via link B
  • the slice containers identified as SN6 are sent via link C, and so on.
  • a link may be deleted or added, in this case, as follows:
  • the method further includes:
  • the sending end can also update M according to available link resources, such as increasing M link links to M+A links, where A is an integer greater than or equal to 1; or , M links are reduced to MB links, and B is an integer greater than or equal to 1.
  • this embodiment when a link is added or a link is decreased, it can be understood that the available link resources have changed, so it is necessary to increase or decrease the link carrying N slice containers at the sending end. If it can be understood that there are other devices or devices occupying at least one of the M links, or other reasons, etc., this embodiment does not limit the reasons for increasing or decreasing the links.
  • N1+N2 N.
  • link A on the basis of link B and link C as an example.
  • the sending end has sent N1 slice containers through link B and link C. If link A needs to be added, the sender can allocate the untransmitted (N-N1) N2 slice containers to link A, link B, and link C respectively according to the bandwidth ratio of link A, link B, and link C. Link B and Link C. Then send (N-N1) slice containers to the data receiving end through link A, link B and link C.
  • link A can also be added on the basis of link B, etc., which will not be repeated here.
  • deleting a link as an example, for example, deleting link A based on link A, link B, and link C as an example.
  • the sending end has sent N1 slice containers through link A, link B and link C. If the link A needs to be deleted, the sender can consider the bandwidth of link A to be 0, and then allocate (N-N1) or N2 slice containers on link B and link C, so that the sender Link A is no longer assigned a slice container. After a period of time (greater than the link delay), after the slice container allocated on link A is sent to the receiving end, that is, when the receiving end has received the slice container carried on link A, the following table can be Delete link A.
  • the sending end can not only flexibly delete the link, but also flexibly increase the link, thereby more flexibly allocating or adjusting the link, and improving the utilization rate of the link.
  • the receiving end sorts the N slice containers to obtain the data.
  • the receiving end may sort the N slicing containers according to the sequence identifier included in the slicing container to obtain the data sent by the sending end.
  • the N slice containers can be sorted according to the sequence identifier, that is, the receiving end can obtain N by sorting the N slice containers The order of the data of each slice, so as to recover the data sent by the sending end, that is, recover the continuous data.
  • FIG. 10 is a schematic diagram of a sorting process provided by an embodiment of the present application. As shown in Figure 10, in the process of sorting at the receiving end, there are the following rules:
  • the scheduler schedules the slice containers from the sort queue , Sorting the slice containers output by each sorting queue, the sorting is based on the following processing principles: SN is the first to come out first; and SN output requirements are continuous.
  • the scheduler schedules and outputs a slice container.
  • the new slice container is scheduled for sorting. Among them, find the current minimum SN among all the SNs output by the queue, determine whether the current SN is continuous with the last output SN; if it is continuous, output the current minimum SN, and dispatch a new SN in the corresponding queue to find the current minimum again SN; if it is not continuous, wait for the arrival of the SN adjacent to the last SN. If there is an SN lost, it will output the current minimum SN through aging or when there are other SNs output from the sorting queue. Among them, aging can be understood as when the waiting time reaches the time threshold or other conditions that can be determined to be lost, no longer waiting.
  • the slice container may be lost, although this does not affect the sorting process of the slice container by the receiving end.
  • the total bandwidth of N slice containers is determined by a reference unit, for example, the bandwidth of the N slice containers may be an integer multiple of the reference unit, and the reference unit may be the minimum bandwidth of the data transmission service, such as data
  • the minimum bandwidth of the service is 2Mbps
  • the reference unit can be 2Mbps
  • the total bandwidth of the N slice containers can be (2n)Mbps (n is an integer greater than or equal to 1), thus avoiding the necessity of 1.24416 Gbps as a unit; because the total bandwidth of the N slice containers can be less than 1.24416Gbps, it also avoids the waste of the small bandwidth link because the small bandwidth link is insufficient to carry the N slice containers, and thus effectively uses Small bandwidth links in optical transport networks (which can also be understood as small bandwidth fragments) improve the utilization of small bandwidth links.
  • the method shown in FIG. 4 can be implemented by the sending end and the receiving end shown in FIG. 1, respectively.
  • N slice containers are respectively carried on link A, link B, and link C.
  • services can also be exchanged through the switching unit shown in FIG. 2, such as
  • the N slice containers can be slice-swapped by the exchange unit, such as adding an exchange head, so as to indicate the destination of each slice container (such as indicating the identification of the receiving end).
  • the N slicing containers can be exchanged through the exchange unit, such as grouping packets to add destination identification, and so on.
  • the line processing unit shown in FIG. 2 can be used to package the slice container into the OTN line container.
  • the line container is a shared container, which can be used by all slicing containers.
  • the shared container can allocate the maximum bandwidth for each service to ensure that the bandwidth of the slicing container does not exceed the set maximum bandwidth. Can guarantee the transmission bandwidth of each business.
  • FIG. 11 is a schematic diagram of a line container format provided by an embodiment of the present application.
  • the line container may include framer alignment overhead, optical transmission unit overhead (OTU overhead), optical data unit overhead (ODU overhead), slice container delimitation overhead (cell alignment), payload Signal indication (payload indication) (PSI) and payload area (payload area).
  • the line container also includes reserved areas (reserved areas, RES).
  • the slice containers are encapsulated into OPU frames (ie, OTN line containers) through rate adaptation.
  • OPU frames ie, OTN line containers
  • the IDLE data is filled into the OPU frame.
  • the delimitation of the slice container in the OPU frame can be indicated by the OPU overhead.
  • the OPU overhead may also indicate that the first byte of the OPU payload area is the first few bytes of the slice container.
  • the method performed by the sending end in the method shown in FIG. 4 can also be implemented by the service processing unit and the processing unit in the sending end shown in FIG. 2, and the receiving end of the method shown in FIG. 4
  • the executed method can also be implemented by the service processing unit and the processing unit in the receiving end shown in FIG. 3.
  • FIG. 12 is a schematic structural diagram of a sending end provided by an embodiment of the present application.
  • the sending end may be used to execute the method shown in FIG. 4. As shown in the figure, the sending end includes:
  • the first determining unit 1201 is configured to determine the total bandwidth of N slice containers according to a reference unit, where the reference unit is a minimum bandwidth of a service that transmits data, and the total bandwidth of the N slice containers is an integer multiple of the reference unit, And each slicing container includes slicing data, the slicing data is data obtained by slicing the above data, and the above N is an integer greater than or equal to 2;
  • the second determining unit 1202 is configured to determine M links carrying the N slice containers according to the total bandwidth of the N slice containers and available link resources, where the M is an integer greater than or equal to 1;
  • the sending unit 1203 is configured to carry the N slice containers through the M links to send the data to the receiving end.
  • each of the above-mentioned slice containers further includes a link identifier
  • the above-mentioned link identifier is an identifier of a link that carries each of the above-mentioned slice containers.
  • each of the slice containers further includes a sequence identifier, the sequence identifier encodes the N slice containers according to a preset rule, and the sequence identifier is used to indicate the ordering of the N slice containers happening.
  • the M links include a first link and a second link
  • the sending unit 1203 carries the N slice containers through the M links, and is specifically used to carry K slice containers of the N slice containers according to the bandwidth ratio of the first link and the second link; wherein, The number of slicing containers carried on the first link and the number of slicing containers carried on the second link are determined by the bandwidth ratio of the first link and the second link, where K ⁇ N.
  • the sending unit 1203 is specifically configured to sequentially sort the K slice containers according to the bandwidth ratio of the first link and the second link, and the sequence identifier included in each slice container. Allocated to the first link and the second link; wherein the slice container carried on the first link is at least one first slice container, and the slice container carried on the second link is at least one second slice A slice container; and carrying the first slice container through the first link, and carrying the second slice container through the second link.
  • the sending unit 1203 is specifically configured to determine the bearer on the first link and the second link according to the bandwidth ratio of the first link and the second link, and the N The number of slice containers; the number of slice containers carried on the first link is the first number, and the number of slice containers carried on the second link is the second number; and the first link is carried through the first link A number of slice containers, and carrying the second number of slice containers through the second link.
  • the foregoing device further includes:
  • the link processing unit 1204 is configured to update the M according to the total bandwidth of the N slice containers and the available link resources; wherein, the updated M is equal to the M+A before the update, or the updated M is equal to the update In the previous MB, the A is an integer greater than or equal to 1, and the B is an integer greater than or equal to 1.
  • each unit can also correspond to the corresponding description of the method embodiment shown in FIG. 4.
  • the processor shown in FIG. 3 may be used to perform the functions shown in the first determining unit 1201 and the second determining unit 1202, and the optical module shown in FIG. 3 may be used to perform the functions shown in the sending unit 1203. Understandably, in some implementations, the processor shown in FIG. 3 may also control the optical module to perform the function shown in the sending unit 1203, for example, the processor may control the optical module to allocate slice containers, etc., implemented in this application Examples are not limited.
  • FIG. 14 is a schematic structural diagram of a receiving end provided by an embodiment of the present application.
  • the receiving end may be used to execute the method shown in FIG. 4. As shown in the figure, the receiving end includes:
  • the receiving unit 1401 is configured to receive N slice containers carried by the sending end through M links; wherein the total bandwidth of the N slice containers is an integer multiple of the above reference unit, and the above reference unit is the minimum bandwidth of the data transmission service , And each slice container includes slice data, the slice data is data obtained by slicing the data, and each slice container further includes a sequence identifier, and the above N is an integer greater than or equal to 2;
  • the sorting unit 1402 is configured to sort the N slice containers according to the sequence identifier to obtain the data.
  • the M links include a first link and a second link, and the number of slice containers carried on the first link and the number of slice containers carried on the second link Determined by the bandwidth ratio of the first link and the second link.
  • each of the above-mentioned slice containers further includes a link identifier, and the above-mentioned link identifier is used to indicate an identifier of a link that carries each of the above-mentioned slice containers.
  • each unit can also correspond to the corresponding description of the method embodiment shown in FIG. 4.
  • processor shown in FIG. 3 may also be used to perform the function performed by the sorting unit 1402, and the optical module may be used to perform the function performed by the receiving unit 1401.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a dedicated computer, a computer network, or other programmable devices.
  • the computer 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 that can be accessed by a computer or a data storage device including a server, a data center, and the like integrated with one or more available media.
  • the usable medium may be a magnetic medium (eg, floppy disk, hard disk, magnetic tape), optical medium (eg, DVD), or semiconductor medium (eg, solid state disk (SSD)), or the like.
  • the modules in the device of the embodiment of the present application may be combined, divided, and deleted according to actual needs.

Abstract

本申请提供一种数据传输方法及装置。其中,该方法应用于光传送网,该方法包括:根据参考单位确定N个切片容器的总带宽,其中,该参考单位为传输数据的业务的最小带宽,该N个切片容器的总带宽为该参考单位的整数倍,且每个切片容器分别包括切片数据,该切片数据为对该数据进行切片处理后得到的数据,该N为大于或等于2的整数;根据该N个切片容器的总带宽及可用链路资源确定承载该N个切片容器的M个链路,该M为大于或等于1的整数;通过该M个链路承载该N个切片容器,以向接收端发送该数据。相应的,还提供了对应的装置。采用本申请,可有效提高光传送网的带宽利用率。

Description

数据传输方法及装置 技术领域
本申请涉及光通信技术领域,尤其涉及一种数据传输方法及装置。
背景技术
光传送网(optical transport network,OTN)作为基础的承载网络,要求网络高效、灵活,但在具体实现中,光传送网存在着大量带宽碎片,从而影响了网络利用率,以及业务部署的灵活性。
一般地,采用光通道数据单元(optical channel data unit,ODU)虚级联技术解决碎片问题。如将N个帧头同步的独立的ODU帧结构按节间插复接为一个更大容量的虚拟容器,该虚拟容器可用于承载大颗粒业务(也可理解为大带宽业务)。大颗粒业务封装到虚拟容器后,每个ODU独立传送,接收端接收到N个ODU之后,再从虚拟容器中恢复出大颗粒业务。然而,在OTN体系的最小容器带宽为1.24416Gbps的情况下,虚拟容器就必须以1.24416Gbps为粒度级联,由此小带宽碎片就无法利用。
发明内容
本申请公开了一种数据传输方法及装置,能够有效利用光传送网中的带宽碎片,提高链路带宽的利用率。
第一方面,本申请实施例提供了一种数据传输方法,所述方法应用于光传送网,所述方法包括:根据参考单位确定N个切片容器的总带宽,其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数;根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路,所述M为大于或等于1的整数;通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据。
本申请实施例中,通过参考单位来确定N个切片容器的总带宽,如该N个切片容器的带宽可以为参考单位的整数倍,该参考单位可为传输数据的业务的最小带宽,如数据的业务的最小带宽为2Mbps,则该参考单位可以为2Mbps,由此该N个切片容器的总带宽就可以为(2n)Mbps(n为大于或等于1的整数),从而避免了必须以1.24416Gbps为单位;由于该N个切片容器的总带宽可小于1.24416Gbps,因此还避免了由于小带宽链路不足以承载N个切片容器,而导致该小带宽链路浪费的情况,进而有效利用了光传送网中的小带宽链路(也可理解为小带宽碎片),提高了小带宽链路的利用率。
结合第一方面,在一种可能的实现方式中,所述每个切片容器还包括链路标识,所述链路标识为承载所述每个切片容器的链路的标识。
本申请实施例中,每个切片容器通过包括链路标识,可使得数据传输装置有效识别出M个链路承载的切片容器。
结合第一方面或第一方面的上述任一可能的实现方式中,所述每个切片容器还包括序列标识,所述序列标识依据预设规则对所述N个切片容器进行编码得到,且所述序列标识用于表示所述N个切片容器的排序情况。
本申请实施例中,每个切片容器通过包括序列标识,可使得接收端根据该序列标识对切片数据进行排序,从而恢复出数据,即数据传输装置所发送的连续的数据,进而提高了接收端恢复数据的效率。
结合第一方面或第一方面的上述任一种可能的实现方式中,所述M个链路包括第一链路和第二链路;所述通过所述M个链路承载所述N个切片容器,包括:根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器;其中,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定,所述K≤所述N。
本申请实施例中,通过第一链路和第二链路的带宽比例来确定第一链路上承载的切片容器的数量,以及第二链路上承载的切片容器的数量,可充分利用第一链路和第二链路的带宽,提高了带宽的利用率,从而提高了光传送网中网络带宽的利用率。
结合第一方面或第一方面的上述任一种可能的实现方式中,所述根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器,包括:根据所述第一链路和所述第二链路的带宽比例,以及所述每个切片容器包括的序列标识依次将所述K个切片容器分配至所述第一链路和所述第二链路;其中,所述第一链路上承载的切片容器为至少一个第一切片容器,所述第二链路上承载的切片容器为至少一个第二切片容器;通过所述第一链路承载所述第一切片容器,以及通过所述第二链路承载所述第二切片容器。
结合第一方面或第一方面的上述任一可能的实现方式中,所述根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器,包括:根据所述第一链路和所述第二链路的带宽比例,以及所述N确定所述第一链路和所述第二链路上承载的切片容器数量;其中,所述第一链路上承载的切片容器数量为第一数量,所述第二链路上承载的切片容器数量为第二数量;通过所述第一链路承载所述第一数量的切片容器,以及通过所述第二链路承载所述第二数量的切片容器。
结合第一方面或第一方面的上述任一可能的实现方式中,所述根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路之后,所述方法还包括:根据所述N个切片容器的总带宽以及所述可用链路资源更新所述M;其中,更新后的M等于更新前的所述M+A,或者,更新后的M等于更新前的所述M-B,所述A为大于或等于1的整数,所述B为大于或等于1的整数。
本申请实施例中,在通过M个链路承载N个切片容器的过程中,还可以根据该N个切片容器的总带宽以及可用链路资源更新M。也就是说,在通过M个链路承载N个切片容器的过程中,还可以增加或删除链路,由此可实现带宽动态调整,提高了分配切片容器的灵活性。
第二方面,本申请实施例还提供了一种数据传输方法,所述方法应用于光传送网,所述方法包括:接收发送端通过M个链路承载的N个切片容器;其中,所述N个切片容器 的总带宽为所述参考单位的整数倍,所述参考单位为传输数据的业务的最小带宽,且每个切片容器分别包括切片数据,所述切片数据为对数据进行切片处理后得到的数据,且所述每个切片容器还包括序列标识,所述N为大于或等于2的整数;根据所述序列标识对所述N个切片容器进行排序,获得所述数据。
本申请实施例中,切片容器通过包括序列标识,可使得接收端在接收到N个切片容器后,能够有效地恢复出数据,从而提高了数据恢复的效率。
结合第二方面,在一种可能的实现方式中,所述M个链路包括第一链路和第二链路,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定。
结合第二方面或第二方面的上述任一可能的实现方式中,所述每个切片容器还包括链路标识,所述链路标识用于表示承载每个所述切片容器的链路的标识。
第三方面,本申请实施例提供了一种数据传输装置,包括:第一确定单元,用于根据参考单位确定N个切片容器的总带宽,其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数;第二确定单元,用于根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路,所述M为大于或等于1的整数;发送单元,用于通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据。
结合第三方面,在一种可能的实现方式中,所述每个切片容器还包括链路标识,所述链路标识为承载所述每个切片容器的链路的标识。
结合第三方面或第三方面的上述任一可能的实现方式中,所述每个切片容器还包括序列标识,所述序列标识依据预设规则对所述N个切片容器进行编码得到,且所述序列标识用于表示所述N个切片容器的排序情况。
结合第三方面或第三方面的上述任一可能的实现方式中,所述M个链路包括第一链路和第二链路;所述发送单元通过所述M个链路承载所述N个切片容器,具体用于根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器;其中,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定,所述K≤所述N。
结合第三方面或第三方面的上述任一可能的实现方式中,所述发送单元,具体用于根据所述第一链路和所述第二链路的带宽比例,以及所述每个切片容器包括的序列标识依次将所述K个切片容器分配至所述第一链路和所述第二链路;其中,所述第一链路上承载的切片容器为至少一个第一切片容器,所述第二链路上承载的切片容器为至少一个第二切片容器;以及通过所述第一链路承载所述第一切片容器,以及通过所述第二链路承载所述第二切片容器。
结合第三方面或第三方面的上述任一可能的实现方式中,所述发送单元,具体用于根据所述第一链路和所述第二链路的带宽比例,以及所述N确定所述第一链路和所述第二链路上承载的切片容器数量;其中,所述第一链路上承载的切片容器数量为第一数量,所述 第二链路上承载的切片容器数量为第二数量;以及通过所述第一链路承载所述第一数量的切片容器,以及通过所述第二链路承载所述第二数量的切片容器。
结合第三方面或第三方面的上述任一种可能的实现方式中,所述装置还包括:链路处理单元,用于根据所述N个切片容器的总带宽以及所述可用链路资源更新所述M;其中,更新后的M等于更新前的所述M+A,或者,更新后的M等于更新前的所述M-B,所述A为大于或等于1的整数,所述B为大于或等于1的整数。
可理解,本申请实施例中的数据传输装置也可理解为发送端。
第四方面,本申请实施例提供了一种接收端,包括:接收单元,用于接收发送端通过M个链路承载的N个切片容器;其中,所述N个切片容器的总带宽为所述参考单位的整数倍,所述参考单位为传输数据的业务的最小带宽,且每个切片容器分别包括切片数据,所述切片数据为对数据进行切片处理后得到的数据,且所述每个切片容器还包括序列标识,所述N为大于或等于2的整数;排序单元,用于根据所述序列标识对所述N个切片容器进行排序,获得所述数据。
结合第四方面,在一种可能的实现方式中,所述M个链路包括第一链路和第二链路,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定。
结合第四方面或第四方面的上述任一可能的实现方式中,所述每个切片容器还包括链路标识,所述链路标识用于表示承载每个所述切片容器的链路的标识。
第五方面,本申请实施例还提供了一种数据传输装置,包括处理器、存储器和光模块,所述处理器和所述存储器耦合,所述处理器用于运行所述存储器内的指令或程序,所述处理器,用于根据参考单位确定N个切片容器的总带宽;以及根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路;其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数,所述M为大于或等于1的整数;所述光模块与所述处理器耦合,所述光模块,用于通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据。
结合第五方面或第五方面的上述任一可能的实现方式中,所述光模块,通过所述M个链路承载所述N个切片容器,具体用于根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器;其中,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定,所述K≤所述N。
结合第五方面或第五方面的上述任一可能的实现方式中,所述光模块,具体用于根据所述第一链路和所述第二链路的带宽比例,以及所述每个切片容器包括的序列标识依次将所述K个切片容器分配至所述第一链路和所述第二链路;其中,所述第一链路上承载的切片容器为至少一个第一切片容器,所述第二链路上承载的切片容器为至少一个第二切片容器;以及通过所述第一链路承载所述第一切片容器,以及通过所述第二链路承载所述第二 切片容器。
结合第五方面或第五方面的上述任一可能的实现方式中,所述光模块,具体用于根据所述第一链路和所述第二链路的带宽比例,以及所述N确定所述第一链路和所述第二链路上承载的切片容器数量;其中,所述第一链路上承载的切片容器数量为第一数量,所述第二链路上承载的切片容器数量为第二数量;以及通过所述第一链路承载所述第一数量的切片容器,以及通过所述第二链路承载所述第二数量的切片容器。
结合第五方面或第五方面的上述任一可能的实现方式中,所述处理器,还用于根据所述N个切片容器的总带宽以及所述可用链路资源更新所述M;其中,更新后的M等于更新前的所述M+A,或者,更新后的M等于更新前的所述M-B,所述A为大于或等于1的整数,所述B为大于或等于1的整数。
可理解,本申请实施例中的数据传输装置也可理解为发送端。
第六方面,本申请实施例还提供了一种接收端,包括处理器、存储器和光模块,所述处理器和所述光模块耦合,所述光模块,用于接收发送端通过M个链路承载的N个切片容器;其中,所述N个切片容器的总带宽为所述参考单位的整数倍,所述参考单位为传输数据的业务的最小带宽,且每个切片容器分别包括切片数据,所述切片数据为对数据进行切片处理后得到的数据,且所述每个切片容器还包括序列标识,所述N为大于或等于2的整数;所述处理器和所述存储器耦合,所述处理器用于运行所述存储器内的程序或指令,执行根据所述序列标识对所述N个切片容器进行排序,获得所述数据的步骤。
结合第六方面,在一种可能的实现方式中,所述M个链路包括第一链路和第二链路,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定。
结合第六方面或第六方面的上述任一可能的实现方式中,所述每个切片容器还包括链路标识,所述链路标识用于表示承载每个所述切片容器的链路的标识。
第七方面,本申请实施例提供了一种数据传输系统,所述数据传输系统包括发送端和接收端,所述发送端和所述接收端通过光传送网连接;其中,所述发送端,用于根据参考单位确定N个切片容器的总带宽,并根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路,所述M为大于或等于1的整数,以及通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据;其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数,所述M为大于或等于1的整数;所述接收端,用于接收所述发送端通过所述M个链路承载的N个切片容器,以及对所述N个切片容器进行排序,以得到所述数据。
第八方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
第九方面,本申请实施例提供了一种包括指令的计算机程序产品,当其在计算机上运 行时,使得计算机执行上述各方面所述的方法。
附图说明
图1是本申请实施例提供的一种数据传输系统的框架示意图;
图2是本申请实施例提供的另一种数据传输系统的框架示意图;
图3是本申请实施例提供的一种数据传输装置的结构示意图;
图4是本申请实施例提供的一种数据传输方法的流程示意图;
图5是本申请实施例提供的一种切片容器的格式示意图;
图6是本申请实施例提供的一种切片分配过程示意图;
图7是本申请实施例提供的另一种切片分配过程示意图;
图8是本申请实施例提供的又一种切片分配过程示意图;
图9是本申请实施例提供的又一种切片分配过程示意图;
图10是本申请实施例提供的一种排序过程示意图;
图11是本申请实施例提供的一种线路容器的格式示意图;
图12是本申请实施例提供的一种发送端的结构示意图;
图13是本申请实施例提供的另一种发送端的结构示意图;
图14是本申请实施例提供的一种接收端的结构示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
本申请的说明书、权利要求书及附图中的术语“第一”和“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
图1是本申请实施例提供的一种数据传输系统的框架示意图。如图1所示,该数据传输系统可包括发送端和接收端,该发送端和该接收端可通过光传送网传输数据等等。具体的,该发送端和该接收端可为传输设备,其中,该传输设备可以包括OTN传输设备、波分 传输设备、以及光端机,光调制解调器(modem),光纤收发器,光交换机,准同步数字系列(plesiochronous digital hierarchy,PDH),同步数字体系(synchronous digital hierarchy,SDH)、分组传送网(packet transport network,PTN)等类型的设备。
其中,该发送端可用于从第一客户端获取数据,以及根据参考单位确定N个切片容器的总带宽;其中,参考单位为传输数据的业务的最小带宽且该N个切片容器的总带宽为该参考单位的整数倍,且每个切片容器包括切片数据。在发送端得到N个切片容器后便可将该N个切片容器通过不同的链路(如M个链路)发送出去。接收端在接收到该N个切片容器后,对该N个切片容器进行处理,恢复出数据,然后再将该数据发送给第二客户端。其中,第一客户端可为与传输设备(如发送端)相连的客户设备端口,如该第一客户端可包括路由器设备、存储设备以及视频设备(包括视频采集设备等)等等,本申请实施例对于该第一客户端的具体类型不作限定。第二客户端可为与传输设备(如接收端)相连的客户设备端口,如该第二客户端可包括路由器设备、存储设备以及视频设备等等,本申请实施例对于该第二客户端的具体类型不作限定。
图2是本申请实施例提供的另一种数据传输系统的框架示意图。如图2所示,发送端可包括业务处理单元、交换单元、线路处理单元以及处理单元,以及接收端也可以包括业务处理单元、交换单元、线路处理单以及处理单元。
其中,业务处理单元可用于对数据进行切片数据,以及生成N个切片容器,每个切片容器中包括切片数据。以及业务处理单元还可用于将N个切片容器分发至M个链路上。具体的,在将N个切片容器通过M个链路发送给接收端的过程中,该N个切片容器可依次通过交换单元和线路处理单元。其中,交换单元可用于对切片数据进行切片交换或包交换等等,线路处理单元可用于将切片数据封装到相应线路容器中。其中,处理单元也可理解为控制单元,该处理单元可用于控制业务处理单元进行数据处理,以及控制交换单元和线路处理单元等等。
发送端通过M个链路承载N个切片容器,以向接收端发送数据。接收端在接收到通过M个链路承载的N个切片容器后,便可对该N个切片容器进行排序,以获得数据。
该接收端在接收通过M个链路承载的N个切片容器的过程中,该N个切片容器可依次经过线路处理单元、交换单元以及业务处理单元。其中,业务处理单元可用于对N个切片容器进行排序。具体而言,通过不同链路传输切片容器时,不同链路上的链路延时一般是不同的,因此该业务处理单元便可对延时不一样的切片容器进行延时对齐,恢复出连续的数据。
可理解,对于发送端和接收端来说,在实际应用中,还可能存在其他不同的形态,因此,本申请实施例对于发送端和接收端的具体形态不作限定。
为更形象的理解本申请实施例所提供的发送端或接收端,图3是本申请实施例提供的一种数据传输装置的结构示意图。可理解,该数据传输装置既可作为发送端使用,也可作为接收端使用。如图3所示,该数据传输装置包括处理器301、存储器302和光模块303,该处理器301、存储器302和光模块303通过连接器相耦合,该连接器可包括各类接口、传输线或总线等,本申请实施例对此不做限定。应当理解,本申请的各个实施例中,耦合 是指通过特定方式的相互联系,包括直接相连或者通过其他设备间接相连,例如可以通过各类接口、传输线、总线等相连。
存储器302,可用于存储计算机程序指令,包括操作系统(operation system,OS)、以及用于执行本申请实施例的程序代码在内的各类计算机程序代码。可选的,存储器302包括但不限于是非掉电易失性存储器,例如是嵌入式多媒体卡(embedded multi media card,EMMC)、通用闪存存储(universal flash storage,UFS)或只读存储器(read-only memory,ROM),或者是可存储静态信息和指令的其他类型的静态存储设备,还可以是掉电易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的程序代码并能够由计算机存取的任何其他计算机可读存储介质等,该存储器302用于存储相关指令及数据。光模块303用于接收和发送数据,例如该光模块可用于接收来自第一客户端的数据,或者向第二客户端发送数据等等,本申请实施例不作限定。可理解,该光模块303还可理解为收发接口等。具体的,该光模块303可以是进行光电和电光转换的光电子器件,以及该光电子器件可包括发射和接收两部分。可理解,本申请实施例对于该光模块的具体类型或种类不作限定。
处理器301可以是一个或多个中央处理器(central processing unit,CPU),在处理器301是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。可选的,处理器301可以是多个处理器构成的处理器组,多个处理器之间通过一个或多个总线彼此耦合。可理解,处理器301还可以是其他类型的处理器,如网络处理器等等。具体的,处理器可用于执行图2所示的处理单元和业务处理单元所执行的功能。
可理解,数据传输装置还可以包括控制器以及缓存器等等,本申请实施例不作限定。其中,数据传输装置中所包括的缓存器可用于缓存数据等等,本申请实施例对于该缓存器的具体作用不作限定。
具体的,该处理器301可用于对待发送的数据进行处理等,本申请实施例不作限定。
可理解,以上仅为本申请实施例提供的一种数据传输装置的结构示意图,在具体实现中,该主节点可具有比示出的部分更多或更少的部件,可以组合两个或更多个部件,或者可具有不同部件的不同配置实现等等。
图4是本申请实施例提供的一种数据传输方法的流程示意图,该数据传输方法可应用于图1和图2所示的数据传输系统。具体的,该数据传输方法还可应用于图3所示的数据传输装置。可理解,图4所示的方法可应用于光传送网,如图4所示,该数据传输方法包括:
401、发送端根据参考单位确定N个切片容器的总带宽。
其中,上述参考单位为传输数据的业务的最小带宽,上述N个切片容器的总带宽为上述参考单位的整数倍,且每个切片容器分别包括切片数据,上述切片数据为对上述数据进 行切片处理后得到的数据,上述N为大于或等于2的整数。
本申请实施例中,参考单位还可理解为发送端所传输的数据承载的业务的最小带宽,该数据可理解为发送端所获取的需要通过光传送网发送给接收端的数据。可选的,该数据还可理解为该发送端从客户端(如第一客户端)获取到的业务流或数据流,该业务流可包括以太网业务流或同步数字体系(synchronous digital hierarchy,SDH)业务流等等,本申请实施例对于该数据的具体类型不作限定。进一步地,对于以太网业务流来说,参考单位可为10Mbps,而对于SDH业务流来说,参考单位可为2Mbps。更进一步地,切片容器的带宽可大于或等于参考带宽,该参考带宽可理解为客户业务带宽,更具体的可理解为以太端口的带宽或业务流的带宽等等。其中,N个切片容器的总带宽可为参考单位的整数倍,如参考单位为2Mbps,则N个切片容器的总带宽可为n*(2Mbps),n为正整数。也就是说,该N个切片容器的总带宽还可以大于或等于参考带宽,从而保证数据的有效传输,避免数据的丢包等等。可理解,上述n可根据系统需求来确定,如以业务带宽为115Mbps,则n可以为58。
本申请实施例中,切片容器可理解为能够承载切片数据(slice)的容器。其中,该切片容器还可称为承载容器等等,本申请实施例对于该切片容器的具体名称不作限定。具体的,发送端可将数据进行切片处理,得到N个切片数据,然后将该N个切片数据分别承载于N个切片容器中。也就是说,发送端可以将从客户端(如第一客户端)获取到的连续的数据,切片成N个固定长度的切片数据,然后将该N个切片数据分别承载于N个切片容器中,即一个切片容器中可包括一个切片数据。
可选的,每个切片容器还可包括序列标识,该序列标识依据预设规则对该N个切片容器进行编码得到,且该序列标识用于表示该N个切片容器的排序情况。也就是说,该序列标识可用于表示N个切片容器中包括的切片数据的排序情况。可理解,该预设规则可为发送端预先设置的编码规则,或者,该预设规则也可为发送端和接收端预先定义的编码规则,或者,该预设规则还可为其他设备预先定义的编码规则等等,本申请实施例对于该预设规则的来源不作限定。
可理解,本申请实施例对于上述N的具体取值不作限定,该N可为任意的大于2的正整数,在具体实现中,该N可根据数据以及每个切片容器所能承载的数据量来确定。
为更形象的理解切片容器,图5是本申请实施例提供的一种切片容器的格式示意图。如图5所示,切片容器中不仅可包括(或携带)切片数据,还可包括(或携带)一些与切片数据相关的信息。如该切片容器中还可包括标签(label)、指示信息(PL_info)以及序列号(serial number,SN)。其中,切片容器中包括的标签可用于标识切片数据,作为业务交换或业务处理的标识,具体的,该标签可用于表示不同的切片数据。指示信息可用于表示切片容器中的净荷区(payload area)所包括的切片数据的数据量,或者,该指示信息还可用于表示各种客户随路信息,该客户随路信息可用于指示接收端恢复切片数据,即在发送端产生的相关信息伴随切片数据一起发送。作为一种示例,典型的切片数据的客户随路信息可包括切片数据的时钟信息等等。SN可理解为本申请实施例中的序列标识。循环冗余校验(cyclic redundancy check,CRC)可用于检测或校验切片数据传输后可能出现的错误。
可理解,对于图5中所示的切片容器中各个信息的字节数,仅为一种示例,不应理解 为对本申请实施例的限定。
作为一种示例,以下以两种不同类型的数据为例来说明发送端如何对数据进行切片处理。
类型一、以太包数据
发送端获取到以太包数据也可称为包业务后,对该以太包数据进行切片处理,得到切片数据,如可以通过65B编码或257B编码标记切片数据的帧头和帧尾,然后把编码后的切片数据封装到切片容器的净荷区,同时使用指示信息标记切片容器中有多少切片数据(即指示切片容器中承载的切片数据的数据量)。同时可从0开始,每产生一个切片数据则SN加1,加到最大值2^32-1后归0。
类型二、固定速率码流数据
首先确定每个切片容器中包括的数据的字节数,然后按照该字节数将数据进行切片处理,得到切片数据,从而封装到切片容器中。同时使用指示信息标记切片容器中有多少切片数据,以及对客户业务时钟进行鉴相,将鉴相后的时钟信息用指示信息传送,该指示信息可用于恢复时钟信息。同时可从0开始,每产生一个切片数据则SN加1,加到最大值2^32-1后归0。
可理解,以上两种类型的数据仅为一种示例,不应将其理解为对本申请实施例的限定。
402、上述发送端根据上述N个切片容器的总带宽及可用链路资源确定承载上述N个切片容器的M个链路,上述M为大于或等于1的整数。
本申请实施例中,可用链路资源可理解为当前可用的链路资源,发送端可以根据N个切片容器的总带宽以及可用链路资源来确定承载N个切片容器的链路具体为哪些链路。具体的,该发送端可以根据N个切片容器的总带宽以及当前可用的链路资源如可用链路的带宽来确定承载N个切片容器的M个链路。作为示例,举例来说,N个切片容器的总带宽为100Mbps,当前可用的链路资源包括链路带宽为100Mbps的链路,则可以确定用于承载N个切片容器的链路为链路带宽为100Mbps的链路。或者,当前可用的链路资源包括链路带宽为40Mbps的链路和链路带宽为60Mbps的链路,则可以确定用于承载N个切片容器的链路为链路带宽为40Mbps的链路以及链路带宽为60Mbps的链路等等。
可理解,以上示例是在链路带宽足以承载N个切片容器的情况下示出的。但是在有些情况下,可能当前可用链路资源的链路带宽不足以承载N个切片容器,如N个切片容器的带宽为100Mbps,但是只有链路带宽为40Mbps的链路和链路带宽为50Mbps的链路。该情况下,也可以应用本申请实施例所提供的数据传输方法。也就是说,链路带宽是否足以承载N个切片容器不影响本申请实施例,只不过该情况下,在传输数据的过程中,可能会出现丢包情况。
403、发送端通过上述M个链路承载上述N个切片容器,以向接收端发送上述数据;上述接收端接收通过上述M个链路承载的N个切片容器。
其中,每个切片容器还包括链路标识,该链路标识为承载每个切片容器的链路的标识。
本申请实施例中,在确定承载N个切片容器的M个链路之后,便可将该N个切片容器分别发配至确定的链路上,然后通过确定的链路承载相应的切片容器,从而向接收端发送数据。每个切片容器通过包括链路标识,可指示每个切片容器所在的链路。可理解,对 于链路标识具体如何设置,不作限定。
举例来说,确定的链路包括链路A、链路B和链路C,有100个切片容器(N为100),序列标识依次为SN0,SN1,…,SN99,如可按照SN0,SN1,…,SN99的顺序依次将100个切片容器分配至链路A、链路B和链路C上,即SN0分配至链路A(携带链路A的标识),SN1分配至链路B(携带链路B的标识),SN2分配至链路C(携带链路C的标识)等等。
进一步地,本申请实施例中,在通过N个切片容器的总带宽以及可用链路资源确定M个链路后,发送端便可通过该M个链路来承载N个切片容器。其中,至于该发送端是如何通过M个链路来承载N个切片容器的详细描述,如下所示。
作为示例,如M个链路包括第一链路和第二链路,则通过上述M个链路承载N个切片容器,包括:
根据上述第一链路和上述第二链路的带宽比例承载上述N个切片容器中的K个切片容器;其中,上述第一链路上承载的切片容器的数量与上述第二链路上承载的切片容器的数量由上述第一链路和上述第二链路的带宽比例确定,上述K≤上述N。
本实施例中,如M个链路为第一链路和第二链路,则可根据该第一链路和该第二链路的带宽比例承载N个切片容器。本实施例中,第一链路上承载的切片容器的数量与第二链路上承载的切片容器的数量可由第一链路和第二链路的带宽比例确定。作为示例,如第一链路和第二链路的带宽比例为2:1,其中,在N为3的倍数的情况下,如N=3k(k为大于或等于1的整数)的情况下,第一链路上可承载2k个切片容器,第二链路上可承载k个切片容器。而在N不为3的倍数的情况下,如N=3k+1的情况下,第一链路上可承载2k个切片容器,第二链路上可承载k个切片容器,剩余的第3k+1可以分配到第一链路上。可选的,接收端还可以继续获取数据,然后继续按照第一链路和第二链路的带宽比例来分配切片容器。或者第一链路上可承载2k个切片容器,第二链路上可承载k+1个切片容器。也就是说,可根据带宽比例确定第一链路和第二链路上承载的切片容器的总数量X,然后剩余的(N-X)个切片容器具体承载在哪个链路上,本实施例不作限定。如发送端还会继续向接收端发送数据,则剩余的(N-K)个切片容器可按照上述X个切片容器的分配顺序继续分配,而若发送端不再向接收端发送数据,则剩余的(N-X)个切片容器可承载于第一链路,也可承载于第二链路。可理解,上述X与带宽比例相关。
实施本实施例,在确定的链路包括为两条链路的情况下,如第一链路和第二链路的情况下,通过根据该第一链路和该第二链路的带宽比例来确定该第一链路和该第二链路上所承载的切片容器的数量比例,从而可在一条链路带宽不足以承载N个切片容器的情况下,通过两条链路来承载该N个切片容器,进而避免了小带宽碎片的资源浪费,提高了小带宽碎片的利用率,提高了光传送网中网络带宽的利用率。
本实施例是以确定的承载N个切片容器的链路包括两个链路为例来说明的,但具体实现中,可能还包括三个链路或三个以上链路等等,因此,在M个链路中包括第一链路和第二链路时,该发送端可根据第一链路和第二链路的带宽比例来承载N个切片容器中的K个切片容器,至于该K的取值,可根据M个链路中所包括的所有链路与第一链路和第二链路的带宽比例来确定。作为示例,M个链路为第一链路、第二链路和第三链路,且第一链路、 第二链路和第三链路的带宽比例为A:B:C,则K的取值可由A+B/(A+B+C)确定。至于具体的方法可参考前述实施方式,这里不再一一详述。
进一步地,本申请的一些实施例中还提供了一种如何分配N个切片容器的方法,如下所示:
上述根据上述第一链路和上述第二链路的带宽比例承载上述N个切片容器中的K个切片容器,包括:
根据上述第一链路和上述第二链路的带宽比例,以及上述每个切片容器包括序列标识依次将上述K个切片容器分配至上述第一链路和上述第二链路;其中,上述第一链路上承载的切片容器为至少一个第一切片容器,上述第二链路上承载的切片容器为至少一个第二切片容器;
通过上述第一链路承载上述第一切片容器,以及通过上述第二链路承载上述第二切片容器。
本实施例中,在确定第一链路和第二链路的带宽比例后,发送端可将K个切片容器分配至第一链路和第二链路,然后通过第一链路和第二链路承载该K个切片容器,以向接收端发送数据。其中,在发送端分别将K个切片容器分配至第一链路和第二链路的情况下,该第一链路上承载的切片容器可称为至少一个第一切片容器,该第二链路上承载的切片容器可称为至少一个第二切片容器。也就是说,分配至第一链路上的切片容器称为第一切片容器,分配至第二链路上的切片容器称为第二切片容器。由此,发送端可通过第一链路承载第一切片容器,通过第二链路承载第二切片容器。
可理解,以上所示的第一切片容器和第二切片容器是以切片容器所在的链路不同来区分,第一切片容器可包括一个或多个切片容器,第二切片容器也可包括一个或多个切片容器,第一切片容器和第二切片容器具体包括的切片容器数量可根据实际情况而定,本实施例不作限定。
举例来说,图6是本申请实施例提供的一种切片分配过程示意图。如图6所示,该实施例是以三个链路,如链路A、链路B和链路C为例,带宽比例为3:2:1,且切片容器中包括的序列标识以SN1,SN2,……,SNN为例来说明。如图6所示,发送端可将相邻的切片容器分别分配至不同的链路,如SN为1的切片容器分配至链路A,SN为2的切片容器分配至链路B,SN为3的切片容器分配至链路C,由于这三个链路的带宽比例为3:2:1,因此,可将SN为4的切片容器分配至链路A,SN为5的切片容器分配至链路B,SN为6的切片容器分配至链路A,依次类推。
其中,SN为1的切片容器、SN为4的切片容器分配至链路以及SN为6的切片容器便可称为第一切片容器;SN为2的切片容器以及SN为5的切片容器便可称为第二切片容器,以及SN为6的切片容器称为第三切片容器。可理解,以上第一切片容器中所包括的切片容器并未示例完整,因此,不应将其理解为对本实施例的限定。
图7是本申请实施例提供的另一种切片分配过程示意图。如图7所示,发送端可根据带宽比例将部分相邻的切片容器分配至不同链路。如发送端可将SN为1的切片容器、SN为2的切片容器以及SN为3的切片容器分配至链路A上,将SN为4的切片容器以及SN为5的切片容器分配至链路B上,将SN为6的切片容器分配至链路C上,依次类推。
可理解,本申请的一些实施例中还提供了一种如何分配N个切片容器的方法,如下所示:
上述根据上述第一链路和上述第二链路的带宽比例承载上述N个切片容器中的K个切片容器,包括:
根据上述第一链路和上述第二链路的带宽比例,以及上述N确定上述第一链路和上述第二链路上承载的切片容器数量;其中,上述第一链路上承载的切片容器数量为第一数量,上述第二链路上承载的切片容器数量为第二数量;
通过上述第一链路承载上述第一数量的切片容器,以及通过上述第二链路承载上述第二数量的切片容器。
本实施例中,发送端可根据第一链路和第二链路的带宽比例以及总的切片容器数量N来确定第一链路和第二链路上所能分配的切片容器数量。举例来说,第一链路和第二链路的带宽比例为1:2,总的切片容器数量为3N,则第一链路上承载的切片容器数量即第一数量为N,第二链路上承载的切片容器的数量即第二数量为2N。可选的,若切片容器数量为3N+1,则第一数量可为N+1,或者,第二数量为2N+1。具体的,发送端在确定了第一数量和第二数量之后,可以第一数量与第二数量的数量比将N个切片容器分别分配至第一链路和第二链路上,也可以直接将第一数量的切片容器和第二数量的切片容器分别分配至第一链路和第二链路上。
作为示例,举例来说,图8是本申请实施例提供的又一种切片分配过程示意图,其中,是以三个链路,如链路A、链路B和链路C为例,且带宽比例为3:2:1,且切片容器中携带的序列标识以SN1,SN2,……,SN6N为例来说明。由于三个链路的带宽比例为3:2:1,则链路A上承载的切片容器的数量为3N,链路B上承载的切片容器的数量为2N,链路C上承载的切片容器的数量为N,则可将序列标识为SN1至SN3N的切片容器通过链路A发送,序列标识为SN3N+1至SN5N的切片容器通过链路B发送,以及序列标识为SN5N+1至SN6N的切片容器通过链路C发送。
可理解,以上数量3N可理解为第一数量、2N可理解为第二数量以及N可理解为第三数量。或者,第一数量为N、第二数量为2N、第三数量为3N等,本实施例对于具体的顺序不作限定。可理解,以上所示的各个链路上承载的切片容器仅为一种示例,不应理解为对本实施例的限定。如也可将序列标识为SN1至SNN的切片容器通过链路C发送,将序列标识为SN3N+1至SN6N的切片容器通过链路A发送。
又举例来说,图9是本申请实施例提供的又一种切片分配过程示意图,可根据第一数量、第二数量以及第三数量的比例来确定不同链路上的切片容器。作为示例,如第一数量为3N,第二数量为2N,第三数量为N,则可根据3:2:1的比例将序列标识为SN1至SN3的切片容器通过链路A发送,将序列标识为SN4和SN5的切片容器通过链路B发送,将序列标识为SN6的切片容器通过链路C发送,依次类推。
可理解,在发送端传输数据的过程中,可能会出现链路的删除或增加,该情况下,如下所示:
上述根据上述N个切片容器的总带宽及可用链路资源确定承载上述N个切片容器的M个链路之后,上述方法还包括:
根据上述N个切片容器的总带宽及上述可用链路资源更新上述M;其中,更新后的M等于更新前的上述M+A,或者,更新后的M等于更新前的上述M-B,上述A为大于或等于1的整数,上述B为大于或等于1的整数。
也就是说,本实施例中,发送端还可根据可用链路资源来更新M,如将M个链路链路增加为M+A个链路,上述A为大于或等于1的整数;或者,将M个链路减少为M-B个链路,上述B为大于或等于1的整数。
本实施例中,出现增加链路或减少链路的情况,可理解为可用链路资源发生了变化,所以需要增加或减少发送端承载N个切片容器的链路。如可理解为有其他设备或装置占用M个链路中的至少一个链路,又或者是其他原因等等,本实施例对于为何增加或减少链路的原因不作限定。
作为示例,如发送端已通过M个链路承载N个切片容器中的N1个切片容器,该情况下,由于可用链路资源发生了变化,因此,需要增加或减少链路,则可根据N个切片容器的总带宽以及可用链路资源来更新M,从而使得更新后的M个链路来承载N个切片容器中的N2个切片容器。其中,N1+N2=N。
其中,以增加链路为例,如以链路B和链路C的基础上增加链路A为例。发送端已通过链路B和链路C发送了N1个切片容器。如在需要增加链路A的情况下,发送端可以将未传输的(N-N1)即N2个切片容器按照链路A、链路B和链路C的带宽比例分别分配至链路A、链路B和链路C上。然后通过链路A、链路B和链路C向数据接收端发送(N-N1)个切片容器。可理解,发送端如何将(N-N1)个切片容器分配至链路A、链路B和链路C的实现方式,可参考其他实施例的描述,这里不再一一详述。以及在具体实现中,还可以在链路B的基础上增加链路A等等,这里不再赘述。
以删除链路为例,如以链路A、链路B和链路C的基础上删除链路A为例。发送端已通过链路A、链路B和链路C发送了N1个切片容器。如在需要删除链路A的情况下,发送端可将链路A的带宽认为是0,然后在链路B和链路C上分配(N-N1)即N2个切片容器,由此发送端不再给链路A分配切片容器。经过一段时间(大于链路时延)后,在链路A上已分配的切片容器发送到接收端后,即在接收端已接收到链路A上承载的切片容器的情况下表,便可删除链路A。可理解,发送端如何将(N-N1)个切片容器分配至链路B和链路C的实现方式,可参考其他实施例的描述,这里不再一一详述。以及在具体实现中,还可以在链路A和链路B的基础上删除链路A等等,这里不再赘述。
本实施例中,发送端不仅可灵活的进行链路的删除,还可灵活的进行链路的增加,从而更加灵活的进行链路的分配或调整,提高了链路的利用率。
404、上述接收端对上述N个切片容器进行排序,以得到上述数据。
具体的,接收端可通过切片容器包括的序列标识对N个切片容器进行排序,以得到发送端发送的数据。
本申请实施例中,在接收端接收N个切片容器的过程中,便可根据序列标识对N个切片容器进行排序,也就是说,接收端通过对N个切片容器进行排序,便可得到N个切片数据的排序情况,从而恢复出发送端发送的数据,即恢复出连续的数据。
作为示例,以图6所示的数据发送端发送N个切片容器的方法为例。图10是本申请 实施例提供的一种排序过程示意图。如图10所示,在接收端进行排序的过程中,有如下规则:
a、由于每个链路上承载的切片容器的SN号是不乱序,即每个链路上承载的切片容器的SN是从小到大排序的,因此调度器从排序队列调度出切片容器后,对各排序队列输出的切片容器进行排序处理,排序按如下处理原则:SN小者先出;且SN输出要求是连续的。
b、只要排序队列非空,调度器则调度输出一个切片容器,当切片容器排序输出后再调度新的切片容器进行排序。其中,在所有队列输出的SN中找出当前最小SN,判断当前SN与上一次输出的SN是否连续;如果连续的则输出当前最小SN,同时在对应队列调度新的SN,重新找出当前最小SN;如果不连续,等待与上次SN相邻的SN到来,如果有SN丢失则通过老化或该排序队列有其他SN输出时则输出当前最小SN。其中,老化可理解为当等待时间达到时间阈值或达到其他可以判定丢失的条件时,不再等待。
可理解,在数据传输过程中,可能会出现切片容器的丢失,尽管这样,也不影响接收端对切片容器的排序过程。
本申请实施例中,通过参考单位来确定N个切片容器的总带宽,如该N个切片容器的带宽可以为参考单位的整数倍,该参考单位可为传输数据的业务的最小带宽,如数据的业务的最小带宽为2Mbps,则该参考单位可以为2Mbps,由此该N个切片容器的总带宽就可以为(2n)Mbps(n为大于或等于1的整数),从而避免了必须以1.24416Gbps为单位;由于该N个切片容器的总带宽可小于1.24416Gbps,因此还避免了由于小带宽链路不足以承载N个切片容器,而导致该小带宽链路浪费的情况,进而有效利用了光传送网中的小带宽链路(也可理解为小带宽碎片),提高了小带宽链路的利用率。
进一步地,对于图4所示的方法,可分别通过图1所示的发送端和接收端来实现。而在发送端将N个切片容器分别承载在如链路A、链路B和链路C上,向接收端发送的过程中,还可通过图2所示的交换单元来进行业务交换,如可通过交换单元对N个切片容器进行切片交换,如增加交换头,从而指示每个切片容器的目的地(如指示接收端的标识)。又如可通过交换单元对N个切片容器进行包交换,如进行组包增加目的标识等等。图2所示的线路处理单元可用于将切片容器封装到OTN线路容器。其中,线路容器是一个共享的容器,所有切片容器都可以使用该共享的容器,该共享的容器可以为每条业务分配最大带宽,保证切片容器的带宽不会超过设定的最大带宽,这样就可以保证每个业务传送带宽。作为示例,图11是本申请实施例提供的一种线路容器的格式示意图。如图11所示,该线路容器可包括帧对齐开销(framer alignment overhead)、光传输单元开销(OTU overhead)、光数据单元开销(ODU overhead)、切片容器定界开销(cell align)、净荷信号指示(payload signal indication,PSI)以及净荷区(payload area)。以及该线路容器中还包括保留区(reserved area,RES)。其中,所有切片容器整体通过速率适配封装到OPU帧(即OTN线路容器)中,当切片容器的带宽不够时填充IDLE数据到OPU帧中,切片容器在OPU帧中定界可以由OPU开销指示来实现,该OPU开销还可指示OPU净荷区第1个字节是切片容器的第几个字节。可理解,以上仅为本申请实施例提供的一种线路容器,在具体实现中还可包括其他种类的线路容器,这里不再一一详述。
进一步地,对于图4所示的方法中发送端所执行的方法,还可通过图2所示的发送端中的业务处理单元和处理单元来实现,以及图4所示的方法中接收端所执行的方法,还可通过图3所示的接收端中的业务处理单元以及处理单元来实现。其中,对于具体的实现方式,可参考前述各个实施例的描述,这里不再一一详述。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
图12是本申请实施例提供的一种发送端的结构示意图,该发送端可用于执行图4所示的方法,如图所示,该发送端包括:
第一确定单元1201,用于根据参考单位确定N个切片容器的总带宽,其中,上述参考单位为传输数据的业务的最小带宽,上述N个切片容器的总带宽为上述参考单位的整数倍,且每个切片容器分别包括切片数据,上述切片数据为对上述数据进行切片处理后得到的数据,上述N为大于或等于2的整数;
第二确定单元1202,用于根据上述N个切片容器的总带宽及可用链路资源确定承载上述N个切片容器的M个链路,上述M为大于或等于1的整数;
发送单元1203,用于通过上述M个链路承载上述N个切片容器,以向接收端发送上述数据。
在一种可能的实现方式中,上述每个切片容器还包括链路标识,上述链路标识为承载上述每个切片容器的链路的标识。
在一种可能的实现方式中,上述每个切片容器还包括序列标识,上述序列标识依据预设规则对上述N个切片容器进行编码得到,且上述序列标识用于表示上述N个切片容器的排序情况。
在一种可能的实现方式中,上述M个链路包括第一链路和第二链路;
上述发送单元1203通过上述M个链路承载上述N个切片容器,具体用于根据上述第一链路和上述第二链路的带宽比例承载上述N个切片容器中的K个切片容器;其中,上述第一链路上承载的切片容器的数量与上述第二链路上承载的切片容器的数量由上述第一链路和上述第二链路的带宽比例确定,上述K≤上述N。
在一种可能的实现方式中,上述发送单元1203,具体用于根据上述第一链路和上述第二链路的带宽比例,以及上述每个切片容器包括的序列标识依次将上述K个切片容器分配至上述第一链路和上述第二链路;其中,上述第一链路上承载的切片容器为至少一个第一切片容器,上述第二链路上承载的切片容器为至少一个第二切片容器;以及通过上述第一链路承载上述第一切片容器,以及通过上述第二链路承载上述第二切片容器。
在一种可能的实现方式中,上述发送单元1203,具体用于根据上述第一链路和上述第二链路的带宽比例,以及上述N确定上述第一链路和上述第二链路上承载的切片容器数量;其中,上述第一链路上承载的切片容器数量为第一数量,上述第二链路上承载的切片容器数量为第二数量;以及通过上述第一链路承载上述第一数量的切片容器,以及通过上述第二链路承载上述第二数量的切片容器。
在一种可能的实现方式中,上述装置还包括:
链路处理单元1204,用于根据上述N个切片容器的总带宽以及上述可用链路资源更新 上述M;其中,更新后的M等于更新前的上述M+A,或者,更新后的M等于更新前的上述M-B,上述A为大于或等于1的整数,上述B为大于或等于1的整数。
其中,各个单元的实现还可以对应参照图4所示的方法实施例的相应描述。
可理解,图3所示的处理器可用于执行第一确定单元1201、第二确定单元1202所示的功能,图3所示的光模块可用于执行发送单元1203所示的功能。可理解,在某些实现方式中,图3所示的处理器可能还可以控制光模块执行发送单元1203所示的功能,如处理器可控制光模块进行切片容器的分配等等,本申请实施例不作限定。
图14是本申请实施例提供的一种接收端的结构示意图,该接收端可用于执行图4所示的方法,如图所示,该接收端包括:
接收单元1401,用于接收发送端通过M个链路承载的N个切片容器;其中,上述N个切片容器的总带宽为上述参考单位的整数倍,上述参考单位为传输数据的业务的最小带宽,且每个切片容器分别包括切片数据,上述切片数据为对数据进行切片处理后得到的数据,且上述每个切片容器还包括序列标识,上述N为大于或等于2的整数;
排序单元1402,用于根据上述序列标识对上述N个切片容器进行排序,获得上述数据。
在一种可能的实现方式中,上述M个链路包括第一链路和第二链路,上述第一链路上承载的切片容器的数量与上述第二链路上承载的切片容器的数量由上述第一链路和上述第二链路的带宽比例确定。
在一种可能的实现方式中,上述每个切片容器还包括链路标识,上述链路标识用于表示承载每个上述切片容器的链路的标识。
其中,各个单元的实现还可以对应参照图4所示的方法实施例的相应描述。
可理解,图3所示的处理器还可用于执行排序单元1402所执行的功能,光模块可用于执行接收单元1401所执行的功能。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (16)

  1. 一种数据传输方法,其特征在于,所述方法应用于光传送网,所述方法包括:
    根据参考单位确定N个切片容器的总带宽,其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数;
    根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路,所述M为大于或等于1的整数;
    通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据。
  2. 根据权利要求1所述的方法,其特征在于,所述每个切片容器还包括链路标识,所述链路标识为承载所述每个切片容器的链路的标识。
  3. 根据权利要求1或2所述的方法,其特征在于,所述每个切片容器还包括序列标识,所述序列标识依据预设规则对所述N个切片容器进行编码得到,且所述序列标识用于表示所述N个切片容器的排序情况。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,所述M个链路包括第一链路和第二链路;
    所述通过所述M个链路承载所述N个切片容器,包括:
    根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器;其中,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定,所述K≤所述N。
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器,包括:
    根据所述第一链路和所述第二链路的带宽比例,以及所述每个切片容器包括的序列标识依次将所述K个切片容器分配至所述第一链路和所述第二链路;其中,所述第一链路上承载的切片容器为至少一个第一切片容器,所述第二链路上承载的切片容器为至少一个第二切片容器;
    通过所述第一链路承载所述第一切片容器,以及通过所述第二链路承载所述第二切片容器。
  6. 根据权利要求4所述的方法,其特征在于,所述根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器,包括:
    根据所述第一链路和所述第二链路的带宽比例,以及所述N确定所述第一链路和所述第二链路上承载的切片容器数量;其中,所述第一链路上承载的切片容器数量为第一数量, 所述第二链路上承载的切片容器数量为第二数量;
    通过所述第一链路承载所述第一数量的切片容器,以及通过所述第二链路承载所述第二数量的切片容器。
  7. 根据权利要求1-6任一项所述的方法,其特征在于,所述根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路之后,所述方法还包括:
    根据所述N个切片容器的总带宽及所述可用链路资源更新所述M;其中,更新后的M等于更新前的所述M+A,或者,更新后的M等于更新前的所述M-B,所述A为大于或等于1的整数,所述B为大于或等于1的整数。
  8. 一种数据传输装置,其特征在于,包括:
    第一确定单元,用于根据参考单位确定N个切片容器的总带宽,其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数;
    第二确定单元,用于根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路,所述M为大于或等于1的整数;
    发送单元,用于通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据。
  9. 根据权利要求8所述的装置,其特征在于,所述每个切片容器还包括链路标识,所述链路标识为承载所述每个切片容器的链路的标识。
  10. 根据权利要求8或9所述的装置,其特征在于,所述每个切片容器还包括序列标识,所述序列标识依据预设规则对所述N个切片容器进行编码得到,且所述序列标识用于表示所述N个切片容器的排序情况。
  11. 根据权利要求8-10任一项所述的装置,其特征在于,所述M个链路包括第一链路和第二链路;
    所述发送单元通过所述M个链路承载所述N个切片容器,具体用于根据所述第一链路和所述第二链路的带宽比例承载所述N个切片容器中的K个切片容器;其中,所述第一链路上承载的切片容器的数量与所述第二链路上承载的切片容器的数量由所述第一链路和所述第二链路的带宽比例确定,所述K≤所述N。
  12. 根据权利要求11所述的装置,其特征在于,
    所述发送单元,具体用于根据所述第一链路和所述第二链路的带宽比例,以及所述每个切片容器包括的序列标识依次将所述K个切片容器分配至所述第一链路和所述第二链路;其中,所述第一链路上承载的切片容器为至少一个第一切片容器,所述第二链路上承载的切片容器为至少一个第二切片容器;以及通过所述第一链路承载所述第一切片容器,以及 通过所述第二链路承载所述第二切片容器。
  13. 根据权利要求11所述的装置,其特征在于,
    所述发送单元,具体用于根据所述第一链路和所述第二链路的带宽比例,以及所述N确定所述第一链路和所述第二链路上承载的切片容器数量;其中,所述第一链路上承载的切片容器数量为第一数量,所述第二链路上承载的切片容器数量为第二数量;以及通过所述第一链路承载所述第一数量的切片容器,以及通过所述第二链路承载所述第二数量的切片容器。
  14. 根据权利要求8-13任一项所述的装置,其特征在于,所述装置还包括:
    链路处理单元,用于根据所述N个切片容器的总带宽以及所述可用链路资源更新所述M;其中,更新后的M等于更新前的所述M+A,或者,更新后的M等于更新前的所述M-B个链路,所述A为大于或等于1的整数,所述B为大于或等于1的整数。
  15. 一种数据传输装置,其特征在于,包括处理器、存储器和光模块,所述处理器和所述存储器耦合,所述处理器用于运行所述存储器内的指令或程序,所述处理器,用于根据参考单位确定N个切片容器的总带宽;以及根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路;其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数,所述M为大于或等于1的整数;
    所述光模块与所述处理器耦合,所述光模块,用于通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据。
  16. 一种数据传输系统,其特征在于,所述数据传输系统包括发送端和接收端;其中,
    所述发送端,用于根据参考单位确定N个切片容器的总带宽,并根据所述N个切片容器的总带宽及可用链路资源确定承载所述N个切片容器的M个链路,所述M为大于或等于1的整数,以及通过所述M个链路承载所述N个切片容器,以向接收端发送所述数据;其中,所述参考单位为传输数据的业务的最小带宽,所述N个切片容器的总带宽为所述参考单位的整数倍,且每个切片容器分别包括切片数据,所述切片数据为对所述数据进行切片处理后得到的数据,所述N为大于或等于2的整数,所述M为大于或等于1的整数;
    所述接收端,用于接收所述发送端通过所述M个链路承载的N个切片容器,以及对所述N个切片容器进行排序,以得到所述数据。
PCT/CN2018/123825 2018-12-26 2018-12-26 数据传输方法及装置 WO2020132928A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/CN2018/123825 WO2020132928A1 (zh) 2018-12-26 2018-12-26 数据传输方法及装置
CN201880100468.4A CN113228538B (zh) 2018-12-26 2018-12-26 数据传输方法及装置
EP18944729.5A EP3883154A4 (en) 2018-12-26 2018-12-26 DATA TRANSFER METHOD AND DEVICE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/123825 WO2020132928A1 (zh) 2018-12-26 2018-12-26 数据传输方法及装置

Publications (1)

Publication Number Publication Date
WO2020132928A1 true WO2020132928A1 (zh) 2020-07-02

Family

ID=71127555

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/123825 WO2020132928A1 (zh) 2018-12-26 2018-12-26 数据传输方法及装置

Country Status (3)

Country Link
EP (1) EP3883154A4 (zh)
CN (1) CN113228538B (zh)
WO (1) WO2020132928A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102118212A (zh) * 2009-12-30 2011-07-06 中兴通讯股份有限公司 一种进行光网络单元带宽分配的方法及光线路终端
CN103023597A (zh) * 2012-12-27 2013-04-03 华为技术有限公司 光网络数据传输的方法及设备
US20130308945A1 (en) * 2011-11-14 2013-11-21 Infinera Corp. Ospfte extension to support gmpls for flexible grid
CN106972906A (zh) * 2017-05-02 2017-07-21 北京邮电大学 一种分组光传送网业务交换及映射系统和方法
CN107770818A (zh) * 2016-08-15 2018-03-06 华为技术有限公司 控制网络切片带宽的方法、装置和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003348129A (ja) * 2002-05-29 2003-12-05 Nippon Telegr & Teleph Corp <Ntt> 光ネットワーク
CN100581090C (zh) * 2007-03-15 2010-01-13 华为技术有限公司 数据帧的切片方法和光网络单元
WO2016150511A1 (en) * 2015-03-26 2016-09-29 Siemens Aktiengesellschaft Device and method for allocating communication resources in a system employing network slicing
CN104954292B (zh) * 2015-05-18 2018-04-20 烽火通信科技股份有限公司 基于clos交换网络的数据包切分和重组的系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102118212A (zh) * 2009-12-30 2011-07-06 中兴通讯股份有限公司 一种进行光网络单元带宽分配的方法及光线路终端
US20130308945A1 (en) * 2011-11-14 2013-11-21 Infinera Corp. Ospfte extension to support gmpls for flexible grid
CN103023597A (zh) * 2012-12-27 2013-04-03 华为技术有限公司 光网络数据传输的方法及设备
CN107770818A (zh) * 2016-08-15 2018-03-06 华为技术有限公司 控制网络切片带宽的方法、装置和系统
CN106972906A (zh) * 2017-05-02 2017-07-21 北京邮电大学 一种分组光传送网业务交换及映射系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3883154A4 *

Also Published As

Publication number Publication date
CN113228538B (zh) 2022-10-18
EP3883154A4 (en) 2022-01-05
CN113228538A (zh) 2021-08-06
EP3883154A1 (en) 2021-09-22

Similar Documents

Publication Publication Date Title
US7230917B1 (en) Apparatus and technique for conveying per-channel flow control information to a forwarding engine of an intermediate network node
KR102513755B1 (ko) 서비스 전송 방법, 설비 및 컴퓨터 저장매체
JP6412154B2 (ja) 光伝送システム及びリソース最適化方法
CN100524282C (zh) 用于san扩展的动态和智能缓冲器管理
US7583664B2 (en) Techniques for transmitting and receiving traffic over advanced switching compatible switch fabrics
US8412040B2 (en) Method and apparatus for mapping traffic using virtual concatenation
RU2500080C2 (ru) СПОСОБ РЕГУЛИРОВКИ ПОЛОСЫ ПРОПУСКАНИЯ КАНАЛА ODUflex БЕЗ ПОТЕРЬ И КАНАЛ ODUflex
JP5148716B2 (ja) 集約されたクライアントパケットのトランスポート
WO2019062227A1 (zh) 数据传输方法、传输设备和传输系统
CN109391461B (zh) 透传业务频率的方法和设备
EP3605975B1 (en) Client service transmission method and device
CN113972997A (zh) 一种传输数据的方法和设备
CN1883158A (zh) 用于传输上的改进型光纤信道超量预订的装置和方法
WO2006056135A1 (fr) Procede, appareil et systeme de multiplexage d&#39;apres une procedure de mise en trame a insertion-extraction (gfp)
KR102633193B1 (ko) 메시지 처리 방법 및 관련 장치
US20060140226A1 (en) Techniques for processing traffic transmitted over advanced switching compatible switch fabrics
US8867528B2 (en) Method and apparatus for switching packet/time division multiplexing (TDM) including TDM circuit and carrier ethernet packet signal
JP5690938B2 (ja) 通信ネットワークにおいてトラフィックを送信する方法及び通信ネットワーク装置
CN1881845B (zh) 实现多路多种数据业务汇聚传送的装置及其方法
EP2077637B1 (en) System and method for protecting payload information in radio transmission
WO2020132928A1 (zh) 数据传输方法及装置
US20040105453A1 (en) Capacity re-use in data communication networks
WO2021057678A1 (zh) 业务处理方法、装置及存储介质
US7558260B2 (en) Byte-timeslot-synchronous, dynamically switched multi-source-node data transport bus system
US7289507B2 (en) Method and network element for a safety transport of ethernet frames over a transport SDH/SONET network

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18944729

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018944729

Country of ref document: EP

Effective date: 20210617