初始化套接字对象

用户名

设置套接字对象时,我使用:

socket.socket()

更详细地说(也是默认设置)的是:

socket.socket(socket.AF_INET, socket.SOCK_STREAM)

关于此的几个问题:

socket.AF_INET允许我通过以传递主机/端口,即ipv4地址。为什么要用惯例来称呼它AF_INET(例如,而不是socket.IPV4。)代表什么?

什么SOCK_STREAM这是否仅表示将接受HTTP请求或其他?另外,使用SOCK_STREAM之间会有什么区别SOCK_RAW

巴尔玛

该名称AF_INET是从Unix复制而来的,是“ InterNET”的缩写。该缩写是在设计IPv6之前多年创建的,当时只有一个Internet协议,因此IPV4设计者并未想到调用它的想法。

AF代表“地址族”,表示该协议使用Internet地址。还有PF,代表“协议族”。在设计该协议时,曾有一种想法,即可能有多个协议使用相同的寻址方式,因此它们将这些概念分开,但实际上它们是一对一的,因此区别逐渐消失了。 (所有AF_xxx常数与相应的PF_xxx常数具有相同的值)。

SOCK_STREAM表示套接字传输字节流。替代方法是SOCK_DGRAM,它以称为“数据报”的不同单位传输消息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章