目录
Socket - 套接字Socket - 套接字
应用层与TCP/IP协议族通信层(或传输层)之间的抽象层,是一组接口()接收数据;当接口接收数据之后,交由操作系统; 如果数据与操作系统直接交互,会非常麻烦,而socket会将数据进行高度封装/简化在传给操作系统。 socket在python中是一个模块。
# 导入套接字 import socket tcpSock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #获取TCP/ip套接字 # socket.AF_INET:网络socket, 基于TCP协议的socket通信 udpSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #获取UDP/ip套接字 # 服务端套接字函数 s.bind() # 绑定(IP地址,端口号)到套接字 s.listen() # 开机,开始TCP监听 # s.listen(2) 只允许2个客户端链接增加到半链接池,超出会报错。再加上已连接上的一个客户,因此总共有3个客户端。 s.accept() # 被动接受TCP客户端的连接,(阻塞式)等待连接的到来 # conn, addr = s.accpet() # conn:管道 , addr:客户端的IP、端口 # 公共用途的套接字函数 s.recv() # 接收TCP数据,字节可设置 s.send() # 发送TCP数据(send在待发送数据量大于己端缓存区剩余空间时,数据丢失,不会发完) s.sendall() # 发送完整的TCP数据(本质就是循环调用send,sendall在待发送数据量大于己端缓存区剩余空间时,数据不丢失,循环调 s.recvfrom() # 接收UDP数据 s.sendto() # 发送UDP数据 s.getpeername() # 连接到当前套接字的远端的地址 s.getsockname() # 当前套接字的地址 s.getsockopt() # 返回指定套接字的参数 s.setsockopt() # 设置指定套接字的参数 s.close() # 关闭套接字 # 客户端套接字 s.connect() # 主动初始化TCP服务器,连接服务端 s.connect_ex() # connect()函数的扩展版本,出错时返回出错码,而不是抛出异常
查看更多关于python 29 Socket - 套接字的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did172817