头歌:UDP Ping程序实现 客户端创建UDP套接字

头歌平台:头歌实践教学平台 (educoder.net)

头歌:UDP Ping程序实现 客户端创建UDP套接字_第1张图片

创建数据包套接字


套接字 Socket 实质上提供了主机间进程通信的连接点。进程通信之前,双方首先必须各自创建一个连接点,否则是没有办法建立联系并相互通信的。

一个完整的 Socket

{协议,本地地址,本地端口,远程地址,远程端口}

实际应用中,在创建一个 Socket 时先用一个

半相关描述(因为另一半尚不确定):

{协议,本地地址,本地端口}

每一个 Socket 有一个本地的唯一端口号,由操作系统分配。

在 Python 中,创建套接字的函数为:

socket(socket_family,socket_type,protocal=0)

其中:

socket_family 一般为AF_INET

socket_type 可以是 SOCK_STREAMSOCK_DGRAM

protocol 一般不填,默认值为 0。如创建 TCP 套接字

tcpSock = socket(AF_INET, SOCK_STREAM)

创建 UDP 套接字:

udpSock = socket(AF_INET, SOCK_DGRAM)

设置套接字超时时间


在进行客户端向服务器发送 Ping 消息的过程中,有时候可能会因为网络原因造成一直连不上服务器(如服务器程序没有开启)

这时如不手动停止,Socket 可能会一直尝试重连,造成资源的浪费。

这就需要设置timeout来限制重连时间,当 Socket 尝试重连到指定的时间时,就会停止一切操作,并提示达到timeout设定阈值。

设置超时时间一般在创建套接字后,在网络通信之前进行。

示例如下: mysocket.settimeout(10) 代码作用为设定套接字的超时时间为 10 秒。

完整答案


(1条消息) 头歌UDPPing程序实现-客户端创建UDP套接字-网络基础文档类资源-CSDN文库

你可能感兴趣的:(头歌educoder,计算机网络,头哥,网络协议)