1、 题 目 网络连通性测试软件的设计与实现 学生姓名 班级学号 专业 一一. 对指导教师下达的课题任务的学习与理解对指导教师下达的课题任务的学习与理解 Internet 是一个跨越全球的计算机网络。 通过 Internet 可以在全球范围内将信息快速、 有 效和方便地传递。Internet 就像信息高速公路,它是人们日常生活的重要组成部分,所以对 网络连通性的研究很有实用价值。本次毕设主要是研究网络的连通性,并研究网络的带宽 和拓扑特性。 设计并实现一个基于 ICMP 协议的网络连通性测试软件, 用于测试网络的连通性。 当源 主机与目的主机之间的链路可达时,给出链路的时延特性,和所经历的路由;当
2、源主机与 目的主机之间的链路不可达时,报告故障结点的 IP 地址。 二二. 阅读文献资料进行调研的综述阅读文献资料进行调研的综述 1 Winsock API 编程编程 传统的网络 API 有 NetBIOS、重定向器、邮槽和管道,现今比较普遍使用的网络编程 是 Winsock API。Winsock API 是一种与协议无关的网络 API。 2 TCP/IP 协议协议 TCP/IP 协议包含的范围非常的广,是一种四层协议,包含了各种硬件软件需求的定义,我 们这里只介绍软件方面的知识。 UDP 协议(User Datagram Protocol 用户数据报协议)。是一种保护消息边界的,不保障可
3、靠数据的传输。 TCP 协议(Transmission Control Protocol 传输控制协议)。 是一种流传输的协议.他提供可 靠的,有序的,双向的,面向连接的传输。 其中,保护消息边界,就是指传输协议把数据当作一条独立的消息在网上传输,接收端 只能接收独立的消息。也就是说存在保护消息边界,接收端一次只能接收发送端发出的一个 数据包。而面向流则是无保护消息保护边界的,如果发送端连续发送数据,接收端有可能在 一次接收动作中,会接收两个或者更多的数据包。 所以,UDP 协议的保护消息边界使得每一个消息都是独立的。而流传输,却把数据当作 一串数据流,它不认为数据是一个一个的消息。 ICMP
4、 通常被认为是 IP 层的一部分。它传递差错报文以及其他需要注意的信息。 ICMP 协议通常被 IP 层或更高层使用。一些 ICMP 报文把差错报文返回给用户进程。 ICMP 报文是在 IP 数据报内部被传输的。所有报文的前 4 个字节都是一样的,但是剩 下的其他字节则互不相同。 类型字段可以有 15 个不同的值, 以描述特定类型的 ICMP 报文。 某些 ICMP 报文还使用代码字段的值来进一步描述不同的条件。检验和字段覆盖整个 ICMP 报文。ICMP 的检验和是必需的。 3 TCP/IP 协议与协议与 Winsock 网络编程接口的关系网络编程接口的关系 Winsock 实际上可看作是 TCP/IP 协议的一种封装,你可以通过调用 Winsock 的接口函数 来调用 TCP/IP 的各种功能。例如我想用 TCP/IP 协议发送数据,你就可以使用 Winsock 的接 口函数 send()来调用 TCP/IP 的发送数据功能,至于具体怎么发送数据,Winsock 已经帮你封装 好了这种功能。 4 Winsock 编程的流程编程的流程 对于任何基于 Winsock 的编程首先我们