基于C语言开发Linux平台的协议分析软件

资源下载地址:https://download.csdn.net/download/sheziqiong/85946240
资源下载地址:https://download.csdn.net/download/sheziqiong/85946240

协议分析软件

一、任务概述

1.1 设计目的

使学生深入理解和掌握计算机 络的基本理论及工作原理,熟悉计算机 络和互联 的组成,运用计算机 络知识设计协议分析软件,并进行 络协议分析,最后通过 页呈现,加深对计算机 络系统的认知、设计与应用开发能力,同时培养学生运用计算机 络技术解决实际问题的能力。

1.2 项目任务和要求

要求学生掌握计算机 络协议原理、协议分析方法及协议分析软件的开发。理解 络协议的层次结构及 络协议的工作过程,掌握 络协议的分析方法及 络协议的设计与应用。

1.3 参考资料

·《计算机 络》,谢希仁,电子工业出版 ,2017 年 1 月第 7 版。

· 通过因特 查阅资料(CSDN 博客 站等)。

二、开发环境

运行的操作系统:Linux 抓包服务器;Mac 分析客户端

编程工具:Linux 下的 VIM、Mac 下的 idea

集成开发环境:VIM 和 idea

Linux:服务器 IP:192.168.43.173

Mac 客户端 IP:192.168.43.172

三、项目需求分析

关键类:libcap 函数库;serverlet;JSP 的页面设计

4.2 功能设计

4.2.1 通信协议的定义:

4.2.1.1 IP 协议:

IP 地址表现由一组 32 位 2 进制数组成,每 8 位为一个段,共分为 4 段,以‘.’间隔。含义由 络地址(NetID)和主机地址(HostID)两部分组成。 络地址表示其属于互联 中的哪一个 络,而主机地址则表示其属于该 络中的哪一台主机,两者之间是主从关系。IP 地址对应应用于 络层,基于 IP 协议的 络地址就是 IP 地址。

字段说明:

类型 说明
类型 占一字节,标识 ICMP 文的类型,从类型值来看 ICMP 文可以分为两大类。第一类是取值为 1~127 的差错 文,第 2 类是取值 128 以上的信息 文
代码 占一字节,标识对应 ICMP 文的代码。它与类型字段一起共同标识了 ICMP 文的详细类型
校验和 这是对包括 ICMP 文数据部分在内的整个 ICMP 数据 的校验和,以检验 文在传输过程中是否出现了差错(其计算方法与在我们介绍 IP 头中的校验和计算方法是一样的)
4.2.1.3 TCP 协议:

TCP 协议是 TCP/IP 协议体系中非常复杂的一个协议。它是面向连接的运输层协议,每一条 TCP 连接只能有两个端点(endpoint),每一条 TCP 连接只能是点对点的(一对一)。TCP 提供可靠交付的服务,通过 TCP 连接传送的数据,无差错、不丢失、不重复,并且按序到达。TCP 提供全双工通信,面向字节流,TCP 中的“流”(stream)指的是流入到进程或从进程流出的字节序列。TCP 连接是一条虚连接(也就是逻辑链接),而不是一条真正的物理连接。TCP 并不关心应用进程一次把多长的 文发送到 TCP 的缓存中,而是根据对方给出的窗口值和当前 络拥塞的程度来决定一个 文段应包含多少个字节。

4.2.2 功能设计

五、程序的运行和测试结果

抓包:

分析后的结果通过 serverlet 连接后,以 页界面显示,点击表格中【详细分析】按钮跳转页面,弹出分析弹窗对数据包进行详细的分析。

跳转页面:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年6月5日
下一篇 2022年6月5日

相关推荐