The socket man page says that setsockopt with level=SOL_SOCKET and optname=SO_PRIORITY sets the TOS field in IP header: http://www.kernel.org/doc/man-pages/online/pages/man7/socket.7.html However, my experiments and other web search results suggest that the socket man page is wrong. SO_PRIORITY does not seem to set the TOS field in the IP header.
This bug is against a old man pages. Please check with a newer verison. Nick
(In reply to advaitdixit from comment #0) > The socket man page says that setsockopt with level=SOL_SOCKET and > optname=SO_PRIORITY sets the TOS field in IP header: > http://www.kernel.org/doc/man-pages/online/pages/man7/socket.7.html > > However, my experiments and other web search results suggest that the socket > man page is wrong. SO_PRIORITY does not seem to set the TOS field in the IP > header. A quick scan of the kernel source also finds nothing to suggest that SO_PRIORITY sets the TOS field in the IP header. Various URLs question this text in teh man page http://mailman.isi.edu/pipermail/ns-developers/2012-September/010638.html https://athena.ecs.csus.edu/~bransone/pub/misc/netfilter_notes/qos https://ocrete.ca/2009/07/24/when-a-man-page-lies/ http://lkml.iu.edu/hypermail/linux/net/0512.3/0008.html So, I'll remove this text from socket(7) (and also similar text in ip(7)), and close this bug. Thanks.
And one more URL that questioned the effect of SO_PRIORITY on IP TOS: http://thread.gmane.org/gmane.linux.man/2074