CN110311750B - Data transmission method, system and server - Google Patents

Data transmission method, system and server Download PDF

Info

Publication number
CN110311750B
CN110311750B CN201910335705.1A CN201910335705A CN110311750B CN 110311750 B CN110311750 B CN 110311750B CN 201910335705 A CN201910335705 A CN 201910335705A CN 110311750 B CN110311750 B CN 110311750B
Authority
CN
China
Prior art keywords
data packet
state information
information
receiving end
data
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.)
Active
Application number
CN201910335705.1A
Other languages
Chinese (zh)
Other versions
CN110311750A (en
Inventor
周建
赵志文
林土木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201910335705.1A priority Critical patent/CN110311750B/en
Publication of CN110311750A publication Critical patent/CN110311750A/en
Application granted granted Critical
Publication of CN110311750B publication Critical patent/CN110311750B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Abstract

The invention discloses a data transmission method, a system and a server, wherein the data transmission method applied to a sending end comprises the following steps: a sending end sends a first data packet and data packet information of the first data packet to a receiving end; the sending end acquires the state information of the receiving end; judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet; the first data packet and the second data packet are data packets which are transmitted successively and adjacently; and if the judgment result is lost, recovering the first data packet according to the state information of the receiving end. The technical scheme provided by the invention can recover the lost data in time and improve the video smoothness and stability.

Description

Data transmission method, system and server
Technical Field
The present invention relates to the field of internet technologies, and in particular, to a data transmission method, system, and server.
Background
With the rapid development of the internet, real-time video technologies such as video conferences, cloud video games, robot and vehicle remote control and the like are also continuously improved.
In the current real-time video transmission system, a sending end may estimate an average data transmission rate in a network path by using a transmission protocol, and provide the estimate to a codec, and the codec determines coding parameters, such as a frame rate, according to the estimate, and generates a compressed video stream according to the determined coding parameters, so that an average bit rate of the generated compressed video stream is close to the estimated network capacity, and sends the generated compressed video stream to a receiving end by using the transmission protocol.
Disclosure of Invention
The application aims to provide a data transmission method, a data transmission system and a server, which can recover lost data in time and improve video smoothness and stability.
In order to achieve the above object, an aspect of the present application provides a data transmission method, where the method is executed by a sending end, and includes:
sending a first data packet and data packet information of the first data packet to a receiving end;
acquiring state information of the receiving end;
judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet; the first data packet and the second data packet are data packets which are transmitted successively and adjacently;
and if the judgment result is lost, recovering the first data packet according to the state information of the receiving end.
In order to achieve the above object, another aspect of the present application provides a data transmission method, including:
a receiving end receives a data packet sent by a sending end and acquires data packet information corresponding to the received data packet;
the receiving end updates the state information of the receiving end according to the data packet information;
and the receiving end feeds back the state information of the receiving end to the receiving end.
To achieve the above object, another aspect of the present application provides a data transmission system, including: a sending end and a receiving end; wherein the content of the first and second substances,
the sending end is used for sending a first data packet and data packet information of the first data packet to the receiving end, acquiring state information of the receiving end, judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of a second data packet, and if the first data packet is lost, recovering the first data packet according to the state information of the receiving end; the packet information includes: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs; the first data packet and the second data packet are data packets which are transmitted successively and adjacently;
the receiving end is used for receiving a first data packet sent by a sending end, acquiring data packet information of the first data packet, updating state information of the receiving end according to the data packet information of the first data packet, and feeding back the state information of the receiving end to the receiving end.
In order to achieve the above object, another aspect of the present application further provides a server, where the server is a sending server, and the server includes:
the device comprises a data sending unit, a state information acquiring unit, a judging unit and a data recovering unit; wherein the content of the first and second substances,
the data sending unit is used for sending a first data packet and data packet information of the first data packet to a receiving end; the packet information includes: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs;
the state information acquiring unit is used for acquiring the state information of the receiving end;
the judging unit is used for judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet; the first data packet and the second data packet are data packets which are transmitted successively and adjacently;
and the data recovery unit is used for recovering the first data packet according to the state information of the receiving end when the judgment result of the judgment unit is lost.
In order to achieve the above object, another aspect of the present application further provides a server, where the server is a receiving server, and the server includes: the device comprises a receiving unit, a state updating unit and a feedback unit; wherein the content of the first and second substances,
the receiving unit is used for receiving a data packet sent by a sending end and acquiring data packet information corresponding to the received data packet; the packet information includes: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs;
the state updating unit is used for updating the state information of the receiving server according to the data packet information acquired by the receiving unit;
the feedback unit is configured to feed back the status information of the receiving server to the receiving end.
To achieve the above object, another aspect of the present application further provides a server, which includes a memory and a processor, the memory is used for storing a computer program, and the computer program realizes the above method when being executed by the processor.
Therefore, according to the technical scheme provided by the application, each data packet sent to the receiving end by the video sending end can be correspondingly provided with the active state information and the target state information. For two data packets sent adjacently, the destination status information of the previous data packet and the source status information of the next data packet may be the same. After receiving the previous data packet, the receiving end can update the state information of the receiving end according to the target state information corresponding to the received previous data packet, so that whether the data packet newly received by the receiving end is the previous data packet can be judged according to the source state information of the next data packet and the state information of the receiving end. Therefore, by adopting the technical scheme provided by the application, whether the receiving end receives the data packet newly sent by the sending end can be quickly judged according to the state information of the receiving end. If not, the data packet needing to be retransmitted can be conveniently determined according to the state information of the receiving end, so that the lost data packet can be quickly and timely recovered. Therefore, the video transmission technology adopting the data transmission method can improve the fluency and stability of the video.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a flow chart of a data transmission method in an embodiment of the invention;
FIG. 2 is a flow chart of another method of data transmission in an embodiment of the present invention;
fig. 3 is a schematic structural diagram of a data transmission system according to an embodiment of the present invention;
FIG. 4 is a block diagram of a sending server according to an embodiment of the present invention;
FIG. 5 is a block diagram of a determining unit in an embodiment of a server according to the present invention;
FIG. 6 is a block diagram of a receiving server according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of a server according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of a computer terminal in an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
In the prior art, a sending end predicts an average data transmission rate in a network path by using a transmission protocol, and provides a prediction value to a codec, so that an average bit rate of a compressed video stream generated by the codec according to the prediction value is close to the predicted network capacity. However, since the network condition for transmitting the compressed video stream fluctuates every moment, and the estimated network capacity has hysteresis, the video frame data may be lost during the real-time video process when the network condition is poor or the network is disconnected and reconnected, thereby causing the real-time video to be jammed and lost. Therefore, a video data transmission method for recovering lost video data in time is needed to ensure the smoothness and stability of video pictures.
The application provides a data transmission method which can be applied to a real-time video data transmission service. The data transmission method can be applied to a video data sending end. Referring to fig. 1, the data transmission method provided in the present application may include the following steps.
S11: and sending a first data packet and data packet information of the first data packet to a receiving end.
The sending end may send a first data packet and data packet information of the first data packet to a receiving end. The first packet may be any packet.
The data of one video frame may be divided into a plurality of data segments. The plurality of data clips may constitute one video frame data by the clip index information.
In one embodiment, one or more data fragments may be included in one data packet.
In one embodiment, the packet information may include: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs.
The target state information may be used to characterize a state of the receiving end after receiving the data packet. Specifically, after the receiving end receives a data packet, the receiving end state information may be associated with the target state information of the data packet. For example, the destination status information of a packet is "002", and after the receiving end receives the packet, the status information of the receiving end may be "002".
In one embodiment, for two data packets transmitted adjacently, the destination status information of the previous data packet and the source status information of the next data packet may be the same.
In one embodiment, the source state information and the target state information may be sequentially arranged numerical values. For example, the source state information of the first packet may be "001", the destination state information may be "002", the source state information of the second packet may be "002", the destination state information may be "003", and so on.
In another embodiment, the source status information in the packet information may be a hash value of the packet data. The destination state information in the packet information may be a hash value of the next packet data.
S12: and acquiring the state information of the receiving end.
After the sending end sends the first data packet, the state information of the receiving end can be obtained.
The sending end can obtain the state information of the receiving end through a data transmission protocol.
The status information of the receiving end may be associated with the destination status information of the data packet most recently received by the receiving end. Specifically, the state information of the receiving end may be the same as the target state information of the data packet that is received by the receiving end most recently. Alternatively, the state information of the receiving end may have a corresponding relationship with the destination state information of the packet received by the receiving end most recently. For example, the status information of the receiving end may be 2 times of the target status information value of the data packet received by the receiving end most recently.
S13: and judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet.
And judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet. The first data packet may be a data packet transmitted adjacent to the second data packet.
In an embodiment, the determining whether the first data packet is lost according to the status information of the receiving end and the data packet information of the second data packet may specifically include: determining reference state information according to the state information of the receiving end, namely target state information of a data packet recently received by the receiving end; comparing whether the reference state information is consistent with the source state information of the second data packet; if the first data packet is consistent with the second data packet, judging that the first data packet is not lost; or if the comparison result is inconsistent, judging that the first data packet is lost.
Because the target state information of the previous data packet is the same as the source state information of the next data packet for two adjacent data packets, whether the data packet received by the receiving end recently is the first data packet can be conveniently judged by judging whether the target state information of the data packet received by the receiving end recently is consistent with the source state information of the second data packet adjacent to the first data packet, and if not, the first data packet is lost.
In one embodiment, the determining reference state information according to the state information of the receiving end specifically includes: and calculating the state information of the receiving end according to a first preset calculation rule, and taking the calculation result as reference state information.
The first preset calculation rule can be set according to actual needs. The first preset calculation rule may be determined according to a correspondence between the receiving end state information and the packet destination state information. For example, the status information of the receiving end may be 2 times of the target status information value of the data packet recently received by the receiving end, and then the result obtained by dividing the status information of the receiving end by 2 may be used as the reference status information.
S14: and if the judgment result is lost, recovering the first data packet according to the state information of the receiving end.
And when the judgment result is that the first data packet is lost, recovering the first data packet according to the state information of the receiving end.
The method specifically comprises the following steps: determining target state information of a first data packet to be recovered according to the reference state information; acquiring the first data packet to be recovered according to the target state information of the first data packet; and sending the acquired first data packet to the receiving end. The obtaining the first data packet may include: and acquiring the first data packet from the data packets cached in the memory of the client.
The embodiment of the application also provides a data transmission method, and the data transmission method can be applied to a video data receiving end. Referring to fig. 2, the data transmission method may include the following steps.
S21: and the receiving end receives the data packet sent by the sending end and acquires the data packet information corresponding to the received data packet.
The receiving end can receive the data packet sent by the sending end.
The receiving end can also obtain data packet information corresponding to the received data packet by using a data transmission protocol.
The packet information may include: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs.
And S22, the receiving terminal updates the state information of the receiving terminal according to the data packet information.
After receiving the data packet, the receiving end may update the state information of the receiving end according to the data packet information corresponding to the data packet.
Specifically, the status information of the receiving end may be updated according to the target status information in the data packet information.
In one embodiment, the updating, by the receiving end, the state information of the receiving end according to the packet information may include: and taking the target state information in the data packet information as the state information of the receiving end.
In another embodiment, the updating, by the receiving end, the state information of the receiving end according to the packet information may include: and the receiving terminal calculates the target state information in the data packet information according to a second preset calculation rule, and the calculation result is used as the state information of the receiving terminal. The second predetermined calculation rule may be opposite to the first predetermined calculation rule. Through the second preset calculation rule, the target state information in the data packet information and the state information of the receiving end may have a corresponding relationship.
By calculating the target state information in the data packet information by using the second preset calculation rule, the state information of the receiving end is determined, and the target state information in the data packet information cannot be directly obtained when the state information of the receiving end is leaked, so that the safety of transmitted data can be improved.
And S23, the receiving end feeds back the state information of the receiving end to the receiving end.
The receiving end can feed back the state information of the receiving end to the receiving end, so that the receiving end judges whether the receiving end has the condition that the receiving end does not receive the data packet sent by the sending end according to the state information, and further judges whether the data loss exists. If the data is lost, the state information fed back by the receiving end can be used for determining the data packet information corresponding to the lost data packet so as to resend the lost data packet, thereby realizing the timely recovery of the lost data packet.
The embodiment of the application also provides a data transmission system. Referring to fig. 3, the data system includes a transmitting end and a receiving end.
The sending end may be configured to send a first data packet and data packet information of the first data packet to the receiving end, obtain state information of the receiving end, determine whether the first data packet is lost according to the state information of the receiving end and data packet information of a second data packet, and recover the first data packet according to the state information of the receiving end if the first data packet is lost.
The packet information may include: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs.
The first data packet and the second data packet may be data packets transmitted successively and adjacently. The destination state information corresponding to the first packet may be the same as the source state information corresponding to the second packet.
The receiving end may be configured to receive a first data packet sent by a sending end, obtain data packet information of the first data packet, update state information of the receiving end according to the data packet information of the first data packet, and feed back the state information of the receiving end to the receiving end.
The embodiment of the application also provides a server, and the server can be a sending server. Referring to fig. 4, the transmission server may include: the device comprises a data sending unit, a state information acquiring unit, a judging unit and a data recovering unit. Wherein the content of the first and second substances,
the data sending unit may be configured to send a first data packet and data packet information of the first data packet to a receiving end. The packet information may include: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs.
The status information obtaining unit may be configured to obtain status information of the receiving end.
The determining unit may be configured to determine whether the first data packet is lost according to the status information of the receiving end and the data packet information of the second data packet. The first data packet and the second data packet may be data packets transmitted successively and adjacently. The destination state information corresponding to the first packet may be the same as the source state information corresponding to the second packet.
The data recovery unit may be configured to recover the first data packet according to the state information of the receiving end when the determination result of the determining unit is lost.
Specifically, the data recovery unit may determine, according to the reference state information, target state information of a first data packet to be recovered; and acquiring the first data packet from the data packets cached in the memory of the sending server according to the target state information of the first data packet to be recovered, so that the data sending unit sends the acquired first data packet to the receiving end.
Referring to fig. 5, in one embodiment, the determining unit may include: a reference state determining subunit, a comparing subunit, and a judgment result subunit. Wherein the content of the first and second substances,
the reference state determining subunit may be configured to determine reference state information according to the state information of the receiving end. The reference state information is associated with target state information of a data packet most recently received by the receiving end.
The comparing subunit may be configured to compare whether the reference status information is consistent with the source status information of the second packet.
The judging result subunit may be configured to judge that the first data packet is not lost when the comparison result of the comparing subunit is consistent; or, the method may be used to determine that the first data packet is lost when the comparison result of the comparing subunit is inconsistent.
The embodiment of the application also provides a server, and the server can be a receiving server. Referring to fig. 6, the receiving server may include: the device comprises a receiving unit, a state updating unit and a feedback unit. The receiving unit may be configured to receive a data packet sent by a sending end, and acquire data packet information corresponding to the received data packet. The packet information may include: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs. For two data packets sent adjacently, the destination status information of the previous data packet and the source status information of the next data packet may be the same.
The status updating unit may be configured to update the status information of the receiving server according to the data packet information acquired by the receiving unit. Specifically, the status updating unit may use target status information in the packet information as status information of the receiving end; or, the state updating unit may calculate the target state information in the data packet information according to a second preset calculation rule, and use the calculation result as the state information of the receiving end.
The feedback unit may be configured to feed back the status information of the receiving server to the receiving end.
Referring to fig. 7, the present application further provides a server, where the server includes a memory and a processor, the memory is used to store a computer program, and the computer program, when executed by the processor, may implement the data transmission method in the foregoing method embodiments.
Referring to fig. 8, in the present application, the technical solution in the above embodiment can be applied to the computer terminal 10 shown in fig. 8. The computer terminal 10 may include one or more (only one shown) processors 102 (the processor 102 may include, but is not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission module 106 for communication functions. It will be understood by those skilled in the art that the structure shown in fig. 8 is only an illustration and is not intended to limit the structure of the electronic device. For example, the computer terminal 10 may also include more or fewer components than shown in FIG. 8, or have a different configuration than shown in FIG. 8.
The memory 104 may be used to store software programs and modules of application software, and the processor 102 executes various functional applications and data processing by executing the software programs and modules stored in the memory 104. The memory 104 may include high speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory located remotely from the processor 102, which may be connected to the computer terminal 10 via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
Specifically, in the present application, the deployment method of the server described above may be stored as a computer program in the memory 104 described above, and the memory 104 may be coupled to the processor 102, so that when the processor 102 executes the computer program in the memory 104, the steps in the deployment method of the server described above may be implemented.
The transmission device 106 is used for receiving or transmitting data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of the computer terminal 10. In one example, the transmission device 106 includes a Network adapter (NIC) that can be connected to other Network devices through a base station to communicate with the internet. In one example, the transmission device 106 can be a Radio Frequency (RF) module, which is used to communicate with the internet in a wireless manner.
Therefore, according to the technical scheme provided by the application, each data packet sent to the receiving end by the video sending end can be correspondingly provided with the active state information and the target state information. For two data packets sent adjacently, the destination status information of the previous data packet and the source status information of the next data packet may be the same. After receiving the previous data packet, the receiving end can update the state information of the receiving end according to the target state information corresponding to the received data packet, so that whether the data packet newly received by the receiving end is the previous data packet can be judged according to the source state information of the next data packet and the state information of the receiving end. Therefore, by adopting the technical scheme provided by the application, whether the receiving end receives the data packet newly sent by the sending end can be quickly judged according to the state information of the receiving end. If not, the data packet needing to be retransmitted can be conveniently determined according to the state information of the receiving end, so that the lost data packet can be quickly and timely recovered. Therefore, the video transmission technology adopting the data transmission method can improve the fluency and stability of the video.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (14)

1. A data transmission method, wherein the method is performed by a transmitting end, and comprises:
sending a first data packet and data packet information of the first data packet to a receiving end;
acquiring state information of the receiving end;
judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet; it includes: calculating the state information of the receiving end according to a first preset calculation rule to obtain reference state information, comparing the reference state information with the source state information of the second data packet, and judging whether the first data packet is lost or not according to a comparison result; the first preset calculation rule is determined according to the corresponding relation between the receiving end state information and the target state information of the first data packet;
the first data packet and the second data packet are data packets which are transmitted successively and adjacently, and the target state information of the first data packet is a hash value of the second data packet data;
and if the judgment result is lost, recovering the first data packet according to the state information of the receiving end.
2. The method of claim 1, wherein the packet information comprises: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs.
3. The method of claim 2, wherein the destination status information of a previous packet is the same as the source status information of a subsequent packet for two packets transmitted adjacent to each other.
4. The method of claim 3, wherein comparing the reference status information with the source status information of the second data packet and determining whether the first data packet is lost according to the comparison result comprises:
comparing whether the reference state information is consistent with the source state information of the second data packet;
if the first data packet is consistent with the second data packet, judging that the first data packet is not lost; or if the comparison result is inconsistent, judging that the first data packet is lost.
5. The method according to claim 4, wherein the calculating the state information of the receiving end according to a first preset calculation rule to obtain the reference state information comprises:
the state information of the receiving end is 2 times of the target state information value of the data packet recently received by the receiving end, and the result obtained by dividing the state information of the receiving end by 2 is used as reference state information.
6. The method of claim 4, wherein the recovering the first data packet according to the status information of the receiving end comprises:
determining target state information of a first data packet to be recovered according to the reference state information;
acquiring the first data packet to be recovered according to the target state information of the first data packet;
and sending the acquired first data packet to the receiving end.
7. A method of data transmission, comprising:
a receiving end receives a data packet sent by a sending end and acquires data packet information corresponding to the received data packet;
the receiving end updates the state information of the receiving end according to the data packet information, calculates the target state information in the data packet information according to a second preset calculation rule and takes the calculation result as the state information of the receiving end; the second preset calculation rule and the first preset calculation rule are operated in an opposite way, and the first preset calculation rule is determined according to the corresponding relation between the receiving end state information and the target state information of the data packet; through the second preset calculation rule, the target state information in the data packet information has a corresponding relation with the state information of the receiving end, and the target state information in the data packet information is a hash value of the next data packet data sent adjacent to the current data packet;
the receiving end feeds back the state information of the receiving end to the sending end, so that the sending end judges whether the receiving end has the condition that the data packet sent by the sending end is not received according to the state information, and whether data loss exists is judged.
8. The method according to claim 7, wherein the obtaining packet information corresponding to the received packet comprises: and acquiring data packet information corresponding to the received data packet by using a data transmission protocol.
9. The method of claim 7, wherein the packet information comprises: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs.
10. A data transmission system, comprising: a sending end and a receiving end; wherein the content of the first and second substances,
the sending end is configured to send a first data packet and data packet information of the first data packet to the receiving end, acquire state information of the receiving end, and determine whether the first data packet is lost according to the state information of the receiving end and data packet information of a second data packet, and specifically includes: calculating the state information of the receiving end according to a first preset calculation rule to obtain reference state information, comparing the reference state information with the source state information of the second data packet, and judging whether the first data packet is lost or not according to a comparison result; the first preset calculation rule is determined according to the corresponding relation between the receiving end state information and the target state information of the first data packet;
if the judgment result is lost, recovering the first data packet according to the state information of the receiving end; the packet information includes: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs; the first data packet and the second data packet are data packets which are transmitted successively and adjacently, and the target state information of the first data packet is a hash value of the second data packet data;
the receiving end is used for receiving a first data packet sent by a sending end, acquiring data packet information of the first data packet, updating state information of the receiving end according to the data packet information of the first data packet, calculating target state information in the data packet information of the first data packet according to a second preset calculation rule by the receiving end, and taking a calculation result as the state information of the receiving end; the second preset calculation rule and the first preset calculation rule are operated in an opposite way; and feeding back the state information of the receiving end to the sending end, so that the sending end judges whether the receiving end has the condition of not receiving the data packet sent by the sending end according to the state information, and further judges whether data loss exists.
11. A server, wherein the server is a sending server, comprising: the device comprises a data sending unit, a state information acquiring unit, a judging unit and a data recovering unit; wherein the content of the first and second substances,
the data sending unit is used for sending a first data packet and data packet information of the first data packet to a receiving end; the packet information includes: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs;
the state information acquiring unit is used for acquiring the state information of the receiving end;
the judging unit is used for judging whether the first data packet is lost or not according to the state information of the receiving end and the data packet information of the second data packet; the method specifically comprises the following steps: calculating the state information of the receiving end according to a first preset calculation rule to obtain reference state information, comparing the reference state information with the source state information of the second data packet, and judging whether the first data packet is lost or not according to a comparison result; the first preset calculation rule is determined according to the corresponding relation between the receiving end state information and the target state information of the first data packet; the first data packet and the second data packet are data packets which are transmitted successively and adjacently, and the target state information of the first data packet is a hash value of the second data packet data;
and the data recovery unit is used for recovering the first data packet according to the state information of the receiving end when the judgment result of the judgment unit is lost.
12. The server according to claim 11, wherein the judging unit includes: a comparison subunit and a judgment result subunit; wherein the content of the first and second substances,
the comparing subunit is configured to compare whether the reference status information is consistent with the source status information of the second packet;
the judging result subunit is configured to judge that the first data packet is not lost when the comparison result of the comparing subunit is consistent; or, when the comparison result of the comparing subunit is inconsistent, it is determined that the first data packet is lost.
13. A server, wherein the server is a receiving server, comprising: the device comprises a receiving unit, a state updating unit and a feedback unit; wherein the content of the first and second substances,
the receiving unit is used for receiving a data packet sent by a sending end and acquiring data packet information corresponding to the received data packet; the packet information includes: frame sequence number, fragment index information, source state information and target state information of a frame to which the data packet belongs;
the status updating unit is configured to update the status information of the receiving server according to the data packet information acquired by the receiving unit, and specifically configured to: calculating target state information in the data packet information according to a second preset calculation rule, and taking a calculation result as state information of the receiving end; the second preset calculation rule and the first preset calculation rule are operated in an opposite way, and the first preset calculation rule is determined according to the corresponding relation between the receiving end state information and the target state information of the data packet; through the second preset calculation rule, the target state information in the data packet information has a corresponding relation with the state information of the receiving end, and the target state information in the data packet information is a hash value of the next data packet data sent adjacent to the current data packet;
the feedback unit is configured to feed back the status information of the receiving server to the sending end, so that the sending end determines whether the receiving server has a condition that a data packet sent by the sending end is not received according to the status information, thereby determining whether data loss exists.
14. A server, characterized in that the server comprises a memory for storing a computer program and a processor, the computer program, when executed by the processor, implementing the method of any one of claims 1 to 9.
CN201910335705.1A 2019-04-24 2019-04-24 Data transmission method, system and server Active CN110311750B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910335705.1A CN110311750B (en) 2019-04-24 2019-04-24 Data transmission method, system and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910335705.1A CN110311750B (en) 2019-04-24 2019-04-24 Data transmission method, system and server

Publications (2)

Publication Number Publication Date
CN110311750A CN110311750A (en) 2019-10-08
CN110311750B true CN110311750B (en) 2022-02-22

Family

ID=68074506

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910335705.1A Active CN110311750B (en) 2019-04-24 2019-04-24 Data transmission method, system and server

Country Status (1)

Country Link
CN (1) CN110311750B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8542593B1 (en) * 2010-03-19 2013-09-24 Vucast Media, Inc. System and methods for error tolerant content delivery over multicast channels
CN104135488A (en) * 2014-08-13 2014-11-05 上海申腾信息技术有限公司 Remote medical system related data transmission system and method and applications thereof
CN104168284A (en) * 2014-08-25 2014-11-26 联想(北京)有限公司 Data transmission method and first electronic equipment
CN106982108A (en) * 2016-01-18 2017-07-25 华为技术有限公司 The method and relevant device of a kind of data transfer
CN109714392A (en) * 2018-11-26 2019-05-03 聚好看科技股份有限公司 Across the computer room method of data synchronization of one kind and device
CN110312150A (en) * 2019-04-24 2019-10-08 网宿科技股份有限公司 A kind of video frame transmission method, system and server

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8542593B1 (en) * 2010-03-19 2013-09-24 Vucast Media, Inc. System and methods for error tolerant content delivery over multicast channels
CN104135488A (en) * 2014-08-13 2014-11-05 上海申腾信息技术有限公司 Remote medical system related data transmission system and method and applications thereof
CN104168284A (en) * 2014-08-25 2014-11-26 联想(北京)有限公司 Data transmission method and first electronic equipment
CN106982108A (en) * 2016-01-18 2017-07-25 华为技术有限公司 The method and relevant device of a kind of data transfer
CN109714392A (en) * 2018-11-26 2019-05-03 聚好看科技股份有限公司 Across the computer room method of data synchronization of one kind and device
CN110312150A (en) * 2019-04-24 2019-10-08 网宿科技股份有限公司 A kind of video frame transmission method, system and server

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《[计算机网络] TCP报文段中的序号和确认号》;我家小狗迷路了;《CSDN》;20180330;正文第1-7页 *
《6-TCP 协议(序号和确认号)》;Allen;《CSDN》;20170405;正文第1-5页 *

Also Published As

Publication number Publication date
CN110311750A (en) 2019-10-08

Similar Documents

Publication Publication Date Title
CN107276722B (en) Data transmission method and system based on UDP
EP2810180B1 (en) Multi-path data transfer using network coding
US9325628B2 (en) Packet handling method, forwarding device and system
CN113037440B (en) Data retransmission processing method and device, computer equipment and storage medium
WO2022017529A1 (en) Data transmission method and system, electronic device, and storage medium
CN104780028A (en) Method and equipment for retransmitting TCP (transmission control protocol) data messages
CN110312150B (en) Video frame transmission method, system and server
US10020916B2 (en) Method and apparatus for data communication of vehicle
CN109257335B (en) Method for maintaining back source link, back source method, related device and storage medium
CN104486243A (en) Data transmission method, equipment and system
CN109660464A (en) A kind of downlink message processing method, UPF equipment and storage medium
CN110311750B (en) Data transmission method, system and server
CN107786607B (en) Message retransmission method, message retransmission server and user equipment
EP3672189B1 (en) Data transmission method, device and system
CN110266446B (en) Method and device for adjusting out-of-order time length based on SACK mode
CN109605383B (en) Information communication method, robot and storage medium
WO2018171550A1 (en) Data verification method, data transmission method, related devices, system and storage medium
CN108574684B (en) Decompression method and device
CN111654355B (en) Data transmission method, system, electronic device and storage medium
EP3095230B1 (en) Processing of data files
CN107231567B (en) Message transmission method, device and system
CN112866133B (en) Method and device for acquiring MSS (maximum segment size)
US9307509B1 (en) Transmitting radio signals using simultaneous retransmission
CN111385158B (en) Communication method and communication device
CN101616164B (en) Method and device for transmitting message

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant