当前位置: 技术问答>linux和unix
怎么确定 socket(int domain, int type, int protocol) 三个参数?
来源: 互联网 发布时间:2016-05-09
本文导语: 怎么确定 socket(int domain, int type, int protocol) 三个参数? 我已经找到:domain(协议族) 和 type(套接字类型) 的各种取值,定义在头文件 /usr/include/bits/socket.h 里边。 问题是: 1,domain里一个常用的是AF_INET,但AF_INET 这个协...
怎么确定 socket(int domain, int type, int protocol) 三个参数?
我已经找到:domain(协议族) 和 type(套接字类型) 的各种取值,定义在头文件 /usr/include/bits/socket.h 里边。
问题是:
1,domain里一个常用的是AF_INET,但AF_INET 这个协议族里具体包含哪些具体的协议?自己知道肯定有tcp,udp,但又知道的不全,想找AF_INET协议族的具体定义文件,也不知道在哪里?
2,如果解决了上面的问题,那么其他协议族的具体协议又是在哪里定义的呢?虽然很多自己用不着,但真的想心中有数,请高手赐教!
我已经找到:domain(协议族) 和 type(套接字类型) 的各种取值,定义在头文件 /usr/include/bits/socket.h 里边。
问题是:
1,domain里一个常用的是AF_INET,但AF_INET 这个协议族里具体包含哪些具体的协议?自己知道肯定有tcp,udp,但又知道的不全,想找AF_INET协议族的具体定义文件,也不知道在哪里?
2,如果解决了上面的问题,那么其他协议族的具体协议又是在哪里定义的呢?虽然很多自己用不着,但真的想心中有数,请高手赐教!
|
The protocol specifies a particular protocol to be used with the socket. Normally
only a single protocol exists to support a particular socket type within a given
protocol family, in which case protocol can be specified as 0. However, it is pos-
sible that many protocols may exist, in which case a particular protocol must be
specified in this manner. The protocol number to use is specific to the ¡°communi-
cation domain¡± in which communication is to take place; see protocols(5). See get-
protoent(3) on how to map protocol name strings to protocol numbers.
大意是这样,你要通过第三个参数来指定所使用的协议,但一般情况下,在一个协议簇里支持指定socket类型的的协义只有一个,这种情况下,只需要把它定义成为0就可以了。但协议簇里还有有很多的其它协义,所以需要它来指定使用什么协义。
only a single protocol exists to support a particular socket type within a given
protocol family, in which case protocol can be specified as 0. However, it is pos-
sible that many protocols may exist, in which case a particular protocol must be
specified in this manner. The protocol number to use is specific to the ¡°communi-
cation domain¡± in which communication is to take place; see protocols(5). See get-
protoent(3) on how to map protocol name strings to protocol numbers.
大意是这样,你要通过第三个参数来指定所使用的协议,但一般情况下,在一个协议簇里支持指定socket类型的的协义只有一个,这种情况下,只需要把它定义成为0就可以了。但协议簇里还有有很多的其它协义,所以需要它来指定使用什么协义。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。