TCP三次握手与四次挥手
TCP 、UDP协议
什么是ISO
ISO 简称:国际标准化组织
OSI七层协议–>五层协议(应传网数物)
### 物理层:电信号转换101110信号
### 数据链路层:以太网协议 数据帧
### 网络层:IP地址
### 传输层:TCP、UDP 可靠/不可靠协议
### 会话层:不同用户机器之间的会话通信
### 表示层:把所有信息汇总相关联,如加密、压缩
### 应用层: HTTP、FTP、SWTP
### tcp传输协议 ==》 必须建立双向通路
各层传输协议、传输单元、及设备端口的比较:
名称 传输协议 传输单元 主要功能设备/接口
物理层 电信号转换101110信号 比特位 光纤、双绞线
数据链路层 ARP、MAC、 帧 二层交换机
网络层 IP、ARP 数据包(packet) 路由器
传输层 TCP、UDP - -
会话层 SMTP、DNS - -
表示层 Telnet、SNMP - -
应用层 FTP、HTTP、DNS
### lp+mac-> 标识全世界范围内任意的一台计算机
TCP、UDP协议
# TCP/UDP 可靠/不可靠协议
TCP — 传输控制协议 #必须建立双向通路
UDP — 用户数据报协议 #传输效率高
### 找到 syn 洪水攻击 ---> 调大半连接池(backlog) 或者优化服务器
###注:
TCP建立连接要进行3次握手,而断开连接要进行4次。
===========================================
建立连接的时候,因为没有数据,所有三次就可以了!
断开数据的时候,因为有数据,所有必须发送完在断开,所以需要四次!
tcp可靠是因为发完消息后,需要收到ack的消息后,再把数据清理掉~
tcp三次握手
1.建立连接时,客户端发送SYN包(SYN=1)到服务器,并进入到SYN-SEND状态,等待服务器确认。
2.服务器收到 SYN 包,必须确认客户的 SYN ( ack=x+1 ) , 同时自己也发送一个 SYN 包( SYN=y ) , 即 SYN+ACK 包,此时服务器进入 SYN-RECV 状态。
3.客户端收到服务器的 SYN+ACK 包,向服务器发送确认报 ACK ( ack=y+1 ) , 此包发送完毕,客户端和服务器进入 ESTABLISHED 状态,完成三次握手,客户端与服务器开始传送数据。
tcp 四次挥手
1.第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
2.第二次挥手: Server 收到 FIN 后,发送一个 ACK 给 Client ,确认序号为收到序号 +1 (与 SYN 相同,一个 FIN 占用一个序号), Server 进入 CLOSE_WAIT 状态。
3.第三次挥手: Server 发送一个 FIN ,用来关闭 Server 到 Client 的数据传送, Server 进入 LAST_ACK 状态。
4.第四次挥手: Client 收到 FIN 后, Client 进入 TIME_WAIT 状态,接着发送一个 ACK 给 Server ,确认序号为收到序号 +1 , Server 进入 CLOSED 状态,完成四次挥手。