沈 阳 工 程 学 院 学 生 实 验 报 告 实验室名称:信息工程系软件实验室 实验课程名称:计算机网络 实验项目名称:icmp协议应用——ping解析 班 级: 姓 名: 学 号: 实验日期:2012年 04月 28日 实验台编号:23 指导教师: 批 阅 教 师 ( 签 字 ): 成 绩 : 篇二:网络编程实验_ping实验报告 网络编程-ping程序设计实验指导书 一.实验目的 (1)熟悉原始套接字编程
(2)了解网络的结构
(3)了解网络传输底层协议
二.实验要求 ping程序是用于测试网络连通性的程序
要求在 windows环境下实现基本的 ping程序功能
在命令提示符下输入: ping ***
*** 其中***为目的主机的 ip地址,不要求支持域名,对是否带有开关变量也不做要求
不带开关变量时,要求返回 4次响应
返回信息的格式: reply from ***
*** 或 request timeout (无法 ping通的情况) 三.实验原理 1、ping的工作原理 ping 程序是用来探测主机到主机之间是否可通信,如果不能 ping到某台主机,表明不能和这台主机建立连接
ping 使用的是 icmp协议,它发送 icmp回送请求消息给目的主机
icmp协议规定:目的主机必须返回 icmp回送应答消息给源主机
如果源主机在一定时间内收到应答,则认为主机可达
icmp协议通过 ip协议发送的,ip协议是一种无连接的,不可靠的数据包协议
因此,保证数据送达的工作应该由其他的模块来完成
其中一个重要的模块就是 icmp(网络控制报文)协议
当传送 ip数据包发生错误--比如主机不可达,路由不可达等等,icmp协议将会把错误信息封包,然后传送回给主机
给主机一个处理错误的机会,这也就是为什么说建立在 ip层以上的协议