《深入理解Linux网络技术内幕》阅读笔记(十五)

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
注意Netfilter钩子函数位置:
这里写图片描述
这里写图片描述
当开启STP时:
1.处理入口BPDU。
2.BPDU也可能是本地产生的。
3,入口网络数据不是转发到正确端口就是扩散到所有端口。
4.STP阻塞的端口不能用于接收和传输数据流量。
当STP关闭时:
1.入口BPDU会被认为是数据流量。
2.不会产生本地BPDU。
3.入口数据流量依然转发至正确端口或者扩散到所有端口。
4.所有网桥端口(除非用管理手段关闭)都可用于接收和传输数据流量。
对每个网桥实例来说,都有一个垃圾收集定时器(gc_timer)来定期扫描转发数据库,然后把过期的数据项删除。如果一个数据项至少5分钟没被用过,通常就算过期了。
ebtables(Ethernet bridge tables)可以过滤和修改任何类型的帧,而非仅限于那些携带IP封包的帧:
1.允许定义规则。根据一些因素,例如网络协议,如IPV4或目的IP地址,然后通知内核哪些网络流量要通过网桥,而哪些网络流量要通过路由选择。也就是说,被网桥端口绑定的NIC不仅作为网桥端口,也是以独立的L3接口的形式存在,可以有其自己的L3配置信息。
2.可以修改目的MAC地址。例如,把一个帧重定向至另一台主机,或者实现某种网络地址的翻译。
这里写图片描述
这里写图片描述
这里写图片描述
上图处理帧函数br_handle_frame_finish流程图:
这里写图片描述
这里写图片描述
这里写图片描述
当一个网桥设备或网桥端口被初始化时,其所有字段(包括那些由STP所用的)都会被初始化,无论STP是否开启。用于传输BPDU的Hello定时器也会启动。这样的话,如果稍后STP启动了,则所有数据结构都已就绪可用。
每次Hello定时器到期,根据STP的规则,网桥就应该从其指定的端口送出BPDU。由于网桥的定时器无论STP是否启动都会运行,因此,传输函数总是会检查stp_enabled的值,若该字段显示STP已关闭,就会立刻返回。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
当你把某个网桥中唯一能到达当前根网桥的端口关闭时,生成树就等于被割裂了。当前网桥所属的那部分就必须选出新的根网桥。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值