ping命令的设计与实现要点.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
设计报告 课 程 计算机网络 设计名称 《ping 命令的设计与实现》 专业班级 计科 094 同组人姓名 同组人学号 实验日期 2013-04-10 指导教师 成 绩 2013 年 04 月 10 日 设计目的和要求 1、实验目的: Ping 命令向目的主机发送 ICMP ECHO — REQUEST 请求并接收目的主机返回的响 应报文,用来检验本地主机和远程的主机是否连接。 2.实验要求: 利用 ICMP数据包, 测试主机的连通性, 通过课程设计, 使学生熟悉 ICMP报文结构, 使学生对 ICMP有更深的理解。 要求 : 输出参考系统自带 ping 程序,命令行运行 :ping ip 二、设计说明 设计分析: 使用原始套接字可以读写 ICMP分组,利用原始套接字发送 ICMP回显请求, 并接收 ICMP 回显应答,通过 icmp_send ()发送 ICMP回显示请求包, icmp_recv () 接收 ping 目的主 机的回复, 并使用终端信号处理函数 SIGINT 处理信号, 建立两个线程, 一个用于发送数据, 另一个用于接收响应数据, 主程序等待两个线程运行完毕后再进行下一步动作。 最后, 主程 序讲发送数据和接收的数据进行统计,并将结果打印出来。 系统运行环境: 虚拟机 :Fedora14 (linux 操作系统) gcc 设计中的重点和难点 : ICMP数据包的打包和解包,以及从 CRC16校验算法的分析实现 输入和输出条件: 在 linux 系统下运行 ping 在出现 4 个响应包后按 Ctrl+c 键停止发送。 三、系统详细设计 《Ping 命令的设计与实现 》 Ping 命令向目的主机发送 ICMP ECHO — REQUEST 请求并接收目的主机返回的响应报 文,用来检验本地主机和远程的主机是否连接。 协议格式 图 1.1 中已经对ICMP协议的报文格式进行了说明。 Ping 的客户端方式的类型为 8 , 代码值为 0 ,表示 ICMP 的回显请求。类型为 0 ,代码为 0 是,是 ICMP 回显应答。检验和 为 16 为的 crc16 的算法。 0 7 8 15 16 31 类型( 8 位) 代码( 8 位) 校验和( 16 位) 此部分不同的类型和代码格式不同 图 1.1 ICMP 报文的数据格式 图 1.2 所示为 ping 所使用的类型和代码格式。包含 16 位的标始符和 16 为的序列号。 序列号是用于标识发送或者响应的序号, 而标示符通常用于表明发送和接收此报的用户, 一 眼用进程的 PID 来识别。 0 7 8 15 16 31 类型

文档评论(0)

tianya189 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档