实验名称:TCP 连接管理
目录
前言
TCP报文段格式
TCP建立连接
TCP释放连接
实验目的
实验原理
实验步骤
1. 启动WireShark,设置抓包状态
2. 访问指定服务器 ,通过Wireshark抓取通信数据报文
3. 分析TCP连接建立的三次握手和连接释放的四次握手过程
原始数据记录
实验目的
1) 掌握TCP连接建立的三次握手过程
2) 理解TCP连接释放的四次握手过程
实验原理
TCP协议工作原理
主要设备、器材:
1) 联网计算机
2) 协议分析软件Wireshark
实验步骤
1) 启动WireShark,设置抓包状态
2) 访问指定服务器 ,通过Wireshark抓取通信数据报文
3) 分析TCP连接建立的三次握手和连接释放的四次握手过程
本文提供抓取的数据包,供大家免费下载,分析

原始数据记录
连接建立的三个TCP数据包
本机IP地址:192.168.22.37
本机MAC地址:04-7c-16-5e-9f-26
连接建立的三个TCP数据包(第一个要求写出完整的帧,第二个和第三个只写TCP部分)
连接建立第一次握手数据包:
编号 数据包
0000 04 7c 16 2a a9 c3 04 7c 16 5e 9f 26 08 00 45 02
0010 00 34 72 de 40 00 80 06 00 00 c0 a8 16 25 c0 a8
0020 16 65 c6 be 00 50 f7 32 86 09 00 00 00 00 80 c2
0030 fa f0 ae 01 00 00 02 04 05 b4 01 03 03 08 01 01
0040 04 02
连接建立第二次握手数据包:
编号 数据包
0000 04 7c 16 5e 9f 26 04 7c 16 2a a9 c3 08 00 45 02
0010 00 34 f4 1e 40 00 80 06 58 c8 c0 a8 16 65 c0 a8
0020 16 25 00 50 c6 be eb 48 cb de f7 32 86 0a 80 52
0030 ff ff c5 71 00 00 02 04 05 b4 01 03 03 08 01 01
0040 04 02
连接建立第三次握手数据包:
编号 数据包
0000 04 7c 16 2a a9 c3 04 7c 16 5e 9f 26 08 00 45 00
0010 00 28 72 df 40 00 80 06 00 00 c0 a8 16 25 c0 a8
0020 16 65 c6 be 00 50 f7 32 86 0a eb 48 cb df 50 10
0030 04 02 ad f5 00 00
实验结果与分析:
1)对连接建立的第一个数据包的TCP部分逐字段分析,指出每个字段的值及其表示的意义;对第2个和第3个指出序号、确认号、SYN和ACK的值及其表示的意义。
2)理解TCP连接释放的四次握手的每个数据包。
连接建立第一次握手数据包分析
以太网帧
目的地址: 04 7c 16 2a a9 c3
源地址: 04 7c 16 5e 9f 26
类型:0800 (IPv4)
IP数据报:
45 02 00 34 72 de 40 00 80 06 00 00 c0 a8 16 25
c0 a8 16 65
TCP报文段:
- 源端口:c6 be( 50878 )
- 目的端口:00 50 :80
- 序号:f7 32 86 09
- 确认号:0
- 数据偏移:占四位 8 –> 1000,4*8=32byte
- URG(urgent):0 紧急指针,无紧急数据发送
- ACK(acknowledgment): 0 确认号无效
- PSH(push): 0
- RST(reset): 0 复位
- SYN(synchronization):同步,syn=1,ack=0为连接请求报文段
- FIN(finish): 0
- 窗口: fa f0 (64240) 指发送本报文段的一方接受窗口 ,从确认号0号算起,接收方目前允许我发送的数据量为 64240byte
- 检验和 :ae 01
- 紧急指针:0
连接建立第二次握手数据包分析
以太网帧
目的地址:04 7c 16 5e 9f 26
源地址: 04 7c 16 2a a9 c3
类型:0800 (IPv4)
IP数据报:
45 02 00 34 f4 1e 40 00 80 06 58 c8 c0 a8 16 65
c0 a8 16 25
TCP报文段:
- 源端口:00 50 :80
- 目的端口:c6 be( 50878 )
- 序号:eb 48 cb de
- 确认号: f7 32 86 0a
- 数据偏移:占四位 8 –> 1000,4*8=32byte
- URG(urgent):0 紧急指针,无紧急数据发送
- ACK(acknowledgment): 1
- PSH(push): 0
- RST(reset): 0 复位
- SYN(synchronization):同步,syn=1,ack=1表是我方同意建立连接
- FIN(finish): 0
- 窗口: ff ff (65535) 指发送本报文段的一方接受窗口 ,从确认号0号算起,接收方目前允许我发送的数据量为 65535byte
- 检验和 :c5 71
- 紧急指针:0
连接建立第三次握手数据包分析
以太网帧
目的地址: 04 7c 16 2a a9 c3
源地址: 04 7c 16 5e 9f 26
类型:0800 (IPv4)
IP数据报:
45 00 00 28 72 df 40 00 80 06 00 00 c0 a8 16 25
c0 a8 16 65
TCP报文段:
- 源端口:c6 be( 50878 )
- 目的端口:00 50 :80
- 序号:f7 32 86 0a
- 确认号:eb 48 cb df
- 数据偏移:占四位 5 –> 0101
- URG(urgent):0 紧急指针,无紧急数据发送
- ACK(acknowledgment): 1
- PSH(push): 0
- RST(reset): 0 复位
- SYN(synchronization):0
- FIN(finish): 0
- 窗口: 04 02 (1026) 指发送本报文段的一方接受窗口 ,从确认号0号算起,接收方目前允许我发送的数据量为 1026byte
- 检验和 :ad f5
- 紧急指针:0
释放链接的三个TCP数据包
这是就有小伙伴会问了,怎么只有三个TCP数据包?不是4次分手吗?
其实在实际的环境中,服务器的2次返回合成一个数据包返回了。
相关文章:
实验名称:TCP 连接管理
目录 前言 TCP报文段格式 TCP建立连接 TCP释放连接 实验目的 实验原理 实验步骤 1. 启动WireShark,设置抓包状态 2. 访问指定服务器 ,通过Wireshark抓取通信数据报文 3. 分析TCP连接建立的三次握手和连接释放的四次握手过程 原始数据记录 实验…...
go语言map底层及扩容机制原理详解(上)
底层数据结构-哈希表 go语言map的底层数据结构是哈希表:通过哈希表来存储键值对,通过hash函数把键值对散列到一个个桶(bucket)中。 什么是哈希表? 在顺序结构以及平衡树中,元素与其的存储位置之间没有对应关系,因此…...
互联网职场说 | “领导找我谈话,原来是给我涨薪,但却只涨了200,还偷偷叮嘱我保密,这次只给我涨了薪”
职场中,一般当领导找你谈话时,心里总是会涌起两种心理活动:问责和表扬。不过很多人第一反应就是有点担心害怕,其次才会想有什么好事临到我了! 一位职场网友分享说,有天领导忽然找她谈话,当时心…...
Android 如何启用user版本的adb源码分析
Android调试桥(ADB, Android Debug Bridge)是一个Android命令行工具,包含在SDK 平台工具包中,adb可以用于连接Android设备,或者模拟器,实现对设备的控制,比如安装和调试应用。和Appium一样,adb也是基于C/S架…...
linux phpstudy 重启命令
[rootLinuxWeb phpstudy]# ./system/phpstudyctl restart 查看命令 1) phpstudy -start 启动小皮面板 2) phpstudy -stop 停止小皮面板 3) phpstudy -restart 重启小皮面板 4) phpstudy -status 查询面板状态 5) phpstudy -in…...
台式电脑屏幕亮度怎么调节?让你的眼睛更舒适!
在日常使用台式电脑时,调节屏幕亮度是一项常见的需求。不同的环境和个人偏好可能需要不同的亮度设置。因此,了解台式电脑屏幕亮度怎么调节是非常重要的。本文将介绍三种常见的方法,帮助您轻松调节台式电脑屏幕亮度,以满足您的需求…...
打造安全的 Linux 环境:实用配置指南
唠唠闲话 一开始接触服务器,我只是把它当博客的托管网站,源文件用 GitHub 备份,所以网站被黑了也没啥关系。但随着使用深入,网站逐渐加入我的日常工作流中,而且有了使用更多服务的需求。在这种情况下,服务…...
神经网络有哪些算法
神经网络算法是人工智能领域的重要组成部分,它通过模拟人类神经系统的结构和功能,实现对复杂问题的处理和分析。以下是对神经网络算法的详细概述,包括常见的算法和它们的特点、应用等,力求达到约2500字的篇幅。 一、神经网络算法概述 神经网络算法是一种基于人工神经元的…...
计算机网络期末试题
第一章 概述 一. 单选题(共13题,36.4分) 1. (单选题) 因特网起源于( )网络。 A. ARPANETB. EthernetC. CATVD. CERNET 我的答案: A:ARPANET;正确答案: A:ARPANET; 2.8分 2. (单选题)人们把( )年作为因特网的诞…...
Unity学习笔记---图层
渲染层级 1,调整Sprite Renderer中的Order in Layer可以调整图层层级。 2,在Edit--Project Setting--Graphics中,调整TransParency Sort Mode为Custom Axis, 并将TransParency Sort Axis中的Z值默认的1改为0,将Y改为…...
【简单探索微软Edge】
🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…...
YOLOv5独家改进:backbone改进 | 微软新作StarNet:超强轻量级Backbone | CVPR 2024
💡💡💡创新点:star operation(元素乘法)在无需加宽网络下,将输入映射到高维非线性特征空间的能力,这就是StarNet的核心创新,在紧凑的网络结构和较低的能耗下展示了令人印象深刻的性能和低延迟 💡💡💡如何跟YOLOv5结合:替代YOLOv5的backbone 收录 YOL…...
概率密度函数pdf的某种解释与洞察
1.一个想法实验 我在想一个数,姑且称之为X,介于0和10之间(含0和10)。如果我不告诉你别的,你会想象X = 0的概率是多少?X = 4?假设我对任何特定的数字都没有偏好,你会想象十一个整数0,1,2,.….,10也是一样。因为所有的概率加起来必须是1,所以逻辑上的结论是给11个选项…...
【OceanBase诊断调优】—— 转储错误(错误代码 4138/ORA-01555)
当读事务很长时,租户进行转储会报 4138/ORA-01555 错误。本文介绍该错误的处理方法。 适用版本 OceanBase 数据库 V2.X 及以后的版本 问题现象 当读事务很长,租户进行转储时会出现以下错误。 Oracle 租户: ORA-01555:snapsho…...
Python面试题【数据结构和算法部分101-130】
Python面试题【数据结构和算法部分101-130】 Python面试题【数据结构和算法部分101-130】 Python面试题【数据结构和算法部分101-130】 问题:如何在Python中实现二分查找? 答案: def binary_search(arr, target):low, high 0, len(arr) - 1…...
Django中的日志处理
日志处理 1.日志级别 级别(Level)表示日志消息的优先级,从低到高分为以下几个级别: DEBUG: 详细的日志信息,通常用于调试。 INFO: 一般的信息性消息,用于说明程序运行情况。 WARNING: 警告消息࿰…...
FonePaw Data Recovery for Mac:轻松恢复丢失数据
FonePaw Data Recovery for Mac是一款功能强大的数据恢复软件,专为Mac用户设计,帮助用户轻松恢复因各种原因丢失的数据。该软件支持从硬盘驱动器、存储卡、闪存驱动器等存储介质中恢复丢失或删除的文件,包括照片、视频、文档、电子邮件、音频…...
C语言易错提醒选择题精选
Ⅰ 易错题 1.设有double p;,为变量p声明一个引用名称rp,则定义语句为 double& rpp; 2.已知‘A’一‘Z’的ASCII码为65—90,当执行“char ch14*52;cout<<ch<<endl;”语句序列后得到的输出结H ,72对应ASCII码中…...
Android11系统去掉截屏功能
1. 去掉Settings里截屏菜单条目,packages/apps/Settings: diff --git a/res/xml/top_level_settings.xml b/res/xml/top_level_settings.xml old mode 100644 new mode 100755 index a5e4d06..a9420bb --- a/res/xml/top_level_settings.xmlb/res/xml/t…...
测试驱动来学习 Promise
基础功能 测试案例:以同步的方式调用。 /*** v1: 基础功能*/ const p1 new MyPromise((resolve, reject) > {resolve(success)reject(error) })p1.then((value) > {console.log(v1: , value) }) 实现功能:在 status 和 value 的位置暂存值&…...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
连锁超市冷库节能解决方案:如何实现超市降本增效
在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
