WO2019233155A1 - 通用数据流的封装方法、解封装方法及装置 - Google Patents

通用数据流的封装方法、解封装方法及装置 Download PDF

Info

Publication number
WO2019233155A1
WO2019233155A1 PCT/CN2019/078368 CN2019078368W WO2019233155A1 WO 2019233155 A1 WO2019233155 A1 WO 2019233155A1 CN 2019078368 W CN2019078368 W CN 2019078368W WO 2019233155 A1 WO2019233155 A1 WO 2019233155A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
area
header
payload
data area
Prior art date
Application number
PCT/CN2019/078368
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 北京开广信息技术有限公司
Publication of WO2019233155A1 publication Critical patent/WO2019233155A1/zh
Priority to US17/113,179 priority Critical patent/US11375051B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/03Protocol definition or specification 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/325Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25

Definitions

  • the present disclosure relates to the technical field of digital information transmission, and in particular, to a method, a device, and a method for encapsulating a universal data stream.
  • the current method is to specify a standard data stream format, and then define the encapsulation standards for various business data to the standard data stream and the encapsulation methods for the standard data stream to various different transmission channels.
  • the specified standard data stream formats can include: MPEG-2TS and DVB-GSE.
  • MPEG-2TS uses fixed-length TS packets.
  • DVB-GSE uses a variable-length packet format, which can directly encapsulate IP packets, but it is difficult to encapsulate stream data, and the encapsulation efficiency of fixed-length packets is low. Therefore, it is difficult for the above-mentioned encapsulation method to uniformly realize efficient multiplexing and transmission of variable-length packet services, fixed-length packet services, and streaming services.
  • the present disclosure aims to solve at least one of the technical problems in the related art.
  • a first object of the present disclosure is to propose a method for encapsulating a universal data stream, which is used to solve the efficiency when uniformly multiplexing and transmitting variable length packet services, fixed length packet services, and streaming services in the prior art. Poor question.
  • a second object of the present disclosure is to propose a method for decapsulating a general data stream.
  • a third object of the present disclosure is to provide a device for encapsulating a universal data stream.
  • a fourth object of the present disclosure is to propose a decapsulation device for a universal data stream.
  • a fifth object of the present disclosure is to propose another encapsulation device for a universal data stream.
  • a sixth object of the present disclosure is to propose another decapsulation device for a universal data stream.
  • a seventh object of the present disclosure is to propose a non-transitory computer-readable storage medium.
  • An eighth object of the present disclosure is to propose another non-transitory computer-readable storage medium.
  • a ninth object of the present disclosure is to propose a computer program product.
  • a tenth object of the present disclosure is to propose another computer program product.
  • an embodiment of the first aspect of the present disclosure proposes a general data stream (GDS) encapsulation method, including:
  • the data area includes: a data area header and a data area payload;
  • the data area header includes: a basic area header and an extended area header Or, the basic area header;
  • the basic area header includes: a transmission object identifier, a data area length, a data area payload encapsulation method, and an extended area header indication;
  • the data area payload encapsulation method is a variable length packet encapsulation method, Fixed-length packet encapsulation or stream encapsulation;
  • the extended area header indication is used to indicate whether an extended area header exists;
  • the extended area header includes: at least one extended parameter;
  • the one or more data areas are from the same transmission object or different transmission objects.
  • the method for packaging a universal data stream encapsulates data of a transmission object according to the format of the universal data stream to obtain at least one data area;
  • the data area includes: a data area header and a data area payload; and
  • the data area header includes : Basic area header and extended area header, or basic area header;
  • basic area header includes: transmission object identifier, data area length, data area payload encapsulation method, and extension area header indication;
  • data area payload encapsulation method is variable length Package encapsulation method, fixed-length packet encapsulation method, or stream encapsulation method;
  • the extension area header indication is used to indicate whether an extension area header exists;
  • the extension area header includes: at least one extension parameter; and one or more data areas are concatenated to obtain
  • the universal data stream to be transmitted, and the universal data stream is transmitted; among them, one or more data areas are from the same transmission object or different transmission objects; thus, the variable length packet service, fixed length packet service and stream can be uniformly realized Service multiple
  • an embodiment of the second aspect of the present disclosure provides a method for decapsulating a universal data stream, including:
  • the universal data stream is formed by concatenating one or more data regions;
  • the data region includes: a data region header and a data region payload;
  • the data region header includes: a basic region header and an extended region Header, or basic area header;
  • the basic area header includes: transmission object identifier, data area length, data area payload encapsulation method, and extended area header indication;
  • the data area payload encapsulation method is a variable-length packet encapsulation method , Fixed-length packet encapsulation mode or stream encapsulation mode;
  • extension area header indication which is used to indicate whether an extension area header exists;
  • the extension area header includes: at least one extension parameter;
  • the data area is a data area to be parsed, determining whether there is an extension area header according to the instruction of the extension area header;
  • extension area header exists, analyzing the extension area header to obtain extension parameters
  • the method for decapsulating the universal data stream in the embodiment of the present disclosure includes receiving a universal data stream; the universal data stream is formed by concatenating one or more data regions; the data region includes: a data region header and a data region payload; and a data region header Including: basic area header and extended area header, or basic area header; basic area header includes: transmission object identifier, data area length, data area payload encapsulation method and extension area header indication; data area payload encapsulation method is Long packet encapsulation, fixed-length packet encapsulation, or stream encapsulation; extension area header indication, which indicates whether an extension area header exists; the extension area header includes: at least one extension parameter; for each data area of the universal data stream, according to The object identifier is transmitted to determine whether the data area is a data area to be parsed.
  • the data area is a data area to be parsed, it is determined whether there is an extension area header according to the instruction of the extension area header. If the extension area header exists, the extension area header is parsed. To obtain extended parameters; to obtain the data area payload in the data area to be parsed according to the length of the data area; to encapsulate the data area payload according to the extended parameters To decapsulate the payload of the data area and obtain the data of the transmission object, so that the multiplexing and transmission of the variable-length packet service, fixed-length packet service, and streaming service can be unified, and the variable-length packet service and fixed-length packet can be improved. Multiplexing efficiency and transmission efficiency of services and streaming services.
  • an embodiment of the third aspect of the present disclosure proposes a device for encapsulating a universal data stream, including:
  • At least one encapsulation module is configured to encapsulate the data of the transmission object according to the format of the universal data stream to obtain at least one data area;
  • the data area includes: a data area header and a data area payload;
  • the data area header includes: The basic area header and the extended area header, or the basic area header;
  • the basic area header includes: a transmission object identifier, a data area length, a data area payload encapsulation method, and an extension area header indication;
  • the data area payload encapsulation method is A variable-length packet encapsulation method, a fixed-length packet encapsulation method, or a flow encapsulation method; wherein the extension area header indication is used to indicate whether an extension area header exists;
  • the extension area header includes: at least one extension parameter;
  • a cascading module configured to cascade the one or more data regions to obtain a universal data stream to be transmitted, and transmit the universal data stream; the one or more data regions are from a same transmission object Or different delivery objects.
  • an embodiment of the fourth aspect of the present disclosure provides a decapsulation device for a universal data stream, including:
  • a judging module configured to judge, for each data area of the universal data stream, whether the data area is a data area to be parsed according to the identifier of the transmission object;
  • the judging module is further configured to judge whether an extension area header exists according to the instruction of the extension area header when the data area is a data area to be parsed;
  • a parsing module configured to parse the extension area header and obtain extension parameters when the extension area header exists
  • An obtaining module configured to obtain a data area payload in the data area to be parsed according to the length of the data area
  • a decapsulation module is configured to decapsulate the data area payload according to the extension parameter and the data area payload packaging method to obtain data of a transmission object.
  • an embodiment of the fifth aspect of the present disclosure proposes another device for encapsulating a universal data stream, including:
  • the memory, the processor, and the computer program stored on the memory and executable on the processor are characterized in that, when the processor executes the program, the general data stream packaging method as described above is implemented.
  • an embodiment of the sixth aspect of the present disclosure proposes another decapsulation device for a general data stream, including:
  • the memory, the processor, and the computer program stored on the memory and executable on the processor are characterized in that, when the processor executes the program, the method for decapsulating the universal data stream as described above is implemented.
  • an embodiment of the seventh aspect of the present disclosure proposes a non-transitory computer-readable storage medium on which a computer program is stored, which is implemented by a processor to implement a method for encapsulating a universal data stream as described above .
  • an embodiment of the eighth aspect of the present disclosure proposes another non-transitory computer-readable storage medium on which a computer program is stored, and the program is executed by a processor to implement the solution of the general data stream as described above.
  • Packaging method proposes another non-transitory computer-readable storage medium on which a computer program is stored, and the program is executed by a processor to implement the solution of the general data stream as described above.
  • an embodiment of the ninth aspect of the present disclosure proposes a computer program product.
  • an instruction processor in the computer program product executes, a method for encapsulating a general data stream as described above is implemented.
  • an embodiment of the tenth aspect of the present disclosure proposes a computer program product.
  • an instruction processor in the computer program product executes, a method for decapsulating a general data stream as described above is implemented.
  • FIG. 1 is a schematic flowchart of a method for encapsulating a universal data stream according to an embodiment of the present disclosure
  • FIG. 2 is a schematic structural diagram of a general data stream
  • FIG. 3 is a schematic structural diagram of an extension area header
  • FIG. 4 is a schematic structural diagram of a data area corresponding to an IP service
  • FIG. 5 is a schematic structural diagram of a data area corresponding to an ATM service
  • FIG. 6 is a schematic structural diagram of a data area corresponding to a PCM service
  • FIG. 7 is a schematic structural diagram of a data area corresponding to a formatted stream service
  • FIG. 8 is a schematic flowchart of a method for decapsulating a universal data stream according to an embodiment of the present disclosure
  • FIG. 9 is a schematic structural diagram of a universal data stream packaging device according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of a decapsulation device for a universal data stream according to an embodiment of the present disclosure
  • FIG. 11 is a schematic structural diagram of another universal data stream encapsulation device according to an embodiment of the present disclosure.
  • FIG. 1 is a schematic flowchart of a method for encapsulating a universal data stream according to an embodiment of the present disclosure. As shown in FIG. 1, the method for encapsulating the universal data stream includes the following steps:
  • S101 Encapsulate data of a transmission object according to a format of a general data stream to obtain at least one data area;
  • the data area includes: a data area header and a data area payload;
  • the data area header includes: a basic area header and an extended area header, or , Basic area header;
  • basic area header includes: transmission object identification, data area length, data area payload encapsulation method and extended area header indication;
  • data area payload encapsulation method is variable length packet encapsulation method, fixed length packet encapsulation method, or Stream encapsulation method;
  • extension area header indication which is used to indicate whether an extension area header exists;
  • the extension area header includes: at least one extension parameter.
  • S102 Cascade one or more data areas to obtain a universal data stream to be transmitted, and transmit the universal data stream; one or more data areas are from the same transmission object or different transmission objects.
  • the main body of the method for encapsulating a universal data stream provided by the present disclosure is a device for encapsulating a universal data stream.
  • the device for encapsulating a universal data stream may be a hardware device such as a terminal device or a server, or may be software installed on the hardware device.
  • the structure of the general data stream may be as shown in FIG. 2.
  • the general data stream includes a data area A, a data area B, a data area C, a data area D, and so on.
  • the transport object identifier indicates the transport object to which the encapsulated data in the data area payload belongs.
  • the transmission object may be, for example, a service, and the transmission object identifier may be a service identifier.
  • the services may be, for example, IP services, Ethernet services, ATM services, PCM services, TS services, GSE services, and the like.
  • the IP service and the Ethernet service belong to the variable-length packet service;
  • the ATM service belongs to the fixed-length packet service;
  • the PCM service belongs to the unformatted stream service;
  • the TS service and the GSE service belong to the formatted stream service.
  • the identifier of the transmission object may be allocated by the encapsulation device of the universal data stream, or generated according to the service identifier mapping.
  • the TS service generally uses a 13-bit PID identification. If the transmission target identification is 24 bits, a 11-bit fixed prefix can be added in front of the PID identification to obtain the transmission target identification.
  • the data area length indicates the amount of data contained in the entire data area.
  • the number of bits in the data area length limits the maximum length of the data area. For example, when the number of bits is 16, the maximum length of the data area is 65535 bytes.
  • the data area payload encapsulation method indicates a method for encapsulating data of a transmission target into the data area payload.
  • the data area payload encapsulation method is: variable length packet encapsulation method, fixed length packet encapsulation method or stream encapsulation method.
  • the extended area header indication is used to indicate whether the extended area header exists.
  • the extension area header does not need to exist. However, in some encapsulation methods, some new parameters must be introduced. These parameters can be placed in the extension area header for transmission, which is called extension parameters.
  • the extension area header includes: one or more extension parameters.
  • the structure of the extension area header can be shown in FIG. 3, for example.
  • the extension area header is formed by concatenating the length of the extension area header and at least one extension parameter field; each extension parameter field encapsulates one extension.
  • Parameters including: extended parameter type, extended parameter length, and extended parameter value.
  • the length of the extended area header indicates the amount of data contained in the entire extended area header;
  • the extended parameter type indicates the name of the extended parameter to distinguish different extended parameters;
  • the extended parameter length indicates the amount of data contained in the entire extended parameter field;
  • the extended parameter value is the content of the extended parameter.
  • an IP service is taken as an example for description.
  • the IP service is a variable-length packet service
  • the data to be transmitted is IP service data.
  • the transmission object indicated by the transmission object identifier is a variable-length packet service.
  • the data area payload encapsulation method is a variable length packet encapsulation method; correspondingly, the data area payload includes: at least one data unit; the data unit includes: a unit header and a unit payload; and a unit header Including: segmentation indication, unit length and unit type.
  • FIG. 4 it is a schematic structural diagram of a data area corresponding to an IP service.
  • the segmentation indication may be a 2-bit field used to indicate the segmentation state when the data packet of the transmission object is encapsulated into the data unit, and the segmentation state may be one of the following four states: the unit payload is a complete The data packet, the unit payload is a segment of the data packet and is the start segment, the unit payload is a segment of the data packet and is the middle segment, and the unit payload is a segment of the data packet and is the last segment.
  • the unit length indicates the amount of data contained in the data unit; the unit length can be selected as an 11-bit field to meet the needs of IP packet encapsulation; the unit type indicates the type of data encapsulated in the unit payload.
  • the unit type can be an object data unit or a padding unit.
  • the unit payload is the entire data packet or part of the data of the transmission target; when the unit type is the padding unit, the unit payload is a padding packet composed of random data or preset data. .
  • IP data packets when an IP data packet is encapsulated into a data unit, some IP data packets are directly encapsulated into the unit payload of a data unit without segmentation, and the segmentation in the unit header indicates the complete IP Data packets; some IP data packets can be encapsulated into several consecutive data units in segments, and a segmentation indication is used to indicate that they are the beginning, middle, or end segments of the IP data packet.
  • These data units may be transmitted in a data area in the order of generation, or may be transmitted in multiple data areas containing the same transmission object identifier on a common data stream.
  • variable-length packet encapsulation method the unit header of each data unit only needs two bytes to encapsulate an IP data packet, and one data area can simultaneously encapsulate multiple IP data packets. Therefore, the data area can be reduced as much as possible In the end, the overhead occupied by the header can achieve higher efficiency than MPEG2-TS and DVB-GSE in the packaging of variable length packets.
  • the ATM service is taken as an example for description.
  • the ATM service is a fixed-length packet service
  • the data to be transmitted is ATM service data.
  • the transmission object indicated by the transmission object identifier is a fixed-length packet service.
  • the transmission object is a fixed-length packet service
  • the data area payload is encapsulated in a fixed-length package; the data area payload is formed by concatenating data packets; the extension area header indicates that there is an extension area header; the extension area header includes: Packet length and packet start position.
  • each P represents a fixed-length data packet, such as an ATM data packet.
  • the packet length indicates the data amount of a fixed-length data packet;
  • the packet start position indicates the starting position of a fixed-length data packet in the data area payload.
  • the packet length is 53, which indicates that the length of each ATM data packet in the data area payload is 53 bytes.
  • the length of the data area cannot be guaranteed to be exactly an integer multiple of 53 bytes, which will result in the following result: an ATM data packet may be encapsulated into the previous data The end of the area and the beginning of the next data area.
  • these two data areas correspond to the same transfer object identifier. Therefore, in the extended area header of the data area, the start position of an ATM data packet in the payload of the data area needs to be indicated by the start position of the data area: for example, the start position of the first ATM data packet.
  • the complete ATM data packet can be recovered.
  • the start position of an ATM data packet in the payload of the data area can be determined by the packet start position, and then subsequent ATM data packets are correctly parsed according to the packet length.
  • This fixed-length packet encapsulation method can greatly improve the packaging efficiency of fixed-length packets by encapsulating multiple fixed-length packets in one data area, and avoids the DVB-GSE protocol adding a GSE header to each packet. s expenses.
  • the PCM service is taken as an example for description.
  • the PCM service is a plain stream service
  • the data of the transmission object is PCM service data.
  • the transmission object indicated by the transmission object identifier is a plain stream service.
  • the data area payload encapsulation method is a stream encapsulation method; the data area payload is obtained by filling the data stream of the transmission object.
  • FIG. 6 it is a schematic structural diagram of a data area corresponding to a PCM service.
  • the original PCM service data stream can be restored by concatenating the data area payload of the data area with the same transmission object identifier in the receiving order.
  • the MPEG-2TS service and the DVB-GSE service are taken as examples for description.
  • the MPEG2-TS service and the DVB-GSE service are formatted stream services.
  • the data of the MPEG2-TS service is a transport stream.
  • DVB -The data of the GSE service is a general stream; when the transmission object is a formatted stream service, the data area payload encapsulation method is a stream encapsulation method; the data area payload is obtained by filling the data stream of the transmission object; the data of the transmission object
  • the stream is formed by concatenating data blocks (Data Blocks, DBs) defined by the protocol type; the extension area header indicates that there is an extension area header; the extension area header includes the block start position.
  • FIG. 7 it is a schematic structural diagram of a data area corresponding to a formatted stream service.
  • the protocol type indicates the encapsulation protocol of the data to be transmitted; the block start position indicates the start position of the data block (DB) in the data area payload.
  • the meaning of the data block is determined by the protocol type.
  • the protocol type may be MPEG-2TS, DVB-GSE, or the like.
  • the data block DB is a TS packet
  • the block start position is the starting position of the TS packet in the data area payload
  • the protocol type is DVB-GSE
  • the data block DB is one GSE packet
  • the block start position is the start position of the GSE packet in the data area payload.
  • the above-mentioned encapsulation method realizes the unified transmission of MPEG-2TS service data and DVB-GSE service data.
  • the MPEG2-TS service data and DVB-GSE service data can be transmitted to the transmission channel through a format, which simplifies the transmission interface and passes the data. District isolation to ensure the quality of business.
  • the present disclosure can adopt the most effective encapsulation methods according to the data characteristics of the variable-length packet service, fixed-length packet service, and streaming service, so as to uniformly implement the variable-length packet service, fixed-length packet service, and streaming service Efficient multiplexing and transmission.
  • the method for packaging a universal data stream encapsulates data of a transmission object according to the format of the universal data stream to obtain at least one data area;
  • the data area includes: a data area header and a data area payload; and
  • the data area header includes : Basic area header and extended area header, or basic area header;
  • basic area header includes: transmission object identifier, data area length, data area payload encapsulation method, and extension area header indication;
  • data area payload encapsulation method is variable length Packet encapsulation method or fixed-length packet encapsulation method or stream encapsulation method;
  • extension area header indication which is used to indicate whether there is an extension area header;
  • the extension area header includes: at least one extension parameter; cascading one or more data areas to obtain The universal data stream to be transmitted, and the universal data stream is transmitted; among them, one or more data areas are from the same transmission object or different transmission objects; thus, the variable length packet service, fixed length packet service and stream can be uniformly realized Service multiplexing
  • FIG. 8 is a schematic flowchart of a method for decapsulating a universal data stream according to an embodiment of the present disclosure. As shown in FIG. 8, the method for decapsulating the universal data stream includes the following steps:
  • the universal data stream is formed by concatenating one or more data areas.
  • the data area includes: a data area header and a data area payload.
  • the data area header includes: a basic area header and an extended area header, or, Basic area header; basic area header includes: transmission object identifier, data area length, data area payload encapsulation method, and extended area header indication; data area payload encapsulation method is variable length packet encapsulation method, fixed length packet encapsulation method, or stream Encapsulation method; extension area header indication, which is used to indicate whether an extension area header exists; the extension area header includes: at least one extension parameter.
  • the device for decapsulating the universal data stream provided by the present disclosure may specifically be a hardware device such as a terminal device or a server, or may be software installed on the hardware device.
  • the transport object identifier indicates the transport object to which the encapsulated data in the payload of the data area belongs.
  • the transmission object may be, for example, a service, and the transmission object identifier may be a service identifier.
  • the services may be, for example, IP services, Ethernet services, ATM services, PCM services, TS services, GSE services, and the like. Among them, the IP service and the Ethernet service belong to the variable-length packet service; the ATM service belongs to the fixed-length packet service; the PCM service belongs to the unformatted stream service; the TS service and the GSE service belong to the formatted stream service.
  • the method for encapsulating the extended area header with at least one extended parameter is: the extended area header may be cascaded from the extended area header length and at least one extended parameter field; the extended parameter field includes: extended parameter type, extended parameter length And extended parameter values.
  • the length of the extended area header indicates the amount of data contained in the entire extended area header;
  • the extended parameter type indicates the name of the extended parameter to distinguish different extended parameters;
  • the extended parameter length indicates the amount of data contained in the entire extended parameter field;
  • the extended parameter value is the content of the extended parameter.
  • a specific service for example, an IP service
  • only the data area corresponding to the IP service is required, and the data areas of other services are not required to be parsed, thereby reducing the analysis workload.
  • the TS packets or GSE packets need to be analyzed one by one.
  • the method may further include: obtaining a start position of a data area header of each data area.
  • the start position of the first data area header contained in the general data stream is generally from the physical layer channel frame.
  • CMMB China Mobile Multimedia Broadcasting
  • CMMB China Mobile Multimedia Broadcasting
  • a common data stream that encapsulates multiple services can be directly transmitted on a multiplexed frame composed of several time slots, and sent in The end ensures that the multiplex frame header and the data area header are aligned.
  • the multiplex frame can be recovered from the receive time slot, and the first byte of the multiplex frame is the starting position of a data area header.
  • the start position of the subsequent data area header can be obtained by the data area length.
  • the data area is a data area to be parsed, determine whether there is an extension area header according to the instruction of the extension area header, and if there is an extension area header, parse the extension area header to obtain extension parameters.
  • the decapsulation device of the universal data stream may perform the following process: parse the extended area header to obtain extended parameters; the extended area header is composed of the extended area header length and at least one extended parameter domain level
  • the extended parameter field includes: extended parameter type, extended parameter length, and extended parameter value.
  • the data area may be parsed in a serial manner or a parallel manner.
  • serial mode if the data area is not the data area to be parsed, the next data area in the universal data stream is obtained, and then steps 802 and 803 are repeatedly performed.
  • parallel mode multiple data areas of the universal data stream are obtained before step 802, and then steps 802 and 803 are performed in parallel for each data area. If a data area is not a data area to be parsed, the data area is terminated Parsing.
  • the data area payload encapsulation method may be: a variable length packet encapsulation method, a fixed length packet encapsulation method, or a stream encapsulation method.
  • the method for decapsulating the universal data stream in the embodiment of the present disclosure includes receiving a universal data stream; the universal data stream is formed by concatenating one or more data regions; the data region includes: a data region header and a data region payload; and a data region header Including: basic area header and extended area header, or basic area header; basic area header includes: transmission object identifier, data area length, data area payload encapsulation method and extension area header indication; data area payload encapsulation method is Long packet encapsulation, fixed-length packet encapsulation, or stream encapsulation; extension area header indication, which indicates whether an extension area header exists; the extension area header includes: at least one extension parameter; for each data area of the universal data stream, according to The object identifier is transmitted to determine whether the data area is a data area to be parsed.
  • the data area is a data area to be parsed, it is determined whether there is an extension area header according to the instruction of the extension area header. If the extension area header exists, the extension area header is parsed.
  • To obtain extended parameters; to obtain the data area payload in the data area to be parsed according to the length of the data area; to encapsulate the data area payload according to the extended parameters Method to decapsulate the payload of the data area and obtain the data of the transmission object, so that the multiplexing and transmission of the variable-length packet service, the fixed-length packet service, and the streaming service can be realized uniformly, and the variable-length packet service and the fixed-length packet can be improved. Multiplexing efficiency and transmission efficiency of services and streaming services.
  • FIG. 9 is a schematic structural diagram of a universal data stream packaging device according to an embodiment of the present disclosure. As shown in FIG. 9, the device for encapsulating the universal data stream includes:
  • At least one encapsulation module 91 is configured to encapsulate the data of the transmission object according to the format of the universal data stream to obtain at least one data area;
  • the data area includes: a data area header and a data area payload;
  • the data area header includes : A basic area header and an extended area header, or a basic area header;
  • the basic area header includes: a transmission object identifier, a data area length, a data area payload encapsulation method, and an extension area header indication;
  • the data area payload encapsulation method The variable-length packet encapsulation method, the fixed-length packet encapsulation method, or the flow encapsulation method; wherein the extension area header indication is used to indicate whether an extension area header exists;
  • the extension area header includes: at least one extension parameter;
  • a cascading module 92 is configured to cascade the one or more data areas to obtain a universal data stream to be transmitted, and transmit the universal data stream; one or more data areas are from a same transmission object or Different delivery objects.
  • the device for encapsulating a universal data stream encapsulates data of a transmission object according to the format of the universal data stream to obtain at least one data area;
  • the data area includes: a data area header and a data area payload; and
  • the data area header includes : Basic area header and extended area header, or basic area header;
  • basic area header includes: transmission object identifier, data area length, data area payload encapsulation method, and extension area header indication;
  • data area payload encapsulation method is variable length Package encapsulation method, fixed-length packet encapsulation method, or stream encapsulation method.
  • the extension area header indication is used to indicate whether an extension area header exists; the extension area header includes: at least one extension parameter; and one or more data areas are cascaded.
  • the extension area header includes: at least one extension parameter; and one or more data areas are cascaded.
  • the variable-length packet service and fixed-length packet service can be unifiedly realized.
  • streaming service multiplexing and transmission, and improve the multiplexing efficiency and transmission efficiency of variable-length packet services, fixed-length packet services and streaming services.
  • FIG. 10 is a schematic structural diagram of a decapsulation device for a universal data stream according to an embodiment of the present disclosure. As shown in FIG. 10, the universal data stream decapsulation device includes:
  • the receiving module 11 is configured to receive a universal data stream.
  • the universal data stream is formed by concatenating one or more data regions.
  • the data region includes a data region header and a data region payload.
  • the data region header includes: Basic area header and extended area header, or basic area header; the basic area header includes: transmission object identifier, data area length, data area payload encapsulation method, and extended area header indication; the data area payload encapsulation method is Long packet encapsulation, fixed-length packet encapsulation, or stream encapsulation; extension area header indication, which indicates whether an extension area header exists; the extension area header includes: at least one extension parameter;
  • a determining module 12 configured to determine, for each data area of the universal data stream, whether the data area is a data area to be parsed according to the identifier of the transmission object;
  • the determining module 12 is further configured to determine whether an extension area header exists according to the instruction of the extension area header when the data area is a data area to be parsed;
  • An analysis module 13 is configured to parse the extension area header to obtain extension parameters when the extension area header exists;
  • An obtaining module 14 configured to obtain a data area payload in the data area to be parsed according to the length of the data area;
  • the decapsulation module 15 is configured to decapsulate the data area payload according to the extension parameter and the data area payload packaging method to obtain data of a transmission object.
  • the device for decapsulating the universal data stream in the embodiment of the present disclosure receives the universal data stream; the universal data stream is formed by concatenating one or more data regions; the data region includes: a data region header and a data region payload; the data region header Including: basic area header and extended area header, or basic area header; basic area header includes: transmission object identifier, data area length, data area payload encapsulation method and extension area header indication; data area payload encapsulation method is Long packet encapsulation, fixed-length packet encapsulation, or stream encapsulation; extension area header indication, which indicates whether an extension area header exists; the extension area header includes: at least one extension parameter; for each data area of the universal data stream, according to The object identifier is transmitted to determine whether the data area is the data area to be parsed.
  • the data area is the data area to be parsed, it is determined whether there is an extension area header according to the indication of the extension area header; if the extension area header is present, the extension area header is parsed To obtain extended parameters; to obtain the data area payload in the data area to be parsed according to the length of the data area; according to the data area payload encapsulation method, logarithmic
  • the zone payload is decapsulated to obtain the data of the transmission object, so that the multiplexing and transmission of the variable-length packet service, fixed-length packet service, and streaming service can be unifiedly realized, and the variable-length packet service, fixed-length packet service, and streaming service can be improved. Multiplexing efficiency and transmission efficiency.
  • FIG. 11 is a schematic structural diagram of another universal data stream encapsulation device according to an embodiment of the present disclosure.
  • the universal data stream packaging device includes:
  • the device for encapsulating the universal data stream further includes:
  • the communication interface 1003 is used for communication between the memory 1001 and the processor 1002.
  • the memory 1001 is configured to store a computer program that can be run on the processor 1002.
  • the memory 1001 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), for example, at least one disk memory.
  • the processor 1002 is configured to implement the method for encapsulating the universal data stream in the foregoing embodiment when the program is executed.
  • the bus may be an Industry Standard Architecture (ISA) bus, a Peripheral Component (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Wait.
  • ISA Industry Standard Architecture
  • PCI Peripheral Component
  • EISA Extended Industry Standard Architecture
  • the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is used in FIG. 11, but it does not mean that there is only one bus or one type of bus.
  • the memory 1001, the processor 1002, and the communication interface 1003 are integrated and implemented on a chip, the memory 1001, the processor 1002, and the communication interface 1003 can complete communication with each other through an internal interface.
  • the processor 1002 may be a central processing unit (Central Processing Unit), or a specific integrated circuit (Application Specific Integrated Circuit, ASIC), or may be configured to implement one or more of the embodiments of the present disclosure. integrated circuit.
  • Central Processing Unit Central Processing Unit
  • ASIC Application Specific Integrated Circuit
  • This embodiment also provides another decapsulation device for a common data stream, including: a memory, a processor, and a computer program stored on the memory and executable on the processor.
  • the processor executes the program, the program is implemented as described above. Decapsulation method of the general data stream described above.
  • This embodiment also provides a non-transitory computer-readable storage medium on which a computer program is stored, which is characterized in that, when the program is executed by a processor, the method for encapsulating a universal data stream as described above, or decapsulating method.
  • This embodiment also provides a computer program product that, when executed by an instruction processor in the computer program product, implements a general data stream encapsulation method as described above, or a decapsulation method.
  • first and second are used for descriptive purposes only and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as “first” and “second” may explicitly or implicitly include at least one of the features. In the description of the present disclosure, the meaning of "plurality” is at least two, for example, two, three, etc., unless it is specifically and specifically defined otherwise.
  • any process or method description in a flowchart or otherwise described herein can be understood as representing a module, fragment, or portion of code that includes one or more executable instructions for implementing steps of a custom logic function or process
  • the scope of the preferred embodiments of the present disclosure includes additional implementations in which the functions may be performed out of the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order according to the functions involved, which should It is understood by those skilled in the art to which the embodiments of the present disclosure belong.
  • a sequenced list of executable instructions that can be considered to implement a logical function can be embodied in any computer-readable medium,
  • the instruction execution system, device, or device such as a computer-based system, a system including a processor, or other system that can fetch and execute instructions from the instruction execution system, device, or device), or combine these instruction execution systems, devices, or devices Or equipment.
  • a "computer-readable medium” may be any device that can contain, store, communicate, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device.
  • computer readable media include the following: electrical connections (electronic devices) with one or more wirings, portable computer disk cartridges (magnetic devices), random access memory (RAM), Read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disk read-only memory (CDROM).
  • the computer-readable medium may even be paper or other suitable medium on which the program can be printed, because, for example, by optically scanning the paper or other medium, followed by editing, interpretation, or other suitable Processing to obtain the program electronically and then store it in computer memory.
  • portions of the present disclosure may be implemented in hardware, software, firmware, or a combination thereof.
  • multiple steps or methods may be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system.
  • Discrete logic circuits with logic gates for implementing logic functions on data signals Logic circuits, ASICs with suitable combinational logic gate circuits, programmable gate arrays (PGA), field programmable gate arrays (FPGAs), etc.
  • a person of ordinary skill in the art can understand that all or part of the steps carried by the methods in the foregoing embodiments may be implemented by a program instructing related hardware.
  • the program may be stored in a computer-readable storage medium.
  • the program is When executed, one or a combination of the steps of the method embodiment is included.
  • each functional unit in each embodiment of the present disclosure may be integrated into one processing module, or each unit may exist separately physically, or two or more units may be integrated into one module.
  • the above integrated modules can be implemented in the form of hardware or software functional modules. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium.
  • the aforementioned storage medium may be a read-only memory, a magnetic disk, or an optical disk.

Abstract

本公开提出一种通用数据流的封装方法、解封装方法及装置,其中封装方法包括:按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或流封装方式;将一个或多个数据区进行级联,得到待传输的通用数据流,并对通用数据流进行传输;其中,一个或多个数据区来自同一个传送对象或不同的传送对象。

Description

通用数据流的封装方法、解封装方法及装置
相关申请的交叉引用
本公开基于申请号为201810590162.3,申请日为2018年6月8日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本公开涉及数字信息传送技术领域,尤其涉及一种通用数据流的封装方法、解封装方法及装置。
背景技术
目前的数字信息传送系统,尤其是数字广播系统中,经常需要将多个不同业务的数据放在同一个传送信道中传送。因此,需要采用一定的封装方法来实现多个业务复用在一个传送信道上。目前的方法是,指定一种标准的数据流格式,然后分别定义各种业务数据到标准的数据流的封装标准,以及标准的数据流到各种不同的传送信道的封装方法。
目前,指定的标准的数据流格式可以包括:MPEG-2TS和DVB-GSE。其中,MPEG-2TS采用定长的TS包,在将变长的IP包封装成TS包时,处理开销和传送开销大。DVB-GSE采用变长包格式,可以直接封装IP包,但难以对流数据进行封装,并且对定长包的封装效率较低。因此,上述封装方法,难以统一实现对变长包业务、定长包业务和流业务的高效复用和传送。
发明内容
本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本公开的第一个目的在于提出一种通用数据流的封装方法,用于解决现有技术中对变长包业务、定长包业务和流业务进行统一复用和传送时,效率差的问题。
本公开的第二个目的在于提出一种通用数据流的解封装方法。
本公开的第三个目的在于提出一种通用数据流的封装装置。
本公开的第四个目的在于提出一种通用数据流的解封装装置。
本公开的第五个目的在于提出另一种通用数据流的封装装置。
本公开的第六个目的在于提出另一种通用数据流的解封装装置。
本公开的第七个目的在于提出一种非临时性计算机可读存储介质。
本公开的第八个目的在于提出另一种非临时性计算机可读存储介质。
本公开的第九个目的在于提出一种计算机程序产品。
本公开的第十个目的在于提出另一种计算机程序产品。
为达上述目的,本公开第一方面实施例提出了一种通用数据流(General Data Stream,GDS)的封装方法,包括:
按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
将所述一个或多个数据区进行级联,得到待传输的通用数据流,并对所述通用数据流进行传输;所述一个或多个数据区来自同一个传送对象或不同的传送对象。
本公开实施例的通用数据流的封装方法,按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;将一个或多个数据区进行级联,得到待传输的通用数据流,并对通用数据流进行传输;其中,一个或多个数据区来自同一个传送对象或不同的传送对象;从而能够统一实现对变长包业务、定长包业务和流业务的复用和传送,并提高变长包业务、定长包业务和流业务的复用效率和传送效率。
为达上述目的,本公开第二方面实施例提出了一种通用数据流的解封装方法,包括:
接收通用数据流;所述通用数据流由一个或多个数据区级联而成;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
针对所述通用数据流的每个数据区,根据所述传送对象标识,判断所述数据区是否为待解析数据区;
若所述数据区为待解析数据区,则根据所述扩展区头指示,判断是否存在扩展区头;
若存在扩展区头,则对所述扩展区头进行解析,获取扩展参数;
根据所述数据区长度,获取所述待解析数据区中的数据区净荷;
根据所述扩展参数和所述数据区净荷封装方式,对所述数据区净荷进行解封装,获取传送对象的数据。
本公开实施例的通用数据流的解封装方法,通过接收通用数据流;通用数据流由一个或多个数据区级联而成;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;针对通用数据流的每个数据区,根据传送对象标识,判断数据区是否为待解析数据区;若数据区为待解析数据区,则根据扩展区头指示,判断是否存在扩展区头,若存在扩展区头,则对扩展区头进行解析,获取扩展参数;根据数据区长度,获取待解析数据区中的数据区净荷;根据扩展参数和数据区净荷封装方式,对数据区净荷进行解封装,获取传送对象的数据,从而能够统一实现对变长包业务、定长包业务和流业务的复用和传送,并提高变长包业务、定长包业务和流业务的复用效率和传送效率。
为达上述目的,本公开第三方面实施例提出了一种通用数据流的封装装置,包括:
至少一个封装模块,用于按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;其中,所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
级联模块,用于将所述一个或多个数据区进行级联,得到待传输的通用数据流,并对所述通用数据流进行传输;所述一个或多个数据区来自同一个传送对象或不同的传送对象。
为达上述目的,本公开第四方面实施例提出了一种通用数据流的解封装装置,包括:
接收模块,用于接收通用数据流;所述通用数据流由一个或多个数据区级联而成;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
判断模块,用于针对所述通用数据流的每个数据区,根据所述传送对象标识,判断所述数据区是否为待解析数据区;
所述判断模块,还用于在所述数据区为待解析数据区时,根据所述扩展区头指示,判断是否存在扩展区头;
解析模块,用于在存在扩展区头时,对所述扩展区头进行解析,获取扩展参数;
获取模块,用于根据所述数据区长度,获取所述待解析数据区中的数据区净荷;
解封装模块,用于根据所述扩展参数和所述数据区净荷封装方式,对所述数据区净荷进行解封装,获取传送对象的数据。
为达上述目的,本公开第五方面实施例提出了另一种通用数据流的封装装置,包括:
存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述的通用数据流的封装方法。
为达上述目的,本公开第六方面实施例提出了另一种通用数据流的解封装装置,包括:
存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述的通用数据流的解封装方法。
为达上述目的,本公开第七方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的通用数据流的封装方法。
为达上述目的,本公开第八方面实施例提出了另一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的通用数据流的解封装方法。
为达上述目的,本公开第九方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如上所述的通用数据流的封装方法。
为达上述目的,本公开第十方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如上所述的通用数据流的解封装方法。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本公开实施例提供的一种通用数据流的封装方法的流程示意图;
图2为通用数据流的结构示意图;
图3为扩展区头的结构示意图;
图4为IP业务对应的数据区的结构示意图;
图5为ATM业务对应的数据区的结构示意图;
图6为PCM业务对应的数据区的结构示意图;
图7为有格式流业务对应的数据区的结构示意图;
图8为本公开实施例提供的一种通用数据流的解封装方法的流程示意图;
图9为本公开实施例提供的一种通用数据流的封装装置的结构示意图;
图10为本公开实施例提供的一种通用数据流的解封装装置的结构示意图;
图11为本公开实施例提供的另一种通用数据流的封装装置的结构示意图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
下面参考附图描述本公开实施例的通用数据流的封装方法、解封装方法及装置。
图1为本公开实施例提供的一种通用数据流的封装方法的流程示意图。如图1所示,该通用数据流的封装方法包括以下步骤:
S101、按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数。
S102、将一个或多个数据区进行级联,得到待传输的通用数据流,并对通用数据流进行传输;一个或多个数据区来自同一个传送对象或不同的传送对象。
本公开提供的通用数据流的封装方法的执行主体为通用数据流的封装装置,通用数据流的封装装置具体可以为终端设备或者服务器等硬件设备,或者可以为硬件设备上安装的软件。本实施例中,通用数据流的结构可以如图2所示,在图2中,通用数据流包括:数据区A、数据区B、数据区C、数据区D等等。
其中,传送对象标识(Transport Object Identity,TOI)表示,该数据区净荷中的 封装数据所属的传送对象。传送对象例如可以为业务,传送对象标识可以为业务标识。业务例如可以为,IP业务、以太网业务、ATM业务、PCM业务、TS业务、GSE业务等。其中,IP业务和以太网业务属于变长包业务;ATM业务属于定长包业务;PCM业务属于无格式流业务;TS业务和GSE业务属于有格式流业务。
在图2中,数据区A和数据区D中的传送对象标识都是601,即这两个数据区的数据区净荷中的封装数据为业务1(TOI=601)的业务数据。本实施例中,传送对象标识可以由通用数据流的封装装置分配,或者根据业务标识映射产生。例如,TS业务一般采用13位的PID标识,如果传送对象标识为24位,则可以在PID标识前面添加一个11位固定前缀,得到传送对象标识。
本实施例中,数据区长度表示,整个数据区包含的数据量。当直接指示数据区长度时,数据区长度的位数限制了数据区的最大长度。例如当位数为16时,数据区的最大长度为65535个字节。
本实施例中,数据区净荷封装方式表示,传送对象的数据封装到数据区净荷的方式。数据区净荷封装方式为:变长包封装方式、定长包封装方式或者流封装方式。
本实施例中,扩展区头指示,用来指示扩展区头是否存在。在有些封装方式中,扩展区头不必存在,但是,在某些封装方式中,必须引入一些新的参数,这些参数可以放在扩展区头中来传送,称为扩展参数。扩展区头包括:一个或多个扩展参数。
本实施例中,扩展区头的结构例如可以如图3所示,在图3中,扩展区头由扩展区头长度和至少一个扩展参数域级联而成;每个扩展参数域封装一个扩展参数,包括:扩展参数类型、扩展参数长度和扩展参数值。其中,扩展区头长度表示,整个扩展区头包含的数据量;扩展参数类型表示,扩展参数的名称等,用来区分不同的扩展参数;扩展参数长度表示,整个扩展参数域包含的数据量;扩展参数值为扩展参数的内容。
以下实施例中,以IP业务为例进行说明,其中,IP业务为变长包业务,传送对象的数据为IP业务数据;传送对象标识所表示的传送对象为变长包业务。在传送对象为变长包业务时,数据区净荷封装方式为变长包封装方式;对应的,数据区净荷包括:至少一个数据单元;数据单元包括:单元头和单元净荷;单元头包括:分段指示、单元长度和单元类型。如图4所示,为IP业务对应的数据区的结构示意图。
本实施例中,分段指示可以为2位字段,用于表示传送对象的数据包封装到数据单元时的分段状态,分段状态可以为以下四种状态之一:单元净荷为一个完整的数据包、单元净荷为数据包的一个分段且为起始段、单元净荷为数据包的一个分段且为中间段、单元净 荷为数据包的一个分段且为末尾段。
本实施例中,单元长度表示,数据单元包含的数据量;单元长度可以选择为11位字段,以满足IP包封装的需要;单元类型表示,单元净荷中封装的数据类型。单元类型可以为对象数据单元或者填充单元。在单元类型为对象数据单元时,单元净荷为整个传送对象的数据包或者数据包的部分数据;在单元类型为填充单元时,单元净荷为随机数据或者预设数据所组成的填充数据包。
以IP业务为例,当将IP数据包封装到数据单元中时,有的IP数据包不用分段,直接封装到一个数据单元的单元净荷中,则单元头中的分段指示为完整IP数据包;有的IP数据包可以分段封装到若干个连续的数据单元中,并用分段指示来指示其为该IP数据包的起始段、中间段或末尾段。这些数据单元可以按生成顺序放在一个数据区传送,也可以放在通用数据流上的含有相同传送对象标识的多个数据区上传送。但是,属于同一个IP数据包的数据单元应按照其生成顺序依次封装到这些数据区的数据区净荷中,中间不能插入其他IP数据包的数据单元。我们只需要将具有相同传送对象标识的数据区级联起来,就可以通过分段指示恢复出完整的IP数据包。
采用上述变长包封装方式,每个数据单元的单元头只需要两个字节即可封装一个IP数据包,且一个数据区可以同时封装多个IP数据包,因此,可以尽可能减少数据区头所占用的开销,最终,在对变长包的封装上可以实现比MPEG2-TS和DVB-GSE更高的效率。
以下实施例中,以ATM业务为例进行说明,其中,ATM业务为定长包业务,传送对象的数据为ATM业务数据;传送对象标识所表示的传送对象为定长包业务。在传送对象为定长包业务时,数据区净荷封装方式为定长包封装方式;数据区净荷由数据包级联而成;扩展区头指示,存在扩展区头;扩展区头包括:包长度和包起始位置。
如图5所示,为ATM业务对应的数据区的结构示意图。在图5中,每个P代表一个定长数据包,如一个ATM数据包。本实施例中,包长度表示,一个定长数据包的数据量;包起始位置表示,某个定长数据包在数据区净荷中的起始位置。
以ATM业务为例,包长度为53,表示数据区净荷中每个ATM数据包的长度为53个字节。当将一个ATM业务的ATM数据包封装到数据区净荷时,由于数据区长度不能保证正好是53字节的整数倍,这将导致以下结果:某一个ATM数据包可能被封装到前一个数据区的末尾和后一个数据区的起始,当然,这两个数据区对应同一个传送对象标识。因此,在数据区的扩展区头中,需要通过包起始位置来指示数据区净荷中某个ATM数据包的起始位置:例如第一个ATM数据包的起始位置。这样,我们只要将属于同一个传送对象标识的前后两个 数据区净荷拼接起来,就可以恢复完整的ATM数据包。另外,即使上一个数据区丢失,也可以通过包起始位置来确定本数据区净荷中某个ATM数据包的起始位置,然后再根据包长度正确解析出后续的ATM数据包。这种定长包封装方式通过将多个定长数据包封装在一个数据区中,可大幅提高定长数据包的封装效率,避免了DVB-GSE协议为每个数据包添加一个GSE包头带来的开销。
以下实施例中,以PCM业务为例进行说明,其中,PCM业务为无格式流业务,传送对象的数据为PCM业务数据;传送对象标识所表示的传送对象为无格式流业务。在传送对象为无格式流业务时,数据区净荷封装方式为流封装方式;数据区净荷由传送对象的数据流填充得到。如图6所示,为PCM业务对应的数据区的结构示意图。
对于接收端来说,将拥有同一个传送对象标识的数据区的数据区净荷按接收顺序拼接起来,即可恢复原始的PCM业务数据流。
以下实施例中,以MPEG-2TS业务和DVB-GSE业务为例进行说明,其中,MPEG2-TS业务和DVB-GSE业务均为有格式流业务,MPEG2-TS业务的数据为一个传输流,DVB-GSE业务的数据为一个通用流;在传送对象为有格式流业务时,数据区净荷封装方式为流封装方式;数据区净荷由传送对象的数据流填充得到;所述传送对象的数据流由协议类型定义的数据块(Data Block,DB)级联而成;扩展区头指示,存在扩展区头;扩展区头包括块起始位置。如图7所示,为有格式流业务对应的数据区的结构示意图。
本实施例中,协议类型表示,传送对象的数据的封装协议;块起始位置表示,数据块(DB)在数据区净荷中的起始位置。其中,数据块的含义由协议类型决定。本实施例中,协议类型可以为,MPEG-2TS、DVB-GSE等。在协议类型为MPEG-2TS时,数据块DB为一个TS包,块起始位置为TS数据包在数据区净荷中的起始位置;在协议类型为DVB-GSE时,数据块DB为一个GSE包,块起始位置为GSE包在数据区净荷中的起始位置。
上述封装方式实现了MPEG-2TS业务数据和DVB-GSE业务数据的统一传输,可以将MPEG2-TS业务数据和DVB-GSE业务数据通过一种格式来交给传输信道发送,简化传送接口并通过数据区的隔离来保证业务质量。
通过上述实施例可知,本公开可以根据变长包业务、定长包业务和流业务的数据特点来分别采用最有效的封装方式,从而统一实现对变长包业务、定长包业务和流业务的高效复用和传送。
本公开实施例的通用数据流的封装方法,按照通用数据流的格式,对传送对象的数据 进行封装,得到至少一个数据区;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式或定长包封装方式或流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;将一个或多个数据区进行级联,得到待传输的通用数据流,并对通用数据流进行传输;其中,一个或多个数据区来自同一个传送对象或不同的传送对象;从而能够统一实现对变长包业务、定长包业务和流业务的复用和传送,并提高变长包业务、定长包业务和流业务的复用效率和传送效率。
图8为本公开实施例提供的一种通用数据流的解封装方法的流程示意图。如图8所示,该通用数据流的解封装方法包括以下步骤:
S801、接收通用数据流;通用数据流由一个或多个数据区级联而成;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数。
本公开提供的通用数据流的解封装装置具体可以为终端设备或者服务器等硬件设备,或者可以为硬件设备上安装的软件。
其中,传送对象标识(Transport Object Identity,TOI)表示,该数据区净荷中的封装数据所属的传送对象。传送对象例如可以为业务,传送对象标识可以为业务标识。业务例如可以为,IP业务、以太网业务、ATM业务、PCM业务、TS业务、GSE业务等。其中,IP业务和以太网业务属于变长包业务;ATM业务属于定长包业务;PCM业务属于无格式流业务;TS业务和GSE业务属于有格式流业务。
本实施例中,扩展区头封装至少一个扩展参数的方法是:扩展区头可以由扩展区头长度和至少一个扩展参数域级联而成;扩展参数域中包括:扩展参数类型、扩展参数长度和扩展参数值。其中,扩展区头长度表示,整个扩展区头包含的数据量;扩展参数类型表示,扩展参数的名称等,用来区分不同的扩展参数;扩展参数长度表示,整个扩展参数域包含的数据量;扩展参数值为扩展参数的内容。
S802、针对通用数据流的每个数据区,根据传送对象标识,判断数据区是否为待解析数据区。
本实施例中,针对具体的某种业务,例如某个IP业务,只需要该IP业务对应的数据 区,而不需要解析其他业务的数据区,从而减少解析工作量。而对于MPEG2-TS或DVB-GSE来说,需要逐个对TS包或GSE包进行解析。
本实施例中,步骤802之前,所述的方法还可以包括:获取各个数据区的数据区头的起始位置。在通用数据流中包含的第一个数据区头的起始位置一般来自物理层信道帧。举例来说,在中国移动多媒体广播系统(China Mobile Multimedia Broadcasting,CMMB)中,可以将一个封装了多个业务的通用数据流直接放在由若干个时隙构成的复用帧上传送,在发送端保证复用帧头和数据区头对齐,则在接收端,可以从接收时隙中恢复出复用帧,而复用帧的第一个字节即为一个数据区头的起始位置。在获得第一个数据区头后,可以通过数据区长度得到后续的数据区头的起始位置。
S803、若数据区为待解析数据区,则根据扩展区头指示,判断是否存在扩展区头,若存在扩展区头,则对扩展区头进行解析,获取扩展参数。
本实施例中,若存在扩展区头,则通用数据流的解封装装置可以执行以下过程:对扩展区头进行解析,获取扩展参数;扩展区头由扩展区头长度和至少一个扩展参数域级联而成;扩展参数域中包括:扩展参数类型、扩展参数长度和扩展参数值。
本实施例中,可采用串行方式或者并行方式来解析数据区。当采用串行方式时,若数据区不是待解析数据区,则获取通用数据流中的下一个数据区,然后重复执行步骤802和步骤803。在并行方式中,在步骤802之前获得通用数据流的多个数据区,然后对每个数据区并行执行步骤802和步骤803,若某个数据区不是待解析的数据区,则终止该数据区的解析。
S804、根据数据区长度,获取待解析数据区中的数据区净荷。
S805、根据扩展参数和数据区净荷封装方式,对数据区净荷进行解封装,获取传送对象的数据。
本实施例中,数据区净荷封装方式可以为:变长包封装方式、定长包封装方式或者流封装方式。通用数据流的解封装装置执行步骤805的过程,可以参考图1至图7所示实施例,此处不再做详细说明。
本公开实施例的通用数据流的解封装方法,通过接收通用数据流;通用数据流由一个或多个数据区级联而成;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;针对通用数据流的每个数据区,根据传送对象标识,判断数据区是否为待解析 数据区;若数据区为待解析数据区,则根据扩展区头指示,判断是否存在扩展区头,若存在扩展区头,则对扩展区头进行解析,获取扩展参数;根据数据区长度,获取待解析数据区中的数据区净荷;根据扩展参数和数据区净荷封装方式,对数据区净荷进行解封装,获取传送对象的数据,从而能够统一实现对变长包业务、定长包业务和流业务的复用和传送,并提高变长包业务、定长包业务和流业务的复用效率和传送效率。
图9为本公开实施例提供的一种通用数据流的封装装置的结构示意图。如图9所示,该通用数据流的封装装置包括:
至少一个封装模块91,用于按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;其中,所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
级联模块92,用于将所述一个或多个数据区进行级联,得到待传输的通用数据流,并对所述通用数据流进行传输;一个或多个数据区来自同一个传送对象或不同的传送对象。
本实施例中,各模块功能的详细描述,可以参考图1至图7所示实施例,此处不再做详细说明。
本公开实施例的通用数据流的封装装置,按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;其中,扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;将一个或多个数据区进行级联,得到待传输的通用数据流,并对通用数据流进行传输;其中,一个或多个数据区来自同一个传送对象或不同的传送对象;从而能够统一实现对变长包业务、定长包业务和流业务的复用和传送,并提高变长包业务、定长包业务和流业务的复用效率和传送效率。
图10为本公开实施例提供的一种通用数据流的解封装装置的结构示意图。如图10所示,该通用数据流的解封装装置包括:
接收模块11,用于接收通用数据流;所述通用数据流由一个或多个数据区级联而成; 所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;
判断模块12,用于针对所述通用数据流的每个数据区,根据所述传送对象标识,判断所述数据区是否为待解析数据区;
所述判断模块12,还用于在所述数据区为待解析数据区时,根据所述扩展区头指示,判断是否存在扩展区头;
解析模块13,用于在存在扩展区头时,对所述扩展区头进行解析,获取扩展参数;
获取模块14,用于根据所述数据区长度,获取所述待解析数据区中的数据区净荷;
解封装模块15,用于根据所述扩展参数和所述数据区净荷封装方式,对所述数据区净荷进行解封装,获取传送对象的数据。
本实施例中,各模块功能的详细描述,可以参考图1至图8所示实施例,此处不再做详细说明。
本公开实施例的通用数据流的解封装装置,通过接收通用数据流;通用数据流由一个或多个数据区级联而成;数据区包括:数据区头和数据区净荷;数据区头包括:基本区头和扩展区头,或者,基本区头;基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;扩展区头指示,用于指示是否存在扩展区头;扩展区头包括:至少一个扩展参数;针对通用数据流的每个数据区,根据传送对象标识,判断数据区是否为待解析数据区;若数据区为待解析数据区,则根据扩展区头指示,判断是否存在扩展区头;若存在扩展区头,则对扩展区头进行解析,获取扩展参数;根据数据区长度,获取待解析数据区中的数据区净荷;根据数据区净荷封装方式,对数据区净荷进行解封装,获取传送对象的数据,从而能够统一实现对变长包业务、定长包业务和流业务的复用和传送,提高变长包业务、定长包业务和流业务的复用效率和传送效率。
图11为本公开实施例提供的另一种通用数据流的封装装置的结构示意图。该通用数据流的封装装置包括:
存储器1001、处理器1002及存储在存储器1001上并可在处理器1002上运行的计算机程序。
处理器1002执行所述程序时实现上述实施例中提供的通用数据流的封装方法。
进一步地,通用数据流的封装装置还包括:
通信接口1003,用于存储器1001和处理器1002之间的通信。
存储器1001,用于存放可在处理器1002上运行的计算机程序。
存储器1001可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器1002,用于执行所述程序时实现上述实施例所述的通用数据流的封装方法。
如果存储器1001、处理器1002和通信接口1003独立实现,则通信接口1003、存储器1001和处理器1002可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器1001、处理器1002及通信接口1003,集成在一块芯片上实现,则存储器1001、处理器1002及通信接口1003可以通过内部接口完成相互间的通信。
处理器1002可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本公开实施例的一个或多个集成电路。
本实施例还提供另一种通用数据流的解封装装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的通用数据流的解封装方法。
本实施例还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上所述的通用数据流的封装方法,或者,解封装方法。
本实施例还提供一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如上所述的通用数据流的封装方法,或者,解封装方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述 不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可 编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (16)

  1. 一种通用数据流的封装方法,其特征在于,包括:
    按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
    将所述一个或多个数据区进行级联,得到待传输的通用数据流,并对所述通用数据流进行传输;所述一个或多个数据区来自同一个传送对象或不同的传送对象。
  2. 根据权利要求1所述的方法,其特征在于,在所述数据区净荷封装方式为变长包封装方式时,所述数据区净荷包括:至少一个数据单元;所述数据单元包括:单元头和单元净荷;所述单元头包括:分段指示、单元长度和单元类型;
    针对每个数据单元,在所述分段指示为整个数据包时,单元净荷中包括:整个数据包;
    在所述分段指示为数据包的起始段、中间段或者末尾段时,单元净荷中包括:数据包的部分数据;从起始段到末尾段的多个数据单元的单元净荷中的数据组合,得到整个数据包。
  3. 根据权利要求2所述的方法,其特征在于,所述单元类型为,对象数据单元或者填充单元;
    在所述单元类型为对象数据单元时,所述单元净荷为整个传送对象的数据包或者数据包的部分数据;
    在所述单元类型为填充单元时,所述单元净荷为随机数据或者预设数据所组成的填充数据包。
  4. 根据权利要求1所述的方法,其特征在于,在所述数据区净荷封装方式为定长包封装方式时,所述数据区净荷由数据包级联而成;
    所述扩展区头指示,存在扩展区头;所述扩展区头包括:包长度和包起始位置。
  5. 根据权利要求1所述的方法,其特征在于,在所述数据区净荷封装方式为流封装方式时,所述数据区净荷由传送对象的数据流填充得到。
  6. 根据权利要求5所述的方法,其特征在于,所述传送对象的数据流由协议类型定义的数据块级联而成;
    所述扩展区头指示,存在扩展区头;所述扩展区头包括:块起始位置。
  7. 根据权利要求6所述的方法,其特征在于,
    在所述协议类型为MPEG-2TS时,所述块起始位置为TS数据包在数据区净荷中的起始位置;
    在所述协议类型为DVB-GSE时,所述块起始位置为GSE数据包在数据区净荷中的起始位置。
  8. 一种通用数据流的解封装方法,其特征在于,包括:
    接收通用数据流;所述通用数据流由一个或多个数据区级联而成;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
    针对所述通用数据流的每个数据区,根据所述传送对象标识,判断所述数据区是否为待解析数据区;
    若所述数据区为待解析数据区,则根据所述扩展区头指示,判断是否存在扩展区头;
    若存在扩展区头,则对所述扩展区头进行解析,获取扩展参数;
    根据所述数据区长度,获取所述待解析数据区中的数据区净荷;
    根据所述扩展参数和所述数据区净荷封装方式,对所述数据区净荷进行解封装,获取传送对象的数据。
  9. 一种通用数据流的封装装置,其特征在于,包括:
    至少一个封装模块,用于按照通用数据流的格式,对传送对象的数据进行封装,得到至少一个数据区;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;其中,所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
    级联模块,用于将所述一个或多个数据区进行级联,得到待传输的通用数据流,并对所述通用数据流进行传输;所述一个或多个数据区来自同一个传送对象或不同的传送对象。
  10. 一种通用数据流的解封装装置,其特征在于,包括:
    接收模块,用于接收通用数据流;所述通用数据流由一个或多个数据区级联而成;所述数据区包括:数据区头和数据区净荷;所述数据区头包括:基本区头和扩展区头,或者,基本区头;所述基本区头包括:传送对象标识、数据区长度、数据区净荷封装方式以及扩 展区头指示;所述数据区净荷封装方式为,变长包封装方式、定长包封装方式或者流封装方式;所述扩展区头指示,用于指示是否存在扩展区头;所述扩展区头包括:至少一个扩展参数;
    判断模块,用于针对所述通用数据流的每个数据区,根据所述传送对象标识,判断所述数据区是否为待解析数据区;
    所述判断模块,还用于在所述数据区为待解析数据区时,根据所述扩展区头指示,判断是否存在扩展区头;
    解析模块,用于在存在扩展区头时,对所述扩展区头进行解析,获取扩展参数;
    获取模块,用于根据所述数据区长度,获取所述待解析数据区中的数据区净荷;
    解封装模块,用于根据所述扩展参数和所述数据区净荷封装方式,对所述数据区净荷进行解封装,获取传送对象的数据。
  11. 一种通用数据流的封装装置,其特征在于,包括:
    存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的通用数据流的封装方法。
  12. 一种通用数据流的解封装装置,其特征在于,包括:
    存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求8所述的通用数据流的解封装方法。
  13. 一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的通用数据流的封装方法。
  14. 一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求8所述的通用数据流的解封装方法。
  15. 一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如权利要求1-7中任一所述的通用数据流的封装方法。
  16. 一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,实现如权利要求8所述的通用数据流的解封装方法。
PCT/CN2019/078368 2018-06-08 2019-03-15 通用数据流的封装方法、解封装方法及装置 WO2019233155A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/113,179 US11375051B2 (en) 2018-06-08 2020-12-07 Method and device for encapsulating and de-encapsulating general data stream

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810590162.3 2018-06-08
CN201810590162.3A CN108989286B (zh) 2018-06-08 2018-06-08 通用数据流的封装方法、解封装方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/113,179 Continuation US11375051B2 (en) 2018-06-08 2020-12-07 Method and device for encapsulating and de-encapsulating general data stream

Publications (1)

Publication Number Publication Date
WO2019233155A1 true WO2019233155A1 (zh) 2019-12-12

Family

ID=64540093

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/078368 WO2019233155A1 (zh) 2018-06-08 2019-03-15 通用数据流的封装方法、解封装方法及装置

Country Status (3)

Country Link
US (1) US11375051B2 (zh)
CN (1) CN108989286B (zh)
WO (1) WO2019233155A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989286B (zh) 2018-06-08 2020-01-14 北京开广信息技术有限公司 通用数据流的封装方法、解封装方法及装置
CN112887054B (zh) * 2019-11-29 2023-11-21 厦门雅迅网络股份有限公司 一种基于长度转义的数据流封包方法、解包方法及系统
CN114466072B (zh) * 2020-11-10 2024-04-02 深圳Tcl新技术有限公司 一种数据处理方法、智能终端及计算机可读存储介质
CN112445471A (zh) * 2020-11-17 2021-03-05 北京仿真中心 基于数字试验或训练的通用数据解析软件架构设计方法
CN113630404B (zh) * 2021-07-29 2023-03-28 北京中交兴路信息科技有限公司 一种协议报文的传输方法、装置、存储介质及终端
CN114422622B (zh) * 2022-01-14 2023-03-28 徐工汉云技术股份有限公司 一种工程机械设备工况数据解析方法
CN114598384B (zh) * 2022-05-10 2022-08-02 天津航天中为数据系统科技有限公司 一种网络化加密传输的数据链业务处理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1543162A (zh) * 2003-11-06 2004-11-03 西安电子科技大学 变长数据分组与定长信元混合传送的方法与适配装置
US20080225778A1 (en) * 2007-03-15 2008-09-18 Nokia Corporation Service Discovery Mechanism in Broadcast Telecommunication Network
CN107872422A (zh) * 2016-09-23 2018-04-03 杭州海康威视数字技术股份有限公司 一种数据传输方法、装置及电子设备
CN108989286A (zh) * 2018-06-08 2018-12-11 北京开广信息技术有限公司 通用数据流的封装方法、解封装方法及装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3557998B2 (ja) * 2000-04-28 2004-08-25 日本電気株式会社 フラグメンテーション処理デバイスおよびこれを用いたフラグメンテーション処理装置
KR100547842B1 (ko) * 2002-07-29 2006-01-31 삼성전자주식회사 무선 패킷 데이터 통신 시스템에서 서로 다른 데이터 유형들을 전송하는 장치
KR100679037B1 (ko) * 2005-06-28 2007-02-05 삼성전자주식회사 무선 네트워크에서 고속 핸드오버를 수행하는 방법 및 장치
CN101022405B (zh) * 2006-06-23 2010-08-25 华为技术有限公司 一种通用成帧规程封装方法
CN101119583A (zh) * 2006-08-01 2008-02-06 华为技术有限公司 多业务流传送方法、基站及用户终端
KR101080416B1 (ko) * 2006-11-29 2011-11-04 삼성전자주식회사 멀티-프로그램 다중화/역다중화 장치 및 방법
US9769116B2 (en) * 2011-09-16 2017-09-19 Wilmerding Communications Llc Encapsulating traffic while preserving packet characteristics
WO2014183281A1 (zh) * 2013-05-15 2014-11-20 华为技术有限公司 一种数据传输方法、装置、通信设备及通信系统
CA2915022A1 (en) * 2013-06-19 2014-12-24 Lg Electronics Inc. Broadcasting transmission/reception apparatus and broadcasting transmission/reception method
KR102379530B1 (ko) * 2015-01-07 2022-03-29 삼성전자주식회사 통신 시스템에서 미디어 정보를 송수신하는 방법 및 장치
US9503842B2 (en) * 2015-03-27 2016-11-22 Intel Corporation Techniques to support integrated bluetooth/3GPP radio access technologies
WO2017026110A1 (en) * 2015-08-07 2017-02-16 Sharp Kabushiki Kaisha Systems and methods for data transmission based on a link layer packet structure
EP3319252A1 (en) * 2016-11-04 2018-05-09 Panasonic Intellectual Property Corporation of America Efficient multiplexing of control information in transport block

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1543162A (zh) * 2003-11-06 2004-11-03 西安电子科技大学 变长数据分组与定长信元混合传送的方法与适配装置
US20080225778A1 (en) * 2007-03-15 2008-09-18 Nokia Corporation Service Discovery Mechanism in Broadcast Telecommunication Network
CN107872422A (zh) * 2016-09-23 2018-04-03 杭州海康威视数字技术股份有限公司 一种数据传输方法、装置及电子设备
CN108989286A (zh) * 2018-06-08 2018-12-11 北京开广信息技术有限公司 通用数据流的封装方法、解封装方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GANDHI, K.: "Implementation of Generic Stream Encapsulation Protocol for IP Datagram Encapsulation over DVB-S2 Baseband Frames", INTERNATIONAL JOURNAL OF COMPUTER APPLICATIONS, vol. 142, no. 13, 31 May 2016 (2016-05-31), pages 1 - 4, XP055668002, DOI: 10.5120/ijca2016909866 *

Also Published As

Publication number Publication date
CN108989286B (zh) 2020-01-14
US20210092207A1 (en) 2021-03-25
CN108989286A (zh) 2018-12-11
US11375051B2 (en) 2022-06-28

Similar Documents

Publication Publication Date Title
WO2019233155A1 (zh) 通用数据流的封装方法、解封装方法及装置
US10374947B2 (en) Method and apparatus for encapsulating / decapsulating data packets at a radio access node
JP6516930B2 (ja) イーサネットスイッチにおけるスケジューリングされたフレームの多重化方法
WO2020224503A1 (zh) SRv6网络生成段列表、报文转发的方法、设备和系统
JP4299970B2 (ja) Atmセルを用いる広帯域ネットワーク
US20210250394A1 (en) Transmission method, reception method, transmission apparatus, and reception apparatus
US7130303B2 (en) Ethernet packet encapsulation for metropolitan area ethernet networks
KR20220054259A (ko) 방송 서비스를 구성하는 콘텐츠 관련 정보들을 제공하는 방법 및 장치
US20130016724A1 (en) Link layer preemption
US8135036B2 (en) Unified data packet for encapsulating data packets having diverse formats
CN107872422A (zh) 一种数据传输方法、装置及电子设备
JP2008512895A (ja) 通信ネットワーク内でヘッダを生成するための方法及び装置
JP7142693B2 (ja) データ伝送方法および装置
WO2021083332A1 (zh) 发送报文的方法、装置及系统
CN113302885A (zh) 车载网络的以太网和控制器区域网络协议转换
US20210392084A1 (en) Transmission Of Packets Over A TSN Aware Network
WO2021174958A1 (zh) 报文转发方法、设备、系统、网络设备和存储介质
CN106102018A (zh) 一种宽带集群通信中的通信配置方法和装置
CN107370654B (zh) 一种伪线数据报文的封装、解封装方法和相关装置
KR102450095B1 (ko) 데이터 송신 방법, 전송 장치, 및 수신 장치
US20010006520A1 (en) Data Communications
US20030149971A1 (en) Method for transmitting frames with both data and a polling request
WO2022198357A1 (zh) 数据处理方法及传输设备、数据处理系统
BRPI0712835A2 (pt) multiplexador para protocolo de interface de transmissor
CN108882054B (zh) 用于stl-sfn传输过程的数据报头结构及封装方法

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: 19814789

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 07/04/2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19814789

Country of ref document: EP

Kind code of ref document: A1