SO_TIMESTAMPING option using
setsockopt() enables hardware timestamping on TCP or UDP sockets. Timestamps are generated by the adapter for each received packet. A timestamp is generated when the first byte enters the adapter. Timestamp resolution is <8ns on an X2 series adapter.
Functions such as
recvmmsg() can then recover hardware timestamps for packets recovered from a socket.