理解tcp协议
2019-11-06 本文已影响0人
资料库
TCP协议中包含的信息和作用
1.目标端口号和源端口号
2.序列号
3.确认号
4.校验和
TCP协议的数据传输的三次握手
在我的理解里面三次握手主要是为了确认链接通畅,并且让服务端和客户端确认发送数据的初始的序列号(服务端和客户端发送数据是有来有回不只是一个请求然后返回数据这么简单)
在三次握手的开始(1)客户端生成一个随机的序列号给到服务器(2)服务器拿到这个随机的序列号并且+1(ack确认号),然后服务端也生成一个随机序列号(isn),将ack和isn一起返回到客户端(3)客户端收到服务端的ack 和服务端的isn 之后将服务端的ack 和服务端的isn+1成为客户端ack一起返回给服务端
至此服务端和客户端都已经知道彼此一下次发送的初始的序列号,也知道了网络是通的。
TCP协议的数据传输
现在我们经过三次握手之后知道了初始序列号,然后客户端发送一个20个字节的数据 然后服务端接收到的是客户端的初始序列号+20(每一个字节都有一个序列号)+服务端的ack 服务端接收到之后将初始序列号+20+1返回给客户端 并且服务端ack+一个数据比如(10)那么客户端收到的就是 1021 和8010 客户端接收到1021和8010之后再向服务器发送数据8010确认收到了数据。
四次挥手
挥手和确认差不多都主要是确认信息为了方便理解放一张图片
tcp链接的全过程