提示:以下是本篇文章正文内容,下面案例可供参考
一、TCP协议
TCP协议——传输控制协议 TCP是面向连接的、可靠的进程到进程通信的协议 TCP提供全双工服务,即数据可在同一时间双向传输 TCP报文段
- TCP将若干个字节构成个分组, 叫报文段
- TCP报文段封装在IP数据报中
序号:发送端为每个字节进行编号,便于接收端正确重组 确认号:用于确认发送端的信息 窗口大小:用于说明本地可接收数据段的数目,窗口大小是可变的 SYN:同步序号位,TCP需要建立连接时将该值设为1 ACK:确认序号位,当该位为1时,用于确认发送方的数据 FIN:当TCP断开链接时将该值设为1
二、TCP三次握手,四次断开
三次握手原理: 客户端向服务器发送SYN同步请求,请求与服务器建立连接,服务器收到此SYN同步请求后,会针对客户端的SYN同步请求进行ACK响应,同时也会发送一个SYN同步请求,当客户端收到服务器发过来的SYN同步请求时,会给予一个ACK响应。
为什么要三次握手: 因为TCP是可靠的传输层协议,它在传输数据前,会建立双向数据通信通道,当保证双向数据传输的通道没有问题时,才会发送数据,起到保护数据的作用。
四次断开原理: 客户端向服务器发送FIN断开请求,服务器接收到此请求后,回复一个ACK。服务器向客户机发送FIN断开请求,客户机收到此请求后,回复一个ACK。
三次握手握三次,为什么断开要断四次? 数据传输方向是双向的,一个方向的数据通道关闭需要一次请求和一次确认,因此需要断两次,而我们有两个数据方向,因此需要断四次。
TCP半关闭状态是什么情况: 客户机向服务器发送了FIN请求,服务器也给予了ACK响应。但是,服务器和客户机之间还有数据要传输,因此服务器并没有向客户机立即发送FIN请求。
三、端口号
1.端口号 客户端根据需要哪种服务,从而发送到特定的目的端口 端口划分为三个类别,其范围介于1到65535之间
- 公认端口:与通用网络应用程序相关联的目的端口称为公认端口。这些端口范围从1到1023
- 注册端口:端口1024到49151可作为源端口或目的端口使用,组织可使用这些端口注册即时消息等应用程序
- 私有端口:端口49152到65535通常作为源端口使用
2.常用的TCP端口号及其功能
端口号 | 协议 | 功能 |
---|
21 | FTP | FTP服务器所开放的控制端口 | 23 | TELNET | 用于远程登录,可以远程控制管理目标计算机 | 25 | SMTP | SMTP服务器开放的端口,用于发送邮件 | 80 | HTTP | 超文本传输协议 | 110 | POP3 | 用于邮件的接收 |
总结
1.传输层协议: TCP——传输控制协议 UDP——用户数据报协议 2.TCP建立连接的过程叫做三次握手,断开连接的过程叫做四次断开 3.端口号范围:1-65535
|