文档详情

IP数据报头模拟分析程序报告.docx

发布:2024-04-11约4.21千字共13页下载文档
文本预览下载声明

----精品文档word可编辑

武汉理工大学华夏学院

课程设计

课程名称

题目

专业计算机网络班级

学号

姓名成绩

指导教师

2010年1月14日

课程设计任务书

设计题目:IP数据报头模拟分析程序

设计目的:

1.巩固和加深课堂所学知识;

2.学习掌握一般的软硬件的设计方法和查阅、运用资料的能力;

3.通过编写计算机程序模拟网络通信的某些功能,使学生理解并掌握网络通信系统的基本

工作原理及工作过程。

设计任务:(在规定的时间内完成下列任务)

1、任务:设计一个模拟分析IP数据报头的程序

2、功能要求:随意输入IP数据报头(二进制形式,20字节),分析该报头各字段的值,并

以点分十进制表示输出源地址和目的地址。

时间安排:

1月11日

布置题目,确定任务、查找相关资料

1月12日~1月14日

功能分析,软件总体设计,拟定详细设计,编写程序,

调试程序、运行系统;

1月15日

答辩后撰写设计报告。

具体要求:设计报告撰写格式要求(按提供的设计报告统一格式撰写)

具体内容如下:

1.设计任务与要求

2.总体方案与说明

3.软件主要模块流程图

4.源程序清单与注释

5.问题分析与解决方案(包括调式记录、调式报告,即在调式过程中遇到的主要问题、解

决方法及改进设想);

6.小结与体会

附录:①源程序(必须有简单注释)②使用说明③参考资料

指导教师签名:

2010年1月11日

教研室主任(或责任教师)签名:2010年1月11日

1.设计任务与要求

1.1任务:设计一个模拟分析IP数据报头的程序

1.2要求:随意输入IP数据报头(二进制形式,20字节),分析该报头各字段的值,并以点分十进制表示输出源地址和目的地址。

2.总体方案与说明

2.1数据报输出:

IPV4报头有12个必需的字段和可选IP选项字段,位于要发送的数据之前。如果使用IP层已有的库或其他组件,一般不必考虑报头中的大多数字段,但程序代码需要提供源端和目的端地址。

1、版本(4比特)

IP协议版本已经经过多次修订,1981年的RFCO791描述了IPV4,RCF2460

中介绍了IPV6。

2、报头长度(4比特)

报头长度是报头数据的长度,以4字节表示,也就是以32字节为单位。报头长度是可变的。必需的字段使用20字节(报头长度为5,IP选项字段最多有40个附加字节(报头长度为15)。

3、服务类型(8比特)

该字段给出发送进程建议路由器如何处理报片的方法。可选择最大可靠性、最小延迟、最大吞吐量和最小开销。路由器可以忽略这部分。

4、数据报长度(16比特)

该字段是报头长度和数据字节的总和,以字节为单位。最大长度为65535

字节。

5、标识符(16比特)

原是数据的主机为数据报分配一个唯一的数据报标识符。在数据报传向目的地址时,如果路由器将数据报分为报片,那么每个报片都有相同的数据标识符。

6、标志(3比特)

标志字段中有2为与报片有关。

2.2方案:

利用VB实现IP数据报报文的分析。

当输入一串二进制数时,利用四个按钮分别实现“源地址”,“目的地址”,“版本”,“首部长度”的输出。如图:

Nexti

Form

Form1

输出IP数据报报文:

源地址:

目的地址:

版本:

首部长度:

清除

源地址

目的地址

首部长度

结束

版本

图2窗体的制作

3.源程序清单与注释

3.1“源地址”按钮:

PrivateSubCommand1Click0

Dimb(31)AsInteger,a(3)AsInteger

Fori=0To7

b(i)=Val(Mid(Text1.Text,97+i,1))*(2^(7-i))

a(0)=a(0)+b(i)

Nexti

Fori=8To15

b(i)=Val(Mid(Text1.Text,97+i,1))*(2^(15-i))

a(1)=a(1)+b(i)

Nexti

显示全部
相似文档