一 socket(套接字)

1.什么是socket:Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。它把复杂的TCP/IP协议族隐藏在Socket接口后面,了socket以后,无需自己编写代码实现三次握手,四次挥手,ARP请求,打包数据等等,socket已经封装好了,只需要遵循socket的规定去编程,写出的程序自然就是遵循tcp/udp标准的。

Python socket 粘包问题  报头

2.基本语法

客户端
import socket
# 1.创建socket对象  
client = socket.socket() 
# 2.链接服务器    
client.connect((ip,port)) 
# 3.收发数据   通常需要循环
client.send(二进制数据) #   只能发二进制数据
client.recv(字节数)    #  收多少字节数 阻塞直到接收到数据
# 4.断开链接   
client.close()

服务端
# 1.创建socket对象
server = socket.socket()
# 2.绑定一个固定的ip和端口
server.bind(ip,port))
# 3.开始监听客户端的到来
server.listen() # 可不填
# 4.接收客户端的链接请求
conn,addr = server.accept()  # 阻塞直到客户链接到来  没有新连接则不可能执行该函数
# 5.收发数据   通常需要循环
conn.send(二进制数据) #   只能发二进制数据
conn.recv(字节数)    #  收多少字节数 阻塞直到接收到数据
# 6.关闭双行通道和服务器
conn.close()
server.close()
复制代码
View Code

相关文章: