UDP协议是无连接的、不稳定的网络通信协议。
通过使用飞秋端口(2425),以及模拟飞秋消息格式实现使用UDP协议对飞秋进行通信。
飞秋通信格式:
'1:1000:66:%s:32:%s'
以冒号分割,可以分割成6个小段每个小段的含义如下:
1.版本号
2.消息编号
3.发送人姓名
4.发送人机器名
5.命令字
6.附加内容。
socket.AF_INET:表示使用IPV4地址
socket.SOCK_DGRAM:表示使用UDP协议传输
UDP协议-飞秋应用-单IP版本代码实现:
1 import socket
2
3 if __name__ == '__main__':
4 # 创建UDP套接字
5 # socket.AF_INET:表示使用IPV4地址
6 # socket.SOCK_DGRAM:表示使用UDP协议传输
7 udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
8 # 发送数据
9 send_data = ('1:1000:66:%s:32:666').encode('gbk')
10 udp_socket.sendto(send_data, ('127.0.0.1', 2425))
11
12 # 关闭UDP套接字
13 udp_socket.close()
注意:
虽然UDP是无连接的协议,但也需要有客户端接受UDP发送的数据,如果对方没有客户端接收数据,无论服务端如何发送数据对方都不会接受到,也不会造成内存溢出从而导致蓝屏问题。
但可以通过死循环,打死对方的UDP客户端。