美文网首页
传输控制协议TCP原理

传输控制协议TCP原理

作者: LU7IN | 来源:发表于2018-05-27 20:25 被阅读0次
传输控制协议是啥?

传输控制协议其实就是我们嘴上老是说的TCP,但是以前压根就没了解过,也就是跟着别人说而已。上了计算机网络这门课程之后终于对其有所了解,这次的博客就相当于做个笔记吧。

TCP协议(Transport control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。

TCP的工作原理

TCP的原理分为三部分:TCP建立连接,报文传输以及TCP连接释放。其中TCP连接建立需要经过“三次握手”。

TCP连接建立

原理图如下:

TCP握手过程.png

”三次握手“如下:

(1)一开始客户端TCO进程是处于CLOSED状态。当客户端准备发起一次TCP连接时,进入SYN-SEND(准备发送)的状态,客户端首先相处于LISTEN(监听)状态的服务器端TCP进程发送第一个控制位SYN=1的“连接请求报文”。

(2)服务器端在接收到”连接请求报文“之后,如果对方同意建立连接,则向客户端发送第二个控制位SYN=1,ACK=1的”连接建立请求确认报文“。

(3)在接收到”连接建立请求确认报文“之后,客户端发送第三个控制位ACK=1”连接建立请求确认报文“。这时,客户端进入了ESTABLISHED(已建立连接)状态,服务器在接受到ACK报文之后也进入了ESTABLISHED(已建立连接)状态。

报文传输

当客户进程与服务器进程之间的TCP传输连接建立之后,客户端的应用进程与服务器端的应用进程就可以使用这个连接,进行全双工的字节流传输。为了保证TCP工作正常、有序地进行,TCP设置了保持计时器(keep timer),用来防止TCP连接处以长时期空闲。

TCP连接释放

TCP传输连接的释放过程比较复杂,客户端与服务器都可以主动提出连接释放的请求。下面是客户主动提出请求的连接释放“四次握手”的过程。

(1)当客户准备结束一次数据传输,主动提出释放TCP连接时,进入FIN-WAIT-1(释放等待-1)状态。它向服务器端发送第一个控制位FIN=1的“连接释放请求报文”,提出连接释放请求,停止发送数据。

(2)服务器在接受到“连接释放请求报文”之后,需要向客户端发回“连接释放请求确认报文”,表示对接收第一个连接释放请求报文的确认。

(3)服务器的高层应用没有数据需要发送时,它会通知TCP可以释放连接,这时服务器向哭护短发送“连接释放请求报文”。()

(4)客户在收到FIN报文之后,向服务器发送“连接释放请求确认报文”,表示对服务器“连接释放请求报文”的确认。

注:

TCP报文格式.gif

ACK(确认位):TCP在确认连接建立后发送的所有报文段的ACK都要置1.

SYN(同步位):同步位在连接建立时用来同步序号。例如:当SYN=1,ACK=0时,表示这是一个建立连接的请求报文;当SYN=1,ACK=1时,表示这是一个同一连接建立的相应报文。

FIN(终止位):FIN=1时表示发送端的报文发送完毕,请求释放TCP连接。

相关文章

  • TCP/UDP相关

    TCP(传输控制协议) 传输控制协议[TCP,Transmission Control Protocol]是一种面...

  • 传输控制协议TCP原理

    传输控制协议是啥? 传输控制协议其实就是我们嘴上老是说的TCP,但是以前压根就没了解过,也就是跟着别人说而已。上了...

  • TCP

    TCP协议 TCP协议,传输控制协议(Transmission Control Protocol,缩写为TCP)是...

  • 网络协议相关知识点

    网络协议 TCP/IP TCP: TCP(Transmission Control Protocol,传输控制协议...

  • 全面分析TCP的三次握手和四次挥手

    一、传输控制协议TCP简介 1、简介TCP(Transmission Control Protocol) 传输控制...

  • Python TCP编程

    Python网络编程之TCP 一、TCP协议 TCP协议,传输控制协议(Transmission Control ...

  • TCP 基础

    TCP是什么? 传输控制协(TCP:Transmission Control Protocol) 传输控制协议是协...

  • TCP协议及其三次握手和四次挥手机制

    TCP协议 TCP协议,即传输控制协议(英文全拼:Transmission Control Protocol)。 ...

  • TCP协议和HTTP协议

    TCP/IP四层协议 TCP(Transmission Control Protocol 传输控制协议) TCP协...

  • TCP/UDP、IP 、Socket、HTTP笔记

    1.1 TCP/IP协议组 TCP/IP协议(传输控制协议)由网络层的IP协议和传输层的TCP协议组成 IP层负责...

网友评论

      本文标题:传输控制协议TCP原理

      本文链接:https://www.haomeiwen.com/subject/jexijftx.html