Python标准库中的UDP分片

4

我对于在Python中处理UDP分段应该不是由开发人员自己处理的,这样理解是否正确?

我是否理解正确,我将收到包含所有原始发送数据而不仅仅是其中一个片段的UDP数据包?

while True:
  data, addr = s.recvfrom(65535)
  # Process packet

2
使用UDP协议时,你要么收到完整的数据包,要么什么都不收到。如果数据包被分片了,你只收到其中一个分片而没有收到其他分片,那么这个数据包就会被丢弃。除非我没有理解你的问题。我还建议你不要尝试发送那么大的数据包,因为MTU通常只有1500左右。 - WalterM
1个回答

0

您将在一个发送或写操作中获得通过另一个UDP套接字发送的整个数据报。UDP不像TCP那样面向流。


那么就不需要担心分段问题,我可以期望整个数据在任何情况下都能被接收到,即使这些数据被分成了几个数据包? - FrozenHeart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接