UDP
TCP
是建立可靠的连接,并且通信双方都可以以流的形式发送数据。- 相对于
TCP
,UDP
则是面向无连接的协议 - 使用
UDP
协议时,不需要建立连接,只需要知道对方的IP地址和端口号,就可以直接发送数据包。但是能不能到达就不知道了。 - 虽然
UDP
传输数据不可靠,但他的优点是和TCP
比,速度快,对于要求不高的数据可以是用UDP
下面进行实例
server.py
import socket
"""创建一个socket
AF_INET是指IPv4,AF_INET6是指IPv6,我们这里选IPv4就行了
SOCK_STREAM是指TCP,SOCK_DGRAM是指UDP"""
udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
"""绑定一个IP和端口,注意,这里是元组"""
udp.bind(('192.168.56.1', 8080))
while True:
"""循环的接收消息,一次接收1024个字节,recvfrom是接收"""
data, addr = udp.recvfrom(1024)
# 解码
print("msg:", data.decode("utf-8"))
client.py
import socket
"""创建一个socket对象"""
udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while True:
data = input("请输入您要广播的话:")
"""编码,后面第二个参数是元组,IP和端口"""
udp.sendto(data.encode("utf-8"), ('192.168.56.1', 8080))
运行结果:
如果有错误或者有疑问,请私信我喔,感谢观看