首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用C UDP套接字的选择性重复ARQ

使用C UDP套接字的选择性重复ARQ
EN

Stack Overflow用户
提问于 2018-05-16 03:46:29
回答 1查看 1.2K关注 0票数 3

我正在用C语言编写一个应用程序,它使用WinSockets将数据从发送方应用程序传输到接收方应用程序,并且我用选择性重复替换了停止等待算法,这让我陷入了困境。

我知道您需要发送一个数据包窗口,然后等待所有数据包的确认,然后在一些数据包得到确认后继续发送更多的数据包。接收器在接收到正确的分组之后立即发送ack消息。

然而,我看不到我应该如何在发送者端接收确认。在发送数据包后立即执行recvfrom将有效地将其更改为停止并等待。你对如何继续有什么建议吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-07-19 15:16:28

使用包的滑动窗口,您的想法是正确的。我建议您允许接收方确认多个数据包/序列号。

这样,发送方可以在有限的最大值下保持多个数据包在传输中。发送者不必停止并等待每个发送的数据包,但可以在必须等待之前继续发送最大数量的数据包。

如果接收方在发送方达到最大值之前确认,则不会有等待:)

编辑:

这个家伙有一些很好的想法和代码:http://gafferongames.com/tags/networking

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50358109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档