计算机网络基础课程设计 Ping 程序实现 计算机网络工程课程设计报告 题 目: Ping 程序的实现 学生姓名: 学 号: 专业班级: 计科专业班 同组姓名: 指导老师: 设计时间: 2024 年下学期第 X 周 指导老师意见: 评定成绩: 签名: 日期: 年 月 日 目录 一、课程设计的目的和意义 2 二、课程设计的内容和要求 2 1
内容: 2 2
要求: 2 三、课程设计的相关技术 2 四、课程设计过程 2 主模块 2 2
功能控制模块 4 3
数据报解析模块 5 五、课程设计小结 6 六、参考文献 7 七、附 录(程序清单) 7 八、心得体会 11 一、课程设计的目的和意义 利用 ICMP数据包、C 语言实现 Ping 命令程序,能实现基本的 Ping 操作,发送ICMP 回显请求报文,用于测试—个主机到只一个主机之间的连通情况
通过本程序的训练,使学生熟悉 ICMP 报文结构,使学生对 ICMP有更深的理解,掌握 Ping 程序的设计方法,掌握网络编程的方法和技巧,从而编写出功能更强大的程序
二、课程设计的内容和要求 1
内容: 用 C 语言实现 Ping 命令程序,能实现基本的 Ping 操作,发送ICMP 回显请求报文,用于测试—个主机到只一个主机之间的连通情况
要求: 1) 独立完成程序的设计、编码和调试
2) 系统利用 C 语言实现,程序调试环境为 Turbo C 或 VC; 3) 根据课程设计法律规范书写课程设计报告
4) 采纳 VC 环境进行调试运行
三、课程设计的相关技术 由于 Ping 程序是面对用户的应用程序,该程序使用 ICMP 的封装机制,通过 IP 协议来工作
为了实现直接对 IP 和 ICMP 包进行操作,实验中使用 RAW 模式的 socket 编程
首先定义 IP 数据报首部,在 IP 数据报的基础上定义 ICMP 数