IP Library › Granted Patent US 12,549,462
Granted Patent B1
US 12,549,462 · App. 18/157,707 · Granted Feb 10, 2026

Packet loss detection in real-time communications

Inventor: Arvind Swaminathan (San Jose, CA)
Assignee: WhatsApp LLC
H04L43/0829
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,549,462
App. No.
18/157,707
Granted
Feb 10, 2026
Kind
B1
Abstract

A method includes determining a packet loss rate in a real-time communication event based on a size of a packet block in a received sequence comprising multiple packets, determining a number of packet loss clusters within the packet block based on the packet loss rate, identifying one of a random loss pattern or a burst loss pattern based on the number of packet loss clusters or based on whether packet loss pattern matches a geometric distribution, including an error correction bit in at least one of the packets in the packet block when a random loss pattern is identified, and reducing a packet transmission rate when a burst loss pattern is identified. A system including a memory storing instructions which, when executed by a processor, cause the system to perform the above method, is also provided.

Claims (39)

1 . A computer-implemented method, comprising:

determining a packet loss rate associated with a real-time communication event based on a size of a first packet block;

determining a number of packet loss clusters within the first packet block based on the packet loss rate;

identifying, based on the number of packet loss clusters, a first loss pattern indicative of a random packet loss;

in response to identifying the first loss pattern, including an error correction bit in a packet in the first packet block;

identifying a second loss pattern in a second packet block, wherein the second loss pattern is indicative of network congestion; and

in response to identifying the second loss pattern, reducing a packet transmission rate in the second packet block;

wherein identifying the first loss pattern or the second loss pattern is based on an average packet distance between packet loss clusters in the first packet block.

2 . The computer-implemented method of claim 1 , wherein determining the packet loss rate further comprises determining that a packet is a retransmitted packet.

3 . The computer-implemented method of claim 1 , further comprising selecting the size of the first packet block or second block and forming a test window that includes at least two packet blocks.

4 . The computer-implemented method of claim 1 , wherein determining the packet loss rate further comprises determining a number of packets lost within the first packet block.

5 . The computer-implemented method of claim 1 , wherein a packet loss cluster comprises a plurality of lost packets that are separated by fewer than a pre-determined number of packets.

6 . The computer-implemented method of claim 1 , wherein determining the number of packet loss clusters is based on a total packet loss in the first packet block or second packet block.

7 . The computer-implemented method of claim 1 , wherein identifying the first loss pattern further comprises determining that a packet loss distribution follows a geometric distribution.

8 . The computer-implemented method of claim 1 , wherein identifying the second loss pattern further comprises verifying that the packet loss rate is higher than a threshold value.

9 . The computer-implemented method of claim 1 , wherein identifying the first loss pattern or the second loss pattern is based on an average packet distance between missing packets within a packet loss cluster.

10 . The computer-implemented method of claim 1 , further comprising reducing the size of the first packet block or second packet block for a selected number of blocks.

11 . The computer-implemented method of claim 1 , further comprising increasing the size of the first packet block or second packet block for a selected number of blocks.

12 . A system, comprising:

a memory storing multiple instructions; and

one or more processors configured to execute the instructions to cause the system to:

determine a packet loss rate associated with a real-time communication event based on a size of a first packet block;

determine a number of packet loss clusters within the first packet block based on the packet loss rate, wherein a packet loss cluster comprises a plurality of lost packets that are separated by fewer than a pre-determined number of packets;

identify, based on the number of packet loss clusters, a first loss pattern indicative of a random packet loss;

in response to identifying the first loss pattern, include an error correction bit in a packet in the first packet block;

identify a second loss pattern in a second packet block, wherein the second loss pattern is indicative of network congestion; and

in response to identifying the second loss pattern, reduce a packet transmission rate in the second packet block.

13 . The system of claim 12 , wherein determining the packet loss rate further comprises determining that a packet is a retransmitted packet rate.

14 . The system of claim 12 , wherein the one or more processors further execute instructions to select the size of the first packet block or the second packet block and forming a test window that includes at least two packet blocks.

15 . The system of claim 12 , wherein determining the packet loss rate further comprises determining a number of packets lost within the first packet block.

16 . The system of claim 12 , wherein determining the number of packet loss clusters within the first packet block or the second packet block based on a total packet loss in the first packet block or the second packet block.

17 . The system of claim 12 , wherein identifying the first loss pattern further comprises that a packet loss distribution follows a geometric distribution.

18 . A computer-implemented method, comprising:

determining a packet loss rate associated with a real-time communication event based on a size of a first packet block;

determining a number of packet loss clusters within the first packet block based on the packet loss rate, wherein the packet loss cluster comprises a plurality of lost packets that are separated by fewer than a pre-determined number of packets;

identifying, based on the number of packet loss clusters, a first loss pattern indicative of a random packet loss;

in response to identifying the first loss pattern, including an error correction bit in a packet in the first packet block;

identifying a second loss pattern in a second packet block, wherein the second loss pattern is indicative of network congestion; and

in response to identifying the second loss pattern, reducing a packet transmission rate in the second packet block.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2023
From: SWAMINATHAN, ARVIND
To: WHATSAPP LLC
Reel/Frame 062669/0729 →
References Cited (20)
US 6947379B1 · Gleichauf · 2005 [cited by examiner]
US 7681101B2 · Oran et al. · 2010 [cited by applicant]
US 8036223B2 · Sau et al. · 2011 [cited by applicant]
US 8116215B2 · Park · 2012 [cited by applicant]
US 8305913B2 · El-Hennawey et al. · 2012 [cited by applicant]
US 11394839B2 · Kawaguchi · 2022 [cited by examiner]
US 11848747B1 · Ettus · 2023 [cited by examiner]
US 20040066271A1 · Leck · 2004 [cited by examiner]
US 20050105471A1 · Ido · 2005 [cited by examiner]
US 20080037864A1 · Zhang · 2008 [cited by examiner]
US 20130163444A1 · Tee · 2013 [cited by examiner]
US 20170041242A1 · Isobe · 2017 [cited by examiner]
US 20180337866A1 · Jung · 2018 [cited by examiner]
US 20220330104A1 · Lee · 2022 [cited by examiner]
US 20230188447A1 · Alleyne · 2023 [cited by examiner]
US 20240414514A1 · Xiao · 2024 [cited by examiner]
EP 2256991A1 · 2010 [cited by applicant]
Alexander Gillis, Packet Loss, TECHTARGET, pp. 1-8 (Aug. 2021)(available at https://www.techtarget.com/searchnetworking/definition/packet-loss) (Year: 2021). [cited by examiner]
“Geometric Distribution—Wikipedia,” Retrieved from Internet: https://en.wikipedia.org/w/index.php?title=Geometric_distribution&direction=prev&oldid=1134293900, Dec. 14, 2022, 10 pages. [cited by applicant]
Zanaty M., et al. “RTP Payload Format for Flexible Forward Error Correction (FEC),” Internet Engineering Task Force (IETF), Jul. 2019, 41 pages. [cited by applicant]