專(zhuān)利名稱(chēng):在網(wǎng)絡(luò)交換機(jī)內(nèi)的可編程第三層地址自我學(xué)習(xí)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在無(wú)阻塞網(wǎng)絡(luò)交換機(jī)內(nèi)學(xué)習(xí)數(shù)據(jù)包的網(wǎng)絡(luò)地址,該無(wú)阻塞網(wǎng)絡(luò)交換機(jī)配置用于在子網(wǎng)絡(luò)及路由器中交換數(shù)據(jù)包。
已經(jīng)制定出以太網(wǎng)協(xié)議IEEE 802.3,規(guī)定了用于數(shù)據(jù)包傳輸?shù)陌腚p工媒體訪問(wèn)機(jī)制及全雙工媒體訪問(wèn)機(jī)制。全雙工媒體訪問(wèn)機(jī)制在兩個(gè)網(wǎng)絡(luò)組件之間,例如在網(wǎng)絡(luò)節(jié)點(diǎn)及交換式集線器之間,提供雙向、點(diǎn)對(duì)點(diǎn)通信鏈接。
交換式局域網(wǎng)正面臨對(duì)更高速的連接、更彈性的交換性能及適應(yīng)更復(fù)雜網(wǎng)絡(luò)體系結(jié)構(gòu)的能力的日益增加的要求。例如,轉(zhuǎn)讓給本發(fā)明同一受讓人的美國(guó)專(zhuān)利第5,953,335號(hào)公布了一種網(wǎng)絡(luò)交換機(jī)(networkswitch),該網(wǎng)絡(luò)交換機(jī)配置用于在不同的網(wǎng)絡(luò)節(jié)點(diǎn)之間交換第二層類(lèi)型的以太網(wǎng)(IEEE 802.3)數(shù)據(jù)包;接收的數(shù)據(jù)包可包含依據(jù)IEEE802.1q協(xié)議的VLAN(虛擬LAN)標(biāo)記幀,IEEE 802.1q協(xié)議規(guī)定了另一個(gè)子網(wǎng)絡(luò)(經(jīng)由路由器)或站臺(tái)的指定群組。由于交換發(fā)生于第二層層次上,通常必須由路由器在子網(wǎng)絡(luò)之間傳輸數(shù)據(jù)包。
加強(qiáng)網(wǎng)絡(luò)交換機(jī)的交換性能、從而包含第三層(例如網(wǎng)際協(xié)議)處理的工作通常需要對(duì)網(wǎng)絡(luò)地址表作基于CPU的控制,以便進(jìn)行第三層地址的學(xué)習(xí)。例如,路由器基于指定的地址解析協(xié)議可執(zhí)行第二層-第三層關(guān)聯(lián)。通常,由于當(dāng)前的第二層交換最好配置運(yùn)行于無(wú)阻塞狀態(tài),其中數(shù)據(jù)包可從網(wǎng)絡(luò)交換機(jī)以接收該數(shù)據(jù)包的相同速率輸出,故路由器對(duì)于LAN是一種通路瓶頸。因此,具有第二層-第三層交換能力的交換機(jī)的使用可減輕路由器的負(fù)擔(dān)并且減少等待時(shí)間。此外,由于在網(wǎng)絡(luò)交換機(jī)內(nèi),第三層學(xué)習(xí)可能快速地覆蓋地址表,在第二層交換中學(xué)習(xí)每個(gè)接收的數(shù)據(jù)包的媒體訪問(wèn)控制(“MAC”)地址的傳統(tǒng)學(xué)習(xí)技術(shù)在第三層交換中并不實(shí)用。
還需要有一種方案,使無(wú)阻塞網(wǎng)絡(luò)交換機(jī)能夠在線路速率下選擇性地學(xué)習(xí)進(jìn)入的數(shù)據(jù)包的第二層地址及相關(guān)的第三層地址,而不會(huì)覆蓋網(wǎng)絡(luò)交換機(jī)地址表。
本發(fā)明可滿足這些需要及其它需要,其中用于交換數(shù)據(jù)包的網(wǎng)絡(luò)交換機(jī)包含用于接收及發(fā)送多個(gè)數(shù)據(jù)包的多個(gè)端口。進(jìn)入的數(shù)據(jù)包由封包識(shí)別器模塊加以評(píng)估,以判斷是否接收的數(shù)據(jù)包是由連接至網(wǎng)絡(luò)交換機(jī)的路由器所接收的。若所接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非該路由器,交換模塊即選擇性地儲(chǔ)存接收的數(shù)據(jù)包的第二層源地址及相關(guān)的第三層源地址,作為地址表中的相關(guān)聯(lián)的第二層-第三層地址對(duì)。因此,由于地址表包含較少的項(xiàng)目,在該地址表中溢出情形的可能性就會(huì)減少。
本發(fā)明的一個(gè)目的為提供在網(wǎng)絡(luò)交換機(jī)端口交換數(shù)據(jù)包的方法。該方法包含由網(wǎng)絡(luò)交換機(jī)的一個(gè)端口接收數(shù)據(jù)包,并且判斷是否該端口接收到來(lái)自路由器的數(shù)據(jù)包。該方法還包含基于該端口接收到來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非該路由器的數(shù)據(jù)包的判斷,選擇性地將來(lái)自該數(shù)據(jù)包的第二層源地址及相關(guān)的第三層源地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì),儲(chǔ)存在地址表中。因此,該地址表含有較少的項(xiàng)目,從而減少了地址表中溢出的可能性。
本發(fā)明的另一個(gè)目的為提供一種網(wǎng)絡(luò)交換機(jī),用以在網(wǎng)絡(luò)交換機(jī)端口交換接收到的數(shù)據(jù)包。該網(wǎng)絡(luò)交換機(jī)包含用于接收及發(fā)送多個(gè)數(shù)據(jù)包的多個(gè)端口,其中多個(gè)端口中的一個(gè)端口連接至路由器、封包識(shí)別器模塊及交換模塊。封包識(shí)別器模塊配置用于判斷是否接收的數(shù)據(jù)包來(lái)自路由器。交換模塊配置為基于接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非路由器,選擇性地將來(lái)自接收的數(shù)據(jù)包的第二層源地址及相關(guān)的第三層源地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì),儲(chǔ)存在地址表中。結(jié)果使地址表中溢出的可能性減少。
本發(fā)明的附加優(yōu)點(diǎn)及新穎特征將部分在以下描述中提出,部分對(duì)于本領(lǐng)域技術(shù)人員而言,在審查了以下內(nèi)容后會(huì)變得顯而易見(jiàn)或通過(guò)運(yùn)用本發(fā)明而認(rèn)識(shí)到。本發(fā)明的優(yōu)點(diǎn)尤其可以通過(guò)在所附權(quán)利要求書(shū)中所指出的方案及其組合而實(shí)現(xiàn)。
圖2為方框圖,依據(jù)本發(fā)明的實(shí)施例而說(shuō)明
圖1的網(wǎng)絡(luò)交換機(jī)。
圖3為流程圖,依據(jù)本發(fā)明的實(shí)施例而說(shuō)明在圖1的網(wǎng)絡(luò)交換機(jī)內(nèi)的學(xué)習(xí)。
圖4為另一個(gè)流程圖,依據(jù)本發(fā)明的實(shí)施例而說(shuō)明在圖1的網(wǎng)絡(luò)交換機(jī)內(nèi)的學(xué)習(xí)。
圖5是又一個(gè)流程圖,依據(jù)本發(fā)明的實(shí)施例而說(shuō)明在圖1的網(wǎng)絡(luò)交換機(jī)內(nèi)的學(xué)習(xí)。
本發(fā)明最佳實(shí)施方式圖1為說(shuō)明封包交換網(wǎng)絡(luò)10的方框圖,封包交換網(wǎng)絡(luò)10例如為以太網(wǎng)(IEEEE 802.3)網(wǎng)絡(luò)。該封包交換式網(wǎng)絡(luò)包含能夠使數(shù)據(jù)包在網(wǎng)絡(luò)站臺(tái)14之間通信的集成(例如單芯片)多端口交換機(jī)12。每個(gè)網(wǎng)絡(luò)站臺(tái)14,例如客戶工作站,通常均依據(jù)IEEE 802.3協(xié)議而配置,用于以10 Mbps或100Mbps發(fā)送及接收數(shù)據(jù)包。每個(gè)集成多端口交換機(jī)12經(jīng)千兆位以太網(wǎng)鏈接16而互連,使數(shù)據(jù)包能夠在子網(wǎng)絡(luò)(或子網(wǎng),subnet)18a、18b及18c之間傳輸。因此,每個(gè)子網(wǎng)絡(luò)包含交換機(jī)12及相關(guān)的網(wǎng)絡(luò)站臺(tái)14群組。
每個(gè)交換機(jī)12包含交換端口20,也稱(chēng)為封包識(shí)別符模塊,該交換端口20包含媒體訪問(wèn)控制(MAC)模塊22及端口濾波器24。MAC模塊20依據(jù)IEEE 802.3u協(xié)議通過(guò)10/100Mbps實(shí)體層(PHY)收發(fā)器(圖中未示)而對(duì)相關(guān)的網(wǎng)絡(luò)站臺(tái)14發(fā)送及接收數(shù)據(jù)包。每個(gè)交換機(jī)12還包含交換模塊25,交換模塊25配置為對(duì)所接收的數(shù)據(jù)包做出幀前向決定(frame forwarding decision)。尤其是,根據(jù)源MAC地址、目的MAC地址及在以太網(wǎng)(IEEE 802.3)標(biāo)題內(nèi)的VLAN信息,交換模塊25配置用于第二層交換決定;根據(jù)在以太網(wǎng)封包內(nèi)的IP數(shù)據(jù)部分的評(píng)估,該交換模塊25亦配置用于選擇性的第三層交換決定。
如圖1所示,每個(gè)交換機(jī)12具有相關(guān)的主機(jī)CPU26及例如SSRAM的緩沖存儲(chǔ)器28。主機(jī)CPU26控制對(duì)應(yīng)的交換機(jī)12的整體運(yùn)行,包含交換模塊25的編程。當(dāng)交換模塊25處理用于接收的數(shù)據(jù)包的前向決定時(shí),對(duì)應(yīng)的交換機(jī)12使用緩沖存儲(chǔ)器28來(lái)儲(chǔ)存數(shù)據(jù)幀。
每個(gè)交換機(jī)12還包含存儲(chǔ)器30,該存儲(chǔ)器配置用于數(shù)據(jù)包的網(wǎng)際協(xié)議(internet protocol,IP)-媒體訪問(wèn)控制(MAC)關(guān)聯(lián)的有限儲(chǔ)存,而將其作為地址表。
如上所述,交換模塊25配置用于執(zhí)行第二層交換決定及選擇性的第三層交換決定。若在子網(wǎng)絡(luò)18a內(nèi)的末端站臺(tái)14希望發(fā)送電子郵件消息給子網(wǎng)絡(luò)18b、18c內(nèi)的選定網(wǎng)絡(luò)站臺(tái),第三層交換決定的可用性可能是特別有效的。由于子網(wǎng)絡(luò)18b、18c處于不同子網(wǎng)上,子網(wǎng)絡(luò)18a內(nèi)的主機(jī)無(wú)法知道子網(wǎng)絡(luò)18b和/或18c上的主機(jī)的第二層地址。交換機(jī)12a的交換模塊25就要發(fā)送電子郵件消息給路由器19,而這會(huì)造成額外的延遲。交換模塊25使用第三層交換決定,就使交換模塊25能夠?qū)θ绾翁幚矸獍?包含進(jìn)一步的前向決定)、以及是否應(yīng)將封包視為對(duì)等待時(shí)間敏感的用途(諸如視頻或音頻)中的高優(yōu)先權(quán)封包而做出智能化決定。因?yàn)閷?duì)于LAN而言,路由器通常是通路瓶頸,交換模塊25可減輕路由器的負(fù)擔(dān)而且改善往返行程的延遲。
依據(jù)所述實(shí)施例,網(wǎng)絡(luò)交換機(jī)12經(jīng)配置而學(xué)習(xí)選定數(shù)據(jù)包的IP-MAC關(guān)聯(lián)。每個(gè)網(wǎng)絡(luò)交換機(jī)的封包識(shí)別器模塊24經(jīng)配置而判斷是否接收的數(shù)據(jù)包由路由器19所接收。若封包識(shí)別器模塊24確認(rèn)接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非該路由器19,網(wǎng)絡(luò)交換機(jī)12的交換模塊25選擇性地儲(chǔ)存數(shù)據(jù)包的第二層源地址及相關(guān)的第三層源地址,作為地址表中相關(guān)聯(lián)的第二層-第三層地址對(duì)。相關(guān)聯(lián)的第二層-第三層地址的選擇性儲(chǔ)存亦稱(chēng)為對(duì)數(shù)據(jù)包的IP-MAC關(guān)聯(lián)的學(xué)習(xí)。通過(guò)選擇性地學(xué)習(xí)來(lái)自非路由器端口的選定數(shù)據(jù)包的IP-MAC關(guān)聯(lián),減少了地址表溢出的可能性。另外,通過(guò)使用所學(xué)習(xí)的IP-MAC關(guān)聯(lián),網(wǎng)絡(luò)交換機(jī)即可執(zhí)行第三層交換,從而能夠繞過(guò)相連子網(wǎng)絡(luò)之間的路由器,從而減少等待時(shí)間。
圖2顯示圖1所示的端口濾波器24的更詳細(xì)的方框圖。端口濾波器24包含接收先進(jìn)先出(FIFO)緩沖器51、MAC排隊(duì)邏輯52、存儲(chǔ)器53、MAC出隊(duì)(dequeing)邏輯54、發(fā)送FIFO 55及處理器接口模塊57。
接收FIFO 51為緩沖器,該緩沖器配置用于對(duì)從端口20的接收部分接收進(jìn)入的數(shù)據(jù)包加以響應(yīng),暫時(shí)儲(chǔ)存該進(jìn)入的數(shù)據(jù)包。
MAC排隊(duì)邏輯52提供各種用于端口濾波器24的功能。MAC排隊(duì)邏輯52從接收FIFO 51經(jīng)數(shù)據(jù)總線59而至外部存儲(chǔ)器接口26,為SSRAM 28提供接收的數(shù)據(jù)包以便寫(xiě)入。MAC排隊(duì)邏輯52還響應(yīng)于處理接收的數(shù)據(jù)包的MAC排隊(duì)邏輯25,向交換模塊25提供多個(gè)狀態(tài)信號(hào)58。狀態(tài)信號(hào)58對(duì)交換模塊25提供指示,表明接收的數(shù)據(jù)包無(wú)錯(cuò)誤地傳送至外部存儲(chǔ)器接口26,或者說(shuō)接收的數(shù)據(jù)包的傳送是完全的。狀態(tài)信號(hào)58亦包含子網(wǎng)絡(luò)路由選擇信號(hào)(RNET_ENABLE)及學(xué)習(xí)信號(hào)(L3IRC_LEARN)。
當(dāng)MAC排隊(duì)邏輯52設(shè)置RNETS_ENABLE信號(hào)時(shí),交換模塊25即得到通知接收的數(shù)據(jù)包是在直接連接至網(wǎng)絡(luò)交換機(jī)12a的子網(wǎng)絡(luò)之間所進(jìn)行的內(nèi)部子網(wǎng)絡(luò)通信量的一部分。
當(dāng)MAC排隊(duì)邏輯52設(shè)置L3RC_LEARN時(shí),交換模塊25就要學(xué)習(xí)用于接收的數(shù)據(jù)包的IP-MAC地址關(guān)聯(lián)。
存儲(chǔ)器53為MAC排隊(duì)邏輯52提供用于參數(shù)的寄存器空間53a,以實(shí)現(xiàn)學(xué)習(xí)及子網(wǎng)絡(luò)路由選擇功能。寄存器空間53a為MAC排隊(duì)邏輯至少提供SUBNET_ID及SUBNET_MASK寄存器。CPU26經(jīng)處理器接口(pi_mod)57而為寄存器編程。SUBNET_ID寄存器提供用于儲(chǔ)存的單個(gè)端口所屬的IP地址。在交換機(jī)12a上的每個(gè)端口具有一個(gè)SUBNET_ID寄存器。SUBNET_MASK提供用于儲(chǔ)存的單個(gè)端口的32位IP地址掩碼(address mask)。在交換機(jī)12a上的每個(gè)端口具有一個(gè)SUBNET_MASK掩碼寄存器。
MAC出隊(duì)邏輯54對(duì)交換模塊25所進(jìn)行的處理加以響應(yīng),提供從SSRAM 28檢索接收的數(shù)據(jù)包并將該數(shù)據(jù)包傳送給適當(dāng)?shù)亩丝凇?br>
發(fā)送FIFO 55提供了在端口20發(fā)送之前,用于要發(fā)送的數(shù)據(jù)包的緩沖器。
在端口20接收進(jìn)入的資枓封包并在接收FIFO 51內(nèi)使進(jìn)入的資枓封包得到緩沖。MAC排隊(duì)邏輯52將數(shù)據(jù)包傳送至外部存儲(chǔ)器接口56,經(jīng)數(shù)據(jù)總線59而儲(chǔ)存于SSRAM 28內(nèi)。
MAC排隊(duì)邏輯52通過(guò)檢驗(yàn)數(shù)據(jù)包的標(biāo)題及幀數(shù)據(jù)而在接收的數(shù)據(jù)包內(nèi)搜尋第三層信息,例如IP數(shù)據(jù)包。利用第三層信息,通過(guò)將IP標(biāo)題內(nèi)的目的IP地址與儲(chǔ)存于存儲(chǔ)器53的寄存器內(nèi)的數(shù)值加以比較,MAC排隊(duì)邏輯52可判斷是否接收的數(shù)據(jù)包為內(nèi)部子網(wǎng)絡(luò)通信量的一部分。
尤其是,若接收的數(shù)據(jù)包是從路由器端口所接收的話,IP目的地址將對(duì)所有其余端口的SUBNET_MASK掩碼(mask)。隨后將掩碼操作的結(jié)果對(duì)照所有其余端口的SUBNET_ID寄存器進(jìn)行比較。若比較操作的結(jié)果是成功的,MAC排隊(duì)邏輯52即對(duì)交換模塊25設(shè)置RNETS_ENABLE信號(hào)。
也可配置MAC排隊(duì)邏輯52,以便判斷當(dāng)封包由非路由器端口到達(dá)時(shí),子網(wǎng)絡(luò)直接連接至網(wǎng)絡(luò)交換機(jī)12a的情況下,是否對(duì)于子網(wǎng)絡(luò)內(nèi)的IP地址,交換模塊25需要學(xué)習(xí)接收的數(shù)據(jù)包的源IP-MAC地址關(guān)聯(lián)。主機(jī)CPU26負(fù)責(zé)在存儲(chǔ)器53內(nèi)使各寄存器編程,使得交換模塊25知道是何端口連接至路由器。
還可配置MAC排隊(duì)邏輯52,使得當(dāng)端口識(shí)別器模塊24的MAC排隊(duì)邏輯52判定接收的數(shù)據(jù)包預(yù)定發(fā)給該路由器并可能是內(nèi)部子網(wǎng)絡(luò)通信量的一部分時(shí),學(xué)習(xí)IP-MAC關(guān)聯(lián)。
另外,可配置封包識(shí)別器模塊24的MAC排隊(duì)邏輯52,使得當(dāng)接收的數(shù)據(jù)包預(yù)定發(fā)給該路由器并且為內(nèi)部子網(wǎng)絡(luò)通信量的一部分時(shí),學(xué)習(xí)所接收的封包的IP-MAC關(guān)聯(lián)。
尤其是,MAC排隊(duì)邏輯52比較所接收的數(shù)據(jù)包的MAC目的地址與在存儲(chǔ)器53內(nèi)所儲(chǔ)存的路由器的MAC地址。若比較操作的結(jié)果是成功的,該接收的數(shù)據(jù)包即是預(yù)定發(fā)給該路由器。接著,端口識(shí)別器模塊24的MAC排隊(duì)邏輯52通知交換模塊25,選擇性地將第二層源地址及相關(guān)的第三層源地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì),儲(chǔ)存于地址表30中。
可根據(jù)網(wǎng)絡(luò)交換機(jī)12中的通信流量或使用者的偏好,配置封包識(shí)別器模塊42的MAC排隊(duì)邏輯52以實(shí)現(xiàn)這些功能中的任一功能。還可配置MAC排隊(duì)邏輯52,從而實(shí)現(xiàn)使用者認(rèn)為必要的各種其它功能。
圖3是說(shuō)明圖2中所示的封包識(shí)別符模塊24進(jìn)行的學(xué)習(xí)的流程圖。在步驟310中,在端口識(shí)別器模塊24處從一個(gè)端口20接收數(shù)據(jù)包。
配置端口識(shí)別器模塊24,使其在步驟320判斷是否接收的數(shù)據(jù)包是從非路由器端口所接收的。主機(jī)CPU負(fù)責(zé)將哪一個(gè)端口編程連接至路由器。
若在步驟320,接收的數(shù)據(jù)包正由非路由器端口所接收,則端口識(shí)別器模塊24的MAC排隊(duì)邏輯52斷言(assert)學(xué)習(xí)信號(hào),以通知交換模塊25在步驟330中,將第二層地址或MAC地址以及關(guān)聯(lián)的第三層地址或IP地址作為相關(guān)聯(lián)的第二層-第三層地址而儲(chǔ)存在存儲(chǔ)器30內(nèi)的地址表中。
若在步驟320,接收的數(shù)據(jù)包正由路由器端口所接收,則端口識(shí)別器模塊24的MAC排隊(duì)邏輯52即在步驟340不對(duì)交換模塊25斷言學(xué)習(xí)信號(hào)。從而不學(xué)習(xí)所接收的數(shù)據(jù)包的IP-MAC關(guān)聯(lián)。
圖4是說(shuō)明圖2中所示的封包識(shí)別符模塊24進(jìn)行的學(xué)習(xí)的另一個(gè)流程圖。在此項(xiàng)規(guī)則中,當(dāng)接收的數(shù)據(jù)包是來(lái)自非路由器端口并且具有該路由器的目的MAC地址時(shí),將學(xué)習(xí)IP-MAC關(guān)聯(lián)。在步驟410中,經(jīng)端口20的其中一個(gè)端口而在端口識(shí)別器模塊24處接收數(shù)據(jù)包。
端口識(shí)別器模塊24經(jīng)配置以在步驟410判定是否接收的數(shù)據(jù)包正由非路由器端口所接收,并且該數(shù)據(jù)包的MAC目的地址為該路由器。主機(jī)CPU26負(fù)責(zé)將哪一個(gè)端口編程連接至路由器,并且MAC排隊(duì)邏輯52比較接收的數(shù)據(jù)包的目的MAC地址與路由器的MAC地址。
在步驟420,若比較是成功的,則接收的數(shù)據(jù)包正在非路由器端口上接收并且目的MAC地址在步驟430中為路由器。在步驟430中,端口識(shí)別器模塊24的MAC排隊(duì)邏輯52通知交換模塊25將第二層源地址或MAC源地址以及相關(guān)的第三層源地址或IP源地址作為相關(guān)聯(lián)的第二層-第三層地址,儲(chǔ)存于存儲(chǔ)器30的地址表中。
若在步驟420中,比較的其中之一失敗或兩者均失敗,則在步驟440中,端口識(shí)別器模塊24即不通知交換模塊25。將不學(xué)習(xí)接收的數(shù)據(jù)包的IP-MAC關(guān)聯(lián)。
圖5是說(shuō)明圖4所示的封包識(shí)別符模塊24進(jìn)行的學(xué)習(xí)的另一個(gè)流程圖。在此項(xiàng)規(guī)則中,當(dāng)接收的數(shù)據(jù)包為內(nèi)部子網(wǎng)絡(luò)通信量的一部分并且目的MAC地址為路由器,則IP-MAC關(guān)聯(lián)將學(xué)習(xí)。在步驟510中,在端口識(shí)別器模塊24處從端口20的其中之一接收數(shù)據(jù)包。
端口識(shí)別器模塊24經(jīng)配置在步驟510中判斷是否接收的數(shù)據(jù)包正由非路由器端口所接收。MAC排隊(duì)邏輯52對(duì)于在交換模塊25內(nèi)的所有其它的SUBNET MASK掩碼目的IP地址。隨后將掩碼結(jié)果與在交換機(jī)12a內(nèi)的所有其它的SUBNET ID地址進(jìn)行比較。再者,MAC排隊(duì)邏輯52還比較接收的數(shù)據(jù)包的目的MAC地址與路由器的MAC地址。
若由步驟520的所有比較都是成功的,端口識(shí)別器模塊24的MAC排隊(duì)邏輯52即通知交換模塊25在步驟530,將第二層源地址或MAC源地址以及相關(guān)的第三層源地址或IP源地址作為相關(guān)聯(lián)的第二層-第三層地址,儲(chǔ)存于存儲(chǔ)器30內(nèi)的地址表中。
若由步驟520的所有比較都是失敗的,在步驟540中,端口識(shí)別器模塊24的MAC排隊(duì)邏輯52將不會(huì)通知交換模塊25。將不會(huì)學(xué)習(xí)接收的數(shù)據(jù)包的IP-MAC關(guān)聯(lián)。
依據(jù)所述實(shí)施例,封包別器模塊經(jīng)配置而用于判斷是否接收的數(shù)據(jù)包源自路由器。若封包識(shí)別器模塊識(shí)別所接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非路由器,交換模塊即選擇性地將第二層地址及數(shù)據(jù)包的相關(guān)的第三層地址作為相關(guān)聯(lián)的第二-第三層地址對(duì),儲(chǔ)存于地址表中。通過(guò)儲(chǔ)存選定數(shù)據(jù)包的IP-MAC關(guān)聯(lián),當(dāng)交換機(jī)在交換期間參考地址表時(shí),網(wǎng)絡(luò)交換機(jī)即可減少地址表中的搜尋時(shí)間。因此,封包識(shí)別器模塊使網(wǎng)絡(luò)交換機(jī)能夠提供100Mbps或千兆位鏈接的第三層及第二層交換能力而沒(méi)有數(shù)據(jù)包的阻塞。
雖然本發(fā)明依據(jù)目前認(rèn)為是最可行的優(yōu)選實(shí)施例而進(jìn)行描述,需要了解的是本發(fā)明并非限定于所述的實(shí)施例,反之,應(yīng)認(rèn)為本發(fā)明涵蓋各種包含于所附權(quán)利要求書(shū)的精神及范圍內(nèi)的改動(dòng)及等值方案。
權(quán)利要求
1.一種用于網(wǎng)絡(luò)交換機(jī)的方法,該方法包括由該網(wǎng)絡(luò)交換機(jī)的一個(gè)端口接收數(shù)據(jù)包;判斷是否所述一個(gè)端口接收到來(lái)自路由器的數(shù)據(jù)包;以及基于所述一個(gè)端口接收到來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非所述路由器的數(shù)據(jù)包的判斷,選擇性地將來(lái)自該數(shù)據(jù)包的第二層地址及相關(guān)的第三層地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì),儲(chǔ)存于地址表中。
2.如權(quán)利要求1的方法,其中所述選擇性的儲(chǔ)存步驟包含基于所述一個(gè)端口接收到來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非所述路由器的數(shù)據(jù)包的判斷,并根據(jù)處于該數(shù)據(jù)包內(nèi)的目的第二層地址指定所述路由器的判斷,將來(lái)自該數(shù)據(jù)包的第二層地址及相關(guān)的第三層地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì)加以儲(chǔ)存。
3.如權(quán)利要求2的方法,其中所述第二層地址及所述相關(guān)的第三層地址為源地址。
4.如權(quán)利要求1的方法,其中所述網(wǎng)絡(luò)交換機(jī)包含分別連接至第一子網(wǎng)絡(luò)及第二子網(wǎng)絡(luò)的第二端口及第三端口。
5.如權(quán)利要求4的方法,進(jìn)一步包括判斷是否該數(shù)據(jù)包包含指定該數(shù)據(jù)包在所述第二端口及所述第三端口之間的傳輸?shù)牡刂沸畔ⅰ?br>
6.如權(quán)利要求5的方法,其中所述選擇性的儲(chǔ)存步驟包含基于所述一個(gè)端口接收到來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非所述路由器的數(shù)據(jù)包的判斷,并根據(jù)該數(shù)據(jù)包包含指定該數(shù)據(jù)包在該第二端口及該第三端口之間的傳輸?shù)牡刂沸畔ⅲ瑢⒃摰诙拥刂芳八鱿嚓P(guān)的第三層地址作為所述關(guān)聯(lián)的第二層-第三層地址對(duì)加以儲(chǔ)存。
7.如權(quán)利要求2的方法,進(jìn)一步包括通過(guò)在該網(wǎng)絡(luò)交換機(jī)內(nèi)的端口識(shí)別器模塊判斷該數(shù)據(jù)包包含指定該數(shù)據(jù)包在第二端口及第三端口之間的傳輸?shù)牡刂沸畔?,其中該第二端口及該第三端口分別連接至第一及第二子網(wǎng)絡(luò)。
8.一種網(wǎng)絡(luò)交換機(jī),包括多個(gè)端口,用于接收及傳送多個(gè)數(shù)據(jù)包,其中該多個(gè)端口的其中一個(gè)端口連接至路由器;封包識(shí)別器模塊,配置用于判斷是否接收的數(shù)據(jù)包來(lái)自路由器;以及交換模塊,配置為基于接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非該路由器,選擇性地將來(lái)自該接收的數(shù)據(jù)包的第二層地址及相關(guān)的第三層地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì),儲(chǔ)存于地址表中。
9.如權(quán)利要求8的網(wǎng)絡(luò)交換機(jī),其中該封包識(shí)別器模塊配置用于判斷是否該接收的數(shù)據(jù)包包含指定該路由器的目的地址的地址信息;以及該交換模塊配置為基于接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn),并根據(jù)包含該路由器的目的地址的該地址信息,選擇性地將來(lái)自該接收的數(shù)據(jù)包的第二層地址及相關(guān)的第三層地址作為相關(guān)聯(lián)的第二層-第三層地址對(duì)加以儲(chǔ)存。
10.如權(quán)利要求8的網(wǎng)絡(luò)交換機(jī),其中該第二層地址及該相關(guān)的第三層地址為源地址。
11.如權(quán)利要求8所述的網(wǎng)絡(luò)交換機(jī),其中所述多個(gè)端口的第二端口連接至第一子網(wǎng)絡(luò);所述多個(gè)端口的第三端口連接至第二子網(wǎng)絡(luò);以及該封包識(shí)別器模塊配置用于判斷是否所述接收的數(shù)據(jù)包包含地址信息,該地址信息指定該接收的數(shù)據(jù)包在該第一子網(wǎng)絡(luò)及該第二子網(wǎng)絡(luò)之間的傳輸。
12.如權(quán)利要求11的網(wǎng)絡(luò)交換機(jī),其中該交換模塊基于該接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn),并根據(jù)指定該接收的數(shù)據(jù)包在該第一子網(wǎng)絡(luò)及第二子網(wǎng)絡(luò)之間傳輸?shù)脑摰刂沸畔?,而選擇性地將該接收的數(shù)據(jù)包的該第二層地址及該相關(guān)的第三層地址作為所述相關(guān)聯(lián)的第二層-第三層地址對(duì)加以儲(chǔ)存。
13.如權(quán)利要求8的網(wǎng)絡(luò)交換機(jī),進(jìn)一步包括所述多個(gè)端口的第二端口連接至第一子網(wǎng)絡(luò);所述多個(gè)端口的第三端口連接至第二子網(wǎng)絡(luò);以及該封包識(shí)別器模塊配置用于判斷是否所述接收的數(shù)據(jù)包包含地址信息,該地址信息指定該接收的數(shù)據(jù)包在該第一子網(wǎng)絡(luò)及該第二子網(wǎng)絡(luò)之間的傳輸。
14.如權(quán)利要求8所述的網(wǎng)絡(luò)交換機(jī),其中所述多個(gè)端口的每一個(gè)端口經(jīng)配置而包含該封包識(shí)別器模塊。
全文摘要
一種封包識(shí)別器模塊,該封包識(shí)別器模塊配置用于判斷是否接收的數(shù)據(jù)包來(lái)自路由器。若封包識(shí)別器模塊確認(rèn)接收的數(shù)據(jù)包來(lái)自網(wǎng)絡(luò)節(jié)點(diǎn)而非路由器,交換模塊選擇性地儲(chǔ)存該數(shù)據(jù)包的第二層地址及相關(guān)的第三層地址,作為地址表中相關(guān)聯(lián)的第二層-第三層地址對(duì)。該相關(guān)的第二層-第三層地址的選擇性儲(chǔ)存亦稱(chēng)為對(duì)數(shù)據(jù)包的網(wǎng)際協(xié)議(IP)-媒體訪問(wèn)控制關(guān)聯(lián)(MAC)的學(xué)習(xí)。通過(guò)選擇性地學(xué)習(xí)來(lái)自非路由器端口的選定數(shù)據(jù)包的IP-MAC關(guān)聯(lián),即可減少地址表溢出的可能性。再者,通過(guò)使用學(xué)習(xí)的IP-MAC關(guān)聯(lián),網(wǎng)絡(luò)交換機(jī)可以繞過(guò)路由器而交換第三層數(shù)據(jù)包并減少等待時(shí)間。
文檔編號(hào)H04L12/56GK1456004SQ01807985
公開(kāi)日2003年11月12日 申請(qǐng)日期2001年3月23日 優(yōu)先權(quán)日2000年4月13日
發(fā)明者S-J·曾 申請(qǐng)人:先進(jìn)微裝置公司