计算机通信网课程设计到达远程主机的路由探测程序的设计.doc
上传人:天马****23 上传时间:2024-09-12 格式:DOC 页数:17 大小:176KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

计算机通信网课程设计到达远程主机的路由探测程序的设计.doc

计算机通信网课程设计到达远程主机的路由探测程序的设计.doc

预览

免费试读已结束,剩余 7 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

通信网络设计课程设计S15第页共NUMPAGES17页到达远程主机的路由探测程序的设计摘要:本文主要讲述了路由追踪的基本程序设计与实现,并给出了一种基于IP网络的路由追踪命令Tracert,详细分析了实现路由追踪的基本原理,归纳了路由追踪的基本流程。Tracert通过ICMP协议和IPheader中TTL(存活时间)利用路由器对数据报存活时间的处理方式来实现路由探测的。首先根据任务书设计好流程图,然后编写程序代码,运行得到Traceroute的命令窗口。提取tracert的输出,再结合现有IP数据库及自建地名-坐标数据库对路由中各节点IP进行定位,最终实现了动态显示追踪的详细信息和路径。关键词:IP地址,ICMP协议,TTL,Tracert路由追踪1引言Internet,是目前世界上最大的计算机网络,更确切的说是网络中的网络,它由遍布全球的几万局域网和数百万台计算机组成,并通过用于异构网络的TCP/IP协议进行网间通信。互联网中,信息的传送是通过网中许多段的传输介质和设备从一端到达另一端。每一个连接在Internet上的设备,如主机、路由器、接入服务器等一般情况下都会有一个独立的IP地址。通过Traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路劲。当然每次数据包由某一同样的出发点到达某一同样的目的地走的路劲可能会不同,但基本上来说大部分时候所走的路由是相同的。随着Internet(国际互联网)的发展,越来越多的服务通过网络提供给大众,与此同时,针对互联网的攻击事件也越来越频繁。所谓路由追踪实际上就是在IP网络上判断从源到达目的所经过的路由器的IP地址,其基本的实现手段都是向目的地发送数据包以获取经过的路由器的IP。由于Internet上的路由协议是动态的,所以每次形成的数据包从同一个出发点到达目的地的路由可能会不一样,但由于路由算法有一定的稳定性,在大部分时侯所走的路由会是相同的。1.1课程设计目的1.这次课程设计,主要为了加深同学们对计算机网络网络的理解和认识2.了解信息在计算机网络与网络之间的传送和接收3.进一步加深了解网络与网络之间的协议4.理解网络中的IP地址以及路由之间的相关命令。1.2课程设计内容1.已知参数:输入:目的节点IP地址或主机名;输出:从控制台屏幕输出IP报文由本机出发到达目的主机所经过的路由信息。2.设计要求:通过原始套接字编程,实现Tracert的基本功能2.1初始化WindowsSockets网络环境;2.2解析命令行参数,构造目的端socket地址;2.3定义IP、ICMP报文;2.4接收ICMP差错报文并进行解析。1.3课程设计要求能探测到到达远程主机的路由;能将探测到的路由信息显示到屏幕窗口内。2设计原理traceroute是一个HYPERLINK"http://wenwen.soso.com/z/Search.e?sp=S路由跟踪&ch=w.search.yjjlink&cid=w.search.yjjlink"路由跟踪命令,它通过ICMP协议和IPheader中TTL(存活时间)来实现的。具体而言就是:发送方发出一个TTL是1的IPDatagram(事实上每个数据包发送三次,大小为40字节,包括本机的IP地址,目的主机的IP地址以及时间戳),当经由第一个路由器时,路由器将该数据包的TTL减1,发现此时的TTL为0,将数据包丢失,同时向源主机发送一个ICMPTime-to-Exceed报文(包括源主机的IP地址、路由地址以及路由的相关消息),源主机收到这个数据包后就知道了这个路由器在这条路径上。同理发送第二个、第三个......第n个。源主机将每次IP数据报的TTL+1,直到某个数据报到达了目的地址,此时不知发回一个ICMPTime-to-Exceed,而是发送一个数据报的响应报文。当源主机收到这样一个报文后便知道数据包已经到达了目的地。Traceroute提取发ICMPTTL到期消息设备的IP地址并作域名解析。每次,Traceroute都打印出一系列数据,包括所经过的路由设备的域名及IP地址,三个包每次来回所花时间。Traceroute有一个固定的时间等待响应(ICMPTTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMPTTL到期消息的响应。然后,Traceroute给TTL记数器加1,继续进行。2.1ICMP简介和基本原理ICMP(InternetControlMessageProtocol),即Internet控制报文协议,它是HYPERLINK"http://baike.baidu.com/view/7649