首先明确交换机2个功能:
地址学习和数据转发
在进行最初的数据转发前必须进行地址学习
交换机为二层设备,根据MAC表来进行转发。
比如端口A地址为11.11.11.11.11.11,端口B地址为22.22.22.22.22.22
A需要和B进行通信(即你说的发数据帧)
首先11.11.11.11.11.11数据(广播方式)交换机接收到后,知道了11.11.11.11.11.11所在的设备的接口为A,同理获得22.22.22.22.22.22和端口B的对应关系
在交换机建立了这样一张mac和端口对应关系后,在有数据进行交换时根据此表即可完成数据转发。
祝你好运!
(1)每个交换机都维护一个MAC地址表,当一个帧到达port X 时,检测该端口存在包含该帧目的地址的表项与否。若存在,则把该帧转发到该表项所指出的port,反之,把该帧转发到所有除X以外的端口上。
(2)
假设帧
(src=x, dst=y) 到达交换机上端口
N
交换机搜索 MAC地址表
如果找到表项 < x, N, Age >, 则
更新 Age为current time
否则,
插入新表项 < x, N, current time >
删除已经15秒钟没有被更新的表项
算法还真不知道,只知道有帧过来查看CAM表有就转发,没有就泛洪
建立MAC表?也叫CAM表 交换机有MAC学习功能,基于数据帧源MAC地址学习。
PPT44页有算法,建立MAC地址表用反向学习算法,在PPT48页
不知道软件学院的哪个哥们呢,晚上的实验课真是恶心…… 上面竟然是FUCK尊!!