网络协议分析-TCP协议分析

article/2025/10/16 8:41:55

目录

    • 一 . TCP协议的应用
    • 二 . TCP包结构
    • 三 . 实例化

一 . TCP协议的应用

在这里插入图片描述

二 . TCP包结构

在这里插入图片描述

  • 源端口号( 16 位):它(连同源主机 IP 地址)标识源主机的一个应用进程。

  • 目的端口号( 16 位):它(连同目的主机 IP 地址)标识目的主机的一个应用进程。这两个值加上 IP 报头中的源主机 IP 地址和目的主机 IP 地址唯一确定一个 TCP 连接。

  • 顺序号( 32 位):用来标识从 TCP 源端向 TCP 目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号。如果将字节流看作在两个应用程序间的单向流动,则 TCP 用顺序号对每个字节进行计数。序号是 32bit 的无符号数,序号到达 2 32 - 1 后又从 0 开始。当建立一个新的连接时, SYN 标志变 1 ,顺序号字段包含由这个主机选择的该连接的初始顺序号 ISN( Initial Sequence Number )。

  • 确认号( 32 位):包含发送确认的一端所期望收到的下一个顺序号。因此,确认序号应当是上次已成功收到数据字节顺序号加 1。只有 ACK 标志为 1 时确认序号字段才有效。 TCP 为应用层提供全双工服务,这意味数据能在两个方向上独立地进行传输。因此,连接的每一端必须保持每个方向上的传输数据顺序号。

  • TCP 报头长度( 4 位):给出报头中 32bit 字的数目,它实际上指明数据从哪里开始。需要这个值是因为任选字段的长度是可变的。这个字段占 4bit ,因此 TCP 最多有 60 字节的首部。然而,没有任选字段,正常的长度是 20 字节。

  • 保留位( 6 位):保留给将来使用,目前必须置为 0 。

  • 控制位( control flags , 6 位):在 TCP 报头中有 6 个标志比特,它们中的多个可同时被设置为 1 。依次为:

    • URG :为 1 表示紧急指针有效,为 0 则忽略紧急指针值。
    • ACK :为 1 表示确认号有效,为 0 表示报文中不包含确认信息,忽略确认号字段。
    • PSH :为 1 表示是带有 PUSH 标志的数据,指示接收方应该尽快将这个报文段交给应用层而不用等待缓冲区装满。
    • RST :用于复位由于主机崩溃或其他原因而出现错误的连接。它还可以用于拒绝非法的报文段和拒绝连接请求。一般情况下,如果收到一个 RST 为 1 的报文,那么一定发生了某些问题。
    • SYN :同步序号,为 1 表示连接请求,用于建立连接和使顺序号同步( synchronize )。
    • FIN :用于释放连接,为 1 表示发送方已经没有数据发送了,即关闭本方数据流。
  • 窗口大小( 16 位):数据字节数,表示从确认号开始,本报文的源方可以接收的字节数,即源方接收窗口大小。窗口大小是一个16bit 字段,因而窗口大小最大为 65535字节。

  • 校验和( 16 位):此校验和是对整个的 TCP 报文段,包括 TCP 头部和 TCP 数据,以 16 位字进行计算所得。这是一个强制性的字段,一定是由发送端计算和存储,并由接收端进行验证。

  • 紧急指针( 16 位):只有当 URG 标志置 1 时紧急指针才有效。紧急指针是一个正的偏移量,和顺序号字段中的值相加表示紧急数据最后一个字节的序号。 TCP 的紧急方式是发送端向另一端发送紧急数据的一种方式。

  • 选项:最常见的可选字段是最长报文大小,又称为 MSS(Maximum Segment Size) 。每个连接方通常都在通信的第一个报文段(为建立连接而设置 SYN 标志的那个段)中指明这个选项,它指明本端所能接收的最大长度的报文段。选项长度不一定是 32 位字的整数倍,所以要加填充位,使得报头长度成为整字数。

  • 数据: TCP 报文段中的数据部分是可选的。在一个连接建立和一个连接终止时,双方交换的报文段仅有 TCP 首部。如果一方没有数据要发送,也使用没有任何数据的首部来确认收到的数据。在处理超时的许多情况中,也会发送不带任何数据的报文段。

在这里插入图片描述
请求端(通常称为客户)发送一个 SYN 报文段( SYN 为 1 )指明客户打算连接的服务器的端口,以及初始顺序号( ISN )。
服务器发回包含服务器的初始顺序号( ISN )的 SYN 报文段( SYN 为 1 )作为应答。同时,将确认号设置为客户的 ISN 加 1以对客户的 SYN 报文段进行确认( ACK 也为 1 )。
客户必须将确认号设置为服务器的 ISN 加 1 以对服务器的 SYN 报文段进行确认( ACK 为 1 ),该报文通知目的主机双方已完成连接建立。
三次握手协议可以完成两个重要功能:它确保连接双方做好传输准备,并使双方统一了初始顺序号。初始顺序号是在握手期间传输顺序号并获得确认:当一端为建立连接而发送它的 SYN 时,它为连接选择一个初始顺序号;每个报文段都包括了顺序号字段和确认号字段,这使得两台机器仅仅使用三个握手报文就能协商好各自的数据流的顺序号。一般来说, ISN 随时间而变化,因此每个连接都将具有不同的 ISN 。
在这里插入图片描述

三 . 实例化

导入scapy模块找到tcp协议
在这里插入图片描述
实例化tcp协议及复合ethernet,ip协议
在这里插入图片描述

赋值

sport			#源端口
dport			#目的端口

在这里插入图片描述

使用srp1()函数将packet发送
在这里插入图片描述

分析
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

最后是RST,未连接成功。
在这里插入图片描述
手动连接

在这里插入图片描述

在这里插入图片描述
ps: TCP与UDP的比较:
TCP提供可靠的,面向连接的传输服务
UDP提供不可靠的,无连接的传输服务
TCP是面向流的协议;UDP是基于数据报的协议
TCP适用于一次传送大批量的数据
UDP适用于多次少量数据的传输,实时性要求高的业务

TCP与UDP的比较
使用TCP传输的应用程序和协议包括:
FTP
Telnet
SMTP
使用UDP传输的应用程序和协议包括:
RIP
TFTP
SNMP


http://chatgpt.dhexx.cn/article/TpBjON1K.shtml

相关文章

计算机网络 实验三 使用网络协议分析器捕捉和分析协议数据包

学院 计算机学院 年级、专业、班 软件工程 姓名 涂山 学号 170****** 实验课程名称 计算机网络实验 成绩 实验项目名称 使用网络协议分析器捕捉和分析协议数据包 指导老师 (1)实验目的…

实例:使用网络分析仪进行电缆测试

本应用测试针对非标称50Ω的线缆,包括同轴、双绞线、差分高速数据线的测试,包括阻抗参数、S参数(插损、驻波、Smith图等等),也可以绘制眼图。 根据电缆的性能,如频率范围、长度、是否差分,设置…

协议数据分析

实验目的 了解协议分析仪的使用方法和基本特点。 增强对网络协议的理解。 实验要求 要求在进行协议数据分析后,能够将网络数据与具体的网络操作相互映证,如实的记录实验结果,完成实验 实验环境 1.一台运行Windows 2000的计…

五个好用的网络协议分析工具

Network Packet Analyzer,是一种网络分析程序,可以帮助网络管理员捕获、交互式浏览网络中传输的数据包和分析数据包信息等。这里给出了5个最好的网络数据包分析工具,具体如下: 1. Wireshark 相信大家都很熟悉,就不多介…

【计算机网络】IP协议分析

实验目的 应用所学知识: ①熟悉IP报文格式以及关键字段含义。 ②掌握IP地址的分配方法。 ③理解路由器转发IP数据报的流程。 实验步骤与结果 1.任务一:观察路由表 打开Router0命令行输入指令查看路由表: Router0存在三条直接路由&#xf…

网络协议分析总结

网络协议分析 ARP协议协议格式工作原理 TCP/IP协议簇的层次及OSI/RM模型的网络层次及各层的主要作用及各层的主要协议TCP/IP协议簇的层次物理层:数据链路层网络层传输层应用层 OSI七层参考模型ISO/OSI参考模型与TCP/IP协议模型中各层的对应关系 面向连接、无连接的最…

计算机网络实验三:使用网络协议分析器捕捉和分析协议数据包

一、实验目的 (1) 熟悉 ethereal 的使用 (2) 验证各种协议数据包格式 (3) 学会捕捉并分析各种数据包。 二、使用仪器、器材 Wireshark软件,window10系统计算机 三、实验内容及原理 (1) 安装 ethereal 软件 (2) 捕捉…

计算机网络-实验三:使用网络协议分析器捕捉和分析协议数据包

一、实验目的 (1) 熟悉ethereal的使用 (2) 验证各种协议数据包格式 (3) 学会捕捉并分析各种数据包。 二、实验环境 安装了TCP/IP协议的Windows系统,包含实用的网络工具。 三、实验内容 (1) 安装ethereal软件 (2) 捕捉数…

ZVL3网络分析仪

ZVL3 Rohde&Schwarz ZVL3 3G矢量网络分析仪|罗德与施瓦茨 9KHz至3GHz 罗德与施瓦茨Rohde&Schwarz 性能特点&#xff1a; 频率范围 9kHz至3GHz/6 GHz(典型值为5kHz) 测量时间(201个测量点&#xff0c;以校准的双端口) <75ms 数据传输(201个测量点) 在100Mbit/sLAN…

实验01 使用网络协议分析仪Wireshark分析数据链路层帧结构实验报告

这个格式可能有点问题&#xff0c;文档下载地址&#xff1a;https://download.csdn.net/download/mariodf/20203129?spm1001.2014.3001.5503 一、实验名称 分析数据链路层帧结构 二、实验目的 1.安装并学会使用Wireshark的一些基本功能&#xff1b; 2.学会分析、理解俘获的…

网络协议分析(最全)

网络协议分析 1.基于Fiddler的HTTP/HTTPS协议分析 关于Fiddler&#xff1a; Fiddler是一款由C#开发的免费http调试代理软件&#xff0c;有.net 2和.net 4两种版本。Fiddler能够记录所有的电脑和互联网之间的http通讯&#xff0c;Fiddler 可以也可以检查所有的http通讯&…

网络协议分析工具

抓包工具的作用 网络协议抓包工具主要用于对网络协议的数据包进行捕获&#xff0c;捕获后亦可通过其对数据包的结构及其封装内容进行分析查看&#xff0c;以便了解数据包在网络传输时的状态&#xff0c;进而为学习数据包结构和故障排除积累素材。 作用 对网络协议的数据包进…

使用网络协议分析仪Wireshark

环境 操作系统&#xff1a;运行Win10操作系统的PC一台 网络平台&#xff1a;以太网 机器的IP地址&#xff1a;IPv4&#xff1a;xxxxxxxxxxxx 实验目的 1)能够正确安装配置网络协议分析仪Wireshark 2)熟悉使用Wireshark分析网络协议的基本方法 3)加深对协议格式、协议层次…

<计算机网络>网络分析仪分析协议

网络分析仪分析协议 1.捕获FTP数据包分析TCP/IP数据报格式。 据捕获到的FTP数据包中的数据&#xff0c;分析TCP/IP协议头及以太网帧头。 2.根据实验数据分析TCP/IP连接的三次握手及四次挥手的情况 使用软件 Wrieshark 1. Display Filter(显示过滤器)&#xff0c; 用于过滤 2. P…

网络协议分析

根据期末考试考点&#xff0c;我把知识点做了一下梳理&#xff0c;仅供参考&#xff01;&#xff01;&#xff01; 记录一下。 文章目录 网络协议分析第一章 TCP/IP概述1.1网络互连与TCP/IP1.1.1 用IP实现异构互联网络1.1.2 TCP/IP协议族的引入 1.2 网络协议分层1.2.1 通用的协…

计算机网络实验——使用网络协议分析仪Wireshark

计算机网络实验——使用网络协议分析仪Wireshark 一、实验名称 使用网络协议分析仪Wireshark 二、实验目的&#xff1a; 掌握安装和配置网络协议分析仪Wireshark的方法&#xff1b;熟悉使用Wireshark工具分析网络协议的基本方法&#xff0c;加深对协议格式、协议层次和协议交…

网络协议分析仪tcpdump和wireshark使用

网络协议分析仪 网络协议分析仪介绍命令行抓包工具&#xff1a;tcpdumptcpdump工具使用tcpdump表达式tcpdump应用示例 图形界面网络分析仪&#xff1a;wiresharkwireshark工具使用wireshark捕获数据分析wireshark窗口介绍wireshark过滤规则 网络协议分析仪介绍 网络协议分析仪…

总结各种物体检测算法

第一&#xff0c;覆盖所有基于区域的目标检测算法&#xff0c;包括&#xff1a;Fast RCNN, Faster-RCNN, Mask RCNN, R-FCN, FPN. 第二&#xff0c; 介绍SSD算法&#xff08;single shoot detectors&#xff09; 第三&#xff0c;介绍所有算法的表现和实现细节。 Part1 我们…

深度学习和目标检测系列教程 13-300:YOLO 物体检测算法

Author&#xff1a;Runsen YOLO&#xff0c;是目前速度更快的物体检测算法之一。虽然它不再是最准确的物体检测算法&#xff0c;但当您需要实时检测时&#xff0c;它是一个非常好的选择&#xff0c;而不会损失太多的准确性。 YOLO 框架 在本篇博客中&#xff0c;我将介绍 YO…

3D物体检测(一)

title: 3D物体检测(一) date: 2020-02-21 16:40:40 categories: 3D物体检测 tags:3D物体检测点云 总结一下在bilibili上看到的基于点云场景的三维物体检测算法及应用,有兴趣的也可以去看看这个视频。 这一部分主要总结一下&#xff0c;结合雷达点云数据和相机采集的二维图像数…