标签:tcp
TCP是一种可靠的面向连接的数据流协议,TCP之所以可靠,是因为它保证了数据的传输有序,这是通过一个序列号和确认号来保证的。
序列号的作用:
TCP将应用层数据和管理数据的每一字节进行顺序编号,序列号用于指出本报文段携带数据的第一个字节的序列号,(SYN,FIN等算作一个字节数据)
确认号的作用:
通信双方采用确认号来对收到的数据进行确认,该确认号之前(不包括该确认号)的所有数据均已正确收到,希望下次接收序列号为该确认号的数据。
TCP建立过程:
NO |
Direction |
Type |
Sequence NO. |
ACK NO. |
1. |
C-->S |
SYN |
Random1 |
0 |
2 |
S-->C |
SYN,ACK |
Random2 |
SN1+1 |
3 |
C-->S |
ACK |
SN1+1 |
SN2+1 |
TCP数据传输:
NO |
Direction |
Type |
Sequence NO. |
ACK NO. |
4 |
C-->S |
PSH,ACK |
SN3 |
ACK3 |
5 |
S-->C |
ACK |
SN2+1 |
SN4+Data_length |
TCP断开连接:
NO |
Direction |
Type |
Sequence NO. |
ACK NO. |
6 |
C-->S |
FIN,ACK |
SN4+ Data_length |
SN5 |
7 |
S-->C |
ACK |
SN5 |
SN6+1 |
8 |
S-->C |
FIN,ACK |
SN6 |
ACK7 |
9 |
C-->S |
ACK |
SN6+1 |
SN6+1 |
标签:tcp
原文地址:http://blog.csdn.net/zxygww/article/details/44922331