2014-10-09 101 views

回答

1

「套接字層」指的是操作系統的套接字抽象。這些選項可以獨立於您正在處理的套接字類型進行設置。實際上,您可能只對TCP/IP套接字感興趣,但也有UDP/IP套接字,Unix域套接字等。與SOL_SOCKET相關的選項可以應用於其中的任何選項。 The list provided in the answer of the other question有一些;在manual page of sockets有更多,在「套接字選項」部分下。

SOL_SOCKET是與該級別關聯的「協議號」的常量。對於其他協議或級別,可以使用getprotoent從其名稱中獲取協議號,或查看協議手冊 - 例如,在manual page of IP中描述了IP協議號(IPPROTO_IP),TCP(IPPROTO_TCP) )和UDP(IPPROTO_UDP),而manual page of Unix sockets表示由於歷史原因,其協議選項也必須使用SOL_SOCKET來設置。此外,您可以在/etc/protocols中找到系統支持的協議列表。並且,當然,每個協議支持的選項都在其手冊中:IP,TCP,UDP,Unix sockets ...

+0

我現在很清楚套接字層。但是SOL代表什麼想法? – 2014-10-10 04:46:41

+0

是否有任何其他選項可以設置,而不是SOL_SOCKET – 2014-10-10 04:47:19

+0

@VinothKumar我已經擴展了我的答案,希望有所幫助! – jdehesa 2014-10-10 07:36:41