首先来说,冗余与负载分担是两个概念。冗余往往与备份是联系在一起的,单纯有冗余技术并不一定能实现负载分担。而负载分担技术是依赖于冗余的。
概括地来讲,交换环境下的三种技术都有冗余及负载分担功能:STP、Port-channel、HSRP
一、STP的负载分担
1、STP(Spanning-Tree Protocol)
STP协议生来就是为了冗余而存在的,单纯树型的网络无法提供足够的可靠性,由此我们引入了额外的链路,这才出现了环路这样的问题。但单纯是标准的802.1D STP协议并不能实现真正的冗余与负载分担。
STP为IEEE 802.1D标准,它内部只有一棵STP tree,因此必然有一条链路要被blocking,不会转发数据,只有另外一条链路出现问题时,这条被blocking的链路才会接替之前链路所承担的职责,做数据的转发。无论怎样,总会有一条链路处于不被使用的状态,冗余是有了,但是负载分担是不可想象的。
cisco对STP做了改进,它使得每个VLAN都运行一棵stp tree,这样第一条链路可以为vlan 1 2 3服务,对vlan 4 5 6 blocking,第二条链路可以为vlan 4 5 6 forwarding,对vlan 1 2 3关闭,无形中实现了链路的冗余,负载分担。这种技术被称之为PVST+
随着网络的发展,人们发现传统的STP协议无法满足主备快速切换的需求,因为STP协议将端口定义了5种状态,分别为:blocking listening learning

forwarding disabling,想要从blocking切换至forwarding状态,必需要经过50秒的周期,这50秒我们只能被动地去等待。20秒的blocking状态下,如果没有检测到邻居发来的BPDU包,则进入listening,这时要做的是选举Root Bridge、Designate Port、Root Port,15秒后,进入learning,learning状态下可以学习MAC地址,为最后的forwarding做准备,同样是15秒,最后到达转发状态。这样的延时在现代网络环境下是让人极为难以忍受的。

2、RSTP(802.1w)的出现解决了延时的问题,它的收敛速度很快,当然CISCO也针对这种技术推出了自已的RPVST+技术。RSTP在STP基础上额外定义了两种port role(注意这里的概念,端口角色),分别是alternate与backup。另外重新规定了port state(端口状态),分别为discarding、Learning、Forwarding.
 
STP的一大失败之处在于混淆了port role与port state两种概念,在RSTP上,这样的问题不再存在了,port state与port role无关了。alternate port责任是为另一台交换机上的链路作备份,而backup port是为本交换机上的端口作备。
 
RSTP最重要的变化在于对BPDU中type字段的利用上,之前STP只使用了其中的两个位
 
 7  6  5  4  3  2  1  0
TC Proposal Port- role learning forwarding Agreement TCA
 
另外6个位中实现了很多的功能,包括不再需要去等待50秒的时间完成主备切换,直接利用proposal与agreement协商即可,这样大大缩短了收敛时间。
RSTP还定义了两个新的概念:edge port与link type,如果是edge port,表明下面接的只能是主机,环路的存在是不可能的,所以我们可以直接将其从discarding切换到forwarding状态,类似于STP中的port fast技术。而link type定义了这条链路是point-to-point的还是shared。如果有pt-pt环境下,我们就可以做快速的切换了
 
3、MSTP(802.1s)
STP和RSTP都采用了一棵STP tree,负载分担不可实现,而CISCO的PVST+与RPVST+采用了每个VLAN一棵生成树,虽然实现了负载分担,但是会占用非常多的CPU时间。这也正是MSTP(802.1s)产生的原因
 
MSTP可以将多个VLAN的生成树映射为一个实例,即vlan map to a instance,我们不需要那么多的生成树,只需要按照冗余链路的条数来得出需要几棵生成树。
 
如果只有两条链路,并且有1-1000个VLAN,我们可以将1-500定义为instance 1,将501-1000定义到instance 2。只生成两棵树1和2,同样实现了冗余与负载分担。
 
MSTP是基于RSTP的,没有RSTP,MSTP是无法运行的。
 
另:
PVST+ 与 RPVST+ 模式下:交换机可支持128个STP instance
MSTP模式下:交换机可支持65个MST instance,当然每个实例中的VLAN数目是无限的。
二、Ether channel
 
以上说了很多都是关于STP的,下面谈谈ether channel
 
其实channel技术不仅仅是接口的绑定,通常当我们骨干链路带宽不足的时候,可能会想到绑定多条链路,这时候自然会用到ether-channel技术,它把多条物理接口绑定为一个逻辑接口,最多可绑定8个接口,实现1600G的带宽绑定效果。但是实际上数据的传输过程中仍然是通过物理的接口来转发的。[email]cuijian.vip@gmail.com[/email]这就为我们做负载分担又提出了一种方案。我们可以根据源、目的IP地址来做负载分担,也就是一条会话。第一条会话走第1个接口,第2条会话自动切换到第2个物理接口去做转发。。。。。。这样就不会使大量的数据都通过物理接口1来做转发了。
 
ether channel可以通过手动指定,当然也可以动态形成,这就需要提到另外两种技术,一种是思科私有的PAGP,另外一种是IEEE标准的LACP(802.3ad),我们只需要注意他们的协商方式。
接口模式:on、desirable、auto
配置为on时,表示不接受PAGP的动态协商,要完全手工指定,也就是两端必须一致配置为on模式,否则无法绑定。
desirable表示主动协商,如对端为desirable或auto都可形成channel。
auto表示被动协商,如果对端为auto,就无法形成channel,这时必须对端为desirable。
这其实很好理解,但是为什么要注意它,是因为我们在trunk的建立时,也有几种类似的模式,而trunk中的这几种模式非常混乱,无论如何都能动态协商成功,比如on和desirable是可以协商成功的。
LACP的接口模式有PAGE不同,但是意义类似它们分别是:
on、off、passive、active
今天先写到这儿,改天再说HSRP与VRRP
文章引用自:

转载于:https://blog.51cto.com/ciscodocu/52772

交换环境下的冗余及负载分担技术(STP Channel HSRP)相关推荐

  1. 生成树的冗余与负载分担技术

    交换层有三个地方涉及到冗余与负载分担,分别是生成树.EC以太网通道.FHRP网关协议.本文关于生成树相关的实现技术.生成树(包括stp.rstp.mstp)的三层主要功能由低至高分别为:防环收敛.冗余 ...

  2. 车联网环境下自动驾驶的协同感知技术综述

    论文标题:Cooperative Perception Technology of Autonomous Driving in the Internet of Vehicles Environment ...

  3. 华为HCNA路由与交换eNSP实战(2)负载分担和路由备份

    目录 前言 实验拓扑 网络规划 实验目的 配置思路 配置过程 原理总结 前言 负载分担是指去往同一目的网络有多条优先级和开销值一致的路由,类似于武汉到北京有两趟高铁,耗时一样,那么这两条路由我们就都可 ...

  4. 分布式精华问答:分布式环境下如何保持数据一致性的?| 技术头条

    分布式开发的时代实际上早已悄悄地成为了时代的主流,今天,我们就来看看关于分布式的精华问答吧! 1 Q:分布式系统中主要是用到了服务化,消息中间件,数据库拆分,便于横向扩展和维护,但分布式系统中的拆分的 ...

  5. Linux下的几种负载均衡技术小结

    前言 Linux系统的数据包处理能力相当强大,通过Netfilter框架或者策略路由系统,用户可以非常灵活的定义数据包的处理规则.因此在Linux下实现负载均衡自然也是非常简单.笔者在此总结了Linu ...

  6. 复杂交联环境下的测试任务快速开发工具技术概况

    技术要求及设备选型情况 1.综述 凯云通用装备综合测试仪(Kiyun Tester)主机由硬件和软件两部分组成.硬件部分由机壳.主板.显示屏.外部接口组成.机壳采用了全封闭.无风扇的铝合金加固结构,四 ...

  7. linux常见得几种负载均衡,Linux下的几种负载均衡技术小结

    bond是Linux内核自带的多网卡聚合功能.这个功能可以把多个网卡整合成一个虚拟网卡从而同时利用多块网卡传输数据.bond有多种不同的模式用以适应不同的情况.bond主要是从L2链路层考虑的,因此可 ...

  8. Linux环境下的C/C+基础调试技术2——程序控制

    Author:gnuhpc WebSite:blog.csdn.net/gnuhpc 1.让程序停下来的三种模式 断点(breakpoint):让程序在特定的地点停止执行. 观察点(watchpoin ...

  9. HCIE华为面试-BGP负载分担

    思考题 无论是企业面试官还是数据通信HCIE面试官,都有可能问到BGP的负载分担,大家思考个问题,BGP的负载分担有几种方式?下面介绍2种基于下一跳的负载分担. 完整拓扑如下 第一种:基于不同下一跳的 ...

最新文章

  1. android 使用以太网共享4g网络_案例 | 东土科技Aquam系列重新定义列车骨干网络!...
  2. matlab绘图 excel,『在matlab上如何导入excel表格然后画图』excle表格如何使用绘图笔...
  3. 蓝桥杯大赛青少年创意编程 第十一届 省赛 C++组试题 第1题 双面打印
  4. Mac 10.12安装IntelliJ出品的数据库管理工具DataGrip
  5. 配置系列:(事物管理)ssm中applicationContext-transaction.xml的简单配置
  6. 虚拟机ubuntu 网速慢的解决方法
  7. 安装GIT,集成到Powershell中
  8. Mac鼠标增强软件Bettertouchtool
  9. 杨澜给80后女孩子的14个忠告
  10. DBUtil-一款简单好用的数据库操作工具
  11. 利用android studio制作简单的QQ的注册、登录、忘记密码的页面
  12. 遥感水文前景_【充电】学遥感必读的十本专业书
  13. Altium Designer 18安装方法
  14. LTE系统信息 --- MIB、SIB
  15. 【Android】Android 封装 Http 请求工具
  16. LaTex中让页码从正文开始编号
  17. 两套系统同个服务器,同一服务器运行两套workerman程序有什么需要特别修改的吗...
  18. Mysql Order By 与 Group By
  19. python_day10のPython操作 RabbitMQ、Redis、Memcache
  20. 博雅互动android面试题,【博雅互动怎么样?】-看准网

热门文章

  1. 马斯克的星际飞船首次起飞测试成功!起跳150米后平稳着陆,“火星在望”
  2. Pandas可视化综合指南:手把手从零教你绘制数据图表
  3. 使用React Hooks你可能会忽视的作用域问题
  4. daterangepicker引用
  5. JavaScript中的作用域,闭包和上下文
  6. cas协议,以及tomcat搭建cas服务器
  7. Android模拟自定义浏览器和打开另一个Ativity(06)
  8. RHCS集群理论暨 最佳实践
  9. 创建,修改Table格式
  10. 5G NPN 行业专网 — Overview