1. 套接字是一个应用程序接口,可以使不同主机或同一主机上的不同进程进行通讯。
2. 套接字分为两种类型,分别是面向连接的套接字、无连接的套接字。
面向连接的套接字在通讯之前要建立一条连接。这种通讯方式能提供顺序的,可靠的,不会重复的数据传输。实现这种连接的协议是TCP,在创建TCP套接字的时候要指定套接字类型为SOCK_STREAM。
无连接的套接字,顾名思义,无需建立连接就可以通讯。实现这种连接的协议是UDP,在创建TCP套接字的时候要指定套接字类型为SOCK_DGRAM。
3. Python中,socket模块中的socket ()函数被用来创建套接字。语法如下:
socket (socket_family, socket_type, protocol=0)
socket_family可以是AF_UNIX或AF_INET, AF_UNIX是基于文件型的套接字,AF_INET是基于网络型的套接字。 socket_type可以是SOCK_STREAM或SOCK_DGRAM。protocol一般不填,默认值为0。
参考文献
1. Python核心编程,第16章网络编程
2. 维基百科,Berkeley套接字