版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、传播优秀Word版文档 ,希望对您有帮助,可双击去除!计算机网络课程设计任务书 学 院计算机与信息工程专 业网络工程课程名称题 目基于原始套接字实现简单的ping程序完成期限自2014年8月25日至2014年8月30日共1周内容及任务一、项目的目的通过设计Ping程序,理解Ping程序的实现原理,并初步讲解了c语言网络编程技术。二、项目任务的主要内容和要求 实现类似操作系统自带ping程序的基本功能。 支持-t选项的功能,即如果用户不中止则可以不断的ping下去。 能显示IP报头的部分字段,如TTL等。三、项目设计(研究)思路PING的工作原理下,PING程序基于ICMP,使用ICMP的回送请
2、求和回送应答来工作。对网络连通性的测试,探测主机到主机之间是否可通信,如果不能ping到某台主机,表明不能和这台主机建立连接。四、具体成果形式和要求可以实现一个简单的ping程序,并且能显示TTL、支持-t功能。进度安排起止日期工作内容8.25-8.26查阅资料了解ping程序8.26-8.27查阅资料并编写ping程序8.27-8.30完善程序并完成实验报告传播优秀Word版文档 ,希望对您有帮助,可双击去除!主要参考资料1. Visual C+网络通信编程实用案例精选(第二版)曹衍龙 编著2. Visual C+网络程序设计实例详解 张越 编著指导教师意见(签字): 年月日系(教研室)主任
3、意见(签字): 年月日传播优秀Word版文档 ,希望对您有帮助,可双击去除!计算机网络课程设计说明书学院名称: 计算机与信息工程 班级名称: 学生姓名: 学 号: 题 目:基于原始套间字实现简单的ping程序 指导教师姓 名: 起止日期: 传播优秀Word版文档 ,希望对您有帮助,可双击去除!一、选题背景(标题:四号仿宋加粗,顶格,行间距:24磅,上下间距:段前0.5行,段后0.5行)(内容:用小四号仿宋,首行空两格)通过设计Ping程序,理解Ping程序的实现原理,ping程序是用来探测主机到主机之间是否可通信,如果不能ping到某台主机,表明不能和这台主机建立连接。ping使用的是ICMP
4、协议,它发送ICMP回送请求消息给目的主机。ICMP协议规定:目的主机必须返回ICMP回送应答消息给源主机。如果源主机在一定时间内收到应答,则认为主机可达。ICMP协议通过IP协议发送的,IP协议是一种无连接的,不可靠的数据包协议。因此,保证数据送达的工作应该由其他的模块来完成。其中一个重要的模块就是ICMP(网络控制报文)协议。二、方案设计(或概要设计)Ping程序可分为四个模块,分别是:初始化 (图1-1)、功能控制 (图1-2、图1-3、图1-4、)、ping (图1-5)、main测试 (图1-6).1.初始化:初始化传播优秀Word版文档 ,希望对您有帮助,可双击去除!定义IP首部格
5、式定义ICMP首部格式定义ICMP回应请求定义ICMP回应答复 2.功能控制:否 (将反馈的16位从高位移到低位)是(使用32位累加器,进行16位的反馈计算)Checksum()开始定义初始化一些变量Nleft1sum += *w+;nleft -= 2;Nleft=1是(补全奇数位)sum += u;sum = (sum 16) + (sum & 0xffff);sum += (sum 16);answer = sum;返回answer结束传播优秀Word版文档 ,希望对您有帮助,可双击去除!图1-2是SendEchoRequest()开始定义初始化一些变量填充要发送的数据存储发送的时间计算
6、回应请求的校验和发送回应请求返回nRet调用发送错误函数结束传播优秀Word版文档 ,希望对您有帮助,可双击去除!图1-3是RecvEchoReply ()开始定义初始化一些变量接收应答回复检验接收结果返回应答时间调用发送错误函数结束传播优秀Word版文档 ,希望对您有帮助,可双击去除!图1-43.ping:传播优秀Word版文档 ,希望对您有帮助,可双击去除!否是是开始定义初始化各个局部变量判断WSAGetLastError()是否调用成功否检测目标主机是否为NULL设置目标主机的IP地址,开始ping发起四次ping测试发送ICMP回应请求等待回复的数据接收回复计算花费时间Loop是否为0
7、 输出平均次数输出ping结果清除残余结束图1-54.main()函数:否开始WSAStartup() 是否成功截取后三位字符调用ping()释放资源加载失败结束为了实现-t图1-6三、详细设计要实现ping程序,需要实现以下步骤:1.初始化/定义IP首部格式传播优秀Word版文档 ,希望对您有帮助,可双击去除!typedef struct _IPHeader u_char VIHL; /版本和首部长度u_char ToS; /服务类型u_short TotalLen; /总长度u_short ID; /标识号u_short Frag_Flags; /片偏移量u_char TTL; /生存时间
8、u_char Protocol; /协议u_short Checksum; /首部校验和struct in_addr SrcIP; /源IP地址struct in_addr DestIP; /目的地址IPHDR, *PIPHDR;/定义ICMP首部格式typedef struct _ICMPHeaderu_char Type; /类型u_char Code; /代码u_short Checksum; /首部校验和u_short ID; /标识u_short Seq; /序列号传播优秀Word版文档 ,希望对您有帮助,可双击去除!char Data; /数据ICMPHDR, *PICMPHDR;
9、 /定义ICMP回应请求typedef struct _ECHOREQUESTICMPHDR icmpHdr;DWORD dwTime;char cDataREQ_DATASIZE;ECHOREQUEST, *PECHOREQUEST;/定义ICMP回应答复typedef struct _ECHOREPLYIPHDR ipHdr;ECHOREQUEST echoRequest;char cFiller256;ECHOREPLY, *PECHOREPLY;2.功能/计算校验和函数u_short checksum(u_short *buffer, int len)/发送回应请求函数传播优秀Word
10、版文档 ,希望对您有帮助,可双击去除!int SendEchoRequest(SOCKET s, struct sockaddr_in *lpstToAddr)/接收应答回复并进行解析函数DWORD RecvEchoReply(SOCKET s, LPSOCKADDR_IN lpsaFrom, u_char *pTTL)3.ping程序/创建原始套接字,ICMP类型实现pingrawSocket = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);/第二个注释函数socketif (rawSocket = SOCKET_ERROR)printf(socket()
11、 error:%dn, WSAGetLastError();return;四、结果分析(或测试)1.输入ping主机的命令传播优秀Word版文档 ,希望对您有帮助,可双击去除!2.输入ping-t命令 3.输入外部网主机命令传播优秀Word版文档 ,希望对您有帮助,可双击去除!五、总结刚刚拿到课题时,我对于ping几乎没什么了解。在课程设计过程中遇到过很多一开始看似不可克服的难题。回顾这次课程设计,我感慨颇多。在这段时间内,需要经常从电脑上查询资料,但是这不仅可以帮助我巩固曾经学习过的知识,也让我增长了许多课本上学不到的的知识。在这个过程中,我独立思考的能力得到了很大地提高,更重要的是我也学到了更多学习的方法,让我受益匪浅。同时我也明白查阅资料的重要性,在信息多元化的今天,我们不可能掌握所有的知识,但是面对的复杂的情况又要求我们掌握一些自己专业知识之外的内容,这时候就需要掌握正确的相关信息,学会求助书籍或者网络等是必不可少的。查阅资料也使我们做的一切有理可依,而不是凭空想象。通过这次课程设计我发现了自身存在的许多不足之处,自己感觉理论上已经掌握的东西,却不真正了解它的内涵和工作原理,需要经过一番努力才能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北师大版四年级上册数学第三单元 乘法 测试卷带下载答案
- 物业员工工作总结范文10篇
- 认真承诺我发誓
- 语文味激发学生学习兴趣的关键
- 语文学习心得与策略分享
- 货车司机聘用合同案例
- 购销合同书写规范及示例
- 购销合同范本格式写作规范
- 跟随大卫科波菲尔的英语脚步
- 运费结算合同协议编写指南
- 第三节词本义和引申义
- jgj t17-2008蒸压加气混凝土建筑应用技术
- 食堂面点师的岗位职责
- 行政许可法知识讲座课件
- 激光显微切割课件
- 038-楼梯栏杆、扶手安装施工技术交底
- 2023年镇海炼化校园招聘笔试题库及答案解析
- NB∕T 10731-2021 煤矿井下防水密闭墙设计施工及验收规范
- 反求工程基础课件
- 【培训课件】用电安全知识
- 工程管理论文范文(推荐九篇)
评论
0/150
提交评论