- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络实验课程设计-ping-马聪敏
课程设计(综合实验)报告 ( 2012 -- 2013 年度第 2 学期) 名 称: 网络综合实验 题 目:(1)Ping命令的设计与实现 (2)列车时刻表查询程序 院 系: 计算机 班 级: 网络工程1002 学 号: 201009030212 学生姓名: 马聪敏 指导教师: 李丽芬 设计周数: 2周 成 绩: 日期: 2013 年 6月4 日 课程设计任务:设计并实现一个Ping程序,掌握UDP套接字的使用以及ICMP协议中ECHO报文的发送和接受。 图 2.1.1 系统模块图 (1) 初始化模块。改模块用于初始化各个全局变量,为全局变量赋初始值;初始化,加载库。 (2)功能控制模块。改模块是被其它模块调用,其功能包括获取参数、计算校验和填充数据报文、释放占用资源和显示用户帮助。 (3)数据报解读模块。改模块用于解读接收到的报文和选项。 (4)测试模块。改模块是本程序的核心模块,调用其他模块实现其功能,主要是实现的功能。 2.1.2系统流程图 系统执行的流程图2.1.2所示。程序首先用AppWizard从VC++中生成一个基于对话框的工程MyPing,界面如下图: 将Ping服务封装成一个类CPing。在Ping.h中,先定义ICMP报数据结构常量: #define IP_RECORD_ROUTE 0x7 #define DEF_PACKET_SIZE 32 #define MAX_PACKET 1024 #define MAX_IP_HDR_SIZE 60 #define ICMP_ECHO 8 #define ICMP_ECHOREPLY 0 #define ICMP_MIN 8 程序流程图2.1 typedef struct _iphdr定义IP报文格式 typedef struct _icmphdr定义ICMP报文格式 typedef struct _ipoptionhdrIP头选项结构,当socket可选项设置成IP OPTIONS使用这个结构。用classCPing解析。 h-len:4 : 表示IP报头长度,首部长度指的是首部占32bit字的数目,包括任何选项。由于它是一个4bit 字段,因此首部最长为60个字节,不包括任何选项的IP报头是20个字节。 Version:4: 表示IP的版本号,这里表示Ipv4.。 Top: 表示服务的类型,可以表示最小时延,最大吞吐量,最高可靠性和最小费用。 Total –len: 整个IP数据报的总长度。 Ident: 唯一的标识符,标识主机发送的每一份数据报。 Frag-flags: 分段标志,表示过长的数据报是否要分段。 Ttl: 生存期,表示数据报可以经过的最多路由器数。 Proto: 协议类型(TCP、UDP等)。 Checksum: 校验和。 sourceIP: 源IP地址。 destIP: 目的IP地址。 I_tye : ICMP 报文类型。 I_code : 该类型中的代码号,一种ICMP 报文的类型号和该类型中的代码号共同决定。、 I_cksum: 校验和。 I_seq: 序列号,序列号从0开始,每发送一次新的回显请求就加1. Timestamp: 时间。 在CPing的构造函数代码中,发送ICMP数据报的函数Ping先创建一个Socket,Socket类型是SOCK_RAW,用的是ICMP协议,我把它设置成ICMP包头选项,最后解析数据包。 在这个函数中,CleanUp函数负责清除Socket,DecodeIPOptions函数解析IP头的参数,checksum函数负责对ICMP数据包校验,SET函数设置Ping参数。 2.1.3ping()函数流程图 ping()函数是本程序的核心部分它调用其他模块的函数来实现,其主要步骤包括创建接字,设置路由选项(如果需要的话)、设置接收和发送超时值、名字解析(如果需要的话)、分配内存、创建ICMP报文、发送ICMP请求报文、接收ICMP应答报文和解读ICMP报文。其执行流程如图2.2所示。 图2.2 三、课程设计总结或结论
您可能关注的文档
- 石油北京17秋《化工设计概论》第一阶段在线作业.doc
- 石油北京17秋《安全管理学》第三阶段在线作业.doc
- 石油北京17秋《化工设计概论》第三阶段在线作业.doc
- 石油北京17秋《化工设计概论》第二阶段在线作业.doc
- 石油北京17秋《安全系统工程》第三阶段在线作业.doc
- 石油北京17秋《安全系统工程》第二阶段在线作业.doc
- 石油北京17秋《市场营销学含实践》第二次在线作业.doc
- 石油北京17秋《数据结构》第一次在线作业.doc
- 石油北京17秋《市场营销学含实践》第一次在线作业.doc
- 石油北京17秋《普通化学》第三阶段在线作业.doc
- 2025-2026学年小学英语六年级上册外研版(三起)(陈琳主编)教学设计合集.docx
- 2025年全球生物医药技术突破及市场规模预测深度报告.docx
- 提升企业盈利能力的财务指标评估方法.docx
- 2025年欧洲航空航天零部件补贴政策研究.docx
- 数字乡村建设:智慧服务协同发展路径.docx
- 2025-2026学年小学英语六年级上册外研剑桥(Join in)版(刘兆义主编)教学设计合集.docx
- 2025年眼科医疗行业医疗设备市场分析报告.docx
- 2025年轻量化便携老年康复机器人市场需求与推广报告.docx
- 语言理解技术的多模态融合分析.docx
- 2025年冷链物流碳中和目标政策报告.docx
最近下载
- 黑龙江省中药材GAP基地自评价申报书、资料清单、现场检查评分表.doc VIP
- 中药材GAP基地自评价申报书.doc
- 全路旅客列车编组表.pdf
- 人教初中数学八上 《等边三角形(第1课时)》教案 (公开课获奖).doc VIP
- 2025年云南省初中学业水平考试指导丛书-道德与法治变化分析.pptx VIP
- 2025年云南省初中学业水平考试指导丛书·道德与法治内容提要.docx VIP
- 肺癌的多学科综合治疗模式.pptx VIP
- 八上名著阅读《红岩》.pdf
- 论企业文化与企业核心价值观的塑造.doc VIP
- 苏教版六年级数学上册第3课时 稍复杂的分数乘法实际问题(2)(教学课件).pptx VIP
有哪些信誉好的足球投注网站
文档评论(0)