计算机网络课程设计---生成树协议的研究与实现
课 程 设 计 报 告
课程名称 计算机网络 课题名称 生成树协议的研究与实现
专 业 网络工程 班 级 学 号 姓 名 指导教师
2012年1月6日
2
湖南工程学院
课 程 设 计 任 务 书
课程名称 计算机网络原理 课 题 生成树协议的研究与实现
专业班级 网工1002班 学生姓名 学 号 指导老师 审 批
任务书下达日期 2012年12月29日 任务完成日期 2013年1月6 日
3
课程设计任务书
1设计内容与设计要求
1.1. 设计内容
1.1.1生成树协议的原理与实现过程
建立有环路的局域网,采用快速生成树协议防止产生风暴。并对STP、RSTP协议的工作原理进行研究,设计内容如下:
(1)首先掌握生成树协议的工作原理
(2)然后掌握并配置二层交换机和三层交换机。 (3)实现三层交换机链路聚合的方法 (4)建立基于快速生成树协议的网络 (5)搭建DHCP服务器 (6)设计实施与测试方案
1.2设计要求:
1.2.1 课程设计报告规范
(1)工作原理
通过文字和图形一起来形象的阐述工作原理。
(2)课题将要实现的主要功能 (3)功能需求及组网说明
1)
网络拓扑图:用拓扑图说明要做的大概内容。
4
2) 网络配置:要求每个配置过程不能仅仅给出配置清单,都要结合
原理阐述。 (4)调试分析
1)
测试数据:准备典型的测试数据和测试方案,包括正确的输入及
输出结果和含有错误的输入及输出结果。
2)
调试中遇到的问题以及解决问题的方法。
(5)心得体会 (6)书写格式
1) 设计报告要求用A4纸打印成册:
2) 一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。
3) 课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件。
4) 正文总字数要求在5000字以上(不含配置命令)。 (7)附录
a. 命令清单(带注释)
1.2.2 考核方式
指导老师负责验收程序的运行结果,并结合学生的工作态度、实际动手能力、创新精神和设计报告等进行综合考评,并按优秀、良好、中等、及格和不及格五个等级给出每位同学的课程设计成绩。具体考核标准包含以下几个部分:
(1)平时出勤 (占10%)
(2)系统需求分析、功能设计、数据结构设计及程序总体结构合理与否(占10%)
(3)程序能否完整、准确地运行,个人能否、熟练地调试程序(占40%) (4)设计报告(占30%)
注意:不得抄袭他人的报告(或给他人抄袭),一旦发现,成绩为零分。 (5)完成情况(占10%)。1.2.3 课程验收要求
(1)运行所设计的系统。 (2)回答有关问题。
5
(3)提交课程设计报告。
(4)提交软盘(源程序、设计报告文档)。
(5)依内容的创新程度,完善程序情况及对程序讲解情况打分。
2.进度安排
第 17周:星期六 8:00——12:00 上机 第 18周:星期四 14:00——16:00 上机
课程设计报告
1.需求分析
1.1项目背景
在很多实验或现实生活中搭建网络时,我们会希望通过设置冗余线路的方法来使的搭建的网络更加可靠,即使一条线路出现故障,也可以有其它的通信链路来代替,使网络只丢失个别的数据,而其它部分仍然可以正常运行。这样虽然提高了网络的可靠性,但是也很容易造成新的问题——环路问题,也就是使得报文在环路中无限循环,不断损耗资源。所以便出现了生成树协议,通过使用生成生成树来保证一个已知的交换机在网络拓扑中沿一个环动态工作。
1.2需求分析
1.1.1生成树协议简介
生成树协议是二层即数据链路层的管理协议,是为了消除网络二层环路,而采用有选择的阻塞 环路中得冗余链路的协议,最终将环路网络结构修剪成五环路的树形网络结构从而防止报文在环路中无限循环,不断损耗资源。 1.1.2 生成树协议的工作原理 (1)生成树协议的简单原理
1)根网桥(Root Bridge):桥ID最小的网桥。
2)根端口(Root Port):到达根桥的路径是该端口所在网桥到达根桥的最佳路径。
3)指定端口(Designated Port):每一个网段选择到根桥最近的网桥作为指定网桥,该网桥到这一网段的端口为指定端口。
6
4)阻塞端口(Blocked Port):既不是指定端口,也不是根端口的端口。 (2)生成树协议的工作过程
第一步根桥的选举
桥ID由优先级(Bridge Priority)和桥MAC地址(BridgeMacAddress)组成
桥ID小的桥被选举为根桥 第二步:计算根路径开销
根路径开销(RootPathCost)是到达根的路径上所有链路开销(Cost)
的代数和
非根桥进行根端口选举时,根路径开销最小的端口为根端口 物理段进行指定桥选举时,路径开销最小的桥为指定桥 第三步:端口角色的确定 根桥上所有端口为指定端口
在非根桥上选举根路径开销(RootPathCost)最小的端口为根端口 每个物理段选出根路径开销最小的桥作为指定桥,连接指定桥的端口
为指定端口
不是根端口和指定端口的其余端口被STP置为阻塞状态
1.1.3生成树协议网络设计的必要性
在交换机之间又两条及两条以上的物理线路时,会自动堵塞某些端口,使之不能形成交换回路,从而使交换机之间默认只有1条物理线路,因为交换回路很容易造成广播风暴,使局域网带宽下降。 但是他堵塞的端口可以做冗余,就是现在使用的端口坏掉以后,它会自动连同,使网络不断线 1.1.4生成树协议的功能
(1)在终端站点之间提供单一路径,避免并消除环路。
(2)通过从软件层面修改网络物理拓扑结构来构建一个无环路逻辑转发拓扑结构,提供了物理线路的冗余连接,消除了网络风暴,从而提高网络的稳定性和减少网络故障的发生率。
1.2 计算机体统需求
2.逻辑设计
2.1 拓扑设计
7
下图2.1拓扑图所示,有两个具有路由功能的三层交换机和两个二层交换机
来构成两个环路。
图2.1 网络拓扑图
2.2网络结构分析
(1)两个三层交换机任意一台两层交换机之间都构成环路,以便使用生成树协议的使用。冗余连接可以有效的防止网络中的单点失效的问题,使得此网络设计更加可靠。
(2)与每台二层交换机连接的主机用来测试最终实验成功与否,在主机上通过ping命令查看网络的连通性,用tracert命令可以分组数据所走路径。从而让我们知道我们所做的实验是否达到了自己所要的目的。
(3)DHCP服务器用来给两台主机动态分配ip地址。增加服务器是为了使得这个网络设计更加标准化,更加接近现实的要求。在我们生活中得网络环境里,我们所使用的电脑的ip一般都不是我们自己手动去配置的,在使用DHCP 进行动态IP 地址分配的网络环境中,当主机向DHCP 服务器发出请求IP 地址的信息。当DHCP服务器收到客户端请求时,它从在它数据库定义的地址池中选择一个IP 信息,并把它分配给客户端。这样更加优化了网络结构的设计。
(4)两台三层交换机之间采用了链路聚合的方法,将两个信道合成单个的信道,其实也是构成了一个环路,只是这个换只有两台设备。两个信道中,有一个设置成主信道,非主信道随着主信道的改变而改变。非主信道一般是处于disabled状态,即不能接受和发送任何数据,只有当主信道由于某些原因而不能
8
使用时,它才能够自动使用,这样更加增加了此网络环境的可靠性。
(5)在这个网络设计中,设置了三个vlan(虚拟局域网),从逻辑上把这个网络划分为三个网段,从而实现虚拟工作组的数据交换。
3.网络系统设计
3.1网络系统特点和用户需求
3.1.1网络系统特点
1)有较高的可靠性,当网络中某些信道出现故障不能通信时,有其它信道可以代替。
2)由于三层交换机具有路由的功能,所以能够连接不通的网段。 3)能够由服务器自动生成主机的ip地址,而不用手动生成。 3.1.2 用户需求
1)要求网络系统可靠,经济。
2)在不同网段的用户之间能够互相通信。 3)要求服务器能够自动为用户分配ip。
3.2 设计原则
3.2.1 高可靠性
网络要求具有高可靠性和高稳定性,提供拓扑结构及设备的冗余和备份,防止局部故障引起整个网络系统的瘫痪,要避免网络出现单点失效。在网络骨干上要提供备份链路,提供冗余路由。把故障对网络系统的影响减少到最小,避免由于网络故障造成用户损失。 3.2.2 标准化
网络中所使用的协议应尽量按照国际标准去设置,以便于以后与其它网络的通信。设备的配置也应该按标准去配置,以便于以后的维护。 3.2.3 可维护性
网络系统随时都有存在着各种各样的出现故障的可能性,而任何一个稍好的网络系统的可维护性都要是比较好的。若出现故障,网络就瘫痪了并不能够恢复,那样的话,网络系统就成为一次性的了,用户的损失会很大。 3.2.4 安全性
网络支持众多用户,有许多重要资料传递,同时和internet存在连接,网络安全性在整个网络中是个很重要的问题,应该采用一定手段控制网络的安全
9
性,以保证网络正常运行。网络中应采取多种技术从内部和外部同时控制用户对网络资源的访问。网络系统还应具备高度的数据安全性和保密性,能防止非法侵入和信息泄露。 3.2.5 经济性与实用
小型网络的特点决定了网络系统必需有实用与经济性的特点。实用性使得网络便于管理,维护,以减少网络实用人员运用网络的难度。由于一般投资建设网络的资金有限,所以一般要求网络具有较高的性价比,所以在建设本网络时一定要使用性价比较高的网络技术和网络设备,以节约建设资金。
4.调试分析
4.1 给出测试数据
1)DHCP服务器ip地址:10.1.80.24 2)PC1获得的ip地址:10.1.8.24 PC2获得的ip地址:10.1.24.24 3)router1中的虚拟端口: ve 8的ip地址:10.1.8.1/24 ve 9 的ip地址:10.1.9.1/24 ve 24 的ip地址:10.1.24.1/24 4)router2中得虚拟端口: ve 8的ip地址:10.1.8.2/24 ve 24的ip地址:10.1.24.2/24
4.2 要达到的目的
DHCP服务器能够自动给主机分配ip地址,在环路中设备启用生成树协议后有些端口自动断开,使得网络中数据不能在环路上通信。当PC1 ping PC2时,所走的网络要能经过端网桥。
4.3 实验步骤及过程
4.3.1.设置链路聚合
1)给两台三层交换机之间连接的两条链路设置链路聚合,并设置主链路,下面给router2的eth 9和eth 10端口设置链路聚合,并设置eth 9端口为主端口,在router1上的设置和router2一样,设置过程如图4.1所示
10
图4.1 链路聚合设置
4.3.2给各个交换机的端口划分vlan
1)sw1只连接了一个vlan 8,所以sw1的所有端口都在vlan 8中,划分vlan后显示如下:
11
图4.2 sw1在vlan8上的端口
2)给router1的端口分别划分给vlan 8,vlan 9,vlan 24 ,用show run
命令查看配置如下:
图4.3 router1所在的端口划分vlan 3)把router2的端口分别划分给vlan24和vlan 8,划分的结果如下图
4.3显示所示:
12
图4.4 router2所在的端口划分vlan
4.3.3 设置快速生成树协议
.1)给每个交换机所在vlan的每个端口设置快速生成树协议,下面给出了一部分交换机的配置,因为配置方法都一样,所以就不一一列举了。sw1所在的vlan 8上设置快速生成树协议,设置如下图所示:
图4.5 sw1的生成树设置
13
2)将router2的各个vlan 所在的端口设置快速生成树协议,设置过程
如图4.5所示:
图4.6router2的生成树设置
4.3.4三层交换机的虚拟以太网设置
1)给三层交换机所在的每个vlan都设置一个虚拟以太网,这是为了实现三层交换机的路由功能。给router1所在的vlan 8,vlan 9,vlan24分别设置虚拟以太网ve 8,ve9,ve24,并都分配相应的ip地址如图4.7所示:
图4.7 router1上的虚拟以太网
14
2)给router2所在的vlan 8和vlan 24 分别设置虚拟以太网ve 8,ve 24. 并都分配相应的ip地址如图4.8所示:
图4.8 router2上的虚拟以太网
4.3.5 DHCP服务器的搭建过程
1)在一台pc机上打开开始程序中得管理工具,按右键点击创建新的作用域,如下图4.9所示,输入为新创建的作用域所取的名字:
15
图4.9 给新建作用域取名
2)设置此DHCP服务器所能分配的ip地址范围,由于网络地址是10.1.80.0,子网掩码为255.255.255.0,所以网络ip地址范围,子网掩码位数如图4.10所示:
图4.10 能分配的ip地址范围
3)添加在ip地址范围中由于各种原因而不能分配给主机ip的ip地址或地址段,在此实验中没有要排除的ip地址,所以直接选择下一步:
16
图4.11要排除的地址或地址段
4)由于本次试验对租约期限没有特殊要求,故选择默认值8天,不用更
改,直接点下一步:
图4.12 租用期限
5)添加客户端使用的路由器的ip地址,即三层交换机的地址如下:
17
图4.13默认网关
6)配置DHCP服务器的ip地址,在本实验中设置是10.1.80.24,
图4.14 DHCP服务器的ip地址
7)DHCP服务器搭建成功后,在DHCP服务器中可以看到新建的作用域,如图4.15所示:
18
图4.15 DHCP服务器搭建成功
4.3.6 打开端口
1)打开网络拓扑中所有设备所使用的所有端口,端口eth 9要使用单独一条命令打开,而其它的端口可以一条命令同时打开多个端口,图4.16给出了部分端口的打开过程,其它端口的打开方式一样。
图4.16 打开端口
4.4 配置内容显示
1)sw1上的生成树协议配置完成后,用show 802 命令可以查看配置,
19
FORWARDING表示端口运行中,DISABLED表示端口被阻塞了。
图4.17 sw1上的生成树显示
2)router2在vlan 8上配置的生成树协议,用show 802 查看,如图4.18
所示:
图4.18 router2在vlan 8的生成树显示
3)router2在vlan 24上配置的生成树协议,用show 802 查看,如图4.19所示:
20
图4.19 router2在vlan 24的生成树显示
4.5 具体测试结果
4.5.1 测试结果中出现的错误
1)在pc1上用ping命令测试与pc2的连通性时,出现下面的结果:
图4.20 pc1 ping pc2显示错误
2)用tracert 命令跟踪数据包传递,发现哪里发生错误。却发现连pc1的网关都过不了,所以要从网关处寻找错误:
21
图4.21 用tracert命令跟踪结果
4.5.2 测试成功
1)测试网关通不过之后,向学姐请教后才知道是我设置网关时,设置了一个一般不用的常作为网络地址的10.1.8.0和10.1.24.0作为网关地址,网关地址改成10.1.8.1和10.1.24.1之后,测试结果如图4.22
图4.22 pc1 ping通pc2
2)用tracert命令跟踪如图4.23所示:
22
图4.23 测试成功
5.心得
这一次网络的课程设计相对于去年的数据结构课程设计来说,要简单一点。
但是要真正的自己设计一个网络拓扑结构,然后亲手去搭建网络,确实就相对于现在的我来说,是一件很困难的事。不过我也不会气馁,就像在这样一次的课程设计过程中,学到很多一样,学习是一个不断积累的过程,不可能一蹴而就。
以前的我觉得自己可能更加偏向于喜欢用c语言编程一类的,觉得那些更能让我找到乐趣和成就感,而有关网络方面是很枯燥的。但随着计算机网络的学习,以及在惠普网络中心的实验,和思科班上第一学期的上课内容,让我渐渐地对网络有了兴趣。作为一名网络工程专业的学生,却对自己的专业知识,却不是很擅长,这让我感到很惭愧。但是我绝对不会就此停下我学习的脚步,我的不擅长只能成为我更加努力学习的动力。在以后的学习生活中,我会好好的额认真学习思科的内容,也会花更多的时间在自学网络上。不管一年后的今天,我走进社会是从事本专业的工作,还是非本专业的工作,但是至少我在网络方面的能力,在面对别人问我大学里学的什么时,我能够骄傲的说,我学的是网络工程专业,能够对得起自己在大学里留下的四年时光。
在这次课程设计中,我也更加懂得了自学能力的重要性,不管是现在还是以后的生活中,学习中,我们都会遇到很多不同的困难,而且并不是每一个困
23
难都是有人会去帮你解决的,更多的我们要靠的是我自己,所以不管在什么时候都要自学,努力的提高自己的能力。虽然自学十分重要,但是在自己弄不懂的情况下,不耻下问也是一个十分不错的办法,也许别人会一语点破自己这个梦中人,那样可以省下纠结的时间,去做更多有意义的事。
大学的时光对于我们大三的学生的来说是转瞬即逝的,就像这一学期,转眼间就过了一样。匆匆溜走的岁月不容我再放纵自己。即将以一个大人的姿态走进社会这所更深层次的学校学习的我,需要学的还有很多。至少现在的我,走进社会,还没有足够的能力去适应它。所以我要学的还有很多,在这剩下的一年里,我要比以前更加努力的去学习自己需要学习的知识。这次的课程设计学到了很多的同时,也让自己感到了自己的的很大的不足之处,对自己专业知识的缺陷,以后的而学习中,我应该更加集中的去学习,不再那么分散,东忙西忙,最后却发现什么也没有收获一样。
这一次的课设还有一个跟以往完全不一样的地方,就是这一次出题目的不是老师,而是班上的同学。由自己选择小老师,然后由小老师带我们做实验。我选择的是跟着孙鹏一起做有关于生成树的课程设计。孙鹏是一个很负责的小老师,这次的课程设计中,从他那里我也学到了很多,很感谢他对我们耐心的辅导。也谢谢陈淑红老师您的认真负责。这一年里,在对我们,不管是上课,还是做实验,还是课程设计中,都让我们无时无刻感觉到您的认真,负责。也在此衷心的感谢在这一次课程设计中那些为我们付出过的每一位老师。
6.参考书籍
[1]谢希仁.计算机网络[M].北京:电子工业出版社,2012年. [2]王宝智.计算机网络工程概论。北京:高等教育出版社,2004年.
24
计算机与通信学院课程设计评分表
课程名称: 生成树协议的研究与实现
项 目 设计方案的合理性与创造性 设计与调试结果 设计说明书的质量 答辩陈述与回答问题情况 课程设计周表现情况 综合成绩
评 价
教师签名:
25
日期:
(注:1.此页附在课程设计报告之后;2.综合成绩按优、良、中、及格和不及格五级评定。)
附录:
三层交换机NetIron CES配置
NetIron CES 2048CX(config)#hostname router1 router1(config)#lag xy static
router1(config-lag-xy)#ports eth 1/9 eth 1/10 router1(config-lag-xy)#primary-port 1/9 router1(config-lag-xy)#deploy router1(config-lag-xy)#exit router1(config)#vlan 9
router1(config-vlan-9)#untagged eth 1/14 router1(config-vlan-9)#router-interface ve 9 router1(config-vlan-9)#int ve 9
router1(config-vif-9)#ip add 10.1.80.1/24
26
router1(config-vlan-9)#vlan 8
router1(config-vlan-8)#router-interface ve 8 router1(config-vlan-8)#int ve 8
router1(config-vif-8)#ip add 10.1.8.1/24 router1(config-vif-8)#vlan 30
router1(config-vlan-24)#untagged eth 1/24 router1(config-vlan-24)#tagged eth 1/9
router1(config-vlan-24)#router-interface ve 24 router1(config-vlan-24)#int ve 24
router1(config-vif-24)#ip add 10.1.24.1/24
router1(config-vif-24)#ip helper-address 10.1.80.24 router1(config-vif-20)#ip helper-address 10.1.80.24
router1(config)#vlan 8
router1(config-vlan-8)#spanning-tree 802
router1(config-vlan-8)#spanning-tree 802 eth 1/9 admin-pt2pt-mac router1(config-vlan-8)#spanning-tree 802 eth 1/24 admin-pt2pt-mac router1(config-vlan-8)#vlan 24
router1(config-vlan-24)#spanning-tree 802
router1(config-vlan-24)#spanning-tree 802 eth 1/12 admin-pt2pt-mac router1(config)#int eth 1/9
router1(config-if-e1000-1/9)#enable
router1(config-if-e1000-1/9)#int eth 1/12 eth 1/14 eth 1/24 router1(config-mif-1/12-1/14,1/24)#enable
NetIron CES 2048CX>en NetIron CES 2048CX#config t
NetIron CES 2048CX(config)#hostname router2 router2(config)#lag xy static
router2(config-lag-xy)#ports eth 1/9 eth 1/10 router2(config-lag-xy)#primary-port 1/9
27
router2(config-lag-xy)#deploy router2(config-lag-xy)#exit
router2(config-vlan-8)#untagged eth 1/11 router2(config-vlan-8)#tagged eth 1/9 router2(config-vlan-8)#router-interface ve 8 router2(config-vif-8)#ip add 10.1.8.2/24 router2(config-vif-8)#vlan 24
router2(config-vlan-24)#tagged eth 1/9 router2(config-vlan-24)#untagged eth 1/8 router2(config-vlan-24)#router-interface ve 24 router2(config-vlan-24)#int ve 24
router2(config-vif-24)#ip add 10.1.24.2 255.255.255.0 router2(config-vif-24)#ip helper-address 10.1.80.24 router2(config-vif-8)#ip helper-address 10.1.80.24
router2(config-vif-24)#vlan 8
router2(config-vlan-8)#spanning-tree 802
router2(config-vlan-8)#spanning-tree 802 eth 1/9 admin-pt2pt-mac router2(config-vlan-8)#spanning-tree 802 eth 1/11 admin-pt2pt-mac router2(config-vlan-8)#vlan 30
router2(config-vlan-24)#spanning-tree 802
router2(config-vlan-24)#spanning-tree 802 eth 1/9 admin-pt2pt-mac router2(config-vlan-24)#spanning-tree 802 eth 1/8 admin-pt2pt-mac
router2(config-vlan-24)#int eth 1/9 router2(config-if-e1000-1/9)#enable
router2(config-if-e1000-1/9)#int eth 1/8 eth 111
router2(config-mif-1/8-1/11)#enable 交换机FWS 624配置 FWS624 Switch>en FWS624 Switch#config t
28
FWS624 Switch(config)#host
FWS624 Switch(config)#hostname sw1 sw1(config)# sw1(config)#vlan8
sw1(config-vlan-8)#untagged eth 0/1/8 eth 0/1/11 eth 0/1/12 sw1(config-vlan-8)#
sw1(config-vlan-8)#spanning-tree 802
sw1(config-vlan-8)#spanning-tree 802 eth 0/1/8 admin-pt2pt-mac sw1(config-vlan-8)#spanning-tree 802 eth 0/1/11 admin-pt2pt-mac sw1(config-vlan-8)#spanning-tree 802 eth 0/1/12 admin-edge-port
FWS624 Switch>en FWS624 Switch#config t FWS624 Switch(config)#
FWS624 Switch(config)#hostname sw2(config)#vlan 24 sw2(config-vlan-24)#untag
sw2(config-vlan-24)#untagged eth 0/1/21 eth 0/1/22 eth 0/1/24 sw2(config-vlan-24)#
sw2(config-vlan-24)#spanning-tree 802
sw2(config-vlan-24)#spanning-tree 802 eth 0/1/21 admin-pt2pt-mac sw2(config-vlan-24)#spanning-tree 802 eth 0/1/22 admin-pt2pt-mac sw2(config-vlan-24)#spanning-tree 802 eth 0/124 admin-edge-port
29
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务