微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > TCP/IP传输层协议

TCP/IP传输层协议

时间:11-30 来源:互联网 点击:

个带有FIN附加标记的报文段)。

1)当主机A的应用程序通知TCP数据已经完毕时,TCP向主机B发送一个带有FIN附加标记的报文段(FIN理解为

finish)。

2)主机B收到这个FIN报文段之后,并不立即用FIN报文段回复主机A,而是向主机A发送一个确认ACK,同时

同时通知自己相应的应用程序:对方要求关闭连接(先发送ACK为了防止在这段时间内,对方重传FIN报文段)。

3)主机B的应用程序告诉TCP:我要彻底的关闭的关闭连接,TCP向主机A送第二个FIN报文段。

4)主机A收到第二个FIN报文段后,向主机B发送一个ACK表示连接彻底关闭。


TCP的可靠性

TCP是面向流的,即数据段被当作字节的序列化进行传输。

在通过三次握手建立连接时,序列号被初始化。在传输过程中,TCP继续使用这个序列号来标记每一个发送的数据段

没发送一个数据段,序列号加1.接收站点一句序列号重新组装缩所收到数据段。为什么要依靠序列号来重组数据段呢?

例如,在一个告诉高速链路与低速链路并存的网络上,可能会出现高速链路比低速链路上的数据段提前到达的情况,

此时就必须依靠序列号来重组数据段,这就是序列号的作用之一。

在传输过程中,确认号ACK的作用是告诉发送端那些数据包已经成功接收,并且确认号会向发送端指出了接收端希望

收到的下一个数据段的序列号,这种机制称为预期确认,即确认号等于下一个预期的位元组。

在TCP/IP网络中,存在超时与重传两种现象。如果在传输过程中丢失了某个序列号的数据段,导致发送端在给定时间

间隔内得不到那个数据段的应答,那么那个丢失数据段就会被要求重发。数据段会被保存在发送端的缓冲区中,直

到发送端接收到应答号,它才会释放这个缓冲区。这种机制被称为肯定确认与重新传输(Positive Acknowledgement and

Retransimission,PAR),他是虚脱通信协议用来确保可信度的一种技术。

序列号的第二个作用就是消除网络中的重复包(同步复制)。例如在网络拥塞时,发送端迟迟没有收到接收端某个数据段

的ACK包,它可能会认为这个序列号的数据段丢失了,于是它会重新发送,这种情况可能会导致接收端在网络恢复正

常后收到两个同样序列号的数据段,此时接收端会自动丢弃第二个一样数据段。

序列号和应答号为TCP提供了一种纠错机制,提高了TCP的可靠性。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top