网络端对端连通测试软件课程设计报告.docx
- 文档编号:98866
- 上传时间:2022-10-03
- 格式:DOCX
- 页数:39
- 大小:855.80KB
网络端对端连通测试软件课程设计报告.docx
《网络端对端连通测试软件课程设计报告.docx》由会员分享,可在线阅读,更多相关《网络端对端连通测试软件课程设计报告.docx(39页珍藏版)》请在冰豆网上搜索。
课程设计成绩
考勤成绩
实做成绩
报告成绩
总评成绩
指导教师签名:
《信号处理实验与设计》设计报告
论文题目:
网络端对端连通测试软件
学院(系):
电子信息与自动化学院
班
级:
学生姓名:
指导教师:
学号
时间:
2014年9月9日到2014年9月24日
摘要
ping命令是使用频率极高的一个网络测试命令,用以测试从一个主机到另一个主机间的网络上否可达。
windows自带的ping命令具有强大的功能,它有很多选项用于实现不同的测试目的。
本章模仿windows的ping命令,用c语言实现了一个简单的命令。
本章着重讲述ping命令的实现原理和c语言的网络编程方法。
读者可以在本章的基础上,对本章实现的ping命令进行扩展,开发出功能更强大、更完善的ping命令,并进一步掌握网络编程的方法。
关键词:
ping,命令,网络,测试
目录
摘要.
...........................................................................................................................I
1设计目的..................................................................................................................3
2设计内容..................................................................................................................3
3设计要求..................................................................................................................3
3.1基本要求............................................................................................................3
3.2较高要求...........................................................................................................3
3.3其它要求...........................................................................................................3
4设计原理..................................................................................................................3
4.1TCP/IP..............................................................................................................3
4.2Ping的基础知识..............................................................................................3
4.3ICMP协议与校验和的计算...........................................................................4
4.4Ping程序设计思路..........................................................................................5
5软件设计..................................................................................................................5
5.1初始化模块........................................................................................................7
5.2功能控制模块....................................................................................................7
5.3Ping模块功能模块...........................................................................................8
5.4main函数模块.................................................................................................10
6调试过程、实验结果分析.......................................................................................10
7体会和建议...............................................................................................................13
8参考文献...................................................................................................................14
附录:
源程序..............................................................................................................15
1、设计目的
本课程通过设计Ping程序,掌握Ping程序的实现原理,并实现了c语言网络编程技术,增强对网络编程的了解,提升编程能力,掌握技巧。
本课程设计涉及很多网络编程函数和编程技巧。
包括库文件的导入;winsock的初始化、注销;socket的创建、关闭;设置socket选项;根据主机名获取IP地址;从堆中分配一定数量的空间、释放从堆中分配的空间;获取当前进程ID号;数据报的发送;数据报的接等。
通过本程序的训练,使读者对网络编程有一定的了解,掌握Ping程序的设计方法,掌握网络编程的方法和技巧,从而编写出功能更强大的程序。
2、设计内容
基于WindowsXP+VisualC++6.0环境下,实现库文件的导入;winsock的初始化、注销;socket的创建、关闭;设置socket选项;根据主机名获取IP地址;从堆中分配一定数量的空间、释放从堆中分配的空间;获取当前进程ID号;数据报的发送;数据报的接等。
多阅读一些复杂的程序,了解一个基本的函数、算法和精良的编程思想,学会代码的重复使用,多动手写写一些有一定难度的程序等等。
3、设计要求
3.1基本要求:
(1)最终完成的程序能在DOS环境下运行。
(2)能正确的测试出可以到达的主机和不可到达的主机。
(3)能解析网络域名和支持帮助。
如:
程序名/?
3.2较高要求:
(1)能在WINDOWS环境下运行,并在窗口下显示回显结果。
(2)能回显经过的路由信息。
3.3其他要求:
编程语言、方法和手段不限制。
4、设计原理
4.1TCP/IP:
TransmissionControlProtocol/InternetProtocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。
TCP/IP定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。
协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。
通俗而言:
TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。
而IP是给因特网的每一台联网设备规定一个地址。
4.2Ping的基础知识:
原始套接字是允许访问底层传输协议的一种套接字类型。
使用原始套接字操作IP数据报,可以进行路由跟踪,Ping等。
另外,使用原始套接字需要知道许多下层协议结构的知识,所以下面讨论ICMP,IP,UDP,TCP格式。
原始套接字有两种类型,第一种类型是在IP头种使用预定义的协议,如ICMP;第二种类型是在IP头种使用自定义的协议。
Ping程序是用来探测主机到主机之间是否可通信,如果不能Ping到某台主机,表明不能和这台主机建立连接。
Ping使用的是ICMP协议,它发送ICMP回送请求消息给目的主机。
ICMP协议规定:
目的主机必须返回ICMP回送应答消息给源主机。
如果源主机在一定时间内收到应答,则认为主机可达。
ICMP协议通过IP协议发送的,IP协议是一种无连接的,不可靠的数据包协议。
因此,保证数据送达的工作应该由其他的模块来完成。
其中一个重要的模块就是ICMP(网络控制报文)协议。
当传送IP数据包发生错误--比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送回给主机。
给主机一个处理错误的机会,这也就是为什么说建立在IP层以上的协议是可能做到安全的原因。
ICMP数据包由8bit的错误类型和8bit的代码和16bit的校验和组成。
而前16bit就组成了ICMP所要传递的信息。
4.3ICMP协议与校验和的计算:
互联网上得操作由路由器紧紧地监控着。
当有异常饭送时候,具体事件通过ICMP报道,如目的不可到达,TTL超时等。
这个协议也用来测试互联网。
每个ICMP消息都封装在IP封包中,所以使用IP寻址,
ICMP消息的格式如下:
首8位表示ICMP的类型,通常可以分为请求消息和错误报告消息两类。
接下来的八位表示ICMP代码,这个域进一步定义了请求或者是消息的类型。
接下来八位表示icmp的校验和。
它提供了ICMP头和他的实际数据。
3.校验和的计算
发送ICMP报文时,必须由程序自己计算校验和,并将它填入ICMP头部的对应域中。
校验和的计算方法是:
将数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 连通 测试 软件 课程设计 报告