中南大学计算机网络实验报告

合集下载

计算机网络实验教程实验报告

计算机网络实验教程实验报告

计算机网络实验教程实验报告一、实验目的本次计算机网络实验的主要目的是通过实际操作和观察,深入理解计算机网络的基本原理和技术,提高对网络配置、通信协议、网络服务等方面的实践能力,培养解决网络问题的思维和方法。

二、实验环境1、硬件环境实验中使用了若干台个人计算机,其配置包括:处理器_____、内存_____、硬盘_____等。

2、软件环境操作系统:Windows 10 专业版网络模拟软件:Packet Tracer网络测试工具:Ping、Tracert 等三、实验内容与步骤实验一:网络拓扑结构的搭建1、打开 Packet Tracer 软件,选择合适的网络设备,如路由器、交换机、PC 等。

2、按照设计好的网络拓扑结构,将设备进行连接。

本次实验构建了一个包含两个局域网通过路由器互联的简单网络。

3、为各设备配置 IP 地址、子网掩码、网关等网络参数。

实验二:网络通信协议的分析1、在搭建好的网络中,选择两台 PC 进行通信。

2、使用 Ping 命令测试网络的连通性,并观察返回的结果。

3、利用 Wireshark 抓包工具捕获通信过程中的数据包,分析其中的协议字段,如 IP 头、TCP 头、UDP 头等,了解网络协议的工作原理。

实验三:网络服务的配置与测试1、在服务器上配置 Web 服务,安装 IIS 组件,创建网站,并设置相关的权限和访问规则。

2、从客户端访问服务器上的网站,验证 Web 服务的可用性。

3、配置 FTP 服务,设置用户账号和权限,进行文件上传和下载测试。

实验四:网络安全的实现1、在路由器上配置访问控制列表(ACL),限制特定 IP 地址或端口的访问。

2、启用防火墙功能,设置安全策略,防止网络攻击。

四、实验结果与分析实验一结果分析成功搭建了网络拓扑结构,各设备之间能够正常通信。

通过配置正确的网络参数,确保了数据包在网络中的准确传输。

实验二结果分析Ping 命令测试显示网络连通性良好,Wireshark 抓包分析揭示了数据包在网络层和传输层的封装和解封装过程,对 IP 协议和 TCP/UDP 协议的工作机制有了更直观的认识。

计算机网络实验报告

计算机网络实验报告

计算机网络实验报告计算机网络实验报告计算机网络实验是大学计算机科学与技术专业的一门重要的实践课程,通过这门课程的学习和实践,学生们可以掌握计算机网络的基本知识,理解网络常见的问题和解决方案,熟练掌握网络配置、测试和故障排除等技能。

在这篇文章中,我们将介绍计算机网络实验报告的要求和相关案例。

一、计算机网络实验报告的要求1. 实验目的和方法在计算机网络实验报告中,首先应清晰地阐述实验的目的和方法,即实验要达到什么样的目标,使用什么样的方法来实现这个目标。

2. 实验环境和工具在实验报告中,要详细描述实验所使用的软硬件环境和工具,包括实验平台、操作系统、网络拓扑结构、网络设备、协议分析工具等,这些信息可以帮助读者更好地理解实验的过程和结果。

3. 实验步骤和过程实验步骤和过程是实验报告的核心内容,应详细描述实验的每一个步骤和过程,包括实验前的准备工作、实验中的操作流程、实验的成功与失败情况等。

4. 实验结果和分析实验结果和分析是实验报告的重要组成部分,应对实验结果进行分析和总结,分析实验中遇到的问题和解决方案,总结实验的收获和不足之处。

5. 实验总结和建议在实验报告的最后,应进行实验总结和建议,总结实验的目的、过程和结果,提出对实验的改进建议和未来拓展的方向。

二、计算机网络实验报告案例1. 实验名称:网络文件传输实验实验目的:学习FTP、HTTP协议,掌握文件传输的基本原理和方法。

实验环境:Windows 7/10,FileZilla等软件。

实验步骤:1)安装FileZilla软件。

2)配置本地站点和FTP服务器,连接FTP服务器。

3)上传和下载文件,记录传输速度和流量。

4)进行HTTP文件下载实验,观察文件下载的过程和数据传输情况。

实验结果和分析:我们成功地完成了FTP和HTTP文件传输实验,对文件传输的原理和方法有了更深入的认识。

同时,我们也发现了文件传输的安全问题,并提出了数据加密的建议,以保护文件传输的安全。

计算机网络技术实习报告3篇

计算机网络技术实习报告3篇

计算机络技术实习报告3篇计算机络技术实习报告篇1转眼之间,一个月的实习期即将结束,回顾这一个月的实习工作,我的感触很深,收获颇多。

这一个月以来,在领导和同事的悉心照料关怀和指导下,通过我自身的不懈努力,我学到了人生难得的工作经验和社会见识。

我将从以下几个方面总结络技术岗位实习这段时间自己的体会和心得:一、努力学习,理论结合实践,不断提高自身工作能力。

在络技术岗位工作的实习过程中,我始终把学习作为获得新知识、掌握新方法、提高能力、解决问题的一条重要途径和方法,切实做到用理论武装头脑、指挥实践、推动工作。

思想上积极进取,积极的把自己现有的知识用于社会实践中,在实践中才能检验知识的有用性。

在这一个月的实习工作中给我最大的感触就是:我们在学校学到的很多的理论知识,但很少用于社会实践中,这样理论和实践就大大的脱节,以至于在以后的学习和生活中照不到正确的方向去前进,无法学以致用。

同时,在工作中不断地学习也是弥补自己的不足的有效的方式。

信息时代,瞬息万变,社会在变变化,人也在变化,所以你一天不学习,你就会落后。

通过这一个月的实习,并结合络技术岗位工作的实际情况,认真学习的络技术岗位工作各项政策制度、管理制度和工作条例,使工作的困难有了最有力的解决武器。

通过这些工作条例的学习使我进一步加深了对各项工作的理解,可以求实务真的开展各项工作。

二、围绕工作、突出重点、尽心尽力履行职责。

在络技术岗位工作中我都本着认真负责的态度去对待每项工作。

虽然开始由于经验不足和认识不够,觉得络技术岗位工作中找不到事情做,不能得到锻炼自己的目的,但我迅速从自身出发寻找原因,和同事交流,认识到自己的不足,以至于迅速的转变自己的角色和工作定位。

为使自己尽快熟悉工作,进入角色,我一方面抓紧时间查看相关资料,熟悉自己的工作职责,另一方面我虚心向领导。

同时请教使我自己对络技术岗位工作的情况有了一个比较系统、全面的任职和了解。

根据络技术岗位工作的实际情况,结合自身的优势,把握工作的重点和难点,尽心尽力完成络技术岗位工作的任务。

计算机网络实验报告

计算机网络实验报告

实验1 以太网组网实验及基本网络命令一、实验目的1.了解网络命令的基本功能2.掌握基本网络命令的使用方法3.掌握使用网络命令观察网络状态的方法二、实验环境1.软件环境:Microsoft Windows 操作系统2.硬件环境:配置网卡的计算机,由IP路由器连接。

三、实验步骤1.安装TCP/IP。

2.手动配置TCP/IP参数。

3.使用ipconfig命令来测试TCP/IP是否安装成功。

4.使用ping命令来验证。

5.学习tracert、netstat、arp、net等命令的功能及使用方法。

1.Ipconfig命令Ipconfig命令可以用来显示本机当前的TCP/IP配置信息。

这些信息一般用来验证TCP/IP 设置是否正确。

常用格式:(1)当使用Ipconfig是不带任何参数选项,那么它为每个已经配置好的接口显示IP地址、子网掩码和默认网关值。

(2)Ipconfig/all。

当使用all选项时,Ipconfig除了显示已配置TCP/IP信息外,还显示内置于本地网卡中的物理地址(MAC)以及主机名等信息。

(3)Ipconfig/release和Ipconfig/renew。

这是两个附加选项,只能在DHCP(动态主机配置协议)服务器租用IP地址的计算机上起作用。

2. Ping命令Ping命令的格式如下:Ping [-t] [-a] [-n count] [-l size] [-f] [-I TTL] [-v TOS] [-r count] [-s count] [[-j host-list]|[-k host-list]] [-w timeout] destination-listPing命令主要参数如下:∙-t:使当前主机不断地向目的主机发送数据,直到按Ctrl+C键中断。

∙-a:将地址解析为计算机名。

∙-n count:发送count 指定的ECHO数据包数,默认值为4 。

∙-l size:发送的数据包的大小。

《计算机网络》实验报告模板-实验1

《计算机网络》实验报告模板-实验1

一、实验目的与要求巩固物理层标准的相关知识,了解常见的传输介质及其标准,初步认识计算机网络,了解常见的网络设备及其功能,了解常见的网络协议。

二、实验内容1、参观网络技术室,了解和认识网卡、网络连接头、传输线缆、线缆分析仪、集线器、交换机、路由器、服务器的功能与特性;2、按照学校校园网环境,学会网卡的安装与配置。

三、实验步骤实验步骤(1)▪听取讲解,了解小型局域网的基本组成;▪观看各类网卡,了解网卡的基本功能、分类方法(按总线标准、协议标准、传输速率等分类);▪观看常见的传输介质(双绞线、同轴电缆、光纤、无线),了解常见传输介质的功能与特性;实验步骤(2)▪介绍网络连接头,重点了解RJ-45连接头及其A标、B标的制作;A、B标的适用情形。

▪观看常见的网络设备,重点了解集线器Hub、交换机和路由器的功能与特性;▪动手安装网卡,安装网卡驱动程序,配置网卡参数(如静态IP地址,网关路由、DNS 服务器等)四、结果分析与思考网卡是一块被设计用来允许计算机在计算机网络上进行通讯的计算机硬件。

传输线缆是信息和实现电磁能转换的线材产品。

集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。

它工作于OSI(开放系统互联参考模型)参考模型第一层,即“物理层”。

集线器与网卡、网线等传输介质一样,属于局域网中的基础设备,采用CSMA/CD(即带冲突检测的载波监听多路访问技术)介质访问控制机制。

集线器每个接口简单的收发比特,收到1就转发1,收到0就转发0,不进行碰撞检测。

交换机是一种用于电(光)信号转发的网络设备。

它可以为接入交换机的任意两个网络节点提供独享的电信号通路。

最常见的交换机是以太网交换机。

其他常见的还有电话语音交换机、光纤交换机等。

路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。

计算机网络实验报告

计算机网络实验报告

计算机网络实验报告引言计算机网络是现代社会中不可或缺的基础设施,它使得我们能够在全球范围内实现信息交流与资源共享。

为了更好地理解计算机网络的工作原理,本次实验我们进行了一系列的网络实验。

一、网络拓扑实验首先,我们进行了网络拓扑实验,通过搭建不同拓扑结构的网络,观察其性能表现和通信效率。

我们尝试了星型、环状和总线型拓扑结构,并通过测量网络中的传输时延、带宽和吞吐量来评估不同拓扑结构的优劣。

结果显示,星型拓扑结构具有较好的扩展性和可靠性,但是对中央节点的要求较高,一旦中央节点故障,整个网络将无法正常运行。

而环状和总线型拓扑结构则相对简单,但是容易产生信号干扰和数据冲突等问题。

二、网络传输协议实验接下来,我们进行了网络传输协议实验,重点研究TCP/IP协议的性能和可靠性。

我们通过改变传输文件的大小、网络拥塞程度等因素,测试了TCP协议在不同情境下的传输速度和稳定性。

同时,我们也对比了UDP协议的传输效果。

实验结果表明,TCP协议在数据传输方面具有较好的可靠性和流量控制能力,但是在高丢包率的情况下会出现明显的传输延迟。

相比之下,UDP协议虽然传输速度较快,但是无法保证数据的可靠性,容易出现丢包和重传等问题。

三、网络安全实验随后,我们进行了网络安全实验,探讨了网络攻击与防御的相关技术。

我们采用了常见的入侵检测系统和防火墙来保护网络安全,通过模拟各种攻击手段,如拒绝服务攻击、端口扫描等,测试了网络的防护能力。

实验结果显示,入侵检测系统和防火墙能够有效地阻止大多数网络攻击,但是对于某些高级攻击手段,如零日漏洞攻击,仍然存在一定的漏洞。

因此,网络安全的保护需要综合运用各种技术手段,不断提升系统的安全性。

结论通过本次计算机网络实验,我们对网络拓扑结构、传输协议和网络安全等方面有了更深入的理解。

网络拓扑结构的选择应根据实际需求进行权衡,传输协议的选择应根据网络特性和应用场景进行调整,而网络安全则需要综合运用各种安全技术来确保系统的稳定性和数据的安全性。

计算机网络实习总结报告

计算机网络实习总结报告

计算机网络实习总结报告----WORD文档,下载后可编辑修改----下面是小编收集整理的范本,欢迎您借鉴参考阅读和下载,侵删。

您的努力学习是为了更美好的未来!计算机网络实习总结报告范文一暑假在北京打工以及平时参加的大大小小的招聘会,使我深知大学生平时实习对经验积累的重要性,所以对学校安排的这次实习格外的珍惜!认知的意义在于知道了什么,而不在于学会了什么!正如这句话所说,我们这次实习的目的并不是要来学会什么,而是来了解作为这个专业的学生我们需要知道的,为了今后的发展我们有必要知道的!这次认知实习不仅使我对IT这个专业有了更清晰、深刻、全面地了解:IT业体系太庞大了,它无处不在。

同时它是充满传奇的行业,蕴涵着无限的商机!我国的信息产业还很落后,随着社会的发展及国家的支持,网络必是社会发展的趋势,计算机将来会无处不在!学计算机是很有前途的,不管自己精通哪一项技术,前途都会是光明的!通过这次实习我知道了其实计算机就业范围不仅局限在网络工程师,程序员等上面,其实是很广泛的,比如说软件测试工程师(还是第一次听说)系统分析师就都是很有前途的职位,还有3G的到来必将带来无限的职位需求,将来的热门:人工智能、生物科技、无限局域,还有通信网与因特网的合并...无不关系到计算机,无不蕴涵着无数的机会,无不关系到我们学计算机的每一个人!同时我们也有了更多的根据自己的兴趣选择的机会。

我还了解到Office功能其实还很多,我们掌握的只有不足1%!使我意识到无论朝哪个方向发展,主要还是得扎实、深刻地学习,同时必须努力探索!IT业的发展速度惊人,我们必须不断的学习,现在的社会不再是一劳永逸,其它行业也是如此,我们必须不断的拿知识来武装自己,不然就会落伍!现在就业难原因其实在于竞争的加剧,为了在竞争中得到成功,我们必须时时刻刻学习!还学到了很多做人做事的道理,不仅懂得了要想在计算机这一行立足必须具备扎实的技术理论知识,还必须有与人沟通、礼节...的能力!更懂得了尝试的重要性:很多事情不是听了说了就行的,只有去体验才会学会,即实践的重要性!上大学是在投资未来,大学生就业需要解决的问题:理论与操作,人际沟通,态度与心态,而且必须要有压力和自信!最重要的是要付出勤劳和汗水!老师安排的职业生涯规划更是使我感受颇多!我学到了德、言、艺、行的哲理:一个人的发展必须不断从这几方面完善自己,这样自己的整体素质才会得到提高!将来步入社会专业技能并不是衡量一个人的唯一标准!人活着还必须要有一种责任,责任是成功的第一步!有了责任才会有动力!还有无论做什么事必须要坚持,只有坚持下去,才会成功!事在人为,就怕不做!我们不能怕失败,关键是要从失败中总结经验!带着勇气,带着自信,坚持不懈,踏踏实实!我们就一定会成功!两周的实习是短暂的,但我的收获是无限的!回顾所走过的路,太多的是无奈和迷茫,这次实习就像是我人生道路上的航标,为我指明了前进的方向,使我对自己的前途充满了信心,我不仅知道了在人生的岔道口更适合朝哪个方向前进!更知道了在今后的道路上怎么去武装自己!计算机网络实习总结报告范文二一、实习目的认识实习是计算机科学与技术专业的学生在校期间重要的实践性环节,目的在于通过接触了解计算机的基本组成结构、计算机软件的开发流程以及计算机网络的相关知识,对所学专业有一个感性认识,树立正确的专业思想,为以后学习专业课程作好准备。

计算机网络实验报告

计算机网络实验报告

计算机网络实验报告计算机网络实验报告实验时间:参加人员:一、实验名称:简单以太网的组建二、实验内容1、观察教学机房,了解计算机网络结构,并画出计算机网络拓扑结构图。

2、了解计算机网络中的网络设备,并了解每台计算机上使用的网络标识、网络协议。

3、制作2根直通双绞线和2根交叉线,并测试。

4、分别用制作好的直通线、交叉线以及串口线、并口线,连接两台计算机。

三、实验步骤1、教学机房网络拓扑结构观察计算机教学机房的计算机网络的组成,并画出网络拓扑结构图。

(1)记录联网计算机的数量、配置、使用的操作系统、网络拓扑结构、网络建成的时间等数据。

(2)了解教学机房设备是如何互联的。

(3)认识并记录网络中使用的其他硬件设备的名称、用途和连接的方法。

(4)根据以上数据及观察结果画出拓扑结构图。

(5)分析网络使用的结构及其所属类型。

(6)打开计算机进入系统,查看计算机的网络参数,记录主要网络配置参数。

2、直通线的制作按照EIA/TIA568B的标准,制作两段直通线。

(1)利用双绞线拨线器将双绞线的外皮除去2~3cm。

有些双绞线电缆内含有一条柔软的尼龙绳,若在剥除双绞线的外皮时,裸露出部分太短,可紧握双绞线外皮,再捏住尼龙线的下方剥开。

(2)将裸露的双绞线中的橙色对线拨向自己的前方,棕色对线拨向自己的方向,绿色对线拨向自己的左方,蓝色对线拨向右方。

(3)将绿色对线和蓝色对线放在中间位置,橙色对线和棕色对线保持不动,即放在靠外的位置。

(4)小心拨开每一对线,而不必剥开各对线的外皮。

特别注意的是,绿色条线应跨越蓝色对线。

正确的线序是:白橙、橙、白绿、蓝、白蓝、绿、白棕、棕。

这里最容易犯错的是将白绿线与绿线相邻放在--起(5)将裸露出的双绞线用剪刀或斜口钳剪下只剩下约14mm的长度。

最后再将双绞线的每一根线依序放入RJ-45接头的引脚内,第一一只引脚内应该放白橙色的线,其余类推。

(6)确定双绞线的每根线已经正确放置后,就可以用RJ-45压线钳压接RJ-45接头了,要确保每一根线与接头的引脚充分接触。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中南大学《计算机网络》实验报告学生姓名学号专业班级指导教师桂劲松学院信息科学与工程学院完成时间2011年1月模拟路由算法的实现一、实验内容1.模拟距离向量路由算法的路由表交换过程,演示每轮交换后路由表的变化。

2.实现链路状态路由算法中的最短路径算法。

二、实验目的及要求本实验是计算机网络课程的实践性锻炼环节。

通过实验,帮助学生更好地掌握网络通信协议的实现技术,锻炼学生应用高级编程语言完成通信编程的能力,使学生加深对网络协议本质的理解,巩固课堂所学的理论知识。

要求实验者利用路由选择算法模拟软件提供的通信功能,模拟链路状态路由选择算法的初始化、路由信息扩散过程和路由计算方法;掌握链路状态算法的路由信息扩散过程;掌握链路状态算法的路由计算方法。

三、实验原理编程语言:JAVA编程工具:MyEclipse实验实现方式:单机模拟实现核心方法:dijkstra算法计算最短路径分析:布置好各个模拟路由,以及路由的路程权值如何获取。

接着就是核心算法的实现,如何计算任意两个路由之间的最短路径问题。

用到的是dijkstra算法。

Dijkstra算法按照从给定起点到图中顶点的距离,顺序求出最短的路径,首先,它求出从起点到最接近起点的顶点之间的最短路径,然后求出第二近的,一次类推,推而广之,再第i次迭代开始之前,算法已经确定了i-1条连接起点和离起点最近顶点之间的最短路径。

这些顶点、起点和从起点到顶点的路径上的边,构成了给定图的一颗子树Ti,因为所有边的权值都是非负数,可以从与Ti的顶点相邻的顶点中找到下一个和起点最接近的顶点。

和Ti的顶点相邻的顶点的集合称为“边缘顶点”,以他们为候选对象,Dijkstra算法可以从中选出一个最接近起点的顶点。

为了确定第I 个最接近的顶点,对于每一个边缘顶点u,该算法求出它到最近的树中顶点v的距离以及从起点到v得最短路径长度dv的和,再从中选出具有最小和的顶点。

此次实验主要是运用路由算法来处理路由当中的一些问题,利用Dijkstra算流程图:核心算法代码如下。

其中每个顶点用一个类来封装含有两个属性,一个是路由编号,一个是到某个路由的最短路径初始值为无限大。

void Dijkstra(int * arcs[],int * R[],int RL[],int vexnum){//迪杰斯特拉算法int v0; //定义源节点bool * visit=new bool [vexnum];//已经确定最短路径的节点的集合cout<<"请输入起始节点:";cin>>v0;cout<<endl;for(int cnt=0;cnt<vexnum;cnt++){//进行主要的循环之前的初始化visit[cnt]=FALSE;RL[cnt]=arcs[v0][cnt];if(RL[cnt]<INFINITY){R[cnt][0]=v0;R[cnt][1]=cnt;}} //forRL[v0]=0;//源节点的标志visit[v0]=TRUE; //初始化已经找到最短路径的点集合for(int i=1;i<vexnum;i++){//dijkstra算法的主要循环int min=INFINITY;int v=v0;for(int j=0;j<vexnum;j++)if(!visit[j])if(RL[j]<min){v=j;min=RL[j];}visit[v]=TRUE; //离v0顶点最近的v加入到s集for(int k=0;k<vexnum;k++)//更新当前最短路径及距离if(!visit[k]&&(min+arcs[v][k]<RL[k])){//modify shortest r[j] and RL[j]RL[k]=min+arcs[v][k];updateRouteLen(R[k],R[v],k,vexnum);}//if}//fordelete[] visit;visit=NULL;}//Dijkstra完成核心算法后,对于每个路由器运行一次Dijkstra算法就可以计算出该路由到其他各个路由的最短路径。

四、实验过程及结果本实验用6个节点进行模拟,首先输入节点个数,再依次输入节点的标识符和到邻居节点的标识符和距离。

以end为结束符。

运行结果如下:请输入路由节点总个数:6请输入路由节点标识符:a请输入节点:a 的邻居节点的标识符及其到邻居节点的距离:b请输入节点:a 的邻居节点的标识符及其到邻居节点的距离:f3请输入节点:a 的邻居节点的标识符及其到邻居节点的距离:end请输入路由节点标识符:b请输入节点:b 的邻居节点的标识符及其到邻居节点的距离:a8请输入节点:b 的邻居节点的标识符及其到邻居节点的距离:c3请输入节点:b 的邻居节点的标识符及其到邻居节点的距离:f5请输入节点:b 的邻居节点的标识符及其到邻居节点的距离:d2请输入节点:b 的邻居节点的标识符及其到邻居节点的距离:e请输入节点:b 的邻居节点的标识符及其到邻居节点的距离:end请输入路由节点标识符:c请输入节点:c 的邻居节点的标识符及其到邻居节点的距离:b3请输入节点:c 的邻居节点的标识符及其到邻居节点的距离:d10请输入节点:c 的邻居节点的标识符及其到邻居节点的距离:end请输入路由节点标识符:d请输入节点:d 的邻居节点的标识符及其到邻居节点的距离:c10请输入节点:d 的邻居节点的标识符及其到邻居节点的距离:b2请输入节点:d 的邻居节点的标识符及其到邻居节点的距离:6请输入节点:d 的邻居节点的标识符及其到邻居节点的距离:end请输入路由节点标识符:e请输入节点:e 的邻居节点的标识符及其到邻居节点的距离:b4请输入节点:e 的邻居节点的标识符及其到邻居节点的距离:d6请输入节点:e 的邻居节点的标识符及其到邻居节点的距离:f4请输入节点:e 的邻居节点的标识符及其到邻居节点的距离:end请输入路由节点标识符:f请输入节点:f 的邻居节点的标识符及其到邻居节点的距离:a3请输入节点:f 的邻居节点的标识符及其到邻居节点的距离:b5请输入节点:f 的邻居节点的标识符及其到邻居节点的距离:e4请输入节点:f 的邻居节点的标识符及其到邻居节点的距离:End路由表结果五、实验心得本次实验,主要的就是一个著名算法的运用,当然通过本次实验我对链路路由算法也有了进一步的认识与了解。

从这次的实验中我不但学会了一个新的算法,进一步锻炼了我的编程能力而且我也对路由相关内容有了更深刻的了解。

六、附录:源代码package dstverctor;/*** 描述两个路由节点之间关系的类**/public class DistanceNode {//public RouteNode src;//源节点// public DistanceNode(RouteNode src){// this.src = src;//}public String dst;//目标节点public int distance;//两者之间的距离public String path;//经过的第一个路径节点,即线路public DistanceNode next;//下一个节点public DistanceNode(){}public DistanceNode(String dst,int distance,String path){ this.dst = dst;this.distance = distance;this.path = path;}/*** 根据节点标识符,得到路由节点到指定节点的距离* @param key 指定节点标识符* @return 如果找到,则返回这个关系类节点,否则返回null。

* int*/public DistanceNode findNode(String key){DistanceNode dn = this;while(dn!=null){if(dn.dst.equals(key)){return dn;}dn = dn.next;}return null;}/*** 根据key向链表中修改或增加一个节点,如果存在dst.equal(key)的点并且他的distance大于要插入的distance,则更改其distance,否则向链表末尾插入新节点* @param key* @param distance* @param path* void*/public void addNode(String key,int distance,String path){DistanceNode dn = findNode(key);if(null!=dn){//如果找到了节点if(dn.distance>distance)dn.distance = distance;}else{DistanceNode dn1 = this;while(dn1.next!=null){dn1 = dn1.next;}DistanceNode node = new DistanceNode();node.distance = distance;node.dst = key;node.path = path;dn1.next = node;node.next = null;}}public void print(){DistanceNode dn = this;System.out.println("目地节点:"+dn.dst+" 距离:"+dn.distance+" 线路:"+dn.path);while(dn.next!=null){dn = dn.next;System.out.println("目地节点:"+dn.dst+" 距离:"+dn.distance+" 线路:"+dn.path);}}}package dstverctor;/*** 描述两个路由节点之间关系的类**/public class DistanceNode {//public RouteNode src;//源节点// public DistanceNode(RouteNode src){// this.src = src;//}public String dst;//目标节点public int distance;//两者之间的距离public String path;//经过的第一个路径节点,即线路public DistanceNode next;//下一个节点public DistanceNode(){}public DistanceNode(String dst,int distance,String path){ this.dst = dst;this.distance = distance;this.path = path;}/*** 根据节点标识符,得到路由节点到指定节点的距离* @param key 指定节点标识符* @return 如果找到,则返回这个关系类节点,否则返回null。

相关文档
最新文档