交换通信之多层交换原理、方式及DHCP中继

交换通信

研究数据包经过交换机时的处理流程。

多层交换原理

三层交换机(现在的交换机已经不仅仅是三层了)具备二层交换机的 CAM 表转发和路由器的三层转发。

数据处理

在这里插入图片描述
二层交换机转发数据处理流程。收到数据包后丢到接口中;数据包进入交换机后,若交换机部署了 ACL,则查找 ACL 来确定是否接受该数据包,这里的 VLAN ACL 是专门用在交换机环境,即便 VLAN 有数据,也要进行 ACL 的过滤;然后查找 CAM 表,判断是否要交给路由器进程,因为是二层交换机,所以不需要执行此操作;查看 CAM 表后找到要传输出去的端口,再次查看 VLAN ACL 判断是否可以从接口传输;若可以,则在出接口做流量控制后将数据包从选定接口传出。
在这里插入图片描述
多层交换机转发数据处理流程。数据包进入交换机后,经过二层进程查找 CAM 表后,进入 L3 三层进程;路由器进程在进口处可能部署了 ACL 并进行过滤;接下来进行 IP Switchable 判断是否跨网段,即判断是否需要跨 VLAN 通信。如果多层交换机需要跨网段通信,则多添加一个路由器进程,若不需要则和二层交换机处理流程一样。

表项查找

在这里插入图片描述
二层交换机查找 CAM 表,需要完整匹配每个比特位,从原 MAC 到目的 MAC 对应一个转发接口,如果以用户可以看懂的方式存储将占用内存,现在的设备如果还需要使用内存来查找表项,是非常慢的,所以进行软硬分离。右边这张 0 和 1 的表是将内存中的表硬件化,拷贝在硬件中,然后基于 hash 进行查找。
在这里插入图片描述
三层交换机按照最长匹配的原则查找 TCAM 表,通过 show 命令看到的是内存形式的表,而真正在转发时使用的硬件形式的表。

多层交换方式

进程交换

基于 CPU 进程进行交换,没有独立的硬件,从本地内存查找表项,CPU 执行计算,然后转发出去,一次转发一次查找。现在硬件速度快,进程交换基本被淘汰了。

快速交换

相比进程交换,新增加了缓存的使用,数据包进入交换机后,先去缓存查找表项,在缓存中查到则直接转发,若缓存中没有查到,再去内存中查找。一次查找多次转发,资源消耗减少。

CEF 交换

软硬分离,由软件 CPU 完成计算,内存中的表经过 hash 处理后存入硬件中。

硬件设备存储的表:
show ip cef
show ip cef detail

show arp //内存
show adj //硬件

DHCP中继

主机发送广播包到二层交换机,二层交换机收到广播包后泛洪到三层交换机,三层交换机收到网络主机申请地址的信息后向主机返回地址等相关配置信息。
在这里插入图片描述
若 DHCP 服务器放在核心层交换机连接的服务集群,主机距离服务器间隔三层交换机,对路由器的三层交换机默认隔离广播域,会丢掉广播请求。此外,假设主机的请求包可以到达 DHCP 服务器,PC1 和 PC2 同时请求获取地址,服务器如何去分辨其中某个客户端属于哪个 vlan?以上两个问题的解决需要用到 DHCP 中继。

在 sw2 处部署 DHCP 中继,客户端将带有 vlan 标签的 discover 请求发送至 DHCP 中继,中继本质上是一个代理,其变广播为单播,将 < 0.0.0.0 255.255.255.255 > 请求包的源地址改为 vlan 所在网关,目的地址改为服务器地址,待服务器收到单播包后,根据数据包中的源地址匹配地址池中的地址,并将 offer 单播包发送至中继,中继变单播为广播发送至指定 vlan。

部署流程:
1、配置 DHCP 服务器 CS1,定义地址池
2、配置 DHCP 客户端,开启 DHCP 地址获取
3、在汇聚层交换机上执行 DHCP 中继(relay)
4、汇聚层和服务器部署路由(静态 & OSPF ),保证能够返回 DHCP 包

DHCP中继部署:
interface range vlan 10 , 20
ip helper-address 172.16.24.2 //指向服务器的地址
< DHCP SERVER 和 CLIENT 配置不变 >

发布了33 篇原创文章 · 获赞 57 · 访问量 952

猜你喜欢

转载自blog.csdn.net/qq_40644809/article/details/105208410
今日推荐