实验名称:TCP 连接管理

目录

实验目的:

实验原理:

实验步骤:

1) 启动WireShark,设置抓包状态

2) 访问指定服务器 ,通过Wireshark抓取通信数据报文

3) 分析TCP连接建立的三次握手和连接释放的四次握手过程

原始数据记录:


实验目的:

1) 掌握TCP连接建立的三次握手过程

2) 理解TCP连接释放的四次握手过程

实验原理:

TCP协议工作原理

主要设备、器材:

1) 联网计算机

2) 协议分析软件Wireshark

实验步骤:

1) 启动WireShark,设置抓包状态

2) 访问指定服务器 ,通过Wireshark抓取通信数据报文

3) 分析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报文段:

  1. 源端口:c6 be( 50878 )   
  2. 目的端口:00 50 :80                                 
  3. 序号:f7 32 86 09
  4. 确认号:0
  5. 数据偏移:占四位 8 –> 1000,4*8=32byte
  6. URG(urgent):0 紧急指针,无紧急数据发送  
  7. ACK(acknowledgment): 0 确认号无效
  8. PSH(push):  0
  9. RST(reset): 0 复位
  10. SYN(synchronization):同步,syn=1,ack=0为连接请求报文段
  11. FIN(finish): 0
  12. 窗口: fa f0 (64240) 指发送本报文段的一方接受窗口 ,从确认号0号算起,接收方目前允许我发送的数据量为   64240byte
  13. 检验和  :ae 01
  14. 紧急指针: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报文段:

  1. 源端口:00 50 :80    
  2. 目的端口:c6 be( 50878 )                              
  3. 序号:eb 48 cb de                                      
  4. 确认号: f7 32 86 0a                                       
  5. 数据偏移:占四位 8 –> 1000,4*8=32byte
  6. URG(urgent):0 紧急指针,无紧急数据发送  
  7. ACK(acknowledgment): 1
  8. PSH(push):  0
  9. RST(reset): 0 复位
  10. SYN(synchronization):同步,syn=1,ack=1表是我方同意建立连接
  11. FIN(finish): 0
  12. 窗口: ff ff (65535) 指发送本报文段的一方接受窗口 ,从确认号0号算起,接收方目前允许我发送的数据量为   65535byte
  13. 检验和  :c5 71
  14. 紧急指针: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报文段:

  1. 源端口:c6 be( 50878 )   
  2. 目的端口:00 50 :80                                 
  3. 序号:f7 32 86 0a
  4. 确认号:eb 48 cb df                                       
  5. 数据偏移:占四位 5 –> 0101
  6. URG(urgent):0 紧急指针,无紧急数据发送  
  7. ACK(acknowledgment): 1
  8. PSH(push):  0
  9. RST(reset): 0 复位
  10. SYN(synchronization):0
  11. FIN(finish): 0
  12. 窗口: 04 02 (1026) 指发送本报文段的一方接受窗口 ,从确认号0号算起,接收方目前允许我发送的数据量为   1026byte
  13. 检验和  :ad f5

紧急指针:0  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/11254.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序生命周期揭秘:从启动到消亡的全过程剖析【附代码】

微信小程序生命周期揭秘:从启动到消亡的全过程剖析 一、小程序生命周期概览核心生命周期函数 二、深入理解生命周期回调2.1 onLoad: 首次亮相的准备2.2 onShow: 重登舞台的瞬间2.3 onReady: 舞台就绪,静待表演2.4 onHide & onUnload: 谨慎离场&#…

【数据结构陈越版笔记】第1章 概述【习题】

1. 碎碎念 我这答案做的可能不对,如果不对,欢迎大家指出错误 2. 答案 1.1 判断正误 (1) N ( log N ) 2 N(\text{log}N)^{2} N(logN)2是 O ( N 2 ) O(N^{2}) O(N2)的。 (2) N 2 ( log N ) 2 N^{2}(\text…

蓝桥杯备战12.阶乘

P5739 【深基7.例7】计算阶乘 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 递归 #include<bits/stdc.h> #define endl \n #define int long long using namespace std; const int N 2e710,M 1e310; double a[N]; int jie(int n) {if(n1)return 1;else return n*ji…

HTML/CSS3

1.CSS CSS的作用在于在HTML的基础上(决定网页的内容和结构)对网页进行排版布局 对网页中的元素提供样式 使得网页显得更加精美CSS全称是cascading style sheets 即层叠样式表CSS样式的书写格式&#xff1a;样式名: 样式值 例如&#xff1a;color: red建议:之后进行空格 CSS样式…

AXI Interconnect IP核的连接模式简介

AXI Interconnect IP核内部包含一个 Crossbar IP核&#xff0c;用于在 Slave Interfaces&#xff08;SI&#xff09;和 Master Interfaces&#xff08;MI&#xff09;之间路由传输。在连接 SI 或 MI 到 Crossbar 的每条路径上&#xff0c;可以选择性地添加一系列 AXI Infrastru…

2024年安全员C证报名条件

安全员c证&#xff0c;又称建筑施工企业三类人员c证&#xff0c;持证者一般是建筑施工企业专职安全生产管理的专业人员。安全员c证报名条件是: 1、职业道德良好&#xff0c;身体健康&#xff0c;年龄不超过60周岁(法定代表人除外); 2、具有中专及以上文化程度或初级及以上技术…

WMS系统批次管理概述

为了提高仓库运作效率&#xff0c;降低库存成本&#xff0c;越来越多的企业开始引入WMS仓库管理系统&#xff0c;WMS系统批次管理作为其核心功能之一&#xff0c;对于实现精细化、智能化的仓储管理具有重要意义。 二、WMS系统批次管理概述 WMS系统批次管理是指通过对仓库中的货…

rust调用SQLite实例

rusqlite库介绍 Rusqlite是一个用Rust编写的SQLite库&#xff0c;它提供了对SQLite数据库的操作功能。Rusqlite的设计目标是提供一个简洁易用的API&#xff0c;以便于Rust程序员能够方便地访问和操作SQLite数据库。 Rusqlite的主要特点包括&#xff1a; 遵循Rust的类型系统和…

SQL_hive的连续开窗函数

SQL三种排序&#xff08;开窗&#xff09;第几名/前几名/topN 1三种排序&#xff08;开窗&#xff09;第几名/前几名/topN思路 4种排序开窗函数 1三种排序&#xff08;开窗&#xff09;第几名/前几名/topN 求每个学生成绩第二高的科目-排序思路 t2表&#xff1a;对每个学生 的…

基于Python的web漏洞挖掘扫描技术的实现与研究【附源码,文档】

博主介绍&#xff1a;✌Java老徐、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&…

Vue3 项目

创建 Vue3 项目的步骤如下&#xff1a; 安装 Node.js Vue3 需要依赖 Node.js 环境&#xff0c;因此需要先安装 Node.js。可以从官网下载 Node.js 的安装包并安装&#xff0c;也可以使用包管理器安装&#xff0c;例如在 Ubuntu 上可以使用以下命令安装&#xff1a; sudo apt-get…

C语言笔记13

字符数组与字符串常量区别 #include <stdio.h> int main() {char str1[] "hello bit.";char str2[] "hello bit.";char *str3 "hello bit.";char *str4 "hello bit.";if(str1 str2)printf("str1 and str2 are same\n…

【生信技能树】拿到表达矩阵之后,如何使用ggplot2绘图系统绘制箱线图?

拿到表达矩阵之后&#xff0c;如何使用ggplot2绘图系统绘制箱线图&#xff1f; 目录 预备知识 绘制箱线图示例 预备知识 1.pivot_longer函数 pivot_longer 是tidyr包中的一个函数&#xff0c;用于将数据框&#xff08;data frame&#xff09;从宽格式转换为长格式。在宽格…

一文掌握gRPC

文章目录 1. gRPC简介2. Http2.0协议3. 序列化-Protobuf4. gRPC开发实战环境搭建5. gRPC的四种通信方式&#xff08;重点&#xff09;6. gRPC的代理方式7. SprintBoot整合gRPC 1. gRPC简介 gRPC是由google开源的高性能的RPC框架。它是由google的Stubby这样一个内部的RPC框架演…

reactJs动态执行js代码

参考了这篇文章 js——new Function 一个可以随时动态执行字符串js代码的神器 因为一些原因&#xff0c;想要js代码块配置在数据库中返回&#xff0c;例如时间&#xff0c;我需要用到第三方库 moment。然后动态的得到startDate 和 endDate 配置在数据库中的startDate值是$mom…

Java日志总结

开发中&#xff0c;日志记录是不可或缺的一部分&#xff0c;应用日志的记录主要用于&#xff1a;记录操作轨迹数据、监控系统运行情况、系统故障定位问题&#xff0c;日志的重要性不言而喻&#xff0c;想要快速定位问题&#xff0c;日志分析是个重要的手段&#xff0c;Java也提…

JAVA 集合(单列集合)

集合框架 1.集合的特点 a.只能存储引用数据类型的数据 b.长度可变 c.集合中有大量的方法,方便我们操作 2.分类: a.单列集合:一个元素就一个组成部分: list.add(“张三”) b.双列集合:一个元素有两部分构成: key 和 value map.put(“涛哥”,“金莲”) -> key,value叫做键值…

Docker各版本的新特性

Docker 作为流行的容器化平台&#xff0c;会定期发布新版本以引入新特性、改进和修复。根据提供的搜索结果&#xff0c;以下是一些 Docker 版本及其新特性的概览&#xff1a; Docker Desktop v4.12 Containerd 的集成&#xff1a;更深入集成 containerd 以管理容器生命周期&a…

锁和MVCC如何实现mysql的隔离级别

概述 MVCC解决读的隔离性&#xff0c;加锁解决写的隔离性。 读未提交 读未提交&#xff0c;更新数据大概率使用的是独享锁吧。 读已提交 在 Read Committed&#xff08;读已提交&#xff09;隔离级别下&#xff0c;每次执行读操作时都会生成一个新的 read view。这是因为在读…

英译汉早操练-(二十)

hello大家好&#xff0c;这篇跟随十九&#xff0c;继续真题学习。如果想看全部请返回到第十九篇。 英译汉早操练-&#xff08;十九&#xff09;-CSDN博客 The political upheaval in Libya and elsewhere in North Africa has opened the way for thousands of new migrants to…