你最关心的来了 报文如何丢弃、如何处理?

艺博东

共 7698字,需浏览 16分钟

 ·

2021-04-29 08:30

28e81408525dd32d5a0183a6a319b677.webp

点击上方“蓝字”关注我们

我是艺博东 ,一个思科出身专注于华为的网工。

5a910dbb1dbcc40e23273877dc7dbdd5.webp
a8fd24aff18dec899323944cde3ffa4b.webp

文章目录



    • 二层,没有mac表项或者黑洞mac

    • 2.5层,没有lsp,或者黑洞lsp

    •  MPLS VP# 汇总

    •   MPLS VP# 汇总拓扑

    •   MPLS VP# 汇总简单配置与分析

    • 三层,没有路由表项或黑洞路由

    •  BGP 路由黑洞


    •   BGP 路由黑洞拓扑

    •   BGP 路由黑洞简单配置与测试分析

    •   如何解决 BGP 路由黑洞

    •  TTL为0时会丢包

    •  数据不可达

    •  拥塞避免

    •  使用流量统计方法测试


由于特殊原因,所以把“N”字母替换为“#”符号。



二层,没有mac表项或者黑洞mac



为了防止黑客通过MAC地址攻击用户设备或网络,可将非信任用户的MAC地址配置为黑洞MAC地址,过滤掉非法MAC地址。当设备收到DMAC或SMAC地址为黑洞MAC地址的报文,且报文携带的VLAN为黑洞MAC对应的VLAN时,直接丢弃。

mac-address blackhole aaaa-bbbb-cccc vlan 10 #添加黑洞MAC表项


丢弃:该帧小与64字节(数据帧不完整)或者大于接口MTU时;

从该接口收到数据帧,该数据帧又要从该接口发出时。

丢弃:

如果收到数据端口也是发送数据帧的接口,则丢弃;

SMAC地址或者DMAC地址匹配MAC地址黑洞表项时;

冲突导致残缺的数据帧;

接口拥塞,缓存不够;

CPU过载。



2.5层,没有lsp,或者黑洞lsp



MPLS VPN 汇总

MPLS VPN 汇总拓扑

445726f51e8a39257344bbb49381d894.webp

AR1与AR4建立MP-IBGP邻居关系;在AR3上将4.4.4.4/32汇总成4.4.4.0/24。
接口的IP地址如图所示。



MPLS VPN 汇总简单配置与分析



骨干网使用IGP(IS-IS)

AR1

[AR1]isis
[AR1-isis-1]network-entity 66.0000.0000.0000.0001.00
[AR1-isis-1]is-level level-1
[AR1-isis-1]q
[AR1]int g0/0/0
[AR1-GigabitEthernet0/0/0]int g0/0/1
[AR1-GigabitEthernet0/0/1]isis enable 1
[AR1-GigabitEthernet0/0/1]int l0
[AR1-LoopBack0]isis enable 1

AR2

[AR2]isis
[AR2-isis-1]network-entity 66.0000.0000.0000.0002.00
[AR2-isis-1]is-level level-1
[AR2-isis-1]q
[AR2]int g0/0/0
[AR2-GigabitEthernet0/0/0]isis enable 1
[AR2-GigabitEthernet0/0/0]int g0/0/1
[AR2-GigabitEthernet0/0/1]isis enable 1
[AR2-GigabitEthernet0/0/1]int l0
[AR2-LoopBack0]isis enable 1

AR3与AR4配置同上

AR3

[AR3-isis-1]is-level level-1-2

AR4

[AR4-isis-1]is-level level-2

[AR2]dis isis peer
b79f89d58d78a76e26e6ef71c414e7c4.webp

建立公网LSP隧道

AR3

[AR3]mpls lsr-id 3.3.3.3
[AR3]mpls
[AR3-mpls]mpls ldp
[AR3-mpls]q
[AR3]int g0/0/0
[AR3-GigabitEthernet0/0/0]mpls
[AR3-GigabitEthernet0/0/0]mpls ldp
[AR3-GigabitEthernet0/0/0]int g0/0/1
[AR3-GigabitEthernet0/0/1]mpls
[AR3-GigabitEthernet0/0/1]mpls ldp

AR4

[AR4]mpls lsr-id 4.4.4.4
[AR4]mpls
[AR4-mpls]mpls ldp
[AR4-mpls-ldp]q
[AR4]int g0/0/0
[AR4-GigabitEthernet0/0/0]mpls
[AR4-GigabitEthernet0/0/0]mpls ldp

[AR3]dis mpls lsp
a275cd2b521d81ff7daf4f31f64726fc.webp
AR1与AR4建立MP-IBGP邻居关系,开启VPNV4路由
AR1

[AR1]bgp 100
[AR1-bgp]peer 4.4.4.4 as-number 100
[AR1-bgp]peer 4.4.4.4 connect-interface LoopBack0
[AR1-bgp]ipv4-family vpnv4
[AR1-bgp-af-vpnv4]peer 4.4.4.4 enable

AR4

[AR4]bgp 100
[AR4-bgp]peer 1.1.1.1 as-number 100
[AR4-bgp]peer 1.1.1.1 connect-interface LoopBack0
[AR4-bgp]ipv4-family vpnv4
[AR4-bgp-af-vpnv4]peer 1.1.1.1 enable

[AR4]dis bgp vpnv4 all peer
fee60a3bbaced5b98283720dfa5d9c7f.webp
在PE上VPN业务的接入,并绑定相关接口

AR1

[AR1] ip vpn-instance YBD1
[AR1-vpn-instance-YBD1]route-distinguisher 100:1
[AR1-vpn-instance-YBD1]vpn-target 100:1 export-extcommunity
[AR1-vpn-instance-YBD1]vpn-target 100:1 import-extcommunity
[AR1-vpn-instance-YBD1]int g0/0/0
[AR1-GigabitEthernet0/0/0]ip binding vpn-instance YBD1
[AR1-GigabitEthernet0/0/0]ip address 10.1.15.1 255.255.255.0

AR4配置类似

接入私网VPN业务

AR1

[AR1]bgp 100
ipv4-family vpn-instance YBD1
[AR1-bgp-YBD1]peer 10.1.15.5 as-number 1
[AR1-bgp-YBD1]peer 10.1.15.5 substitute-as

AR5

[AR5]bgp 1
[AR5-bgp]peer 10.1.15.1 as-number 100
[AR5-bgp]network 5.5.5.5 255.255.255.255

[AR5]dis bgp peer
fd7442e1579b9978f6d2e9fa2fff8ef7.webp

AR4和AR6配置类似

[AR6]display ip routing-table
acffc060c884ff7c0bcd06d023c1a5f7.webp

[AR5]ping -a 5.5.5.5 6.6.6.6
5f7b3ea9754b88b3fe20d37da2c6b87f.webp
在AR3上将4.4.4.4/32汇总成4.4.4.0/24

L1/2的路由器上执行区域间路由汇总,类似于OSPF的ABR。

AR3

[AR3]isis
[AR3-isis-1]summary 4.4.4.0 255.255.255.0 level-1
[AR3-isis-1]import-route isis level-2 into level-1 #L2的明显路由泄露到L1区域里

[AR1]dis mpls lsp
67b98094be076a3aaf1eb79d6c0dc078.webp
没有AR4的4.4.4.4/32的标签

[AR1]ping 4.4.4.4
f06d3825b46c3e63dc7ce8333a327a10.webp
[AR5]ping -a 5.5.5.5 6.6.6.6
7c47f36b49bede202bde84b10828cd18.webp



三层,没有路由表项或黑洞路由



BGP 路由黑洞

BGP 路由黑洞拓扑

3ddfc89a50316b192516fc060940cf10.webp
简单描述:按照拓扑图写接口IP地址;AR4与AR1建立EBGP邻居关系,AR3与AR5建立EBGP邻居关系;AR1与AR3建立IBGP邻居关系;AS200运行OSPF协议,并在AREA 0区域里。AR4、AR1、AR3、AR5的Loopback 0的环回口地址宣告进BGP进程中。



BGP 路由黑洞简单配置与测试分析



AR1

[AR1]di cu
[V200R003C00]
#
sysname AR1
#
...
#
interface GigabitEthernet0/0/0
ip address 10.1.14.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.12.1 255.255.255.0
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
#
bgp 200
router-id 1.1.1.1
peer 3.3.3.3 as-number 200
peer 3.3.3.3 connect-interface LoopBack0
peer 10.1.14.4 as-number 100
#
ipv4-family unicast
undo synchronization
peer 3.3.3.3 enable
peer 3.3.3.3 next-hop-local
peer 10.1.14.4 enable
#
ospf 1
area 0.0.0.0
network 1.1.1.1 0.0.0.0
network 10.1.12.1 0.0.0.0
#
...

AR3与AR1配置类似

AR2

[AR2]dis current-configuration 
[V200R003C00]
#
sysname AR2
#
...
#
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
ospf 1
area 0.0.0.0
network 2.2.2.2 0.0.0.0
network 10.1.12.2 0.0.0.0
network 10.1.23.2 0.0.0.0
#
...

AR4

[AR4]display current-configuration 
[V200R003C00]
#
sysname AR4
#
...
#
interface GigabitEthernet0/0/0
ip address 10.1.14.4 255.255.255.0
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface NULL0
#
interface LoopBack0
ip address 4.4.4.4 255.255.255.255
#
bgp 100
router-id 4.4.4.4
peer 10.1.14.1 as-number 200
#
ipv4-family unicast
undo synchronization
network 4.4.4.4 255.255.255.255
peer 10.1.14.1 enable
#
...

AR4与AR5配置类似

[AR4]dis bgp routing-table
ec36b687fdb3cfbdd25be4b3c04bdf95.webp
[AR5]dis bgp routing-table
4c899d8eb19c5af9d9bb8f0fcf0fb785.webp
都有对方的路由

PING测试一下

[AR5]ping -a 5.5.5.5 4.4.4.4
9968607eece4623b9c0869be942edd11.webp
3fdbe243a11d5ed5dd2abd1cfb37af5f.webp
ICMP

Type是11,Code是0,表示传输期间生存时间为0。

[AR2]dis ip routing-table
9e883fc233687c6ce4e47780008435e3.webp
AR2上没有AR4、AR5的路由信息。

什么是路由黑洞?

黑洞就是有去无回。

路由黑洞有什么作用?

防止路由环路。



如何解决 BGP 路由黑洞



(1)可使用GRE隧道;

AR1

[AR1]int Tunnel 0/0/1
[AR1-Tunnel0/0/1]ip address 10.1.13.1 24
[AR1-Tunnel0/0/1]tunnel-protocol gre
[AR1-Tunnel0/0/1]source 10.1.12.1
[AR1-Tunnel0/0/1]destination 10.1.23.3
[AR1-Tunnel0/0/1]q
[AR1]ip route-static 3.3.3.3 32 10.1.13.3 preference 1

AR3

[AR3]int Tunnel 0/0/1
[AR3-Tunnel0/0/1]ip address 10.1.13.3 24
[AR3-Tunnel0/0/1]tunnel-protocol gre
[AR3-Tunnel0/0/1]source 10.1.23.3
[AR3-Tunnel0/0/1]destination 10.1.12.1
[AR3-Tunnel0/0/1]q
[AR3]ip route-static 1.1.1.1 32 10.1.13.1 preference 1

[AR4]ping -a 4.4.4.4 5.5.5.5

[AR4]tracert -a 4.4.4.4 5.5.5.5
33c7086e60a2db1db951f0c031b7071f.webp
已PING通。

(2)上运行BGP协议,让AR2与AR1、AR3建立IBGP邻居关系。

此方法配置不做详细讲解。



TTL为0时会丢包



每经过一台路由器时,TTL值减1;

若报文TTL值小于接口上配置的最小TTL值,则丢弃该报文。



数据不可达



设备收到IP报文后,如果发现目的不可达,则设备将该报文丢弃,并给源端发送ICMP目的不可达报文。

端口不可达报文、协议不可达报文和主机不可达报文都属于ICMP目的不可达报文。
设备收到目的地址为本地、传输层协议为UDP的数据报文时,如果报文的端口号与正在使用的进程不匹配,则给源端发送端口不可达的ICMP报文。
设备收到目的地址为本地的数据报文时,如果设备不支持数据报文采用的传输层协议,则给源端发送协议不可达的ICMP报文。
设备收到数据报文但是无法转发时,则给源端发送主机不可达的ICMP报文。



拥塞避免



拥塞避免常用的两种丢弃报文方式为:尾部丢弃策略和WRED。

尾丢弃:当队列的长度达到最大值后,所有新入队列的报文都将被丢弃(缓存在队列尾部),这种丢弃策略会引发TCP全局同步现象,导致TCP连接始终无法建立。所谓TCP全局同步现象如下图所示,三条线表示三条TCP,当同时丢弃多个TCP报文时,将造成多个TCP连接,同时触发滑窗减半机制。又会由于慢启动的机制,将流量慢慢的增大,之后又会在某个时间同时出现流量高峰,触发滑窗减半的机制。如此反复进行,使网络流量忽大忽小。

fc59c109b04522556cc662733ddb7e2e.webp
尾丢弃出现的问题:
1)TCP同步;没有充分利用链路带宽
2)TCP饿死 ;UDP没有TCP那种滑动窗口
3)无差别的丢弃

在CBQ中,EF队列和LLQ队列不能使用丢弃策略,只能尾丢弃。为避免TCP全局同步现象,出现了RED技术。RED通过随机地丢弃数据报文,让多个TCP连接不同时降低发送速度,从而避免了TCP的全局同步现象。使TCP速率及网络流量都趋于稳定。

WRED:RED是没有差分服务的,即使优先级高的也可能被随机丢弃掉,所以基于RED,实现了WRED。流队列支持基于DSCP或IP优先级进行WRED丢弃,每一种优先级都可以独立设置报文丢包的上下门限及丢包率,报文到达下限时,开始丢包,随着门限的增高,丢包率不断增加,最高丢包率不超过设置的丢包率,直至到达高门限,报文全部丢弃,这样按照一定的丢弃概率主动丢弃队列中的报文,从而一定的程度上避免拥塞问题。

路由表里没有相应的路由条目



使用流量统计方法测试



使用流量统计的方法,沿着发生丢包的链路,在设备的入接口和出接口上部署流策略,分别统计入接口的Inbound方向和出接口的Outbound方向的特定报文,以确认该类报文是否在本设备被丢弃。
880499df8a1e0f5dedde1d89948e9e11.webp
以端口a的Inbound方向和端口b的Outbound方向,端口b的Outbound方向和端口c的Inbound方向的流量统计情况为例。

如果端口a的Inbound方向和端口b的Outbound方向Passed 计数大致相等,说明此处无丢包。如果端口a的Inbound方向的报文Passed计数多于端口b的Outbound方向的报文Passed计数,说明丢包发生在LSW1。如果端口b的Outbound方向和端口c的Inbound方向Passed 计数大致相等,说明此处无丢包。

LSW1

#配置ACL规则
[LSW1]acl number 3000
[LSW1-acl-adv-3000]rule permit icmp source 192.168.10.1 0 destination 200.1.1.1
[LSW1-acl-adv-3000]quit

#配置流分类
[LSW1]traffic classifier 3000
[LSW1-classifier-3000]if-match acl 3000
[LSW1-classifier-3000]quit

#配置流行为
[LSW1]traffic behavior 3000
[LSW1-behavior-3000]statistic enable
[LSW1-behavior-3000]quit

#配置流策略
[LSW1]traffic policy 3000
[LSW1-trafficpolicy-3000]classifier 3000 behavior 3000
[LSW1-trafficpolicy-3000]quit

#在接口上应用流策略
[LSW1]interface gigabitethernet 0/0/0
[LSW1-GigabitEthernet0/0/0]traffic-policy 3000 inbound
[LSW1-GigabitEthernet0/0/0]quit

OK

情商的行为是什么?即使是对最熟悉、最亲切的人,仍然保持尊重和耐心。


aeb63f6d8b725c74afcf9738727a48be.webp

好了这期就到这里了,如果你喜欢这篇文章的话,请点赞评论分享收藏,如果你还能点击关注,那真的是对我最大的鼓励。谢谢大家,下期见!


f7784a9e37b743001297e0a18922ce7d.webp


往期推荐:


交换机的接口类型 面试官与求职者之间谈话。面对面试官的疯狂追问,如果你是求职者,你能扛得住嘛?

2021-04-18

c4420838827d562ad2b439977bafe3b1.webp

华为 PPP点到点链路层协议 用在哪里?底层的工作原理是什么?

2021-04-17

82e5c6894d25709070ab87ddb76a045d.webp

FTP 主动模式、被动模式

2021-04-05

71f505b123d865706265422639ffdae3.webp


关注 艺博东 公众号,与你一起学习共同进步。秀秀秀秀秀~



 

点个


在看

你最好看

浏览 95
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报