请问关于tcp超时重传?
请问:
问题1:tcp发包时,如果在一定时间内收不到对方的ack,则会重传这个数据包。那么如果由于网络原因导致一直收不到对方的ack,tcp会一直重传这个数据包吗?有没有最大重传次数的限制?如果有的话在代码中如何修改这个次数?
问题2:如果tcp重传了多次也没有收到ack,会不会将这个事件通知应用进程?如何通知应用进程?是发信号吗?
谢谢大家的回答。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
不会一直重传,一定次数后会断定网络出了问题关闭连接。
本帖最后由 flw 于 2011-04-28 09:33 编辑
man 7 tcp | less -p tcp_retries1
回复 3# flw
谢谢您的回答。那请问如果tcp放弃了重传,它通过什么机制通知应用层的进程呢?还是说根本就不通知?
回复 4# mousel
回调