site_archiver@lists.apple.com Delivered-To: macnetworkprog@lists.apple.com On Mar 27, 2009, at 5:15 AM, Thomas Tempelmann wrote: and then read the time stamp as ancillary data. result = recvmsg(mSocket, &msg, flags); Kind Regards, - Peter Sichel Sustainable Softworks _______________________________________________ Do not post admin requests to the list. They will be ignored. Macnetworkprog mailing list (Macnetworkprog@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/macnetworkprog/site_archiver%40lists.... So my big question is: Which user-level UDP APIs are as immediate as possible when it comes to delivering incoming datagrams? I think you want the kernel to time stamp your packets as they are received: result = setsockopt(mSocket, SOL_SOCKET, SO_TIMESTAMP, &value, sizeof(int)); where "msg" includes both the data buffer and a control buffer containing the kernel time stamp. I do this to measure round trip times in IPNetMonitorX. I haven't tried this with CFSocket, but I imagine it just tells you there is data available on your socket and let's you do the rest if desired. This email sent to site_archiver@lists.apple.com