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