Hardware time stamping is disclosed. In a method, a transmit time stamp may be added to an outgoing data unit in hardware prior to transmitting the outgoing data unit over a communications medium. The outgoing data unit may be received from a processor and may be intended for a node. The outgoing data unit may be transmitted over the communications medium to the node. An incoming data unit may be received over the communications medium. A receive time stamp may be added to the incoming data unit in hardware before the incoming data unit is provided to the processor. The method may be achieved on a hardware device included on a board in a network testing system.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method comprising: receiving in a network communications unit an outgoing data unit from a processor, the outgoing data unit intended for a node; adding a transmit time stamp to the outgoing data unit in the network communications unit prior to transmitting the outgoing data unit over a communications medium, the adding including the network communications unit performing the following actions in the following order beginning calculating verification information for the outgoing data unit, wherein the verification information includes at least one from the group including a checksum, a cyclic redundancy check (CRC) and a frame check sequence (FCS) beginning transmission of the outgoing data unit over the communications medium to the node, obtaining a current time from a counter, adding the current time as the transmit time stamp to the outgoing data unit, completing calculating the verification information for the outgoing data unit, adding the verification information to the outgoing data unit, completing transmission of the outgoing data unit over the communications medium to the node; the network communications unit receiving over the communications medium from the node an incoming data unit intended for the processor; appending a receive time stamp to the incoming data unit in the network communications unit before the incoming data unit is provided to the processor; the network communications unit providing the incoming data unit to the processor.
2. The method of claim 1 wherein the transmitting comprises: the network communications unit providing the outgoing data unit to a physical (PHY) layer unit.
3. The method of claim 1 wherein appending a receive time stamp comprises: the network communications unit obtaining a current time from a counter the network communications unit adding the current time as the receive time stamp to the incoming data unit.
4. The method of claim 1 further comprising: the network communications unit calculating verification information for the incoming data unit.
5. The method of claim 1 further comprising: the processor computing a quality score for a communication over the communications medium based on the transmit time stamps and the receive time stamps included in a plurality of data units, the communication including at least one from the group comprising a voice communication, a streaming media, a streaming audio, and a voice over internet protocol (VOIP) communication.
6. The method of claim 1 further comprising: the processor computing a jitter for a network communication.
7. The method of claim 1 further comprising: the processor computing a round trip latency for a network communication based on the transmit time stamp and the receive time stamp included in the incoming data unit.
8. The method of claim 7 further comprising: the processor computing a quality score for a voice communication over the communications medium based on the round trip latency for a plurality of network communications.
9. The method of claim 1 further comprising: the processor computing a one way latency for a network communication based on the transmit time stamp and the receive time stamp included in the incoming data unit.
10. A method comprising: appending a transmit time stamp to an outgoing data unit in a network communications unit prior to transmitting the outgoing network communication over a communications medium, the outgoing data unit originating with a processor and intended for a node, the appending including the network communications unit performing the following actions in the following order beginning calculating verification information for the outgoing data unit, wherein the verification information includes at least one from the group including a checksum, a cyclic redundancy check (CRC) and a frame check sequence (FCS) beginning transmission of the outgoing data unit over the communications medium to the node, obtaining a current time from a counter adding the current time as the time stamp to the outgoing data unit completing calculating the verification information for the outgoing data unit adding the verification information to the outgoing data unit completing transmission of the outgoing data unit over the communications medium to the node.
11. The method of claim 10 wherein the transmitting comprises the network communications unit providing the outgoing data unit to a physical (PHY) layer unit.
12. The method of claim 10 further comprising receiving an incoming data unit directly over the communications medium appending a receive time stamp to the incoming data unit in the network communications unit before the incoming network communication is provided to the processor.
13. A network card including a processor and a network communications unit and coupled with a communications medium, the network card configured to perform actions comprising: appending a transmit time stamp to an outgoing data unit in the network communications unit prior to transmitting the outgoing data unit over the communications medium, the outgoing data unit originating with the processor and intended for a node the network communications unit transmitting the outgoing data unit over the communications medium the network communications unit receiving an incoming data unit over the communications medium, the incoming data unit intended for the processor and originating with the node appending a receive time stamp to the incoming data unit in the network communications unit before the incoming data unit is provided to the processor the network communications unit providing the incoming data unit to the processor.
14. The network card of claim 13 wherein the appending a transmit time stamp comprises the network communications unit performing the following actions in the following order: beginning calculation of verification information for the outgoing data unit, wherein the verification information includes at least one from the group including a checksum, a cyclic redundancy check (CRC) and a frame check sequence (FCS); beginning transmission of the outgoing data unit over the communications medium to the node; obtaining a current time from a counter; adding the current time as the transmit time stamp to the outgoing data unit; completing calculation of the verification information for the outgoing data unit; adding the verification information to the outgoing data unit; completing transmission of the outgoing data unit over the communications medium to the node.
15. The network card of claim 13 wherein the beginning transmission and the completing transmission include: the network communications unit providing the outgoing data unit to a physical (PHY) layer unit included in the network card.
16. The network card of claim 13 wherein appending a receive time stamp comprises: the network communications unit obtaining a current time from a counter the network communications unit adding the current time as the receive time stamp to the incoming data unit.
17. The network card of claim 13 wherein the network communications unit is configured to perform further actions comprising: the network communications unit calculating verification information for the incoming data unit.
18. The network card of claim 13 configured to perform further actions comprising: the processor computing a quality score for a communication over the communications medium based on the transmit time stamps and the receive time stamps included in a plurality of data units, the communication including at least one from the group comprising a voice communication, a streaming media, a streaming audio, a voice over internet protocol (VOW) communication.
19. The network card of claim 13 configured to perform further actions comprising: the processor computing a round trip latency for a network communication based on the transmit time stamp and the receive time stamp included in the incoming data unit.
20. The network card of claim 13 configured to perform further actions comprising: the processor computing a one way latency for a network communication based on the transmit time stamp and the receive time stamp included in the incoming data unit.
21. The network card of claim 13 configured to perform further actions comprising: the processor computing a jitter for a network communication.
22. The network card of claim 13 having multiple processors and multiple network communications units included thereon.
23. A network testing system including the network card of claim 13 included therein.
24. A network card comprising: a processor a memory coupled with the processor means for network communications, the means for network communications comprising means for appending a transmit time stamp to an outgoing data unit in hardware prior to transmitting the outgoing data unit over a communications medium, the outgoing data unit received from a processor and intended for a node means for transmitting the outgoing data unit over the communications medium means for receiving an incoming data unit over the communications medium means for appending a receive time stamp to the incoming data unit in hardware before the incoming data unit is provided to the processor means for providing the incoming data unit to the processor.
25. A network testing system having at least one network card of claim 24 included thereon.
26. The network card of claim 24 wherein the means for appending a receive time stamp comprises: means for obtaining a current time from a counter means for adding the current time as the receive time stamp to the incoming data unit.
27. The network card of claim 24 further comprising means for calculating verification information for the incoming data unit.
28. The network card of claim 24 wherein the means for appending a transmit time stamp to an outgoing data unit comprises means for obtaining a current time from a counter means for adding the current time as the transmit time stamp to the outgoing data unit means for calculating verification information for the outgoing data unit means for adding the verification information to the outgoing data unit.
29. The network card of claim 24 wherein the means for transmitting the outgoing data unit comprises means for providing the outgoing data unit to a physical (PHY) layer unit.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
March 30, 2005
July 14, 2009
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.