客户端要不要 bind

UDP 客户端一般不 bind,因为【0】。

开始练习 →

为什么要设超时

客户端 sendto 之后 recvfrom 等回信,必须先 settimeout,因为【0】。

开始练习 →

一次完整的来回

(每道题开头都有同一段:上面的内存版 UDP。) 贯穿全条的内存版 UDP(判题机不联网;接口和真 socket 一字不差,真机上把 net.socket() 换成 socket.socket(AF_INET, SOCK_DGRAM) 就是

开始练习 →

补全:回显服务端

(每道题开头都有同一段:上面的内存版 UDP。) 贯穿全条的内存版 UDP(判题机不联网;接口和真 socket 一字不差,真机上把 net.socket() 换成 socket.socket(AF_INET, SOCK_DGRAM) 就是

开始练习 →

补全:带超时的客户端

(每道题开头都有同一段:上面的内存版 UDP。) 贯穿全条的内存版 UDP(判题机不联网;接口和真 socket 一字不差,真机上把 net.socket() 换成 socket.socket(AF_INET, SOCK_DGRAM) 就是

开始练习 →

补全:按命令回答的服务端

(每道题开头都有同一段:上面的内存版 UDP。) 贯穿全条的内存版 UDP(判题机不联网;接口和真 socket 一字不差,真机上把 net.socket() 换成 socket.socket(AF_INET, SOCK_DGRAM) 就是

开始练习 →

语音通话为什么用它

实时语音、视频通话走 UDP 而不走 TCP,因为【0】。

开始练习 →

DNS 为什么用它

DNS 查域名默认走 UDP,因为【0】。

开始练习 →

广播为什么只能用它

「给网段里所有机器发一条」(广播 / 发现设备)只能用 UDP,因为【0】。

开始练习 →

一条最小的 DNS 查询

本节的 DNS 小工具: encode_name("www.example.com") b"\x03www\x07example\x03com\x00"(每段前面一个长度字节,末尾 0) buil

开始练习 →