WO2020211549A1 - Method and apparatus for transmitting data - Google Patents

Method and apparatus for transmitting data Download PDF

Info

Publication number
WO2020211549A1
WO2020211549A1 PCT/CN2020/077382 CN2020077382W WO2020211549A1 WO 2020211549 A1 WO2020211549 A1 WO 2020211549A1 CN 2020077382 W CN2020077382 W CN 2020077382W WO 2020211549 A1 WO2020211549 A1 WO 2020211549A1
Authority
WO
WIPO (PCT)
Prior art keywords
sequence number
pdu
sdu
number set
data
Prior art date
Application number
PCT/CN2020/077382
Other languages
French (fr)
Chinese (zh)
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 WO2020211549A1 publication Critical patent/WO2020211549A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Definitions

  • This application relates to the communication field, and more specifically, to a method and device for transmitting data in the communication field.
  • Video surveillance systems are divided into wired video surveillance systems and wireless video surveillance systems. Compared with wired video surveillance systems, wireless video surveillance systems have the advantages of low cost, wide application range, good scalability, and high mobility.
  • the present application provides a method and device for transmitting data, which can meet the real-time requirements of data and help improve the performance of the system.
  • a method for transmitting data includes: determining a target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence number set or the second sequence number set, and according to the first SDU
  • the transmission priority of the PDU obtained by the sequence number in a sequence number set is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set; the first sequence number of the first SDU is determined in the target sequence number set ;
  • the method for transmitting data provided by the embodiment of the present application can determine the first serial number set or the second serial number set as the target serial number set according to the data type of the first SDU, and according to the sequences in the two serial number sets There is a priority order for the PDUs obtained by the number, which can ensure that the PDUs obtained according to the sequence numbers in the first sequence number set are sent first, which helps to reduce the time delay, so as to meet the real-time requirements to a certain extent.
  • determining the target sequence number set according to the data type of the first SDU includes: if the first SDU is the first type of data, the target sequence set is the first sequence number set; if the first SDU is the first SDU For the second type of data, the target sequence set is the second sequence number set.
  • the delay requirement of the first type of data is higher than that of the second type of data.
  • the first type of data can be sent first, thereby helping to reduce the delay of the first type of data.
  • the first type of data is real-time data
  • the second type of data is stored data
  • real-time data has a high latency requirement, but stored data has no latency requirement, so that real-time data can be transmitted first.
  • the first serial number set is [0,...,N-1]
  • the second serial number set is [N,...,M-1]
  • M and N are positive integers, and M is greater than N.
  • N is or M is 2 pdcp-SN-Size , where, For the rounding down operation, For the above rounding operation, pdcp-SN-Size is a positive integer, for example, the value of pdcp-SN-Size can be 12 or 18.
  • the first sequence number set is [0,...,P-1]
  • the second sequence number set is [0,...,Q-1]
  • P and Q are positive integers.
  • the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence number set to which the first sequence number belongs, or used to indicate the data type of the first PDU.
  • the receiving end can determine the sequence number set to which the first sequence number belongs according to the first indication information.
  • the method further includes: determining the data type of the first SDU according to the transport layer protocol type of the first SDU.
  • determining the data type of the first SDU according to the transport layer protocol type of the first SDU includes: if the transport layer protocol type of the first SDU is the UDP protocol, the first SDU is the first type data; If the transport layer protocol type of the first SDU is not the UDP protocol, the data type of the first SDU is determined according to the destination port number of the transport layer of the first SDU.
  • determining the data type of the first SDU according to the destination port number of the transport layer of the first SDU includes: if the destination port number of the transport layer is 554, the first SDU is the first data type; if If the destination port number of the transport layer is not 554, the first SDU is the second data type.
  • the receiving end can determine the sequence number set to which the first sequence number belongs according to the transport layer protocol type, and there is no need to notify the information through additional signaling, so signaling overhead can be reduced.
  • a method for transmitting data including: receiving a first protocol data unit PDU and a second PDU; according to the sequence number set to which the first sequence number of the first PDU belongs and the second sequence number of the second PDU The set of sequence numbers to which it belongs, transmits the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU to the higher layer.
  • the receiving end determines the order of delivering the SDUs corresponding to the two PDUs to the upper layer according to the sequence number set to which the sequence numbers of the two PDUs belong, and can give priority to the higher priority PDUs. , So as to meet the real-time requirements to a certain extent.
  • the first service data unit corresponding to the first PDU is delivered to the higher layer.
  • the SDU and the second SDU corresponding to the second PDU include:
  • the sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs. According to the size of the first sequence number and the second sequence number, the first service data unit SDU and the first service data unit corresponding to the first PDU and the The second SDU corresponding to the two PDUs.
  • the first service data unit corresponding to the first PDU is delivered to the higher layer.
  • the second SDU corresponding to the SDU and the second PDU includes: if the first sequence number belongs to the first sequence number set, and the second sequence number belongs to the second sequence number set, the second SDU corresponding to the second PDU is given priority
  • the first service data unit SDU corresponding to a PDU is delivered to the upper layer.
  • the header of the first PDU includes first indication information, which is used to indicate the sequence number set to which the first sequence number belongs; the header of the second PDU includes second indication information, and the second indication The information is used to indicate the sequence number set of the second sequence number.
  • the receiving end determines whether the first sequence number and the second sequence number belong to the same sequence number set according to the first indication information and the second indication information.
  • this application provides a data transmission device for implementing the method in the first aspect and/or any possible implementation manners thereof.
  • the device may be a terminal device (or a network device), a device in a terminal device (or a network device), or a device that can be matched and used with the terminal device (or network device).
  • the device may include modules that perform one-to-one correspondence of the methods/operations/steps/actions described in the first aspect and/or any possible implementation manners thereof.
  • the modules may be hardware circuits or software , It can also be realized by hardware circuit combined with software.
  • the device may include a processing unit and a transceiver unit.
  • this application provides a data transmission device for implementing the method in the second aspect and/or any possible implementation manners thereof.
  • the device may be a terminal device (or a network device), a device in a terminal device (or a network device), or a device that can be matched and used with the terminal device (or network device).
  • the device may include modules that perform one-to-one correspondence of the methods/operations/steps/actions described in the second aspect and/or any possible implementations thereof.
  • the module may be a hardware circuit or a software , It can also be realized by hardware circuit combined with software.
  • the device may include a processing unit and a transfer unit.
  • the present application provides a data transmission device.
  • the device includes a processor for implementing the method described in the first aspect and/or any possible implementation manners thereof.
  • the apparatus may further include a memory, the memory is coupled with the processor, and the processor is configured to implement the method described in the first aspect and/or any possible implementation manner thereof.
  • the processor is configured to store instructions, and when the processor executes the instructions stored in the memory, the method described in the first aspect and/or any possible implementation manner thereof can be implemented.
  • the device may further include a communication interface for communicating with other devices.
  • the communication interface may be a transceiver, circuit, bus, module, pin, or other types of communication interfaces.
  • the present application provides a data transmission device.
  • the device includes a processor, configured to implement the method described in the second aspect and/or any possible implementation manners thereof.
  • the apparatus may further include a memory, the memory is coupled with the processor, and the processor is configured to implement the method described in the second aspect and/or any possible implementation manner thereof.
  • the processor is configured to store instructions, and when the processor executes the instructions stored in the memory, the method described in the second aspect and/or any possible implementation manner thereof can be implemented.
  • the device may also include a communication interface, which is used for the device to communicate with other devices.
  • this application provides a system for transmitting data, the system including the device provided in the third aspect and the device provided in the fourth aspect; or
  • the system includes the device provided by the fifth aspect and the device provided by the sixth aspect;
  • this application provides a computer-readable storage medium in which computer instructions are stored.
  • the computer instructions When the computer instructions are run on the computer, the computer can execute the methods in the first aspect and any possible designs. .
  • the present application provides a computer-readable storage medium in which computer instructions are stored.
  • the computer instructions When the computer instructions are executed on the computer, the computer executes the method in the second aspect and any possible designs thereof .
  • this application provides a chip including a processor.
  • the processor is used to execute the method in the first aspect and any possible implementation manners thereof.
  • the chip further includes a memory, and the memory is coupled with the processor.
  • the chip further includes a communication interface.
  • this application provides a chip including a processor.
  • the processor is used to execute the method in the second aspect and any possible implementation manners thereof.
  • the chip further includes a memory, and the memory is coupled with the processor.
  • the chip further includes a communication interface.
  • the present application provides a computer program product, the computer program product includes computer program code, when the computer program code runs on a computer, the computer executes the first aspect and any of its possible designs method.
  • the present application provides a computer program product, the computer program product includes computer program code, when the computer program code runs on a computer, the computer executes the second aspect and any possible implementation manners thereof Methods.
  • FIG. 1 is a schematic diagram of a communication scenario provided by an embodiment of the present application.
  • FIG. 2 is a schematic structural diagram of an air interface protocol stack provided by an embodiment of the present application.
  • 3 to 5 are schematic diagrams of data transmission methods provided by embodiments of the present application.
  • Fig. 6 is a schematic diagram of the COUNT value provided by an embodiment of the present application.
  • FIGS. 7 to 9 are schematic diagrams of simulation results of the method for transmitting data provided by the embodiment of the present application relative to the prior art according to the embodiment of the present application;
  • 10 to 12 are schematic block diagrams of data transmission apparatuses provided by embodiments of the present application.
  • GSM global system for mobile communications
  • CDMA code division multiple access
  • WCDMA broadband code division multiple access
  • GPRS general packet radio service
  • LTE long term evolution
  • FDD frequency division duplex
  • TDD LTE Time division duplex
  • UMTS universal mobile telecommunication system
  • WiMAX worldwide interoperability for microwave access
  • Fig. 1 shows a schematic diagram of a communication scenario provided by an embodiment of the present application.
  • a terminal device 110 accesses a wireless network through an access network device 120 to obtain services from an external network (for example, the Internet) through the wireless network, or communicate with other terminal devices through the wireless network.
  • an external network for example, the Internet
  • the terminal device 110 may refer to user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile equipment, user terminal, terminal, wireless communication equipment, User agent or user device.
  • the terminal device can also be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), and a wireless communication Functional handheld devices, computing devices, or other processing devices connected to wireless modems, in-vehicle devices, wearable devices, terminal devices in 5G networks, or terminals in the future evolution of public land mobile network (PLMN) Devices, etc., are not limited in the embodiments of the present application.
  • SIP session initiation protocol
  • WLL wireless local loop
  • PDA personal digital assistant
  • PLMN public land mobile network
  • the network device 120 may be an access network device used to communicate with terminal devices.
  • the access network device may be a base transceiver station (BTS) in a GSM system or a CDMA system, or a base station node B in a WCDMA system.
  • BTS base transceiver station
  • NodeB, NB it can also be an evolved NodeB (evoled NodeB, eNB or eNodeB) in the LTE system, and it can also be a radio control in a cloud radio access network (cloud radio access network, CRAN) scenario Device.
  • cloud radio access network cloud radio access network
  • the network device 120 may be a relay station, an access point, a vehicle-mounted device, a wearable device, a network device in a future 5G network or a network device in a future evolved PLMN network, etc., which is not limited in the embodiment of the present application.
  • the terminal device 110 may be the sending end or the receiving end, and the network device 120 may be the sending end or the receiving end.
  • the sending end is the terminal device 110 and the receiving end is the network device 120; or, the sending end is the network device 120 and the receiving end is the terminal device 110.
  • the embodiment of the present application is not limited to this, the sending end may be a terminal device, and the receiving end may be another terminal device.
  • Fig. 2 shows a schematic structural diagram of an air interface protocol stack provided by an embodiment of the present application.
  • the air interface protocol stacks of the control plane and the user plane include, but are not limited to, the packet data convergence protocol (PDCP) layer, the radio link control (RLC) layer, and the media access control ( media access control, MAC) layer and physical (physical, PHY) layer.
  • PDCP packet data convergence protocol
  • RLC radio link control
  • MAC media access control
  • physical (physical, PHY) layer physical (physical, PHY) layer.
  • RRC radio resource control
  • the PDCP layer is the RRC layer above the control plane, and the network layer above the user plane, such as IP.
  • the lower layer of the PDCP layer is the RLC layer.
  • the PDCP layer can process RRC messages on the control plane and data units on the user plane, such as IP packets.
  • the PDCP layer can perform IP header compression to reduce the number of bits transmitted on the wireless interface.
  • the PDCP layer can also be responsible for encryption of the control plane and integrity protection of transmitted data.
  • the PDCP protocol layer performs corresponding decryption and decompression operations.
  • One PDCP entity can be configured for each radio bearer.
  • the RCL layer is responsible for segmentation/cascading, retransmission control, and repetition detection.
  • the RLC layer provides services for the PDCP layer and can configure an RLC entity for each radio bearer.
  • the MAC layer controls the multiplexing of logical channels, the retransmission of hybrid automatic repeat requests, and the scheduling of uplink and downlink.
  • the MAC layer provides services for the RLC layer in the form of logical channels.
  • the PHY layer loads management encoding/decoding, modulation/demodulation, multi-antenna mapping, and other types of physical layer functions.
  • the PHY layer provides services for the MAC layer in the form of transmission channels.
  • the PDCP layer, RLC layer and MAC layer have corresponding PDUs and SDUs.
  • PDU is the data unit sent to the lower layer;
  • SDU is the data unit received from the upper layer.
  • the embodiments of the present application are directed to the transmission of the PDCP layer.
  • a sequence number may be used to sort the data units.
  • the sequence number is used to indicate the sequence of the next data unit to be received or sent in the service flow, and the sequence number may also be called a number.
  • the PDCP SN is encapsulated in the packet header of the PDCP PDU.
  • IP internet protocol
  • SDU service data unit
  • PDU PDCP protocol data unit
  • the sender associates an SN to each data unit in the order of arrival at the PDCP layer, encapsulates the SN in the header of the PDU, and then delivers the corresponding PDU to the lower layer in the order of arrival of the SDU.
  • Different types of data units may have different delay requirements. It is possible that some types of data units have high delay requirements (the value of delay requirements is small, such as 0.5 ms, 10 ms, 50 ms, etc.), and some types of data The delay requirement of the unit is low (the value of the delay requirement is relatively large, such as 100 milliseconds, 400 milliseconds, 1 second, etc.).
  • the first data with high latency requirements arrives at the PDCP layer after the second data with low latency requirements.
  • the second data will be delivered to the lower layer first.
  • the first data will be delivered after the second data, which will affect the real-time performance of the first data, which may result in poor system performance.
  • video types can be divided into real-time data and stored data according to their functions.
  • Real-time data refers to video data with real-time requirements, such as real-time playback on mobile phones, personal computers and large screens.
  • the stored data has no real-time requirements (or, with lower latency requirements), and is used for archived video data. Because of the need for forensics, storage data has higher requirements for reliability.
  • the cameras upload real-time data and store data at the same time for screen projection and archiving. For a PDCP entity, it is possible that the real-time data arrives at the PDCP layer after storing the data, so that the stored data will be delivered to the lower layer first, and the real-time data will be delivered after the stored data.
  • FIG. 3 shows a data transmission method 200 provided by an embodiment of the present application.
  • the method 200 may be applied to the communication system 100 shown in FIG. 1, and the method 200 may be executed by the sending end.
  • S210 Determine a target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence number set or the second sequence number set, and the transmission priority of the PDU is obtained according to the sequence numbers in the first sequence number set It is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set.
  • the method 200 includes: if the first SDU is the first type of data, the target sequence set is the first sequence number set; if the first SDU is the second type of data, the target sequence set is the second sequence number set.
  • S220 Determine the first sequence number of the first SDU in the target sequence number set.
  • S230 Send a first protocol data unit PDU, where the first PDU is a PDU obtained by encapsulating the first SDU according to the first sequence number.
  • the method 200 further includes: determining a target sequence number set according to the type of the second SDU, determining the second sequence number of the second SDU in the target sequence number set, and sending the second PDU, the second PDU being based on the second PDU obtained by encapsulating the second SDU with the sequence number.
  • the first PDU is sent first, and then the second PDU; or the first PDU and the second PDU are sent at the same time.
  • the second PDU is sent first, and then the first PDU; or the first PDU and the second PDU are sent at the same time.
  • the first PDU and the second PDU are sent according to the arrival sequence of the first SDU and the second SDU; or the first PDU and the second PDU are sent at the same time.
  • the first SDU reaches the PDCP layer first
  • the second SDU reaches the PDCP layer after the first SDU
  • the first PDU is sent first and then the second PDU
  • the second SDU reaches the PDCP layer first
  • the first SDU is After the second SDU reaches the PDCP layer
  • the second PDU is sent first and then the first PDU is sent.
  • the receiving end executes method 300:
  • S310 Receive the first PDU and the second PDU from the sending end.
  • S320 can be discussed in three situations:
  • Case 1 If the sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs, the first service data unit SDU corresponding to the first PDU is delivered to the higher layer according to the first sequence number and the second sequence number The second SDU corresponding to the second PDU.
  • the first count value may be determined according to the first sequence number
  • the second count value may be determined according to the second sequence number
  • Case 2 If the first sequence number belongs to the first sequence number set and the second sequence number belongs to the second sequence number set, the receiving end transmits the first SDU and the second SDU to the upper layer at the PDCP layer at the same time; or corresponding to the second PDU The second SDU first delivers the first service data unit SDU corresponding to the first PDU to the higher layer.
  • Case 3 If the first sequence number belongs to the second sequence number set and the second sequence number belongs to the first sequence number set, the receiving end transmits the first SDU and the second SDU to the upper layer at the PDCP layer at the same time; or corresponding to the first PDU For the first SDU, the second SDU corresponding to the second PDU is first delivered to the higher layer.
  • the sending end can determine the first sequence number set or the second sequence number set as the target sequence number set according to the data type of the first SDU, and according to the two sequence number sets
  • the PDU obtained by the sequence number in the sequence number has a priority order, which can ensure that the PDU obtained according to the sequence number in the first sequence number set is sent first, which helps to reduce the delay.
  • the receiving end determines the order of delivering the SDUs corresponding to the two PDUs to the upper layer according to the sequence number set to which the sequence numbers of the two PDUs belong, and can give priority to the higher priority PDUs to meet the real-time requirements to a certain extent.
  • the embodiments of the present application only take the first type of data and the second type of data as examples for description.
  • the first type of data can be real-time data
  • the second type of data can be stored data.
  • the serial number of the real-time data can be determined in the first serial number set
  • the storage data can be determined in the second serial number set.
  • Serial number, and priority to send real-time data so as to help meet the real-time requirements of real-time data.
  • the first type of data may be data with a delay requirement
  • the second type of data may be data without a delay requirement.
  • the first type of data may be data with high latency requirements
  • the second type of data may be data with relatively low latency requirements.
  • the latency requirement of the first type data is the first latency requirement
  • the second type data The delay requirement for type data is the second delay requirement, and the first delay requirement is higher than the second delay requirement.
  • the sending end receives the first SDU sent by the second layer at the first layer, the sending end determines the target sequence number set in the first layer according to the data type of the SDU, and determines the first sequence number of the first SDU in the target sequence number set, and The first PDU obtained by encapsulating the first SDU with the first sequence number is sent to the receiving end.
  • the second layer is the upper layer of the first layer, and the second layer can also be referred to as the upper layer.
  • the first layer is the PDCP layer
  • the second layer is the network layer; for another example, the first layer is the PDCP layer,
  • the second layer is the RRC layer.
  • the first layer and the second layer may also be layers in a future network system, which is not limited in the embodiment of the present application.
  • the PDU and SDU in the embodiment of the present application are just names of data, and should not cause any limitation to the embodiment of the present application due to the PDU and SDU.
  • the SDU may be data from the second layer
  • the PDU may be data obtained after the first layer encapsulates the second layer data.
  • the first layer is different from the second layer, so SDU and PDU have different meanings.
  • the embodiments of this application only take the second layer as the network layer and the first layer as the PDCP layer as an example for description.
  • the method 400 for transmitting data in the embodiment of the present application is described below with reference to FIG. 5.
  • the second layer is the network layer
  • the first layer is the PDCP layer
  • the first type of data is real-time data
  • the second type of data is stored data. Examples are described.
  • the method 400 is executed by the sending end and the receiving end.
  • the sending end may be the aforementioned terminal device 110, and the receiving end may be the aforementioned network device 120, or the sending end may be the aforementioned network device 120, and the receiving end may be the aforementioned terminal device 110.
  • Method 400 includes:
  • the transmitting end receives the first SDU delivered by the network layer at the PDCP layer.
  • S402 The sending end determines whether the first SDU is real-time data, if it is real-time data, execute S403, and if it is stored data, execute S404. Only perform one of S403 and S404.
  • the sending end determines the data type of the first SDU according to the transport layer protocol type of the first SDU.
  • the sending end determines whether the first SDU is real-time data or stored data in the following manner:
  • the sending end determines the protocol type of the transport layer of the first SDU, and determines whether the first SDU is real-time data according to the protocol type of the transport layer. Because under normal circumstances, data is generally transmitted using the A+B protocol, it means that the A protocol is used for transmission at the application layer, and the B protocol is used for transmission at the transport layer. More specifically, in the video surveillance system, real-time transport protocol (RTP) + user datagram protocol (UDP) is used to transmit real-time data on the user plane, which represents the real-time data on the user plane.
  • RTP real-time transport protocol
  • UDP user datagram protocol
  • the transmission layer adopts the UDP protocol, and the application layer adopts the RTP protocol;
  • the real-time data of the control plane adopts the real-time streaming protocol (RTSP) + transmission control protocol (transmission control protocol, TCP) transmission, which means the control plane
  • RTSP real-time streaming protocol
  • TCP transmission control protocol
  • the transport layer of real-time data uses TCP, and the application layer uses RTSP; storage streams (including control-plane storage streams and user-plane storage streams) use hypertext transfer protocol (HTTP)/file transfer protocol (file transfer) protocol, FTP)+TCP transmission. Therefore, it can be judged whether the protocol type of the transport layer of the first SDU is UDP.
  • the protocol type of the transport layer of the first SDU is UDP
  • the first SDU can be determined.
  • One SDU is real-time data. That is, if the transport layer protocol type of the first SDU is the UDP protocol, the first SDU is the first type of data.
  • the protocol type of the transmission of the first SDU is not the UDP protocol, for example, the protocol of the transport layer is the TCP protocol
  • the destination port number of the transport layer is not When the first value or the destination port number of the transport layer is the second value, for example, when the port number is 80, 8080, or 3128, it means that the application layer uses HTTP, or when the port number is 20, 21, 22, or 23, etc. It means that the application layer adopts the FTP protocol, and the application layer adopts the HTTP protocol or the FTP protocol, then the first SDU can be determined to be the storage data.
  • the sending end determines the first sequence number associated with the first SDU in the first sequence number set.
  • the transmission priority of the PDU obtained according to the sequence number in the first sequence number set is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set.
  • S405 The sending end encapsulates the first SDU according to the first sequence number to generate a first PDU.
  • S406 The sending end sends the first PDU to the receiving end, and the receiving end receives the first PDU.
  • S406 may also include the execution process of the RLC layer, MAC layer, and PHY layer of the sender and receiver. Since the embodiment of this application does not involve the RLC layer, MAC layer, and PHY layer, these execution processes are here. Do not describe in detail.
  • the method 400 further includes: the transmitting end receives the second SDU sent by the network layer at the PDCP layer, and performs 401-S405 on the second SDU once to obtain the second PDU, and performs S407 to send the second PDU corresponding to the second SDU to the receiver The end sends, the receiving end receives the second PDU.
  • the first SDU can reach the PDCP layer first, and the second SDU can reach the PDCP layer after the first SDU; or the second SDU can reach the PDCP layer first, and the first SDU is after the second SDU. Reach the PDCP layer; or the first SDU and the second SDU reach the PDCP layer at the same time.
  • the first PDU can reach the PDCP layer first, and the second PDU can reach the PDCP layer after the first PDU; or the second PDU can reach the PDCP layer first, and the first PDU is after the second PDU. Reach the PDCP layer; or the first PDU and the second PDU reach the PDCP layer at the same time.
  • S408 The receiving end decapsulates the first PDU to obtain a first SDU, and decapsulates the second PDU to obtain a second SDU.
  • S409 The receiving end determines the first sequence number associated with the first PDU and the second sequence number associated with the second PDU.
  • S410 The receiving end determines whether the first sequence number and the second sequence number belong to the same sequence number set, or determines the sequence number set to which the first sequence number and the second sequence number belong.
  • both the first serial number and the second serial number belong to the first serial number set; or both the first serial number and the second serial number belong to the second serial number set; or the first serial number belongs to the first serial number set ,
  • the second serial number belongs to the second serial number set, or the first serial number belongs to the second serial number set, and the second serial number belongs to the first serial number set.
  • the method 400 includes: for a PDU, the header of the PDU includes indication information, and the indication information is used to indicate the sequence number set to which the sequence number of the PDU belongs.
  • the header of the first PDU includes first indication information, the first indication information is used to indicate the sequence number set to which the first sequence number belongs;
  • the header of the second PDU includes second indication information, and the second indication information is used to indicate the second The serial number collection of serial numbers.
  • the method 400 also includes:
  • the receiving end determines whether the first sequence number and the second sequence number belong to the same sequence number set according to the first indication information and the second indication information, or determines the sequence number set to which the first sequence number belongs and the sequence number to which the second sequence number belongs set.
  • the transmitting end can determine the first sequence number and the first sequence number at the PDCP layer.
  • the second sequence number belongs to the first sequence number set; if the first indication information indicates that the first sequence number belongs to the second sequence number set, and the second indication information indicates that the second sequence number belongs to the second sequence number set, the transmitting end can be in the PDCP layer It is determined that the first serial number and the second serial number belong to the second serial number set; if the first indication information indicates that the first serial number belongs to the first serial number set, the second indication information indicates that the second serial number belongs to the second serial number set, Then the transmitting end can determine at the PDCP layer that the first sequence number and the second sequence number do not belong to the same sequence number set.
  • the sender can determine the first sequence number and the second sequence number at the PDCP layer Does not belong to the same serial number set.
  • the method 400 includes: for a PDU, the header of the PDU includes indication information, and the indication information is used to indicate the data type of the PDU.
  • the first indication information is used to indicate the data type of the first PDU
  • the second indication information is used to indicate the data type of the second PDU.
  • PDUs of different data types need to determine the sequence numbers in their respective sequence number sets. If the data type of the first PDU indicated by the first indication information is the first data type, the receiving end can determine that the first sequence number of the first PDU belongs to The first sequence number set, if the second indication information indicates that the data type of the second PDU is the second data type, the receiving end may determine that the second sequence number of the second PDU belongs to the second sequence number set.
  • the receiving end can determine the first sequence number and the first sequence number of the first PDU.
  • the second sequence numbers of the second PDU all belong to the first sequence number set; if the data type of the first PDU indicated by the first indication information is the second data type, the second indication information indicates that the data type of the second PDU is the second data Type, the receiving end can determine that both the first sequence number of the first PDU and the second sequence number of the second PDU belong to the second sequence number set.
  • the receiving end can determine that the first sequence number of the first PDU belongs to the second sequence number set, and if the second indication information indicates the data of the second PDU If the type is the first data type, the receiving end can determine that the second sequence numbers of the second PDU all belong to the first sequence number set.
  • first indication information and second indication information are used to indicate the sequence number set to which the sequence number of the PDU belongs. It can directly indicate the sequence number set to which the sequence number belongs or indirectly indicate the sequence number set.
  • first The names of the instruction information and the second instruction information are not limited in the embodiment of this application.
  • S411 The receiving end transmits the first SDU and the second SDU to the upper layer according to the result in S410 at the PDCP layer.
  • S411 can be discussed in two situations:
  • Case 1 In S410, if the determined first sequence number and the second sequence number belong to the same sequence number set, the first SDU and the second SDU are transferred to the upper layer according to the first sequence number and the second sequence number.
  • the receiving end may set independent count values for the first type of data and the second type of data.
  • the receiving end can determine the first count (COUNT) value associated with the first SDU according to the first sequence number, determine the second count value associated with the second SDU according to the second sequence number, and according to the first count value and the second count
  • COUNT first count
  • the value relationship transfers the first SDU and the second SDU to the upper layer; specifically, if the first count value is greater than the second count value, the second SDU is first transferred to the upper layer, and then the first SDU is transferred, or the second SDU is transferred to the upper layer at the same time.
  • An SDU and a second SDU if the second count value is greater than the first count value, the first SDU is first delivered to the upper layer, and then the second SDU is delivered, or the first SDU and the second SDU are delivered to the upper layer at the same time.
  • the total length of the COUNT value (count value) is H bits, and H is a positive integer.
  • the H bits are composed of the high-order hyperframe number (HFN) and the low-order PDCP SN.
  • the sender The transmitted PDU includes the low-order PDCP SN, and the high-order HFN is maintained by the receiving end.
  • the length of PDCP SN is configured by the upper layer as pdcp-SN-Size bits, and the length of HFN is H-pdcp-SN-Size bits. For example, if H is 32 and pdcp-SN-Size is 12 or 18, the length of HFN is 20 bits or 14 bits.
  • the form of the first serial number set or the second serial number set is [A, B-1], A is the smallest element of the serial number set, B-1 is the largest element of the serial number set, and A is greater than or equal to 0 Integer, B is an integer greater than 0.
  • RX_DELIV represents the SN corresponding to RX_DELIV, that is, the value of the last pdcp-SN-Size bit of RX_DELIV is SN
  • HFN represents the HFN corresponding to RX_DELIV, that is, the value of the first H-pdcp-SN-Size bit of RX_DELIV HFN
  • RCVD_SN represents the SN in the PDU when the receiver receives the PDU at the PDCP layer.
  • the COUNT value is calculated as follows:
  • RCVD_HFN HFN(RX_DELIV)+1.
  • RCVD_HFN HFN(RX_DELIV)-1.
  • RCVD_HFN HFN(RX_DELIV).
  • Case 2 In S410, if it is determined that the first serial number and the second serial number belong to different serial number sets. If the first sequence number belongs to the first sequence number set and the second sequence number belongs to the second sequence number set, at this time, the first SDU and the second SDU have two transmission modes. In the first way, the receiving end simultaneously transmits the first SDU and the second SDU to the upper layer at the PDCP layer. In the second method, the sending priority of the SDU corresponding to the sequence number in the first sequence number set is higher than the sending priority of the SDU corresponding to the sequence number in the second sequence number set, and the receiving end transmits the first priority to the higher layer at the PDCP layer. The SDU transmits the second SDU.
  • the first SDU and the second SDU have two transmission modes.
  • the receiving end simultaneously transmits the first SDU and the second SDU to the upper layer at the PDCP layer.
  • the sending priority of the SDU corresponding to the sequence number in the first sequence number set is higher than the sending priority of the SDU corresponding to the sequence number in the second sequence number set, and the receiving end transmits the second priority to the higher layer at the PDCP layer.
  • the SDU then delivers the first SDU.
  • the following describes an example in which the first serial number belongs to the first serial number set and the second serial number belongs to the second serial number set.
  • the method provided in the embodiments of this application is described by taking two types of serial number sets or two types of data as examples. Those skilled in the art can understand that the method can be extended to more than two types (for example, three, four or more types). Multiple) types of serial number collections or two or more types of data. For each type of data, a corresponding serial number set can be designed. The values of the elements in different serial number sets may be the same or different, and the embodiment of the present application does not limit it.
  • first serial number set and the second serial number set can be in the following two forms:
  • the first serial number set may have a certain relationship with the second serial number set.
  • the first serial number set is [0,1,...,N-1]
  • the second serial number set is [N,...,M-1]
  • M and N are positive integers, and M is greater than N.
  • both the sending end and the receiving end know that the first sequence number set is [0,://,N-1], and the second sequence The number set is [N,...,M-1], because the receiving end can determine which serial number set the serial number belongs to through the size of the serial number, and no additional indication information is needed to indicate which serial number set the serial number belongs to, so Save money.
  • the sender sends corresponding PDUs to the receiver according to the order in which the SDUs reach the PDCP layer.
  • the receiving end After receiving the PDU, the receiving end decapsulates to obtain the SDU and the sequence number corresponding to each SDU, and obtains the count value according to the sequence number, and sends the SDU to the upper layer after reordering according to the count value, or the receiving end can transmit two sequence numbers to the upper layer at the same time Set the corresponding SDU, but for the corresponding SDU in each sequence number set, the count value needs to be obtained according to the sequence number, and the count value is reordered and sent to the upper layer.
  • the value of N is 10.
  • SDU1 and SDU3 are real-time data, and SDU2 and SDU4 are stored data
  • SDU1 and SDU3 are real-time data
  • SDU2 and SDU4 are stored data
  • the sender In the PDCP layer it is SDU1 associated sequence number 0, SDU3 associated sequence number 1, SDU2 associated sequence number 11, and SDU4 associated sequence number 12.
  • the sender encapsulates the serial number 0 of SDU1 in the header to generate PDU1, encapsulates the serial number 11 of SDU2 in the header to generate PDU2, encapsulates the serial number 1 of SDU3 in the header to generate PDU3, and encapsulates the serial number 12 of SDU4 in the header
  • the sending order of the sender is PDU1-PDU3-PDU2-PDU4.
  • the receiving end may not receive PDU1, PDU2, PDU3, and PDU4 in the order of transmission at the PDCP layer. Some PDUs may be retransmitted.
  • the receiving end can decapsulate PDU1 to obtain SDU1, decapsulate PDU2 to obtain SDU2, and decapsulate PDU3 to obtain SDU3.
  • Decapsulate PDU4 to get SDU4 but since the sequence number of the header of PDU1 is 0, the sequence number of the header of PDU2 is 11, the sequence number of the header of PDU3 is 1, and the sequence number of the message of PDU4 is 12, the receiving end can determine Serial numbers 1 and 2 belong to the first serial number set, and serial numbers 11 and 12 belong to the second serial number set.
  • the order that the receiving end can deliver to the upper layer at the PDCP layer may be: SDU1-SDU3-SDU2-SDU4.
  • the receiving end can deliver two sets of SDUs to the upper layer at the PDCP layer at the same time.
  • the first set of SDUs are SDU1 and SDU3
  • the second set of SDUs are SDU2 and SDU4, but the order of the first set of SDUs is SDU1 and SDU3.
  • the order of the second group of SDUs is to send SDU2 first, then SDU3.
  • the value of PDCP SN is 0 to 2 pdcp-SN-Size -1 cycle, which means that if the current PDCP SN is 2 pdcp-SN-Size -1, the next PDCP SN is 0, pdcp-SN-Size It is a positive integer, for example, the value of pdcp-SN-Size can be 12 or 18.
  • N is or M is 2 pdcp-SN-Size , where, For the rounding down operation, It is the round up operation.
  • the first serial number set is [0,...,P-1]
  • the second serial number set is [0,1,...,Q-1]
  • P and Q are positive integers.
  • both the sending end and the receiving end know that the first sequence number set is [0, whil,P-1], and the second sequence The number set is [0, hence,Q-1].
  • the receiving end decapsulates and obtains the SDU and the sequence number corresponding to each SDU. If the sequence number corresponding to the first group of SDU belongs to the first sequence number set, the count value is obtained according to the sequence number of the first sequence number set. After the values are reordered, the first group of SDUs corresponding to the sequence numbers in the first sequence number set is sent to the upper layer.
  • the count value is obtained according to the sequence numbers of the second sequence number set, and the sequence numbers corresponding to the sequence numbers in the second sequence number set are sent to the upper layer according to the count value.
  • the second group of SDUs optionally, the first group of SDUs can be sent first, and then the second group of SDUs; or the receiving end can send the first group of SDUs and the second group of SDUs at the same time, but the SDUs in the first group of SDUs need to be
  • the count value determined by the sequence number is sent from small to large, and the SDUs in the second group of SDUs need to be sent from small to large according to the count value determined by the sequence number.
  • the value of P is 10 and the value of Q is 11.
  • SDU1 and SDU2 at the PDCP layer are received, where SDU1 and SDU3 are real-time data, and SDU2 and SDU4
  • the transmitting end in the PDCP layer is SDU1 associated sequence number 0, SDU3 associated sequence number 1, SDU2 associated sequence number 0, and SDU4 associated sequence number 1.
  • the sender encapsulates the serial number 0 of SDU1 in the header to generate PDU1, encapsulates the serial number 0 of SDU2 in the header to generate PDU2, encapsulates the serial number 1 of SDU3 in the header to generate PDU3, and encapsulates the serial number 1 of SDU4 in the header
  • the sending order of the sender is PDU1-PDU3-PDU2-PDU4, that is, the real-time data is sent first, and the stored data is sent after the real-time data is sent.
  • the sender may encapsulate indication information in the header of each PDU, and the indication information is used to indicate the sequence number set to which the sequence number of the header of the PDU belongs.
  • the value of the specific bit of PDU1 is 0, which means that the sequence number 0 in the header of PDU1 belongs to the first sequence number set [0,...,P-1], and the value of the specific bit of PDU2 is 1.
  • the receiving end may not receive PDU1, PDU2, PDU3, and PDU4 in the order of transmission at the PDCP layer. Some PDUs may be retransmitted.
  • the receiving end can decapsulate PDU1 to obtain SDU1, decapsulate PDU2 to obtain SDU2, and decapsulate PDU3 to obtain SDU3.
  • Decapsulating PDU4 to get SDU4 but because the indication information of the header of PDU1 indicates that the sequence number 0 belongs to the first sequence number set, the sequence number 0 indicated by the indication information of the header of PDU2 belongs to the second sequence number set, and the indication information of the header of PDU3 indicates The sequence number 1 belongs to the first sequence number set, and the indication information in the header of PDU4 indicates that the sequence number 1 belongs to the second sequence number set, and the receiving end can determine that the sequence number 0 of PDU1 and the sequence number 1 of PDU3 belong to the first sequence number set.
  • the sequence number 0 of PDU2 and the sequence number 1 of PDU4 belong to the second sequence number set.
  • the order in which the receiving end can deliver to the upper layer at the PDCP layer may be: SDU1-SDU3-SDU2-SDU4.
  • the receiving end at the PDCP layer can deliver two sets of SDUs to the higher layer at the same time.
  • the first set of SDUs are SDU1 and SDU3, and the second set of SDUs are SDU2 and SDU4, but the order of the first set of SDUs is SDU1 and SDU3.
  • the order of the second group of SDUs is to send SDU2 first, then SDU3.
  • the foregoing descriptions of the first serial number set and the second serial number set are only by way of example, but the embodiments of the present application are not limited to this.
  • the second serial number set can also be in other forms.
  • the first serial number set can be [0,...,N1-1]
  • the second serial number set is [N2,...,M-1]
  • N1 And N2 are positive integers
  • N2 is greater than or equal to N1, if N1 is equal to N2, that is, the first serial number set and the second serial number set are in the first form described above.
  • the “simultaneous” mentioned in the embodiments of the present application can be understood as the time difference is less than a preset threshold, and the time difference can refer to an absolute time difference or a relative time difference.
  • the receiving end transmits A and B to the upper layer at the PDCP layer at the same time, which means: the time difference between the receiving end to transmit A and B to the upper layer at the PDCP layer is less than the preset threshold; A and B reach the PDCP layer at the same time, which means: A and B reach PDCP The layer time difference is less than the preset threshold.
  • the method for transmitting data provided in the embodiments of the present application is for a PDCP entity, at the sending end, the first sequence number of real-time data is determined in the first sequence number set, and the second sequence number of the stored data is determined in the second sequence number set.
  • Serial number, and priority to send real-time data which can meet the real-time requirements of real-time data.
  • directly sending data without distinguishing the type of data can reduce the data delay.
  • Figures 7, 8 and Figure 9 show the simulation results of the method for transmitting data provided by the embodiments of the present application with respect to the prior art.
  • FIG. 7 is 700 bit rate (kilobit per second, kbps); the bit rate of video 2 in FIG. 8 is 743 kbps; and the bit rate of video 3 in FIG. 9 is 835 kbps.
  • Figure 7, Figure 8, and Figure 9 show the performance of the freeze ratio and frame playback delay when the channel gain changes from -123dB to -127dB.
  • the solid lines in FIG. 7, FIG. 8, and FIG. 9 represent the simulation results of the data transmission method provided by the embodiment of the present application, and the dotted lines represent the simulation results of the data transmission method in the prior art. It can be seen from Fig. 7, Fig. 8 and Fig. 9 that when the channel gain is greater than -125dB, the channel capacity is large enough.
  • the stall ratio of the method for transmitting data in the embodiment of this application and the method for transmitting data in the prior art And frame playback delay is very low.
  • the channel gain is less than -125dB, the channel capacity is reduced.
  • the real-time stream jam ratio and frame playback delay will increase significantly.
  • the data transmission method provided in the embodiment of the present application there is no significant change in the freeze ratio and frame playback delay.
  • FIG. 10 shows a schematic block diagram of an apparatus 500 for transmitting data provided in an embodiment of the present application.
  • the apparatus 500 may correspond to the sending end described in the foregoing method, or may correspond to the chip or component of the sending end, and each of the apparatus 500
  • the modules or units may be respectively used to execute various actions or processing procedures performed by the sending end in the foregoing method.
  • the data transmission device 500 may include a processing unit 510 and a transceiver unit 520.
  • the processing unit 510 is configured to determine a set of target serial numbers according to the data type of the first SDU, where the set of target serial numbers is a first serial number set or a second serial number set, and according to the first serial number set
  • the transmission priority of the PDU obtained by the sequence number of is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set;
  • the processing unit 510 is further configured to determine the first sequence number of the first SDU in the target sequence number set;
  • the transceiver unit 520 is configured to send a first protocol data unit PDU, where the first PDU is a PDU obtained by encapsulating the first SDU according to the first sequence number.
  • processing unit 510 is specifically configured to:
  • the target sequence set is a first sequence number set
  • the target sequence set is the second sequence number set.
  • the first type of data is real-time data
  • the second type of data is stored data
  • the first sequence number set is [0,...,N-1]
  • the second sequence number set is [N,...,M-1]
  • M and N are positive Integer, and M is greater than N.
  • the first sequence number set is [0,...,P-1]
  • the second sequence number set is [0,...,Q-1]
  • P and Q are positive Integer.
  • the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence number set to which the first sequence number belongs, or used to indicate data of the first PDU Types of.
  • processing unit 510 is further configured to:
  • the data type of the first SDU is determined according to the transport layer protocol type of the first SDU.
  • processing unit 510 is specifically configured to:
  • the transport layer protocol type of the first SDU is the UDP protocol
  • the first SDU is data of the first type
  • the transport layer protocol type of the first SDU is not the UDP protocol
  • the data type of the first SDU is determined according to the destination port number of the transport layer of the first SDU.
  • processing unit 510 is specifically configured to:
  • the first SDU is the first data type
  • the first SDU is of the second data type.
  • FIG. 11 shows a schematic block diagram of an apparatus 600 for transmitting data provided by an embodiment of the present application.
  • the apparatus 600 may correspond to the receiving end described in the foregoing method, or may correspond to the receiving chip or component, and each of the apparatus 600 The modules or units may respectively be used to perform various actions or processing procedures performed by the receiving end in the above method.
  • the data transmission device 600 may include a receiving unit 610 and a transmitting unit 620.
  • the receiving unit 610 is configured to receive the first protocol data unit PDU and the second PDU;
  • the transferring unit 620 is configured to transfer the first sequence number corresponding to the first PDU to the higher layer according to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs.
  • the transferring unit 620 is specifically configured to: the sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs, and according to the first sequence number and the sequence number set The size of the second sequence number is transferred to the higher layer of the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU.
  • the transferring unit 620 is specifically configured to: if the first sequence number belongs to a first sequence number set, and the second sequence number belongs to a second sequence number set, then the corresponding second PDU The second SDU first delivers the first service data unit SDU corresponding to the first PDU to the higher layer.
  • the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence number set to which the first sequence number belongs; the header of the second PDU includes the first 2. Indication information, where the second indication information is used to indicate the sequence number set described by the second sequence number.
  • the apparatus 500 of each of the foregoing solutions has the function of implementing the corresponding steps performed by the sending end in the foregoing method
  • the apparatus 600 of each of the foregoing solutions has the function of implementing the corresponding steps performed by the receiving end of the foregoing method
  • the functions can be implemented by hardware or software, or Implement the corresponding software through hardware.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions; for example, the sending unit can be replaced by a communication interface, the receiving unit can be replaced by a communication interface, and other units, such as the determining unit, can be replaced by a processor to execute each method separately Transceiving operations and related processing operations in the embodiment.
  • the communication interface of a device is used for the device to communicate with other devices.
  • the communication interface may be a transmitter, a receiver, a transceiver, a circuit, a bus, a module, a pin, or another type of communication interface, which is not limited in the embodiment of the present application.
  • the processor can be used to perform, for example, but not limited to, baseband related processing
  • the communication interface can be used to perform, for example, but not limited to, information exchange.
  • the above-mentioned devices may be respectively arranged on independent chips, or at least partly or fully arranged on the same chip.
  • the processor can be further divided into an analog baseband processor and a digital baseband processor, where the analog baseband processor and the communication interface can be integrated on the same chip, and the digital baseband processor can be set on a separate chip. With the continuous development of integrated circuit technology, more and more devices can be integrated on the same chip.
  • a digital baseband processor can be combined with a variety of application processors (such as but not limited to graphics processors, multimedia processors, etc.) Integrated on the same chip.
  • application processors such as but not limited to graphics processors, multimedia processors, etc.
  • Such a chip may be called a system on chip (SOC).
  • SOC system on chip
  • an embodiment of the present application provides a schematic block diagram of an apparatus 700 for transmitting data.
  • the apparatus 700 includes a processor 710, a communication interface 720, and a memory 730.
  • the processor 710, the communication interface 720, and the memory 730 are coupled to communicate with each other.
  • the memory 730 is used to store instructions, and the processor 710 is used to execute the instructions stored in the memory 730 to control the communication interface 720 to send signals and/or receive signal.
  • the coupling in the embodiments of the present application is an indirect coupling or communication connection between devices, units, or modules, and may be in electrical, mechanical or other forms, and is used for information exchange between devices, units or modules.
  • the processor 710 is configured to determine a target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence Number set or second sequence number set, the transmission priority of the PDU obtained according to the sequence number in the first sequence number set is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set;
  • the processor 710 is further configured to determine the first sequence number of the first SDU in the target sequence number set; the processor 710 uses the communication interface 720 to send a first protocol data unit PDU, where the first PDU is based on the first
  • the sequence number is the PDU obtained by encapsulating the first SDU.
  • the processor 710 uses the communication interface 720 to receive the first protocol data unit PDU and the second PDU; the processor 710 is configured to perform according to the first PDU of the first PDU
  • the sequence number set to which the sequence number belongs and the sequence number set to which the second sequence number of the second PDU belongs are delivered to the higher layer of the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU.
  • the apparatus in FIG. 10 or the apparatus in FIG. 11 in the embodiment of the present application may be implemented by the apparatus 700 in FIG. 12, and may be used to execute the respective steps and/or steps corresponding to the sending end and the receiving end in the foregoing method embodiment. Or process.
  • the present application also provides a computer program product, the computer program product includes: computer program code, when the computer program code runs on a computer, the computer executes the method in the above embodiment .
  • the various embodiments in this application can also be combined with each other.
  • the present application also provides a computer-readable medium with a program code stored in the computer-readable interpretation, and when the program code runs on a computer, the computer executes the method in the foregoing embodiment .
  • the foregoing method embodiments in the embodiments of the present application may be applied to a processor or implemented by a processor.
  • the processor may be an integrated circuit chip with signal processing capabilities.
  • the steps of the foregoing method embodiments can be completed by hardware integrated logic circuits in the processor or instructions in the form of software.
  • the above-mentioned processor may be a general-purpose processor, a digital signal processor (digital signal processor, DSP), an application specific integrated circuit (ASIC), an off-the-shelf programmable gate array (Field Programmable Gate Array, FPGA) or other Programming logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • FPGA off-the-shelf programmable gate array
  • the methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed.
  • the general-purpose processor may be a microprocessor or any conventional processor.
  • the memory in the embodiment of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory.
  • the non-volatile memory can be read-only memory (ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), and electronic Erase programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • the volatile memory may be random access memory (RAM), which is used as an external cache.
  • RAM static RAM
  • dynamic RAM dynamic RAM
  • synchronous dynamic random access memory synchronous DRAM, SDRAM
  • double data rate Synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • synchronous connection dynamic random access memory direct rambus RAM, DR RAM
  • direct memory bus random memory Take memory (direct rambus RAM, DR RAM).
  • the size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, rather than corresponding to the embodiments of the present application.
  • the implementation process constitutes any limitation.
  • the computer program product may include one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, network equipment, terminal equipment, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrated with one or more available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic disk), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
  • the disclosed system, device, and method may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components can be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • each unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Provided in the present application are a method and an apparatus for transmitting data. The method comprises: on the basis of the data type of a first SDU, determining a target serial number set, the target serial number set being a first serial number set or a second serial number set, and the transmission priority of PDU obtained on the basis of a serial number in the first serial number set being higher than the transmission priority of PDU obtained on the basis of a serial number in the second serial number set; determining a first serial number of the first SDU in the target serial number set; and sending a first protocol data unit PDU, the first PDU being a PDU obtained by packaging the first SDU on the basis of the first serial number, thus facilitating the reduction of latency to meet real-time demands to a certain extent. Exemplarily, the present method can be used in a video surveillance scenario.

Description

传输数据的方法和装置Method and device for transmitting data
本申请要求于2019年04月15日提交中国专利局、申请号为201910297232.0、申请名称为“传输数据的方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the Chinese Patent Office on April 15, 2019, with the application number 201910297232.0 and the application name "Method and Device for Data Transmission", the entire content of which is incorporated into this application by reference.
技术领域Technical field
本申请涉及通信领域,并且更具体地,涉及通信领域中的传输数据的方法和装置。This application relates to the communication field, and more specifically, to a method and device for transmitting data in the communication field.
背景技术Background technique
近年来,随着计算机网络以及图像处理技术的飞速发展,视频监控已经广泛地应用于各种场景中,包括交通分析、医疗保健、公共安全、野生动物跟踪和环境监测等。视频监控系统分为有线视频监控系统和无线视频监控系统两类,与有线视频监控系统相比,无线视频监控系统具有成本低廉、应用范围广、扩展性好并且移动性高等优点。In recent years, with the rapid development of computer networks and image processing technologies, video surveillance has been widely used in various scenarios, including traffic analysis, medical care, public safety, wildlife tracking, and environmental monitoring. Video surveillance systems are divided into wired video surveillance systems and wireless video surveillance systems. Compared with wired video surveillance systems, wireless video surveillance systems have the advantages of low cost, wide application range, good scalability, and high mobility.
发明内容Summary of the invention
本申请提供一种传输数据的方法和装置,可以满足数据的实时性要求,有助于提高系统的性能。The present application provides a method and device for transmitting data, which can meet the real-time requirements of data and help improve the performance of the system.
第一方面,提供了一种传输数据的方法,包括:根据第一SDU的数据类型,确定目标序列号集合,其中,目标序列号集合为第一序列号集合或第二序列号集合,根据第一序列号集合中的序列号得到的PDU的发送优先级高于根据第二序列号集合中的序列号得到的PDU的发送优先级;在目标序列号集合中确定第一SDU的第一序列号;发送第一协议数据单元PDU,第一PDU是根据第一序列号对第一SDU进行封装得到的PDU。In a first aspect, a method for transmitting data is provided, which includes: determining a target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence number set or the second sequence number set, and according to the first SDU The transmission priority of the PDU obtained by the sequence number in a sequence number set is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set; the first sequence number of the first SDU is determined in the target sequence number set ; Send the first protocol data unit PDU, the first PDU is the PDU obtained by encapsulating the first SDU according to the first sequence number.
因此,本申请实施例提供的传输数据的方法,可以根据第一SDU的数据类型,确定第一序列号集合或第二序列号集合为目标序列号集合,并且根据两个序列号集合中的序列号得到的PDU存在优先级顺序,这样可以保证优先发送根据第一序列号集合中的序列号得到的PDU,有助于降低时延,从而在一定程度上能满足实时性要求。Therefore, the method for transmitting data provided by the embodiment of the present application can determine the first serial number set or the second serial number set as the target serial number set according to the data type of the first SDU, and according to the sequences in the two serial number sets There is a priority order for the PDUs obtained by the number, which can ensure that the PDUs obtained according to the sequence numbers in the first sequence number set are sent first, which helps to reduce the time delay, so as to meet the real-time requirements to a certain extent.
在一些可能的实现方式中,根据第一SDU的数据类型,确定目标序列号集合,包括:若第一SDU为第一类型数据,目标序列集合是第一序列号集合;若第一SDU为第二类型数据,目标序列集合是第二序列号集合。In some possible implementations, determining the target sequence number set according to the data type of the first SDU includes: if the first SDU is the first type of data, the target sequence set is the first sequence number set; if the first SDU is the first SDU For the second type of data, the target sequence set is the second sequence number set.
可选地,第一类型数据的时延要求高于第二类型数据的时延要求。这样可以优先发送第一类型数据,从而有助于降低第一类型数据的时延。Optionally, the delay requirement of the first type of data is higher than that of the second type of data. In this way, the first type of data can be sent first, thereby helping to reduce the delay of the first type of data.
在一些可能的实现方式中,第一类型数据为实时数据,第二类型数据为存储数据。In some possible implementations, the first type of data is real-time data, and the second type of data is stored data.
在视频领域中,实时数据的时延要求较高,而存储数据没有时延要求,从而可以保证实时数据优先传输。In the video field, real-time data has a high latency requirement, but stored data has no latency requirement, so that real-time data can be transmitted first.
在一些可能的实现方式中,第一序列号集合为[0,……,N-1],第二序列号集合为[N,……,M-1],M和N为正整数,并且M大于N。In some possible implementations, the first serial number set is [0,...,N-1], the second serial number set is [N,...,M-1], M and N are positive integers, and M is greater than N.
可选地,N为
Figure PCTCN2020077382-appb-000001
Figure PCTCN2020077382-appb-000002
M为2 pdcp-SN-Size,其中,
Figure PCTCN2020077382-appb-000003
为下取整运算,
Figure PCTCN2020077382-appb-000004
为上取整运算,pdcp-SN-Size为正整数,例如,pdcp-SN-Size取值可以为12或者18。
Optionally, N is
Figure PCTCN2020077382-appb-000001
or
Figure PCTCN2020077382-appb-000002
M is 2 pdcp-SN-Size , where,
Figure PCTCN2020077382-appb-000003
For the rounding down operation,
Figure PCTCN2020077382-appb-000004
For the above rounding operation, pdcp-SN-Size is a positive integer, for example, the value of pdcp-SN-Size can be 12 or 18.
在一些可能的实现方式中,第一序列号集合为[0,……,P-1],第二序列号集合为[0,……,Q-1],P和Q为正整数。In some possible implementations, the first sequence number set is [0,...,P-1], the second sequence number set is [0,...,Q-1], and P and Q are positive integers.
在一些可能的实现方式中,第一PDU的包头包括第一指示信息,第一指示信息用于指示第一序列号所属的序列号集合,或者用于指示第一PDU的数据类型。In some possible implementation manners, the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence number set to which the first sequence number belongs, or used to indicate the data type of the first PDU.
这样,接收端根据第一指示信息可以确定第一序列号所属的序列号集合。In this way, the receiving end can determine the sequence number set to which the first sequence number belongs according to the first indication information.
在一些可能的实现方式中,方法还包括:根据第一SDU的传输层协议类型确定第一SDU的数据类型。In some possible implementation manners, the method further includes: determining the data type of the first SDU according to the transport layer protocol type of the first SDU.
在一些可能的实现方式中,根据第一SDU的传输层协议类型确定第一SDU的数据类型,包括:若第一SDU的传输层协议类型为UDP协议,则第一SDU为第一类型数据;若第一SDU的传输层协议类型不是UDP协议,则根据第一SDU的传输层的目的端口号确定第一SDU的数据类型。In some possible implementation manners, determining the data type of the first SDU according to the transport layer protocol type of the first SDU includes: if the transport layer protocol type of the first SDU is the UDP protocol, the first SDU is the first type data; If the transport layer protocol type of the first SDU is not the UDP protocol, the data type of the first SDU is determined according to the destination port number of the transport layer of the first SDU.
在一些可能的实现方式中,根据第一SDU的传输层的目的端口号确定第一SDU的数据类型,包括:若传输层的目的端口号为554,则第一SDU为第一数据类型;若传输层的目的端口号不是554,则第一SDU为第二数据类型。In some possible implementations, determining the data type of the first SDU according to the destination port number of the transport layer of the first SDU includes: if the destination port number of the transport layer is 554, the first SDU is the first data type; if If the destination port number of the transport layer is not 554, the first SDU is the second data type.
这样,接收端根据传输层协议类型可以确定第一序列号所属的序列号集合,可以不需要通过额外的信令通知该信息,因此可以降低信令开销。In this way, the receiving end can determine the sequence number set to which the first sequence number belongs according to the transport layer protocol type, and there is no need to notify the information through additional signaling, so signaling overhead can be reduced.
第二方面,提供了一种传输数据的方法,包括:接收第一协议数据单元PDU和第二PDU;根据第一PDU的第一序列号所属的序列号集合和第二PDU的第二序列号所属的序列号集合,向高层传递第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。In a second aspect, a method for transmitting data is provided, including: receiving a first protocol data unit PDU and a second PDU; according to the sequence number set to which the first sequence number of the first PDU belongs and the second sequence number of the second PDU The set of sequence numbers to which it belongs, transmits the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU to the higher layer.
因此,本申请实施例提供的传输数据的方法,接收端根据两个PDU的序列号所属的序列号集合确定向高层递交两个PDU对应的SDU的顺序,可以优先向高层传递优先级高的PDU,从而在一定程度上能满足实时性要求。Therefore, in the method for transmitting data provided by the embodiments of this application, the receiving end determines the order of delivering the SDUs corresponding to the two PDUs to the upper layer according to the sequence number set to which the sequence numbers of the two PDUs belong, and can give priority to the higher priority PDUs. , So as to meet the real-time requirements to a certain extent.
在一些可能的实现方式中,根据第一PDU的第一序列号所属的序列号集合和第二PDU的第二序列号所属的序列号集合,向高层传递第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU,包括:In some possible implementations, according to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs, the first service data unit corresponding to the first PDU is delivered to the higher layer. The SDU and the second SDU corresponding to the second PDU include:
第一序列号所属的序列号集合和第二序列号所属的序列号集合相同,根据第一序列号和第二序列号的大小,向高层传递第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。The sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs. According to the size of the first sequence number and the second sequence number, the first service data unit SDU and the first service data unit corresponding to the first PDU and the The second SDU corresponding to the two PDUs.
在一些可能的实现方式中,根据第一PDU的第一序列号所属的序列号集合和第二PDU的第二序列号所属的序列号集合,向高层传递第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU,包括:若第一序列号属于第一序列号集合,第二序列号属于第二序列号集合,则相对第二PDU对应的第二SDU,优先将第一PDU对应的第一服务数据单元SDU递交至高层。In some possible implementations, according to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs, the first service data unit corresponding to the first PDU is delivered to the higher layer. The second SDU corresponding to the SDU and the second PDU includes: if the first sequence number belongs to the first sequence number set, and the second sequence number belongs to the second sequence number set, the second SDU corresponding to the second PDU is given priority The first service data unit SDU corresponding to a PDU is delivered to the upper layer.
在一些可能的实现方式中,第一PDU的包头包括第一指示信息,第一指示信息用于指示第一序列号所属的序列号集合;第二PDU的包头包括第二指示信息,第二指示信息 用于指示第二序列号的序列号集合。In some possible implementations, the header of the first PDU includes first indication information, which is used to indicate the sequence number set to which the first sequence number belongs; the header of the second PDU includes second indication information, and the second indication The information is used to indicate the sequence number set of the second sequence number.
这样,接收端根据第一指示信息和第二指示信息确定第一序列号和第二序列号是否属于相同的序列号集合。In this way, the receiving end determines whether the first sequence number and the second sequence number belong to the same sequence number set according to the first indication information and the second indication information.
第三方面,本申请提供一种传输数据的装置,用于实现第一方面和/或其任意可能的实现方式中的方法。该装置可以是终端设备(或网络设备),也可以是终端设备(或网络设备)中的装置,或者是能够和终端设备(或网络设备)匹配使用的装置。一种设计中,该装置可以包括执行第一方面和/或其任意可能的实现方式中所描述的方法/操作/步骤/动作所一一对应的模块,该模块可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。一种设计中,该装置可以包括处理单元和收发单元。In the third aspect, this application provides a data transmission device for implementing the method in the first aspect and/or any possible implementation manners thereof. The device may be a terminal device (or a network device), a device in a terminal device (or a network device), or a device that can be matched and used with the terminal device (or network device). In one design, the device may include modules that perform one-to-one correspondence of the methods/operations/steps/actions described in the first aspect and/or any possible implementation manners thereof. The modules may be hardware circuits or software , It can also be realized by hardware circuit combined with software. In one design, the device may include a processing unit and a transceiver unit.
第四方面,本申请提供一种传输数据的装置,用于实现第二方面和/或其任意可能的实现方式中的方法。该装置可以是终端设备(或网络设备),也可以是终端设备(或网络设备)中的装置,或者是能够和终端设备(或网络设备)匹配使用的装置。一种设计中,该装置可以包括执行第二方面和/或其任意可能的实现方式中所描述的方法/操作/步骤/动作所一一对应的模块,该模块可以是硬件电路,也可是软件,也可以是硬件电路结合软件实现。一种设计中,该装置可以包括处理单元和传递单元。In a fourth aspect, this application provides a data transmission device for implementing the method in the second aspect and/or any possible implementation manners thereof. The device may be a terminal device (or a network device), a device in a terminal device (or a network device), or a device that can be matched and used with the terminal device (or network device). In one design, the device may include modules that perform one-to-one correspondence of the methods/operations/steps/actions described in the second aspect and/or any possible implementations thereof. The module may be a hardware circuit or a software , It can also be realized by hardware circuit combined with software. In one design, the device may include a processing unit and a transfer unit.
第五方面,本申请提供一种传输数据的装置,该装置包括处理器,用于实现上述第一方面和/或其任意可能的实现方式中描述的方法。所述装置还可以包括存储器,所述存储器与所述处理器耦合,所述处理器用于实现上述第一方面和/或其任意可能的实现方式中描述的方法。可选地,所述处理器用于存储指令,所述处理器执行所述存储器中存储的指令时,可以实现上述第一方面和/或其任意可能的实现方式中描述的方法。所述装置还可以包括通信接口,所述通信接口用于该装置与其它设备进行通信,示例性的,通信接口可以是收发器、电路、总线、模块、管脚或其它类型的通信接口。In a fifth aspect, the present application provides a data transmission device. The device includes a processor for implementing the method described in the first aspect and/or any possible implementation manners thereof. The apparatus may further include a memory, the memory is coupled with the processor, and the processor is configured to implement the method described in the first aspect and/or any possible implementation manner thereof. Optionally, the processor is configured to store instructions, and when the processor executes the instructions stored in the memory, the method described in the first aspect and/or any possible implementation manner thereof can be implemented. The device may further include a communication interface for communicating with other devices. Exemplarily, the communication interface may be a transceiver, circuit, bus, module, pin, or other types of communication interfaces.
第六方面,本申请提供一种传输数据的装置,该装置包括处理器,用于实现上述第二方面和/或其任意可能的实现方式中描述的方法。所述装置还可以包括存储器,所述存储器与所述处理器耦合,所述处理器用于实现上述第二方面和/或其任意可能的实现方式中描述的方法。可选地,所述处理器用于存储指令,所述处理器执行所述存储器中存储的指令时,可以实现上述第二方面和/或其任意可能的实现方式中描述的方法。所述装置还可以包括通信接口,所述通信接口用于该装置与其它设备进行通信。In a sixth aspect, the present application provides a data transmission device. The device includes a processor, configured to implement the method described in the second aspect and/or any possible implementation manners thereof. The apparatus may further include a memory, the memory is coupled with the processor, and the processor is configured to implement the method described in the second aspect and/or any possible implementation manner thereof. Optionally, the processor is configured to store instructions, and when the processor executes the instructions stored in the memory, the method described in the second aspect and/or any possible implementation manner thereof can be implemented. The device may also include a communication interface, which is used for the device to communicate with other devices.
第七方面,本申请提供了一种传输数据的系统,该系统包括上述第三方面提供的装置以及第四方面提供的装置;或者In a seventh aspect, this application provides a system for transmitting data, the system including the device provided in the third aspect and the device provided in the fourth aspect; or
该系统包括上述第五方面提供的装置以及第六方面提供的装置;The system includes the device provided by the fifth aspect and the device provided by the sixth aspect;
第八方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行第一方面及其任意可能的设计中的方法。In an eighth aspect, this application provides a computer-readable storage medium in which computer instructions are stored. When the computer instructions are run on the computer, the computer can execute the methods in the first aspect and any possible designs. .
第九方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行第二方面及其任意可能的设计中的方法。In the ninth aspect, the present application provides a computer-readable storage medium in which computer instructions are stored. When the computer instructions are executed on the computer, the computer executes the method in the second aspect and any possible designs thereof .
第十方面,本申请提供一种芯片,包括处理器。处理器用于执行第一方面及其任意可能的实现方式中的方法。In a tenth aspect, this application provides a chip including a processor. The processor is used to execute the method in the first aspect and any possible implementation manners thereof.
可选地,所述芯片还包括存储器,存储器与处理器耦合。Optionally, the chip further includes a memory, and the memory is coupled with the processor.
进一步可选地,所述芯片还包括通信接口。Further optionally, the chip further includes a communication interface.
第十一方面,本申请提供一种芯片,包括处理器。处理器用于执行第二方面及其任意可能的实现方式中的方法。In an eleventh aspect, this application provides a chip including a processor. The processor is used to execute the method in the second aspect and any possible implementation manners thereof.
可选地,所述芯片还包括存储器,存储器与处理器耦合。Optionally, the chip further includes a memory, and the memory is coupled with the processor.
进一步可选地,所述芯片还包括通信接口。Further optionally, the chip further includes a communication interface.
第十二方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行第一方面及其任意可能的设计中的方法。In the twelfth aspect, the present application provides a computer program product, the computer program product includes computer program code, when the computer program code runs on a computer, the computer executes the first aspect and any of its possible designs method.
第十三方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行第二方面及其任意可能的实现方式中的方法。In a thirteenth aspect, the present application provides a computer program product, the computer program product includes computer program code, when the computer program code runs on a computer, the computer executes the second aspect and any possible implementation manners thereof Methods.
附图说明Description of the drawings
图1是本申请实施例提供的一种通信场景的示意图;FIG. 1 is a schematic diagram of a communication scenario provided by an embodiment of the present application;
图2是本申请实施例提供的一种空口协议栈的结构示意图;FIG. 2 is a schematic structural diagram of an air interface protocol stack provided by an embodiment of the present application;
图3至图5是本申请实施例提供的传输数据的方法示意图;3 to 5 are schematic diagrams of data transmission methods provided by embodiments of the present application;
图6是本申请实施例提供的COUNT值的示意图;Fig. 6 is a schematic diagram of the COUNT value provided by an embodiment of the present application;
图7至图9是本申请实施例提供的本申请实施例提供的传输数据的方法相对于现有技术的仿真结果示意图;7 to 9 are schematic diagrams of simulation results of the method for transmitting data provided by the embodiment of the present application relative to the prior art according to the embodiment of the present application;
图10至图12是本申请实施例提供的传输数据的装置的示意性框图。10 to 12 are schematic block diagrams of data transmission apparatuses provided by embodiments of the present application.
具体实施方式detailed description
下面将结合附图,对本申请中的技术方案进行描述。The technical solution in this application will be described below in conjunction with the drawings.
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通信(global system for mobile communications,GSM)系统、码分多址(code division multiple access,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long term evolution,LTE)系统、LTE频分双工(frequency division duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobile telecommunication system,UMTS)、全球互联微波接入(worldwide interoperability for microwave access,WiMAX)通信系统、第五代(5th generation,5G)系统或新无线(new radio,NR)等。The technical solutions of the embodiments of this application can be applied to various communication systems, such as: global system for mobile communications (GSM) system, code division multiple access (CDMA) system, broadband code division multiple access (wideband code division multiple access, WCDMA) system, general packet radio service (GPRS), long term evolution (LTE) system, LTE frequency division duplex (FDD) system, LTE Time division duplex (TDD), universal mobile telecommunication system (UMTS), worldwide interoperability for microwave access (WiMAX) communication system, fifth generation (5G) System or New Radio (NR), etc.
图1示出了本申请实施例提供的一种通信场景的示意图。如图1所示,终端设备110通过接入网设备120接入到无线网络,以通过无线网络获取外网(例如,因特网)的服务,或者通过无线网络与其它终端设备通信。Fig. 1 shows a schematic diagram of a communication scenario provided by an embodiment of the present application. As shown in FIG. 1, a terminal device 110 accesses a wireless network through an access network device 120 to obtain services from an external network (for example, the Internet) through the wireless network, or communicate with other terminal devices through the wireless network.
终端设备110可以是可以指用户设备(user equipment,UE)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备还可以是蜂窝电话、无绳电话、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字 助理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,5G网络中的终端设备或者未来演进的公用陆地移动通信网络(public land mobile network,PLMN)中的终端设备等,本申请实施例对此并不限定。The terminal device 110 may refer to user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile equipment, user terminal, terminal, wireless communication equipment, User agent or user device. The terminal device can also be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), and a wireless communication Functional handheld devices, computing devices, or other processing devices connected to wireless modems, in-vehicle devices, wearable devices, terminal devices in 5G networks, or terminals in the future evolution of public land mobile network (PLMN) Devices, etc., are not limited in the embodiments of the present application.
网络设备120可以是用于与终端设备通信的接入网设备,该接入网设备可以是GSM系统或CDMA系统中的基站(base transceiver station,BTS),也可以是WCDMA系统中的基站节点B(NodeB,NB),还可以是LTE系统中的演进型基站演进型节点B(evoled NodeB,eNB或eNodeB),还可以是云无线接入网络(cloud radio access network,CRAN)场景下的无线控制器。或者网络设备120可以为中继站、接入点、车载设备、可穿戴设备以及未来5G网络中的网络设备或者未来演进的PLMN网络中的网络设备等,本申请实施例并不限定。The network device 120 may be an access network device used to communicate with terminal devices. The access network device may be a base transceiver station (BTS) in a GSM system or a CDMA system, or a base station node B in a WCDMA system. (NodeB, NB), it can also be an evolved NodeB (evoled NodeB, eNB or eNodeB) in the LTE system, and it can also be a radio control in a cloud radio access network (cloud radio access network, CRAN) scenario Device. Or the network device 120 may be a relay station, an access point, a vehicle-mounted device, a wearable device, a network device in a future 5G network or a network device in a future evolved PLMN network, etc., which is not limited in the embodiment of the present application.
本申请中,终端设备110可以是发送端或者接收端,网络设备120可以是发送端或者接收端。示例性地,发送端为终端设备110,接收端为网络设备120;或者,发送端为网络设备120,接收端为终端设备110。当然本申请实施例不限于此,发送端可以是一个终端设备,接收端可以是另外一个终端设备。In this application, the terminal device 110 may be the sending end or the receiving end, and the network device 120 may be the sending end or the receiving end. Exemplarily, the sending end is the terminal device 110 and the receiving end is the network device 120; or, the sending end is the network device 120 and the receiving end is the terminal device 110. Of course, the embodiment of the present application is not limited to this, the sending end may be a terminal device, and the receiving end may be another terminal device.
此外,在本申请实施例中,编号“第一”、“第二”等仅仅为了区分不同的对象。例如,为了区分不同的数据单元,其不应对本申请实施例的保护范围构成任何限定。“多个”是指两个或两个以上。In addition, in the embodiments of the present application, the numbers "first", "second", etc. are only used to distinguish different objects. For example, in order to distinguish different data units, it should not constitute any limitation on the protection scope of the embodiments of the present application. "Multiple" means two or more.
图2示出了本申请实施例提供的一种空口协议栈的结构示意图。如图2所示,控制面和用户面的空口协议栈包括但不限于分组数据汇聚协议(packet data convergence protocol,PDCP)层、无线链路控制(radio link control,RLC)层、媒体访问控制(media access control,MAC)层和物理(physical,PHY)层。对于控制面,还包括无线资源控制(radio resource control,RRC)层。PDCP层在控制面的上层是RRC层,在用户面的上层是网络层,例如IP。PDCP层的下层是RLC层。PDCP层可以处理控制面上的RRC消息和用户面上的数据单元,例如IP包,PDCP层可以进行IP包头压缩,以减少无线接口上传输的比特数。PDCP层还可以负责控制平面的加密、传输数据的完整性保护。在接收端,PDCP协议层执行相应的解密和解压缩操作。可以为每个无线承载配置一个PDCP实体。RCL层负责分割/级联、重传控制和重复检测等,RLC层为PDCP层提供服务,可以为每个无线承载配置一个RLC实体。MAC层控制逻辑信道的复用、混合自动重传请求的重传、上行链路和下行链路的调度等。MAC层以逻辑信道的形式为RLC层提供服务。PHY层负载管理编码/解码、调制/解调、多天线的映射以及其他类型的物理层功能,PHY层以传输信道的形式为MAC层提供服务。Fig. 2 shows a schematic structural diagram of an air interface protocol stack provided by an embodiment of the present application. As shown in Figure 2, the air interface protocol stacks of the control plane and the user plane include, but are not limited to, the packet data convergence protocol (PDCP) layer, the radio link control (RLC) layer, and the media access control ( media access control, MAC) layer and physical (physical, PHY) layer. For the control plane, it also includes a radio resource control (Radio Resource Control, RRC) layer. The PDCP layer is the RRC layer above the control plane, and the network layer above the user plane, such as IP. The lower layer of the PDCP layer is the RLC layer. The PDCP layer can process RRC messages on the control plane and data units on the user plane, such as IP packets. The PDCP layer can perform IP header compression to reduce the number of bits transmitted on the wireless interface. The PDCP layer can also be responsible for encryption of the control plane and integrity protection of transmitted data. At the receiving end, the PDCP protocol layer performs corresponding decryption and decompression operations. One PDCP entity can be configured for each radio bearer. The RCL layer is responsible for segmentation/cascading, retransmission control, and repetition detection. The RLC layer provides services for the PDCP layer and can configure an RLC entity for each radio bearer. The MAC layer controls the multiplexing of logical channels, the retransmission of hybrid automatic repeat requests, and the scheduling of uplink and downlink. The MAC layer provides services for the RLC layer in the form of logical channels. The PHY layer loads management encoding/decoding, modulation/demodulation, multi-antenna mapping, and other types of physical layer functions. The PHY layer provides services for the MAC layer in the form of transmission channels.
PDCP层、RLC层和MAC层有相应的PDU和SDU。PDU是发往下层的数据单元;SDU是从上层收到的数据单元。本申请实施例针对PDCP层的传输,其他层的传输可以参照UMTS系统、LTE系统、NR系统、WiMAX系统或者其它系统的描述,为了避免赘述在此不详细描述。The PDCP layer, RLC layer and MAC layer have corresponding PDUs and SDUs. PDU is the data unit sent to the lower layer; SDU is the data unit received from the upper layer. The embodiments of the present application are directed to the transmission of the PDCP layer. For the transmission of other layers, reference may be made to the description of the UMTS system, the LTE system, the NR system, the WiMAX system, or other systems, and will not be described in detail here to avoid repetition.
可选地,可以用序列号(sequence number,SN)对数据单元排序,序列号用于表示下一个即将接收或发送的数据单元在业务流中的顺序,序列号也可以称为编号。数据单元在PDCP层时,PDCP SN封装在PDCP PDU的包头。Optionally, a sequence number (SN) may be used to sort the data units. The sequence number is used to indicate the sequence of the next data unit to be received or sent in the service flow, and the sequence number may also be called a number. When the data unit is at the PDCP layer, the PDCP SN is encapsulated in the packet header of the PDCP PDU.
在网络中,数据默认承载在空口传输,不同的互联网协议(internet protocol,IP)数据单元会按照到达顺序进入PDCP层,在PDCP层按序交付。例如,发送端在PDCP层收到来自上层的服务数据单元(service data unit,SDU)后,会关联一个SN,可以将该序列号封装在PDCP协议数据单元(protocol data unit,PDU)的包头中。当接收端在PDCP层接收到下层递交的PDCP PDU之后,读取PDCP PDU包头的序列号,按照序列号重新排序后向上层递交。发送端在PDCP层按照到达的顺序给每个数据单元关联一个SN,将该SN封装在PDU的包头,然后按照SDU到达的顺序向下层交付相应的PDU。不同类型的数据单元对时延的要求可能不同,有可能一些类型的数据单元的时延要求高(时延要求的值较小,例如0.5毫秒、10毫秒、50毫秒等),一些类型的数据单元的时延要求低(时延要求的值较大,例如100毫秒、400毫秒、1秒等)。在一种可能的场景中,针对一个PDCP实体,高时延要求的第一数据在低时延要求的第二数据之后到达PDCP层,根据上述方法,则第二数据就会被优先交付到下层,第一数据会在第二数据之后交付,这样会影响第一数据的实时性,从而有可能导致系统性能变差。In the network, data is carried on the air interface for transmission by default, and different internet protocol (IP) data units enter the PDCP layer in the order of arrival, and are delivered in order at the PDCP layer. For example, after the sender receives the service data unit (SDU) from the upper layer at the PDCP layer, it will associate an SN, and the serial number can be encapsulated in the packet header of the PDCP protocol data unit (PDU) . When the receiving end receives the PDCP PDU delivered by the lower layer at the PDCP layer, it reads the sequence number of the PDCP PDU header, reorders the sequence number and delivers it to the upper layer. The sender associates an SN to each data unit in the order of arrival at the PDCP layer, encapsulates the SN in the header of the PDU, and then delivers the corresponding PDU to the lower layer in the order of arrival of the SDU. Different types of data units may have different delay requirements. It is possible that some types of data units have high delay requirements (the value of delay requirements is small, such as 0.5 ms, 10 ms, 50 ms, etc.), and some types of data The delay requirement of the unit is low (the value of the delay requirement is relatively large, such as 100 milliseconds, 400 milliseconds, 1 second, etc.). In a possible scenario, for a PDCP entity, the first data with high latency requirements arrives at the PDCP layer after the second data with low latency requirements. According to the above method, the second data will be delivered to the lower layer first. , The first data will be delivered after the second data, which will affect the real-time performance of the first data, which may result in poor system performance.
在无线视频监控系统中,视频类型按照功能可以分为实时数据和存储数据两类。实时数据是指具有实时性需求的视频数据,比如手机、个人电脑和大屏实时播放。存储数据没有实时性需求(或,时延要求较低),用于存档的视频数据。因为取证的需求,存储数据对可靠性的要求更高。在很多视频监控系统中,摄像机会同时上传实时数据和存储数据,分别用于投屏和存档。针对一个PDCP实体,有可能实时数据是在存储数据之后到达的PDCP层,这样存储数据就会被优先交付到下层,实时数据会在存储数据之后交付,这样会影响实时数据的实时性,不能满足实时数据的时延要求,从而有可能会导致系统性能变差。进一步地,若信道遇到干扰或者波动时,会使实时数据无法满足实时性的要求,从而会影响系统性能。In wireless video surveillance systems, video types can be divided into real-time data and stored data according to their functions. Real-time data refers to video data with real-time requirements, such as real-time playback on mobile phones, personal computers and large screens. The stored data has no real-time requirements (or, with lower latency requirements), and is used for archived video data. Because of the need for forensics, storage data has higher requirements for reliability. In many video surveillance systems, the cameras upload real-time data and store data at the same time for screen projection and archiving. For a PDCP entity, it is possible that the real-time data arrives at the PDCP layer after storing the data, so that the stored data will be delivered to the lower layer first, and the real-time data will be delivered after the stored data. This will affect the real-time performance of the real-time data and cannot meet the requirements. The delay requirement of real-time data may result in poor system performance. Furthermore, if the channel encounters interference or fluctuations, the real-time data will not meet the real-time requirements, which will affect the system performance.
因此,在本申请实施例中,针对一个PDCP实体,可以为两种不同类型的数据确定不同的序列号集合,并且优先发送实时性要求高的数据,在一定程度上能够满足实时性的要求。当针对本申请实施例提供的方法涉及多个PDCP实体时,可以针对每个PDCP实体分别应用本申请实施例提供的方法。Therefore, in this embodiment of the present application, for one PDCP entity, different sequence number sets can be determined for two different types of data, and data with high real-time requirements can be sent preferentially, which can meet the real-time requirements to a certain extent. When the method provided for the embodiment of the present application involves multiple PDCP entities, the method provided by the embodiment of the present application may be applied to each PDCP entity.
下面结合附图具体描述本申请实施例中的传输数据的方法。The method for transmitting data in the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
图3示出了本申请实施例提供的传输数据的方法200,该方法200可以应用于图1所示的通信系统100,方法200可以由发送端执行。FIG. 3 shows a data transmission method 200 provided by an embodiment of the present application. The method 200 may be applied to the communication system 100 shown in FIG. 1, and the method 200 may be executed by the sending end.
S210,根据第一SDU的数据类型,确定目标序列号集合,目标序列号集合为第一序列号集合或第二序列号集合,根据第一序列号集合中的序列号得到的PDU的发送优先级高于根据第二序列号集合中的序列号得到的PDU的发送优先级。S210: Determine a target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence number set or the second sequence number set, and the transmission priority of the PDU is obtained according to the sequence numbers in the first sequence number set It is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set.
可选地,方法200包括:若第一SDU为第一类型数据,目标序列集合是第一序列号集合;若第一SDU为第二类型数据,目标序列集合是第二序列号集合。Optionally, the method 200 includes: if the first SDU is the first type of data, the target sequence set is the first sequence number set; if the first SDU is the second type of data, the target sequence set is the second sequence number set.
S220,在目标序列号集合中确定第一SDU的第一序列号。S220: Determine the first sequence number of the first SDU in the target sequence number set.
S230,发送第一协议数据单元PDU,第一PDU是根据第一序列号对第一SDU进行封装得到的PDU。S230: Send a first protocol data unit PDU, where the first PDU is a PDU obtained by encapsulating the first SDU according to the first sequence number.
可选地,方法200还包括:根据第二SDU的类型,确定目标序列号集合,在目标序列号集合中确定第二SDU的第二序列号,发送第二PDU,第二PDU是根据第二序列号 对第二SDU进行封装得到的PDU。Optionally, the method 200 further includes: determining a target sequence number set according to the type of the second SDU, determining the second sequence number of the second SDU in the target sequence number set, and sending the second PDU, the second PDU being based on the second PDU obtained by encapsulating the second SDU with the sequence number.
若同时存在第一PDU和第二PDU,则第一PDU和第二PDU的发送顺序分以下几种情况讨论:If the first PDU and the second PDU exist at the same time, the sending order of the first PDU and the second PDU is discussed in the following situations:
如果第一PDU的数据类型是第一数据类型,第二PDU的数据类型是第二数据类型,则先发送第一PDU,再发送第二PDU;或者同时发送第一PDU和第二PDU。If the data type of the first PDU is the first data type and the data type of the second PDU is the second data type, the first PDU is sent first, and then the second PDU; or the first PDU and the second PDU are sent at the same time.
如果第二PDU的数据类型是第一数据类型,第一PDU的数据类型是第二数据类型,则先发送第二PDU,再发送第一PDU;或者同时发送第一PDU和第二PDU。If the data type of the second PDU is the first data type and the data type of the first PDU is the second data type, the second PDU is sent first, and then the first PDU; or the first PDU and the second PDU are sent at the same time.
如果第二PDU的数据类型和第一PDU的数据类型相同,则根据第一SDU的和第二SDU到达的先后顺序发送第一PDU和第二PDU;或者同时发送第一PDU和第二PDU。示例性地,如果第一SDU先到达PDCP层,第二SDU在第一SDU之后到达PDCP层,则先发送第一PDU再发送第二PDU;如果第二SDU先到达PDCP层,第一SDU在第二SDU之后到达PDCP层,则先发送第二PDU再发送第一PDU。If the data type of the second PDU is the same as the data type of the first PDU, the first PDU and the second PDU are sent according to the arrival sequence of the first SDU and the second SDU; or the first PDU and the second PDU are sent at the same time. Exemplarily, if the first SDU reaches the PDCP layer first, and the second SDU reaches the PDCP layer after the first SDU, the first PDU is sent first and then the second PDU; if the second SDU reaches the PDCP layer first, the first SDU is After the second SDU reaches the PDCP layer, the second PDU is sent first and then the first PDU is sent.
若发送端同时存在第一PDU和第二PDU,如图4所示,接收端执行方法300:If there are both the first PDU and the second PDU at the transmitting end, as shown in FIG. 4, the receiving end executes method 300:
S310,从发送端接收第一PDU和第二PDU。S310: Receive the first PDU and the second PDU from the sending end.
S320,根据第一PDU的第一序列号所属的序列号集合和第二PDU的第二序列号所属的序列号集合,向高层传递第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。S320: According to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs, transfer the first service data unit SDU corresponding to the first PDU and the second PDU corresponding to the higher layer. The second SDU.
具体地,S320可以分三种情况讨论:Specifically, S320 can be discussed in three situations:
情况一:若第一序列号所属的序列号集合和第二序列号所属的序列号集合相同,根据第一序列号和第二序列号,向高层传递第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。例如,可以根据第一序列号确定第一计数值,根据第二序列号确定第二计数值,按照第一计数值和第二计数值的大小关系向高层传递第一PDU对应的第一SDU和第二PDU对应的第二SDU,若第一计数值小于第二计数值,则向高层先传递第一SDU,再传递第二SDU,或者同时传递第一SDU和第二SDU;若第一计数值大于第二计数值,则向高层先传递第二SDU,再传递第一SDU,或者同时传递第一SDU和第二SDU。Case 1: If the sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs, the first service data unit SDU corresponding to the first PDU is delivered to the higher layer according to the first sequence number and the second sequence number The second SDU corresponding to the second PDU. For example, the first count value may be determined according to the first sequence number, the second count value may be determined according to the second sequence number, and the first SDU and the first SDU corresponding to the first PDU and For the second SDU corresponding to the second PDU, if the first count value is less than the second count value, the first SDU is first delivered to the higher layer, then the second SDU, or the first SDU and the second SDU are delivered at the same time; if the first count If the value is greater than the second count value, the second SDU is delivered to the higher layer first, and then the first SDU, or the first SDU and the second SDU are delivered at the same time.
情况二,若第一序列号属于第一序列号集合,第二序列号属于第二序列号集合,接收端在PDCP层向上层同时传递第一SDU和第二SDU;或者相对第二PDU对应的第二SDU,优先将第一PDU对应的第一服务数据单元SDU递交至高层。Case 2: If the first sequence number belongs to the first sequence number set and the second sequence number belongs to the second sequence number set, the receiving end transmits the first SDU and the second SDU to the upper layer at the PDCP layer at the same time; or corresponding to the second PDU The second SDU first delivers the first service data unit SDU corresponding to the first PDU to the higher layer.
情况三,若第一序列号属于第二序列号集合,第二序列号属于第一序列号集合,接收端在PDCP层向上层同时传递第一SDU和第二SDU;或者相对第一PDU对应的第一SDU,优先将第二PDU对应的第二SDU递交至高层。Case 3: If the first sequence number belongs to the second sequence number set and the second sequence number belongs to the first sequence number set, the receiving end transmits the first SDU and the second SDU to the upper layer at the PDCP layer at the same time; or corresponding to the first PDU For the first SDU, the second SDU corresponding to the second PDU is first delivered to the higher layer.
因此,本申请实施例提供的传输数据的方法,在发送端可以根据第一SDU的数据类型,确定第一序列号集合或第二序列号集合为目标序列号集合,并且根据两个序列号集合中的序列号得到的PDU存在优先级顺序,这样可以保证优先发送根据第一序列号集合中的序列号得到的PDU,有助于降低时延。在接收端根据两个PDU的序列号所属的序列号集合确定向高层递交两个PDU对应的SDU的顺序,可以优先向高层传递优先级高的PDU,从而在一定程度上能满足实时性要求。Therefore, in the method for transmitting data provided by the embodiments of the present application, the sending end can determine the first sequence number set or the second sequence number set as the target sequence number set according to the data type of the first SDU, and according to the two sequence number sets The PDU obtained by the sequence number in the sequence number has a priority order, which can ensure that the PDU obtained according to the sequence number in the first sequence number set is sent first, which helps to reduce the delay. The receiving end determines the order of delivering the SDUs corresponding to the two PDUs to the upper layer according to the sequence number set to which the sequence numbers of the two PDUs belong, and can give priority to the higher priority PDUs to meet the real-time requirements to a certain extent.
需要说明的是,本申请实施例仅以第一类型数据和第二类型数据为例描述。可选地, 第一类型数据可以是实时数据,第二类型数据可以是存储数据,这样,可以在第一序列号集合中确定实时数据的序列号,在第二序列号集合中确定存储数据的序列号,并优先发送实时数据,从而有利于满足实时数据的实时性要求。但本申请实施例不限于此。第一类型数据可以是有时延要求的数据,第二类型数据可以是没有时延要求的数据。可选地,第一类型数据可以是时延要求高的数据,第二类型数据可以是时延要求相对低的数据,例如,第一类型数据的时延要求为第一时延要求,第二类型数据的时延要求为第二时延要求,第一时延要求高于第二时延要求。It should be noted that the embodiments of the present application only take the first type of data and the second type of data as examples for description. Optionally, the first type of data can be real-time data, and the second type of data can be stored data. In this way, the serial number of the real-time data can be determined in the first serial number set, and the storage data can be determined in the second serial number set. Serial number, and priority to send real-time data, so as to help meet the real-time requirements of real-time data. However, the embodiments of the present application are not limited to this. The first type of data may be data with a delay requirement, and the second type of data may be data without a delay requirement. Optionally, the first type of data may be data with high latency requirements, and the second type of data may be data with relatively low latency requirements. For example, the latency requirement of the first type data is the first latency requirement, and the second type data The delay requirement for type data is the second delay requirement, and the first delay requirement is higher than the second delay requirement.
上面简述了本申请实施例的传输数据的方法,下面结合不同层之间的交互描述本申请实施例的传输数据的方法。The above briefly describes the data transmission method of the embodiment of the present application, and the following describes the data transmission method of the embodiment of the present application in combination with the interaction between different layers.
发送端在第一层接收第二层发送的第一SDU,发送端在第一层根据SDU的数据类型确定目标序列号集合,在目标序列号集合中确定第一SDU的第一序列号,并将利用第一序列号封装第一SDU得到的第一PDU向接收端发送。The sending end receives the first SDU sent by the second layer at the first layer, the sending end determines the target sequence number set in the first layer according to the data type of the SDU, and determines the first sequence number of the first SDU in the target sequence number set, and The first PDU obtained by encapsulating the first SDU with the first sequence number is sent to the receiving end.
需要说明的是,第二层为第一层的上层,第二层也可以称为高层,例如,第一层为PDCP层,第二层为网络层;又例如,第一层为PDCP层,第二层为RRC层,当然第一层和第二层也可以是未来网络系统中的层,本申请实施例对此并不做限定。It should be noted that the second layer is the upper layer of the first layer, and the second layer can also be referred to as the upper layer. For example, the first layer is the PDCP layer, and the second layer is the network layer; for another example, the first layer is the PDCP layer, The second layer is the RRC layer. Of course, the first layer and the second layer may also be layers in a future network system, which is not limited in the embodiment of the present application.
也需要说明的是,本申请实施例中的PDU和SDU只是一个数据的名称,不应该由于PDU和SDU对本申请实施例造成任何限制。例如,SDU可以为来自第二层的数据,PDU可以为在第一层将第二层的数据封装之后得到的数据。第一层和第二层不同,则SDU和PDU表示不同的意义。本申请实施例为了方便描述仅以第二层为网络层,第一层为PDCP层为例进行描述。It should also be noted that the PDU and SDU in the embodiment of the present application are just names of data, and should not cause any limitation to the embodiment of the present application due to the PDU and SDU. For example, the SDU may be data from the second layer, and the PDU may be data obtained after the first layer encapsulates the second layer data. The first layer is different from the second layer, so SDU and PDU have different meanings. For the convenience of description, the embodiments of this application only take the second layer as the network layer and the first layer as the PDCP layer as an example for description.
下面结合图5描述本申请实施例中传输数据的方法400,方法400中以第二层为网络层,第一层为PDCP层,第一类型数据为实时数据,第二类型数据为存储数据为例进行描述。方法400由发送端和接收端执行。发送端可以是前述的终端设备110,接收端可以是前述的网络设备120,或者,发送端可以是前述的网络设备120,接收端可以是前述的终端设备110。方法400包括:The method 400 for transmitting data in the embodiment of the present application is described below with reference to FIG. 5. In the method 400, the second layer is the network layer, the first layer is the PDCP layer, the first type of data is real-time data, and the second type of data is stored data. Examples are described. The method 400 is executed by the sending end and the receiving end. The sending end may be the aforementioned terminal device 110, and the receiving end may be the aforementioned network device 120, or the sending end may be the aforementioned network device 120, and the receiving end may be the aforementioned terminal device 110. Method 400 includes:
S401,发送端在PDCP层接收网络层传递的第一SDU。S401: The transmitting end receives the first SDU delivered by the network layer at the PDCP layer.
S402,发送端确定第一SDU是否为实时数据,若为实时数据执行S403,若为存储数据,则执行S404。只执行S403和S404其中的一个步骤。S402: The sending end determines whether the first SDU is real-time data, if it is real-time data, execute S403, and if it is stored data, execute S404. Only perform one of S403 and S404.
可选地,发送端根据所述第一SDU的传输层协议类型确定所述第一SDU的数据类型。Optionally, the sending end determines the data type of the first SDU according to the transport layer protocol type of the first SDU.
具体地,发送端确定第一SDU为实时数据还是存储数据的方式如下:Specifically, the sending end determines whether the first SDU is real-time data or stored data in the following manner:
第一,发送端判断第一SDU的传输层的协议类型,根据传输层的协议类型确定第一SDU是否为实时数据。由于通常情况下,数据一般采用的A+B的协议传输,表示在应用层采用A协议进行传输,在传输层采用B协议进行传输。更具体地,在视频监控系统中,用户面的实时数据采用实时传输协议(real-time transport protocol,RTP)+用户数据报文协议(user datagram protocol,UDP)传输,表示用户面的实时数据的传输层采用的是UDP协议,应用层采用了RTP协议;控制面的实时数据采用实时流传输协议(real time streaming protocol,RTSP)+传输控制协议(transmission control protocol,TCP)传输,表示控制面的实时数据的传输层采用的是TCP,应用层采用了RTSP;存储流(包括控制面的存储流和用户面存储流)采用超文本传输协议(hypertext transfer protocol,HTTP)/文件传输协 议(file transfer protocol,FTP)+TCP传输。因此,可以判断第一SDU的传输层的协议类型是否为UDP,若第一SDU的传输层的协议类型为UDP,则根据上述描述用户面的实时数据采用的RTP+UDP传输,则可以确定第一SDU为实时数据。即,若第一SDU的传输层协议类型为UDP协议,则该第一SDU为第一类型数据。First, the sending end determines the protocol type of the transport layer of the first SDU, and determines whether the first SDU is real-time data according to the protocol type of the transport layer. Because under normal circumstances, data is generally transmitted using the A+B protocol, it means that the A protocol is used for transmission at the application layer, and the B protocol is used for transmission at the transport layer. More specifically, in the video surveillance system, real-time transport protocol (RTP) + user datagram protocol (UDP) is used to transmit real-time data on the user plane, which represents the real-time data on the user plane. The transmission layer adopts the UDP protocol, and the application layer adopts the RTP protocol; the real-time data of the control plane adopts the real-time streaming protocol (RTSP) + transmission control protocol (transmission control protocol, TCP) transmission, which means the control plane The transport layer of real-time data uses TCP, and the application layer uses RTSP; storage streams (including control-plane storage streams and user-plane storage streams) use hypertext transfer protocol (HTTP)/file transfer protocol (file transfer) protocol, FTP)+TCP transmission. Therefore, it can be judged whether the protocol type of the transport layer of the first SDU is UDP. If the protocol type of the transport layer of the first SDU is UDP, then according to the RTP+UDP transmission used for the real-time data of the user plane described above, the first SDU can be determined. One SDU is real-time data. That is, if the transport layer protocol type of the first SDU is the UDP protocol, the first SDU is the first type of data.
第二,若第一SDU的传输的协议类型不是UDP协议,例如,传输层的协议为TCP协议,则可能无法确定该第一SDU是存储数据还是控制面的实时数据。由于传输层的目的端口号与应用层的协议存在对应关系,因此,可以根据第一SDU的传输层的目的端口号确定第一SDU是否为实时数据。例如,若第一SDU的传输层的目的端口号为第一数值(例如554),表示应用层采用了RTSP协议,则发送端可以确定第一SDU为实时数据,若传输层的目的端口号不是第一数值时或者传输层的目的端口号是第二数值时,例如端口号为80、8080或3128等时则表示应用层采用了HTTP,或者端口号是20、21、22或23等时则表示应用层采用了FTP协议,应用层采用了HTTP协议或者FTP协议,则可以确定第一SDU为存储数据。Second, if the protocol type of the transmission of the first SDU is not the UDP protocol, for example, the protocol of the transport layer is the TCP protocol, it may not be possible to determine whether the first SDU is storing data or real-time data of the control plane. Since there is a correspondence between the destination port number of the transport layer and the protocol of the application layer, it is possible to determine whether the first SDU is real-time data according to the destination port number of the transport layer of the first SDU. For example, if the destination port number of the transport layer of the first SDU is the first value (for example, 554), indicating that the application layer uses the RTSP protocol, the sender can determine that the first SDU is real-time data. If the destination port number of the transport layer is not When the first value or the destination port number of the transport layer is the second value, for example, when the port number is 80, 8080, or 3128, it means that the application layer uses HTTP, or when the port number is 20, 21, 22, or 23, etc. It means that the application layer adopts the FTP protocol, and the application layer adopts the HTTP protocol or the FTP protocol, then the first SDU can be determined to be the storage data.
S403,若第一SDU为实时数据,发送端在第一序列号集合中确定第一SDU关联的第一序列号。S403: If the first SDU is real-time data, the sending end determines the first sequence number associated with the first SDU in the first sequence number set.
S404,若第一SDU为存储数据,发送端在第二序列号集合中确定第一SDU关联的第一序列号。S404: If the first SDU is stored data, the sending end determines the first sequence number associated with the first SDU in the second sequence number set.
其中,根据第一序列号集合中的序列号得到的PDU的发送优先级高于根据第二序列号集合中的序列号得到的PDU的发送优先级。Wherein, the transmission priority of the PDU obtained according to the sequence number in the first sequence number set is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set.
S405,发送端根据第一序列号对第一SDU进行封装生成第一PDU。S405: The sending end encapsulates the first SDU according to the first sequence number to generate a first PDU.
S406,发送端向接收端发送第一PDU,接收端接收第一PDU。S406: The sending end sends the first PDU to the receiving end, and the receiving end receives the first PDU.
需要说明的是,在S406中还可以包括发送端和接收端的RLC层、MAC层和PHY层的执行过程,由于本申请实施例不涉及RLC层、MAC层和PHY层,所以这些执行过程在此不详细描述。It should be noted that S406 may also include the execution process of the RLC layer, MAC layer, and PHY layer of the sender and receiver. Since the embodiment of this application does not involve the RLC layer, MAC layer, and PHY layer, these execution processes are here. Do not describe in detail.
方法400还包括:发送端在PDCP层接收网络层发送的第二SDU,并对第二SDU执行一次401-S405,得到第二PDU,并执行S407,将第二SDU对应的第二PDU向接收端发送,接收端接收第二PDU。The method 400 further includes: the transmitting end receives the second SDU sent by the network layer at the PDCP layer, and performs 401-S405 on the second SDU once to obtain the second PDU, and performs S407 to send the second PDU corresponding to the second SDU to the receiver The end sends, the receiving end receives the second PDU.
需要说明的是,在发送端的PDCP层,第一SDU可以先到达PDCP层,第二SDU在第一SDU之后到达PDCP层;或者第二SDU可以先到达PDCP层,第一SDU在第二SDU之后到达PDCP层;或者第一SDU和第二SDU同时到达PDCP层。It should be noted that at the PDCP layer of the transmitting end, the first SDU can reach the PDCP layer first, and the second SDU can reach the PDCP layer after the first SDU; or the second SDU can reach the PDCP layer first, and the first SDU is after the second SDU. Reach the PDCP layer; or the first SDU and the second SDU reach the PDCP layer at the same time.
需要说明的是,在接收端的PDCP层,第一PDU可以先到达PDCP层,第二PDU在第一PDU之后到达PDCP层;或者第二PDU可以先到达PDCP层,第一PDU在第二PDU之后到达PDCP层;或者第一PDU和第二PDU同时到达PDCP层。It should be noted that at the PDCP layer of the receiving end, the first PDU can reach the PDCP layer first, and the second PDU can reach the PDCP layer after the first PDU; or the second PDU can reach the PDCP layer first, and the first PDU is after the second PDU. Reach the PDCP layer; or the first PDU and the second PDU reach the PDCP layer at the same time.
S408,接收端解封装第一PDU得到第一SDU,解封装第二PDU得到第二SDU。S408: The receiving end decapsulates the first PDU to obtain a first SDU, and decapsulates the second PDU to obtain a second SDU.
S409,接收端确定第一PDU关联的第一序列号,以及,第二PDU关联的第二序列号。S409: The receiving end determines the first sequence number associated with the first PDU and the second sequence number associated with the second PDU.
S410,接收端确定第一序列号和第二序列号属于是否为相同的序列号集合,或者确定第一序列号和第二序列号所属的序列号集合。S410: The receiving end determines whether the first sequence number and the second sequence number belong to the same sequence number set, or determines the sequence number set to which the first sequence number and the second sequence number belong.
可选地,第一序列号和第二序列号都属于第一序列号集合;或者第一序列号和第二序列号都属于第二序列号集合;或者第一序列号属于第一序列号集合,第二序列号属于第二 序列号集合,或者第一序列号属于第二序列号集合,第二序列号属于第一序列号集合。Optionally, both the first serial number and the second serial number belong to the first serial number set; or both the first serial number and the second serial number belong to the second serial number set; or the first serial number belongs to the first serial number set , The second serial number belongs to the second serial number set, or the first serial number belongs to the second serial number set, and the second serial number belongs to the first serial number set.
可选地,方法400包括:对于一个PDU,该PDU的包头包括指示信息,该指示信息用于指示该PDU的序列号所属的序列号集合。例如,第一PDU的包头包括第一指示信息,第一指示信息用于指示第一序列号所属的序列号集合;第二PDU的包头包括第二指示信息,第二指示信息用于指示第二序列号的序列号集合。方法400还包括:Optionally, the method 400 includes: for a PDU, the header of the PDU includes indication information, and the indication information is used to indicate the sequence number set to which the sequence number of the PDU belongs. For example, the header of the first PDU includes first indication information, the first indication information is used to indicate the sequence number set to which the first sequence number belongs; the header of the second PDU includes second indication information, and the second indication information is used to indicate the second The serial number collection of serial numbers. The method 400 also includes:
接收端根据第一指示信息和第二指示信息确定第一序列号和第二序列号是否属于相同的序列号集合,或者确定第一序列号所属的序列号集合和第二序列号所属的序列号集合。The receiving end determines whether the first sequence number and the second sequence number belong to the same sequence number set according to the first indication information and the second indication information, or determines the sequence number set to which the first sequence number belongs and the sequence number to which the second sequence number belongs set.
进一步地,若第一指示信息指示第一序列号属于第一序列号集合,第二指示信息指示第二序列号属于第一序列号集合,则发送端在PDCP层可以确定第一序列号和第二序列号属于第一序列号集合;若第一指示信息指示第一序列号属于第二序列号集合,第二指示信息指示第二序列号属于第二序列号集合,则发送端在PDCP层可以确定第一序列号和第二序列号属于第二序列号集合;若第一指示信息指示第一序列号属于第一序列号集合,第二指示信息指示第二序列号属于第二序列号集合,则发送端在PDCP层可以确定第一序列号和第二序列号不属于同一个序列号集合。若第一指示信息指示第一序列号属于第二序列号集合,第二指示信息指示第二序列号属于第一序列号集合,则发送端在PDCP层可以确定第一序列号和第二序列号不属于同一个序列号集合。Further, if the first indication information indicates that the first sequence number belongs to the first sequence number set, and the second indication information indicates that the second sequence number belongs to the first sequence number set, the transmitting end can determine the first sequence number and the first sequence number at the PDCP layer. The second sequence number belongs to the first sequence number set; if the first indication information indicates that the first sequence number belongs to the second sequence number set, and the second indication information indicates that the second sequence number belongs to the second sequence number set, the transmitting end can be in the PDCP layer It is determined that the first serial number and the second serial number belong to the second serial number set; if the first indication information indicates that the first serial number belongs to the first serial number set, the second indication information indicates that the second serial number belongs to the second serial number set, Then the transmitting end can determine at the PDCP layer that the first sequence number and the second sequence number do not belong to the same sequence number set. If the first indication information indicates that the first sequence number belongs to the second sequence number set, and the second indication information indicates that the second sequence number belongs to the first sequence number set, the sender can determine the first sequence number and the second sequence number at the PDCP layer Does not belong to the same serial number set.
可选地,方法400包括:对于一个PDU,该PDU的包头包括指示信息,该指示信息用于指示该PDU的数据类型。例如,第一指示信息用于指示第一PDU的数据类型,第二指示信息用于指示第二PDU的数据类型。不同数据类型的PDU需要在各自的序列号集合中确定序列号,若第一指示信息指示的第一PDU的数据类型为第一数据类型,则接收端可以确定第一PDU的第一序列号属于第一序列号集合,若第二指示信息指示第二PDU的数据类型为第二数据类型,则接收端可以确定第二PDU的第二序列号属于第二序列号集合。若第一指示信息指示的第一PDU的数据类型为第一数据类型,第二指示信息指示第二PDU的数据类型为第一数据类型,则接收端可以确定第一PDU的第一序列号和第二PDU的第二序列号都属于第一序列号集合;若第一指示信息指示的第一PDU的数据类型为第二数据类型,第二指示信息指示第二PDU的数据类型为第二数据类型,则接收端可以确定第一PDU的第一序列号和第二PDU的第二序列号都属于第二序列号集合。若第一指示信息指示的第一PDU的数据类型为第二数据类型,则接收端可以确定第一PDU的第一序列号属于第二序列号集合,若第二指示信息指示第二PDU的数据类型为第一数据类型,则接收端可以确定第二PDU的第二序列号都属于第一序列号集合。Optionally, the method 400 includes: for a PDU, the header of the PDU includes indication information, and the indication information is used to indicate the data type of the PDU. For example, the first indication information is used to indicate the data type of the first PDU, and the second indication information is used to indicate the data type of the second PDU. PDUs of different data types need to determine the sequence numbers in their respective sequence number sets. If the data type of the first PDU indicated by the first indication information is the first data type, the receiving end can determine that the first sequence number of the first PDU belongs to The first sequence number set, if the second indication information indicates that the data type of the second PDU is the second data type, the receiving end may determine that the second sequence number of the second PDU belongs to the second sequence number set. If the data type of the first PDU indicated by the first indication information is the first data type, and the second indication information indicates that the data type of the second PDU is the first data type, the receiving end can determine the first sequence number and the first sequence number of the first PDU. The second sequence numbers of the second PDU all belong to the first sequence number set; if the data type of the first PDU indicated by the first indication information is the second data type, the second indication information indicates that the data type of the second PDU is the second data Type, the receiving end can determine that both the first sequence number of the first PDU and the second sequence number of the second PDU belong to the second sequence number set. If the data type of the first PDU indicated by the first indication information is the second data type, the receiving end can determine that the first sequence number of the first PDU belongs to the second sequence number set, and if the second indication information indicates the data of the second PDU If the type is the first data type, the receiving end can determine that the second sequence numbers of the second PDU all belong to the first sequence number set.
需要说明的是,上述的第一指示信息和第二指示信息是为了指示PDU的序列号所属的序列号集合,可以直接指示序列号所属的序列号集合也可以间接指示序列号集合,至于第一指示信息和第二指示信息的名称本申请实施例不作任何的限制。It should be noted that the above-mentioned first indication information and second indication information are used to indicate the sequence number set to which the sequence number of the PDU belongs. It can directly indicate the sequence number set to which the sequence number belongs or indirectly indicate the sequence number set. As for the first The names of the instruction information and the second instruction information are not limited in the embodiment of this application.
S411,接收端在PDCP层根据S410中的结果向高层传递第一SDU和第二SDU。S411: The receiving end transmits the first SDU and the second SDU to the upper layer according to the result in S410 at the PDCP layer.
S411可以分两种情况讨论:S411 can be discussed in two situations:
情况一:在S410中,若确定的第一序列号和第二序列号属于同一个序列号集合,则根据第一序列号和第二序列号向上层传递第一SDU和第二SDU。Case 1: In S410, if the determined first sequence number and the second sequence number belong to the same sequence number set, the first SDU and the second SDU are transferred to the upper layer according to the first sequence number and the second sequence number.
例如,接收端可以为第一类型数据和第二类型数据设置独立的计数值。接收端在PDCP 层可以根据第一序列号确定第一SDU关联的第一计数(COUNT)值,根据第二序列号确定第二SDU关联的第二计数值,根据第一计数值和第二计数值的大小关系向上层传递第一SDU和第二SDU;具体地,若第一计数值大于第二计数值,则向上层先传递第二SDU,再传递第一SDU,或者同时向上层传递第一SDU和第二SDU;若第二计数值大于第一计数值,则向上层先传递第一SDU,再传递第二SDU,或者同时向上层传递第一SDU和第二SDU。For example, the receiving end may set independent count values for the first type of data and the second type of data. In the PDCP layer, the receiving end can determine the first count (COUNT) value associated with the first SDU according to the first sequence number, determine the second count value associated with the second SDU according to the second sequence number, and according to the first count value and the second count The value relationship transfers the first SDU and the second SDU to the upper layer; specifically, if the first count value is greater than the second count value, the second SDU is first transferred to the upper layer, and then the first SDU is transferred, or the second SDU is transferred to the upper layer at the same time. An SDU and a second SDU; if the second count value is greater than the first count value, the first SDU is first delivered to the upper layer, and then the second SDU is delivered, or the first SDU and the second SDU are delivered to the upper layer at the same time.
下面以举例的方式描述如何根据序列号确定计数值。如图6所示,COUNT值(计数值)的总长度为H比特,H为正整数,H比特由高位的超帧号(hyper frame number,HFN)和低位的PDCP SN组成,其中,发送端发送的PDU中包括低位的PDCP SN,高位的HFN由接收端维护。PDCP SN的长度由上层配置为pdcp-SN-Size位,HFN的长度为H-pdcp-SN-Size位。例如,H为32,pdcp-SN-Size为12或18,则HFN的长度为20比特或者14比特。The following uses an example to describe how to determine the count value based on the serial number. As shown in Figure 6, the total length of the COUNT value (count value) is H bits, and H is a positive integer. The H bits are composed of the high-order hyperframe number (HFN) and the low-order PDCP SN. Among them, the sender The transmitted PDU includes the low-order PDCP SN, and the high-order HFN is maintained by the receiving end. The length of PDCP SN is configured by the upper layer as pdcp-SN-Size bits, and the length of HFN is H-pdcp-SN-Size bits. For example, if H is 32 and pdcp-SN-Size is 12 or 18, the length of HFN is 20 bits or 14 bits.
假设第一序列号集合或第二序列号集合的形式为[A,B-1],A为序列号集合的最小元素,B-1为序列号集合的最大元素,A为大于或等于0的整数,B为大于0的整数。Window_Size表示PDCP层重排序窗口的大小,Window_Size为正整数;RX_DELIV表示重排序窗口中第一个丢失的PDU的COUNT。令a=SN(RX_DELIV),b=SN(RX_DELIV)+window_size-1。SN(RX_DELIV)表示RX_DELIV对应的SN,即RX_DELIV的后pdcp-SN-Size位的值为SN,HFN(RX_DELIV)表示RX_DELIV对应的HFN,即RX_DELIV的前H-pdcp-SN-Size位的值为HFN,RCVD_SN表示接收端在PDCP层接收到PDU时,PDU中的SN。则COUNT值的计算方式如下:Suppose the form of the first serial number set or the second serial number set is [A, B-1], A is the smallest element of the serial number set, B-1 is the largest element of the serial number set, and A is greater than or equal to 0 Integer, B is an integer greater than 0. Window_Size represents the size of the PDCP layer reordering window, Window_Size is a positive integer; RX_DELIV represents the COUNT of the first lost PDU in the reordering window. Let a=SN(RX_DELIV), b=SN(RX_DELIV)+window_size-1. SN (RX_DELIV) represents the SN corresponding to RX_DELIV, that is, the value of the last pdcp-SN-Size bit of RX_DELIV is SN, and HFN (RX_DELIV) represents the HFN corresponding to RX_DELIV, that is, the value of the first H-pdcp-SN-Size bit of RX_DELIV HFN, RCVD_SN represents the SN in the PDU when the receiver receives the PDU at the PDCP layer. The COUNT value is calculated as follows:
如果b>B-1,且RCVD_SN<b-(B-1)+A,If b>B-1, and RCVD_SN<b-(B-1)+A,
则RCVD_HFN=HFN(RX_DELIV)+1.Then RCVD_HFN=HFN(RX_DELIV)+1.
否则如果RCVD_SN>=SN(RX_DELIV)+window_size,Otherwise if RCVD_SN>=SN(RX_DELIV)+window_size,
则RCVD_HFN=HFN(RX_DELIV)–1.Then RCVD_HFN=HFN(RX_DELIV)-1.
否则otherwise
RCVD_HFN=HFN(RX_DELIV).RCVD_HFN=HFN(RX_DELIV).
因此,可以确定接收端收到的PDU的计数值:RCVD_COUNT=[RCVD_HFN,RCVD_SN]。即接收端可以针对第一PDU和第二PDU分别计算其对应的计数值RCVD_COUNT。Therefore, the count value of the PDU received by the receiving end can be determined: RCVD_COUNT=[RCVD_HFN, RCVD_SN]. That is, the receiving end can calculate the corresponding count value RCVD_COUNT for the first PDU and the second PDU respectively.
情况二:在S410中,若确定第一序列号和第二序列号属于不同的序列号集合。若第一序列号属于第一序列号集合,第二序列号属于第二序列号集合,此时第一SDU和第二SDU有两种传递方式。第一种方式,接收端在PDCP层向上层同时传递第一SDU和第二SDU。第二种方式,第一序列号集合中的序列号对应的SDU的发送优先级高于第二序列号集合中序列号对应的SDU的发送优先级,接收端在PDCP层向高层先传递第一SDU再传递第二SDU。若第一序列号属于第二序列号集合,第二序列号属于第一序列号集合,此时第一SDU和第二SDU有两种传递方式。第一种方式,接收端在PDCP层向上层同时传递第一SDU和第二SDU。第二种方式,第一序列号集合中的序列号对应的SDU的发送优先级高于第二序列号集合中序列号对应的SDU的发送优先级,接收端在PDCP层向高层先传递第二SDU再传递第一SDU。为了简化描述,以下以第一序列号属于第一序列 号集合,第二序列号属于第二序列号集合为例进行描述。Case 2: In S410, if it is determined that the first serial number and the second serial number belong to different serial number sets. If the first sequence number belongs to the first sequence number set and the second sequence number belongs to the second sequence number set, at this time, the first SDU and the second SDU have two transmission modes. In the first way, the receiving end simultaneously transmits the first SDU and the second SDU to the upper layer at the PDCP layer. In the second method, the sending priority of the SDU corresponding to the sequence number in the first sequence number set is higher than the sending priority of the SDU corresponding to the sequence number in the second sequence number set, and the receiving end transmits the first priority to the higher layer at the PDCP layer. The SDU transmits the second SDU. If the first sequence number belongs to the second sequence number set and the second sequence number belongs to the first sequence number set, at this time, the first SDU and the second SDU have two transmission modes. In the first way, the receiving end simultaneously transmits the first SDU and the second SDU to the upper layer at the PDCP layer. In the second method, the sending priority of the SDU corresponding to the sequence number in the first sequence number set is higher than the sending priority of the SDU corresponding to the sequence number in the second sequence number set, and the receiving end transmits the second priority to the higher layer at the PDCP layer. The SDU then delivers the first SDU. In order to simplify the description, the following describes an example in which the first serial number belongs to the first serial number set and the second serial number belongs to the second serial number set.
本申请实施例提供的方法以两种类型的序列号集合或两种类型的数据为例进行描述,本领域技术人员可以理解,该方法可以扩展到两种以上(例如三种、四种或更多种)类型的序列号集合或两种以上类型的数据。针对每种类型的数据,可以设计其对应的序列号集合。不同序列号集合中的元素的值可以相同,也可以不同,本申请实施例不做限制。The method provided in the embodiments of this application is described by taking two types of serial number sets or two types of data as examples. Those skilled in the art can understand that the method can be extended to more than two types (for example, three, four or more types). Multiple) types of serial number collections or two or more types of data. For each type of data, a corresponding serial number set can be designed. The values of the elements in different serial number sets may be the same or different, and the embodiment of the present application does not limit it.
具体地,第一序列号集合与第二序列号集合可以为下面的两种形式:Specifically, the first serial number set and the second serial number set can be in the following two forms:
第一种形式,第一序列号集合可以与第二序列号集合存在一定的关系。例如,第一序列号集合为[0,1,……,N-1],第二序列号集合为[N,……,M-1],M和N为正整数,并且M大于N。In the first form, the first serial number set may have a certain relationship with the second serial number set. For example, the first serial number set is [0,1,...,N-1], the second serial number set is [N,...,M-1], M and N are positive integers, and M is greater than N.
当发送端与接收端预设或者协议规定采用第一种形式的序列号集合时,则发送端与接收端都获知第一序列号集合为[0,……,N-1],第二序列号集合为[N,……,M-1],由于接收端通过序列号的大小就可以确定序列号属于哪个序列号集合,不需要额外的指示信息指示序列号属于哪个序列号集合,从而可以节省开销。并且,在这种形式下,发送端按照SDU到达PDCP层的顺序向接收端发送相应的PDU。接收端接收到PDU后解封装得到SDU和每个SDU对应的序列号,并根据序列号得到计数值,根据计数值重新排序后向上层发送SDU,或者接收端可以向上层同时传递两个序列号集合对应的SDU,但是对于每个序列号集合内对应的SDU,需要根据序列号得到计数值,并根据计数值重新排序后向上层发送。When the sending end and the receiving end preset or the agreement stipulates to adopt the first form of sequence number set, both the sending end and the receiving end know that the first sequence number set is [0,……,N-1], and the second sequence The number set is [N,...,M-1], because the receiving end can determine which serial number set the serial number belongs to through the size of the serial number, and no additional indication information is needed to indicate which serial number set the serial number belongs to, so Save money. And, in this form, the sender sends corresponding PDUs to the receiver according to the order in which the SDUs reach the PDCP layer. After receiving the PDU, the receiving end decapsulates to obtain the SDU and the sequence number corresponding to each SDU, and obtains the count value according to the sequence number, and sends the SDU to the upper layer after reordering according to the count value, or the receiving end can transmit two sequence numbers to the upper layer at the same time Set the corresponding SDU, but for the corresponding SDU in each sequence number set, the count value needs to be obtained according to the sequence number, and the count value is reordered and sent to the upper layer.
举例来说,N的取值为10,当发送端在PDCP层接收到SDU的顺序为SDU1-SDU2-SDU3-SDU4,其中,SDU1和SDU3为实时数据,SDU2和SDU4为存储数据,则发送端在PDCP层为SDU1关联序列号0,为SDU3关联序列号1,为SDU2关联序列号11,为SDU4关联序列号12。发送端在PDCP层将SDU1的序列号0封装在包头生成PDU1,将SDU2的序列号11封装在包头生成PDU2,将SDU3的序列号1封装在包头生成PDU3,将SDU4的序列号12封装在包头生成PDU4,发送端的发送顺序为PDU1-PDU3-PDU2-PDU4。接收端在PDCP层有可能不是按照发送顺序接收的PDU1、PDU2、PDU3和PDU4,有的PDU可能会重传,接收端可以解封装PDU1得到SDU1,解封装PDU2得到SDU2,解封装PDU3得到SDU3,解封装PDU4得到SDU4,但由于PDU1的包头的序列号为0,PDU2的包头的序列号为11,PDU3的包头的序列号为1,PDU4的报文的序列号为12,则接收端可以确定序列号1和2属于第一序列号集合,序列号11和12属于第二序列号集合。可选地,接收端在PDCP层可以向上层交付的顺序可以是:SDU1-SDU3-SDU2-SDU4。可选地,接收端在PDCP层可以向上层同时交付两组SDU,第一组SDU为SDU1和SDU3,第二组SDU为SDU2和SDU4,但是第一组SDU的顺序为先发SDU1再发SDU3,第二组SDU的顺序为先发SDU2,再发SDU3。For example, the value of N is 10. When the sender receives SDUs in the PDCP layer in the order of SDU1-SDU2-SDU3-SDU4, where SDU1 and SDU3 are real-time data, and SDU2 and SDU4 are stored data, then the sender In the PDCP layer, it is SDU1 associated sequence number 0, SDU3 associated sequence number 1, SDU2 associated sequence number 11, and SDU4 associated sequence number 12. At the PDCP layer, the sender encapsulates the serial number 0 of SDU1 in the header to generate PDU1, encapsulates the serial number 11 of SDU2 in the header to generate PDU2, encapsulates the serial number 1 of SDU3 in the header to generate PDU3, and encapsulates the serial number 12 of SDU4 in the header Generate PDU4, the sending order of the sender is PDU1-PDU3-PDU2-PDU4. The receiving end may not receive PDU1, PDU2, PDU3, and PDU4 in the order of transmission at the PDCP layer. Some PDUs may be retransmitted. The receiving end can decapsulate PDU1 to obtain SDU1, decapsulate PDU2 to obtain SDU2, and decapsulate PDU3 to obtain SDU3. Decapsulate PDU4 to get SDU4, but since the sequence number of the header of PDU1 is 0, the sequence number of the header of PDU2 is 11, the sequence number of the header of PDU3 is 1, and the sequence number of the message of PDU4 is 12, the receiving end can determine Serial numbers 1 and 2 belong to the first serial number set, and serial numbers 11 and 12 belong to the second serial number set. Optionally, the order that the receiving end can deliver to the upper layer at the PDCP layer may be: SDU1-SDU3-SDU2-SDU4. Optionally, the receiving end can deliver two sets of SDUs to the upper layer at the PDCP layer at the same time. The first set of SDUs are SDU1 and SDU3, and the second set of SDUs are SDU2 and SDU4, but the order of the first set of SDUs is SDU1 and SDU3. , The order of the second group of SDUs is to send SDU2 first, then SDU3.
示例性地,PDCP SN的值为0到2 pdcp-SN-Size-1循环,即表示如果当前PDCP SN为2 pdcp-SN-Size-1,则下一个PDCP SN为0,pdcp-SN-Size为正整数,例如,pdcp-SN-Size取值可以为12或者18。在一种可能的实现方式中,若第一序列号集合和第二序列号集合为第一种形式,则N为
Figure PCTCN2020077382-appb-000005
Figure PCTCN2020077382-appb-000006
M为2 pdcp-SN-Size,其中,
Figure PCTCN2020077382-appb-000007
为下取整运算,
Figure PCTCN2020077382-appb-000008
为上取整运算。
Exemplarily, the value of PDCP SN is 0 to 2 pdcp-SN-Size -1 cycle, which means that if the current PDCP SN is 2 pdcp-SN-Size -1, the next PDCP SN is 0, pdcp-SN-Size It is a positive integer, for example, the value of pdcp-SN-Size can be 12 or 18. In a possible implementation, if the first sequence number set and the second sequence number set are in the first form, then N is
Figure PCTCN2020077382-appb-000005
or
Figure PCTCN2020077382-appb-000006
M is 2 pdcp-SN-Size , where,
Figure PCTCN2020077382-appb-000007
For the rounding down operation,
Figure PCTCN2020077382-appb-000008
It is the round up operation.
第二种形式,第一序列号集合与第二序列号集合也可以不存在关系。例如,第一序列 号集合为[0,……,P-1],第二序列号集合为[0,1,……,Q-1],P和Q为正整数。In the second form, there may be no relationship between the first serial number set and the second serial number set. For example, the first serial number set is [0,...,P-1], the second serial number set is [0,1,...,Q-1], and P and Q are positive integers.
当发送端与接收端预设或者协议规定采用第二种形式的序列号集合时,则发送端与接收端都获知第一序列号集合为[0,……,P-1],第二序列号集合为[0,……,Q-1]。接收端接收到PDU后解封装得到SDU和每个SDU对应的序列号,若第一组SDU对应序列号属于第一序列号集合,则根据第一序列号集合的序列号得到计数值,按照计数值重新排序后向上层发送该第一序列号集合中序列号对应的第一组SDU。若第二组SDU对应的序列号属于第二序列号集合,则根据第二序列号集合的序列号得到计数值,按照计数值重新排序向上层发送该第二序列号集合中的序列号对应的第二组SDU,可选地,可以先发送第一组SDU,再发送第二组SDU;或者接收端可以同时发送第一组SDU和第二组SDU,但是第一组SDU内的SDU需要根据序列号确定的计数值从小到大发送,第二组SDU内的SDU需要根据序列号确定的计数值从小到大发送。When the sending end and the receiving end preset or the agreement stipulates to adopt the second form of sequence number set, both the sending end and the receiving end know that the first sequence number set is [0,……,P-1], and the second sequence The number set is [0,……,Q-1]. After receiving the PDU, the receiving end decapsulates and obtains the SDU and the sequence number corresponding to each SDU. If the sequence number corresponding to the first group of SDU belongs to the first sequence number set, the count value is obtained according to the sequence number of the first sequence number set. After the values are reordered, the first group of SDUs corresponding to the sequence numbers in the first sequence number set is sent to the upper layer. If the sequence numbers corresponding to the second group of SDUs belong to the second sequence number set, the count value is obtained according to the sequence numbers of the second sequence number set, and the sequence numbers corresponding to the sequence numbers in the second sequence number set are sent to the upper layer according to the count value. The second group of SDUs, optionally, the first group of SDUs can be sent first, and then the second group of SDUs; or the receiving end can send the first group of SDUs and the second group of SDUs at the same time, but the SDUs in the first group of SDUs need to be The count value determined by the sequence number is sent from small to large, and the SDUs in the second group of SDUs need to be sent from small to large according to the count value determined by the sequence number.
举例来说,P的取值为10,Q的取值为11,当发送端在PDCP层先接收到SDU1和SDU2,之后接收到SDU3和SDU4,其中,SDU1和SDU3为实时数据,SDU2和SDU4为存储数据,则发送端在PDCP层为SDU1关联序列号0,为SDU3关联序列号1,为SDU2关联序列号0,为SDU4关联序列号1。发送端在PDCP层将SDU1的序列号0封装在包头生成PDU1,将SDU2的序列号0封装在包头生成PDU2,将SDU3的序列号1封装在包头生成PDU3,将SDU4的序列号1封装在包头生成PDU4,发送端的发送顺序为PDU1-PDU3-PDU2-PDU4,即优先发送完实时数据,发送完实时数据再发送存储数据。For example, the value of P is 10 and the value of Q is 11. When the sender receives SDU1 and SDU2 at the PDCP layer first, then SDU3 and SDU4 are received, where SDU1 and SDU3 are real-time data, and SDU2 and SDU4 In order to store data, the transmitting end in the PDCP layer is SDU1 associated sequence number 0, SDU3 associated sequence number 1, SDU2 associated sequence number 0, and SDU4 associated sequence number 1. At the PDCP layer, the sender encapsulates the serial number 0 of SDU1 in the header to generate PDU1, encapsulates the serial number 0 of SDU2 in the header to generate PDU2, encapsulates the serial number 1 of SDU3 in the header to generate PDU3, and encapsulates the serial number 1 of SDU4 in the header Generate PDU4, the sending order of the sender is PDU1-PDU3-PDU2-PDU4, that is, the real-time data is sent first, and the stored data is sent after the real-time data is sent.
结合上述例子的描述,可选地,发送端可以在每个PDU的包头封装指示信息,指示信息用于指示PDU的包头的序列号所属的序列号集合。例如,PDU1的特定比特位的取值为0,表示PDU1的包头中的序列号0属于第一序列号集合[0,……,P-1],PDU2的特定比特位的取值为1,表示PDU2的包头的序列号0属于第二序列号集合[0,……,Q-1],PDU3的特定比特位的取值为0,表示PDU3的包头中的序列号1属于第一序列号集合[0,……,P-1],PDU4的特定比特位的取值为1,表示PDU4的包头的序列号1属于第二序列号集合[0,……,Q-1]。接收端在PDCP层有可能不是按照发送顺序接收的PDU1、PDU2、PDU3和PDU4,有的PDU可能会重传,接收端可以解封装PDU1得到SDU1,解封装PDU2得到SDU2,解封装PDU3得到SDU3,解封装PDU4得到SDU4,但由于PDU1的包头的指示信息指示序列号0属于第一序列号集合,PDU2的包头的指示信息指示的序列号0属于第二序列号集合,PDU3的包头的指示信息指示序列号1属于第一序列号集合,PDU4的包头的指示信息指示序列号1属于第二序列号集合,则接收端可以确定PDU1的序列号0和PDU3的序列号1属于第一序列号集合,PDU2的序列号0和PDU4的序列号1属于第二序列号集合,可选地,接收端在PDCP层可以向高层交付的顺序可以是:SDU1-SDU3-SDU2-SDU4。可选地,接收端在PDCP层可以向高层同时交付两组SDU,第一组SDU为SDU1和SDU3,第二组SDU为SDU2和SDU4,但是第一组SDU的顺序为先发SDU1再发SDU3,第二组SDU的顺序为先发SDU2,再发SDU3。With reference to the description of the foregoing example, optionally, the sender may encapsulate indication information in the header of each PDU, and the indication information is used to indicate the sequence number set to which the sequence number of the header of the PDU belongs. For example, the value of the specific bit of PDU1 is 0, which means that the sequence number 0 in the header of PDU1 belongs to the first sequence number set [0,...,P-1], and the value of the specific bit of PDU2 is 1. Indicates that the sequence number 0 of the header of PDU2 belongs to the second sequence number set [0,...,Q-1], the value of the specific bit of PDU3 is 0, indicating that the sequence number 1 in the header of PDU3 belongs to the first sequence number Set [0,..., P-1], the value of the specific bit of PDU4 is 1, indicating that the sequence number 1 of the packet header of PDU4 belongs to the second sequence number set [0,..., Q-1]. The receiving end may not receive PDU1, PDU2, PDU3, and PDU4 in the order of transmission at the PDCP layer. Some PDUs may be retransmitted. The receiving end can decapsulate PDU1 to obtain SDU1, decapsulate PDU2 to obtain SDU2, and decapsulate PDU3 to obtain SDU3. Decapsulating PDU4 to get SDU4, but because the indication information of the header of PDU1 indicates that the sequence number 0 belongs to the first sequence number set, the sequence number 0 indicated by the indication information of the header of PDU2 belongs to the second sequence number set, and the indication information of the header of PDU3 indicates The sequence number 1 belongs to the first sequence number set, and the indication information in the header of PDU4 indicates that the sequence number 1 belongs to the second sequence number set, and the receiving end can determine that the sequence number 0 of PDU1 and the sequence number 1 of PDU3 belong to the first sequence number set. The sequence number 0 of PDU2 and the sequence number 1 of PDU4 belong to the second sequence number set. Optionally, the order in which the receiving end can deliver to the upper layer at the PDCP layer may be: SDU1-SDU3-SDU2-SDU4. Optionally, the receiving end at the PDCP layer can deliver two sets of SDUs to the higher layer at the same time. The first set of SDUs are SDU1 and SDU3, and the second set of SDUs are SDU2 and SDU4, but the order of the first set of SDUs is SDU1 and SDU3. , The order of the second group of SDUs is to send SDU2 first, then SDU3.
需要说明的是,本申请实施例中,上述仅以举例的方式说明了第一序列号集合与第二序列号集合的两种形式,但本申请实施例不限于此,第一序列号集合与第二序列号集合还可以是其他的形式,例如,第一序列号集合可以为[0,……,N1-1],第二序列号集合为[N2,……,M-1],N1和N2为正整数,并且N2大于或等于N1,若N1等于N2,即第一 序列号集合与第二序列号集合为上述的第一种形式。It should be noted that, in the embodiments of the present application, the foregoing descriptions of the first serial number set and the second serial number set are only by way of example, but the embodiments of the present application are not limited to this. The second serial number set can also be in other forms. For example, the first serial number set can be [0,...,N1-1], and the second serial number set is [N2,...,M-1], N1 And N2 are positive integers, and N2 is greater than or equal to N1, if N1 is equal to N2, that is, the first serial number set and the second serial number set are in the first form described above.
需要说明的是,本申请实施例中提到的“同时”可以理解为时间差小于预设阈值,时间差可以指绝对时间差或者相对时间差等。具体来说,接收端在PDCP层向上层同时传递A和B表示:接收端在PDCP层向上层传递A和B的时间差小于预设阈值;A和B同时到达PDCP层表示:A和B到达PDCP层时间差小于预设阈值。It should be noted that the “simultaneous” mentioned in the embodiments of the present application can be understood as the time difference is less than a preset threshold, and the time difference can refer to an absolute time difference or a relative time difference. Specifically, the receiving end transmits A and B to the upper layer at the PDCP layer at the same time, which means: the time difference between the receiving end to transmit A and B to the upper layer at the PDCP layer is less than the preset threshold; A and B reach the PDCP layer at the same time, which means: A and B reach PDCP The layer time difference is less than the preset threshold.
因此,本申请实施例提供的传输数据的方法,针对一个PDCP实体,在发送端在第一序列号集合中确定实时数据的第一序列号,在第二序列号集合中确定存储数据的第二序列号,并优先发送实时数据,从而可以满足实时数据的实时性要求,相对于现有技术不区分数据的类型直接发送数据能降低数据的时延,以图7、图8和图9例,图7、图8和图9中示出了本申请实施例提供的传输数据的方法相对于现有技术的仿真结果。图7的视频一的码率为700比特率(kilobit per second,kbps);图8的视频2的码率为743kbps;图9的视频3码率为835kbps。图7、图8和图9示出了信道增益从-123dB变化到-127dB时,卡顿比例和帧播放时延的性能。图7、图8和图9中实线表示采用本申请实施例提供的传输数据方法的仿真结果,虚线表示现有技术中的传输数据方法的仿真结果。从图7、图8和图9中可以看出,当信道增益大于-125dB时,信道容量足够大,本申请实施例中的传输数据的方法和现有技术的传输数据的方法的卡顿比例和帧播放时延均很低。当信道增益小于-125dB时,信道容量减少,此时若采用现有技术的传输数据方法同时传输实时流和存储流,则会造成实时流卡顿比例和帧播放时延显著增加。而采用本申请实施例提供的传输数据的方法,卡顿比例和帧播放时延均无明显变化。Therefore, the method for transmitting data provided in the embodiments of the present application is for a PDCP entity, at the sending end, the first sequence number of real-time data is determined in the first sequence number set, and the second sequence number of the stored data is determined in the second sequence number set. Serial number, and priority to send real-time data, which can meet the real-time requirements of real-time data. Compared with the prior art, directly sending data without distinguishing the type of data can reduce the data delay. Take Figure 7, Figure 8 and Figure 9 as examples, Figures 7, 8 and 9 show the simulation results of the method for transmitting data provided by the embodiments of the present application with respect to the prior art. The bit rate of video 1 in FIG. 7 is 700 bit rate (kilobit per second, kbps); the bit rate of video 2 in FIG. 8 is 743 kbps; and the bit rate of video 3 in FIG. 9 is 835 kbps. Figure 7, Figure 8, and Figure 9 show the performance of the freeze ratio and frame playback delay when the channel gain changes from -123dB to -127dB. The solid lines in FIG. 7, FIG. 8, and FIG. 9 represent the simulation results of the data transmission method provided by the embodiment of the present application, and the dotted lines represent the simulation results of the data transmission method in the prior art. It can be seen from Fig. 7, Fig. 8 and Fig. 9 that when the channel gain is greater than -125dB, the channel capacity is large enough. The stall ratio of the method for transmitting data in the embodiment of this application and the method for transmitting data in the prior art And frame playback delay is very low. When the channel gain is less than -125dB, the channel capacity is reduced. At this time, if the current data transmission method is used to transmit the real-time stream and the storage stream at the same time, the real-time stream jam ratio and frame playback delay will increase significantly. With the data transmission method provided in the embodiment of the present application, there is no significant change in the freeze ratio and frame playback delay.
以上结合图1至图9,详细得描述了本申请实施例提供的传输数据的方法,下面结合图10至图12,详细描述本申请实施例提供的传输数据的装置。The data transmission method provided by the embodiment of the present application is described in detail above with reference to Figs. 1 to 9, and the data transmission device provided by the embodiment of the present application is described in detail below with reference to Figs. 10 to 12.
图10示出了本申请实施例提供的传输数据的装置500的示意性框图,该装置500可以对应上述方法中描述的发送端,也可以对应发送端的芯片或者组件,并且,该装置500中各个模块或者单元分别可以用于执行上述方法中发送端所执行的各动作或处理过程,如图10所示,该传输数据的装置500可以包括处理单元510和收发单元520。FIG. 10 shows a schematic block diagram of an apparatus 500 for transmitting data provided in an embodiment of the present application. The apparatus 500 may correspond to the sending end described in the foregoing method, or may correspond to the chip or component of the sending end, and each of the apparatus 500 The modules or units may be respectively used to execute various actions or processing procedures performed by the sending end in the foregoing method. As shown in FIG. 10, the data transmission device 500 may include a processing unit 510 and a transceiver unit 520.
处理单元510,用于根据第一SDU的数据类型,确定目标序列号集合,其中,所述目标序列号集合为第一序列号集合或第二序列号集合,根据所述第一序列号集合中的序列号得到的PDU的发送优先级高于根据所述第二序列号集合中的序列号得到的PDU的发送优先级;The processing unit 510 is configured to determine a set of target serial numbers according to the data type of the first SDU, where the set of target serial numbers is a first serial number set or a second serial number set, and according to the first serial number set The transmission priority of the PDU obtained by the sequence number of is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set;
所述处理单元510还用于在目标序列号集合中确定第一SDU的第一序列号;The processing unit 510 is further configured to determine the first sequence number of the first SDU in the target sequence number set;
收发单元520,用于发送第一协议数据单元PDU,所述第一PDU是根据所述第一序列号对所述第一SDU进行封装得到的PDU。The transceiver unit 520 is configured to send a first protocol data unit PDU, where the first PDU is a PDU obtained by encapsulating the first SDU according to the first sequence number.
作为一个可选实施例,所述处理单元510具体用于:As an optional embodiment, the processing unit 510 is specifically configured to:
若所述第一SDU为第一类型数据,所述目标序列集合是第一序列号集合;If the first SDU is data of the first type, the target sequence set is a first sequence number set;
若所述第一SDU为第二类型数据,所述目标序列集合是第二序列号集合。If the first SDU is data of the second type, the target sequence set is the second sequence number set.
作为一个可选实施例,所述第一类型数据为实时数据,所述第二类型数据为存储数据。As an optional embodiment, the first type of data is real-time data, and the second type of data is stored data.
作为一个可选实施例,所述第一序列号集合为[0,……,N-1],所述第二序列号集合为[N,……,M-1],M和N为正整数,并且M大于N。As an optional embodiment, the first sequence number set is [0,...,N-1], the second sequence number set is [N,...,M-1], and M and N are positive Integer, and M is greater than N.
作为一个可选实施例,所述第一序列号集合为[0,……,P-1],所述第二序列号集合为 [0,……,Q-1],P和Q为正整数。As an optional embodiment, the first sequence number set is [0,...,P-1], the second sequence number set is [0,...,Q-1], and P and Q are positive Integer.
作为一个可选实施例,所述第一PDU的包头包括第一指示信息,所述第一指示信息用于指示所述第一序列号所属的序列号集合,或者用于指示第一PDU的数据类型。As an optional embodiment, the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence number set to which the first sequence number belongs, or used to indicate data of the first PDU Types of.
作为一个可选实施例,所述处理单元510还用于:As an optional embodiment, the processing unit 510 is further configured to:
根据所述第一SDU的传输层协议类型确定所述第一SDU的数据类型。The data type of the first SDU is determined according to the transport layer protocol type of the first SDU.
作为一个可选实施例,所述处理单元510具体用于:As an optional embodiment, the processing unit 510 is specifically configured to:
若所述第一SDU的传输层协议类型为UDP协议,则所述第一SDU为第一类型数据;If the transport layer protocol type of the first SDU is the UDP protocol, the first SDU is data of the first type;
若所述第一SDU的传输层协议类型不是UDP协议,则根据所述第一SDU的传输层的目的端口号确定所述第一SDU的数据类型。If the transport layer protocol type of the first SDU is not the UDP protocol, the data type of the first SDU is determined according to the destination port number of the transport layer of the first SDU.
作为一个可选实施例,所述处理单元510具体用于:As an optional embodiment, the processing unit 510 is specifically configured to:
若所述传输层的目的端口号为554,则所述第一SDU为所述第一数据类型;If the destination port number of the transport layer is 554, the first SDU is the first data type;
若所述传输层的目的端口号不是554,则所述第一SDU为第二数据类型。If the destination port number of the transport layer is not 554, the first SDU is of the second data type.
应理解,装置500中各单元执行上述相应步骤的具体过程请参照前文中结合图3-图5的方法实施例的描述,为了简洁,这里不加赘述。It should be understood that, for the specific process of each unit in the device 500 executing the above corresponding steps, please refer to the foregoing description in conjunction with the method embodiments in FIGS. 3 to 5, and for the sake of brevity, details are not repeated here.
图11示出了本申请实施例提供的传输数据的装置600的示意性框图,该装置600可以对应上述方法中描述的接收端,也可以对应接收的芯片或者组件,并且,该装置600中各个模块或者单元分别可以用于执行上述方法中接收端所执行的各动作或处理过程,如图11所示,该传输数据的装置600可以包括接收单元610和传递单元620。FIG. 11 shows a schematic block diagram of an apparatus 600 for transmitting data provided by an embodiment of the present application. The apparatus 600 may correspond to the receiving end described in the foregoing method, or may correspond to the receiving chip or component, and each of the apparatus 600 The modules or units may respectively be used to perform various actions or processing procedures performed by the receiving end in the above method. As shown in FIG. 11, the data transmission device 600 may include a receiving unit 610 and a transmitting unit 620.
接收单元610,用于接收第一协议数据单元PDU和第二PDU;The receiving unit 610 is configured to receive the first protocol data unit PDU and the second PDU;
传递单元620,用于根据所述第一PDU的第一序列号所属的序列号集合和所述第二PDU的第二序列号所属的序列号集合,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。The transferring unit 620 is configured to transfer the first sequence number corresponding to the first PDU to the higher layer according to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs. A service data unit SDU and a second SDU corresponding to the second PDU.
作为一个可选实施例,所述传递单元620具体用于:所述第一序列号所属的序列号集合和所述第二序列号所属的序列号集合相同,根据所述第一序列号和所述第二序列号的大小,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。As an optional embodiment, the transferring unit 620 is specifically configured to: the sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs, and according to the first sequence number and the sequence number set The size of the second sequence number is transferred to the higher layer of the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU.
作为一个可选实施例,所述传递单元620具体用于:若所述第一序列号属于第一序列号集合,所述第二序列号属于第二序列号集合,则相对第二PDU对应的第二SDU,优先将第一PDU对应的第一服务数据单元SDU递交至高层。As an optional embodiment, the transferring unit 620 is specifically configured to: if the first sequence number belongs to a first sequence number set, and the second sequence number belongs to a second sequence number set, then the corresponding second PDU The second SDU first delivers the first service data unit SDU corresponding to the first PDU to the higher layer.
作为一个可选实施例,所述第一PDU的包头包括第一指示信息,所述第一指示信息用于指示所述第一序列号所属的序列号集合;所述第二PDU的包头包括第二指示信息,所述第二指示信息用于指示所述第二序列号所述的序列号集合。As an optional embodiment, the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence number set to which the first sequence number belongs; the header of the second PDU includes the first 2. Indication information, where the second indication information is used to indicate the sequence number set described by the second sequence number.
应理解,装置600中各单元执行上述相应步骤的具体过程请参照前文中结合图3-图5的方法实施例的描述,为了简洁,这里不加赘述。It should be understood that, for the specific process of each unit in the device 600 performing the above corresponding steps, please refer to the foregoing description in conjunction with the method embodiments of FIGS. 3 to 5, and for the sake of brevity, details are not repeated here.
上述各个方案的装置500具有实现上述方法中发送端执行的相应步骤的功能,上述各个方案的装置600具有实现上述方法中接收端执行的相应步骤的功能;功能可以通过硬件或软件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块;例如发送单元可以由通信接口替代,接收单元可以由通信接口替代,其它单元,如确定单元等可以由处理器替代,分别执行各个方法实施例中的收发操作以及相 关的处理操作。在本申请实施例中,一个装置的通信接口用于该装置与其它设备进行通信。示例性的,通信接口可以是发射机、接收机、收发器、电路、总线、模块、管脚或其它类型的通信接口,本申请实施例不做限制。The apparatus 500 of each of the foregoing solutions has the function of implementing the corresponding steps performed by the sending end in the foregoing method, and the apparatus 600 of each of the foregoing solutions has the function of implementing the corresponding steps performed by the receiving end of the foregoing method; the functions can be implemented by hardware or software, or Implement the corresponding software through hardware. The hardware or software includes one or more modules corresponding to the above-mentioned functions; for example, the sending unit can be replaced by a communication interface, the receiving unit can be replaced by a communication interface, and other units, such as the determining unit, can be replaced by a processor to execute each method separately Transceiving operations and related processing operations in the embodiment. In the embodiment of the present application, the communication interface of a device is used for the device to communicate with other devices. Exemplarily, the communication interface may be a transmitter, a receiver, a transceiver, a circuit, a bus, a module, a pin, or another type of communication interface, which is not limited in the embodiment of the present application.
在具体实现过程中,处理器可用于进行,例如但不限于,基带相关处理,通信接口可用于进行,例如但不限于,信息交互。上述器件可以分别设置在彼此独立的芯片上,也可以至少部分的或者全部的设置在同一块芯片上。例如,处理器可以进一步划分为模拟基带处理器和数字基带处理器,其中模拟基带处理器可以与通信接口集成在同一块芯片上,数字基带处理器可以设置在独立的芯片上。随着集成电路技术的不断发展,可以在同一块芯片上集成的器件越来越多,例如,数字基带处理器可以与多种应用处理器(例如但不限于图形处理器,多媒体处理器等)集成在同一块芯片之上。这样的芯片可以称为系统芯片(system on chip,SOC)。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的具体需要。本申请实施例对上述器件的具体实现形式不做限定。In a specific implementation process, the processor can be used to perform, for example, but not limited to, baseband related processing, and the communication interface can be used to perform, for example, but not limited to, information exchange. The above-mentioned devices may be respectively arranged on independent chips, or at least partly or fully arranged on the same chip. For example, the processor can be further divided into an analog baseband processor and a digital baseband processor, where the analog baseband processor and the communication interface can be integrated on the same chip, and the digital baseband processor can be set on a separate chip. With the continuous development of integrated circuit technology, more and more devices can be integrated on the same chip. For example, a digital baseband processor can be combined with a variety of application processors (such as but not limited to graphics processors, multimedia processors, etc.) Integrated on the same chip. Such a chip may be called a system on chip (SOC). Whether each device is independently arranged on different chips or integrated on one or more chips often depends on the specific needs of product design. The embodiment of the present application does not limit the specific implementation form of the foregoing device.
可以理解的是,对于前述实施例中所涉及的处理器可以通过具有处理器和通信接口的硬件平台执行程序指令来分别实现其在本申请前述实施例中任一设计中涉及的功能,基于此,如图12所示,本申请实施例提供了一种传输数据的装置700的示意性框图,装置700包括:处理器710、通信接口720和存储器730。其中,处理器710、通信接口720和存储器730耦合以互相通信,该存储器730用于存储指令,该处理器710用于执行该存储器730存储的指令,以控制该通信接口720发送信号和/或接收信号。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。It can be understood that the processor involved in the foregoing embodiments can execute program instructions through a hardware platform with a processor and a communication interface to implement the functions involved in any design of the foregoing embodiments of this application, based on this As shown in FIG. 12, an embodiment of the present application provides a schematic block diagram of an apparatus 700 for transmitting data. The apparatus 700 includes a processor 710, a communication interface 720, and a memory 730. The processor 710, the communication interface 720, and the memory 730 are coupled to communicate with each other. The memory 730 is used to store instructions, and the processor 710 is used to execute the instructions stored in the memory 730 to control the communication interface 720 to send signals and/or receive signal. The coupling in the embodiments of the present application is an indirect coupling or communication connection between devices, units, or modules, and may be in electrical, mechanical or other forms, and is used for information exchange between devices, units or modules.
其中,在一种可能的实现方式中,若该装置700为发送端,处理器710用于根据第一SDU的数据类型,确定目标序列号集合,其中,所述目标序列号集合为第一序列号集合或第二序列号集合,根据所述第一序列号集合中的序列号得到的PDU的发送优先级高于根据所述第二序列号集合中的序列号得到的PDU的发送优先级;所述处理器710还用于在目标序列号集合中确定第一SDU的第一序列号;处理器710利用通信接口720发送第一协议数据单元PDU,所述第一PDU是根据所述第一序列号对所述第一SDU进行封装得到的PDU。Wherein, in a possible implementation manner, if the device 700 is the transmitting end, the processor 710 is configured to determine a target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence Number set or second sequence number set, the transmission priority of the PDU obtained according to the sequence number in the first sequence number set is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set; The processor 710 is further configured to determine the first sequence number of the first SDU in the target sequence number set; the processor 710 uses the communication interface 720 to send a first protocol data unit PDU, where the first PDU is based on the first The sequence number is the PDU obtained by encapsulating the first SDU.
在一种可能的实现方式中,若该装置700为接收端,处理器710利用通信接口720接收第一协议数据单元PDU和第二PDU;处理器710用于根据所述第一PDU的第一序列号所属的序列号集合和所述第二PDU的第二序列号所属的序列号集合,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。In a possible implementation manner, if the apparatus 700 is the receiving end, the processor 710 uses the communication interface 720 to receive the first protocol data unit PDU and the second PDU; the processor 710 is configured to perform according to the first PDU of the first PDU The sequence number set to which the sequence number belongs and the sequence number set to which the second sequence number of the second PDU belongs are delivered to the higher layer of the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU.
应理解,本申请实施例图10中的装置或图11中的装置可以通过图12中的装置700来实现,并且可以用于执行上述方法实施例中发送端和接收端对应的各个步骤和/或流程。It should be understood that the apparatus in FIG. 10 or the apparatus in FIG. 11 in the embodiment of the present application may be implemented by the apparatus 700 in FIG. 12, and may be used to execute the respective steps and/or steps corresponding to the sending end and the receiving end in the foregoing method embodiment. Or process.
可以理解的是,本申请实施例描述的各种设计涉及的方法,流程,操作或者步骤,能够以一一对应的方式,通过计算机软件,电子硬件,或者计算机软件和电子硬件的结合来一一对应实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件,比如,考虑通用性好成本低软硬件解耦等方面,可以采纳执行程序指令的方式来实现,又比如,考虑系统性能和可靠性等方面,可以采纳使用专用电路来实现。普 通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,此处不做限定。It can be understood that the methods, processes, operations, or steps involved in the various designs described in the embodiments of the present application can be implemented in a one-to-one correspondence manner through computer software, electronic hardware, or a combination of computer software and electronic hardware. Corresponding realization. Whether these functions are executed by hardware or software depends on the specific application and design constraints of the technical solution. For example, considering the good versatility, low cost, software and hardware decoupling, etc., they can be implemented by executing program instructions, for example , Considering system performance and reliability, etc., it can be realized by using a dedicated circuit. Ordinary technicians can use different methods to achieve the described functions for each specific application, which is not limited here.
根据本申请实施例提供的方法,本申请还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行上述实施例中的方法。本申请中的各个实施例也可以互相结合。According to the method provided in the embodiments of the present application, the present application also provides a computer program product, the computer program product includes: computer program code, when the computer program code runs on a computer, the computer executes the method in the above embodiment . The various embodiments in this application can also be combined with each other.
根据本申请实施例提供的方法,本申请还提供一种计算机可读介质,该计算机可读解释存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行上述实施例中的方法。According to the method provided in the embodiments of the present application, the present application also provides a computer-readable medium with a program code stored in the computer-readable interpretation, and when the program code runs on a computer, the computer executes the method in the foregoing embodiment .
在本申请实施例中,应注意,本申请实施例上述的方法实施例可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(Field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。In the embodiments of the present application, it should be noted that the foregoing method embodiments in the embodiments of the present application may be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. In the implementation process, the steps of the foregoing method embodiments can be completed by hardware integrated logic circuits in the processor or instructions in the form of software. The above-mentioned processor may be a general-purpose processor, a digital signal processor (digital signal processor, DSP), an application specific integrated circuit (ASIC), an off-the-shelf programmable gate array (Field Programmable Gate Array, FPGA) or other Programming logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps, and logical block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor may be a microprocessor or any conventional processor.
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。RAM有多种不同的类型,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。It can be understood that the memory in the embodiment of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memory. Among them, the non-volatile memory can be read-only memory (ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), and electronic Erase programmable read-only memory (electrically EPROM, EEPROM) or flash memory. The volatile memory may be random access memory (RAM), which is used as an external cache. There are many different types of RAM, such as static RAM (SRAM), dynamic random access memory (dynamic RAM, DRAM), synchronous dynamic random access memory (synchronous DRAM, SDRAM), double data rate Synchronous dynamic random access memory (double data rate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous connection dynamic random access memory (synchlink DRAM, SLDRAM) and direct memory bus random memory Take memory (direct rambus RAM, DR RAM).
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。It should be understood that, in the various embodiments of the present application, the size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, rather than corresponding to the embodiments of the present application. The implementation process constitutes any limitation.
本申请中出现的术语“第一”、“第二”等仅是为了区分不同的对象,“第一”、“第二”本身并不对其修饰的对象的实际顺序或功能进行限定。本申请中被描述为“示例性的”,“示例”,“例如”,“可选地”或者“在某些实现方式中”的任何实施例或设计方案都不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用这些词旨在以具体方式呈现相关概念。The terms "first" and "second" appearing in this application are only used to distinguish different objects, and "first" and "second" themselves do not limit the actual order or function of the objects they modify. Any embodiment or design solution described as "exemplary", "example", "for example", "optionally" or "in certain implementations" in this application should not be construed as being better than other implementations. Examples or design solutions are more preferred or more advantageous. To be precise, these words are used to present related concepts in a concrete way.
在本申请中可能出现的对各种消息/信息/设备/网元/系统/装置/操作/等各类客体进行了赋名,可以理解的是,这些具体的名称并不构成对相关客体的限定,所赋名称可随着场景,语境或者使用习惯等因素而变更,对本申请中技术术语的技术含义的理解,应主要从其在技术方案中所体现/执行的功能和技术效果来确定。Various messages/information/equipment/network elements/systems/devices/operations that may appear in this application have been assigned names. It is understandable that these specific names do not constitute a reference to related objects. Limited, the assigned name can be changed according to factors such as the scene, context, or usage habits. The understanding of the technical meaning of the technical terms in this application should be determined mainly from the functions and technical effects embodied/implemented in the technical solution .
上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当 使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品可以包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、终端设备或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁盘)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。In the above-mentioned embodiments, it may be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in the form of a computer program product in whole or in part. The computer program product may include one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the processes or functions described in the embodiments of the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, network equipment, terminal equipment, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center. Transmission to another website, computer, server or data center via wired (such as coaxial cable, optical fiber, digital subscriber (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrated with one or more available media. The usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic disk), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。A person of ordinary skill in the art may be aware that the units and algorithm steps of the examples described in combination with the embodiments disclosed herein can be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether these functions are executed by hardware or software depends on the specific application and design constraint conditions of the technical solution. Professionals and technicians can use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of this application.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请实施例中,在无逻辑矛盾的前提下,各实施例之间可以相互引用,例如方法实施例之间的方法和/或术语可以相互引用,例如装置实施例之间的功能和/或术语可以相互引用,例如装置实施例和方法实施例之间的功能和/或术语可以相互引用。Those skilled in the art can clearly understand that, for the convenience and conciseness of description, the specific working process of the above-described system, device, and unit can refer to the corresponding process in the foregoing method embodiment, which will not be repeated here. In the embodiments of the present application, provided that there is no logical contradiction, the embodiments can be mutually cited. For example, methods and/or terms between method embodiments can be mutually cited, such as functions and/or functions between device embodiments. Or terms may refer to each other, for example, functions and/or terms between the device embodiment and the method embodiment may refer to each other.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed system, device, and method may be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components can be combined or It can be integrated into another system, or some features can be ignored or not implemented. In addition, the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, the functional units in each embodiment of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。The above are only specific implementations of this application, but the protection scope of this application is not limited to this. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed in this application. Should be covered within the scope of protection of this application. Therefore, the protection scope of this application should be subject to the protection scope of the claims.

Claims (22)

  1. 一种传输数据的方法,其特征在于,包括:A method for transmitting data, characterized in that it comprises:
    根据第一SDU的数据类型,确定目标序列号集合,其中,所述目标序列号集合为第一序列号集合或第二序列号集合,根据所述第一序列号集合中的序列号得到的PDU的发送优先级高于根据所述第二序列号集合中的序列号得到的PDU的发送优先级;Determine the target sequence number set according to the data type of the first SDU, where the target sequence number set is the first sequence number set or the second sequence number set, and the PDU obtained according to the sequence numbers in the first sequence number set The sending priority of is higher than the sending priority of the PDU obtained according to the sequence numbers in the second sequence number set;
    在目标序列号集合中确定第一SDU的第一序列号;Determine the first sequence number of the first SDU in the target sequence number set;
    发送第一协议数据单元PDU,所述第一PDU是根据所述第一序列号对所述第一SDU进行封装得到的PDU。Send a first protocol data unit PDU, where the first PDU is a PDU obtained by encapsulating the first SDU according to the first sequence number.
  2. 根据权利要求1所述的方法,其特征在于,所述根据第一SDU的数据类型,确定目标序列号集合,包括:The method according to claim 1, wherein the determining the target sequence number set according to the data type of the first SDU comprises:
    若所述第一SDU为第一类型数据,所述目标序列集合是第一序列号集合;If the first SDU is data of the first type, the target sequence set is a first sequence number set;
    若所述第一SDU为第二类型数据,所述目标序列集合是第二序列号集合。If the first SDU is data of the second type, the target sequence set is the second sequence number set.
  3. 根据权利要求2所述的方法,其特征在于,所述第一类型数据为实时数据,所述第二类型数据为存储数据。The method according to claim 2, wherein the first type of data is real-time data, and the second type of data is stored data.
  4. 根据权利要求1至3中任一项所述的方法,其特征在于,所述第一序列号集合为[0,……,N-1],所述第二序列号集合为[N,……,M-1],M和N为正整数,并且M大于N。The method according to any one of claims 1 to 3, wherein the first sequence number set is [0,...,N-1], and the second sequence number set is [N,... …, M-1], M and N are positive integers, and M is greater than N.
  5. 根据权利要求1至3中任一项所述的方法,其特征在于,所述第一序列号集合为[0,……,P-1],所述第二序列号集合为[0,……,Q-1],P和Q为正整数。The method according to any one of claims 1 to 3, wherein the first sequence number set is [0,..., P-1], and the second sequence number set is [0,... …, Q-1], P and Q are positive integers.
  6. 根据权利要求1至5中任一项所述的方法,其特征在于,所述第一PDU的包头包括第一指示信息,所述第一指示信息用于指示所述第一序列号所属的序列号集合,或者用于指示第一PDU的数据类型。The method according to any one of claims 1 to 5, wherein the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence to which the first sequence number belongs Number set, or used to indicate the data type of the first PDU.
  7. 根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1 to 6, wherein the method further comprises:
    根据所述第一SDU的传输层协议类型确定所述第一SDU的数据类型。The data type of the first SDU is determined according to the transport layer protocol type of the first SDU.
  8. 根据权利要求7所述的方法,其特征在于,所述根据所述第一SDU的传输层协议类型确定所述第一SDU的数据类型,包括:The method according to claim 7, wherein the determining the data type of the first SDU according to the transport layer protocol type of the first SDU comprises:
    若所述第一SDU的传输层协议类型为UDP协议,则所述第一SDU为第一类型数据;If the transport layer protocol type of the first SDU is the UDP protocol, the first SDU is data of the first type;
    若所述第一SDU的传输层协议类型不是UDP协议,则根据所述第一SDU的传输层的目的端口号确定所述第一SDU的数据类型。If the transport layer protocol type of the first SDU is not the UDP protocol, the data type of the first SDU is determined according to the destination port number of the transport layer of the first SDU.
  9. 根据权利要求8所述的方法,其特征在于,所述根据所述第一SDU的传输层的目的端口号确定所述第一SDU的数据类型,包括:The method according to claim 8, wherein the determining the data type of the first SDU according to the destination port number of the transport layer of the first SDU comprises:
    若所述传输层的目的端口号为554,则所述第一SDU为所述第一数据类型;If the destination port number of the transport layer is 554, the first SDU is the first data type;
    若所述传输层的目的端口号不是554,则所述第一SDU为第二数据类型。If the destination port number of the transport layer is not 554, the first SDU is of the second data type.
  10. 一种传输数据的方法,其特征在于,包括:A method for transmitting data, characterized in that it comprises:
    接收第一协议数据单元PDU和第二PDU;Receiving the first protocol data unit PDU and the second PDU;
    根据所述第一PDU的第一序列号所属的序列号集合和所述第二PDU的第二序列号所属的序列号集合,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。According to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs, deliver the first service data unit SDU and SDU corresponding to the first PDU to the higher layer The second SDU corresponding to the second PDU.
  11. 根据权利要求10所述的方法,其特征在于,所述根据所述第一PDU的第一序列 号所属的序列号集合和所述第二PDU的第二序列号所属的序列号集合,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU,包括:The method according to claim 10, wherein the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs to the higher layer Transmitting the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU includes:
    所述第一序列号所属的序列号集合和所述第二序列号所属的序列号集合相同,根据所述第一序列号和所述第二序列号,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。The sequence number set to which the first sequence number belongs is the same as the sequence number set to which the second sequence number belongs, and according to the first sequence number and the second sequence number, the information corresponding to the first PDU is delivered to the higher layer The first service data unit SDU and the second SDU corresponding to the second PDU.
  12. 根据权利要求10所述的方法,其特征在于,所述根据所述第一PDU的第一序列号所属的序列号集合和所述第二PDU的第二序列号所属的序列号集合,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU,包括:The method according to claim 10, wherein the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs to the higher layer Transmitting the first service data unit SDU corresponding to the first PDU and the second SDU corresponding to the second PDU includes:
    若所述第一序列号属于第一序列号集合,所述第二序列号属于第二序列号集合,则相对第二PDU对应的第二SDU,优先将第一PDU对应的第一服务数据单元SDU递交至高层。If the first sequence number belongs to the first sequence number set, and the second sequence number belongs to the second sequence number set, the first service data unit corresponding to the first PDU is given priority to the second SDU corresponding to the second PDU The SDU is submitted to the top.
  13. 根据权利要求10至12中任一项所述的方法,其特征在于,所述第一PDU的包头包括第一指示信息,所述第一指示信息用于指示所述第一序列号所属的序列号集合;所述第二PDU的包头包括第二指示信息,所述第二指示信息用于指示所述第二序列号所述的序列号集合。The method according to any one of claims 10 to 12, wherein the header of the first PDU includes first indication information, and the first indication information is used to indicate the sequence to which the first sequence number belongs Number set; the header of the second PDU includes second indication information, and the second indication information is used to indicate the sequence number set of the second sequence number.
  14. 一种装置,其特征在于,用于实现如权利要求1-9任一项所述的方法。A device, characterized by being used to implement the method according to any one of claims 1-9.
  15. 一种装置,包括处理器和存储器,所述存储器和所述处理器耦合,所述处理器用于执行权利要求1-9任一项所述的方法。A device comprising a processor and a memory, the memory is coupled to the processor, and the processor is configured to execute the method according to any one of claims 1-9.
  16. 一种装置,包括处理器和通信接口,A device including a processor and a communication interface,
    所述处理器用于根据第一SDU的数据类型,确定目标序列号集合,其中,所述目标序列号集合为第一序列号集合或第二序列号集合,根据所述第一序列号集合中的序列号得到的PDU的发送优先级高于根据所述第二序列号集合中的序列号得到的PDU的发送优先级;The processor is configured to determine a set of target serial numbers according to the data type of the first SDU, where the set of target serial numbers is a first serial number set or a second serial number set, and according to the data in the first serial number set The transmission priority of the PDU obtained by the sequence number is higher than the transmission priority of the PDU obtained according to the sequence number in the second sequence number set;
    所述处理器还用于在目标序列号集合中确定第一SDU的第一序列号;The processor is further configured to determine the first sequence number of the first SDU in the target sequence number set;
    所述处理器利用所述通信接口发送第一协议数据单元PDU,所述第一PDU是根据所述第一序列号对所述第一SDU进行封装得到的PDU。The processor transmits a first protocol data unit PDU by using the communication interface, where the first PDU is a PDU obtained by encapsulating the first SDU according to the first sequence number.
  17. 一种装置,其特征在于,用于实现如权利要求10-13任一项所述的方法。A device, characterized by being used to implement the method according to any one of claims 10-13.
  18. 一种装置,包括处理器和存储器,所述存储器和所述处理器耦合,所述处理器用于执行权利要求10-13任一项所述的方法。A device comprising a processor and a memory, the memory is coupled to the processor, and the processor is configured to execute the method according to any one of claims 10-13.
  19. 一种装置,包括处理器和通信接口,A device including a processor and a communication interface,
    所述处理器利用所述通信接口接收第一协议数据单元PDU和第二PDU;The processor receives the first protocol data unit PDU and the second PDU by using the communication interface;
    所述处理器用于根据所述第一PDU的第一序列号所属的序列号集合和所述第二PDU的第二序列号所属的序列号集合,向高层传递所述第一PDU对应的第一服务数据单元SDU和第二PDU对应的第二SDU。The processor is configured to, according to the sequence number set to which the first sequence number of the first PDU belongs and the sequence number set to which the second sequence number of the second PDU belongs, to transmit the first sequence number corresponding to the first PDU to a higher layer. The service data unit SDU and the second SDU corresponding to the second PDU.
  20. 一种通信系统,包括权利要求14-16任一项所述的装置,和权利要求17-19任一项所述的装置。A communication system, comprising the device according to any one of claims 14-16, and the device according to any one of claims 17-19.
  21. 一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行权利要求1-13任一项所述的方法。A computer-readable storage medium, comprising instructions, which when run on a computer, causes the computer to execute the method according to any one of claims 1-13.
  22. 一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行权利 要求1-13任一项所述的方法。A computer program product comprising instructions, which when run on a computer, cause the computer to execute the method of any one of claims 1-13.
PCT/CN2020/077382 2019-04-15 2020-03-02 Method and apparatus for transmitting data WO2020211549A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910297232.0A CN111835657A (en) 2019-04-15 2019-04-15 Method and device for transmitting data
CN201910297232.0 2019-04-15

Publications (1)

Publication Number Publication Date
WO2020211549A1 true WO2020211549A1 (en) 2020-10-22

Family

ID=72836846

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/077382 WO2020211549A1 (en) 2019-04-15 2020-03-02 Method and apparatus for transmitting data

Country Status (2)

Country Link
CN (1) CN111835657A (en)
WO (1) WO2020211549A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938431B (en) * 2021-09-27 2023-06-23 中国联合网络通信集团有限公司 Burst data packet transmission method and device and electronic equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756258A (en) * 2004-09-28 2006-04-05 华为技术有限公司 Information transmission method
CN1917508A (en) * 2005-08-19 2007-02-21 鸿富锦精密工业(深圳)有限公司 Device of wireless local area network and method for numbering serial number of frames
CN1921346A (en) * 2005-08-24 2007-02-28 华为技术有限公司 Data segmentation cascade transmitting method
CN101115231A (en) * 2005-02-04 2008-01-30 华为技术有限公司 Information transmission system
US20180098241A1 (en) * 2016-09-30 2018-04-05 Huawei Technologies Co., Ltd. Method and apparatus for ordering of protocol data unit delivery
CN108289065A (en) * 2017-01-10 2018-07-17 华为技术有限公司 Data processing method, device and system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8743905B2 (en) * 2008-12-22 2014-06-03 Qualcomm Incorporated Method and apparatus for bundling and ciphering data
CN109392012B (en) * 2017-08-11 2020-12-04 华为技术有限公司 Data processing method and related equipment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1756258A (en) * 2004-09-28 2006-04-05 华为技术有限公司 Information transmission method
CN101115231A (en) * 2005-02-04 2008-01-30 华为技术有限公司 Information transmission system
CN1917508A (en) * 2005-08-19 2007-02-21 鸿富锦精密工业(深圳)有限公司 Device of wireless local area network and method for numbering serial number of frames
CN1921346A (en) * 2005-08-24 2007-02-28 华为技术有限公司 Data segmentation cascade transmitting method
US20180098241A1 (en) * 2016-09-30 2018-04-05 Huawei Technologies Co., Ltd. Method and apparatus for ordering of protocol data unit delivery
CN108289065A (en) * 2017-01-10 2018-07-17 华为技术有限公司 Data processing method, device and system

Also Published As

Publication number Publication date
CN111835657A (en) 2020-10-27

Similar Documents

Publication Publication Date Title
US11696202B2 (en) Communication method, base station, terminal device, and system
WO2018059590A1 (en) Data processing method, device, and system
JP2019520727A (en) Relay transmission method and apparatus
WO2018227814A1 (en) Data indicating method, device and communication system
US11438787B2 (en) Transmission control protocol (TCP) based control of a wireless user device
US11653412B2 (en) Data transmission method and communications apparatus for communication of data from different service types or different destination addresses
WO2019034130A1 (en) Transmission method, transmitting terminal and receiving terminal
WO2019101054A1 (en) Aggregation rate control method, device and system
US20220368494A1 (en) Uplink re-transmission with compact memory usage
WO2019019150A1 (en) Data transmission method, terminal device and network device
US20230105582A1 (en) Modular 5g ue layer-2 data stack solutions for high throughput and low latency data transfer
US20220368782A1 (en) Baseband chip and method for layer 2 downlink data processing
US20220150332A1 (en) Method for transmitting data, sending end device and receiving end device
WO2020211549A1 (en) Method and apparatus for transmitting data
WO2022001738A1 (en) Mobile edge computing processing method, and related device
WO2021051119A2 (en) Apparatus and method of layer 2 data processing using flexible layer 2 circuits
WO2019085920A1 (en) Information transmission method and communication device
WO2020147039A1 (en) Ethernet frame header compression processing method, device and chip and computer program
WO2022063187A1 (en) Communication method and apparatus
KR102179212B1 (en) Method and apparatus for transmitting control information
WO2021087729A1 (en) Method and apparatus for indicating decompressed object, and communication device
WO2018053685A1 (en) Data encapsulation method and device, and communication system
WO2019109260A1 (en) Method, device, and unlicensed access point for accessing radio access network
EP4380226A1 (en) Communication method and apparatus
WO2024011463A1 (en) Method and apparatus for processing data, and communication device

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20791743

Country of ref document: EP

Kind code of ref document: A1