我想使用广播向多个客户端发送一个大的 pickle 转储,但是事实证明,我尝试发送的数据太大,无法通过 UDP 协议发送。
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
serial_data = pickle.dumps(data)
print(sys.getsizeof(serial_data))
s.sendto(serial_data, ('<broadcast>', 37020))
拆分不会有帮助,因为我不希望接收到的数据以字节为单位。
我设法使用 TCP 连接将数据按顺序发送到我的客户端,但作为下一步,我需要为我的实验进行广播。是否存在任何其他协议可以帮助解决此问题?