TCP------传输控制协议

面向连接的可靠性传输协议。 ---- 可靠、有序、无丢失、无重复

特点:

.面向连接的传输协议

.每一条TCP连接有且只能存在2个端点,形成一种端到端的连接。

.可靠、有序、无丢失、无重复

.全双工通讯

。发送缓存

。想要发送的应用层数据

。已经发送但未收到确认的数据

。接收缓存

。按需到达但还未被应用程有程序提取的数据

。乱序需到达

.面向字节流

源目IP、源目端口----TCP会话四元组:
套接字:IP:port

TCP报文段:

序列号:携带数据和不携带数据2种,有数据时加上字节数,无加上序列号1

确认机制:(累计确认 )确认序列号表明是接收方希望收到发送的下一个字节的序列号;且表明之前的数据均已接受。

ACK 确认位:当ACK=1时,确认序列号有意义。在连接建立后所有传输的报文段都必须将该标记置为1
SYN:同步位
FIN:终止位
​
RST复位:当TCP连接出现严重错误时,必须释放连接,然后重新接立连接
URG紧急位:当。。。等于1时,表明此文段中存在紧急数据,时高优先数据,应尽快传输给应用程序处理,不在缓存排队。配合紧急指针使用
PSH推送位:当。。。=1时,接收方应尽快交付数据给应用层程序,不在等待缓存填满再向上交付。

TCP可靠性:

排序机制:

MTU--最大传输单元---TCP+IP+data部分
MSS--最大段长度-----TCP分段---->该参数是需要在TCP建立握手的过程中通过前两次SYN报文段来进行---data部分

如果在本地进行分段操作就不需进行分片操作

确认机制和重传机制

RTT--往返时间
RTO--超时重传时间 略大于RTT时间--->动态变化数值,以加倍的形式变化。

超时重传----快速重传

在快速重传机制中,并不是因为RTO时间到达从而触发重传机制,该重传机制时根据对端的反馈信息进行重传,当连续3次收到相同的ACK报文时,发送端会重传数据。这3个连续的ACK报文被称为冗余ACK。

累计确认-----选择确认

也需要进行协商

流控---流量控制机制

窗口:无需等待确认应答,而可以继续发送数据包的最大值。

窗口大小体现在缓存区的大小

TCP要求发送方依据接收窗口rwnd来控制数据的发送量。rwnd等于接收方接收缓存大小减去已存数据量大小-----rwnd可变

TCP面向连接
TCP连接的建立
1、要是双方均知晓对方的套接字信息。
2、允许双方进行参数协商(MSS、窗口值、是否使用选择确认机制)
3、给各设备进行资源分配

TCP连接不是每一次都会成功建立,若第三次握手时的ACK应答报文丢失则客户端不会知到,从而导致客户端时established状态,而服务端则还在SYN-received状态

两次握手会导致服务端已经进入est状态,从而不能使Rst起作用

TCP连接释放

1、对双方各自资源的释放过程
2、任何一方都可以在数据传输连接后发送连接释放请求
​

上个报文的序列号加数据大小 == ACK seq

若某一报文不携带数据则消耗一个序列号

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值