1、简述 TCP 的三次握手

tcp的几个状态:
SYN表示建立连接,
FIN表示关闭连接,
ACK表示响应,
PSH表示有数据传输,
RST表示连接重置。

在 TCP/IP 协议中,TCP 协议提供可靠的连接服务,采用三次握手建立一个连接。

1)第一次握手:

建立连接时,客户端Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入syn_sent状态,等待 服务器Server确认。

SYN:同步序列编号(Synchronize Sequence Numbers)

2)第二次握手:

Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入syn_rcvd状态。

3)第三次握手:

Client收到确认后,检查ack=J+1,ACK是否为1,如果正确则将标志位ACK为1,ack=K+1,并将该数据包发送Server,Server检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入established状态,完成三次握手,随后Client和Server之间可以开始传输数据了。

关于TCP/IP协议相关推荐

  1. HTTP 协议入门 — (TCP/IP协议族、通信传输流、URI 与 URL 的区别、Cookie 状态管理、HTTP 支持的方法、状态码类别、HTTP 首部字段)

    TCP/IP协议族 在介绍 HTTP 协议之前,我们先对 TCP/IP 协议族有个大概的了解,TCP/IP 协议从上到下主要分为应用层.传输层.网络层和数据链路层,各层的主要功能如下表所示: 协议层 ...

  2. TCP/IP协议三次握手与四次握手流程解析

    原文链接地址:http://www.2cto.com/net/201310/251896.html TCP/IP协议三次握手与四次握手流程解析 TCP/IP协议的详细信息参看<TCP/IP协议详 ...

  3. ip设置 kali 重置_在 Windows 系统中如何重置 TCP/IP 协议堆栈修复网络连接问题

    Internet 在 TCP/IP 协议上工作,如果 TCP/IP 协议堆栈在 Windows 或任何其他操作系统(例如 Linux 或 MacOS)中无法正常工作,则您的 Internet 连接会出 ...

  4. TCP/IP 协议理解

    TCP/IP 协议(Transmission Control Protocol / internet Protocol),因特网互联协议,又名网络通讯协议.通俗而言:TCP负责发现传输的问题,一有问题 ...

  5. 网络协议OSI、TCP/IP协议、Socket套接字和第三方AsyncSock的使用等解析

    一.网络协议定义 1.OSI参考模型:全称(Open System Interconnection), 开放式系统互联参考模型.是一个逻辑上的定义,一个规范,它把网络协议从逻辑上分为七层,只要目的是为 ...

  6. Python 14.1 TCP/IP协议简介

    TCP/IP协议简介 虽然大家对现在的互联网很熟悉,但是计算机网络比互联网出现的早得多. 为了把全世界不同的计算机都连起来,就必须规定一套全球通用的协议,为了实现互联网这个目标,互联网协议簇(Inte ...

  7. TCP/IP协议分析

    一;前言 学习过TCP/IP协议的人多有一种感觉,这东西太抽象了,没有什么数据实例,看完不久就忘了.本文将介绍一种直观的学习方法,利用协议分析工具学习TCP/IP,在学习的过程中能直观的看到数据的具体 ...

  8. Linux内核网络栈1.2.13-有关tcp/ip协议的基础入门

    参考资料 <<linux内核网络栈源代码情景分析>> Linux内核网络栈的基础内容 主要分析tcp/ip相关的基本构成,概述了socket的系统调用进入内核的一个流程,并了解 ...

  9. 深入TCP/IP协议1---图解OSI参考模型

    首先我们看一下OIS参考模型各个层的作用 更具体一些图下图 字符集:一个国家或一个民族用到的全部字符的集合,美国用ASCII字符集,UTF8 传输层的功能:可靠传输 .流量控制 .拥塞避免,如果出现丢 ...

  10. tcp/ip协议中消息传输对帧消息的操作

    2019独角兽企业重金招聘Python工程师标准>>> 接口:Framer.java: package com.tcpip;import java.io.IOException; i ...

最新文章

  1. 从0到100 | 用户画像的构建思路
  2. 正则表达式判断号码靓号类型
  3. python中callable什么意思_Python中callable的理解?
  4. 启明云端分享| sigmastar ssd201_ffmpeg移植
  5. 被娱乐在线报道的“唐骏造假门事件”
  6. 苹果4s有java系统版本_iphone4s用ios8卡吗?iPhone4s升级iOS8正式版手机体验
  7. 【数据采集】将16进制字符串转化为Double类型输出(依照IEEE754标准)
  8. Shell脚本编程30分钟入门
  9. 芝麻当家运营级商城源码/H5/小程序/网页
  10. 什么样的程序猿,最容易被鄙视?
  11. 2016美国计算机科学硕士,美国计算机科学硕士MS in Computer Science TOP10学校录取要求提醒...
  12. Shell Script 学习一
  13. 如何使用hiprint插件制作条码标签
  14. ArcMap操作技巧
  15. 代码整洁之道读书笔记----第五章---格式--如何让代码整体布局更清晰
  16. 2017年《What Hi-Fi?》杂志评选KEF成最大赢家
  17. 异常处理之Validates struts.xml files for syntactic and reference errors.
  18. 哪种蓝牙耳机好用又实惠?游戏蓝牙耳机推荐
  19. 快速入门MapboxGL
  20. c语言初学者学习所需软件

热门文章

  1. windows 文件路径太深无法删除解决方案
  2. 深入浅出设计模式① —— 设计模式之路
  3. PMP-全书知识重点图
  4. 如何防止SWF文件被反编译
  5. TCPIP详解卷一概述 学习记录 2020/4/13
  6. idea2020 个性化设置
  7. 单片机c语言赚钱,单片机C语言程序设计实训100例(从初级入手).pdf
  8. unity旧动画系统之animationClip/animationEvent/animationCurve
  9. 全球与中国引文管理软件市场深度研究分析报告
  10. 基于NFC的Android读写软件,NFC读写(android代码)