Campus园区网的规划(Hub and Spoken Campus Desion):层次化
中小型:L2SW+Eth-Trunk+STP+VRRP+L3Route(underlay)+NAT+VPN+WALN
大型:L2SW+Eth-Trunk+istack/CSS+xSTP+L3Route(overlay)+NAT+VPN+WLAN
LAN(Local Area Network):指的是一个局部的网络,用以太网介质互联,通过以太网的协议实现在同一个管理机构共同所管理的一组网络设备和网络协议的集合,实现数据互联互通,可以认为一个企业,一个学校,一个政府办公机构,一个LSP等等,以太网时局域网的标准
园区网(Campus Network),从业务角度的定义:企业园区内部的计算机网络
VLAN(Virtual LAN):是一个技术,在Layer2 SW上实现逻辑分割广播域的
MAN(Metropolitan Area Network):城域网
WAN(Wide Area Network):广域网
AS:自治系统
AS指的是在同一组织管理下使用统一选路策略的设备集合:不同AS通过AS号区分,AS号存在16bit,32bit两种表示方式,IANA负责AS号的分发;
IGP(Inner Gateway Protocol):内部网关路由协议,计算和产生路由实现网络间可达
EGP(External Gateway Protocol):外部网关路由协议,通告和控制路由在AS之间传递(IGP协议在AS内计算和产生的路由通过EGP协议在AS之间通告和控制)
combo:复合口
网口具备自适应功能:
1.带宽的自适应 1000M/100M/10M
2.双工模式 全双工/半双工/单工
3.双绞线 同交异直
集线器:物理层,本质负责连通
1.信息放大
2.全泛洪/全向广播
3.集线器(HUB)只能工作在半双工,容易造成冲突,数据在传递的过程中不完整(冲突域)
一个广播域=一个冲突域
CSMA/CD 载波侦听多路访问
1.先听后发
2.边听边发
3.冲突停发
4.随即延迟后重发
广播:指的是除了接收接口以外,给其他所有接口发一份的过程
二层交换机:二层设备,数据交换,封装添加二层信息
MAC地址表:本质是告诉交换机什么接口,连接了什么终端,在什么广播域
能够完成一次完整的通讯,设备(2层/3层)都必须完成两个层面
1.控制层面--构表的过程(L2构建MAC地址表/L3构建单播路由表)
构建MAC地址表:Dynamic/Static
1.接收接口
2.接受接口所对应的源MAC,交换机所连接的终端的MAC
3.接收接口所属的VLAN 逻辑分割广播域(一个广播域=一个冲突域=一个VLAN)
2.数据层面--数据转发的过程,从源基于控制层面的表项去往目的地
掩码最长匹配原则 模糊匹配 递归寻址
在单播场景中,一定是先有控制层面,后有数据层面
控制平面完成系统的协议处理,业务处理,路由运算,转发控制,业务调度,流量统计,系统安全等功能
管理平面完成系统的运行状态监控,环境监控,日志和告警信息处理,系统加载,系统升级等功能
配置网关的本质是:在本质产生一条 0.0.0.0/0 下一跳指向网关地址
路由的来源是静态路由,路由都是管理员手动书写的,直接写进路由表的,可以认为没有控制层面构表的过程
路由的来源换成协议协商去学习的,动态学习控制层面表项的过程。控制层面 建立的过程从目的源源不断流向源的过程;控制层面表项建立完毕,数据层面是源到目的的实现跨网段的通讯;所以说控制层面和数据层面方向是相反的,控制层面是源源不断流向源的过程,数据层面是源源不断流向目的的过程
防火墙:流经NGFW所有的数据默认情况是拒绝的,做检测,流经防火墙的接口,逻辑分割区域,缺省的区域;
1.Local 本地 100
2. Trust 信任 85 内网主机
3. DMZ 军事化管理 50 服务器
4. Untrust 5 外网
5. Name-define 自定义
整个园区逻辑分割成多个区域
所有的流量:穿越防火墙,流向防火墙本地
Inbound--优先级低的区域流向优先级高的区域
Outbound--优先级高的区域流量优先级低的区域
NGFW都必须在本地定义安全策略(Securtiy-policy),产生状态会话检测表项(Firewall Sesiontable),对流量进行检测,permit允许,deny拒绝
HUAWEI的设备组件:
8090平台:
企业网AR系列路由器,SX7系列交换机
数据中心NE系列路由器,CEx8系列交换机
ME60 BRAS网关设备,PPPoE拨号设备
1.设备构成
机框:
1U就是4.445cm,2U则是1U的两倍为8.89cm
板卡:display device
MPU(Main Process Unit)/SRU(Switch Route Unit)主控板 2块(1:1内置CPU,内存)
SFU(Switch Funcation Unit)交换网板 4块 板间与板间的转发(3+1)LPU和MPU之间有两种形态(单独或者含在主控板)
LPU业务板 最多16块,接业务线缆,光口/电口
功能板 哑板/不接线的 FW AC
时钟板(CLK)形态部分含在MPU,部分单独
电源(PWR)直流(DC)交流(AC)
风扇(FAN)
1+1 备份 两块板同时进行,业务负载分担,当一块板出现问题时,另一块板也可以承载所有业务运行 也有2+1备份,3+1备份等
1:1备份 一块板承载业务(主用),另一块板待机(可以备份主用设备状态)当主用故障后,接替工作,一般主控板采用才方式工作
网络设备从逻辑上可以分为以下三个平面:数据平面,控制平面和监控平面
ICT行业标准:IETE IEEE ISO ......
标准的架构,标准协议,通过RFC NO.定义和说明
业务报文转发处理流程:业务报文从接口进入上行接口板处理后,通过框式交换机内部总线交由交换网板,交换网板交由下行接口板处理之后从接口发出去
业务报文--光电信号接收-报文解析-查表转发--切片--交换网板--重组--获取封装信息-出口处理--光电信号发送
IP路由基础
控制层面:就是构建IPV4-UNICAST Routing-table的过程,源源不断靠近源的过程,控制层面必须确保有来有回的完整
数据层面:拿着控制层面学习到的路由条目,做寻址转发
路由寻址转发遵循三个原则:
1.掩码最长匹配原则,约精确越先转发
2.递归寻址(hop-by-hop),逐跳寻址,面向无连接的查找路由的过程
3.模糊匹配:确定前缀究竟是给谁的,做一个逻辑与运算(0和所有与出的结果都是0)
网关是相对的概念
路由寻址转发的过程可以看作是一个面向无连接的过程,只关注目的的过程
如果路由寻址转发的过程中,链路介质是以太网(LAN),必须完成ARP映射,存在广播的行为的,实现网络间通信的时候,定义的路由如果只描述出接口,必须开启ARP代理功能;
链路介质时广域网(WAN口),本质时点到点链路,不存在广播的行为,定义路由的时候可以只描述出接口。建议:定义路由的时候要完整,出接口和下一跳地址均要定义
路由器收到一个IP报文时,路由器根据该IP报文的目的地址匹配路由条目(或路由表项)
若有匹配的路由条目,则根据该条目中的出接口或下一跳等信息进行报文转发
若无匹配的路由条目,则路由器没有相关路由信息用于指导报文转发,此时会丢弃该报文
不论时IP转发还是标签转发,控制层面和数据层面概念,以及上游和下游的概念均是完全一样的,标签转发始终是面向连接的,先要完成控制层面的构表的过程,始终都是下游为上游分标签
下游INLABEL = 上游OUTLABLE
INLABLE是自己为上游分配的;OUTLABLE都是下游(别人)为自己分的
只有当设备收到下游为自己分配的标签,才会为自己的上游分配标签
具有路由功能的网络设备都维护两种重要的数据表:
一是路由表RIB(Routing Information Base,路由信息库)
二是转发表FIB
获悉路由的方式
直连路由(Direct):半自动路由,接口配置合理的IP地址 unnumber借地址
非直连路由(Non-direct)
静态路由(Staic)
动态路由选择协议:RIP OSPF ISIS EIGRP BGP
1.IGP/EGP--除了BGP以外,其余协议均是IGP协议
2.Classless/Classful--除了RIPv1,其余协议均是无类 CIDR/VLSM
3.算法LS/DV-- DV:RIP LS:OSPF ISIS
迭代路由:解决下一跳不规则的问题
路由重分发(Redistribute)/路由引入(import-route):将一种协议的路由引入到另外一种协议
将协议A引入到协议B=在协议B的路由进程中,引入协议A的路由条目
路由引入:将路由信息从一种路由协议发布到另一种路由协议的操作
通过路由引入,可以实现路由信息在不同路由协议间的传递
执行路由引入时,还可以部署路由控制,从而实现对业务流量的灵活把控
Preference:去往相同的目的前缀(Destination/mask)的路由,通过不同路由协议获悉,衡量可靠程度,越小越优;0-255
Cost:度量值/开销,在动态路由选择协议中,去往相同的目的前缀,可以通过不同路径获悉,衡量路由远近,开销越小,路径越优;开销取决于动态路由选择协议算法:DV-- 1 HOP-1 L3 Device、 LS-- bandwidth,分段累加,始终控制层面完成开销值,控制层面入栈接口的带宽累加之和:静态路由没有开销的概念,原因是没有控制层面的概念,永远是0
开销细分的概念:Cost指的是路由协议内本身计算路由的开销值,seed metric(种子度量值)指的是做路由引入后引入的路由本身所携带的开销值,通常等于1;
在LS中有一个Cost-style,区分外部路由的开销值的计算方式,例如在OSPF中,type1,开销值计算的时候外部(seed metric)+内部(cost);type2,开销值计算时候只计算外部(seed metric)
在ospf中,默认的行为是cost-style type2
在开销值影响选路作比较的时候,type1由于type2;如果都是type1比较开销值大小,如果都是type2先比较外部开销(种子度量值),再比较内部开销
双电双向路由引入,拓扑设计不当,很容易出现路由选择环路和次优的风险
掩码、反掩码、通配符的作用
掩码(mask):1表示网络位,0表示主机位。1永远在左边,零永远在右边。1和0永远不交叉。使用场景:配置IP地址和路由。
反掩码(wildcard-mask):1表示随机,0表示精确匹配。0永远在左边,1永远在右边。1和0永远不交叉。使用场景:OSPF进行network进行宣告。
通配符(wildcard):1表示随机,0表示精确匹配。0和1的位置没有任何固定限制。可以连续也可以交叉。使用场景:配置ACL定义IP地址范围。
Route-policy路由策略,对设备进入路由条目做控制(过滤,属性的修改),规则如下:
Route-policy不能单独使用,必须要和其他工具匹配使用,如import-roiute,network通告
使用步骤如下:
1.抓取感兴趣的路由(必须抓得住,必须是permit)
2.创建Route-policy,定义动作permit(允许)、deny(拒绝),定义步长,逻辑或的关系
if-math匹配感兴趣的路由,可以匹配不同的条件,逻辑与的关系
apply 修改属性
3.在工具中调用
解决环路的方法:
1、修改开销 #控制层面入栈接口
2、修改Cost-stype
3、路由过滤
按工作区域分类
IGP(Interior Gateway Protocols,内部网关协议):RIP/ISPF/ISIS
EGP(Exterior Gateway Protocols,外部网关协议):BGP
按工作机制及算法分类
DV(Distance Vector Routing Protocols,距离矢量路由协议):RIP--基于传闻式的路由查找(可靠性差,容易环路)
LS(Link-State Routing Protocols,链路状态路由协议):OSPF/ISIS--基于拓扑式路由查找(可靠性高,一定程度上避免环路产生)
undo summary #自动汇总
Split Horizon 水平分割
Poison Reverse 毒性抑制,默认关闭
OSPF优点
基于SPF算法,以“累计链路开销”作为选路参考值
采用组播形式收发部分协议报文
支持区域划分
支持对等价路由进行负载分担
支持报文认证
Router ID
用于在自治系统中唯一标识一台运行OSPF的路由器,是一个32位无符号整数
选举规则:
手动配置OSPF路由器的Router ID
如果没有手动配置Router ID,则路由器使用Loopback接口中最大的IP地址作为Router ID
如果没有配置Loopback接口,则路由器使用物理接口中最大的IP地址作为Router ID
OSPF Area
OSPF Area用于标识一个OSPF的区域
区域是从逻辑上将设备划分为不同的组,每个组用区域号(Area ID)来标识
OSPF的区域ID是一个32bit的非负整数,按点分十进制的形式(与IPv4地址的格式一样)呈现。
修改该接口的网络类型:在接口视图中使用ospf network {p2p | p2mp | broadcast | nbma}
OSPF 度量值
OSPF不同接口因其带宽不同,有不同的Cost
OSPF“累计cost”为开销值,也就是流量从源网络到目的网络所经过所有路由器的出接口的cost总和
OSPF接口敏感型协议,协议的工作机制取决于 接口所对应的网络类型(Network-type)
OSPF三大表项
1、接口表 display ospf int GE/all/verbose
2、邻居表 display ospf peer brief
3、拓扑表 display ospf lsdb(LSA维护周期更新)
三个唯一性:Type Linkstate-ID AdvRtr
三个新旧程度:Sequence NO. Checksum Age
MTU值
interface MTU = 0,理论上在DBD报文发送的时候,如果两端接口MTU值不匹配,会影响邻居关系的建立,并且会一直卡在Ex-start;华为在DBD报文中接口MTU值填充为0,代表不协商MTU
Router Priority: DR优先级。默认为1.如果设置为0,则路由器不能参与DR或BDR选举
邻居状态
ExStart:邻居状态变成此状态以后,路由器开始向邻居发送DD报文,在此状态下发送的DD报文不包含链路状态描述
Exchange:在此状态下,路由器与邻居之间相互发送包含链路状态消息摘要的DD报文
Loading:在此状态下,路由器与邻居之间相互发送LSR报文、LSU报文、LSACK报文
DD报文部分字段解释
I:当发送连续多个DD报文时,如果这是第一个DD报文,则置为1,否则置为0
M:当发送连续多个DD报文时,如果这是最后一个DD报文,则置为0.否则置为1,表示后面还有其他的DD报文
MS:当两台OSPF路由器交换DD报文时,首先需要确定双方的主从关系,Router ID大的一方会成为Master,当值为1时表示发送方为Master
DD sequence number:DD报文序列号,主从双方利用序列号来保证DD报文传输的可靠性和完整性
DR与BDR的作用
DR(Designated Router,指定路由器)负责在MA网络建立和维护邻接关系并负责LSA的同步
DR与其他所有路由器形成邻接关系并交换链路状态信息,其他路由器之间不直接交换链路状态信息
为了规避单点故障风险,通过选举BDR(Backup Designated Router,备份指定路由器),在DR失效时快速接管DR的工作
DR与BDR的选举规则
DR与BDR的选举是非抢占式的
DR/BDR的选举是基于接口的
接口的DR优先级越大越优先,接口的DR优先级相等时,Router ID越打越优先
DR/BDR有且只有一个,DRouther可有可无,BDR可有可无
tips:建议从快速收敛的角度考虑,将MA_Link的网络类型调成P2P
要求:DR,BDR,DRouther的角色要按照上图的要求做调整,如何实现
1、调整优先级MA_Link所有接口全部shutdown;DR/BDR选举是由先后顺序的,即使邻居关系没有建立,照样完成DR/BDR的选举
2、接口undo shutdiown注意顺序,先起DR,后起BDR,再起DRouther dr-priority=0,不参与DR/BDR的选举的
在MA Network-type中,224.0.0.5和224.0.0.6发送的场景:DR/BDR相关的都是224.0.0.6的发送的
224.0.0.6发送的场景:
1、DRouther以224.0.0.6回复DR和BDR的LSU--被动发送
2、DRouther主动更新LSU 以224.0.0.6发送,发给DR和BDR,DR会以224.0.0.5 LSU更新其他的DRouther和BDR,BDR以224.0.0.5回复LSAck,DRouther以224.0.0.6回复LSAck给DR.--主动发送
OSPF支持多区域的部署的,多区域部署的好处:
拓扑设计健壮性:多区域有且只有一个骨干,非骨干必须要和骨干区域挂靠
逻辑区域是基于接口去划分的,特点是:
1、 减少路由表中的路由条目数量,加快收敛
2、拓扑变化,只会影响一个区域,稳定性
3、特定LSA只会在一个区域内传递,减少其他区域的LSDB中的LSA的数量
OSPF区域内计算拓扑的过程,通过定义不同的LSA(Link-Start Advertisement)用来描述拓扑和路由的,为了满足多变的园区网设计承载OSPF协议收敛路由更加高效,通过划分不同区域,在每一个区域内部计算LSDB表,通过定义不同的LSA(11种,OSPFv2用到了LSA1\LSA2\LSA3\LSA4\LSA5\LSA7)用来构建LSDB;每一个区域内部所描述的LSA完全一致的状态称为LSDB收敛,只有LSDB收敛了,才能执行SPF算法;
广播类型
当链路层协议是Ethernet、FDDI时,缺省情况下,OSPF认为网络类型是Broadcast。在该类型的网络中:
通常以组播形式发送Hello报文长LSU报文和LSAck报文。其中224.0.0.5的组播地址为OSPF设备的预留IP组播地址;224.0.0.6的组播地址为OSPF DR/BDR的预留IP组播地址。
以单播形式发送DD报文和LSR报文。
NBMA类型
当链路层协议是帧中继、X.25时,缺省情况下,OSPF认为网络类型是NBMA.
在该类型的网络中,以单播形式发送协议报文(Hello报文、DD报文、LSR报文、LSU报文、LSAck报文)。
点到多点P2MP类型
没有一种链路层协议会被缺省的认为是Point-to-Multipoint类型。点到多点必须是由其他的网络类型强制更改的。常用做法是将非全连通的NBMA改为点到多点的网络。
在该类型的网络中:
以组播形式(224.0.0.5)发送Hello报文。
以单播形式发送其他协议报文(DD报文、LSR报文、LSU报文LSAck报文)。
点到点P2P类型
当链路层协议是PPP、HDLC和LAPB时,缺省情况下,OSPF认为网络
类型是P2P。
在该类型的网络中,以组播形式(224.0.0.5)发送协议报文(Helo报
文、DD报文、LSR报文、LSU报文、LSAck报文)。
如何研究LSA在osPF中构建拓扑的过程
1、由谁产生
2、传播范围 传递的过程中是否有变化
3、作用
如何描述一条完整的 LSA,一个 LSA 完整的构成:
三个唯一性,三个新旧程度构成;三个唯一性唯一的确定一条 LSA,三个新旧程度描述一个LSA的新旧;
OSPF 协议计算 LSDB,基于区域去计算的,一个区域内的所有设备的LSDB全一致,标识的是LSDB收敛的状态;区城问只传递路由;域外也只传递路由信息;
三个唯一性:Type,Link-start ID,ADVrouter
三个新旧程度:Sequence NO.,Checksum,Age
OSPFv2 LSA Type 常用的有:
LSA1: display ospf lsdb routere
LSA2: display ospf lsdb network
LSA3: display ospf lsdb summary
LSA4: display ospf lsd. asbr
LSA5: display ospf lsdb ase
LSA7: display ospf lsdb nssat
dis ospf lsdb router self-originate查看自己产生的 LSA1
dis ospf lsdb router originate-router 0.0.0.3 查看的是对应的 ADVrouter 所产生的 LSA1
描述 LSA 新旧,如何去看?
Sequence NO:LSA 每周期更新一次,Sequence NO.会在原有的基础上加 1,采用的正计时的思想;采用线性和环形极限思想的结合;SequenceNO.是从0x80000001(负)-0-0x7FFFFFFF(正);每 1800s 周期更新一次,数值越大越新;
Checksum:LSA校验和字段,校验 LSA新旧,越大越新;
Age:LSA 老化时间,一条 LSA 周期更新在 LSDB 保活,正计时,0s-1800s-3600s;每 1800s周期更新一次,越小越新;
结论:SCA 大大小
Type:
Stub:路由信息
P2P:拓扑信息
Transit:DR 拓扑信息
Tips:
OSPF支持多区域的部署的,多区域部署的好处:
拓扑设计健壮性:多区域有且只有一个骨干,非骨干必须要和骨干区域挂靠逻辑区域是基于接口去划分的,特点是:
1.减少路由表中的路由条目数量,加快收敛
2.拓扑变化,只会影响一个区域,稳定性
3.特定LSA只会在一个区域内传递,减少其他区域的LSDB中的LSA的数量
OSPF区域内计算拓扑的过程,通过定义不同的LSA(Link-State Advertisement)用来描述拓
扑和路由的,为了满足多变的园区网设计承载OSPF协议收敛路由更加高效,通过划分不同区
域,在每一个区域内部计算LSDB表,通过定义不同的LSA(11种,OSPFv2用到了
LSA1,LSA2,LSA3,LSA4,LSA5,LSA7)用来构建LSDB;每一个区域内部所描述的LSA完全一致
的状态称为LSDB收敛,只有LSDB收敛了,才能执行SPF算法;
LSA中的Link counters:
TransNet--描述的是连接DR的情况
P2P--描述的是拓扑连接情况
StubNet--描述的是路由的情况
LSA1 结论:
由谁产生:LSA1RouterLSA运行OSPF路由器均会产生一条LSA14
作用:描述自己运行 OSPF的路由信息和拓扑信息
范围:只能在区域内传递
LSA2 结论:
由谁产生:DR产生,区域内有多少个DR,就会产生多少个LSA2,就代表有多少个MANetwork-type Link作用:描述 MA Network-type Link 的拓扑和路由<范围:只能在区域内传递
LSA的基本概念
LSA是OSPF进行路由计算的关键依据。
OSPF的LSU报文可以携带多种不同类型的LSA
各种类型的LSA拥有相同的报文头部。
重要字段解释
LS Age(链路状态老化时间):此字段表示LSA已经生存的时间,单位是秒。
options(可选项):每一个bit都对应了OSPF所支持的某种特性。
LsType(链路状态类型):指示本LSA的类型。
Link state lD(链路状态ID):不同的LSA,对该字段的定义不同。
Advertising Router(通告路由器):产生该LSA的路由器的RouterID。
Ls Sequence Number(链路状态序列号):当LSA每次有新的实例产生时,序列号就会增加。
Ls Checksum(校验和):用于保证数据的完整性和准确性,Length:是一个包含LSA头部在内的LSA的总长度值。
链路状态类型、链路状态ID、通告路由器三元组唯一地标识了一个LSA。链路状态老化时间、链路状态序列号、校验和用于判断LSA的新旧
常见LSA的类型
1、路由器LSA(Router LSA):每个设备都会产生,描述了设备的链路状态和开销,该LSA只能在接口所属的区域内泛洪
2、网络LSA(Network LSA):由DR产生,描述该DR所接入的MA网络中所有与之形成邻接关系的路由器,以及DR自己。该LSA只能在接口所属区域内泛洪
3、网络汇总LSA(Network Summary LSA):由ABR产生,描述区域内某个网段的路由,该类LSA主要用于区域间路由的传递
4、ASBR汇总LSA(ASBR Summary LSA):由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。
5、AS外部LSA(AS External LSA):由ASBR产生,用于描述到达OSPF域外的路由
7、非完全末梢区域LSA(NSSA LSA):由ASBR产生,用于描述到达0SPF域外的路由。NSSALSA与AS外部LSA功能类似,但是泛洪范围不同。NSSALSA只能在始发的NSSA内泛洪,并且不能直接进入Area0。NSSA的ABR会将7类LSA转换成5类LSA注入到Area0
Router LSA详解
Router LSA(1类LSA):每台0SPF路由器都会产生。它描述了该路由器直连接口的信息。
Router LsA只能在所属的区域内泛洪。
V(Virtual Link):如果产生此LSA的路由器是虚连接的端点则置为1。
E(External):如果产生此LSA的路由器是ASBR,则置为1
B(Border ):如果产生此LSA的路由器是ABR,则置为1。。
links:LSA中的Link(链路)数量。Router LSA使用Link来承载路由器直连接口的信息。
E(External)--E位置1,代表有能力产生LSA5,有能力做外部路由引》NP(NSSA)--N位置1,代表有能力产生LSA7,NSSA区域中会产生
E NP
常规 1 0
Stub 0 0
NSSA 0 1
V--虚链路,多区域设计,骨干区域被分割,被远离,没有,都需要VL弥补
E--ASBR E位置1
B--ABR B位置1
如果有Virtual_Link,通过LSA1 Link counter描述拓扑连接的情况,
总结:
OSPF根据LSDB计算路由表,LSDB中可能存在多种类型的LSA,并且所有的LSA有相同的报文头部格式
同一区域的OSPF路由器拥有完全一致的LSDB,在只有一个区域的情况下,区域内部主要存在两种类型的LSA,即Router-LSA和Network-LSA
每台路由器都会产生Router-LSA,描述了路由器的直连接口信息
在MA网络中,DR会产生Network-LSA来描述接入该MA网络的所有路由器的Router-ID(其中包括DR自身),以及这个网络的掩码。
有几个区域就有几个LSDB数据库
四大路由类型:
DR : 指定一个路由器;
BDR : 指一个备份指定路由器;
ABR : ABR是位于一个或多个OSPF区域边界上、将这些区域连接到主干网络的路由器,同时是OSPF主干和相连区域的成员;
ASBR :是OSPF域外部的通信量进入OSPF域的网关路由器,也就是说,ASBR路由器是用来把其他路由选择协议学习到的路由通过路由选择重分配的方式注入到OSPF域的路由器。一个ASBR路由器可以是位于OSPF域的自治系统内部的任何路由器,他可以是一台内部路由器或者ABR路由器。
域间路由通过ABR产生LSA3在区域间传递:
ABR定义:本质LSU中LSA1 Flag B=1,代表ABR,一定具备传递域间路由能力的ABR
1、一段属于AREA0,一段属于其他区域,并且必须和AREA0及其他区域至少有一个邻接FULL关系
2、有能力将LSA1.LSA2.转换成LSA3在区域间传递路由
3、有能力将LSA3转成LSA3在区域间传递路由
LSA3的选路问题:优选从骨干区域学习到的
OSPF LSA3 域间路由汇总:只能在LSA1,2转LSA3的ABR做汇总,同时必须在明细路由的始发区域做
OSPF多区域设计:
1、有且只有一个AREA0
2、其他AREA必须和AREA0挂靠
3、所有非骨干区域的流量互访必须经过骨干区域
畸形拓扑
1、普通区域被分割
AREA1-AREA0-AREA1
AREA1之间可以相互学习到路由,可以用GRE弥补
说明:
VLink是一条属于AREA0的链路,是用于弥补骨干区域的,非骨干区域不能用Vlink弥补
GRE Tunnel可以适用于任何场景,但设计不善容易造成环路和次优路径(尤其是和OSPF混合的场景),且GRE Tunnel具备承载数据的能力,使区域设计复杂,同时,GRE因封装解封装会导致额外的开销,加重边界路由器的负荷
Vlink
是一种临时手段,解决分割AREA0,远离AREA0,没有AREA0的问题场景
Vlink是一条属于AREA0的链路,配置在两个ABR之间,以单播的方式建立邻居,ABR之间的区域叫做透传区域,透传区域不能是特殊区域
VLink应用场景:
1、连接断开AREA0,没有AREA0,分割AREA0
AREA0-AREA1-AREA2
AREA1-AREA2-AREA3
AREA0-AREA1-AREA0
2、解决次优问题及增加骨干区域的可靠性
Virtual-Link 本质是一条属于Area0的链路
OSPF的认证问题
认证字段填充的位置:OSPF Packet 8 Header 中的 Auth Type + Auth Date
Type
接口级认证
区域级认证
(接口级>进程级)
虚链路认证本质是属于BACKBONE AREA的认证
Data:不认证/明文认证(Simple)/密文认证(Ciplier)/Keychain(密钥链)
Tips:
虚链路做了认证但是BACKBONE没有做认证,OSPF计算是正常的
BACKBONE做了认证,虚链路没有做认证,OSPF计算是不正常的
总结:
OSPF引入了多区域的概念,使得该协议能够支持更大规模的组网
OSPF使用3类LSA来描述区域间的路由信息
为了避免出现区域间路由环路,OSPF设计了多个规则
OSPF Virtual Link是一种虚拟的,逻辑的链路,被部署在两台OSPF路由器之间,它穿越某个非骨干区域,用于实现另一个非骨干区域与Area0的连接。Vlirtual Link应该始终作为一种临时的技术手段来解决非骨干区域没有与Area0直接相连的情况
常规非骨干区域被分割,通过虚拟专线(GRE TUNNEL)合并
外部路由计算
网络中存在部分链路未开启OSPF协议如:
路由器连接外部网络使用静态路由或者BGP协议
服务器直连的链路未开启OSPF协议
ASBR(AS Boundary Router):自治系统边界路由器,只要一台OSPF设备引入了外部路由,它就成为了ASBR
ASBR将外部路由信息以AS-external LSA(5类LSA)的形式在OSPF网络内泛洪
LSA5
1、由ASBR做外部路由引入
2、整个OSPF域,即使拓扑设计不规则,依旧学习传递。LSDB表项单独描述域外路由
3、作用就是描述外部路由信息,传递的过程中三个唯一性始终不变,本质就是外部路由
4、LSA5 Forwarding Address(FA)非0,代表的就是去往这条外部路由的时候,直接FA地址所对应的路由,这个地址描述去往外部所对应的下一跳的接口地址的路由
5、FA地址非0必须满足如下条件
地址所对应的路由必须通过OSPF学习到(以LSA1,LSA3)
地址所对应的网络类型必须是MA,不能是P2P,P2MP
地址所对应的接口不能是静默端口(silent-interface)
OSPF选路问题
OSPF通过多区域的设计,分为域内,域间,域外的情况
1、域内>域间>域外 LSA1,2>LSA3>LSA5
2、LSA3优选从骨干区域学习到的
3、LSA5优选从骨干区域学习到的
如果都是从骨干区域学习到的,先比较cost-stype,type1>type2
如果都是type1,比较开销值,越小越优
如果都是type2,先比较外部开销,进而看内部开销
LSA4
由ABR产生,描述的是ABR到ASBR的距离,LSA4不会凭空产生,LSA4是对LSA5的补充和说明;补充和说明的内容就是那些和ASBR不在同一个区域的设备在去往ASBR的这条外部路由如何到达
ABR定义
1、一端属于AREA0,一端属于其他区域,并且和AREA0和其他区域至少有一个邻接关系
2、有能力LSA1,2转LSA3
3、有能力LSA3转LSA3
4、有能力产生LSA4
5、有能力LSA4转LSA4
Tips:
LSA4:
1、由ABR产生
2、在产生LSA4的通告者路由器所在的区域内泛洪,传递到不同区域的时候会做转换;和ASBR相同的区域通过LSA1计算,不同区域通过LSA4
3、作用就是描述到达ASBR的开销,有LSA5才有KSA4,LSA4不会凭空产生(空引入,只产生LSA4不产生LSA5,特殊场景)
LSA5是在整个OSPF域传递,传递的过程中三个唯一不变,LSA4除了和ASBR同区域的ABR产生,传递的时候只在和LSA4 ADVrouter相同的区域传递
OSPF特殊区域
STUB(末梢区域)-属于OSPF最边缘,不能存在ASBR,没有LSA5,LSA4
出向:通过ABR自动下放的LSA3 0.0.0.0/0访问外部网络,通过LSA1,LSA2,LSA3访问域内,域间路由
入向:LSA4,LSA5被过滤掉
Totally Stub(完全末梢)--在STUB基础之上,将域间的LSA3明细做了过滤
NSSA(Not-So-Stub-Area)--不那么完全末梢区域,也会继承Totally Stub特性,不能存在外部的LSA4,LSA5,但是可以存在ASBR
出向
入向
NSSA LSA7:
1、由NSSA ASBR产生
2、只在NSSA区域内部传递,如果去往其他区域,由ABR做LSA7转
3、描述一条NSSA区域的外部路由
Stub区域
Stub区域的ABR不向Stub区域内传播它接收到的AS外部路由,Stub区域中路由器的LSDB,路由器规模都会大大的减少
为保证Stub区域能够到达AS外部,Stub区域的ABR将生成一条缺省路由(使用3类LSA描述)
配置Stub区域时需要注意下列几点
骨干区域不能配置为Stub区域
Stub区域中所有路由器都必须将该区域配置为Stub
Stub区域内不能引入也不接收AS外部路由
虚连接不能穿越Stub区域
Stub区域与Totally Stub区域存在的问题
OSPF规定Stub区域是不能引入外部路由的,这样可以避免大量外部路由引入造成设备资源消耗
对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,Stub和Totally Stub区域就不能满足需求了
ISIS
ISIS是ISO定义的OSI协议栈中的CLNS(ConnectionLess Network Service,无连接网络服务)的一部分
集成ISIS的特点:支持CLNP网络,IP网络
采用数据链路层封装
OSPF特点:只支持IP网络,采用IP报文封装
定义NSAP
集成ISIS的NSAP地址由3部分构成:IDP[1-13BYTE]+System-id[6Byte]+SEL(00)[1Byte]
集成ISIS的NSAP地址称为NET(Network-entity)网络实体名
ISIS loopback转换成system-id
现网中有为了标识统一(RID和SystemID都采用相同的环回口地址标识),如何将一个Loopback转换成system-id
tips:
Loopback0=192.168.1.1
----192.168.001.001 在每一个扩充为3位
---- 1921.6800.1001 调整每一个块16bit,重新规划为3部分
system-id=1921.6800.1001
Practise
Loopback0=10.10.1.1
System-id=0100.1000.1001
ISIS和OSPF区域划分的区别
ISIS在自治系统内采用骨干区域与非骨干区域两级的分层结构
Level-1路由器部署在非骨干区域
Level-2路由器和Level-1-2路由器部署在骨干区域
每一个非骨干区域都通过Level-1-2路由器与骨干区域相连接
ISIS选路规则:L1>L2>Leaking
I>E
路由器传递的原则
1、L1的自动进入到L2
2、L2构成骨干,需要连续,L1可以不连续
3、L1自己下发0.0.0.0/0,去往其他的AREA(ATT=1)
ATT置位条件
1、必须是L1/L2
2、本L1/2路由器有L2邻居,从L2邻居学习到的LSP中有区域号和非骨干区域不在同一区域
SPF是一个路由器充当一个节点,边界是在路由器上
ISIS路由器的分类
Level-1路由器
Level-1路由器是一种ISIS区域内部路由器,它只与属于同一区域的Level-1和Level-1-2路由器形成邻接关系,这种邻接关系称为Leve-1邻接关心,Level-1路由器无法与Level-2路由器建立邻接关系
Level-1路由器只负责维护Level-1的链路状态数据库LSDB,该LSDB只包含本区域的路由信息,值得一提的是,Level-1路由器必须通过Level-1-2路由器接入ISIS骨干区域从而访问其他区域
Level-2路由器
Level-2路由器是ISIS骨干路由器,它可以与同一或者不同区域的Level-2路由器或者Level-1-2路由器形成邻接关系,Level-2路由器维护一个Leve-2的LSDB,该LSDB包含整个ISIS域的所有路由信息
所有Level-2级别(即形成Level-2邻接关系)的路由器组成路由域的骨干网,负责在不同区域间通信,路由域中Level-2级别的路由器必须是物理连续的,以保证骨干网的连续性。
Level-1-2路由器
Level-1-2路由器与OSPF中的ABR非常相似,它也是ISIS骨干网络的组成部分
Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由
同时属于Level-1和Level-2的路由器称为Level-1-2路由器,它可以与同一区域的Level-1和Level-1-2路由器形成Level-1邻接关系,也可以与其他区域的Level-2和Level-1-2路由器形成Level-2的邻接关系
ISIS支持的网络类型
ISIS会自动根据接口的数据链路层封装决定该接口的缺省网络类型,ISIS支持两种类型的网络:
广播(Broadcast):如Ethernet-----不选举DIS
点到点(P2P):如PPP、HDLC等-------选举DIS
ISIS开销值
ISIS使用Cost(开销)作为路由度量值,Cost值越小,则路径越优,ISIS链路的Cost与设备的接口有关,与OSPF类似,每一个激活了ISIS的接口都会维护接口Cost,然而与OSPF不同的是,ISIS接口的Cost在缺省情况下并不与接口带宽相关(在实际部署时,ISIS也支持根据带宽调整Cost值),无论接口带宽多大,缺省时Cost为10
一条ISIS路径的Cost等于本路由器到达目标网段沿途的所有链路的Cost总和
ISIS有三种方式来确定接口的开销,按照优先级由高到低分别是:
接口开销:为单个接口设置开销
全局开销:为所有接口设置开销
自动计算开销:根据接口带宽自动计算开销
ISIS开销值的计算方式
ISIS有三种方式来确定接口的开销,按照优先级由高到低分别是
接口开销:为单个接口设置开销
全局开销:为所有接口设置开销
自动计算开销:根据接口带宽自动计算开销
缺省的情况下,ISIS的开销计算类型采用的是Narrow,运行ISIS的接口开销,开销不论接口的带宽是多大,默认均是10;采用的是分段累加的方式,控制层面入栈接口的开销累加
ISIS开销计算方式由三种,优先级比较:接口开销>全局开销>自动计算
ISIS报文格式
ISIS报文是直接封装在数据链路层的帧结构中的
PDU(Protocol Data Unit,协议数据单元)可以分为两个头部,报文 头(ISIS Header)很可变长字段部分(Variable Length Fields)
其中ISIS Header又可以分为通用头部(PDU Common Header)和专用头部(PDU Specific Header)对于所有PDU来说,通用报头都是相同的,但专用包头根据PDU类型不同而有所差别
ISIS报文格式是采用头部+载荷的形式填充,支持tv1填充内容描述邻居关系的建立,认证,LSP通告信息等;
构建LSDB时候,LSP填充方式
cost-style narrow:t1v2+128/130
cost-stype wide:t1v22 + 135
ipv6支持:t1v232 + 236
体现了可扩展性好,易于承载新的技术在ISIS中让ISIS提供IGP的平面
在Narrow模式中:
ISIS发现的路由L1或L2,或者将L2泄漏到L1都是内部路由,由TLV 128承载
ISIS在L1或L2导入的路由中,或者将L2的外部路由泄漏到L1(会置DOWN位),都是外部路由,由TLV 130承载
如果发送模式由narrow变成wide
原来由128,130和2号TLV携带的信息,变成135和22号TLV携带
如果发送模式由wide变成narrow
原来由135,22号TLV携带的信息,变化成128,130和2号TLV携带
如果发送模式由narrow/wide变成narrow&wide
由原来的信息,变化成128,130,2号TLV和135和22号TLV同时携带
Narrow模式的特点
1、接口开销0-63、路径开销0-1023
2、邻居TLV为2,内部和域间路由TLV为128,外部路由TLV为130
3、不能携带TAG
WIDE模式特点:
1、接口开销【0-(2的24次方-1)】、路径开销【0-(2的23次方-1)】
2、邻居TLV为22,内部、域间和外部路由TLV为135
3、在路由条目后使用SUB_TLV携带TAG
ISIS通用头部详解
重要字段解释
Intradomain Routing Protocol Discriminator:域内路由选择协议鉴别符,固定为0x83
Length indicator:ISIS头部长度(包括通用头部和专用头部),以Byte为单位
Version/Protocol ID Extension:版本/协议标识扩展,固定为0x01
System ID Length:NSAP地址或NET中System ID区域的长度,值为0时,表示System ID区域的长度为6Byte
R(Reserved):保留,固定为0
Version:固定为0x01
Max Areas:支持最大区域个数,设置为1-254的整数,表示该ISIS进程实际所允许的最大区域地址数,设置为0,表示该ISIS进程最大只支持3个区域地址数
ISIS报文类型概述
ISIS的PDU有4种类型:IIH(IISIS Hello),LSP(Link State PDU,链路状态报文),CSNP(Complete Sequence Number PDU,全序列号报文),PSNP(Partial Sequence Number PDU,部分序列号报文)
IIH:用于建立和维持邻接关系,广播网络中的Level-1 ISIS路由器使用Level-1 LAN IIH;广播网络中的Level-2 ISIS路由器使用Level-2 LAN IIH;点到点网络中则使用P2P IIH
LSP:用于交换链路状态信息,LSP分两种,Level-1 LSP、Level-2 LSP
SNP:通过描述全部或者部分链路数据库中的LSP来同步各LSDB,从而维护LSDB的完整与同步,SNP包括CSNP和PSNP,进一步又可分为Level-1 CSNP、Level-2 CSNP、Level-1 PSNP和Level-2 PSNP
ISIS邻接关系建立原则
ISIS按如下原则建立邻接关系:
只有同一层次的相邻路由器才有可能成为邻接
对于Level-1路由器来说,Area ID必须一致
链路两端ISIS接口的网络类型必须一致
链路两端ISIS接口的地址必须处于同一个网段(默认情况下)
由于ISIS是直接运行在数据链路层上的协议,并且最早设计是给CLNP使用的,ISIS邻接关系的形成与IP地址无关,但在实际的部署中在IP网络上运行ISIS,需要检查对方的IP地址,如果接口配置了从IP,那么只要双方有某个IP(主IP或者从IP)在同一网段,就能建立邻接,不一定要主IP相同
在LAN(Braodcast)中需要选举DIS,用来在描述拓扑的时候标识伪结点(LSPID表示=SYSID.0*-00),选举过程:
1、先比较dis-priority,缺省64,范围0-127,越大越优,0也参选
2、后比MAC,比小
广播网络中的邻接关系建立过程
两台运行ISIS的路由器在交互协议报文实现路由功能之间必须首先建立邻接关系,在不同类型的网络类型上,ISIS的连接建立方式并不相同,在广播网络中,使用三次握手建立邻接关系
R1和R2通过千兆以太接口互联,两台直连的Level-1路由器建立邻接关系的过程如下:
1、在Down状态下,R1组播发送Level-1 LAN IIH,此报文中邻接列表为空
2、R2收到此报文后,将邻接状态标识为Initial,然后,R2再向R1回复Level-1 LAN IIH,此报文中标识R1为R2的邻接
3、R1收到此报文后,将自己与R2的邻接状态标识为UP,然后R1再向R2发送一个标识R2为R1邻接的Level-1 LAN IIH
4、R2收到此报文后,将自己与R1的邻接状态标识为UP,这样,两个路由器成功建立了邻接关系
5、广播网络中需要选举DIS,在邻接关系建立后,路由器会等待两个Hello报文间隔,再进行DIS的选举
DIS与伪节点
在广播网络中,ISIS需要在所有的路由器中选举一个路由器作为DIS(Designated Intermediate System)
DIS用来创建和更新伪结点(Pseudonodes),并负责生成伪节点的LSP,用来描述这个网络上有哪些网络设备。伪节点是用来模拟广播网络的一个虚拟节点并非真实的路由器,在ISIS中,伪节点用DIS的System ID和Circuit ID(非0值)标识
在LAN组网中,建立邻居的时候采用3-way方式建立,并且会选举DIS,DIS本质就是伪节点,会生成一份伪节点的LSP的标识,作用:
1、描述LAN组网的连接情况,构建拓扑
2、确保在LAN中LSP泛洪的可靠性
3、完成LAN中MA组网LSDP的扩散和路由计算
ISIS中的DIS与OSPF中的DR
Level-1和Level-2的DIS是分别选举的,用户可以为不同级别的DIS选举设置不同的优先级
DIS选举规则如下
DIS优先级数值最大的被选为DIS
如果优先级数值最大的路由器有多台,则其中MAC地址最大的路由器会成为DIS
DIS发送Hello PDU的时间间隔是普通路由器的三分之一,这样可以确保DIS出现故障时能够被更快速的发现
ISIS中DIS与OSPF中DR的区别
在ISIS广播网中,优先级为0的路由器也参与DIS的选举,而在OSPF中优先级为0的路由器则不参与DR的选举
在ISIS广播网中,当有新的路由器加入,并符合成为DIS的条件时,这个路由器会被选中成为新的DIS,原有的伪节点会被删除,此更改会引起一组新的LSP泛洪,而在OSPF中,当一台新路由器加入后,即使它的DR优先级值最大,也不会立即成为该网段中的DR
在ISIS广播网中,同一网段上的同一级别的路由器之间都会形成邻接关系,包括所有的非DIS路由器也会形成邻接关系,而在OSPF中华,路由器只与DR和BDR建立邻接关系
点到点网络中的邻接关系建立过程
点到点网络中,邻接关系的建立使用两次握手方式:只要路由器收到对端发来的Hllo报文,就单方面宣布邻接为UP状态,建立邻接关系
两次握手机制存在明显的缺陷,华为设备在点到点网络中使用ISIS时,默认使用三次握手建立邻接关系,此方式通过三次发送P2P2 IIH最终建立起邻接关系
LSP
在ISIS中,LSP相当于OSPF LSA,用来描述链路状态信息的,分为Level描述,构成:
2个唯一性:Level,LSP ID
3个新旧程度:SequenceNO.,Checksum,Holdtime(逆计时 1200 300 0 60 0)
OL(LSDB Overload):过载标志位
设置了过载标志位的LSP虽然还是会在网络中扩散,但是在计算过载路由器的路由时不会被采用,即对路由器设置过载位后,其他路由器在进行SPF计算时不会使用这台路由器做转发,只计算该节点上的直连路由
对于设备内存不足而不能记录完整的链路状态数据库是,它具有通知其他路由器的能力
华为的VRP系统中,设备可以自动进入过载状态(比如设备工作异常)在过载状态下设备会删除所有渗透或引入的路由信息;通过手工设置过载位,可以在设备升级或维护时,需要将业务切换到其他转发路径,这种状态下,还可以指定配置参数的方式设备设备在过载状态下是否删除所有引入或渗透进来的路由信息
CSNP
CSNP包含该设备在LSDB中所有的LSP摘要,路由器通过交互CSNP来判断是否需要同步LSDB
在广播网络上,CSNP是由DIS定期发送(缺省的发送时间周期为10S)
在点到点网络上,CSNP只在第一次建立邻接关系时发送
Source ID:发出CSNP报文的路由器的System ID
Start LSP:CSNP报文中第一个LSP的ID值
End LSP ID:CSNP报文中最后一个LSP的ID值
PSNP
PSNP只包含部分LSP的摘要信息(与CSNP不同)
当发现LSDB不同步时,PSNP来请求邻居发送新的LSP
在点到点的网络中,当收到LSP时,使用PSNP对收到的LSP进行确认
Source ID:发出PSNP报文的路由器的System ID
ISIS认证详解
接口认证
Hello报文使用的认证密码保存在接口下,发送带认证TLV的认证报文,互相连接的路由器接口必须配置相同的口令
区域认证
区域内每一台L1路由器都必须使用相同的认证模式和具有共同的钥匙串
路由域认证
ISIS域内的每一台L2和L1/2类型的路由器都必须使用相同模式的认证,并使用共同的钥匙串
对于区域和路由域认证,可以设置为SNP和LSP分开认证
本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都进行认证检查
本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文携带认证TLV,但不对收到的SNP报文进行检查
本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文不携带认证TLV,也不对收到的SNP报文进行认证检查
本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都不进行认证检查
BGP基础
AS
OSPF、ISIS等IGP路由协议在组织机构网络内部广泛应用,随着网络规模扩大,网络中路由数量的不断增长,IGP已无法管理大规模网络,AS的概念由此诞生
AS指的是在同一个组织管理下,使用统一选路策略的设备集合
不同AS通过AS号区分,AS号存在16bit、32bit两种表示方式;IANA负责AS号的分发
建立BGP过程
1、规划AS
2、完成IGP
3、建立BGP对等体关系(External/Internal BGP)
4、在AS之间通告BGP路由(将IGP计算和产生路由以BGP形式在AS之间通告)
Ethernet II | IP | OSPF | FCS ttl=1 以组播基于报文自动发现
IEEE 802.3 | LLC | ISIS | FCS ttl=1 以组播基于报文自动发现
Ethernet II | IP | TCP | BGP | FCS
dport=179 端到端单播建立邻居,必须手工指定,支持空投建立PEER
BGP概述
BGP使用TCP作为其传输层协议(端口号为179),使用触发式路由更新,而不是周期性路由更新
BGP能够承载大批量的路由信息,能够支撑大规模网络
BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能指导对等体按策略发布路由
BGP能够支撑MPLS\VPN的应用,传递客户VPN路由
BGP提供了路由聚合和路由衰减功能用于防止路由震荡,通过这两项功能有效的提高了网络稳定性
建立BGP PEER需要注意的几个问题
1、BGP PEER基于TCP建立的,必须采用单播手动建立;一定要保证TCP Session的源目的IP地址路由可达的
2、BGP PEER消息的更新和通告必须要和TCP Session建立的源目IP所属端口(更新源接口update-interface/connect-interface)保持一致;默认是物理口
3、BGP PEER分为IBGP和EBGP;IBGP PEER属于同一个AS的,EBGP PEER分别属于不同的AS
IBGP PEER建立的时候,理论上建立邻居的消息通告过程中是没有限制,ttl=255;支持直连和空投建立对等体
EBGP PEER建立的时候,理论上建立邻居的消息通告的过程中直连建立,默认的情况下ttl=1;支持直连和空投建立对等体,一定要注意ttl的跳数可达(ebgp-multihop/EBGP-MAX-HOP)
4、BGP PEER建立的时候,为了优化邻居关系的发现建立和维持,采用两种报文完成:BGP报文格式--BGP Header + Payload
open--发现,建立邻居 载荷内容填充较多;会填充BGP Header + 邻居建立的控制字段+载荷填充各种能力协商,较大的keepalive--维持邻居 19Byte 小包,载荷部分是空的,周期发送,目的就是保活邻居
5、BGP PEER建立的时候,即支持物理口建立,也支持环回口建立;从稳定性和扩容的角度,建议使用环回口
Tips:在EBGP PEER建立的时候,如果IGP可达采用的是静态缺省路由,对等体可以正常建立,但是学习到的路由不加表
如果要满足下一跳可达,变为i*>,如何实现
1、将BGP专线的网段引入到IGP
2、从EBGP学习到的路由在通告给自己的IBGP将Nexthop变为自己的更新源地址
注意:next-hop-local 具有方向的
BGP Route Advertising Rule:
关闭同步原则(华为不支持开启)
下一跳地址必须可达
1、BGP路由针对于相同的前缀,只存放一条最优的,也只通告一条最优的给其他对等体;除非开启BGP ECMP(必须满足苛刻的条件)
2、BGP路由时增量更新的(增删改,增加前缀+属性,撤销只能撤销前缀)
3、本地始发的BGP路由可以通告给任何的IBGP和EBGP
4、从IBGP邻居学习到的路由不会传递给任何的IBGP,可以传递给任何的EBGP;
5、本地始发的BGP路由可以通告给任何的IBGP和EBGP;从EBGP学习到的路由在传递给任何的IBGP需要注意next-hop-local,下一跳可达的问题;还需要注意同步原则问题
A、同步原则关闭,直接传输的。不需要检查
B、同步原则开启,不会直接传递,BGP协议要去判断设备学习到这条路由的时候是否满足从其他IGP协议学习到,如果满足,直接传递,如果不满足,直接丢弃;目的防止BGP路由的黑洞
BGP报文类型
Open
作用:协商BGP对等体参数,建立对等体关系
发送时刻:BGP TCP连接建立成功之后
Update
作用:发送BGP路由更新
发送时刻:BGP对等体关系建立之后有路由需要发送或路由变化时向对等体发送Update报文
Notification
作用:报告错误信息,中止对等体关系
发送时刻:当BGP在运行中发现错误时,发送Notification报文将错误通告给BGP对等体
Keepalive
作用:标志对等体建立,维持BGP对等体关系
发送时刻:BGP路由器收到对端发送的Keepalive报文,将对等体状态置为已建立,同时后需定期发送Keepalive报文用于保持连接
Route-refresh
作用:用于在改变路由策略后请求对等体重新发送路由信息,只有支持路由刷新能力的BGP设备会发送和响应此报文
发送时刻:当路由策略发送变化时,触发请求对等体重新通告路由
BGP路由通告:Network/Import-route/Aggregte
1、Network支持精确,主类通告,直接挂router-policy做过滤和属性的修改
2、Import-router支持将IGP引入NGP,建议挂router-policy做过滤和属性的修改
3、汇总有两种方案,民间(汇总静态黑洞路由+Network/Import-route),官方aggregate
1、路由控制,BGP路由控制
ACL/IP-PREFIX/FILTER-POLICY/ROUTE-POLICY FILTER/FILTER-LAS-OUT
FILTER-POLICY/IP-PREFIX/ROUTER-POLICY/AS-PATH-FILTER/COMMUNITY-FILTER
ACL(ACCESS Control List)
作用:
1、流控
2、匹配感兴趣的流量,抓取路由前缀
ACL分类
1、按照创建ACL的命名方式:
数字型ACL
命名型ACL
2、按照ACL功能方式:
标准ACL 2000-2999 SIP
扩展ACL 3000-3999 SIP\DIP\Sport\Dport\Protocol五元组(套接字)
二层 ACL 4000-4999 SAMC,DMAC
3、基于ACL规则定义方式的划分
基本ACL 2000-2999 仅使用报文的源IP地址,分片信息和生效时间段信息来定义规则
高级ACL 3000-3999 可使用IPV4报文的源IP地址,目的IP地址,IP协议类型,ICMP类型,TCP源/目的端口,UDP源/目的端口号,生效时间段等来定义规则
二层ACL 4000-4999 使用报文的以太网帧头信息来定义规则,如根据源MAC地址,目的MAC地址,二层协议类型等
用户自定义ACL 5000-5999 使用报文头,偏移位置,字符串掩码和用户自定义字符串来定义规则
用户ACL 6000-6999 既可以使用IPV4报文的源IP地址或源UCL(User Control List)组,也可以使用目的IP地址或目的UCL组,IP协议类型,ICMP类型,TCP源端口/目的端口,UDP源端口/目的端口号等来定义规则
4、匹配规则
在华为VRP系统中使用ACL过滤数据包,本地始发的流量不生效,没有匹配到的数据包,默认是允许通过(Cisco IOS 默认拒绝所有);如果用于控制层面抓取路由,匹配感兴趣的流量,只能对前缀生效,不能对掩码生效,只能用标准ACL
tips:
ACL匹配的是通配符,0和1可以不连续,0代表严格指定,1代表任意
IP IP-PREFIX 前缀列表
作用:
1、匹配感兴趣的流量,抓取路由前缀+掩码 精确抓取
2、BGP/BGP MPLS VPN 可以直接过滤路由/标签
IP IP-PREFIX特点:
用于匹配感兴趣的流量,即对路由前缀做控制,也对掩码做控制,掩码控制范围
不能直接用于流控
缺省情况下,默认存在一条拒绝所有在最后一条
如果引用的前缀过滤列表是一条不存在,默认会permit
书写规则
ip ip-prefix ~ index ~ permit/deny 前缀 掩码 greater-equal ~ less-equal ~
X Y Z
HUAWEI VRP:X<=Y<=Z
CISCO IOS:X<Y<Z
2、BGP属性,RR/Confederation
Filter-policy过滤策略
Filter-policy可以单独使用在路由协议进程中,可以调用ACL,IP-PREFIX,Route-policy等工具匹配感兴趣的流量的场景中结合使用;控制路由的发布和接收,只有通过filter-policy策略的路由才可以被发布和接收,未通过的直接过滤掉;广泛应用在IGP和BGP中,算法不同,过滤路由矢量行为不同,影响路由发布和接收的现象和结果不同;filter-policy分为两个方向import和export
Import:主要影响路由器接收路由,影响的是自身路由表的变化,适用于任何协议,但是不同算法类型的协议之间是有差别的
Export:DV算法中用于向邻居发布路由时做控制;LS算法用于ASBR对外部引入的路由发布到路由域内做控制
配置格式
1、ACL/IP-Prefix抓取路由(permit抓得住)
2、创建Router-policy,用Node区分步长,动作permit/deny,Node之间是逻辑或的关系
3、If-math匹配抓取的路由,匹配多个,逻辑与的关系
4、Apply修改属性 appy同时修改多个属性
结论:
1、Route-policy只对抓得住路由前缀起作用
2、默认在最后隐含一条deny any
3、Router-policy匹配顺序是Node由小到大匹配,注意逻辑正确
BGP路由过滤的方式有四种:
1、Filter-policy //ACL or ip-prefix
2、IP-Prefix
3、Router-policy//acl or ip-prefix,tag
4、As-path-filter //regular-expression 正则表达式
3、BGP路由优选
BGP路径属性
任何一条BGP路由都拥有多个路径属性(Path Attributes),当路由器通告BGP路由给它的对等体时,该路由将会携带多个路径属性,这些属性描述了BGP路由的各项特征,同时在某些场景下也会影响BGP路由优选的决策
IBGP水平分割规则用于防止AS内部产生环路,在很大程度上杜绝了IBGP路由产生环路的可能性,但是同时也带来了新的问题:BGP路由在AS内部只能传递一跳,如果建立IBGP对等体互联模型又会增加设备的负担
路径属性分类
公认必遵(Origin、AS_Path、Next_hop)
公认任意(Local_Preference、Atomic_aggregate)
公认属性时所有BGP路由都必须能够识别的属性
公认属性分为两类
公认必遵(Well-known Mandatory):必须包括在每个Update消息里。
公认任意(Well-known Discretionary):可能包括在某些Update消息里
可选过渡(Aggregator、Community)
可选非过渡(MED、Cluster-List、Originator-ID)
可选属性不需要都被BGP路由器所识别
可选属性可以分为两类:
可选过渡(Option Transitive):BGP设备不识别此类属性依然会接受该类属性并通告给其他对等体
可选非过渡(Optional Non-transitive):BGP设备不识别此类属性会忽略该属性,且不会通告给其他对等体
AS-PATH
AS-PATH本质记录路由跨越AS的情况,由右往左记录;最右边的是路由的始发AS,最左边是自己本AS的相邻AS(EBGP PEER);
在流量倾斜的Inbaound方向做控制 数据层面的Inbound
作用:确保路由在EBGP对等体之间传递无环,另外也作为路由优选的衡量标准之一
路由在被通告给对EBGP等体时,路由器会在该路由的AS_Path中追加上本地的AS号;路由被通告给IBGP对等体时,AS_Path不会发生改变
修改AS_Path
使用Route-Policy修改BGP路由的AS_Path属性时,可以使用以下三种方式
additive:原有AS_Path上追加(体现为在左侧追加内容)
overwrite:将已有AS_Path值替换成新的值
none overwrite:将已有AS_Path的值清空
tips
如果在import方向做了as-path addittive,AS号是增加在前面的
如果在export方向做了as-path additive,AS号是增加在自身的AS号后面
BGP路由优选口诀:PL LAOMEN COPY
P:prefValue:本地有意义,不会离开本路由器,default=0(从IBGP/EBGP/本地),越大越优,流量倾斜的outbound【HUAWEI特有,相当于weight(权重值)】
L:Local-preference:本地优先级属性,是公认任意属性,可以用于告诉AS中的路由器,哪条路径是离开本AS的首选路径,属性值越大则BGP路由越优,缺省的Local_Preference值为100
该属性只能被传递给IBGP对等体,而不能传递给EBGP对等体
L:Local
A:As-path
O:Origin
M:Med:MED属性相当于IGP的代价值,用于判断流量进入AS时的最佳路由,即用来影响邻居AS流量进入本AS的最佳路径,该属性为可选非过渡,属性值越小越优,基于流量倾斜inbound属性做控制
E:Ebgp
N:Nexthop(cost)
C:Cluster-list
O:Originator-ID(RID)
P:IP
MED
如果通过MED属性调整邻居AS怎么进入本AS/本AS路由有多个出口可以出去,究竟选择哪一个出口,如果邻居AS号不同,则必须在本AS开启compare-different-as-med特性
缺省情况下,路由器只比较来自同一相邻AS的BGP路由的MED值,也就是说如果去往同一个目的地的两条路由来自不同的相邻AS,则不进行MED值的比较
Community
可选过渡属性 32bit
作用:1.TAG 2.控制路由传播范围,过滤路由
公认Community属性
Internet(0):设备在收到此属性的路由后,可以向仍和BGP对等体发送该路由,缺省情况下,所有的路由都属于Internet团体
No_Advertise【4293967042(0xffffff02)】:设备收到具有此属性的路由后,将不向任何BGP对等体发送该路由
No_Export【4294967041(0xffffff01)】:设备收到具有此属性的路由后,将不向AS外发送该路由
No_Export_Subconfed【4294967043(0xffffff03)】:设备收到具有此属性的路由后,将不向AS外发送该路由,也不向AS内其他子AS发布此路由
路由反射器(解决IBGP水平分割)
从客户端学习到的路由,是可以反射给任何客户端和非客户端
从非客户端学习到的路由,是可以反射给任何的客户端
非非不传
BGP知识重点梳理:
1、BGP基本概念
2、BGP邻居关系的建立方式,物理口/环回口 IBGP/EBGP
3、BGP路由通告原则 IBGP水平分割
4、BGP路由控制,对属性做应用 filter-policy/ip ip-prefix/route-policy/as-path-filter
5、BGP路由的优选
扩展后续部分
1、BGP MPLS VPN 单域/跨域
2、VXLAN
3、BGP EVPN
4、VXLAN EVPN
5、SR
《BGP设计与实现》
路由策略与路由控制
概述:路由控制可以通过发布路由策略(Route-Policy)实现,路由策略应用灵活而广泛,由以下几种方式
1、控制路由的发布:通过路由策略对发布的路由进行过滤,只发布满足条件的路由
2、控制路由的接收:通过路由策略对接收的路由进行过滤,只接收满足条件的路由
3、控制路由的引入:通过路由策略控制从其他路由协议引入的路由条目,只有满足条件的路由才会被引入
定义路由特征
匹配出要实施路由策略的路由,即定义一组匹配规则进行匹配:可以根据路由信息中的不同属性进行匹配,如目的地址,tag值等
匹配工具
1、访问控制列表(ACL)
ACL由若干条permit或deny语句组成,每条语句就是概念ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作
2、通配符
通配符是一个32bit长度的数值,用于指示IP地址中哪些bit位需要严格匹配,哪些bit位无需匹配,通配符通常采用类似网络掩码的点分十进制形式表示,但是含义与网络掩码完全不同
匹配规则:0表示匹配。1表示无需匹配
流量过滤与转发路径控制
Route-policy
路由策略对路由计算产生影响,从而改变路由表(先路由,后策略)
常见的路由策略是过滤部分路由不发布,调整路由的选择参考
不同的协议由不同的路由策略工具
必须从全局考虑路由策略
PBR
策略路由直接作用于设备转发平面,但不影响正常的路由表(先于路由表做控制)
常见的策略路由时改变数据转发的下一跳
根据不同的源地址
根据其他条件
路由策略和策略路由的对比
路由策略 策略路由
作用对象是路由信息 作用对象是数据流
转发数据包时只看路由表转发 基于策略的转发,失败后再查找路由表转发
基于控制平面,为路由协议和路由表 基于转发平面,为转发策略服务
与路由协议结合完成策略 需要手工逐条配置,以保证报文按策略转发
HUAWEI实现路由策略的方式
定义:
策略路由PBR(Policy-Based Routing)是一种依据用户制定的策略进行路由选择的机制,分为本地策略路由,接口策略路由和智能策略路由SPR(Smart Policy Routing)
工作在数据转发层面,可以单独使用,先于路由表做控制,做选路
一般用于企业过多,运营商一般很少用
目的:
传统的路由转发原理是首先根据报文的目的地址查找路由表,然后进行报文转发,但是目前越来越多的用户希望能够在传统路由转发的基础上根据自己定义的策略进行报文转发和选路,策略路由使网络管理者不仅能根据报文的目的地址,而且能够根据报文的源地址,报文大小和链路质量等属性来制定策略路由,以改变数据包转发路径,满足用户需求
收益:
策略路由具有如下优点:
可以根据用户实际需求制定策略进行路由选择,增强路由选择的灵活性和可控性
可以使不同的数据流通过不同的链路进行发送,提高链路的利用效率
在满足业务服务质量的前提下,选择费用较低的链路传输业务数据,从而降低企业数据服务的成本
让路由转发表作为pbr表象的备份:必须要在inbound的方向,进路由器做pbr
mqc的相关验证:
PBR介绍-结构
PBR与Route-Policy类似,由多个节点组成,每个节点由匹配条件(条件语句)和执行动作(执行语句)组成
每个节点内可包含多个条件语句
节点内的多个条件语句之间的关系为“与”,即匹配所有条件语句才会执行本节点内的动作
节点之间的关系为“或”,PBR根据节点编号从小到大顺序执行,匹配当前节点将不会继续向下匹配
MQC介绍
MQC(Modular QoS Command-Line Interface,模块化QoS命令行)是指通过将具有某类共同特征的数据流分为一类,并为同一类数据流提供相同的服务也可以对不同类的数据流提供不同的服务
MQC包含三要素:流分类(traffic classifier)、流行为(traffic behavior)、流策略(traffic policy)
MQC的流行为支持重定向报文,因此可以使用MQC实现IP单播策略路由
园区网典型技术应用概述
有线无线一体化:
传统无线的组网有两种本质的标准:
1、家用机 FAT AP 无线路由上网 注意:如果无线路由器没有光口,则需要光猫做路由
2、企业级 AC(无线控制器)+FIT AP(单纯无线信号接入点)AC集中管理AP
AC的形态:独立AC设备,随板AC,内置在路由器中的功能 算AC管理AP数量点
AC部署方式:直挂二层、三层
旁挂二层、三层
基于不同的场景会有不同的解决方案
1、高教网和医疗网当中针对于开间比较多的场景--敏分方案/智分+方案
2、针对于连锁酒店,连锁商超网络--云AC方案
NTP:主要应用于网络中所有设备时钟需要保持一致的场合
网络管理:对从不同路由器采集来的日志信息,调试信息进行分析时需要以时间作为参照依据
计费系统:要求所有设备的时钟保持一致
多个系统协同处理同一个复杂事件:为保证正确的执行顺序,多个系统必须参考同一个时钟
备份服务器和客户机之间进行增量备份:要求备份服务器和所有客户机之间的时钟同步
系统时间:某些应用程序需要知道用户登录系统的时间以及文件修改的时间
LLDP
网络管理需求及LLDP概述:传统网络管理系统多数只能分析到三层网络拓扑结构。无法确定详细的拓扑信息,是否存在配置冲突等
LLDP提供了一种标准的链路层发现方式
获取相连设备的拓扑结构
显示设备之间的路径
检测设备间配置冲突,查询网络失败的原因
可使用网管系统,对运行LLDP的设备进行链路状态监控,在网络发生故障的时候进行快速定位
需要注意的二层组播MAC
0180-C200-0000 STP BPDU
0180-C200-0014 0180-C200-0015 ISIS
0180-C200-000E LLDP
0180-C200-0003 PROTOCOL-MAC 准入认证
0100-0000-0002 准入认证
SNMP
SNMP(简单网络管理协议)是广泛应用于TCP/IP网络的网络管理标准协议
SNMP提供了一种提供运行网络管理软件的中心计算机(即网络管理工作站NMS)来管理设备的方法,同时可以实现不同种类和厂商设备之间的统一管理
NETCONF/YANG
NETCONF(Network Congiguration Protocol,网络配置协议)提供了一种网管和网络设备之间通信的机制
网络管理员可以利用这套机制在网管上增加,修改,删除网络设备的配置获取网络设备的配置和状态信息
NETCONG基于XML(Extensible Markup Language,可扩展标记语言)
园区网络安全概述
园区边界:
通过防火墙实现不同安全区域之间的划分及业务隔离,安全管控
通过Anti-DDoS设备进行入侵检测及安全态势感知
核心及汇聚层:
对不同的业务进行隔离部署,互访流量管控
按需部署网络准入控制
部署设备本机防攻击,提高设备抗攻击能力
接入层:
建议开启广播风暴控制,DHCP Snooping,IPSG,DAI等安全功能,建议部署端口隔离,加强用户通信安全
部署网络准入控制,对接入园区的用户身份或终端进行认证,并根据结果授予网络访问权限
部署无线空口安全及无线业务安全
基于防火墙的安全区域划分及安全策略
安全区域(Security Zone),或者简称为区域(Zone),是一个安全的概念,大部分的安全策略都基于安全区域实施
一个安全区域是防火墙若干接口所连网络的集合,这些网络中的用户具有相同的安全属性
将企业员工网络,公司服务器的网络,外部网络划分到不同安全区域,对安全区域间的流量进行检测和保护
NGFW基本概念:Zone Security-policy 数据处理流程 二层 三层配置
NAT支持 源NAT,目的NAT,双向NAT nat-policy
VPN支持 GRE Tunnel IPsec VPN,SSL VPN
FW做网关/出口设备 双机热备,关注如何同步会话表项,华为解决方案是私有协议支持 VRRP+VGMP+HRP
FW做三层旁挂 数据流量做检测关注引流 方案1--pbr实现(underlay) 方案2(虚拟化园区网方案)--vsys实现(overlay)
VPN基本概念(Virtual Pravite Network)虚拟个人网络/虚拟专线
二次封装/旁路NAT
构建VPN时需要注意的问题:
1、HUB and Spoken 园区网内网IP规划的问题
2、B2B L3 Tunnel接口必须配置IP地址接口才可以UP,建议配置私网地址
3、私网到私网流量引流到隧道的问题,可以使用动态路由,也可以使用静态路由;需要格外注意旁路NAT
4、设备的处理流程是NAT在VPN之前
NETCONF配置介绍
STP工作机制
1、设备刚加电,STP协议默认启动,并且认为自己是RB(根桥),发送PBDU报文给其他设备,并造成短暂环路,允许的。所有端口的状态是blocking,两两之间交互BPDU。则会进行选举RB,通过
2、在每一个非根交换机上选择出唯一一个根端口(RootPort),描述的是到达根桥最近的端口
3、在每一个网段上选择出唯一一个指定端口(DestinationPort),描述的是到达根交换机最近的端口
根交换机是DP端口(不是绝对的),根交换机所有的端口都是DP这句话是错误的,自环的场景
RP的对端一定是DP,因为有RP存在的链路就是最优的链路
其余的链路都需要选举DP,规则和选举RP是完全一致的
4、其余端口会被阻塞,华为STP之际继承了RSTR的端口优化特性
RP的备份--AP(AlterPort)
DP的备份--BP(BackupPort)
STP BPDU选举参数
1、RootID = Priority + mac 描述的是根交换机的情况,缺省情况下优先级32768,修改必须是4096的倍数(0也可以)
2、RPC(Root Path Cost,根路径代价开销),描述的是到达根桥交换机的开销,控制层面入栈接口开销累加之和
3、BridgeID = priority + mac 描述的是转发bpdu交换机的情况
4、Port ID = priority + 接口ID 描述的是接口(接收或转发bpdu)信息,缺省优先级128,修改必须是16的倍数(0也可以)
MSTP(Multiple STP)802.1S
目的:在以太网中部署MSTP协议后实现如下功能
形成多颗无环路的树,解决广播风暴并实现冗余备份
多颗生成树在VLAN间实现负载均衡,不同VLAN的流量按照不同的路径转发
MSTP对STP和RSTP的改进
MATP兼容STP和RSTP,既可以快收敛,又提供了数据转发的多个冗余路径(在数据转发中实现VLAN数据负载均衡)
MSTP把一个交换网络划分成多个域(MST Region),每个域内形成多颗生成树,生成树之间彼此独立
每颗生成树叫做一个多生成树实例MST(MST Instance)
MSTP通过设置VLAN映射表(即VLAN和MSTI的对应关系,每一个VLAN只能对应一个MSTI),即同一个VLAN只能在一个MSTI中工作,但是一个MSTI可以映射多个VLAN.
CST
公共生成树CST(Common Spanning Tree)是连接交换网络内所有MST域的一颗生成树
如果把每个MST域看作是一个节点,CST就是这些节点通过STP或RSTP协议计算生成的一棵生成树
IST
内部生成树IST(Internal Spanning Tree)是各MST域内的一棵生成树
IST是一个特殊的MSTI,MSTI的ID为0,通常称为MSTI0
IST是CIST在MST域的一个片段
CIST
公共和内部生成树CIST是通过STP或RSTP协议计算生成的,连接一个交换网络内所有交换设备的单生成树,所有的MST域的IST+CST就构成了一颗完整的生成树即CIST
SST
构成单生成树SST(Single Spanning Tree)有两种情况
运行STP或RSTP的交换设备只能属于一个生成树
MST域中只有一个交换设备,这个交换设备构成单生成树
主桥:Master Switch/IST ROOT
如果CIST ROOT所在Region,则也是IST ROOT
非CIST ROOT所在的Region,称为IST ROOT的条件
1、离总根最近,只参考CST的路径
2、边界交换机
划分多Region步骤
1、规划Region
2、规划CIST ROOT
3、规划IST ROOT
4、选主桥到总根的RP端口
跨Region的业务流量在转发的时候,不一定非要经过CIST ROOT,原因就是在MSTI域内,沿着其对应的MSTI转发;(可能出现次优路径)
跨Region的业务流量一定要经过IST ROOT,非总根所在的Region的IST ROOT的RP端口,一定是MSTI的中的MP端口
tips:建议在园区网交换环境中运行MSTP实现基于VLAN负载分担时部署单Region方案,多Region之间本质是CST架构,还容易造成次优的问题
交换机堆叠与集群
堆叠(iStack),将多台支持堆叠特性的交换机通过堆叠线缆连接在一起,从逻辑上虚拟成一台交换设备,作为一个整体参与数据转发
1、SW1和SW2共用一个管控平面,去管理多个框,利用堆叠系统中的主设备的主控板管理其他设备,通过堆叠ID区分堆叠系统内设备是热备的关系,管控平面需要实时同步(堆叠线)堆叠系统中的主备必须是跨框的,配置运维变得简单,增加可靠性
2、设备主控板卡之间是冷备关系,正常只有一块板卡工作;
堆叠会隐含一个故障域变大的风险,也就意味着堆叠系统如果出现故障,可能影响的不是堆叠系统出现故障成员的本身的设备,而会影响到堆叠系统其他成员,所以在对数据极其敏感的场景,可靠性要求极高的场景,如数据中心都是去堆叠的,利用M-LAG实现,但堆叠技术广泛应用在Campus,WAN中是普遍存在的
3、堆叠做完后,设备本身的转发容量没有变化;数据转发依旧满足本地优先(管控平面合并)
例如:SW1和SW2用堆叠线连接,堆叠线充当SW1和SW2的背板总线,数据流量走向本地优先(SWA进SWA出,SWB进SWB出)
集群(Cluster Switch System CSS)将两台支持集群特性的交换机设备组合在一起,从逻辑上虚拟成一台交换设备
集群只支持两台设备,一般高端框式交换机支持CSS,盒式交换机支持iStack
通过使用堆叠,集群技术结合链路聚合技术可以简单构建高可靠,无环的园区网络
1、集群系统的设备之间又是主备的关系,可以理解为热备的关系
集群系统中SW1充当了主,SW1的MPU1又是主板,所以MPU1充当了集群系统的主板,负责整个集群系统的管控平面,但是集群系统的备是SW2,所以集群系统的主控备板则是SW2的主控板,也就是SW2的MPU1板
例如:现在出现了故障,SW1的MPU1板故障了,集群系统这个时候就触发集群系统的主备倒换(swithchover),SW2的MPU1充当主板,但是备板而是SW1的MPU2,始终保持堆叠系统主备跨框
堆叠
1、堆叠系统中所有的单台交换机都称为成员交换机,按照功能不同,可以分为三种角色
主交换机(Master):主交换机负责管理整个堆叠,堆叠系统中只有一台主交换机
备交换机(Standby):备交换机是主交换机的备份交换机,堆叠系统中只有一台备交换机,当主交换机故障时,备交换机会接替原主交换机的所有业务
从交换机(Slave):从交换机用于业务转发,堆叠系统中可以有多台从交换机,从交换机数量越多,堆叠系统的转发带宽越大,除主交换机和备交换机外,堆叠中其他所有的成员交换机都是从交换机,当备交换机不可用时,从交换机承担备交换机的角色
2、堆叠优先级:堆叠优先级是成员交换机的一个属性,主要用于角色选举过程中确定成员交换机的角色,优先级值越大表示优先级越高,优先级越高当选为主交换机的可能性越大,优先级一样,比MAC地址,MAC地址越小越优
3、堆叠ID:即成员交换机的槽位号(Slot ID),用来标识和管理成员交换机,堆叠中所有成员交换机的堆叠ID都是唯一的;设备堆叠ID缺省为0,堆叠时由堆叠主交换机对设备的堆叠ID进行管理,当堆叠系统中有新的成员加入时,如果新成员与已有成员堆叠ID冲突,则堆叠主交换机从0-最大的堆叠ID进行遍历,找到第一个空闲的ID分配给该新成员;在建立堆叠时,建议提前规划好设备的堆叠ID
4、堆叠逻辑接口:交换机之间用于建立堆叠的逻辑接口,每台交换机支持两个逻辑堆叠端口,分别为srack-port n/1和stack-port n/2,其中n为成员交换机的堆叠ID,一个逻辑堆叠端口可以绑定多个物理成员端口,用来提高堆叠的可靠性和堆叠带宽,堆叠成员设备之间,本端设备的逻辑堆叠端口stack-port n/1必须与对端设备的逻辑堆叠端口stack-port m/2相连
5、堆叠系统组建过程
堆叠加入
1、堆叠系统中所有成员交换机先做好连线
2、设备上电,将所有堆叠物理端口全部shutdown
3、管理堆叠ID,新规划堆叠ID的设备重命名之后设备必须要重启才能生效
4、配置堆叠优先级,逻辑堆叠接口,建议两两协商(主备配置完毕后,主备之间的连续undo shutdown,堆叠系统自动协商,备设备自动重启;再去协商从的设备,一台一台协商,一台一台undo shutdown,从设备加入了堆叠系统,直接自动重启)
堆叠合并
1、使能堆叠并配置好堆叠参数
2、所有设备断电
3、连接堆叠线缆
4、所有设备上电
5、系统自动完成堆叠
6、堆叠连接拓扑
链形连接
堆叠成员交换机距离较远时,组件环形连接比较困难,可以使用链形连接
可靠性较低,其中一条堆叠链路出现故障就会导致已经形成的堆叠断开(脑裂)
环形连接
堆叠成员交换机距离较近时,从可靠性和堆叠链路利用率上考虑,建议使用环形连接
可靠性较高,其中一条堆叠链路出现故障,环形拓扑变成链形拓扑,不影响堆叠系统正常工作
7、堆叠成员退出
堆叠成员退出指的是成员交换机从堆叠系统中离开,根据退出成员交换机角色不同,对堆叠系统的影响也有所不同
当主交换机退出后,备份交换机升级为主交换机,重新计算堆叠拓扑并同步到其他成员交换机,指定新的交换机。之后进入稳定状态
当备交换机退出,主交换机重新指定备交换机,重新计算堆叠拓扑并同步到其他成员交换机,之后进入稳定运行状态
当从交换机退出后,主交换机重新计算堆叠拓扑并同步到其他成员交换机,之后进入稳定运行状态
8、堆叠成员加入
堆叠成员加入是指向已经稳定运行的堆叠系统添加一台新的交换机
将未上电的交换机连线加入堆叠后再上电启动,新加入的交换机会选举成为从交换机,堆叠系统中原有主备从角色不变
角色选举结束后,主交换机更新堆叠拓扑信息,同步到其他成员交换机上,并向新加入的交换机分配堆叠ID(新加入的交换机没有配置堆叠ID或配置堆叠ID与原堆叠系统冲突时)
新加入的交换机更新堆叠ID,并同步主交换机的配置文件和系统软件,之后进入稳定运行状态
9、堆叠合并
堆叠合并是指稳定运行的两个堆叠系统合并成一个新的堆叠系统(竞选失败测的堆叠系统所有成员交换机将会重新启动,不建议对两个正在运行业务的堆叠系统进行合并)
10、堆叠分裂
堆叠分裂是指稳定运行的堆叠系统中带电移出部分成员交换机,或者堆叠线缆多点故障导致一个堆叠系统变成多个堆叠系统
场景1:分裂后主备仍在一个堆叠系统中,与原主备分离的从交换机因协议报文超时重新选举
场景2:分裂后主备处于两个堆叠系统中,原主交换机所处堆叠系统更新拓扑,重新指定备交换机,原备交换机在新的堆叠系统中升为主,同时选举新的备交换机
11、堆叠发生故障的形态
StandBy掉电,消失--双归接入业务转发无影响
Master掉电。消失--备变主,双归业务转发无影响
CSS Link断,主备正常--心跳报文超时(8s超时),脑裂分为双Master,两个Master管控平面,业务平面完全一样,出现冲突故障
解决方案:
在两个框之间再连接一个MAD(Multi Active Detection)线缆,双主检测
相互交互MAD报文,1S一次,Master发送,内容是priority和MAC,做比较
比赢的角色变为Master,比输的角色状态切换为Recovery,将自己的除了堆叠线缆以外的所有业务端口全部阻塞掉
MAD报文发送的场景:1、平时不发,出现脑裂,高频周期发送2、低频周期发送(HUAWEI方案)
12、MAD检测
1、多主检测MAD(Multi-Active Detection):一种检测和处理堆叠分裂的协议,链路故障导致堆叠系统分裂后,MAD可以实现堆叠分裂的检测,冲突处理和故障恢复,降低堆叠分裂对业务的影响
2、MAD检测方式有两种:直连检测方式和代理检测方式,在同一个堆叠系统中,两种检测方式相互排斥,不可以同时配置
13、堆叠升级
堆叠升级的方式有三种:智能升级,传统升级,平滑升级
智能升级:堆叠建立或者新的交换机加入堆叠时会自动和主交换机的版本进行同步
传统升级:和普通设备一样,指定下次启动版本,重启整个堆叠系统进行升级,会造成较长时间的业务中断
平滑升级:将堆叠系统划分为active,backup区域,可以分区域升级,整个堆叠系统的上下行采用备份组网,主备链路分别处于actice,backup区域,可以实现升级时的业务不中断
跨设备的链路聚合
堆叠支持跨设备链路聚合技术,堆叠后成为逻辑上的一台交换机,支持将Eth-Trunk的成员接口分布在不同成员交换机上
当其中一条聚合链路故障或堆叠中某台成员交换机故障时,Eth-Trunk接口通过堆叠线缆将流量重新分布到其他聚合链路上,实现了链路间和设备间的备份,保证了数据流量的可靠传输
IP组播基础
MDT中的组播路由器每一台设备都会判断出针对不同的组播源泛洪下来的流量:
上游接口(uptream interface)--接收组播流量的接口/离组播源最近的接口 有且只有一个
下游接口(downstream interface)--转发组播流量的接口 可以多份/也可以没有
组播场景中,可以认为控制层面和数据层面是并行的;只有有了业务流量才会记录相关的表象,如组播分发表象(display mylticast routing-table),PIM路由表(display pim routing-table)可以认为组播协议控制层面的表项只是做业务流量转发的记录,并不是指导业务流量的转发
特点
业务流量是基于UDP封装的,会继承UDP所有的特点:面向无连接,尽力而为的传输,没有拥塞避免(Qos),重传的机制,也可容易出现乱序(RTP)
部署组播的流程
1、部署单播
2、组播路由器开启组播功能(multicast routing-table)
3、FirstHop的上下游接口和LastHop的下游接口的设备开启组播路由功能(PIM=Protocol Independent Multicast)
4、LastHop和Receive之间,Lasthop MR运行IGMP(Internet Group Mangement Protocol)用来维护组播接收者和组的对应关系
组播数据报文结构
组播数据报文的结构与单播报文类似,但组播数据报文的目的MAC地址与目的IP地址与单播报文有很大的差异
组播目的IP地址:目的IP地址为组播IP地址,地址范围224.0.0.0到239.255.255.255
组播目的MAC地址:目的MAC地址为组播MAC地址,组播MAC地址由组播IP地址映射而来
Ethernet II | IP | UDP | Payload | FCS
smac=组播源服务器的MAC地址 dmac=0100-5e0*_****前25bit固定的。后23bit取决于组播IP地址的
sip=组播源服务器的ip地址 dip=组播服务器的组播组地址
组播组地址:D类=224.0.0.0/4
224.0.0.0-224.0.0.255 知名组播组地址
239.0.0.0-239.255.255.255 私有组播组地址,本地有效
224.0.1.0-231.255.255.255 ASM(Any Source Multicast)
233.0.0.0-238.255.255.255
232.0.0.0-232.255.255.255 SSM(Specific Source Multicast)
组播网络基本架构
组播网络大体可分为三个部分:
源端网络:将组播源产生的组播数据发送至组播网络
组播转发网络:形成无环的组播转发路径,该转发路径也被称为组播分发树(Multicast Distribution Tree)
成员端网络:让组播网络感知组播成员位置与加入的组播组
组播服务模型
组播组成员在接收组播数据时可以对组播数据源进行选择,因此产生了ASM(Any-Source Multicast,任意源组播)和SSM(Source-Specific Multicast,指定源组播)两种组播服务模型
ASM:组成员加入组播组后,组成员可以接收到任意源发送到该组的数据
SSM:组成员加入组播组后,组成员只会收到指定源发送到该组的数据
组播协议
组播网络需要基于多种组播协议才能建立转发路径
工作在成员端网络的主要是IGMP(Internet Group Mangagement Protocol,因特网组管理协议)协议,用于告知组播网络,组成员的位置与所加组播组
工作在组播转发网络的协议主要有:PIM,MSDP,MBGP
PIM:(Protocol Independent Multicast,协议无关组播)协议主要作用是生成AS域内的组播分发树
MSDP(Multicast Source Discovery Protocol,组播源发现协议)主要作用是帮助生成AS域间的组播分发树
MBGP(Multicast BGP,组播BGP)主要作用是帮助跨域组播流进行RFP校验
IGMP原理与配置
组播接收者如何加入到某一个组--下游接口生成的方式
方法1--动态加组 主动发送igmp report
方法2--静态加组 Lasthop MR 连接接收者的接口静态加组
ASM模型运行--IGMPv1/v2
SSM模型运行--IGMPv3
强制将ASM更改为SSM=IGMPv1/v2 Report带组播源服务器的地址,必须要在IGMPv1/v2使能IGMPv1/v2 ssm-mapping功能,需要管理员手工配置;
LastHop MR连接接收者有两种方案:
方案1:pim和igmp同时配置,注意igmp version,通用
方案2:接收者是igmpv2的接收者时,最后一跳路由器不运行pim,华为特有
IGMPv1基本概念
IGMPv1主要基于查询和响应机制完成组播组管理
查询和响应机制由两种报文实现:
普遍组查询报文(General Query):查询器向共享网络上所有主机和路由器发送的查询报文,用于查询哪些组播组存在成员
General Query(0x11):LH向Receive发送,每60s一次 224.0.0.1 查询组号 0.0.0.0
成员关系报告报文(Report):主机向查询器发送的报告报文,用于申请加入某个组播组或者应答查询报文
Report(0x12):Receive向LH发送,告知加入组的情况 231.1.1.1
主动发,想加入某组
被动响应Query,一个组的成员只发送一次,响应抑制(MRT随机)
悄悄离组:130S=2*60S+MRT MRT不可调,以S为单位
Querier选举:依靠PIM的DR,先比Priority,后比接口IP,比大
1、Asser机制的WINNER IGMPv2 IGMPv3
2、PIM的DR IGMPv1
由于IGMP报文时组播报文,因此一个多路访问网络里只需要一个组播路由器发送查询报文即可,该组播路由器被称为IGMP查询器(Querier)
IGMPv2基本概念
IGMPv2改善了IGMPv1的缺陷
IGMPv2组成员加组机制与IGMPv1基本相同
IGMPv2增加了离开机制
IGMPv2增加了查询器选举机制
IGMPv2能与IGMPv1兼容
IGMPv2报文格式
为了改善组成员离开机制,IGMPv2新增了两种报文:
成员离开报文(Leave):成员离开组播组时主动向查询器发送的报文,用于宣告自己离开了某个组播组,成员离开报文,目的地址为224.0.0.2
特定组查询报文(Group-Specific Query):查询器向共享网段内指定组播组发送的查询报文,用于查询该组播组是否存在成员,特定组查询报文目的地址为所查询组播组的组地址
IGMPv2对普遍组查询报文格式做了改进,添加了最大响应时间(Max Response Time)字段,此字段取值可以通过命令配置,用于控制成员对查询报文的响应速度
SSM模型
IGMPv1与IGMPv2报文中均无法携带组播源的信息,因此,无法配合SSM使用(可使用SSM Mapping功能解决这个问题)
IGMPv3主要是为了配合SSM(Source-Specific Multicast)模型发展起来的,提供了在报文中携带组播源信息的能力,即主机可以对组播源进行选择
在IGMP当中,为什么取消成员关系报告抑制的功能
1、Report功能加强了(包含Include/Exclude),状态机制简单了,可以做到想发就发,不受限制
2、当在存在交换机的环境中,并且交换机开启了IGMP Snooping ,接收者接收到Querier发送的Query报文的时候,每个接收者都可以回送Report,消息可以被其他成员接收到,用于刷新Snooping表
3、IGMPv3具备跟踪成员的功能,强制要做到每个接收者发送的Report都要被记录
4、IGMPv3每个接收者都会对源有要求
IGMPv3相比于其他IGMP版本的不同
IGMPv3相比于其他IGMP主要的改动就是对主机源的过滤功能,其他功能如下
路由器维护的状态包括组播组和组播源地址,而非仅像IFMPv2那样仅含组播组地址,IGMPv3中接口状态可标识为(G,过滤模式,源列表)
查询者发送查询报文包括robust-count和Query Interval,Other-Querier-Timer=robust-count*Query Interval+MRT/2,查询这可用其他非查询者路由器
主机报告目标地址为224.0.0.22,以方便二层交换机Snooping
IGMP各版本之间的差异
机制 IGMPV1 IGMPV2 IGMPV3
查询器选举 依靠其他协议 自己选举 自己选举
成员离开方式 静默离开 主动离开 主动离开
特定组查询 不支持 支持 支持
指定源,组 不支持 不支持 支持
版本兼容性 IGMPv1 IGMPv1,IGMPv2
IGMP Proxy介绍
现网中可能存在一台IGMP查询器需要管理大量组成员的情况,大量成员主机频繁加入/离开组播组产生大量的IGMP成员关系报告/离开报文。从而给IGMP查询器带来较大的处理压力
通过IGMP Proxy功能可减少IGMP查询器接收IGMP成员关系报告/离开报文的数量。减轻IGMP查询器压力
IGMP Proxy通常被部署在IGMP查询器的成员主机之间的三层设备上
IGMP Proxy基本概念
两种接口:
主机接口(Host Interface):IGMP Proxy设备上配置IGMP Proxy功能的接口,该接口一般面向IGMP查询器
路由器接口(Router Interface):IGMP Proxy设备上配置IGMP功能的接口,该接口一般面向组成员
PIM原理与配置
PIM(Protocol Independent Multicast,协议无关组播)协议的主要作用就是构建组播分发树
版权说明:如非注明,本站文章均为 扬州驻场服务-网络设备调试-监控维修-南京泽同信息科技有限公司 原创,转载请注明出处和附带本文链接。
请在这里放置你的在线分享代码