为什么UDP发送和接收的端口号必须一致?

如题所述

这是通讯协议规定的。网络通讯中,IP地址+端口才能唯一标识一个真实的通讯地址。就像是现实中如果写信给一个人,发信人必须写清楚省市区和邮箱号,收件知人有同一个邮箱的钥匙才能收到信一样。

客户端不需要固定端口,客户端发送消息时应该由UdpClient自动选择可用的端口。

服务器不可能向NAT内部的客户端主动发起消息,必须等客户端发送消息,然后赶紧发送返回值。因为NAT路由器只会为Udp消息的这种回发规则维护一个较短时间,在这个较短时间上由外部发来的消息才能被路由器正确转发给内部。

扩展资料

UDP是OSI参考模型中一种无连接的传输层协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序的检查与排序由应用层完成,提供面向事务的简单不可靠信息传送服务。UDP 协议基本上是IP协议与上层协议的接口。UDP协议适用端口分别运行在同一台设备上的多个应用程序

UDP提供了无连接通信,且不对传送数据包进行可靠性保证,适合于一次传输少量数据,UDP传输的可靠性由应用层负责。常用的UDP端口号有:

应用协议 端口号

DNS 53

TFTP 69

SNMP 161

温馨提示:答案为网友推荐,仅供参考
相似回答