WO2018121742A1 - Method and device for transmitting stream data - Google Patents
Method and device for transmitting stream data Download PDFInfo
- Publication number
- WO2018121742A1 WO2018121742A1 PCT/CN2017/119886 CN2017119886W WO2018121742A1 WO 2018121742 A1 WO2018121742 A1 WO 2018121742A1 CN 2017119886 W CN2017119886 W CN 2017119886W WO 2018121742 A1 WO2018121742 A1 WO 2018121742A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- protocol
- transmission
- stream data
- packet
- response message
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/02—Protocol performance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Definitions
- the present invention relates to the field of stream data transmission technologies, and in particular, to a method for transmitting stream data and a device for transmitting stream data.
- Stream data is data that can be transmitted on the network by means of streaming.
- RTMP Real Time Messaging Protocol
- HLS HTTP Live Streaming (HTTP-based streaming media network transmission protocol)
- RTP Real-time Transport Protocol, a transport layer protocol for multimedia data streams on the Internet.
- the present invention has been made in order to provide a method and a corresponding apparatus for transmitting stream data that overcomes the above problems or at least partially solves or alleviates the above problems.
- a method for transmitting stream data including the steps of:
- the protocol configuration information includes a calling condition and a priority configured for each transport protocol, and the protocol configuration information is transmitted according to history of multiple clients under each transport protocol.
- a state generation where the calling condition includes at least one of a network operator used by the current device and a geographical location;
- Determining, in the at least one transmission protocol that meets the corresponding calling condition, the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol
- the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, and each response message records the transmission result of the plurality of sent stream packets.
- a streaming data transmission apparatus including:
- a configuration information receiving module configured to receive protocol configuration information that is sent by the management terminal to the current transit node;
- the protocol configuration information includes a calling condition and a priority configured for each transport protocol, where the protocol configuration information is based on multiple clients.
- the historical transmission status of each transmission protocol is generated, and the calling condition includes at least one of a network operator used by the current device and a geographical location;
- Calling a request receiving module configured to receive a call request for a transport protocol by using a protocol interface, where the protocol interface encapsulates multiple transport protocols
- An improved protocol determining module configured to determine, in the at least one transmission protocol that meets the corresponding calling condition, the highest priority transmission protocol is an improved protocol based on a user datagram protocol;
- a communication link establishing module configured to establish a communication link by multiple handshakes
- the stream data transmission module is configured to perform stream data transmission according to the selected improved protocol, and receive the feedback response message, and each response message records the transmission result of the plurality of sent stream data packets.
- a computer program comprising computer readable code that, when executed on a computing device, causes the computing device to perform streaming data as described above Transmission method.
- a computer readable medium wherein the computer program described above is stored.
- a method and an apparatus for transmitting stream data by receiving protocol configuration information sent by a management terminal to a current transport node, receiving a call request for a transport protocol through a protocol interface, and determining at least one transport protocol that satisfies a corresponding call condition
- the highest priority transmission protocol is an improved protocol based on the user datagram protocol.
- the communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the history can be
- the transmission data is selected for different network operators and regions, and a suitable transmission protocol is proposed.
- An improved protocol with lower delay and reliability than the UDP protocol is proposed, and the applicable transmission protocol is selected for different network conditions for streaming data. Transmission, and a preferred improved protocol is also proposed, which solves the problem of high delay of the general public stream data transmission protocol.
- FIG. 1 is a schematic flow chart showing the steps of a method for transmitting stream data according to Embodiment 1 of the present invention
- FIG. 2 is a schematic flow chart showing the steps of a method for transmitting stream data according to Embodiment 2 of the present invention
- FIG. 3 is a schematic flow chart showing the steps of a method for transmitting stream data according to Embodiment 3 of the present invention
- FIG. 4 is a block diagram showing the structure of a stream data transmission apparatus according to Embodiment 4 of the present invention.
- Figure 5 is a schematic block diagram showing a computing device for performing the method according to the present invention.
- Fig. 6 schematically shows a storage unit for holding or carrying program code implementing the method according to the invention.
- FIG. 1 a flow chart of a method for transmitting a stream data according to a first embodiment of the present invention is shown.
- Step 101 Receive protocol configuration information that is sent by the management terminal to the current transit node.
- Stream data is data that can be transmitted over the network by means of streaming, and stream data can be transmitted from one node to at least one transport node.
- a transport node is a server that can be used to receive, store, and distribute streaming data.
- the protocol configuration information is information for configuring each protocol of the streaming data transmission, and specifically includes a calling condition and a priority configured for each transport protocol, where the calling condition includes at least one of a network operator used by the current device and a geographical location, and a priority. The priority of each transport protocol is called when the call conditions are the same.
- the protocol configuration information can be generated according to the historical transmission status of multiple clients under each transport protocol. For example, according to the transmission speeds, network fluctuations, and the like reported by the multiple clients, the network operator and the domain in which the current device is used are generated, and the configuration information of the transmission protocol is invoked.
- the transport protocol refers to a protocol of the transport layer, and can be mainly used for transmitting stream data between devices of various servers, personal computers, mobile terminals and the like. Specifically, it may include TCP (English full name: Transmission Control Protocol, Chinese name: Transmission Control Protocol), UDP (English full name: User Datagram Protocol, Chinese name: User Datagram Protocol).
- the management terminal is a server that generates protocol configuration information. The management terminal can receive the historical transmission status reported by multiple clients, and generate protocol configuration information according to the protocol configuration information, and send the protocol configuration information to each transmission node. Protocol configuration information.
- Step 102 Receive a call request for a transport protocol through a protocol interface.
- the protocol interface is an interface encapsulated with multiple transport protocols
- the call request refers to a request for selecting a transport protocol for the transport stream data, and specifically, the call request for the transport protocol may be received through the protocol interface.
- the transport protocols encapsulated by the protocol interface may include transport control protocols, user datagram protocols, and other transport protocols.
- Step 103 Determine, in the at least one transmission protocol that meets the corresponding calling condition, that the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
- the at least one transmission protocol that satisfies the calling condition refers to at least one applicable transmission protocol determined according to the network operator of the current device corresponding to the calling request and the geographical location.
- the transmission protocol with the highest priority is selected among the at least one transmission protocol satisfying the calling condition, and the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
- the improved protocol is a protocol for improving the user datagram protocol, specifically, after the stream data transmission is performed, the protocol connection packet is transmitted on the basis of the user datagram protocol, and the other end of the transmission establishes a communication link by multiple handshakes. Transmitting data based on the user datagram protocol, receiving feedback response information, and each response message records the transmission result of the plurality of sent stream data packets.
- step 104 a communication link is established by multiple handshakes.
- the current device can establish a communication link with the other end of the transmission by multiple handshakes, and the communication link is a physical channel between two nodes in the network.
- the communication link is a physical channel between two nodes in the network.
- a client it is currently possible for a client to establish a communication link with a server through a four-way handshake.
- the number of times of the handshake may be any applicable number of times. This embodiment does not limit this.
- Step 105 Perform streaming data transmission based on the selected improved protocol, and receive a feedback response message.
- each response message is a message for recording a transmission result of a plurality of sent stream data packets, and may determine, according to the response message, which stream data packets are successfully transmitted, which stream data packets are not successfully transmitted, and a sending time, etc. .
- the stream data may be transmitted based on the improved protocol. Specifically, the stream data may be transmitted in the same manner as the user datagram protocol.
- the receiver After receiving the data packet of the stream data, the receiver sends a response message and a response message. It includes whether each packet is received and sent, and then receives a feedback response message. Specifically, in the case of the data transmission, a response message may be fed back to any number of data packets, which is not limited in this embodiment.
- the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized
- the highest-level transmission protocol is an improved protocol based on the user datagram protocol.
- the communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc.
- the method further includes the step of: calculating a change value of the receiving frequency of the plurality of response messages received in sequence, and determining that the transmission jam occurs if the change value of the received frequency exceeds the set threshold.
- the receiving frequency is the frequency at which the current device sequentially receives the response message, and the receiving frequency can be obtained according to the receiving time of the multiple response messages, and then the change value of the receiving frequency of the plurality of response messages received in sequence is calculated, and the change value refers to the description receiving.
- the value of the frequency change size. When the receiving frequency changes, it means that the network has fluctuated. According to the improved protocol, if the change value exceeds the set threshold, it can be determined that the transmission jam has occurred.
- the threshold value can be any applicable value, which is not limited in this embodiment.
- a response message corresponds to a plurality of stream packets, and the time of sending the first stream packet of the plurality of stream packets is used as the start time, and the time when the response message is received is used as the difference between the end time, the end time, and the start time. It is the round-trip delay, and the change value of the reception frequency of the plurality of response messages received in sequence is calculated, that is, the change value of the round-trip delay is calculated.
- a calculation method for calculating the change value of the receiving frequency may be first dividing the size of the buffer space by the minimum round-trip delay, subtracting the size of the buffer space by the round-trip delay, and then multiplying by the minimum round-trip delay to obtain the reception.
- the change value of the frequency; the threshold can be set by first calculating the round trip delay divided by the size of the buffer space, then taking the average value and multiplying by the set coefficient, for example, 0.35, to determine the set threshold.
- the calculated change value of the received frequency and the obtained set threshold are compared, and if the change value exceeds the set threshold, it can be determined that the transmission jam has occurred.
- the reduction ratio of the cache space set for the improved protocol is used, where the cache space is used to store the flow data packet to be sent, and the reduction ratio of the improved protocol is smaller than the reduction ratio of other transmission protocols. According to the reduced ratio of the search, the normal value of the storage capacity of the cache space under non-transport congestion is reduced.
- the cache space is used to store the stream packets to be sent.
- the size of the cache space is a dynamic value, and the rate of data transfer is adjusted according to the size of the cache space.
- the size of the cache space is adjusted to control the speed of the transfer.
- the proportion of reduction or increase when adjusting the buffer space is determined according to the settings of the transmission protocol.
- the reduction ratio of the improved protocol is smaller than the reduction ratio of other transmission protocols, for example, the reduction ratio of the improved protocol setting is smaller than the reduction ratio set by the TCP protocol.
- the reduction ratio can be any applicable value, which is not limited in this embodiment.
- the recovery ratio of the cache space set for the improved protocol is searched, and the recovery ratio of the improved protocol is greater than the recovery ratio of other transmission protocols, according to the search.
- the recovery ratio at least once, resets the current storage capacity of the cache space until the storage capacity returns to a normal value under non-transport congestion.
- the recovery ratio of the improved protocol is greater than the recovery ratio of other transport protocols. According to the recovery ratio of the improved protocol, the current cache space is reset at least once. Storage capacity until the storage capacity returns to the normal value under non-transport congestion.
- the recovery ratio may be set to one percent recovery or one hundred percent recovery at a time, and the recovery ratio may be any applicable value, which is not limited in this embodiment. Since the recovery ratio setting of the improved protocol is higher than the value set by other protocols, after the network is restored, the improved protocol can be quickly restored to the transmission speed before blocking.
- FIG. 2 is a schematic flow chart of a method for transmitting a stream data according to a second embodiment of the present invention, which may specifically include the following steps:
- Step 201 Receive protocol configuration information that is sent by the management terminal to the current transit node.
- Step 202 Receive a call request for a transport protocol through a protocol interface.
- Step 203 Determine, in the at least one transmission protocol that meets the corresponding calling condition, that the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
- Step 204 establishing a communication link by multiple handshakes.
- Step 205 Perform streaming data transmission based on the selected improved protocol, and receive a feedback response message.
- Step 206 Monitor the current transmission status of the stream data in real time, and determine whether the current transmission status satisfies the set transmission requirement.
- the current transmission state refers to the transmission speed when the stream data is transmitted, the network fluctuation situation, etc.
- the setting transmission requirement refers to the set transmission speed or the degree of network fluctuation, etc., and monitors the current transmission state of the stream data. Determine whether the transmission speed or network fluctuation degree meets the set transmission requirement, for example, whether the transmission speed is greater than the set transmission speed, and whether the network fluctuation degree is less than the set fluctuation degree.
- any applicable transmission requirement can be set, which is not limited in this embodiment.
- the current transmission state includes a receiving time of the response message
- a preferred implementation manner of determining whether the current transmission state meets the configured transmission requirement is: determining, for the flow data packet, The receiving time of the response message is within a set time period after the stream packet is sent, and if so, it is determined that the set transmission request is satisfied.
- the current transmission state includes the receiving time of the response message, and the receiving time of the response message of the plurality of streaming data packets is determined within a set time period after the streaming data packet is sent, and the set time period may be any applicable time length, which is implemented by the present invention. This example does not limit this. If so, it is determined that the set transmission request is satisfied, and if not, it is determined that the set transmission request is not satisfied.
- Step 207 When the current transmission state does not meet the set transmission requirement, select a transmission protocol with the highest priority that meets the corresponding calling condition from the remaining transmission protocols, and switch to the reselected transmission protocol.
- the reception time of the response information of the stream data packet is outside the set time period after the stream data packet is sent. From the remaining transmission protocols, the transmission protocol with the highest priority that satisfies the corresponding calling condition is selected and switched to the reselected transmission protocol.
- Step 208 Find the last successfully transmitted target stream data packet according to the received at least one response message.
- the response message records the information that each stream data packet is successfully accepted, and finds the last successfully sent stream data packet according to the received at least one response message, and the found stream data packet is the target stream. data pack.
- the response message records the number of each sent stream packet, and the identifier is used to find the last successfully sent target stream packet according to the received at least one response message.
- the method is: searching, from the at least one response message, at least one stream data packet that is successfully sent; and determining, from the at least one stream data packet, the stream data packet whose last number of the transmission number is sorted as the target stream data packet.
- the response message records the number of each stream packet that has been sent. Each stream packet corresponds to a number, and the information corresponding to each number identifier is successfully sent. From at least one response message, at least one stream data packet that is successfully transmitted is searched, and from the stream data packet that is searched, the stream data packet whose transmission number is sorted to the last bit is determined as the target stream data packet.
- Step 209 starting with the next stream packet of the target stream packet, starting the transmission of the stream data under the reselected transport protocol.
- the stream data is transmitted based on the reselected transport protocol starting from the next stream packet of the target stream packet. For example, you can switch to the TCP protocol for streaming data transmission.
- the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized
- the highest-level transmission protocol is an improved protocol based on the user datagram protocol.
- the communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc.
- the stream data transmission is switched according to the calling condition and the priority to other available transmission protocols, thereby increasing the reliability of the stream data transmission.
- FIG. 3 a schematic flowchart of a step of a method for transmitting stream data according to a third embodiment of the present invention is shown, which may specifically include the following steps:
- Step 301 Receive protocol configuration information that is sent by the management terminal to the current transit node.
- Step 302 Receive a call request for a transport protocol through a protocol interface.
- Step 303 Determine, in the at least one transmission protocol that meets the corresponding calling condition, that the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
- step 304 a communication link is established by multiple handshakes.
- Step 305 Perform stream data transmission based on the selected improved protocol, and receive a feedback response message.
- Step 306 Parse the transmission result of each sent data packet from the received response message.
- the result of sending the sent data packet is parsed from the received response message, which may be the number corresponding to the recorded stream data packet in the response message, and whether the corresponding number is successfully sent.
- the response message By parsing the response message, it is possible to accurately determine which packet has been lost and which packet has been successfully received by the receiving end.
- Step 307 Find a stream packet whose transmission result is a transmission failure, and retransmit the stream packet that is found.
- the flow data packet whose transmission result is failed to be sent that is, the flow data packet that is not successfully received by the receiving end, is searched, and the stream data packet that is found is immediately retransmitted, without the TCP protocol. Wait until the timeout is repeated.
- the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized
- the highest-level transmission protocol is an improved protocol based on the user datagram protocol.
- the communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc.
- the lost stream data packet is retransmitted immediately, without waiting for the timeout to be retransmitted, and there is no need to retransmit the stream data packet as in the TCP protocol, thereby improving the real-time performance of the packet loss retransmission and The efficiency of retransmission.
- FIG. 4 a block diagram of a structure of a stream data transmission apparatus according to Embodiment 4 of the present invention is shown, which may specifically include the following modules:
- the configuration information receiving module 401 is configured to receive protocol configuration information that is sent by the management terminal to the current transit node, where the protocol configuration information includes a calling condition and a priority configured for each transport protocol, where the protocol configuration information is based on multiple clients. Generating a historical transmission state under each transmission protocol, where the calling condition includes at least one of a network operator used by the current device and a geographical location;
- the call request receiving module 402 is configured to receive a call request for a transport protocol by using a protocol interface, where the protocol interface encapsulates multiple transport protocols;
- the improved protocol determining module 403 is configured to determine, in the at least one transmission protocol that meets the corresponding calling condition, that the highest priority transmission protocol is an improved protocol based on the user datagram protocol;
- a communication link establishing module 404 configured to establish a communication link by multiple handshakes
- the stream data transmission module 405 is configured to perform stream data transmission based on the selected improved protocol, and receive a feedback response message, where each response message records a transmission result of the plurality of sent stream data packets.
- the device further includes:
- the transmission status monitoring module is configured to monitor the current transmission status of the stream data in real time, and determine whether the current transmission status satisfies the set transmission requirement.
- the current transmission status includes a receiving time of the response message
- the transmission status monitoring module includes:
- the time judging submodule is configured to determine that the receiving time of the response message for the streaming data packet is within a set time period after the streaming data packet is sent, and if yes, determining that the set transmission request is satisfied.
- the device further includes:
- a transmission protocol switching module configured to: when the current transmission state does not meet the set transmission requirement, select a transmission protocol with the highest priority that meets the corresponding calling condition from the remaining transmission protocols, and switch to the reselected transmission protocol.
- the device further includes:
- a packet search module configured to search for a last successfully sent target stream data packet according to the received at least one response message
- a protocol reselection module is configured to start streaming data transmission from a next stream data packet of the target stream data packet under the reselected transport protocol.
- the number of each sent stream data packet is recorded in the response message, and the data packet search module includes:
- a stream packet searching submodule configured to: find, from the at least one response message, at least one stream packet that is successfully sent;
- the stream packet determining submodule is configured to determine, from the found at least one stream packet, a stream packet whose last number of the transmission number is sorted as a target stream packet.
- the device further includes:
- a sending result parsing module configured to parse a sending result of each sent data packet from the received response message
- the stream packet retransmission module is configured to search for a stream packet whose transmission result is failed to be transmitted, and retransmit the stream packet to be searched.
- the device further includes:
- a change value calculation module configured to calculate a change value of a receive frequency of the plurality of response messages received in sequence
- the transmission jam determination module is configured to determine that a transmission jam occurs if the change value of the reception frequency exceeds a set threshold.
- the method further includes:
- a reduction ratio finding module configured to find a reduction ratio of a cache space set for an improved protocol, where the cache space is used to store a stream data packet to be sent, and the reduction ratio of the improvement protocol is smaller than a reduction ratio of other transmission protocols;
- the storage capacity reduction module is configured to reduce the normal value of the storage capacity of the cache space under non-transport congestion according to the reduced ratio of the search.
- the method further includes:
- the recovery ratio finding module is configured to search for a recovery ratio of the cache space set for the improved protocol if the problem of detecting the transmission congestion is removed, and the recovery ratio of the improved protocol is greater than the recovery ratio of other transmission protocols;
- the storage capacity resetting module is configured to reset the current storage capacity of the cache space at least once according to the restored recovery ratio until the storage capacity returns to a normal value under the non-transport congestion.
- the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized
- the highest-level transmission protocol is an improved protocol based on the user datagram protocol.
- the communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc.
- the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof. It will be understood by those skilled in the art that a microprocessor or digital signal processor (DSP) may be used in practice to implement some or some of some or all of the components of the method and apparatus for transmitting streaming data in accordance with embodiments of the present invention. All features.
- the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
- Such a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
- Figure 5 illustrates a transport computing device, such as an application server, that can implement streaming data in accordance with the present invention.
- the computing device conventionally includes a processor 510 and a computer program product or computer readable medium in the form of a memory 520.
- the memory 520 may be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), an EPROM, a hard disk, or a ROM.
- Memory 520 has a memory space 530 for program code 531 for performing any of the method steps described above.
- storage space 530 for program code may include various program code 531 for implementing various steps in the above methods, respectively.
- the program code can be read from or written to one or more computer program products.
- These computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks. Such computer program products are typically portable or fixed storage units as described with reference to FIG.
- the storage unit may have storage segments, storage spaces, and the like that are similarly arranged to memory 520 in the computing device of FIG.
- the program code can be compressed, for example, in an appropriate form.
- the storage unit includes computer readable code 531 ', ie, code readable by a processor, such as 510, that when executed by a computing device causes the computing device to perform each of the methods described above step.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本发明涉及流数据传输技术领域,尤其涉及一种流数据的传输方法以及一种流数据的传输装置。The present invention relates to the field of stream data transmission technologies, and in particular, to a method for transmitting stream data and a device for transmitting stream data.
流数据为可以采用流式传输的方式在网络上传输的数据,对于流数据服务来说,常见公开的流数据传输协议比较多,例如RTMP(Real Time Messaging Protocol,实时消息传输协议)、HLS(HTTP Live Streaming,基于HTTP的流媒体网络传输协议)、RTP(Real-time Transport Protocol,用于Internet上针对多媒体数据流的一种传输层协议)等。Stream data is data that can be transmitted on the network by means of streaming. For streaming data services, there are many common stream data transmission protocols, such as RTMP (Real Time Messaging Protocol) and HLS ( HTTP Live Streaming (HTTP-based streaming media network transmission protocol), RTP (Real-time Transport Protocol, a transport layer protocol for multimedia data streams on the Internet).
但是无论是RTMP、HLS还是RTP协议都存在延迟高的问题,而直接用UDP(User Datagram Protocol,用户数据报协议),延迟比较低,但好多运营商会拦截掉UDP协议的流数据传输。并且也无法针对不同的网络状况选取适用的传输协议进行流数据的传输。However, whether RTMP, HLS or RTP protocols have high latency, and UDP (User Datagram Protocol) is used, the delay is relatively low, but many operators will intercept the streaming data transmission of UDP protocol. It is also impossible to select the applicable transport protocol for the transmission of streaming data for different network conditions.
发明内容Summary of the invention
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决或减缓上述问题的一种流数据的传输方法和相应的装置。In view of the above problems, the present invention has been made in order to provide a method and a corresponding apparatus for transmitting stream data that overcomes the above problems or at least partially solves or alleviates the above problems.
根据本发明的一个方面,提供了一种流数据的传输方法,包括步骤:According to an aspect of the present invention, a method for transmitting stream data is provided, including the steps of:
接收管理端下发至当前传输节点的协议配置信息;所述协议配置信息包括针对各传输协议配置的调用条件和优先级,所述协议配置信息根据多个客户端在各传输协议下的历史传输状态生成,所述调用条件包括当前设备使用的网络运营商、所处地域中至少一种;Receiving protocol configuration information that is sent by the management terminal to the current transit node; the protocol configuration information includes a calling condition and a priority configured for each transport protocol, and the protocol configuration information is transmitted according to history of multiple clients under each transport protocol. a state generation, where the calling condition includes at least one of a network operator used by the current device and a geographical location;
通过协议接口接收对传输协议的调用请求,所述协议接口封装有多个传输协议;Receiving a call request to a transport protocol through a protocol interface, the protocol interface encapsulating a plurality of transport protocols;
确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议;Determining, in the at least one transmission protocol that meets the corresponding calling condition, the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol;
通过多次握手建立通信链路;Establishing a communication link by multiple handshakes;
基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,各回应消息记录多个已发送的流数据包的发送结果。The stream data is transmitted based on the selected improved protocol, and the feedback response message is received, and each response message records the transmission result of the plurality of sent stream packets.
根据本发明的另一方面,提供了一种流数据的传输装置,包括:According to another aspect of the present invention, a streaming data transmission apparatus is provided, including:
配置信息接收模块,用于接收管理端下发至当前传输节点的协议配置信息;所述协议配置信息包括针对各传输协议配置的调用条件和优先级,所述协议配置信息根据多个客户端在各传输协议下的历史传输状态生成,所述调用条件包括当前设备使用的网络运营商、所处地域中至少一种;a configuration information receiving module, configured to receive protocol configuration information that is sent by the management terminal to the current transit node; the protocol configuration information includes a calling condition and a priority configured for each transport protocol, where the protocol configuration information is based on multiple clients. The historical transmission status of each transmission protocol is generated, and the calling condition includes at least one of a network operator used by the current device and a geographical location;
调用请求接收模块,用于通过协议接口接收对传输协议的调用请求,所述协议接口封装有多个传输协议;Calling a request receiving module, configured to receive a call request for a transport protocol by using a protocol interface, where the protocol interface encapsulates multiple transport protocols;
改进协议确定模块,用于确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议;An improved protocol determining module, configured to determine, in the at least one transmission protocol that meets the corresponding calling condition, the highest priority transmission protocol is an improved protocol based on a user datagram protocol;
通信链路建立模块,用于通过多次握手建立通信链路;a communication link establishing module, configured to establish a communication link by multiple handshakes;
流数据传输模块,用于基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,各回应消息记录多个已发送的流数据包的发送结果。The stream data transmission module is configured to perform stream data transmission according to the selected improved protocol, and receive the feedback response message, and each response message records the transmission result of the plurality of sent stream data packets.
根据本发明的又一个方面,提供了一种计算机程序,其包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行如上文所述的流数据的传输方法。According to still another aspect of the present invention, a computer program is provided, comprising computer readable code that, when executed on a computing device, causes the computing device to perform streaming data as described above Transmission method.
根据本发明的再一个方面,提供了一种计算机可读介质,其中存储了上述的计算机程序。According to still another aspect of the present invention, a computer readable medium is provided, wherein the computer program described above is stored.
本发明的有益效果为:The beneficial effects of the invention are:
根据本发明的一种流数据的传输方法和装置,通过接收管理端下发至当前传输节点的协议配置信息,通过协议接口接收对传输协议的调用请求,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议,通过多次握手建立通信链路,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,使得可以根据历史传输数据针对不同的网络运营商,地域等选取适用的传输协议,还提出了一种延迟低,且比UDP协议可靠的改进协议,实现了针对不同的网络状况选取适用的传输协议进行流数据的传输,而且还提出了一种优选的改进协议,解决了一般公有的流数据传输协议延迟高的问题。According to the present invention, a method and an apparatus for transmitting stream data, by receiving protocol configuration information sent by a management terminal to a current transport node, receiving a call request for a transport protocol through a protocol interface, and determining at least one transport protocol that satisfies a corresponding call condition The highest priority transmission protocol is an improved protocol based on the user datagram protocol. The communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the history can be The transmission data is selected for different network operators and regions, and a suitable transmission protocol is proposed. An improved protocol with lower delay and reliability than the UDP protocol is proposed, and the applicable transmission protocol is selected for different network conditions for streaming data. Transmission, and a preferred improved protocol is also proposed, which solves the problem of high delay of the general public stream data transmission protocol.
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。The above description is only an overview of the technical solutions of the present invention, and the above-described and other objects, features and advantages of the present invention can be more clearly understood. Specific embodiments of the invention are set forth below.
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的, 而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:Various other advantages and benefits will become apparent to those skilled in the art from a The drawings are only for the purpose of illustrating the preferred embodiments and are not to be construed as limiting. Throughout the drawings, the same reference numerals are used to refer to the same parts. In the drawing:
图1示意性地示出了根据本发明实施例一的一种流数据的传输方法的步骤流程示意图;FIG. 1 is a schematic flow chart showing the steps of a method for transmitting stream data according to Embodiment 1 of the present invention; FIG.
图2示意性地示出了根据本发明实施例二的一种流数据的传输方法的步骤流程示意图;FIG. 2 is a schematic flow chart showing the steps of a method for transmitting stream data according to Embodiment 2 of the present invention; FIG.
图3示意性地示出了根据本发明实施例三的一种流数据的传输方法的步骤流程示意图;FIG. 3 is a schematic flow chart showing the steps of a method for transmitting stream data according to Embodiment 3 of the present invention; FIG.
图4示意性地示出了根据本发明实施例四的一种流数据的传输装置的结构框图;FIG. 4 is a block diagram showing the structure of a stream data transmission apparatus according to Embodiment 4 of the present invention; FIG.
图5示意性地示出了用于执行根据本发明的方法的计算设备的框图;以及;Figure 5 is a schematic block diagram showing a computing device for performing the method according to the present invention;
图6示意性地示出了用于保持或者携带实现根据本发明的方法的程序代码的存储单元。Fig. 6 schematically shows a storage unit for holding or carrying program code implementing the method according to the invention.
下面结合附图和具体的实施方式对本发明作进一步的描述。The invention is further described below in conjunction with the drawings and specific embodiments.
参照图1,示出了根据本发明实施例一的一种流数据的传输方法的步骤流程示意图,具体可以包括如下步骤:Referring to FIG. 1 , a flow chart of a method for transmitting a stream data according to a first embodiment of the present invention is shown.
步骤101,接收管理端下发至当前传输节点的协议配置信息。Step 101: Receive protocol configuration information that is sent by the management terminal to the current transit node.
流数据为可以采用流式传输的方式在网络上传输的数据,流数据可以从一个节点传输到至少一个传输节点上。传输节点为可以用于接收、存储、分发流数据的服务器。协议配置信息为配置流数据传输各协议的信息,具体包括针对各传输协议配置的调用条件和优先级,其中,调用条件包括当前设备使用的网络运营商、所处地域中至少一种,优先级为调用条件相同时调用各传输协议的优先次序。协议配置信息可以根据多个客户端在各传输协议下的历史传输状态生成。例如,根据多个客户端上报的在各传输协议下的传输速度,网络波动情况等,生成根据当前设备使用的网络运营商和域所处地域,调用传输协议的配置信息。Stream data is data that can be transmitted over the network by means of streaming, and stream data can be transmitted from one node to at least one transport node. A transport node is a server that can be used to receive, store, and distribute streaming data. The protocol configuration information is information for configuring each protocol of the streaming data transmission, and specifically includes a calling condition and a priority configured for each transport protocol, where the calling condition includes at least one of a network operator used by the current device and a geographical location, and a priority. The priority of each transport protocol is called when the call conditions are the same. The protocol configuration information can be generated according to the historical transmission status of multiple clients under each transport protocol. For example, according to the transmission speeds, network fluctuations, and the like reported by the multiple clients, the network operator and the domain in which the current device is used are generated, and the configuration information of the transmission protocol is invoked.
在本发明实施例中,传输协议是指传输层的协议,主要可以用于各种服务器、个人计算机、移动终端等设备相互之间传输流数据。具体可以包括TCP(英文全称:Transmission Control Protocol,中文名:传输控制协议)、UDP(英文全称:User Datagram Protocol,中文名:用户数据报协议)等。管理端为协议配置信息生成的服务器,管理端可以接收多个客户端上报的历 史传输状态,并据此生成协议配置信息,将协议配置信息发送到各传输节点,当前传输节点接收管理端下发的协议配置信息。In the embodiment of the present invention, the transport protocol refers to a protocol of the transport layer, and can be mainly used for transmitting stream data between devices of various servers, personal computers, mobile terminals and the like. Specifically, it may include TCP (English full name: Transmission Control Protocol, Chinese name: Transmission Control Protocol), UDP (English full name: User Datagram Protocol, Chinese name: User Datagram Protocol). The management terminal is a server that generates protocol configuration information. The management terminal can receive the historical transmission status reported by multiple clients, and generate protocol configuration information according to the protocol configuration information, and send the protocol configuration information to each transmission node. Protocol configuration information.
步骤102,通过协议接口接收对传输协议的调用请求。Step 102: Receive a call request for a transport protocol through a protocol interface.
在本发明实施例中,协议接口为封装有多个传输协议的接口,调用请求是指为传输流数据选择传输协议的请求,具体可以通过协议接口接收对传输协议的调用请求。协议接口封装的传输协议可以包括传输控制协议、用户数据报协议以及其他传输协议。In the embodiment of the present invention, the protocol interface is an interface encapsulated with multiple transport protocols, and the call request refers to a request for selecting a transport protocol for the transport stream data, and specifically, the call request for the transport protocol may be received through the protocol interface. The transport protocols encapsulated by the protocol interface may include transport control protocols, user datagram protocols, and other transport protocols.
步骤103,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议。Step 103: Determine, in the at least one transmission protocol that meets the corresponding calling condition, that the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
在本发明实施例中,满足调用条件的至少一个传输协议是指根据调用请求对应的当前设备的网络运营商、所处地域确定的适用的至少一个传输协议。满足调用条件的至少一个传输协议中选取优先级最高的传输协议,并且优先级最高的传输协议为基于用户数据报协议的改进协议。其中,改进协议为一种对用户数据报协议进行改进的协议,具体为在用户数据报协议的基础上在流数据传输前通过协议连接包与传输的另一端通过多次握手建立通信链路后,基于用户数据报协议进行流数据的传输,接收反馈的回应信息,各回应消息记录多个已发送的流数据包的发送结果。In the embodiment of the present invention, the at least one transmission protocol that satisfies the calling condition refers to at least one applicable transmission protocol determined according to the network operator of the current device corresponding to the calling request and the geographical location. The transmission protocol with the highest priority is selected among the at least one transmission protocol satisfying the calling condition, and the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol. The improved protocol is a protocol for improving the user datagram protocol, specifically, after the stream data transmission is performed, the protocol connection packet is transmitted on the basis of the user datagram protocol, and the other end of the transmission establishes a communication link by multiple handshakes. Transmitting data based on the user datagram protocol, receiving feedback response information, and each response message records the transmission result of the plurality of sent stream data packets.
步骤104,通过多次握手建立通信链路。In
在本发明实施例中,当前设备可以通过多次握手与传输的另一端建立通信链路,通信链路为网络中两个节点之间的物理通道。例如,当前设客户端可以通过四次握手与服务器建立通信链路。握手的次数具体可以为任意适用的次数,本实施例对此不做限定。In the embodiment of the present invention, the current device can establish a communication link with the other end of the transmission by multiple handshakes, and the communication link is a physical channel between two nodes in the network. For example, it is currently possible for a client to establish a communication link with a server through a four-way handshake. The number of times of the handshake may be any applicable number of times. This embodiment does not limit this.
步骤105,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息。Step 105: Perform streaming data transmission based on the selected improved protocol, and receive a feedback response message.
在本发明实施例中,各回应消息为记录多个已发送的流数据包的发送结果的消息,可以根据回应消息确定哪些流数据包发送成功,哪些流数据包未发送成功,以及发送时间等。In the embodiment of the present invention, each response message is a message for recording a transmission result of a plurality of sent stream data packets, and may determine, according to the response message, which stream data packets are successfully transmitted, which stream data packets are not successfully transmitted, and a sending time, etc. .
连接建立后,可以基于改进协议进行流数据的传输,具体可以是与用户数据报协议相同的方式进行流数据的传输,接收方收到流数据的数据包后,就会发送回应消息,回应消息中包括各数据包是否接收到以及发送时间,然后接收反馈的回应消息。具体可以在流数据传输时,可以针对任意个数的数据包反馈一个回应消息,本实施例对此不做限制。After the connection is established, the stream data may be transmitted based on the improved protocol. Specifically, the stream data may be transmitted in the same manner as the user datagram protocol. After receiving the data packet of the stream data, the receiver sends a response message and a response message. It includes whether each packet is received and sent, and then receives a feedback response message. Specifically, in the case of the data transmission, a response message may be fed back to any number of data packets, which is not limited in this embodiment.
综上所述,依据本发明实施例,通过接收管理端下发至当前传输节点的协议配置信息,通过协议接口接收对传输协议的调用请求,确定满足对应调 用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议,通过多次握手建立通信链路,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,使得可以根据历史传输数据针对不同的网络运营商,地域等选取适用的传输协议,还提出了一种延迟低,且比UDP协议可靠的改进协议,实现了针对不同的网络状况选取适用的传输协议进行流数据的传输,而且还提出了一种优选的改进协议,解决了一般公有的流数据传输协议延迟高的问题。In summary, according to the embodiment of the present invention, by receiving the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized The highest-level transmission protocol is an improved protocol based on the user datagram protocol. The communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc. select the applicable transmission protocol, and also propose an improved protocol with low delay and reliability than the UDP protocol, which realizes the transmission of stream data for selecting different applicable network protocols for different network conditions, and A preferred improved protocol has also been proposed, which solves the problem of high delay of the general public stream data transmission protocol.
在本发明实施例中,优选地,还可以包括步骤:计算顺次接收的多个回应消息的接收频率的变化值,若接收频率的变化值超出设定阈值,则确定发生传输堵塞。In an embodiment of the present invention, preferably, the method further includes the step of: calculating a change value of the receiving frequency of the plurality of response messages received in sequence, and determining that the transmission jam occurs if the change value of the received frequency exceeds the set threshold.
接收频率为当前设备顺次接收回应消息的频率,根据多个回应消息的接收时间可以得到接收频率,继而计算出顺次接收的多个回应消息的接收频率的变化值,变化值是指描述接收频率变化大小的值。接收频率发生变化时意味着网络出现了波动,根据改进协议,如果变化值超出设定阈值,就可以确定发生了传输堵塞。设定阈值可以是任意适用的值,本实施例对此不作限制。The receiving frequency is the frequency at which the current device sequentially receives the response message, and the receiving frequency can be obtained according to the receiving time of the multiple response messages, and then the change value of the receiving frequency of the plurality of response messages received in sequence is calculated, and the change value refers to the description receiving. The value of the frequency change size. When the receiving frequency changes, it means that the network has fluctuated. According to the improved protocol, if the change value exceeds the set threshold, it can be determined that the transmission jam has occurred. The threshold value can be any applicable value, which is not limited in this embodiment.
一个回应消息对应多个流数据包,从多个流数据包的首个流数据包的发出时间作为起始时间,将接收到回应消息的时间作为终止时间,终止时间和起始时间的差值就是往返时延,计算顺次接收的多个回应消息的接收频率的变化值,就是计算往返时延的变化值。A response message corresponds to a plurality of stream packets, and the time of sending the first stream packet of the plurality of stream packets is used as the start time, and the time when the response message is received is used as the difference between the end time, the end time, and the start time. It is the round-trip delay, and the change value of the reception frequency of the plurality of response messages received in sequence is calculated, that is, the change value of the round-trip delay is calculated.
例如,计算接收频率的变化值的一种计算方式可以是首先缓存空间的大小除以最小往返时延,再减去缓存空间的大小除以往返时延,然后乘以最小往返时延,得到接收频率的变化值;设定阈值可以先计算每个往返时延除以缓存空间的大小,再取平均值,乘以设定的系数,比如说0.35,来确定设定阈值。比较计算得到的接收频率的变化值和得到的设定阈值,如果变化值超出设定阈值,就可以确定发生了传输堵塞。For example, a calculation method for calculating the change value of the receiving frequency may be first dividing the size of the buffer space by the minimum round-trip delay, subtracting the size of the buffer space by the round-trip delay, and then multiplying by the minimum round-trip delay to obtain the reception. The change value of the frequency; the threshold can be set by first calculating the round trip delay divided by the size of the buffer space, then taking the average value and multiplying by the set coefficient, for example, 0.35, to determine the set threshold. The calculated change value of the received frequency and the obtained set threshold are compared, and if the change value exceeds the set threshold, it can be determined that the transmission jam has occurred.
在本发明实施例中,优选地,查找针对改进协议设置的缓存空间的缩减比例,所述缓存空间用于存储待发送的流数据包,所述改进协议的缩减比例小于其他传输协议的缩减比例,按照查找的缩减比例,对所述缓存空间的存储容量在非传输堵塞下的正常值进行缩减。In the embodiment of the present invention, preferably, the reduction ratio of the cache space set for the improved protocol is used, where the cache space is used to store the flow data packet to be sent, and the reduction ratio of the improved protocol is smaller than the reduction ratio of other transmission protocols. According to the reduced ratio of the search, the normal value of the storage capacity of the cache space under non-transport congestion is reduced.
缓存空间用于存储待发送的流数据包,缓存空间的大小是个动态的值,传输数据的速率都是根据缓存空间的大小来调整的。调整缓存空间大小是为了控制传输过程中的速度。调整缓存空间时缩减或增加的比例根据传输协议的设定确定。改进协议的缩减比例小于其他传输协议的缩减比例,例如改进协议设置的缩减比例小于TCP协议设置的缩减比例。缩减比例可以为任意 适用的值,本实施例对此不做限制。The cache space is used to store the stream packets to be sent. The size of the cache space is a dynamic value, and the rate of data transfer is adjusted according to the size of the cache space. The size of the cache space is adjusted to control the speed of the transfer. The proportion of reduction or increase when adjusting the buffer space is determined according to the settings of the transmission protocol. The reduction ratio of the improved protocol is smaller than the reduction ratio of other transmission protocols, for example, the reduction ratio of the improved protocol setting is smaller than the reduction ratio set by the TCP protocol. The reduction ratio can be any applicable value, which is not limited in this embodiment.
在传输堵塞时,查找改进协议设置的缓存空间的缩减比例,按照改进协议设置的缩减比例对缓存空间的存储容量在非传输堵塞下的正常值进行缩减。由于改进协议设置的缩减比例比其他传输协议的缩减比例小,就会在网络堵塞时占用更多的带宽,获得更快的传输速度。When the transmission is blocked, find the reduction ratio of the cache space that is improved by the protocol setting, and reduce the normal value of the storage capacity of the cache space under non-transport congestion according to the reduction ratio set by the improved protocol. Since the reduction ratio of the improved protocol settings is smaller than that of other transmission protocols, it will occupy more bandwidth when the network is blocked, and achieve faster transmission speed.
在本发明实施例中,优选地,若检测到传输堵塞的问题解除,则查找针对改进协议设置的缓存空间的恢复比例,所述改进协议的恢复比例大于其他传输协议的恢复比例,按照查找的恢复比例,至少一次重新设置所述缓存空间的当前存储容量,直至所述存储容量恢复到非传输堵塞下的正常值。In the embodiment of the present invention, preferably, if the problem of detecting the transmission congestion is removed, the recovery ratio of the cache space set for the improved protocol is searched, and the recovery ratio of the improved protocol is greater than the recovery ratio of other transmission protocols, according to the search. The recovery ratio, at least once, resets the current storage capacity of the cache space until the storage capacity returns to a normal value under non-transport congestion.
如果检测到传输堵塞的问题已经解除,就查找改进协议设置的缓存空间的恢复比例,改进协议的恢复比例大于其他传输协议的恢复比例,按照改进协议的恢复比例,至少一次重新设置缓存空间的当前存储容量,直到存储容量恢复到非传输堵塞下的正常值。例如,恢复比例可以设置为每次恢复百分之一或者一次性恢复到百分之百等,恢复比例可以为任意适用的值,本实施例对此不作限制。由于改进协议的恢复比例设置较其他协议设置的值高,在网络恢复后,改进协议可以较快的恢复到堵塞前的传输速度。If the problem of detecting the transmission jam has been removed, look for the recovery ratio of the cache space set by the improved protocol. The recovery ratio of the improved protocol is greater than the recovery ratio of other transport protocols. According to the recovery ratio of the improved protocol, the current cache space is reset at least once. Storage capacity until the storage capacity returns to the normal value under non-transport congestion. For example, the recovery ratio may be set to one percent recovery or one hundred percent recovery at a time, and the recovery ratio may be any applicable value, which is not limited in this embodiment. Since the recovery ratio setting of the improved protocol is higher than the value set by other protocols, after the network is restored, the improved protocol can be quickly restored to the transmission speed before blocking.
参照图2,示出了根据本发明实施例二的一种流数据的传输方法的步骤流程示意图,具体可以包括如下步骤:2 is a schematic flow chart of a method for transmitting a stream data according to a second embodiment of the present invention, which may specifically include the following steps:
步骤201,接收管理端下发至当前传输节点的协议配置信息。Step 201: Receive protocol configuration information that is sent by the management terminal to the current transit node.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤202,通过协议接口接收对传输协议的调用请求。Step 202: Receive a call request for a transport protocol through a protocol interface.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤203,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议。Step 203: Determine, in the at least one transmission protocol that meets the corresponding calling condition, that the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤204,通过多次握手建立通信链路。
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤205,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息。Step 205: Perform streaming data transmission based on the selected improved protocol, and receive a feedback response message.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤206,实时监控流数据的当前传输状态,并判断所述当前传输状态是否满足设定传输要求。Step 206: Monitor the current transmission status of the stream data in real time, and determine whether the current transmission status satisfies the set transmission requirement.
在本发明实施例中,当前传输状态是指流数据传输时的传输速度,网络 波动情况等,设定传输要求是指设定的传输速度或网络波动程度等,监控流数据的当前传输状态,判断传输速度或网络波动程度是否满足设定传输要求,例如传输速度是否大于设定传输速度,网络波动程度是否小于设定波动程度。具体可以设定任意适用的传输要求,本实施例对此不做限制。In the embodiment of the present invention, the current transmission state refers to the transmission speed when the stream data is transmitted, the network fluctuation situation, etc., and the setting transmission requirement refers to the set transmission speed or the degree of network fluctuation, etc., and monitors the current transmission state of the stream data. Determine whether the transmission speed or network fluctuation degree meets the set transmission requirement, for example, whether the transmission speed is greater than the set transmission speed, and whether the network fluctuation degree is less than the set fluctuation degree. Specifically, any applicable transmission requirement can be set, which is not limited in this embodiment.
在本发明实施例中,优选地,所述当前传输状态包括回应消息的接收时间,所述判断所述当前传输状态是否满足设定传输要求的一种优选实现方式为:判断针对流数据包的回应消息的接收时间在发出流数据包后的设定时间段内,若是,则确定满足设定传输要求。In an embodiment of the present invention, preferably, the current transmission state includes a receiving time of the response message, and a preferred implementation manner of determining whether the current transmission state meets the configured transmission requirement is: determining, for the flow data packet, The receiving time of the response message is within a set time period after the stream packet is sent, and if so, it is determined that the set transmission request is satisfied.
当前传输状态包括回应消息的接收时间,判断多个流数据包的回应消息的接收时间在发出流数据包后的设定时间段内,设定时间段可以是任意适用的时间长度,本发明实施例对此不做限制。如果是,就确定满足设定传输要求,如果不是,就确定不满足设定传输要求。The current transmission state includes the receiving time of the response message, and the receiving time of the response message of the plurality of streaming data packets is determined within a set time period after the streaming data packet is sent, and the set time period may be any applicable time length, which is implemented by the present invention. This example does not limit this. If so, it is determined that the set transmission request is satisfied, and if not, it is determined that the set transmission request is not satisfied.
步骤207,当所述当前传输状态不满足设定传输要求时,从剩余的传输协议中,选取满足对应调用条件的优先级最高的传输协议,并且换至重新选取的传输协议。Step 207: When the current transmission state does not meet the set transmission requirement, select a transmission protocol with the highest priority that meets the corresponding calling condition from the remaining transmission protocols, and switch to the reselected transmission protocol.
在本发明实施例中,当前传输状态不满足设定传输要求时,例如流数据包的回应信息的接收时间在发出流数据包后的设定时间段外。从剩余的传输协议中,选取满足对应调用条件的优先级最高的传输协议,并且切换到重新选取的传输协议。In the embodiment of the present invention, when the current transmission status does not meet the set transmission requirement, for example, the reception time of the response information of the stream data packet is outside the set time period after the stream data packet is sent. From the remaining transmission protocols, the transmission protocol with the highest priority that satisfies the corresponding calling condition is selected and switched to the reselected transmission protocol.
步骤208,根据已接收的至少一个回应消息查找最后一个成功发送的目标流数据包。Step 208: Find the last successfully transmitted target stream data packet according to the received at least one response message.
在本发明实施例中,回应消息中记录有各流数据包是否成功接受的信息,根据已接收的至少一个回应消息查找到最后一个成功发送的流数据包,查找到的流数据包为目标流数据包。In the embodiment of the present invention, the response message records the information that each stream data packet is successfully accepted, and finds the last successfully sent stream data packet according to the received at least one response message, and the found stream data packet is the target stream. data pack.
在本发明实施例中,优选地,所述回应消息中记录各个已发出的流数据包的编号,所述根据已接收的至少一个回应消息查找最后一个成功发送的目标流数据包的一种实现方式为:从至少一个回应消息中,查找发送成功的至少一个流数据包;从所查找至少一个流数据包中,将发送编号排序最后一位的流数据包确定为目标流数据包。In the embodiment of the present invention, preferably, the response message records the number of each sent stream packet, and the identifier is used to find the last successfully sent target stream packet according to the received at least one response message. The method is: searching, from the at least one response message, at least one stream data packet that is successfully sent; and determining, from the at least one stream data packet, the stream data packet whose last number of the transmission number is sorted as the target stream data packet.
回应消息中记录各已发出的流数据包的编号,每个流数据包对应一个编号,对应每个编号标识是否成功发送的信息。从至少一个回应消息中,查找发送成功的至少一个流数据包,从查找的流数据包中,将发送编号排序为最后一位的流数据包确定为目标流数据包。The response message records the number of each stream packet that has been sent. Each stream packet corresponds to a number, and the information corresponding to each number identifier is successfully sent. From at least one response message, at least one stream data packet that is successfully transmitted is searched, and from the stream data packet that is searched, the stream data packet whose transmission number is sorted to the last bit is determined as the target stream data packet.
步骤209,在重新选取的传输协议下,从所述目标流数据包的下一个流 数据包开始流数据的传输。
在本发明实施例中,从目标流数据包的下一个流数据包开始,基于重新选取的传输协议进行流数据的传输。例如可以切换到TCP协议进行流数据传输。In the embodiment of the present invention, the stream data is transmitted based on the reselected transport protocol starting from the next stream packet of the target stream packet. For example, you can switch to the TCP protocol for streaming data transmission.
综上所述,依据本发明实施例,通过接收管理端下发至当前传输节点的协议配置信息,通过协议接口接收对传输协议的调用请求,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议,通过多次握手建立通信链路,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,使得可以根据历史传输数据针对不同的网络运营商,地域等选取适用的传输协议,还提出了一种延迟低,且比UDP协议可靠的改进协议,实现了针对不同的网络状况选取适用的传输协议进行流数据的传输,而且还提出了一种优选的改进协议,解决了一般公有的流数据传输协议延迟高的问题。In summary, according to the embodiment of the present invention, by receiving the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized The highest-level transmission protocol is an improved protocol based on the user datagram protocol. The communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc. select the applicable transmission protocol, and also propose an improved protocol with low delay and reliability than the UDP protocol, which realizes the transmission of stream data for selecting different applicable network protocols for different network conditions, and A preferred improved protocol has also been proposed, which solves the problem of high delay of the general public stream data transmission protocol.
进一步,根据实时传输状态判断当前选择的传输协议是否可以满足传输要求,实现了根据调用条件和优先级切换到其他可用的传输协议进行流数据传输,增加了流数据传输的可靠性。Further, according to the real-time transmission status, it is determined whether the currently selected transmission protocol can meet the transmission requirement, and the stream data transmission is switched according to the calling condition and the priority to other available transmission protocols, thereby increasing the reliability of the stream data transmission.
参照图3,示出了根据本发明实施例三的一种流数据的传输方法的步骤流程示意图,具体可以包括如下步骤:Referring to FIG. 3, a schematic flowchart of a step of a method for transmitting stream data according to a third embodiment of the present invention is shown, which may specifically include the following steps:
步骤301,接收管理端下发至当前传输节点的协议配置信息。Step 301: Receive protocol configuration information that is sent by the management terminal to the current transit node.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤302,通过协议接口接收对传输协议的调用请求。Step 302: Receive a call request for a transport protocol through a protocol interface.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤303,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议。Step 303: Determine, in the at least one transmission protocol that meets the corresponding calling condition, that the transmission protocol with the highest priority is an improved protocol based on the user datagram protocol.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤304,通过多次握手建立通信链路。In
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤305,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息。Step 305: Perform stream data transmission based on the selected improved protocol, and receive a feedback response message.
在本发明实施例中,具体方式与其他实施例描述一致,不做赘述。In the embodiment of the present invention, the specific manner is consistent with the description of other embodiments, and details are not described herein.
步骤306,从接收到的回应消息中解析各个已发送的数据包的发送结果。Step 306: Parse the transmission result of each sent data packet from the received response message.
在本发明实施例中,从接收到的回应消息中,解析各个已发送的数据包的发送结果,具体可以是回应消息中记录流数据包对应的编号,以及对应编 号的是否发送成功的信息,解析回应消息中,就可以准确的确定哪个包已经丢失,哪个包已经成功被接收端接收。In the embodiment of the present invention, the result of sending the sent data packet is parsed from the received response message, which may be the number corresponding to the recorded stream data packet in the response message, and whether the corresponding number is successfully sent. By parsing the response message, it is possible to accurately determine which packet has been lost and which packet has been successfully received by the receiving end.
步骤307,查找发送结果为发送失败的流数据包,并对查找的流数据包进行重传。Step 307: Find a stream packet whose transmission result is a transmission failure, and retransmit the stream packet that is found.
在本发明实施例中,根据回应消息查找发送结果为发送失败的流数据包,也就是接收端未成功接收的流数据包,并对查找到的流数据包马上进行重传,无需像TCP协议一样等到超时再重传。In the embodiment of the present invention, according to the response message, the flow data packet whose transmission result is failed to be sent, that is, the flow data packet that is not successfully received by the receiving end, is searched, and the stream data packet that is found is immediately retransmitted, without the TCP protocol. Wait until the timeout is repeated.
综上所述,依据本发明实施例,通过接收管理端下发至当前传输节点的协议配置信息,通过协议接口接收对传输协议的调用请求,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议,通过多次握手建立通信链路,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,使得可以根据历史传输数据针对不同的网络运营商,地域等选取适用的传输协议,还提出了一种延迟低,且比UDP协议可靠的改进协议,实现了针对不同的网络状况选取适用的传输协议进行流数据的传输,而且还提出了一种优选的改进协议,解决了一般公有的流数据传输协议延迟高的问题。In summary, according to the embodiment of the present invention, by receiving the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized The highest-level transmission protocol is an improved protocol based on the user datagram protocol. The communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc. select the applicable transmission protocol, and also propose an improved protocol with low delay and reliability than the UDP protocol, which realizes the transmission of stream data for selecting different applicable network protocols for different network conditions, and A preferred improved protocol has also been proposed, which solves the problem of high delay of the general public stream data transmission protocol.
进一步,根据回应消息确定丢失的流数据包马上进行重传,无需等到超时后再重传,也无需像TCP协议一样需要将流数据包都进行重传,提高了丢包重传的实时性以及重传的效率。Further, according to the response message, it is determined that the lost stream data packet is retransmitted immediately, without waiting for the timeout to be retransmitted, and there is no need to retransmit the stream data packet as in the TCP protocol, thereby improving the real-time performance of the packet loss retransmission and The efficiency of retransmission.
参照图4,示出了根据本发明实施例四的一种流数据的传输装置的结构框图,具体可以包括如下模块:Referring to FIG. 4, a block diagram of a structure of a stream data transmission apparatus according to Embodiment 4 of the present invention is shown, which may specifically include the following modules:
配置信息接收模块401,用于接收管理端下发至当前传输节点的协议配置信息;所述协议配置信息包括针对各传输协议配置的调用条件和优先级,所述协议配置信息根据多个客户端在各传输协议下的历史传输状态生成,所述调用条件包括当前设备使用的网络运营商、所处地域中至少一种;The configuration information receiving module 401 is configured to receive protocol configuration information that is sent by the management terminal to the current transit node, where the protocol configuration information includes a calling condition and a priority configured for each transport protocol, where the protocol configuration information is based on multiple clients. Generating a historical transmission state under each transmission protocol, where the calling condition includes at least one of a network operator used by the current device and a geographical location;
调用请求接收模块402,用于通过协议接口接收对传输协议的调用请求,所述协议接口封装有多个传输协议;The call request receiving module 402 is configured to receive a call request for a transport protocol by using a protocol interface, where the protocol interface encapsulates multiple transport protocols;
改进协议确定模块403,用于确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议;The improved protocol determining module 403 is configured to determine, in the at least one transmission protocol that meets the corresponding calling condition, that the highest priority transmission protocol is an improved protocol based on the user datagram protocol;
通信链路建立模块404,用于通过多次握手建立通信链路;a communication link establishing module 404, configured to establish a communication link by multiple handshakes;
流数据传输模块405,用于基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,各回应消息记录多个已发送的流数据包的发送结果。The stream data transmission module 405 is configured to perform stream data transmission based on the selected improved protocol, and receive a feedback response message, where each response message records a transmission result of the plurality of sent stream data packets.
在本发明实施例中,优选地,所述装置还包括:In an embodiment of the present invention, preferably, the device further includes:
传输状态监控模块,用于实时监控流数据的当前传输状态,并判断所述当前传输状态是否满足设定传输要求。The transmission status monitoring module is configured to monitor the current transmission status of the stream data in real time, and determine whether the current transmission status satisfies the set transmission requirement.
在本发明实施例中,优选地,所述当前传输状态包括回应消息的接收时间,所述传输状态监控模块包括:In the embodiment of the present invention, preferably, the current transmission status includes a receiving time of the response message, and the transmission status monitoring module includes:
时间判断子模块,用于判断针对流数据包的回应消息的接收时间在发出流数据包后的设定时间段内,若是,则确定满足设定传输要求。The time judging submodule is configured to determine that the receiving time of the response message for the streaming data packet is within a set time period after the streaming data packet is sent, and if yes, determining that the set transmission request is satisfied.
在本发明实施例中,优选地,所述装置还包括:In an embodiment of the present invention, preferably, the device further includes:
传输协议切换模块,用于当所述当前传输状态不满足设定传输要求时,从剩余的传输协议中,选取满足对应调用条件的优先级最高的传输协议,并且换至重新选取的传输协议。And a transmission protocol switching module, configured to: when the current transmission state does not meet the set transmission requirement, select a transmission protocol with the highest priority that meets the corresponding calling condition from the remaining transmission protocols, and switch to the reselected transmission protocol.
在本发明实施例中,优选地,所述装置还包括:In an embodiment of the present invention, preferably, the device further includes:
数据包查找模块,用于根据已接收的至少一个回应消息查找最后一个成功发送的目标流数据包;a packet search module, configured to search for a last successfully sent target stream data packet according to the received at least one response message;
协议重新选取模块,用于在重新选取的传输协议下,从所述目标流数据包的下一个流数据包开始流数据的传输。A protocol reselection module is configured to start streaming data transmission from a next stream data packet of the target stream data packet under the reselected transport protocol.
在本发明实施例中,优选地,所述回应消息中记录各个已发出的流数据包的编号,所述数据包查找模块包括:In the embodiment of the present invention, preferably, the number of each sent stream data packet is recorded in the response message, and the data packet search module includes:
流数据包查找子模块,用于从至少一个回应消息中,查找发送成功的至少一个流数据包;a stream packet searching submodule, configured to: find, from the at least one response message, at least one stream packet that is successfully sent;
流数据包确定子模块,用于从所查找至少一个流数据包中,将发送编号排序最后一位的流数据包确定为目标流数据包。The stream packet determining submodule is configured to determine, from the found at least one stream packet, a stream packet whose last number of the transmission number is sorted as a target stream packet.
在本发明实施例中,优选地,所述装置还包括:In an embodiment of the present invention, preferably, the device further includes:
发送结果解析模块,用于从接收到的回应消息中解析各个已发送的数据包的发送结果;a sending result parsing module, configured to parse a sending result of each sent data packet from the received response message;
流数据包重传模块,用于查找发送结果为发送失败的流数据包,并对查找的流数据包进行重传。The stream packet retransmission module is configured to search for a stream packet whose transmission result is failed to be transmitted, and retransmit the stream packet to be searched.
在本发明实施例中,优选地,所述装置还包括:In an embodiment of the present invention, preferably, the device further includes:
变化值计算模块,用于计算顺次接收的多个回应消息的接收频率的变化值;a change value calculation module, configured to calculate a change value of a receive frequency of the plurality of response messages received in sequence;
传输堵塞确定模块,用于若接收频率的变化值超出设定阈值,则确定发生传输堵塞。The transmission jam determination module is configured to determine that a transmission jam occurs if the change value of the reception frequency exceeds a set threshold.
在本发明实施例中,优选地,还包括:In an embodiment of the present invention, preferably, the method further includes:
缩减比例查找模块,用于查找针对改进协议设置的缓存空间的缩减比例,所述缓存空间用于存储待发送的流数据包,所述改进协议的缩减比例小于其 他传输协议的缩减比例;a reduction ratio finding module, configured to find a reduction ratio of a cache space set for an improved protocol, where the cache space is used to store a stream data packet to be sent, and the reduction ratio of the improvement protocol is smaller than a reduction ratio of other transmission protocols;
存储容量缩减模块,用于按照查找的缩减比例,对所述缓存空间的存储容量在非传输堵塞下的正常值进行缩减。The storage capacity reduction module is configured to reduce the normal value of the storage capacity of the cache space under non-transport congestion according to the reduced ratio of the search.
在本发明实施例中,优选地,还包括:In an embodiment of the present invention, preferably, the method further includes:
恢复比例查找模块,用于若检测到传输堵塞的问题解除,则查找针对改进协议设置的缓存空间的恢复比例,所述改进协议的恢复比例大于其他传输协议的恢复比例;The recovery ratio finding module is configured to search for a recovery ratio of the cache space set for the improved protocol if the problem of detecting the transmission congestion is removed, and the recovery ratio of the improved protocol is greater than the recovery ratio of other transmission protocols;
存储容量重设模块,用于按照查找的恢复比例,至少一次重新设置所述缓存空间的当前存储容量,直至所述存储容量恢复到非传输堵塞下的正常值。The storage capacity resetting module is configured to reset the current storage capacity of the cache space at least once according to the restored recovery ratio until the storage capacity returns to a normal value under the non-transport congestion.
综上所述,依据本发明实施例,通过接收管理端下发至当前传输节点的协议配置信息,通过协议接口接收对传输协议的调用请求,确定满足对应调用条件的至少一个传输协议中,优先级最高的传输协议为基于用户数据报协议的改进协议,通过多次握手建立通信链路,基于所选取的改进协议进行流数据的传输,并接收反馈的回应消息,使得可以根据历史传输数据针对不同的网络运营商,地域等选取适用的传输协议,还提出了一种延迟低,且比UDP协议可靠的改进协议,实现了针对不同的网络状况选取适用的传输协议进行流数据的传输,而且还提出了一种优选的改进协议,解决了一般公有的流数据传输协议延迟高的问题。In summary, according to the embodiment of the present invention, by receiving the protocol configuration information that is sent by the management terminal to the current transit node, receiving a call request for the transport protocol through the protocol interface, and determining that at least one transport protocol that meets the corresponding calling condition is prioritized The highest-level transmission protocol is an improved protocol based on the user datagram protocol. The communication link is established through multiple handshakes, the stream data is transmitted based on the selected improved protocol, and the feedback response message is received, so that the data can be transmitted according to the history. Different network operators, regions, etc. select the applicable transmission protocol, and also propose an improved protocol with low delay and reliability than the UDP protocol, which realizes the transmission of stream data for selecting different applicable network protocols for different network conditions, and A preferred improved protocol has also been proposed, which solves the problem of high delay of the general public stream data transmission protocol.
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种流数据的传输方法和装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。The various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof. It will be understood by those skilled in the art that a microprocessor or digital signal processor (DSP) may be used in practice to implement some or some of some or all of the components of the method and apparatus for transmitting streaming data in accordance with embodiments of the present invention. All features. The invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein. Such a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
例如,图5示出了可以实现根据本发明的流数据的传输计算设备,例如应用服务器。该计算设备传统上包括处理器510和以存储器520形式的计算机程序产品或者计算机可读介质。存储器520可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器520具有用于执行上述方法中的任何方法步骤的程序代码531的存储空间530。例如,用于程序代码的存储空间530可以包括分别用于实现上面 的方法中的各种步骤的各个程序代码531。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为如参考图6所述的便携式或者固定存储单元。该存储单元可以具有与图5的计算设备中的存储器520类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码531’,即可以由例如诸如510之类的处理器读取的代码,这些代码当由计算设备运行时,导致该计算设备执行上面所描述的方法中的各个步骤。For example, Figure 5 illustrates a transport computing device, such as an application server, that can implement streaming data in accordance with the present invention. The computing device conventionally includes a
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。"an embodiment," or "an embodiment," or "an embodiment," In addition, it is noted that the phrase "in one embodiment" is not necessarily referring to the same embodiment.
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。In the description provided herein, numerous specific details are set forth. However, it is understood that the embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of the description.
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。It is to be noted that the above-described embodiments are illustrative of the invention and are not intended to be limiting, and that the invention may be devised without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as a limitation. The word "comprising" does not exclude the presence of the elements or steps that are not recited in the claims. The word "a" or "an" The invention can be implemented by means of hardware comprising several distinct elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means can be embodied by the same hardware item. The use of the words first, second, and third does not indicate any order. These words can be interpreted as names.
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。In addition, it should be noted that the language used in the specification has been selected for the purpose of readability and teaching, and is not intended to be construed or limited. Therefore, many modifications and changes will be apparent to those skilled in the art without departing from the scope of the invention. The disclosure of the present invention is intended to be illustrative, and not restrictive, and the scope of the invention is defined by the appended claims.
Claims (22)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201611265809.2A CN106612284B (en) | 2016-12-30 | 2016-12-30 | Streaming data transmission method and device |
| CN201611265809.2 | 2016-12-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018121742A1 true WO2018121742A1 (en) | 2018-07-05 |
Family
ID=58636771
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2017/119886 Ceased WO2018121742A1 (en) | 2016-12-30 | 2017-12-29 | Method and device for transmitting stream data |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN106612284B (en) |
| WO (1) | WO2018121742A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113114606A (en) * | 2020-01-09 | 2021-07-13 | 北京京东振世信息技术有限公司 | Distribution data acquisition method and device |
| CN113746755A (en) * | 2021-07-30 | 2021-12-03 | 咪咕文化科技有限公司 | Data processing method, apparatus, device, and computer-readable storage medium |
| CN115412375A (en) * | 2022-11-01 | 2022-11-29 | 山东省电子信息产品检验院(中国赛宝(山东)实验室) | Industrial Internet data protection system |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106612284B (en) * | 2016-12-30 | 2020-02-04 | 北京奇虎科技有限公司 | Streaming data transmission method and device |
| CN109862398A (en) * | 2019-03-29 | 2019-06-07 | 北京奇艺世纪科技有限公司 | Multimedia data transmission method, apparatus and system |
| CN112039686B (en) * | 2019-06-03 | 2023-08-04 | 杭州海康威视系统技术有限公司 | A data stream transmission control method, device, monitoring equipment and storage medium |
| CN110944012B (en) * | 2019-12-16 | 2021-09-10 | 西安电子科技大学 | Anti-protocol analysis data secure transmission method, system and information data processing terminal |
| CN113259391B (en) * | 2021-06-25 | 2021-10-15 | 北京华云安信息技术有限公司 | Data transmission method and device applied to multi-level node network |
| CN114844960A (en) * | 2022-03-29 | 2022-08-02 | 武汉斗鱼鱼乐网络科技有限公司 | Data transmission method and related equipment |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002017637A1 (en) * | 2000-08-25 | 2002-02-28 | Matsushita Electric Industrial Co., Ltd. | Data transmission method and data relay method |
| CN101834879A (en) * | 2010-02-09 | 2010-09-15 | 北京中科大洋科技发展股份有限公司 | An intelligent and efficient video and audio data transmission method adaptable to different network environments |
| CN105391486A (en) * | 2014-08-29 | 2016-03-09 | 深圳航天科技创新研究院 | Spaceborne data communication method and device |
| CN106612284A (en) * | 2016-12-30 | 2017-05-03 | 北京奇虎科技有限公司 | Streaming data transport method and streaming data transport device |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1169332C (en) * | 2002-09-29 | 2004-09-29 | 清华大学 | A Method of Transport Protocol Selection Based on Client Feedback |
| JP2007293503A (en) * | 2006-04-24 | 2007-11-08 | Canon Inc | Device, control method thereof, and program |
| CN102547411A (en) * | 2010-12-14 | 2012-07-04 | 康佳集团股份有限公司 | Method for transmitting and playing streaming video, and implementation device thereof |
| CN102790913B (en) * | 2012-07-03 | 2016-11-16 | 深圳市时代经纬科技有限公司 | A kind of based on 3G network audio/video transmission method |
-
2016
- 2016-12-30 CN CN201611265809.2A patent/CN106612284B/en active Active
-
2017
- 2017-12-29 WO PCT/CN2017/119886 patent/WO2018121742A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002017637A1 (en) * | 2000-08-25 | 2002-02-28 | Matsushita Electric Industrial Co., Ltd. | Data transmission method and data relay method |
| CN101834879A (en) * | 2010-02-09 | 2010-09-15 | 北京中科大洋科技发展股份有限公司 | An intelligent and efficient video and audio data transmission method adaptable to different network environments |
| CN105391486A (en) * | 2014-08-29 | 2016-03-09 | 深圳航天科技创新研究院 | Spaceborne data communication method and device |
| CN106612284A (en) * | 2016-12-30 | 2017-05-03 | 北京奇虎科技有限公司 | Streaming data transport method and streaming data transport device |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113114606A (en) * | 2020-01-09 | 2021-07-13 | 北京京东振世信息技术有限公司 | Distribution data acquisition method and device |
| CN113114606B (en) * | 2020-01-09 | 2023-09-01 | 北京京东振世信息技术有限公司 | Method and device for collecting distribution data |
| CN113746755A (en) * | 2021-07-30 | 2021-12-03 | 咪咕文化科技有限公司 | Data processing method, apparatus, device, and computer-readable storage medium |
| CN113746755B (en) * | 2021-07-30 | 2023-10-20 | 咪咕文化科技有限公司 | Data processing method, device, equipment and computer readable storage medium |
| CN115412375A (en) * | 2022-11-01 | 2022-11-29 | 山东省电子信息产品检验院(中国赛宝(山东)实验室) | Industrial Internet data protection system |
| WO2024061380A1 (en) * | 2022-11-01 | 2024-03-28 | 山东省信息技术产业发展研究院(中国赛宝(山东)实验室) | Industrial internet data protection system |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106612284A (en) | 2017-05-03 |
| CN106612284B (en) | 2020-02-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2018121742A1 (en) | Method and device for transmitting stream data | |
| KR101046105B1 (en) | Computer program manufacturing, resource demand adjustment methods, and end systems | |
| US9596281B2 (en) | Transport accelerator implementing request manager and connection manager functionality | |
| US9325628B2 (en) | Packet handling method, forwarding device and system | |
| JP2024509728A (en) | Data retransmission processing method, device, computer equipment and computer program | |
| US10798199B2 (en) | Network traffic accelerator | |
| US8072886B2 (en) | Method and system for transmission control protocol (TCP) traffic smoothing | |
| US9832125B2 (en) | Congestion notification system | |
| CN109560901A (en) | A kind of data repeating method, device, terminal device and storage medium | |
| WO2016062106A1 (en) | Packet processing method, device and system | |
| EP1473636A1 (en) | Information processing device and method, and computer program | |
| WO2018113373A1 (en) | Data transmission method and device | |
| WO2020119347A1 (en) | Message transmission method, apparatus, device and medium | |
| JP2016533569A (en) | Method for adapting a download operation of a client terminal configured to receive multimedia content and corresponding terminal | |
| WO2017097201A1 (en) | Data transmission method, transmission device and receiving device | |
| CN106936730A (en) | A kind of file transmitting method, TCP agent and TCP Client | |
| US20070226375A1 (en) | Plug-in architecture for a network stack in an operating system | |
| CN110856214B (en) | A TCP congestion control method and device | |
| US9350484B2 (en) | Transport accelerator implementing selective utilization of redundant encoded content data functionality | |
| CN115767143B (en) | Method, device, electronic device and readable storage medium for determining playback jam | |
| US10574706B2 (en) | Method and system for upload optimization | |
| US20250301197A1 (en) | Method and apparatus for media data transmission | |
| US8238335B2 (en) | Multi-route transmission of packets within a network | |
| US20070226347A1 (en) | Method and apparatus for dynamically changing the TCP behavior of a network connection | |
| CN105027515B (en) | Apparatus and method for the processing data in content transmission system |
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: 17886836 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: 17886836 Country of ref document: EP Kind code of ref document: A1 |