TCPIP协议——TCP协议

时间: 2023-07-10 admin IT培训

TCP/IP协议——TCP协议

TCP/IP协议——TCP协议

今天算是对了TCP协议有个肤浅的理解了!

尽管TCP和UDP都是一样的网络层IP,但是TCP却和UDP实现着不一样的服务,TCP是一个面向连接的,可靠地字节流服务!

面向连接是指:两个使用TCP的程序要建立一个TCP连接才能交换数据。

TCP以以下方式提供可靠性:

1)应用程序被分为TCP认为合适发送的数据块!

2)TCP发送一个数据段以后,它启动一个定时器,等待目的端确认收到这个数据段,超时将会重新发送这个数据段!

3)当TCP接收到发自TCP连接另一端的数据,他会发送一个确认!

4)TCP会保持他首部和数据的检验和!

5)既然TCP报文段可以作为IP数据包来传送,而IP数据报的到达可能会失序,因此TCP报文段的到达也可能会失序!

6)既然IP数据报会发生重复,那么TCP的接收端必定会丢弃重复的数据报!

7)TCP还提供流量控制。

 

每个TCP段都包含了源端和目的端的端口号和IP地址。

 

第一:TCP的链接的建立和终止

首先我们得知道几个符号的作用

SYN:同步序号

FIN:发送方完成数据发送

RST:复位连接

PSH:尽可能快的将数据发送往接受进程

 

TCP的三次握手:

1,客户进程发送一个SYN段指明客户打算链接的服务器端口,以及初始序号(ISN),并将TCP的SYN段为报文段1。

2,服务器发回包含服务器的初始序号的SYN报文段(报文段为2)作为应答。

3,客户必须将确认序号设置为服务器的ISN加1对服务器的SYN段加以确认(报文段3)。

这三个报文段完成连接的建立,这个过程就叫三次握手!

 

建立一个TCP链接需要三次握手,但是断开一个TCP链接则要四次握手:

1,首先是客户想服务器进程发送一个数据报文段FIN,

2,服务器进程收到这个报文段FIN,它发回一个ack,确认序号为收到的加1。

3,服务器向客户进程发送一个FIN,

4,和第二步一样!

 

TCP的最大报文段长度

首先我们解释一下什么是最大报文长度:表示TCP传往另一端的最大块数据长度!

当一个链接建立时,链接的双方都要通告各自的MSS大小!

有些系统是可以协商mss的大小长度的,但是有些不可以,如果一方不接受来自另一方的mss协商的话,那么就默认为536个字节,一般来说,如果没有分段发生,我们的mss还是越大越好,当然了mss亦可以限制一段的发送大小,以减少分片的发生!

(未完待续)