2017.4.27-morning

本文介绍如何配置快速生成树协议(RSTP)以避免校园网络中的环路问题,包括实验背景、技术原理及具体步骤。通过配置RSTP,确保网络在出现故障时能快速切换到备用链路。

实验目标

l 理解生成树协议工作原理;

掌握快速生成树协议RSTP基本配置方法;

实验背景

学校为了开展计算机教学和网络办公,建立的一个计算机教室和一个校办公区,这两处的计算机网络通过两台交换机互联组成内部校园网,为了提高网络的可靠性,作为网络管理员,你要用2条链路将交换机互连,现要求在交换机上做适当配置,使网络避免环路。

技术原理

生成树协议(spanning-tree,作用是在交换网络中提供冗余备份链路,并且解决交换网络中的环路问题;

生成树协议是利用SPA算法,在存在交换机环路的网络中生成一个没有环路的属性网络,运用该算法将交换网络的冗余备份链路从逻辑上断开,当主链路出现故障时,能够自动的切换到备份链路,保证数据的正常转发。

生成树协议版本:STPRSTP(快速生成树协议)、MSTP(多生成树协议)。

生成树协议的特点收敛时间长。从主要链路出现故障到切换至备份链路需要50秒时间。

快速生成树在生成树协议的基础上增加了两种端口角色,替换端口或备份端口,分别作为根端口和指定端口。当根端口或指定端口出现故障时,冗余端口不需要经过50秒的收敛时间,可以直接切换到替换端口或备份端口,从而实现RSTP协议小于1秒的快速收敛。

实现功能 

使网络在有冗余链路的情况下避免环路的产生,避免广播风暴等。 

实验步骤

新建packet tracer拓扑图

默认情况下STP协议是启用的。通过两台交换机之间传送BPDU协议数据单元。选出跟交换机、根端口等,以便确定端口的转发状态。图中标记为黄色的端口处于block堵塞状态。

设置RSTP

查看交换机show spanning-tree状态,了解跟交换机和根端口情况。

通过更改交换机生成树的优先级spanning-tree vlan 10 priority 4096可以变化跟交换机的角色。

测试。当主链路处于down状态时候,能够自动的切换到备份链路,保证数据的正常转发。

实验设备

Switch_2960 2台;PC 2台;直连线(各设备互联)

 

按照拓扑图连接网络时注意,两台交换机都配置快速生成树协议后,再将两台交换机连接起
来。如果先连线再配置会造成广播风暴,影响交换机的正常工作。 

PC1

IP: 192.168.1.2

Submask: 255.255.255.0

Gateway: 192.168.1.1

PC2

IP: 192.168.1.3

Submask: 255.255.255.0

Gateway: 192.168.1.1

 

PC1 ping  PC2  reply

 

S1

Switch>en

Switch#show spanning-tree //查看生成树的配置信息 

StpVersion : RSTP                               !生成树协议的版本 
SysStpStatus : Enabled                     !生成树协议运行状态,disable 为关闭状态 

Priority : 32768                                  !查看交换机的优先级 

RootCost : 200000                              !交换机到达根交换机的开销 
RootPort : Fa0/1                                  !查看交换机上的根端口 

或者

RootCost: 0                             !交换机到达根交换机的开销,代表本交换机为根 
RootPort: 0                             !查看交换机上的根端口,代表本交换机为根 
Switch#show spanning-tree interface fastEthernet 0/1 
                                            !显示Switch 端口fastethernet 0/1 的状态 

PortState : forwarding 
              !SwitchB 的端口fastthernet 0/1 处于转发(forwarding)状态

PortRole : rootPort                           !查看端口角色为根端口 

Switch#show spanning-tree interface fastEthernet 0/2 
                                            !显示Switch 端口fastethernet 0/2的状态 

PortState : discarding     
!SwitchB的端口fastthernet 0/2处于阻塞(discarding)状态 

Switch#conf t

Switch(config)#int fa 0/10

Switch(config-if)#switchport access vlan 10

Switch(config-if)#exit

Switch(config)#int rang fa 0/1 - 2

Switch(config-range)#switchport mode trunk

Switch(config-range)#exit

Switch(config)#spanning-tree mode rapid-pvst  // ! 指定生成树协议的类型为RSTP 

Switch(config)#end

 

S2

Switch>en

Switch#conf t

Switch(config)#int fa 0/10

Switch(config-if)#switchport access vlan 10

Switch(config-if)#exit

Switch(config)#int range fa 0/1 - 2

Switch(config-range)#switchport mode turnk

Switch(config-range)#exit

Switch(config)#spanning-tree mode rapid-pvst

Switch(config)#end

Switch#show spanning-tree

 

PC1

Ipconfig /all

ping -t 192.168.1.3  reply

 

S2

Switch>en

Switch#conf t

Switch(config)#int fa 0/1

Switch(config-if)#shutdown  //关闭该端口

(查看PC1的ping情况是否正常)

PC1

ping -t 192.168.1.3  reply

检查哪一个是根交换机,哪一个是根端口,哪些端口是阻塞的。

转载于:https://www.cnblogs.com/bgd140206202/p/6772718.html

df head(df) sleep_hours1 <- df$When.have.you.usually.gone.to.bed.in.the.past.month. sleep_hours2<-df$What.time.have.you.usually.gotten.up.in.the.morning.in.the.past.month. fall_asleep_time <- df$How.long.has.it.taken.you.to.fall.asleep.each.night.in.the.past.month. var1<-df$Cannot.get.to.sleep.within.30.minutes var2<-df$Wake.up.in.the.middle.of.the.night.or.early.morning var3<-df$Have.to.get.up.to.use.the.bathroom var4<-df$Cough.or.snore.loudly var5<-df$Feel.too.cold var6<-df$Feel.too.hot var7<-df$Have.bad.dreams var8<-df$Have.pain disturbance_vars <- cbind(var1, var2, var3, var4, var5, var6, var7, var8) colnames(disturbance_vars) <- c("Cannot get to sleep within 30 minutes", "Wake up in the middle of the night or early morning", "Have to get up to use the bathroom", "Cough or snore loudly", "Feel too cold", "Feel too hot", "Have bad dreams", "Have pain") disturbance_vars gender <- as.factor(df[["Gender"]]) gender X <- data.frame( fall_asleep_time, sleep_hours1, sleep_hours2, disturbance_vars, gender ) s1<-df$You.have.to.submit.an.assignment.in.less.than.a.day s2<-df$A.week.before.exams s3<-df$Asking.for.an.extra.ketchup.packet.at.a.restaurant s4<-df$Meeting.a.new.person s5<-df$Asking.for.help s6<-df$Confronting.someone s7<-df$Doing.something.without.help stress_cols <- cbind(s1,s2,s3,s4,s5,s6,s7) colnames(stress_cols) <- c("You have to submit an assignment in less than a day", "A week before exams", "Asking for an extra ketchup packet at a restaurant", "Meeting a new person", "Asking for help", "Confronting someone", "Doing something without help") stress_scores <- rowMeans(stress_cols) Y <- ifelse(stress_scores > median(stress_scores), 1, 0) Y model <- glm( Y ~., data = X, family = binomial(link = "logit") ) summary(model) step_model <- step( model, direction = "both", trace = 1 ) summary(step_model) 这是我的数据,然后我每次都会出现[.data.frame`(model_data, , rn, drop = FALSE):这个错误
最新发布
06-05
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值