我想检索使用 boost asio 接收的 UDP 数据包的接收时间戳。
我发现内核提供了套接字选项SO_TIMESTAMP,它应该允许在 NIC 接收到数据包时生成时间戳。我还发现了这张旧票,它提出了一个补丁来添加对 SO_TIMESTAMP 的支持。
我正在使用 boost 1.60.0,但无法启用此选项:
ip::udp::socket sock;
...
sock.set_option(ip::unicast::timestamp(true));
当我通过同步或异步读取接收数据包时,如何使用 boost 检索 UDP 数据包接收时间并计算自接收以来经过的时间?