首页 > 其他分享 >TCP协议之三次握手,四次挥手!

TCP协议之三次握手,四次挥手!

时间:2024-07-22 20:54:19浏览次数:16  
标签:ACK 握手 SYN TCP Server 四次 Client 序号 FIN

VLSM:可变长子网掩码划分

DOS攻击:拒绝服务攻击

SYN:DDOS攻击(分布式拒绝服务攻击)

私有IP严禁进行子网掩码划分

TCP协议:

三次握手:

第一次握手:Client将标志位SYN置1,随机产生一个值seq=J,并将该数据包发给Server,Client进入SYN-SENT状态,等待Server确认。

第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立来连接,Server将标志位SYN和ACK都置1,ACK序号J+1,随机产生一个值seq=k,并将该数据包发给Client以确认连接请求,Server进入SYN_RCUD状态

第三次握手:Client收到确认后,检查ack序号是否为J+1,并将该数据包发送给Server,Server检查ack序号是否为k+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTBLISHED状态,完成3次握手,随后Client与Server之间可以开始传输数据了。

四次挥手:

第一次挥手:Client发送一个标志位为FIN包,Seq序号=m,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。

第二次挥手:Server收到标志位FIN后,发送一个标志位ACK给Client,ACK确认序号为m+1,Server进入CLOSE_WAIT状态。

第三次挥手:Server发送一个标志位为FIN包,seq序号=n,ACK确认号=m+1,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。

第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK标志给Server,ACK确认序号=n+1,Server进入CLOSED状态,完成四次挥手。

标签:ACK,握手,SYN,TCP,Server,四次,Client,序号,FIN
From: https://blog.csdn.net/g188_2657/article/details/140567103

相关文章

  • 【tcpreplay】录包并回放(有待研究)
    一、场景   由于测试过程想对生产环境的数据进行录制。并回放给测试服务,所以进行尝试 二、工具   tcpreplay    三、录制数据包sudotcpdump-ienp4s0dstport8000-whttp.pcap-v  四、tcpreplay-edit进行回放sudotcpreplay-edit--unique-ip......
  • 1.8TCP的3次握手和4次挥手
    1.8TCP的3次握手4次挥手TCP协议非常重要,这里把它的连接和释放整理一下。首先是三次握手:1、客户端发起,像服务器发送的报文SYN=1,ACK=0,然后选择了一个初始序号:seq=x。SYN是干什么用的?在链接的时候创建一个同步序号,当SYN=1同时ACK=0的时候,表明这是一个连接请求的报文段。......
  • 从输入URL到页面展示到底发生了什么?--02 握手的故事:三次握手详解
    在这个数字化时代,网络通讯就像人类之间的交流,需要一种方式来确保彼此能够顺利对话。在计算机网络中,TCP三次握手就是这样一种确保双方通信顺畅的机制。今天,我们将通过一个生动有趣的故事来讲解这个重要的过程。引子:约会前的准备想象一下,你要和朋友约个饭,但由于时间久了彼此不太确......
  • 为什么必须使用三次握手?
    TCP(传输控制协议)的三次握手是建立可靠连接的关键步骤,其设计目的是确保通信双方都准备好,并且避免重复的连接初始化。三次握手并不是随意设定的,而是有其重要的技术理由。1.防止重复的连接初始化假设只使用两次握手,会存在以下问题:旧的重复SYN包问题:如果网络中的一个旧的SYN包(因......
  • TCP协议
    TCP协议-----传输控制协议        一种面向连接的可靠传输协议。        TCP协议建立的连接是双向连接。面向连接:在数据传输之前,收发双方需要预先建立一条逻辑通路。无面向连接。TCP分段:因为IP分片后,TCP协议无法保证数据的......
  • TCP协议详解
    TCP协议是一种传输控制协议,一种面向连接的可靠传输协议。TCP协议建立的链接是双向连接。双向连接:在数据传输之前,收发双方需要预先建立一条逻辑通路。无面向连接。序列号SN确认序列号AN6位标志位(URG、ACK、PSH、RST、SYN、FIN)URG---告诉对方有紧急数据......
  • dpvs 调整tcp mss
    修改tcpoptions中mss值src/ipvs/ip_vs_proto_tcp.c因为tcp头部options中不同kind顺序是随机的,所以需要遍历找到kind值是mss2和length值是4,再修改后面的mssvalue。staticvoidtcp_out_adjust_mss(intaf,structtcphdr*tcph){unsignedchar*ptr;intlength;......
  • STM32被拔网线 LWIP的TCP无法重连解决方案
    目录一、问题描述二、项目构成三、问题解决1.问题代码2.解决思路3.核心代码: 四、完整代码1.监测网口插入拔出任务2.TCP任务3.创建tcp任务4.删除tcp任务五、总结一、问题描述最近遇到一个问题,就是我的stm32设备作为tcp客户端和上位机交互,如果在连接过程中网线......
  • keepalived绑定单播地址、非抢占模式及LVS的TCP模式的高可用【转】
    背景:keepalived默认是组播地址进行播放,且默认地址是224.0.0.18,如果配置多个keepalived主机,会导致虚拟IP地址存在冲突问题,这种问题怎么解决呢?解决办法:就是将keepalived主机的多播地址修改为单播地址,绑定固定IP地址,避免在多播模式下,通过VRRP进行广播地址,造成IP地址地址冲突。vrrp_......
  • socket 收发TCP/UDP
    一、c++个人测试记录,有问题还请指出,谢谢参考:C++开发基础之网络编程WinSock库使用详解TCP/UDPSocket开发_c++udp使用什么库-CSDN博客代码中Logger测试见文章: c++中spdlog的使用/python中logger的使用-CSDN博客1、main.cpp收发TCP信号:#include<iostream>#include<thr......