Networking 在设计UDP数据包结构时,是否所有字节长度都应排在第一位?

Networking 在设计UDP数据包结构时,是否所有字节长度都应排在第一位?,networking,architecture,network-programming,udp,packet,Networking,Architecture,Network Programming,Udp,Packet,这可能会引起一些固执己见的回答,但有什么理由像这样设计UDP数据包结构 1) DATA1|u长度| DATA2|u长度|……|数据1 |数据2 |…… 而不是像这样的连续剧 2) DATA1|u长度| DATA1 | DATA2|长度| DATA2 | | | | | | | | 对于第1种方法,感觉需要更多的数据准备工作来提前计算每段数据的字节长度 第二种方法几乎只需提前一个字节长度索引/偏移量,就可以一个接一个地写入连续的数据块,而不管它的类型或与前一个数据块的相关性如何 有什么理由在实际数

这可能会引起一些固执己见的回答,但有什么理由像这样设计UDP数据包结构

1)
DATA1|u长度| DATA2|u长度|……|数据1 |数据2 |……

而不是像这样的连续剧

2)
DATA1|u长度| DATA1 | DATA2|长度| DATA2 | | | | | | | |

对于第1种方法,感觉需要更多的数据准备工作来提前计算每段数据的字节长度

第二种方法几乎只需提前一个
字节长度
索引/偏移量,就可以一个接一个地写入连续的数据块,而不管它的类型或与前一个数据块的相关性如何


有什么理由在实际数据之前先将字节长度打包到报头中吗?

这并不重要,但如果由我决定,我更喜欢第二种方法,因为它看起来更容易构建和解析。所涉及的状态更少,并且块彼此独立。

没有技术理由选择其中一个而不是另一个。