交換機的基本功能將封包進行轉發。而封包怎麼轉發,轉發給誰,這需要按照一定的規則。
封包的結構:
SA (源地址),來源於哪裏
DA(目的地址)要去哪裏。
交換機收到封包之後,根據DA來決定要去哪裏,同時告訴交換機這個封包是哪裏來的。
交換機接收每一筆封包進來進行轉發都要經歷如下過程:
1、學習: 將封包中的SA學習到對應端口上。
交換機內部有一個表(LUT Look up table),這張表是維護端口和mac地址關係的表。
每一筆封包從端口進來,LUT就會記錄出這個mac地址和端口的對應關係。
2、查表,交換機收到封包之後,識別出DA,就過來查詢內部的LUT, 看是不是有這個MAC地址和端口的對應關係。
3、轉發,承接第二條如果沒有對應關係的的話,這個封包要廣播到所有端口。
如果有的話,就只轉發到對應端口。
注意:
交換機是一個管道,對於基本的交換功能來說,交換機是沒有mac地址這個說法的。
他只識別封包的中的mac地址關係,並按照規則將封包進行轉發
如上圖拓撲,
學習過程 learning :
上電之後
1、 在P1口打一筆單播SA=01 DA=02的封包,發現S2 S3都收到這筆封包
2、 P2 口打入一筆擔保包SA=02 DA=01, 發現只有S1能收到。
3、 P1 再打單播SA=01 DA=02,只有S2能收到。 S3 收不到封包。