数据包在传输层到达UDP类型的服务器。当服务器(在传输层)从接收的数据包中提取源IP地址时,服务器在哪里存储该地址,因为将来需要它,因为服务器和客户端之间的连接是无连接的?或者服务器使用什么机制来识别源(在无连接环境中)以便回复?
答案 0 :(得分:-1)
为什么您认为将来需要该地址?它可能不是。
此外,对于OSI模型的前四个网络层,没有客户端/服务器这样的东西。客户端/服务器模型是应用程序概念,而不是网络概念。第2层(例如以太网),第3层(例如IP)和第4层(例如TCP)是对等协议,而不是客户端/服务器协议。
如果一台主机上的应用程序需要来自使用UDP发送数据的主机的回复,则它可以将其主机地址作为应用层协议中UDP数据的一部分包含在内,并且接收应用程序可以存储源IP和UDP地址,无论它想要什么。
正如您所写,UDP是无连接的(并且不可靠),并且使用UDP的应用程序必须假定UDP数据报不会到达。该应用程序要么增加可靠性作为所用应用程序层协议的一部分,要么就是不关心某些数据将丢失。例如:
实时应用程序使用UDP,有些像视频应用程序是单向的。像VoIP这样的其他人使用信令协议来建立双向流量。几乎所有实时协议都不希望重新发送丢失的数据,因为这会导致更多问题。丢失视频或语音数据,无序到达,将会很混乱。