Remote monitoring of real-time internet protocol media streams
First Claim
Patent Images
1. A method comprising:
- receiving at least portions of media packets from a media stream, the media packets encapsulated in a tunnel having tunnel headers that include tunnel time stamps that identify approximate times when the media packets are initially trapped at an intermediary node, wherein the media packets include media packet headers including media time stamps that identify when the media packets were generated by a media source;
receiving a first set of sequence numbers in the tunnel headers identifying an order that the media packets are trapped and receiving a second set of sequence numbers in the media packet headers identifying an order that the media packets are output from the media source;
using the first set of sequence numbers to identify the media packets dropped over a first portion of a packet switched network using the second set of sequence numbers to identify the media packets dropped over a second portion of the packet switched network or while being trapped at the intermediary node; and
analyzing the media stream according to where the media packets were dropped.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a packet filter (or “trap”) is installed on one or more interfaces of a router, switch (intermediary) or other node in an IP network that identifies multimedia packets for a particular media stream. A packet replicator (or “cloner”) duplicates the identified packets allowing the original packets to continue through the IP network. A forwarder (“tunneler”) encapsulates and sends the cloned media packets to a central facility where the tunneled media stream is further analyzed.
160 Citations
18 Claims
-
1. A method comprising:
-
receiving at least portions of media packets from a media stream, the media packets encapsulated in a tunnel having tunnel headers that include tunnel time stamps that identify approximate times when the media packets are initially trapped at an intermediary node, wherein the media packets include media packet headers including media time stamps that identify when the media packets were generated by a media source; receiving a first set of sequence numbers in the tunnel headers identifying an order that the media packets are trapped and receiving a second set of sequence numbers in the media packet headers identifying an order that the media packets are output from the media source; using the first set of sequence numbers to identify the media packets dropped over a first portion of a packet switched network using the second set of sequence numbers to identify the media packets dropped over a second portion of the packet switched network or while being trapped at the intermediary node; and analyzing the media stream according to where the media packets were dropped. - View Dependent Claims (2, 4, 5)
-
-
3. A method comprising:
-
requesting remote monitoring of a media stream; receiving in response to the request at least portions of media packets trapped from the media stream, the media packets encapsulated in a tunnel having tunnel headers that include tunnel time stamps that identify approximate times when the media packets are trapped at an intermediary node that receives the media packets over a packet switched network from a media source, wherein the media packets include media packet headers include media time stamps that identify when the media packets were generated by the media source; receiving a reference media stream that includes media packets having headers and payloads; receiving portions of the encapsulated media packets from the tunnel that only include headers and no payloads; matching the headers for the media packets in the reference media stream with the headers for the encapsulated media packets from the tunnel; and combining the payloads from the matching media packets in the reference media stream with the headers for the matching encapsulated media packets from the tunnel. - View Dependent Claims (6, 7, 8)
-
-
9. An apparatus, comprising:
-
one or more processors; and a memory coupled to the one or more processors comprising instructions executable by the processors, the processors operable when executing the instructions to; capture media packets at an intermediary router or switch node that forwards the media stream from a media source to one or more media stream endpoints; encapsulate the media packets in tunnel headers that include tunnel time stamps that identify approximate times when the media packets are received at the intermediary router or switch from a media source, wherein the media packets include media packet headers that are encapsulated in the tunnel headers and that include media time stamps that identify when the media packets were generated by the media source; send the captured media packets encapsulated in the tunnel headers, or portions of the media packets encapsulated in the tunnel headers, to a Network Operation Center (NOC); include sequence numbers in the tunnel headers that identify what sequence the media packets are trapped by the intermediary router or switch after being received over a packet switched network from the media source; and encapsulate a second set of sequence numbers in the media packet headers, the second set of sequence numbers identifying an order that the media packets are output from the media source. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A network processing device, comprising a processor configured to:
-
cause one or more network nodes to capture media packets; cause the captured media packets to be encapsulated in real-time media headers, wherein the real-time media headers include a first set of time stamps that identify approximate times when the media packets are captured by the network nodes after being received over a packet switched network from a media source, and wherein the real-time media headers encapsulate a second set of media packet headers that include a second set of time stamps that identify when the media packets were generated by the media source, and wherein the real-time media headers include a first set of sequence numbers that identify what order the media packets were captured by the network nodes, and the real-time media headers encapsulate a second set of sequence numbers in the media packet headers that identify an order that the media packets are output from the media source; and use the first set of sequence numbers in the real-time media headers to identify media packets dropped during transmission over a first portion of the packet switched network and use the second set of sequence numbers to identify the media packets dropped by the network nodes or dropped while the media packets are being transported over a second portion of the packet switched network. - View Dependent Claims (15, 18)
-
-
16. An apparatus, comprising
a network processing device configured to: -
receive a reference media stream from a media source; receive a tunneled media stream containing a media stream captured by an intermediary network node, the media stream comprising captured packets, wherein the captured packets are encapsulated in a tunnel having tunnel headers including a tunnel sequence number and tunnel time stamps identifying a time when the captured packets were captured by the intermediary network node, wherein the captured packets include packet headers each having a media sequence number and media time stamps that identify when the captured packets were generated by a media source; identify a portion of a network where packet loss occurred based on an analysis of the tunnel sequence numbers and the media sequence numbers; identify packets in the reference media stream corresponding with the captured packets in the tunneled media stream; identifying the captured packets that do not have headers or payloads; and use the headers or payloads from the corresponding packets in the reference media stream to recreate the media stream originally captured by the intermediary network node. - View Dependent Claims (17)
-
Specification