udp多播组播

python 复制代码
import socket  ,struct,time
  
# 组播地址和端口号  
MCAST_GRP = '239.0.0.1'  
MCAST_PORT = 8888  
  
# 创建UDP socket对象  
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)  
  
# 绑定socket对象到本地端口号  
# sock.bind((MCAST_GRP, MCAST_PORT))  
  
# 加入组播组  
mreq = struct.pack("4sl", socket.inet_aton(MCAST_GRP), socket.INADDR_ANY) # 使用INADDR_ANY来指定任何网络接口  
sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)  
  
# 发送组播消息  
message = b'Hello, multicast!'  
sock.sendto(message, (MCAST_GRP, MCAST_PORT))  
print('aa')
cnt = 0
# 接收组播消息  
while True:  

    message = 'Hello, zym!'  +str(cnt)
    print(message)
    message=message.encode('gbk')
    cnt = cnt+1
    sock.sendto(message, (MCAST_GRP, MCAST_PORT))  
    time.sleep(1)

    #data, addr = sock.recvfrom(1024)  
    #print('Received message:', data)

实测wifi环境中1发两收,1s发送一次。接收端的丢包率很严重。

相关推荐
猫头虎6 分钟前
永久免费白嫖多个域名,一键托管Cloudflare,免费申请SSL加密证书,轻松建站、搭建线路伪装
服务器·开发语言·网络·数据库·python·网络协议·ssl
shanql16 分钟前
UDP的recvfrom会返回一个完整的数据报
udp·recvfrom
德迅云安全杨德俊18 分钟前
服务器为何成为网络攻击的“重灾区“?
网络·安全·web安全·ddos
wyzqhhhh1 小时前
WebSocket
网络·websocket·网络协议
爱莉希雅&&&1 小时前
DNS分离解析案例
运维·网络·dns
铭哥的编程日记2 小时前
【Linux网络】五种IO模型与非阻塞IO
linux·服务器·网络·tcp/ip·udp
minglie13 小时前
Wireshark抓HTTPS协议包
网络·测试工具·wireshark
Macbethad4 小时前
EtherCAT、Ethernet/IP、ModbusTCP等几种工控以太网协议对比
网络·网络协议·tcp/ip
AC是你的谎言5 小时前
网络层和数据链路层
linux·网络·学习·智能路由器