首页 > 其他分享 >TCP详解

TCP详解

时间:2023-12-13 16:58:03浏览次数:26  
标签:该位 TCP 发送 紧急 详解 序列号 指针

1. TCP介绍

TCP 是面向连接的、可靠的、基于字节流的传输层通信协议。

2. TCP头格式

  • 源端口号/目的端口号
  • 序号
    解决包乱序问题
  • 确认序列
    目的是确认发出去对方是否有收到。如果没有收到就应该重新发送,直到送达,这个是为了解决丢包的问题。
  • 首部长度
    表示TCP首部有多少个(4字节)的值。
  • 状态位
    • URG ( urgent pointer) :紧急指针,当URG标志位被设置为1时,紧急指针被用来告诉设备发送的数据包的紧急程度。当标志位被设置为0时,紧急指针不产生任何效果。
    • ACK (acknowledgment):确认,当ACK标志位被设置为1时,确认号字段有效。TCP 规定除了最初建立连接时的 SYN 包之外该位必须设置为 1。
    • PSH (push):该位为 1 时,接收设备应该立即将这个数据包交给应用程序,而不是缓冲它。
    • RST (reset):该位为 1 时,表示 TCP 连接中出现异常必须强制断开连接。
    • SYN (synchronize):该位为 1 时,表示希望建立连接,并在其「序列号」的字段进行序列号初始值的设定。
    • FIN (finish):该位为 1 时,表示今后不会再有数据发送,希望断开连接。
  • 窗口大小
    双方都维护一个窗口(缓存大小),标识自己当前能够的处理能力。解决流量控制及拥塞控制问题。
  • 校验和
    TCP头部和数据部分的校验和,这是一个强制性的字段,由发送端计算和存储,并由接收端进行验证。其主要功能是检查数据在传输过程中是否发生了错误。
  • 紧急指针
    只在URG位字段被设置时才有效。这个“指针”是一个必须要加到报文段的序列号字段上的正偏移,以产生紧急数据的最后一个字节的序列号。TCP的紧急机制是一种让发送方给另一端提供特殊标志数据的方法。

标签:该位,TCP,发送,紧急,详解,序列号,指针
From: https://www.cnblogs.com/kiper/p/17899341.html

相关文章

  • HASH与对称加密详解
    HASH概述Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简......
  • Linux下PCI设备驱动开发详解(二)
    Linux下PCI设备驱动开发详解(二)根据上一章的概念,PCI驱动包括PCI通用的驱动,以及根据实际需要设备本身的驱动。所谓的编写设备驱动,其实就是编写设备本身驱动,因为linux内核的PCI驱动是内核自带的。为了更好的学习PCI设备驱动,我们需要明白内核具体做了什么,下面我们研究一下,linuxPCI......
  • 数据入表 | 详解数据资产会计核算与企业应对
    从2015年《促进大数据发展行动纲要》到2022年《数据20条》到2023年8月份出台了《企业数据资源相关会计处理暂行规定》,可见国家层面对数据的重视和探索如何进一步挖掘数据价值,发挥数据的应用潜力。一石激起千层浪,面对如此重要的规定,企业又该如何应对呢?且听小亿一一道来。一、出台背......
  • pod控制器详解
    这一章节是讲解pod的编排和调度,就得用到诸多的控制器。kubectlapi-resources#查看k8s的资源有哪些1.控制器作用1.pod类型的资源,如果直接删除,不会重建2.控制器可以帮助用户监视、并且保证相应的节点上始终运行着用户定义好的pod副本数在运行。3.甚至pod超过、或者......
  • pod详解
    Pod是什么Pod是Kubernetes创建或部署的最小单位。一个Pod封装一个或多个容器(container)、存储资源(volume)、一个独立的网络IP以及管理控制容器运行方式的策略选项。Pod使用主要分为两种方式:Pod中运行一个容器。这是Kubernetes最常见的用法,您可以将Pod视为单个封装的容器,但是Kube......
  • TCP连接断开:为什么要挥手四次
    本文分享自华为云社区《解密TCP连接断开:四次挥手的奥秘和数据传输的安全》,作者:努力的小雨。TCP连接断开在当今数字化时代,互联网已经成为了人们生活中不可或缺的一部分。而在互联网的基础之上,TCP协议扮演着关键的角色,它负责着数据在网络中的可靠传输。在TCP连接的建立过程中,我......
  • Java内部类详解
    内部类内部类的分类内部类分类:成员内部类静态内部类局部内部类匿名内部类内部类的概念在一个类里面定义一个完整的类packagecom.lin.clas.demo01;​publicclassBody{​ //内部类 classHead{​ }}成员内部类在类的内部定义,与实例变量,实例......
  • Unity3D 第一人称角色控制器,第一人称相机,摄像机的关系详解
    Unity3D是一款强大的游戏开发引擎,可以用于创建各种类型的游戏。在游戏中,第一人称角色控制器、第一人称相机和摄像机是密切相关的组件,它们共同协作来实现游戏的第一人称视角。下面将详细解释它们之间的关系,并给出代码实现。对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游......
  • 异常详解
    异常详解异常体系结构Java把异常当成一个对象处理,并定义了一个基类java.lang.Throwable作为所有异常的超类。在JavaAPI中已经定义了许多异常类,这些异常类分为两大类,错误Error和异常Exception. 捕获和抛出异常关键字:try,catch,throw,throwspackagecom.paial.demo09......
  • Java方法详解
    Java方法详解1.何为方法类似于其他语言的函数Java方法是语句的集合,共同完成一个功能设计方法的原则:一个方法实现一个功能,有利于后期的管理和拓展!命名:首小写+驼峰命名。2.方法的定义修饰符返回值类型方法名(参数类型参数名){​方法体return返回值;}实参:实......