100台路由器
如何选择IGP
可选的IGP有OSPF 、ISIS、RIP
首先不建议选择RIP,RIP的缺点:
1、基于跳数做开销计算,没有根据带宽计算,容易产生次优路径
2、最大跳数才16条,这个网络规模不太支持
3、收敛速度慢,间接故障需要180s收敛时间(两台路由器中间的交换机down了,是间接故障,不适合触发更新,所以要等180s才能收敛)
4、在广域网链路上周期更新占用链路带宽资源
但是RIP的有点:
1、配置简单,方便管理
2、不用维护LSDB,占用系统CPU资源少
3、对比静态路由能动态感知网络变化
接下来对比ISIS和OSPF,两种协议都是链路状态协议,支持的路由条目也都很多,都支持部署层次化网络,要使用需要根据实际情况来判断。
进行OSPF和ISIS的对比
两者共同点:
1、都是通过收集LSA/LSP来补全自己的LSDP进行SPF算法
2、都支持多区域层次化的网络部署,适合大型网络拓扑
3、都是通过DR/DIS来收集并更新链路状态信息
OSPF的优点:
1、有更丰富的区域类型(特殊区域stub、totalstub、nssa、totalnssa),性能差的设备可以放在特殊区域,减轻设备的压力
2、支持更多的网络类型(P2P、MA、NBMA、P2MP)
3、分内外部路由,可以根据需求改内外部路由管理距离内部路由默认优先10,外部路由默认优先150
4、OSPF的虚连接可以实现链路冗余和备份、流量优化
5、LSA的种类更丰富(域内、域间、域外),可以精确的控制路由信息
6、企业网络管理人员对OSPF更熟悉
ISIS的优点:
1、支持路由条目多,ISIS有虚拟系统的概念,可以分50个虚拟系统,每个虚拟系统有256个LSP分片
2、有level-1和level-2区域,支持层次化部署
3、可以通过TLV来扩展支持不同的网络层协议
4、平滑迁移,一个IS-IS进程下最多可配置3个区域地址,进行区域迁移可以平滑迁移
5、收敛速度快(通过ISPF和RPC算法进行快速收敛,还有智能定时器,可以在毫秒的时间间隔内触发计算路由,还可以在拓扑动荡时,增加间隔时间,避免过渡大量占用CPU资源)
总结:
推荐将性能较差的设备设置在边缘网络或末节网络,或者配置静态路由(使用BFD和NQA联动检测静态路由状态),还可以使用OSPF的特殊区域和ISIS的level-1区域,可以有效的减轻边缘设备的压力
对于OSPF来说更适合层次化的网络划分,可以将性能好的设备放在骨干区域,性能一般的防止在普通区域,性能差的放在特殊区域减轻设备性能,一般在企业网中应用
对于ISIS来说虽然也可以划分层次化网络,但是level-1可能造成次优路径,需要做路由泄露,所有ISIS更适合扁平化的level-2区域的网络部署,一般在运营商中应用较多
6台路由器组网
两种拓扑都是主要用于大型网络中,确保其设备冗余及链路冗余,进而保障对业务的不中断影响。
日字型组网:
优点:
1、 成本开销:相比米字型组网节约成本,比如板卡、线缆、安全接入设备、IP地址资源
2、冗余度:具有一定的冗余性
3、适合设置为主备方式,流量走向清晰,没有太多冗余链路
4、管理维护:网络结构简单清晰,易于管理和维护以及后期的排障,后期扩容比较容易实现
5、场景:适用于企业网各站点之间的广域网互联
缺点:
1、冗余度不够,可能会出现多点故障,导致网络瘫痪
2、当出现网络故障的时候,路径可能不是最优
3、由于互联链路较少,多条流量走一条链路,会导致网络品质下降
米字型组网:
优点:
1、冗余性:有链路和设备的冗余,冗余度比日字型更高,存在大量的冗余链路
2、流量模型:互联链路较多,适合于负载分担模式
3、管理维护:任何节点互访都是最优路径,故障收敛快,当发生单点故障后有最优路径,网络质量不受影响
4、场景:多应用于企业网内部核心和汇聚层之间的互联组网
缺点:
1、成本开销,相比日字型更需要成本,比如链路和IP地址资源,后期扩容也需要更多成本
2、网络结构比较复杂,三层链路存在多个邻居关系,二层链路STP计算更加复杂,增加了日常管理维护的难度以及排障的复杂性
3、完全接入设备的部署比较麻烦
4、冗余过多会导致路径过多,可能存在来回路径不一致的问题(流量可能会被安全设备认为半拦截,进行阻断,不好排错,可能会单向阻塞)
主流的组网方式:核心CSS加防火墙HRP架构
一般汇聚到核心层用米字型组网,核心层到防火墙用日字形组网
如果有来回路径不一致
1、如果网络中有安全设备,就会被安全设备认为半连接,从而阻断
2、出现问题时,对排障会困难
大型切割
分为四个流程:
1、前期调研
了解用户的背景、业务类型、业务特点
了解用户的需求和变更目的
调研现网的网络情况、拓扑情况、流量走向、路由规划
变更后的网络情况、拓扑情况、流量走向、路由规划
变更过程中的人员职责以及安排以及联系方式
割接计划设定,精确到每一步操作的时间点和操作完成的时间
指定变更前和变更后的测试方案
指定回退方案,在规定时间内未按照割接计划完成则认为是割接失败,则进行回退,回退后还要进行测试
割接失败要采集信息,总结失败,避免再次割接失败
2、切割前准备
割接前方案评审
设备登录方式确认
设备软件版本的确认以及准备
检查新设备的健康
对割接人员的安排
割接前对现网进行测试、
对现网进行备份,避免割接失败无法回退
实施前做好状态检查和快照
3、切割实施
按照割接方案执行操作
每完成一步操作对配置和状态进行检测,确认是否生效和正常
割接操作过程记录LOG
割接完成按照测试方案测试
割接失败按照回退方案回退
回退后需要进行测试是否正常
4、切割后保障
割接完成后一般要进行守局保障,万一割接异常可以第一时间进行排查和定位
割接完成后对运维人员进行新网络的培训
硬割接和软割接
业务层次:有冗余不影响业务称为软割接,无冗余影响业务称为硬割接
时间窗口是计划割接总共用的时间
割接时间是实际割接总共用的时间
串行割接和并行割接
网络设计层面:从核心到汇聚再到接入或反之是串行割接,不分层是并行割接
实施节点层面:从各个节点依次割接是串行割接,多个节点同时进行割接是并行割接
守局:割接完成后需要观察的时间,看情况而定如果割接范围大可能会增加值守时间
快照:当前设备运行状态的备份
怎么判断是否需要回退:我觉得如果当前操作出现了无法解决的问题,或者对现有业务造成了一定的影响,作为前线工程师,我只能给出技术性的判断,具体情况需要第一时间与项目经理沟通,由项目经理与客户共同决定是否回退
回退失败该怎么做:先冷静下来,尽可能查找故障原因,将现场情况和自己的分析原因和技术负责人交流,采集相关信息和设备配置,路由表,以及日志信息,联系原厂技术支持,请求远程协助,要和客户沟通承认回退失败,并安抚客户,表现出负责到底的态度。
网关放在接入还是汇聚
技术层面考虑:网关放在接入层和汇聚层在技术上都可以实现
安全层面考虑:放在接入层可以把广播域控制在一台交换机中,广播域减小,如果放在汇聚层的话,广播域会覆盖多台接入交换机广播域会变大,安全性会变差,一般网络攻击都是发生在二层网络同一广播域当中,比如ARP攻击,产生大量的广播包,导致网络阻塞,CPU处理不过来,会影响汇聚层的其他交换机,导致整个网络出现问题。
网络可靠性:网关放在汇聚层中可以做网关冗余,通过配置vrrp模拟一个虚拟网关地址,当主机在物理网关出现故障时,能自动切换到其他网关访问上层流量,还可以用vrrp做负载均衡
成本:汇聚层只需要二层交换机,成本低,接入层就需要三层交换机,成本高,客户还需要规划设备与设备之间互联的IP地址
客户体验:接入层的三层交换机选路,可以通过路由策略和策略路由进行控制,可控性好,可以达到不同业务走不同链路的效果,汇聚层的二层交换机选路,可控性相对较差
维护:接入层故障定位方便,汇聚层难以定位故障
数据中心部署网关:
分布式网关:在spine-leaf的胖树结构中,网关部署在接入层的leaf上面
集中式网关:在spine-leaf的胖树结构中,网关部署在汇聚层的spine上面
园区网、办公网一般部署在汇聚层(可以使用vrrp做网关冗余,主机迁移不需要更改IP相关参数,架构简单,维护方便)
数据中心一般适合部署在接入层
边缘端口的应用
rstp的edge port
边缘端口的作用:
1、在端口up后立即进入转发状态,不需要等待2倍的转发延时(30s)就可以转发流量
2、P/A机制,边缘端口不阻塞,可持续进行流量转发
3、边缘端口UP时,不触发TC机制
STP配置边缘端口的场景
场景1、可以使DHCP客户端快速获取IP地址,避免DHCP在一定的时间中没有获得DHCP服务器分配的IP地址,会自动使用169.254开头的掩码16位的地址,DHCP就不会再请求IP了
场景2、当连接了重要服务器时,当两台交换机链路恢复,就会进行P/A机制,如果没配置边缘端口就会被阻塞,需要30s才能转发。
场景3、当网络中有大量终端,频繁上下线会产生TC置位的BPDU,没有配置边缘端口会频繁删除自己的MAC表项和ARP表项,产生大量未知单播报文,在网络中泛洪,影响网络性能。
场景4、边缘端口可以开起bpdu保护,当收到用户发送的BPDU攻击时,会将端口down掉而不是失去边缘端口的特性,之后可以由管理员手工开起或配置超时时间,等待自动开起。
当边缘端口接收到bpdu报文会失去边缘端口的特性
临时环路会由bpdu发送间隔、网络传输延迟、CPU处理延迟造成
stp的端口被设置为边缘端口还是会发送bpdu可能会导致网络动荡,可以使用 stp bpdu-filter enable 指令使边缘端口不发送不处理bpdu
边缘端口不会发送TC置位的BPDU
max-age 20s
hello-time 2s
forword-delay 15s
STP的保护机制
1、跟保护(指定端口)
网络中的恶意攻击,跟桥可能会收到优先级更高的RST BPDU,导致跟桥地位被抢占,从而引起网络拓扑的错误变动。
当开起跟保护,当收到更高优先级的RST BPDU端口将进入Discarding状态,不再转发报文,在经过2倍Forward delay的时间内没有再次收到优先级更高的RST BPDU后会变为正常的转发状态。
2、TC-BPDU保护
设备在收到TC置位的BPDU的时候会清楚自身的MAC表和arp表项,如果有人恶意伪造TC置位的BPDU并且大量发送,会导致网络拓扑动荡,给设备很大的负担。
当开起TC-BPDU保护后可以设置在规定时间内只处理TC BPDU的数量,超出的数量会在规定时间结束后算作一次TC BPDU处理。
3、BPDU保护
正常情况边缘端口不会收到用户发送的BPDU报文,当有用户恶意使用BPDU攻击,那么边缘端口就会变成非边缘端口,重新计算生成树,导致网络动荡。
当开起BPDU保护,边缘端口收到BPDU报文后不会变成非边缘端口,而是端口会down掉,等待管理员手动开起或等待配置了的超时时间,还可以解决临时环路的问题。
4、环路保护(根端口或A口)
根端口和阻塞端口是不断接收上游设备的RST BPDU的,由于链路发生故障而导致这些端口收不到上游的RST BPDU后,会重新选举根端口,原先的根端口会变成指定端口,原先的阻塞端口可能会变成转发状态,可能会产生环路。
当开起环路保护后,根端口和Alternate端口长时间收不到来自上游的RST BPDU会向网管发出通知消息,根端口会变成Discarding状态,阻塞端口继续阻塞,直到收到来自上游的RST BPDU才会恢复原状。
P/A机制
Proposal/Agreement机制,其目的是使一个指定端口尽快进入Forwarding状态。
在选举过程中加入了 发起请求-回复同意 为了防环路 和不需要被动等待计时器超时 进行状态改变
为了加快收敛 当RP端口down掉后AP端口马上变成转发状态
交换机上连接终端设备的接口设置成为边缘端口后,会立即进入转发,当该端口收到BPDU后,就丧失了边缘端口属性,成为普通STP端口,并重新进行生成树计算
边缘端口的端口类型为什么
边缘端口的端口类型为DP指定端口,因为每个链路上都需要一个DP口,而边缘端口在自己的链路上没有收到比自己更优的RST BPDT,所以边缘端口的端口类型为DP口
RSTP和MSTP的兼容
是可以互相兼容的
RSTP/STP会将MSTP发来的MST BPDU中的{总根、外部路径开销、域根ID、指定端口ID}作为RSTP/STP的{RID、RPC、BID、PID}
MSTP会将RSTP/STP发来的BPDU值的{RID、RPC、BID、PID}对应到MSTP当中,BID作为域根ID,也作为指定交换机ID,内部根路径开销为0
TC While
在RSTP中非边缘端口变为转发状态就算拓扑变化,当发生拓扑变化就会做出以下操作:
1、为本交换设备的所有非边缘指定端口启动一个TC While Timer,这个计时器是2倍的Hello Time(4s)。
2、这个时间段之内,会清空状态发生变化的端口上学习到的MAC地址,并由变化的端口向外发布TC置位的RST BPDU,一旦超过4s则停止发送。
3、当收到TC置位的RST BPDU后会清空自己的MAC地址表和ARP地址表,然后向除了接收到TC-BPDU和边缘端口的端口开起TC While,这样网络中就会泛洪TC-BPDU。
Loopback Detection
环回口检测是通过周期发送环回检测报文来检测设备下挂的网络是否有环路,从接口定时发送检测报文,检测该报文是否会从发出的接口接收到。
网络拓扑优缺点和场景
环形拓扑
将网络设备连接成一条线,然后首尾两台设备之间进行互联,形成一个环形
具有一定的冗余性,当一个方向的链路故障了,还有另一个方向可以用于通信
但是可扩展性差
管理和维护相对比较复杂
应用场景在接入层和汇聚层之间,可以在汇聚层和核心层之间
星型拓扑
将多台终端设备或者网络设备连接到一台网络设备上
优点:
1、结构简单,便于管理和维护
2、控制简单,便于建网
3、方便故障检测与隔离
4、终端之间互访时,效率高
缺点:冗余性差,容易出现单点故障
场景:用于接入层,接入大量终端设备,用于下级网络与上级网络互联
网状型拓扑
网络中每台设备之间均有链路连接
优点:
1、网络冗余性高
2、选路更加灵活
3、网段之间进行互访时访问效率较高
缺点:
1、组网成本高(需要IP地址资源多)
2、可扩展性差(如果新加一个路由器则需要更多的互连链路)
场景:可用于接入层和汇聚层间、汇聚层和核心层间
树型拓扑
将网络中的设备连接为树的形状
优点:
1、方便扩展
2、网络层次结构分明
缺点:
1、冗余性差
2、选路灵活性差
总线型拓扑
所有节点只使用总线传输数据,任何一台设备发送数据所有设备都会收到
优点:
1、总线结构所需要的电缆数量少,线缆长度短,易于布线和维护
2、传输速率高,可以达到1~100Mbps
3、易于扩展,总线结构简单,增加或减少设备方便
4、多个设备共用一条传输通道,利用率高
缺点:
1、总线的传输距离有限,通信范围收到限制
2、故障诊断和隔离比较困难
3、同一时间只能有一台设备传输
使用CSMA/CD技术来检测冲突
1、先听后发(监听总线上是否有其他设备传输,如果在一段时间内没有其他设备发送,则自己发送)
2、边听边发(如果多台设备在同时传输则会产生冲突,导致数据损坏)
3、冲突停发(在传输时会监听是否有其他设备传输,如果有则停止传输,并向总线发送“拥挤”的信号提醒其他设备)
4、随机延时后重发(在停止发送一段时间后,会重新发送)
防止二层环路
STP、smart-link、链路聚合、堆叠
smart-link双上行组网
会有一条主链路和备用链路,备用链路处于阻塞状态,当主链路故障,会把主链路阻塞,备用链路进入转发状态
堆叠
将多台设备看成一台逻辑设备,提高可靠性和性能(横向堆叠,同层的设备堆叠。纵向堆叠,不同层的设备堆叠)
三层交换机和路由器的区别
1、路由器的三层转发主要依靠 CPU 进行,而三层交换机的三层转发依靠 ASIC 芯片完成
2、路由器相比交换机有更丰富的接口类型(比如以太网口,WAN口,POS口),良好的流量服务、等级控制、负载分担、链路备份,
3、路由器更适合于数据交换不是很频繁的不同类型网络的互联(局域网与互联网互联),三层交换机适合于数据交换频繁的局域网中
4、路由器收到免费报文会直接处理(刷新对应IP地址的ARP信息),而三层交换机收到免费报文会泛洪到同一广播域再处理
不同网络的主机之间互访
(同一valn)A在发送数据前,会将自己的IP地址和B的IP地址进行对比,如果位于同一网段,那么A会向B发送ARP请求,B收到A的ARP请求后会向A发送ARP答复,A获得B的MAC地址,然后用对方的MAC地址作为报文的目的MAC地址进行发送
(不同valn)A发现与B的IP地址不在同一网段,会发送数据给网关,发送ARP请求来获取网关IP地址对应的MAC,用网关MAC作为报文的目的MAC进行报文发送,源IP是A,目的IP是B。
三层交换机中的主要部分
ASIC:完成主要的二三层转发功能,内部包含用于二层转发的MAC地址表以及用于IP转发的三层转发表硬件表项
CPU:用于转发的控制,维护的软件表项
三层交换机转发原理
1、主机通过ARP知道了三层交换机上vlanif接口的MAC地址(网关MAC),就可以发送不同网段的单播数据帧
2、三层交换机收到单播帧后会根据目的MAC地址和vlan id进行MAC地址查询,如果发现匹配到自身三层vlanif接口MAC地址,就进行三层转发,会去查找ASIC的三层转发表项
3、ASIC的三层转发表项中有对应的出接口,就进行硬件转发,如果ASIC的三层转发表项中没有查找到,就将报文上送给CPU进行软件处理
4、CPU根据目的IP地址查找软件路由表,发现匹配一个直连网段,就会继续查找软件ARP表找到该目的IP的MAC地址,ARP表中如果没有,交换机就会在目的网段对应的vlan的所有端口发送请求目的IP地址对应的MAC的ARP请求
5、三层交换机收到ARP回复后,会记录该目的IP对应的MAC地址在ARP表中,并完成单播封装,将报文由交换机继续转发给目的主机,其中报文的源MAC地址由发送的主机改为三层交换机MAC地址,目的MAC地址由网关的MAC地址改为目的MAC地址,并在ASIC的三层转发表项添加刚才得到的转发信息(目的MAC、出接口、vlan、出端口)
三层交换机的特点
1、首次由CPU转发,转发后会建立ASIC硬件表项,后续由ASIC硬件表项转发,称为“一次路由、多次交换”
2、ASIC硬件表项不关心路由的具体下一跳IP地址是多少,ASIC硬件表项中只包含了目的地址、网关、下一条IP对应的MAC、VLAN、端口号。
3、IP报文每经过一个三层设备,它的源目IP地址不会改变,改变的是源目MAC。
三层交换机适合用于数据交换频繁的局域网中
传输层的五元组
源目端口、源目IP、协议号
如何避免路由器CPU负载过高
可以汇总路由,减少路由器计算路由的次数
可以在OSPF中,使用特殊区域减少区域内的LSDB规模
二层和三层的转发
二层转发的情况:
收到数据帧,查看目的MAC地址,发现目的MAC地址不是自己,那么就会根据目的IP地址,查看MAC地址表,进行二层转发
三层转发的情况:
收到数据帧,查看目的MAC地址,发现目的MAC地址是自己,就会解封二层,读取三层然后根据目的IP地址查看三层转发表
交换机的组播转发
二层转发的情况:不能开启PIN-SM或者IGMP-snnoping的功能,此时,交换机收到组播数据帧,会直接泛洪出去
三层转发的情况:
1、如果开起了PIN-SM,收到组播数据帧,会查看组播转发表进行转发(S,G表项)
2、如果开起了IGMP-snooping,收到组播数据帧,会根据二层组播转发表项,从相应的成员端口转发出去(二层转发表有路由端口、成员端口、组播IP地址)