交換機轉(zhuǎn)發(fā)行為有哪些?交換機的基本作用就是用來轉(zhuǎn)發(fā)數(shù)據(jù)幀,交換機收到數(shù)據(jù)幀后的轉(zhuǎn)發(fā)方式共有3種:泛洪(Flooding)、轉(zhuǎn)發(fā)(Forwarding)、過濾(Filter)。
1.泛洪
泛洪是指交換機把從某一個端口接收到的數(shù)據(jù)幀向除接收端口以外的其他端口轉(zhuǎn)發(fā)出去。泛洪是一種點到多點的轉(zhuǎn)發(fā)行為,交換機在以下幾種情況下會泛洪數(shù)據(jù)幀:
●收到廣播數(shù)據(jù)幀;
●收到組播數(shù)據(jù)幀;
●收到未知的單播數(shù)據(jù)幀(未知的單播幀是指數(shù)據(jù)幀的目的 MAC地址在 MAC地址表中不存在的數(shù)據(jù)幀)。
2.轉(zhuǎn)發(fā)
轉(zhuǎn)發(fā)是指交換機把從某一個端口收到數(shù)據(jù)幀從另外一個端口轉(zhuǎn)發(fā)出去,轉(zhuǎn)發(fā)是一種點到點的轉(zhuǎn)發(fā)行為。
交換機轉(zhuǎn)發(fā)數(shù)據(jù)幀流程是:交換機收到數(shù)據(jù)幀以后根據(jù)數(shù)據(jù)幀的目的MAC地址查看本地MAC地址表,如果MAC地址表中存在目的MAC地址,則將數(shù)據(jù)幀從目的MAC地址綁定的端口轉(zhuǎn)發(fā)出去;如果MAC地址表中不存在MAC地址,則執(zhí)行泛洪轉(zhuǎn)發(fā)。
3.過濾
交換機在以下兩種場景中會對數(shù)據(jù)進行過濾:
●交換機收到數(shù)據(jù)幀后根據(jù) MAC地址表進行轉(zhuǎn)發(fā),不從其他端口泛洪數(shù)據(jù)幀;
●交換機接收數(shù)據(jù)幀的端口和轉(zhuǎn)發(fā)數(shù)據(jù)幀的端口是同一個端口,則丟棄數(shù)據(jù)幀不轉(zhuǎn)發(fā)。過濾數(shù)據(jù)幀如圖所示,該圖展示了第二種過濾場景。
過濾數(shù)據(jù)幀
根據(jù)上圖,筆者對第二種過濾場景說明如下。
① 主機A訪問主機B,數(shù)據(jù)幀的目的MAC地址是主機B的MAC地址,源MAC地址是主機A的MAC地址,數(shù)據(jù)幀經(jīng)過Hub,Hub將數(shù)據(jù)幀泛洪轉(zhuǎn)發(fā)給主機B和交換機。
② 交換機收到數(shù)據(jù)幀后,學(xué)習(xí)源MAC地址,將源MAC地址綁定到E0端口,并根據(jù)目的MAC地址查MAC地址然后進行轉(zhuǎn)發(fā)。由于當(dāng)前交換機的MAC地址為空,交換機執(zhí)行泛洪轉(zhuǎn)發(fā),將數(shù)據(jù)幀從除接收端口以外的其他端口轉(zhuǎn)發(fā)出去。
③ 主機B收到數(shù)據(jù)幀后回復(fù)數(shù)據(jù)幀給主機A,數(shù)據(jù)幀目的MAC地址是主機A的MAC地址,源MAC地址是主機B的MAC地址,數(shù)據(jù)幀再次經(jīng)過Hub,Hub將數(shù)據(jù)幀轉(zhuǎn)發(fā)給主機A和交換機。
④ 交換機收到數(shù)據(jù)幀后學(xué)習(xí)源MAC地址,并將源MAC地址綁定到E0端口,然后根據(jù)數(shù)據(jù)幀目的MAC地址查MAC地址表然后進行轉(zhuǎn)發(fā)。由于交換機發(fā)現(xiàn)數(shù)據(jù)幀的出端口和接收數(shù)據(jù)幀的端口是同一個,說明存在環(huán)路,于是丟棄數(shù)據(jù)幀不轉(zhuǎn)發(fā),過濾數(shù)據(jù)幀。