# US 10,503,807 B2 · Method and apparatus for measuring time stamp unit of remote device

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

- Number: US 10,503,807 B2
- Document ID: US10503807B2
- Status: Granted
- Kind: B2
- Application number: 15/865,270
- Filed: 2018-01-09
- Published: 2018-05-31
- Granted: 2019-12-10
- Earliest claimed: 2015-08-31
- Assignees: Huawei Technologies Co., Ltd.
- Applicants: Huawei Technologies Co., Ltd.
- Inventors: Hua Jiang; Shengjin Wu; Debu Huang
- Web page: https://patentgrep.com/patent/US10503807B2

## CPC

- G06F 17/18: for evaluating statistical data {, e.g. average values, frequency distributions, probability functions, regression analysis (forecasting specially adapted for a specific administrative, business or logistic context G06Q10/04)}
- H04L 43/022: by sampling
- H04L 43/067: using time frame reporting
- H04L 43/106: using time related information in packets, e.g. by adding timestamps
- H04L 43/16: Threshold monitoring
- H04N 21/4305: {Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets (arrangements for synchronising receiver with transmitter by comparing receiver clock with transmitter clock H04L7/0012; arrangements for synchronising receiver with transmitter wherein the receiver takes measures against momentary loss of synchronisation H04L7/0083)}
- H04N 21/8547: involving timestamps for synchronizing content
- G06F 1/04: Generating or distributing clock signals or signals derived directly therefrom
- H04L 69/16: Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

The method for measuring a time stamp unit of a remote device includes: obtaining m sets of sampled data, m is a positive integer, and m>1; calculating m estimated time stamp units according to the time stamps when packets are transmitted and the time points when the previously transmitted data packets and the subsequently transmitted data packets arrive at the measuring point; selecting, from the m estimated time stamp units, an estimated time stamp unit; and calculating a time stamp unit of the remote device according to the selected estimated time stamp unit.

## Claims

### Claim 1

A method for measuring a time stamp unit of a remote device, comprising:
obtaining m sets of sampled data, wherein each set of the sampled data comprises time stamps corresponding to packets and indicating when the packets are transmitted by the remote device and time points indicating when the packets arrive at a monitoring point, wherein m is a positive integer, and m>1, and wherein the sampled data includes:
a first time stamp corresponding to a first packet, the first time stamp indicating when the first packet is transmitted by the remote device;
a second time stamp corresponding to a second packet, the second time stamp indicating when the second packet is transmitted by the remote device, and the second time stamp is later than the first time stamp;
a first time point corresponding to the first packet, the first time point indicating when the first packet arrives at the monitoring point; and
a second point corresponding to the second packet, the second time point indicating when the second packet arrives at the monitoring point;
calculating m estimated time stamp units according to the m sets of the sampled time stamps when the packets are transmitted and sampled time points when the packets arrive at the monitoring point;
selecting, from the m estimated time stamp units, one or more estimated time stamp units by virtue of a difference between each of the one or more selected estimated time stamp units and an average value of the m estimated time stamp units is within a predetermined range; and
calculating the time stamp unit of the remote device according to the one or more selected estimated time stamp units.

### Claim 2 (depends on 1)

The method according to claim 1, wherein calculating m estimated time stamp units according to the m sets of sampled time stamps when packets are transmitted and sampled time points when the packets arrive at the monitoring point comprises:
determining the m estimated time stamp units according to the following formula:
Ui=(S2i−S1i)/(t2i−t1i),
wherein S1i represents a time stamp when a previously transmitted data packet by the remote device in an ith set of sampled data, S2i represents a time stamp when a subsequently transmitted data packet by the remote device in the ith set of sampled data, t1i represents a time point when the previously transmitted data packet in the ith set of sampled data arrives at the monitoring point, t2i represents a time point when the subsequently transmitted data packet in the ith set of sampled data arrives at the monitoring point, and Ui represents an estimated time stamp unit calculated according to the ith set of sampled data.

### Claim 3 (depends on 1)

The method according to claim 1, wherein calculating the time stamp unit of the remote device according to the selected estimated time stamp unit comprises:
determining the time stamp unit of the remote device according to the following formula:
U=int(1/q(ΣUi)),
wherein ΣUi represents a sum of the one or more selected estimated time stamp units, q represents a quantity of the selected estimated time stamp unit, and int represents a rounding down function.

### Claim 4 (depends on 1)

The method according to claim 1, wherein, the selected one or more time stamp units include a first estimated time stamp unit and, wherein
selecting, from the m estimated time stamp units, the one or more estimated time stamp units such that a difference between each of the selected one or more estimated time stamps and an average value of the m estimated time stamp units is within a predetermined range comprises:
selecting, from the m estimated time stamp units, the first estimated time stamp unit by virtue of a difference between the first estimated time stamp unit and the average value of the m estimated time stamp units is less than three times of a sample standard deviation of the m estimated time stamp units.

### Claim 5 (depends on 1)

The method according to claim 1, wherein
packet lengths of any two packets in the m sets of sampled data are equal, and packet transmission intervals of any two sets of sampled data in the m sets of sampled data are equal.

### Claim 6 (depends on 5)

The method according to claim 5, wherein the packet transmission interval meets the following criteria:
D>10L/B,
wherein D represents an actual time span of the packet transmission interval, L represents the packet length, and B represents a network bottleneck bandwidth between the remote device and a local device.

### Claim 7 (depends on 5)

The method according to claim 5, wherein the quantity m of sets of sampled data meets the following criteria:
erfc
⁡
(
λ
⁢
⁢
n
2
⁢
U
_
⁢
m
2
)
<
0.001
,
wherein n represents a quantity of time stamp units comprised in the packet transmission interval, Ū represents the average value of the m estimated time stamp units, a packet transmission queuing delay from the remote device to a local device conforms to negative exponential distribution λe−λt, and the erfc function is a complementary error function.

### Claim 8

A measurement apparatus, comprising: a memory, and a processor; wherein the memory is configured to store a program used by the processor to perform media content rendering:
the processor is configured to obtain m sets of sampled data, wherein each set of the sampled data comprises time stamps corresponding to packets and indicating when the packets are transmitted by a remote device and time points indicating when the packets arrive at a monitoring point, wherein m is a positive integer, and m>1, and wherein the sample data includes:
a first time stamp corresponding to a first packet, the first time stamp indicating a time point when the first packet is transmitted by the remote device;
a second time stamp corresponding to a second packet, the second time stamp indicating a time point when the second packet is transmitted by the remote device, and the second time stamp is later than the first time stamp;
a first time point corresponding to the first packet, the first time point indicating when the first packet arrives at the monitoring point; and
a second point corresponding to the second packet, the second time point indicating when the second packet arrives at the monitoring point;
calculate m estimated time stamp units according to the m sets of the sampled time stamps when the packets are transmitted and sampled time points when the packets arrive at the monitoring point;
select, from the m estimated time stamp units, one or more estimated time stamp units by virtue of a difference between each of the one or more selected estimated time stamp units and an average value of the m estimated time stamp units is within a predetermined range; and
calculate a time stamp unit of the remote device according to the one or more selected estimated time stamp units.

### Claim 9 (depends on 8)

The apparatus according to claim 8, wherein calculating m estimated time stamp units according to the m sets of sampled time stamps when packets are transmitted and sampled time points when the packets arrive at the monitoring point comprises:
determine the m estimated time stamp units according to the following formula:
Ui=(S2i−S1i)/(t2i−t1i),
wherein S1i represents a time stamp when a previously transmitted data packet by the remote device in an ith set of sampled data, S2i represents a time stamp when a subsequently transmitted data packet by the remote device in the ith set of sampled data, t1i represents a time point when the previously transmitted data packet in the ith set of sampled data arrives at the monitoring point, t2i represents a time point when the subsequently transmitted data packet in the ith set of sampled data arrives at the monitoring point, and Ui represents an estimated time stamp unit calculated according to the ith set of sampled data.

### Claim 10 (depends on 8)

The apparatus according to claim 8, wherein: in the process of being configured to calculate the time stamp unit of the remote device according to the selected estimated time stamp unit, the processor is configured to determine the time stamp unit of the remote device according to the following formula:
U=int(1/q(ΣUi)),
wherein ΣUrepresents a sum of the one or more selected estimated time stamp units, q represents a quantity of the selected estimated time stamp unit, and int represents a rounding down function.

### Claim 11 (depends on 8)

The apparatus according to claim 8, wherein the selected one or more time stamp units include a first estimated time stamp unit and, wherein
selecting, the one or more estimated time stamp units such that a difference between each of the selected one or more estimated time stamps and an average value of the m estimated time stamp units is within a predetermined range comprises:
selecting, from the m estimated time stamp units, the first estimated time stamp unit by virtue of a difference between the first estimated time stamp unit and the average value of the m estimated time stamp units is less than three times of a sample standard deviation of the m estimated time stamp units.

### Claim 12 (depends on 8)

The apparatus according to claim 8, wherein
packet lengths of any two packets in the m sets of sampled data are equal, and packet transmission intervals of any two sets of sampled data in the m sets of sampled data are equal.

### Claim 13 (depends on 12)

The apparatus according to claim 12, wherein the packet transmission interval meets the following criteria:
D>10L/B,
wherein D represents an actual time span of the packet transmission interval, L represents the packet length, and B represents a network bottleneck bandwidth between the remote device and a local device on which the apparatus is located.

### Claim 14 (depends on 8)

The apparatus according to claim 8, wherein the apparatus is located on a server, or the apparatus is located on a client.

### Claim 15 (depends on 8)

The apparatus according to claim 8, wherein the monitoring point is located on a router between the remote device and a local device, or the monitoring point is the local device.

### Claim 16

A non-transitory computer-readable storage medium comprising instructions which, when executed by a computer, cause the computer to carry out the method comprises:
obtaining m sets of sampled data, wherein each set of the sampled data comprises time stamps corresponding to packets and indicating when the packets are transmitted by a remote device and time points indicating when the packets arrive at a monitoring point, wherein m is a positive integer, and m>1, and wherein the sampled data includes:
a first time stamp corresponding to a first packet, the first time stamp indicating a time point when the first packet is transmitted by the remote device;
a second time stamp corresponding to a second packet, the second time stamp indicating a time point when the second packet is transmitted by the remote device, and the second time stamp is later than the first time stamp;
a third time stamp corresponding to the first packet, the third time stamp indicating a time point when the first packet arrives at the monitoring point; and
a fourth time stamp corresponding to the second packet, the fourth time stamp indicating a time point when the second packet arrives at the monitoring point;
calculating m estimated time stamp units according to the m sets of the sampled time stamps when the packets are transmitted and sampled time points when the packets arrive at the monitoring point;
selecting, from the m estimated time stamp units, one or more estimated time stamp units by virtue of a difference between each of the one or more selected estimated time stamp units and an average value of the m estimated time stamp units is within a predetermined range; and
calculating the time stamp unit of the remote device according to the one or more selected estimated time stamp units.

### Claim 17 (depends on 16)

The computer-readable storage medium according to claim 16, wherein calculating m estimated time stamp units according to the m sets of sampled time stamps when packets are transmitted and sampled time points when the packets arrive at the monitoring point comprises:
determining the m estimated time stamp units according to the following formula:
Ui=(S2i−S1i)/(t2i−t1i),
wherein S1i represents a time stamp when a previously transmitted data packet by the remote device in an ith set of sampled data, S2i represents a time stamp when a subsequently transmitted data packet by the remote device in the ith set of sampled data, t1i represents a time point when the previously transmitted data packet in the ith set of sampled data arrives at the monitoring point, t2i represents a time point when the subsequently transmitted data packet in the ith set of sampled data arrives at the monitoring point, and Ui represents an estimated time stamp unit calculated according to the ith set of sampled data.

### Claim 18 (depends on 16)

The computer-readable storage medium according to claim 16, wherein calculating the time stamp unit of the remote device according to the selected estimated time stamp unit comprises:
determining the time stamp unit of the remote device according to the following formula:
U=int(1/q(ΣUi)),
wherein ΣUi represents a sum of the one or more selected estimated time stamp units, q represents a quantity of the selected estimated time stamp unit, and int represents a rounding down function.

### Claim 19 (depends on 16)

The computer-readable storage medium according to claim 16, wherein, wherein, the selected one or more time stamp units include a first estimated time stamp unit and, wherein
selecting, from the m estimated time stamp units, the one or more estimated time stamp units such that a difference between each of the selected one or more estimated time stamps and an average value of the m estimated time stamp units is within a predetermined range comprises:
selecting, from the m estimated time stamp units, the first estimated time stamp unit by virtue of a difference between the first estimated time stamp unit and the average value of the m estimated time stamp units is less than three times of a sample standard deviation of the m estimated time stamp units.

### Claim 20 (depends on 16)

The computer-readable storage medium according to claim 16, wherein
packet lengths of any two packets in the m sets of sampled data are equal, and packet transmission intervals of any two sets of sampled data in the m sets of sampled data are equal.
