假设一个数据包是由UDP发送的。我想知道有效负载的大/小尾数转换在哪一层完成。
答案 0 :(得分:1)
您为什么认为 完成了?传输协议没有您的数据概念,它传输 bytes 。作为应用程序协议设计者,您将必须决定并确保以一定的字节序发送数据。
例如,UDP不知道数据包中某处的四个连续字节形成一个32位整数。它们也可能形成四个1字节的值,例如UTF-8代码点。您是否要UDP随机反转您的字符串?
答案 1 :(得分:0)
协议的“字节序转换”通常在处理协议的层中完成。
例如:NTP程序/库本身在将消息传递到UDP层(=发送)之前,以网络字节顺序创建NTP消息。 UDP层将按网络字节顺序创建UDP标头,但不会更改有效负载(= NTP消息)。
下层协议不知道并不在乎有效载荷中携带哪种上层协议。很少有例外或临界情况,例如NIC中的校验和卸载。