1.链路层:网络适配器(网卡) - 主要协议:ARP地址解析协议 - 提供服务: * 封装成帧:将网络层数据报封装成帧 * 链路接入:MAC协议,媒体访问控制协议。规定了帧在链路上传输的规则 * 可靠交付:通过确认和重传,保证无差错地经链路层移动每个网络数据报。 * 差错检测和纠正:用硬件实现 - ...
分类:
其他好文 时间:
2017-02-20 01:13:12
阅读次数:
210
1、有时候为了所谓的性能,我们倾向于使用udp,但是我们又期望数据的传输是可靠的,因此需要在应用层提供可靠性。 2、可靠、健壮的udp必须提供: a、在合理的时间内没有收到回复,进行重传 b、保证应答和请求的匹配 3、基于udp协议,在应用层提供可靠性,需要做很多事情,比如:滑动窗口,拥塞控制,对这 ...
分类:
其他好文 时间:
2017-02-11 19:53:17
阅读次数:
134
当TCP主动关闭套接字时,采用四步握手机制来彻底关闭连接。如图: 发送主动关闭的一方在最终转换消息时经历了一个TIME_WAIT状态,并且保持这个状态一段时间。TIME_WAIT状态存在打作用是什么? TIME_WAIT状态主要用于:重传机制,避免相同序列号导致与上次延迟数据发生混,。 ...
分类:
其他好文 时间:
2017-01-31 11:26:06
阅读次数:
289
处理线上问题经常会碰到网络抖动的情况, 网络抖动有可能就是TCP重传导致,下面简单说下TCP重传的排查思路,不一定能完全解决问题 1. 找运维同事确定是否是网线问题, 如果是网线问题请更换网线 2. 使用ping 确定是不是网络问题, 通常系统自带的ping命令是走ICMP协议,这个是基于IP层的协 ...
分类:
其他好文 时间:
2017-01-15 12:51:50
阅读次数:
171
TCP提供一种面向连接的,可靠的字节流服务。 TCP 通过如下方式来提供可靠性: 应用数据被分割成TCP认为最适合发送的数据块。 超时重传机制。TCP发出一个段后,启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到确认,将重发报文段。 TCP收到数据后,将发送一个确认。这个确认不是立即发 ...
分类:
其他好文 时间:
2017-01-07 01:18:45
阅读次数:
164
目录 一. Sipdroid的请求超时和重传 二. SIP中超时和重传的定义 三. RFC中超时和重传的定义 一. Sipdroid的请求超时和重传 Sipdroid实现SIP协议栈系列, 之前的文章仅涉及了SIP消息的基本概念, 比如: 请求型消息: INVITE, REGISTER... 应答型 ...
分类:
其他好文 时间:
2017-01-03 21:05:04
阅读次数:
309
可以根据wireshark的Seq序列号和Ack序列号来进行详细分析。 可见,网络丢包(可能是网络拥堵、也有可能是骨干网上有“防火墙”故意随机丢包,因为这个服务器的IP放在国外)对于网络的响应会有很大的影响。 丢包(或者超时)后的重传是TCP协议中一个很重要的机制。这个机制可以有不同的策略。值得研究 ...
分类:
其他好文 时间:
2016-12-18 01:57:11
阅读次数:
297
作者:陈硕链接:https://www.zhihu.com/question/20060141/answer/26735814来源:知乎著作权归作者所有,转载请联系作者获得授权。 UDP 的使用范围很窄,而且编程比 TCP 难多了: 你真的很在乎延迟,不能忍受重传,那么就用UDP,例如 NTP 协议 ...
分类:
其他好文 时间:
2016-12-12 23:11:34
阅读次数:
402
这篇文章是下篇,所以如果你对TCP不熟悉的话,还请你先看看上篇《TCP的那些事儿(上)》 上篇中,我们介绍了TCP的协议头、状态机、数据重传中的东西。但是TCP要解决一个很大的事,那就是要在一个网络根据不同的情况来动态调整自己的发包的速度,小则让自己的连接更稳定,大则让整个网络更稳定。在你阅读下篇之... ...
分类:
其他好文 时间:
2016-12-11 08:29:51
阅读次数:
313
本文主要介绍WebRTC中丢包重传NACK的实现,作者:weizhenwei ,文章最早发表在编风网,微信ID:befoio 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn)。 在WebRTC中,前向纠错(FEC)和丢包 ...
分类:
移动开发 时间:
2016-12-09 11:40:03
阅读次数:
384