发布网友 发布时间:2022-05-22 15:57
共1个回答
热心网友 时间:2024-03-08 22:43
UDP协议中数据报收发的功能通常基于UDP端口实现的。UDP协议实现了基于端口的复用功能。每个应用程序在发送数据报之前,必须与操作系统进行协商以获得某个可用的UDP端口(当然也可以自行分配端口,但需要保证系统中不能存在端口冲突)。应用程序利用该端口发送数据报时,需要将端口号放如UDP报文的源端口字段中。如果源端发送数据报无需对方回复,则不需要在本地分配端口,可将源端口字段置为0。
一般,在操作系统中UDP的端口与普通的I/O端口类似,是一个可读写的结构。应用软件通过对端口的读写来实现数据报的收发。在UDP端口内部通常包含了数据缓冲区,用于缓存到达数据报以及暂时未能发送的数据报。在大多数的UDP实现中,当应用程序与操作系统协商,试图使用某个端口接收数据报时,操作系统将为该端口创建一个内部队列来容纳收到的报文。通常应用程序可以指定和修改端口队列的长度。