Python 33(1) UDP协议 数据报协议 socketsever模块

一:基于UDP协议通信的套接字 

基于UDP协议 只要是套接字,在开发的过程中一定要有服务端和客户端。 UDP协议说的就是数据报协议,也就是说,基于UDP协议来发数据,每发一个数据,都是带有报头的数据, 而TCP协议,每发一个数据,就是一个数据流 之前解决粘包问题的一个做法。是为每一个数据流在逻辑层面上加了一个头,将它变成一个数据报, 而UDP协议本身发数据就是数据报,所以说TCP协议有粘包问题,UDP协议没有粘包问题,
import socket

server=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
server.bind(('127.0.0.1',8080))

while True:
    data,client_addr=server.recvfrom(1024)
    print(data)
    server.sendto(data.upper(),client_addr)

server.close()
客户端
import socket

client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

while True:
    msg=input('>>:').strip()
    client.sendto(msg.encode('utf-8'),('127.0.0.1',8080))
    data,server_addr=client.recvfrom(1024)
    print(data)
服务端

二:数据报协议的特点

三:socketsever 模块

猜你喜欢

转载自www.cnblogs.com/zedong/p/9588108.html