一、各种概念
STP四个比较向量(原则)
- Root BID
- RPC (root path cost)
- 发送者桥 ID
- 发送者端口 ID
MSTP域根 、总根、主桥的概念
- 域根: 域内根桥(只在域内有效)(regional root)包括两个 IST 域根 和 MSTI 域根
- IST 域根: 在 MST 域中,距离总根最近的交换机。或者说 IST 中距离总根最近的交换机。在 CIST 中才会显示:RegRoot。
- MSTI 域根: 每个 MSTI 实例各自的根桥(选举时只管域内即可),域中不同的 MSTI 实例有各自的域根。
- 总根: CIST 的根桥,整个交换网络里面桥 ID 最小的交换机。
- 主桥: (master bridge) 域内距离总根最近的交换机,在普通的 MSTI 实例中才会显示 主桥。
LCP 链路参数协商字段
1 MRU (最大接收单元,取两端较小值,不算 PPP 头 最大接收单元也是 1500 字节)
2 认证类型 (只有认证端发送的 LCP:config-request 才会携带认证类型)
3 魔术字 (随机产生数字,如果收到 LCP 报文和自己本地产生一样则认为有环路,如果发 现环路则意味 LCP 协商失败从而进入 dead 状态 然后从头再来)
4 MP 协商多链路
5 压缩 (tcp/ip 报头压缩 相同 tcp 头和 ip 头内容进行压缩,并非数据压缩)
IPV6地址分类
IPV6 NDP协议
NDP使用的ICMPv6报文
IPV6过渡机制
EUI 64规则
ISIS IPV6新增字段
1 IPv6 中新增两个 TLV 和一个新的 NLPID
2 Isis 多拓扑(MT)(Muti-Topology)
- IPv6 Reachability TLV [Type 236] [0xEC]
- IPv6 Interface Address TLV [Type 232] [0xE8]
BGP IPV6新增字段
- 地址族协商 建立邻居时 open 报文 可选参数能力协商 AFI SAFI
- 新增两个属性
1、MP_REACH_NLRI
2、MP_UNREACH_NLRI
各路由协议的底层协议
开始之前,我们先回顾一下前面说到的各种路由协议的封装方式
协议 | 封装方式 | 端口/协议号 | 可靠性保证机制 |
---|---|---|---|
RIP | UDP | ipv4 UDP 520 ipv6 UDP 521 RIP的端口很浪漫哈哈呦 | 只能周期性泛洪 |
OSPF | IP | IP协议号89 | Sequence Number确认 LSR和LSACK确认 |
ISIS | 数据链路层 | 目的MAC地址 L1:0180-c200-0014 L2:0180-c200-0015 | PSNP确认报文 |
BGP | TCP | TCP 179 | TCP自带确认机制 |
各种路由协议的更新机制
协议 | 更新计时器 |
---|---|
OSPF | 1800s更新,3600s失效 |
ISIS | 900s更新,1200s失效 |
BGP | 触发更新,没有变化不会周期更新 |
BGP选路原则
前提:如果此路由的下一跳不可达,忽略此路由
P
:优选协议首选值(PrefVal)最高的路由L
:优选本地优先级(Local_Pref)最高的路由L
:本地始发优先,本地始发优于从对等体学习的路由A
:优选 AS 路径(AS_Path)最短的路由O
:比较 Origin 属性,依次优选 Origin 类型为 IGP、EGP、Incomplete 的路由M
:优选 MED 值最低的路由(来自相同 AS(即上一个 as 相同),可命令忽略)E
:优选从 EBGP 邻居学来的路由(EBGP 路由优先级高于 IBGP 路由)I
:优选到下一跳 IGP Metric 较小的路由- 前 8 条一样可以开启负载分担(as_path 一模一样,可命令忽略)
- 优选 Cluster_List 最短的路由
- 优选 Originator_id 最小的路由
- 优选 Router ID 最小的路由器发布的路由
- Peer的IP地址
BGP属性
BGP 路由属性是一套参数,它是对路由的进一步的描述
类型 | 包含属性 | 描述 |
---|---|---|
公认必遵 (3条) | 1、Origin 2、Next-hop 3、As-path | 所有 BGP 路由器都必须识别 且必须存在于 Update 消息中 如果缺少这种属性,路由信息就会出错 |
公认任意 (2条) | 1、Local_Pre、 2、Atomic_aggregate | 所有 BGP 路由器都可以识别 但不要求必须存在于 Update 消息中 即就算缺少这类属性,路由信息也不会出错 |
可选过渡 (2条) | 1、Community 2、Aggregator | 在BGP 对等体之间具有可传递性的属性 BGP 路由器可以不支持此属性,但它仍然会接收这类属性,并传递给其他对等体 |
可选非过渡 (3条) | 1、Multi_Exit_Dis 2、Cluster_list 3、Originator_id | 如果 BGP 路由器不支持此属性 则相应的这类属性会被忽略,且不会传递给其他对等体 |
MPLS 体系中的各种表
QOS的各种队列和令牌桶算法
CIR(Committed Information Rate)
:承诺信息速率
CBS(Committed Burst Size)
:承诺突发尺寸,表示C 桶的大小
EBS(Extended burst size)
:超额突发尺寸,表示E 桶的大小
PIR(Peak Information Rate)
:表示峰值信息速率
PBS(Peak Burst Size)
:表示峰值突发尺寸
CIR=CBS/△T
CBS:令牌桶(C 桶)的大小 (该桶最多可以放多少令牌) △T :时间周期 一个△T 周期内将令牌桶填满
TC
:Time CBS 当前时间内令牌桶(C 桶)中令牌的大小
TE
:当前时间 E 桶大小
TP
:当前时间 P 桶大小
二、各种建联过程
PPP建联过程
PPPOE建联过程
OSPF邻居建立过程
ISIS邻居建联过程
BGP邻居建立过程
LDP邻居建立过程
DHCP获取地址过程
三、各种协议报文结构和类型
IPV4报头结构
IPV6报头结构
OSPF & ISIS报文类型
OSPF LSA类型
OSPF LSA 1 字段
OSPFv3 LSA类型
BGP报文类型
报文 | 功能 |
---|---|
Open 报文 | 协商 BGP 参数 |
Update 报文 | 交换路由信息 |
Keepalive 报文 | 保持邻居关系 |
Notification 报文 | 差错通知 |
Route-Refresh报文 | 用于在改变路由策略后请求对等体重新发送路由信息 refresh bgp all import ORF (出向路由过滤) |
MPLS标签结构
四、各种奇葩问题
OSPF不同网络类型建邻居的情况
影响OSPF邻居建立的因素
- RouterID不能重复
- 区域ID需一致
- 认证匹配
- MA网络里面,Netowrk的掩码长度需要一致
- 区域类型需要一致
- Hello,Dead计时器时间需要一致
- MTU检查如果开启的话,接口MTU需要一致
- 未配置静默端口
- 链路两端网络类型需一致(P2P MA等)
- MA网络中,路由器接口优先级不能全是0
ISIS 邻居建立不成功的原因
- Level 类型
- system id
- 认证
- MTU
- 接口网络类型
- 必须同一子网,但掩码可以不一致(直连可达,不传掩码 只传接口 ip,收到后用 ip 和自己接口进行匹配)
- 2-way 和 3-way 可以建立邻居(针对 PPP 网络类型,3-way 兼容 2-way,但 3-way only 不兼容 2-way.点到点网络默认 3-way 兼容模式)
- cost-type 开销类型 (宽度量和窄度量)可建邻居但无法传递路由 窄度量范围:0-64 (不能携带 tag)
宽度量范围:0-2^24 (打 tag)
影响BGP邻居建立的因素
先记住一句话,一切影响 tcp 连接建立的都会影响 bgp 邻居的建立!
- 版本(默认 v4)
- AS号 (不能 peer 错)
- router-id 不能冲突
- 179 号端口被禁止
- Peer 地址可达性
- 认证
- connect-interface (收到报文的源地址必须和 peer 的地址相同)
- EBGP之间建立邻居关系超过1跳,且未指定多跳
OSPF 和 ISIS 比较
常见的永久组播地址
224.0.0.1
所有节点
224.0.0.2
所有路由器
224.0.0.5
OSPF
224.0.0.6
OSPF(DRother 发给 DR)
224.0.0.9
RIP
224.0.0.13
PIM
224.0.0.18
VRRP
224.0.0.22
IGMPV3