tcp协议依靠字节流传输,八个二进制数算一个。要进行传输时,先要传的数据(n个数据包)一起到达tcp
缓冲区,然后再随机个数据包进行传输,之后到达b(目的地)的tcp缓冲区之后,再随机个数据包分别到达
b进行重新组合。
tcp可靠传输的工作原理:
停止等待协议——a发完一个数据包等待b回复收到再发第二个,以此类推。
超时重传——若其中一个数据包丢失(目的地未确认收到数据包),则等待略长于数据包往返时间的一段时
间后再进行传输。
确认包出现问题:
确认丢失——a发完一个数据包b未进行回复,则a认为b未收到数据包便再发一次(实际上是b发回的确认数
据包丢失了)b收到后丢弃收到的数据包再次进行确认数据包的发送。
确认迟到——情景和确认丢失类似,是b的确认数据包由于路径的选择或者其他问题导致很晚传回,在传回
之前ab端的反应和确认丢失类似,当a之后收到对第一个数据包的确认数据包之后,a不坐车任何反应。
//即未收到确认数据包,a就认为没收到数据包,进行二次发送。
URG:决定数据包发送的先后顺序(1先)
ACK: 0确认号无效,1确认号有效(发请求时都为零,因为之前没有数据包,则确认号无效)
SYN:建立会话请求为1
PSH:决定目的地读取的先后顺序(1先)
RST: 异常中断,会话结束(值为1)
FIN: 数据通讯结束,数据传完了,释放链接(值为1)
缓冲区,然后再随机个数据包进行传输,之后到达b(目的地)的tcp缓冲区之后,再随机个数据包分别到达
b进行重新组合。
tcp可靠传输的工作原理:
停止等待协议——a发完一个数据包等待b回复收到再发第二个,以此类推。
超时重传——若其中一个数据包丢失(目的地未确认收到数据包),则等待略长于数据包往返时间的一段时
间后再进行传输。
确认包出现问题:
确认丢失——a发完一个数据包b未进行回复,则a认为b未收到数据包便再发一次(实际上是b发回的确认数
据包丢失了)b收到后丢弃收到的数据包再次进行确认数据包的发送。
确认迟到——情景和确认丢失类似,是b的确认数据包由于路径的选择或者其他问题导致很晚传回,在传回
之前ab端的反应和确认丢失类似,当a之后收到对第一个数据包的确认数据包之后,a不坐车任何反应。
//即未收到确认数据包,a就认为没收到数据包,进行二次发送。
URG:决定数据包发送的先后顺序(1先)
ACK: 0确认号无效,1确认号有效(发请求时都为零,因为之前没有数据包,则确认号无效)
SYN:建立会话请求为1
PSH:决定目的地读取的先后顺序(1先)
RST: 异常中断,会话结束(值为1)
FIN: 数据通讯结束,数据传完了,释放链接(值为1)