Socket
BSD Sockets API
python socket编程详细介绍 – 无名小妖 – 博客园 (cnblogs.com)
Socket类型
socket(family,type[,protocal]) # 使用给定的地址族、套接字类型、协议编号(默认为0)来创建套接字 socket.AF_INET # 服务器之间网络通信 socket.SOCK_STREAM # 流式socket , for TCP socket.SOCK_DGRAM # 数据报式socket , for UDP # 创建TCP Socket s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 创建UDP Socket s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
服务端Socket函数
s.bind(address) # 将套接字绑定到地址, 在AF_INET下,以元组(ip,port)的形式表示地址. s.listen(backlog) # 开始监听TCP传入连接。backlog为可挂起最大连接数量,通常为5 s.accept() # 接受TCP连接并返回(conn,address),即(套接字对象,客户端的地址)
客户端Socket函数
s.connect(address) # 连接到address处的套接字,错误返回socket.error s.connect_ex(adddress) # 同connect,但是成功返回0,失败返回error的值
公共Sock函数
# 发送TCP数据 s.send(string[,flag]) s.sendall(string[,flag]) # 完整发送TCP数据,在返回之前会尝试发送所有数据 # 接收TCP数据 s.recv(bufsize[,flag]) # 发送UDP数据 s.sendto(string[,flag],address) # address = (ip,port) # 接收UDP数据 s.recvfrom(bufsize[.flag])
SocketServer
服务器中心类,可以简化网络服务器的开发