Timestamping packets in a network
Abstract
Techniques are presented herein to facilitate latency measurements in a networking environment. A first network device receives a packet for transport within a network domain that comprises a plurality of network devices. The plurality of network devices have a common time reference, that is, they are time synchronized. The first network device generates timestamp information indicating time of arrival of the packet at the first network device. The first network device inserts into the packet a tag that comprises at least a first subfield and a second subfield. The first subfield comprising a type indicator to signify to other network devices in the network domain that the tag includes timestamp information, and the second subfield includes the timestamp information. The first network device sends the packet from to into the network domain to another network device. Other network devices which receive that packet can make latency measurements.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method comprising:
receiving a network traffic packet at a first network device for transport within a network domain that comprises a plurality of network devices, the network traffic packet comprising a header with a Layer 2 portion and a Layer 3 portion, wherein the plurality of network devices have a common time reference and the network traffic packet does not include time information sourced from the common time reference, and wherein the first network device is at an ingress edge of the network domain for the network traffic packet, wherein the network traffic packet is received at the first network device from outside of the network domain;
generating, by the first network device, timestamp information indicating time of arrival of the network traffic packet within the network domain;
inserting into the Layer 2 portion of the header of the network traffic packet a first tag that is distinct from contents of the network traffic packet, wherein the first tag comprises at least a first type subfield and a multiple second subfield subfields, wherein the first type subfield comprising a type an indicator to signify to other network devices in the network domain that the first tag includes timestamp information data, and wherein at least one of the multiple second subfield subfields includes the timestamp information indicating time of arrival of the network traffic packet with an associated precision, wherein the timestamp information is configured to be used by each device in the network domain that receives the network traffic packet as an indication of when the network traffic packet entered the network domain; and
sending the network traffic packet from the first network device to another network device in the network domain.
2. The method of claim 1 , further comprising:
receiving at a second network device the network traffic packet sent from the first network device;
determining a time of arrival of the network traffic packet at the second network device; and
measuring latency of the network traffic packet within the network domain based on the time of arrival of the network traffic packet and the timestamp information contained in the first tag of the network traffic packet.
3. The method of claim 1 , further comprising:
at each of the other network devices in the network domain:
receiving the network traffic packet sent by the first network device;
determining time of arrival of the network traffic packet; and
measuring latency of the network traffic packet within the network domain based on the time of arrival of the network traffic packet and the timestamp information contained in the first tag of the network traffic packet.
4. The method of claim 1 , wherein the first type subfield of the first tag is an Ethertype subfield.
5. The method of claim 1 , further comprising inserting in the first tag a validity bit that indicates whether or not the timestamp information is valid.
6. The method of claim 1 , wherein inserting into the network traffic packet comprises inserting a predetermined bit pattern in the second subfield to indicate that the timestamp information of the second subfield is not valid.
7. The method of claim 1 , further comprising:
receiving at a second network device the network traffic packet sent from the first network device; and
inserting an additional a second tag into the network traffic packet, the additional second tag including timestamp information representing time of arrival of the network traffic packet at the second network device, wherein the second tag is distinct from contents of the network traffic packet and distinct from the first tag.
8. A method comprising:
receiving a network traffic packet at an egress port of a first network device, the network traffic packet not including time information sourced from a common time reference and having been transported within a network domain that comprises a plurality of network devices, the network traffic packet comprising a header with a Layer 2 portion and a Layer 3 portion, wherein the plurality of network devices have a common time reference, and wherein the first network device is at an egress edge of the network domain for the network traffic packet;
determining a time of arrival of the network traffic packet at the first network device;
extracting, by the first network device, from the Layer 2 portion of the header of the network traffic packet a tag that is distinct from contents of the network traffic packet, the tag including a type subfield and multiple timestamp subfields, wherein the type subfield comprises an indicator to signify to other network devices in the network domain that the tag includes timestamp information, wherein at least one of the multiple timestamp subfields including timestamp information indicating time of arrival of the network traffic packet within the network domain with an associated precision, wherein the network traffic packet was received within the network domain at a second network device, wherein the second network device is arranged at an ingress edge of the network domain for the network traffic packet; and
determining the a latency of the network traffic packet within the network domain by calculating an elapsed time between the timestamp information and the arrival of the network traffic packet at the egress port of the first network device.
9. The method of claim 8 , wherein extracting the timestamp information comprises extracting at least a first subfield and a multiple second subfield subfields, the first subfield being the type subfield comprising a type the indicator signifying that the multiple second subfield includes subfields include the timestamp information.
10. The method of claim 9 , wherein extracting the first subfield comprises extracting an Ethertype subfield.
11. The method of claim 9 , wherein extracting the timestamp information comprises extracting a predetermined bit pattern in the second subfield to indicate that the timestamp information of the second subfield is not valid.
12. The method of claim 8 , wherein extracting the timestamp information comprises extracting timestamp information for each of the plurality of network devices that the network traffic packet traversed travelling from the second network device to the first network device.
13. The method of claim 8 , wherein extracting the timestamp information comprises extracting a validity bit that indicates whether or not the timestamp information is valid.
14. The method of claim 8 , wherein extracting the timestamp information comprises extracting the timestamp information from an Open Systems Interconnection model Layer 2 portion of the packet.
15. An apparatus comprising:
a plurality of ports each configured to receive and send network traffic packets in a network domain, the network traffic packets comprising a header with a Layer 2 portion and a Layer 3 portion, wherein at least one of the plurality of ports is an egress port at an egress edge of the network domain, and wherein the network traffic packets do not include time information sourced from a common time reference;
a timestamp logic unit configured to extract, from the Layer 2 portion of the header of the network traffic packet a tag that is distinct from contents of the network traffic packet, the tag including a type subfield and multiple timestamp subfields, wherein the type subfield comprises an indicator to signify to other network devices in the network domain that the tag includes timestamp information, wherein at least one of the multiple timestamp subfields including timestamp information indicating time of arrival of the a network traffic packet at the network domain with an associated precision, wherein the timestamp information is generated at a network device arranged at an ingress edge of the network domain for the network traffic packet; and
a latency measurement unit configured to determine a time of arrival of the network traffic packet at the egress port and determine an elapsed time between the arrival of the network traffic packet at the network domain and the arrival of the network traffic packet at the egress port.
16. The apparatus of claim 15 , wherein the timestamp logic unit is configured to extract at least a first subfield and a multiple second subfield subfields, the first subfield being the type subfield comprising a type the indicator signifying that the multiple second subfield includes subfields include the timestamp information.
17. The apparatus of claim 16 , wherein the timestamp logic unit is configured to extract the first subfield as an Ethertype subfield.
18. The apparatus of claim 16 , wherein the timestamp logic unit is configured to extract the timestamp information by extracting a predetermined bit pattern in the second subfield to indicate that the timestamp information of the second subfield is not valid.
19. The apparatus of claim 15 , wherein the latency measurement unit is configured to determine the elapsed time from the time of arrival of the network traffic packet at the egress port and the timestamp information.
20. The apparatus of claim 15 , wherein the timestamp logic unit is configured to timestamp information from an Open Systems Interconnection model Layer 2 portion of the packet.
21. The apparatus of claim 15 , wherein the timestamp logic unit is configured to extract the timestamp information by extracting a validity bit that indicates whether or not the timestamp information is valid.
22. The apparatus of claim 15 , wherein the timestamp logic unit is configured to extract the timestamp information by extracting the timestamp information from an Open Systems Interconnection model Layer 2 portion of the packet.
23. The method of claim 1 , wherein generating the timestamp information indicating time of arrival of the network traffic packet within the network domain comprises determining a time of arrival at the first network device.
24. The method of claim 1 , wherein inserting into the packet the tag comprises inserting the tag in an Open Systems Interconnection model Layer 2 portion of the packet.
25. A method, comprising:
capturing, at a first network device that is configured to forward network traffic packets, a network traffic packet for transport within a network domain that comprises a plurality of network devices, the network traffic packet comprising a header with a Layer 2 portion and a Layer 3 portion, wherein the first network device is at an ingress edge of the network domain for the network traffic packet, and wherein the network traffic packet does not include time information sourced from a common time reference and is transported to the first network device from outside of the network domain; generating, by the first network device, timestamp information indicating time of capture of the network traffic packet at the first network device; including in the Layer 2 portion of the header of the network traffic packet a tag that is distinct from contents of the network traffic packet, wherein the tag comprises at least a first subfield and multiple second subfields, wherein the first subfield comprising a type subfield comprises an indicator to signify to other network devices in the network domain that the tag includes timestamp information, and wherein at least one of the multiple second subfields comprises a timestamp value that indicates time of capture of the network traffic packet at the first network device with an associated precision; and sending the network traffic packet from the first network device to a second network device.
26. The method of claim 25, wherein the tag further includes a subfield indicating a validity of the network traffic packet.
27. The method of claim 25, wherein the network traffic packet containing the tag is formatted such that the network traffic packet can be processed by a second network device that is not configured to understand the tag.
28. The method of claim 25, further comprising:
capturing the network traffic packet at the second network device; determining time of capture of the network traffic packet at the second network device; and measuring latency of the network traffic packet within the network domain based on the time of capture of the network traffic packet at the second network device and the timestamp information included in the tag of the network traffic packet.
29. The method of claim 25, wherein the tag further includes a precision subfield indicating precision of the timestamp value in an associated second subfield.
30. An apparatus comprising:
an ingress port configured to receive a network traffic packet, the network traffic packet comprising a header with a Layer 2 portion and a Layer 3 portion, wherein the network traffic packet does not include time information sourced from a common time reference; and a timestamp logic unit configured to generate timestamp information based on time of arrival of the network traffic packet at the ingress port and insert into the Layer 2 portion of the header of the network traffic packet, a tag that is distinct from contents of the network traffic packet, wherein the tag comprises subfields including a type subfield and multiple timestamp subfields, wherein the type subfield comprises an indicator to signify to other network devices that the tag includes timestamp information, and wherein at least one of the multiple timestamp subfields having an associated precision subfield to indicate a precision for a timestamp value for time of arrival of the network traffic packet in an associated timestamp subfield.
31. The apparatus of claim 30, wherein the network traffic packet further comprises a validity check subfield.
32. The apparatus of claim 30, further comprising:
a latency measurement unit configured to determine latency of the network traffic packet traversing a network domain from a first ingress port of the network domain to a second port based on at least one of the subfields containing timestamp information.
33. The apparatus of claim 30, wherein the type subfield comprises an Ethertype subfield.
34. An apparatus comprising:
a plurality of ports, each port configured to receive and send network traffic packets in a network domain, the network traffic packets comprising a header with a Layer 2 portion and a Layer 3 portion, wherein at least one of the plurality of ports is an ingress port at an edge of the network domain, wherein the network traffic packets do not include time information sourced from a common time reference; a timestamp logic unit configured to insert into the Layer 2 portion of a received network traffic packet a first timestamp information indicating time of arrival of the received network traffic packet at the network domain from outside the network domain, wherein the first timestamp information is generated with reference to the ingress port at the edge of the network domain to enable latency measurements based on the first timestamp information, and the first timestamp information is distinct from contents of the received network traffic packet, the first timestamp information having an associated precision; and wherein the Layer 2 portion of the received network traffic packet further includes a type subfield that comprises an indicator to signify to other network devices received network traffic packet includes timestamp information.
35. The apparatus of claim 34, wherein the type subfield is an Ethertype subfield.
36. A system comprising the apparatus of claim 34, and further comprising another apparatus that receives the network traffic packet that includes the first timestamp information.
37. The method of claim 1, wherein inserting comprises inserting a plurality of additional tags into the network traffic packet, each additional tag including different timestamp information, wherein each additional tag is distinct from the first tag and distinct from other additional tags.
38. The method of claim 8, wherein the network traffic packet includes multiple tags, each tag of the multiple tags including timestamp information indicating time of arrival of the network traffic packet at a different network device, and wherein each tag of the multiple tags is distinct from other tags.
39. The method of claim 38, wherein one or more tags of the multiple tags have been overwritten by a network device when the network traffic packet has a maximum number of tags.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.