zoukankan      html  css  js  c++  java
  • TCP是如何实现三次握手的?

    什么是三次握手

    1. TCP是网络传输层的协议,提供面向连接的可靠的字节流服务,要通信得先建立连接
    2. 所谓三次握手就是指,建立一个TCP连接时,需要CLient与Server发送三个包,确认连接的建立
    3. 这一过程由Client执行connect触发

    简单描述下三次握手的具体过程

    第一次握手:

    Client将SYN置为1,seq=随机值j,将该数据包发送给Server,
    进入SYN_SENT状态,等待Server确认

    第二次握手:

    Server收到数据包由标志位SYN=1知道,是请求建立新连接,
    将ACK置为1,ack=j+1,作为响应Client的请求,
    将SYN置为1,seq=随机值k,发送给Client等待确认,
    Server进入SYN_RECV状态
    因为是建立连接,这些信息在一个数据包中


    第三次握手:

    Client收到响应
    检查ACK==1?,ack==j+1?,若都符合
    将ACK置为1,ack=k+1,发送给Server,Client进入establish状态
    Server收到响应
    检查ACK==1?,ack==k+1?,若都符合
    进入establish状态,三次握手完成,TCP连接建立,开始通信


    TCP报文图:

     
  • 相关阅读:
    Decompiling XAPK Files
    ps4双手柄inputManager设置
    游客须知
    页面类
    Temp
    Web AppDomain
    委托和事件
    动态执行js
    遍历对象属性,成员,方法的方法
    用Windows操作系统的人有时会遇到这样的错误信息:
  • 原文地址:https://www.cnblogs.com/chenlinlab/p/9568489.html
Copyright © 2011-2022 走看看