# US 2021/0176293 A1 · Method, device and system for transmitting data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0176293 A1
- Document ID: US20210176293A1
- Status: Published application
- Kind: A1
- Application number: 16/639,533
- Filed: 2018-08-14
- Published: 2021-06-10
- Earliest claimed: 2017-08-14
- Assignees: Hangzhou Hikvision Digital Technology Co., Ltd.
- Applicants: Hangzhou Hikvision Digital Technology Co., Ltd.
- Inventors: Anmin XIN
- Web page: https://patentgrep.com/patent/US20210176293A1

## CPC

- H04L 65/65: Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
- H04L 1/16: in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L 1/1607: Details of the supervisory signal
- H04L 1/1816: {with retransmission of the same, encoded, message}
- H04L 65/70: Media network packetisation
- H04L 69/40: for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection (management of faults, events, alarms or notifications in data switching networks H04L41/06)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method of transmitting data, composing: transmitting a plurality of first Real-time Transport Protocol (RTP) data packets to a receiving end over an RTP data link established with the receiving end; receiving a retransmission indication message sent by the receiving end, the retransmission indication message being intended to indicate an RTP data packet to be retransmitted among the plurality of first RTP data packets; encapsulating the RTP data packet to be retransmitted according to the retransmission indication message to obtain a second RTP data packet, wherein the second RTP data packet composes an RTP paddmg field intended to indicate that the second RTP data packet is a retransmitted RTP data packet, and a type flag of the second RTP data packet is same as a type flag of the first RTP data packet and transmitting the second RTP data packet to the receiving end over the RTP data link.

## Claims

### Claim 1

A method of transmitting data, applicable to a transmitting end, the method comprising:
transmitting a plurality of first Real-time Transport Protocol (RTP) data packets to a receiving end over an RTP data link established with the receiving end;
receiving a retransmission indication message sent by the receiving end, the retransmission indication message being intended to indicate an RTP data packet to be retransmitted among the plurality of first RTP data packets;
encapsulating the RTP data packet to be retransmitted according to the retransmission indication message to obtain a second RTP data packet, wherein the second RTP data packet comprises an RTP padding field intended to indicate that the second RTP data packet is a retransmitted RTP data packet, and a type flag of the second RTP data packet is same as a type flag of the first RTP data packet; and
transmitting the second RTP data packet to the receiving end over the RTP data link.

### Claim 2 (depends on 1)

The method according to claim 1, wherein encapsulating the RTP data packet to be retransmitted according to the retransmission indication message comprises:
suffixing a padding unit to the RTP data packet to be retransmitted, an RTP padding field in the second RTP data packet comprising the padding unit, the padding unit comprising a retransmission indication byte, the retransmission indication byte being intended to indicate that the second RTP data packet is a retransmitted RTP data packet.

### Claim 3 (depends on 2)

The method according to claim 2, wherein the retransmission indication byte at least comprises a retransmission flag and a count flag; wherein
the retransmission flag is intended to indicate that the second RTP data packet is the retransmitted RTP data packet; and
the count flag is intended to indicate the number of times that the transmitting end transmits the second RTP data packet.

### Claim 4 (depends on 3)

The method according to claim 3, wherein the retransmission indication byte further comprises a data flag: wherein
the data flag is intended to indicate whether an RTP data field in the second RTP data packet is an RTP data field in the RTP data packet to be retransmitted.

### Claim 5 (depends on 4)

The method according to claim 4, wherein the padding unit further comprises a length indication byte, the length indication byte being intended to indicate a length of the RTP padding field in the second RTP data packet.

### Claim 6 (depends on 5)

The method according to claim 5, wherein
the retransmission indication byte is a penultimate byte in the padding unit, and the length indication byte is a last byte in the padding unit;
the retransmission flag comprises two bits, the count flag comprises three bits, and the data flag comprises one bit; and
the retransmission flag, the data flag and the count flag are arranged in sequence in the retransmission indication byte, and the two bits in the retransmission flag are first two bits in the retransmission indication byte.

### Claim 7 (depends on 1)

The method according to claim 1, wherein encapsulating the RTP data packet to be retransmitted according to the retransmission indication message comprises:
judging whether the RTP data packet to be retransmitted comprises the RTP padding field;
when the RTP data packet to be retransmitted comprises the RTP padding field, suffixing a padding unit to the RTP data packet to be retransmitted to obtain the second RTP data packet, the padding unit comprising a retransmission indication byte, the retransmission indication byte being intended to indicate that the second RTP data packet is a retransmitted RTP data packet; or
when the RTP data packet to be retransmitted does not comprise the RTP padding field, suffixing a padding unit to the RTP data packet to be retransmitted, and updating a padding flag in an RTP header field in the RTP data packet to be retransmitted to obtain the second RTP data packet, wherein the updated padding flag is intended to indicate that the second RTP data packet comprises the RTP padding field.

### Claim 8 (depends on 2)

The method according to claim 2, wherein encapsulating the RTP data packet to be retransmitted according to the retransmission indication message further comprises:
acquiring a predetermined bytes per unit, a total bytes of the RTP data packet to be retransmitted being an integer multiple of the bytes per unit, and the bytes per unit being an nth power of 2, n being an integer greater than or equal to 1; and
determining, according to the bytes per unit, the padding unit constituted by m bytes, m being an integer multiple of the bytes per unit.

### Claim 9

A method of transmitting data, applicable to a receiving end, the method comprising:
receiving an RTP data packet sent by a transmitting end over a Real-time Transport Protocol (RTP) data link established with the transmitting end; and
determining, according to an RTP padding field in the RTP data packet, whether the RTP data packet is a retransmitted RTP data packet, when the RTP data packet comprises the RTP padding field.

### Claim 10 (depends on 9)

The method according to claim 9, wherein determining, according to the RTP padding field in the RTP data packet, whether the RTP data packet is the retransmitted RTP data packet comprises:
acquiring a retransmission indication byte in the RTP padding field; and
determining, according to the retransmission indication byte, whether the RTP data packet is the retransmitted RTP data packet.

### Claim 11 (depends on 10)

The method according to claim 10, wherein the retransmission indication byte at least comprises a retransmission flag and a count flag, the count flag being intended to indicate the number of times that the transmitting end transmits the RTP data packet; and determining, according to the retransmission indication byte, whether the RTP data packet is the retransmitted RTP data packet comprises:
determining, according to the retransmission flag in the retransmission indication byte, whether the RTP data packet is the retransmitted RTP data packet.

### Claim 12 (depends on 11)

The method according to claim 11, wherein the retransmission indication byte further comprises a data flag; and the method further comprises:
when the retransmission flag is intended to indicate that the RTP data packet is the retransmitted RTP data packet, acquiring the data flag in the retransmission indication byte;
when the data flag is intended to indicate that an RTP data field in the RTP data packet is an RTP data field in the RTP data packet to be retransmitted, acquiring and storing the RTP data field in the RTP data packet; or
when the data flag is intended to indicate that an RTP data field in the RTP data packet is not an RTP data field in the RTP data packet to be retransmitted, deleting the RTP data packet.

### Claim 13 (depends on 12)

The method according to claim 12, wherein after receiving the RTP data packets sent by the transmitting end over the RTP data link established with the transmitting end, the method further comprises:
acquiring a length indication byte in the RTP padding field;
determining a length of the RTP padding field according to the length indication byte;
acquiring a predetermined length of an RTP header field in the RTP data packet; and
determining the RTP data field in the RTP data packet according to the length of the RTP padding field and the predetermined length of the RTP header field in the RTP data packet.

### Claim 14 (depends on 13)

The method according to claim 13, wherein
the retransmission indication byte is a penultimate byte in a padding unit, and the length indication byte is a last byte in the padding unit;
the retransmission flag comprises two bits, and the count flag comprises three bits, and the data flag comprises one bit; and
the retransmission flag, the data flag and the count flag are arranged in sequence in the retransmission indication field, and the two bits in the retransmission flag are first two bits in the retransmission indication byte.

### Claim 15 (depends on 9)

The method according to claim 9, wherein prior to determining, according to the RTP padding field in the RTP data packet, whether the RTP data packet is the retransmitted RTP data packet, the method further comprises:
acquiring a padding flag in an RTP header field in the RTP data packet; and
determining, according to the padding flag, whether the RTP data packet comprises the RTP padding field.

### Claim 16 (depends on 9)

The method according to claim 9, wherein prior to determining, according to the RTP padding field in the RTP data packet, whether the RTP data packet is the retransmitted RTP data packet, the method further comprises:
acquiring a predetermined bytes per unit;
partitioning the RTP data packet into a plurality of data segments according to the bytes per unit, a total bytes of each of the data segments being equal to the bytes per unit; and
parsing the plurality of data segments respectively.

### Claim at position 17

17-33. (canceled)

### Claim 34 (depends on 1)

A computer device, comprising a processor and a memory; wherein
the memory is configured to store a computer program; and
the processor is configured to execute the program stored on the memory to perform the method of claim 1.

### Claim 35 (depends on 1)

A computer-readable storage medium, storing at least one code instruction; wherein
when the at least one code instruction is executed by a processor, the at least one code instruction causes the processor to perform the method as claimed in claim 1.

### Claim 36 (depends on 9)

A computer device, comprising a processor and a memory; wherein
the memory is configured to store a computer program; and
the processor is configured to execute the program stored on the memory to perform the method of claim 9.

### Claim 37 (depends on 9)

A computer-readable storage medium, storing at least one code instruction; wherein
when the at least one code instruction is executed by a processor, the at least one code instruction causes the processer to perform the method as claimed in claim 9.
