本文已参与「新人创作礼」活动,一起开启掘金创作之路。
TCP
传输控制协议,可靠传输协议,工作在TCP/IP通信模式的传输层,在传输数据之前先和接收者建立连接
特性
面向连接协议
TCP报文格式
TCP报文头部是可变长头部,最小头部长度是20字节,最大头部长度是60字节
TCP三次握手建立过程
1、主机A发送SYN(SEQ=0,CTL=SYN)
2、主机B接收SYN,发送SYN,ACK(SEQ=0,ACK=主机A的SEQ+1,CTL=SYN,ACK)
3、主机A接收SYN,发送ACK(SEQ=1,ACK=1,CTL=ACK)
TCP四次握手断开连接
1、主机A发送FIN,请求断开连接(SEQ=101,ACK=301,CTL=FIN)
2、主机B发送ACK确认FIN(SEQ=301,ACK=102,CTL=ACK)
3、主机B发送FIN,请求断开连接(SEQ=301,ACK=102,CTL=FIN)
4、主机A发送ACK确认FIN(SEQ=102,ACK=302,CTL=ACK)
TCP常用端口列表
| 端口 | 协议 |
|---|---|
| 21 | FTP |
| 23 | Telnet |
| 25 | SMTP |
| 53 | DNS |
| 80 | HTTP |
UDP
用户数据报协议,不可靠传输协议,采用尽力而为的传输方式
特性
属于无连接协议
TCP与UDP的端口相互独立
实验
由于ping测试报文不是传输层之上的协议,这里使用http服务来捕获TCP三次握手和四次挥手过程
实验拓扑图
配置IP地址,使其网络联通
服务端开启http服务
客户端测试连接
在链路上抓包
捕获到TCP连接建立和连接断开过程