「TCP/IP」图解TCP的通信机制

TCP(Transmission Control Protocol)是传输控制协议,其作用于传输层,是一种提供了面向连接通信服务的协议

看TCP的英文全称就知道,其主要作用就是传输 、控制,传输的是数据,控制的是在传输过程中丢包后的重发 、分包乱序后的有序重组 、控制数据传输的速率防止网络拥塞等

这也是我们口中一直说的TCP是一种可靠的传输协议的原因。本文就将对TCP的作用过程以及一些机制进行讲解

TCP的通信机制

  • 一、TCP连接管理
  • 二、分段数据发送
  • 三、重发控制
  • 四、滑动窗口控制
  • 五、滑动窗口的重发控制
  • 六、流控制
  • 七、拥塞控制
  • 八、结束语

一、TCP连接管理

TCP是面向连接进行通信服务的协议,所谓连接,其实就是在两台需要数据交互的主机之间建立一条虚拟的线路,所有的数据交互都是通过这条线路进行的,而TCP就负责这整个线路的创建、销毁、维护管理等工作

在建立连接之前,需要做一些准备,为了确保通信两端是否可以进行正常通信,发送端会通过TCP的首部发送一个SYN包作为建立连接的请求并等待接收端确认应答。如果接收端确认应答并返回一个ACK包,则表示接收端同意与发送端进行通信,然后发送端再次发送一个ACK包给接收端,表示已收到你的同意通信的消息了,此后两端就可以正常通信了;若接收端没有返回给发送端一个确认应答的ACK包,则表示不同意与发送端进行通信,那么两端自然无法进行后续的通信了

两端若在通信完成以后肯定需要断开通信,同样也需要两端互发包来确认是否要断开通信。比如,发送端先发送一个FIN包给接收端,告知想要断开连接,然后接收端可以返回给发送端一个ACK包表示同意你断开连接的请求,紧接着接收端也向发送端发送了一个FIN包,表示其也想断开连接的意愿,发送端在接收到该包后随即返回给接收端一个ACK包表示我也同意你断开连接,这样,两端就断开连接了

总结一下,一次完整的TCP连接的建立与断开至少需要来回发送7个包,其中建立连接需要发3个包,断开连接需要发4个包

我们来看一下完整的通信过程简图

「TCP/IP」图解TCP的通信机制

这就是大家常说的三次握

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值