小互动
- 人多病少财富
- 养猪大如山老鼠头头瘟
- 酿酒缸缸好造醋坛坛酸
数据流
- 窗口机制:数据在传输时,采用了数据编号、校验计算、确认、重传等措施,保证可靠有序的传输。只有落在发送窗口内的数据帧才允许被发送;同时接收方也始终保持着一个接收窗口,通过发送窗口和接收窗口实现流量控制。
- 拥塞控制:防止过多的数据注入到网络中,避免交换结点中的缓存和处理机超过工作极限,出现过载的问题。
- 流量控制:接收方通过ACK传递信息给发送方,告知发送方控制发送数据量,使接收端来得及接收。
流应用(分包 & 粘包)
分包原因
- 应用层待发送数据大于系统缓冲区长度
- 系统传输策略引起的分包(数据丢失重传,接收方读取缓冲区时机等)
粘包原因
- 发送端需要等系统缓冲区满才发送出去(Nagle算法),造成粘包
- 接收方不及时接收系统缓冲区的包,造成多个包一起接收
封包
- 发送固定长度的数据(data = x * byte)
- 把数据的长度和数据一起发送(length + data = head + body)
- 使用特殊标记给数据做分段间隔(data + flag)