“交換機(jī)”是一個(gè)舶來詞,源自英文“Switch”,原意是“開關(guān)”,中國技術(shù)界在引入這個(gè)詞匯時(shí),翻譯為“交換”。在英文中,動詞“交換”和名詞“交換機(jī)”是同一個(gè)詞(注意這里的“交換”特指電信技術(shù)中的信號交換,與物品交換不是同一個(gè)概念)。
交換機(jī)工作于OSI參考模型的第二層,即數(shù)據(jù)鏈路層。交換機(jī)內(nèi)部的CPU會在每個(gè)端口成功連接時(shí),通過將MAC地址和端口對應(yīng),形成一張MAC表。在今后的通訊中,發(fā)往該MAC地址的數(shù)據(jù)包將僅送往其對應(yīng)的端口,而不是所有的端口。因此,交換機(jī)可用于劃分?jǐn)?shù)據(jù)鏈路層廣播,即沖突域;但它不能劃分網(wǎng)絡(luò)層廣播,即廣播域。
交換機(jī)擁有一條很高帶寬的背部總線和內(nèi)部交換矩陣。交換機(jī)的所有的端口都掛接在這條背部總線上,控制電路收到數(shù)據(jù)包以后,處理端口會查找內(nèi)存中的地址對照表以確定目的MAC(網(wǎng)卡的硬件地址)的NIC(網(wǎng)卡)掛接在哪個(gè)端口上,通過內(nèi)部交換矩陣迅速將數(shù)據(jù)包傳送到目的端口,目的MAC若不存在,廣播到所有的端口,接收端口回應(yīng)后交換機(jī)會“學(xué)習(xí)”新的MAC地址,并把它添加入內(nèi)部MAC地址表中。使用交換機(jī)也可以把網(wǎng)絡(luò)“分段”,通過對照IP地址表,交換機(jī)只允許必要的網(wǎng)絡(luò)流量通過交換機(jī)。通過交換機(jī)的過濾和轉(zhuǎn)發(fā),可以有效的減少沖突域,但它不能劃分網(wǎng)絡(luò)層廣播,即廣播域。
交換機(jī)的任意節(jié)點(diǎn)收到數(shù)據(jù)傳輸指令后,即對于存儲在內(nèi)存里的地址表進(jìn)行快速查找,從而對于MAC地址的網(wǎng)卡連接位置進(jìn)行確認(rèn),然后再將數(shù)據(jù)傳輸?shù)皆摴?jié)點(diǎn)上。如果在地址表中找到相應(yīng)的位置,則進(jìn)行傳輸;如果沒有,交換機(jī)就會將該地址進(jìn)行記錄,以利于下次尋找和使用。交換機(jī)一般只需要將幀發(fā)送到相應(yīng)的點(diǎn),而無需如集線器發(fā)送到所有節(jié)點(diǎn),從而節(jié)省了資源和時(shí)間,提高了數(shù)據(jù)傳輸?shù)乃俾省?/p>