專利名稱:用于ip轉(zhuǎn)發(fā)和atm交換的設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及交換結(jié)點(diǎn),尤其是涉及一個(gè)用于IP轉(zhuǎn)發(fā)和ATM交換的單個(gè)設(shè)備。
背景技術(shù):
在傳統(tǒng)的系統(tǒng)中,計(jì)算機(jī)網(wǎng)絡(luò)一般被看成可劃分為幾層。開放系統(tǒng)互聯(lián)(OSI)參考模型由國(guó)際標(biāo)準(zhǔn)組織(ISO)建立。OSI參考模型定義一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)有七層,從一個(gè)物理層到一個(gè)應(yīng)用層。許多不同的協(xié)議在一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)的各自的層上開發(fā)使用。異步傳輸方式(ATM)協(xié)議是一個(gè)層2協(xié)議。層2是數(shù)據(jù)鏈路層并且負(fù)責(zé)在一個(gè)數(shù)據(jù)鏈路上傳輸信息塊?;ヂ?lián)網(wǎng)協(xié)議(IP)是一個(gè)層3協(xié)議的一個(gè)例子。層3是網(wǎng)絡(luò)層,負(fù)責(zé)使在計(jì)算機(jī)網(wǎng)絡(luò)中的任一對(duì)系統(tǒng)能夠互相通信。
在傳統(tǒng)的系統(tǒng)中,ATM網(wǎng)絡(luò)被看成與IP網(wǎng)絡(luò)獨(dú)立的空間。ATM網(wǎng)絡(luò)對(duì)于部分服務(wù)工作良好,而IP網(wǎng)絡(luò)對(duì)于另一部分服務(wù)工作良好。既然IP或者ATM都不能提供一個(gè)完整的多服務(wù)方案,許多服務(wù)提供者選擇使用雙網(wǎng)絡(luò)。IP網(wǎng)絡(luò)支持例如互聯(lián)網(wǎng)訪問以及虛擬專用網(wǎng)絡(luò)的應(yīng)用,而ATM網(wǎng)絡(luò)支持幀中繼、虛擬專用網(wǎng)絡(luò)、通路模擬、專用分支交換(PBX)以及其他其可靠性和服務(wù)質(zhì)量(QOS)是優(yōu)先的應(yīng)用。
發(fā)明概述本發(fā)明提供一個(gè)設(shè)備,不僅可以進(jìn)行IP包轉(zhuǎn)發(fā)和路由,而且可以進(jìn)行ATM交換和路由。本發(fā)明的設(shè)備允許一個(gè)網(wǎng)絡(luò)開發(fā)者不專門針對(duì)一個(gè)單個(gè)協(xié)議;而且本發(fā)明的設(shè)備允許開發(fā)者在一個(gè)單個(gè)設(shè)備內(nèi)支持許多不同的協(xié)議。本發(fā)明的設(shè)備提供了一個(gè)真正的多源能力。設(shè)備能夠在SONET上處理ATM、IP包,并且在ATM上路由IP包。
根據(jù)本發(fā)明的一個(gè)方面,一個(gè)用于把輸入數(shù)據(jù)導(dǎo)向目的地址的設(shè)備包含一個(gè)IP包轉(zhuǎn)發(fā)設(shè)備用于轉(zhuǎn)發(fā)輸入數(shù)據(jù)中的IP包到它們的目的地址。設(shè)備還包含一個(gè)ATM信元交換設(shè)備用于交換輸入數(shù)據(jù)中的ATM信元到它們的目的地址。輸入數(shù)據(jù)可能包含同步光纖網(wǎng)絡(luò)(SONET)幀。
根據(jù)本發(fā)明的另一個(gè)方面,一個(gè)用于把輸入導(dǎo)向目的地址的裝置包含用于接收輸入的輸入端口以及用于輸出數(shù)據(jù)的輸出端口。裝置還包含一個(gè)耦合到一個(gè)選中輸入端口的導(dǎo)向器,用于把輸入導(dǎo)向輸出端口?;谠趯?數(shù)據(jù)單元中的地址信息,導(dǎo)向器把由OSI層2協(xié)議封裝的層2數(shù)據(jù)單元導(dǎo)向輸出端口?;谠趯?數(shù)據(jù)單元中的地址信息,導(dǎo)向器還把由OSI層3協(xié)議封裝的層3數(shù)據(jù)單元導(dǎo)向輸出端口。層2協(xié)議可能是ATM協(xié)議,而層3協(xié)議可能是IP。
根據(jù)本發(fā)明的一個(gè)進(jìn)一步的方面,在設(shè)備中一個(gè)方法被用來(lái)把輸入端口上的輸入數(shù)據(jù)通信導(dǎo)向輸出端口。一個(gè)IP查找被提供來(lái)識(shí)別向何處導(dǎo)向一個(gè)從一個(gè)選中輸入端口接收的IP包。一個(gè)ATM查找被提供來(lái)識(shí)別向何處導(dǎo)向一個(gè)從一個(gè)選中輸入端口接收的ATM信元。一個(gè)單位的輸入數(shù)據(jù)由一個(gè)選中的輸入端口接收。如果該單位數(shù)據(jù)是一個(gè)ATM信元,ATM查找被用來(lái)識(shí)別向哪個(gè)輸出端口導(dǎo)向該單位數(shù)據(jù)。當(dāng)該單位數(shù)據(jù)是一個(gè)IP包,IP查找被用來(lái)識(shí)別向哪個(gè)輸出端口導(dǎo)向該單位數(shù)據(jù)。
根據(jù)本發(fā)明的一個(gè)進(jìn)一步方面,一個(gè)設(shè)備被提供來(lái)把包含標(biāo)識(shí)目的地址的地址信息的IP包以及包含標(biāo)識(shí)目的地址的地址信息的ATM信元導(dǎo)向到它們的目的地址。設(shè)備包含用于接收輸入數(shù)據(jù)流的輸入端口以及用于輸出數(shù)據(jù)流的輸出端口。設(shè)備還包含用于把在輸入端口接收的輸入數(shù)據(jù)導(dǎo)向到輸出端口的線路卡。每個(gè)線路卡包含一個(gè)基于IP包中包含的地址信息把輸入數(shù)據(jù)中的IP包導(dǎo)向到輸出端口的IP包轉(zhuǎn)發(fā)設(shè)備。另外,每個(gè)線路卡包含一個(gè)基于ATM信元中包含的地址信息把輸入數(shù)據(jù)中的ATM信元導(dǎo)向到輸出端口的ATM信元轉(zhuǎn)發(fā)設(shè)備。設(shè)備可以包含一個(gè)用于互聯(lián)線路卡來(lái)便于在線路卡之間通信的互聯(lián)。一個(gè)多路復(fù)用器可以放在選中輸入端口之前來(lái)多路傳輸數(shù)據(jù)流到一個(gè)單輸入數(shù)據(jù)流。輸入數(shù)據(jù)可以作為一個(gè)OC-48數(shù)據(jù)流接收。
依照后面的附圖,本發(fā)明的一個(gè)說(shuō)明性實(shí)施方案將在以下進(jìn)行描述。
圖1描述一個(gè)用于本發(fā)明的說(shuō)明性實(shí)施方案的一個(gè)交換架。
圖2描述說(shuō)明性實(shí)施方案的一個(gè)具體實(shí)現(xiàn),其中使用了多個(gè)交換架。
圖3描述在說(shuō)明性實(shí)施方案中使用的信道化SONET方案。
圖4描述多路復(fù)用器以及一個(gè)有四個(gè)線路卡的交換架。
圖5更詳細(xì)地描述一個(gè)線路卡的部件。
圖6描述在輸入通信時(shí)執(zhí)行的三個(gè)主要處理階段。
圖7是功能框圖用于描述在數(shù)據(jù)通信時(shí)執(zhí)行的步驟。
圖8是一個(gè)流程圖用于描述在輸入處理時(shí)執(zhí)行的步驟。
圖9是一個(gè)功能框圖用于描述在輸入處理時(shí)執(zhí)行的功能步驟。
圖10是圖5中接收ASIC70的一個(gè)更詳細(xì)的方框圖。
圖11描述一個(gè)SONET STS-1幀的邏輯格式。
圖12描述一個(gè)DS-3PLCP幀的邏輯格式。
圖13描述一個(gè)PPP幀的邏輯格式。
圖14描述一個(gè)幀中繼幀的邏輯格式。
圖15描述一個(gè)AAL5IDU的邏輯格式。
圖16是一個(gè)流程圖用于描述在ATM信元輸入處理時(shí)所執(zhí)行的步驟。
圖17描述一個(gè)ATM信元的邏輯格式。
圖18描述一個(gè)內(nèi)部單元的邏輯格式。
圖19是一個(gè)方框圖用于描述在說(shuō)明性實(shí)施方案中的ATM查找圖20是一個(gè)流程圖用于描述在IP輸入處理時(shí)所執(zhí)行的步驟。
圖21描述在IP查找時(shí)使用的頭數(shù)據(jù)的邏輯格式。
圖22描述在IP查找時(shí)采用的數(shù)據(jù)結(jié)構(gòu)和表格。
圖23描述一個(gè)DANET結(jié)構(gòu)的的一個(gè)邏輯格式。
圖24是一個(gè)流程圖用于描述在IP查找時(shí)所執(zhí)行的步驟。
圖25是一個(gè)方框圖用于描述在IP查找中的一個(gè)查找數(shù)組的索引。
圖26是一個(gè)例子用來(lái)描述在IP查找中的查找數(shù)組和DANET結(jié)構(gòu)的關(guān)系。
圖27是一個(gè)流程圖用于描述在交換階段所執(zhí)行的步驟。
圖28是一個(gè)功能框圖用于描述在輸出處理時(shí)執(zhí)行的功能步驟。
圖29是圖5中傳送ASIC64的一個(gè)更詳細(xì)的方框圖。
圖30描述在傳送ASIC64中采用的傳輸隊(duì)列。
圖31描述在把數(shù)據(jù)轉(zhuǎn)發(fā)到傳輸隊(duì)列中采用的邏輯。
發(fā)明詳述本發(fā)明的說(shuō)明性實(shí)施方案提供了一個(gè)單個(gè)設(shè)備用于進(jìn)行互聯(lián)網(wǎng)協(xié)議(IP)轉(zhuǎn)發(fā)/路由以及異步傳輸方式(ATM)交換/路由。單個(gè)設(shè)備包含一個(gè)IP包轉(zhuǎn)發(fā)設(shè)備以及一個(gè)ATM交換設(shè)備。在文中,″轉(zhuǎn)發(fā)″指的是在一個(gè)通信結(jié)點(diǎn)中包在一個(gè)源端口和一個(gè)或多個(gè)目的端口之間的傳遞,其中通信結(jié)點(diǎn)是例如一個(gè)交換器、一個(gè)路由器或者一個(gè)交換/路由器?!迓酚伞逯傅氖怯梢粋€(gè)通信結(jié)點(diǎn)向一個(gè)轉(zhuǎn)發(fā)表或者類似的結(jié)構(gòu)提供信息的拓?fù)湫畔⒎e累,其中通信結(jié)點(diǎn)被用來(lái)把輸入數(shù)據(jù)導(dǎo)向到一個(gè)目的地址?!褰粨Q″指的是在一個(gè)面向連接的環(huán)境中,通過(guò)中間交換結(jié)點(diǎn)導(dǎo)向包或者其他模塊化信息來(lái)連接一個(gè)發(fā)送端和一個(gè)接收端。
說(shuō)明性實(shí)施方案消除了獨(dú)立交換器和路由器的需要。說(shuō)明性實(shí)施方案中采用的設(shè)備可以在一個(gè)單個(gè)設(shè)備中處理ATM信元和IP包,并且也可以處理載在ATM信元上的IP包。設(shè)備可以在IP網(wǎng)絡(luò)中采用,例如互聯(lián)網(wǎng)、企業(yè)網(wǎng)或者外部企業(yè)網(wǎng),或者在更傳統(tǒng)的交換環(huán)境中使用,例如虛擬專用網(wǎng)(VPNs),專用數(shù)據(jù)網(wǎng)。設(shè)備支持在一個(gè)SONET(同步光纖網(wǎng)絡(luò))上的IP包的路由,在ATM上的IP包的路由以及純ATM交換。更一般地說(shuō),說(shuō)明性實(shí)施方案消除了在層2設(shè)備和層3設(shè)備之間的分隔從而使得層2數(shù)據(jù)信元和層3數(shù)據(jù)單元可以被一個(gè)單個(gè)設(shè)備導(dǎo)向到它們的目的地址。
說(shuō)明性實(shí)施方案在一個(gè)通信網(wǎng)絡(luò)中采用了一個(gè)適于使用的交換器/路由器,其中通信網(wǎng)絡(luò)例如一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)或者一個(gè)電話網(wǎng)絡(luò)。交換器/路由器包含用于接收輸入數(shù)據(jù)通信的輸入端口以及用于把輸入數(shù)據(jù)通信導(dǎo)向到目的地址的輸出端口。每個(gè)輸入數(shù)據(jù)端口連到一條通信線,例如一條光纖。同樣,每個(gè)輸入數(shù)據(jù)端口連到一條類似的通信線(例如一條光纖)。一個(gè)ATM信元轉(zhuǎn)發(fā)設(shè)備以及一個(gè)IP包轉(zhuǎn)發(fā)設(shè)備提供給每個(gè)輸入端口。ATM信元轉(zhuǎn)發(fā)設(shè)備為每個(gè)由輸入端口接收的ATM信元確定使用哪個(gè)輸出端口輸出ATM信元。IP包轉(zhuǎn)發(fā)設(shè)備為每個(gè)由輸入端口接收的IP包確定使用哪個(gè)輸出端口輸出IP包。因此,每個(gè)輸入端口可以接收ATM信元和IP包,并且交換器/路由器將會(huì)恰當(dāng)?shù)貙?dǎo)向ATM信元和IP包。
下面的討論總結(jié)了說(shuō)明性實(shí)施方案中的交換/路由設(shè)備的結(jié)構(gòu)以及運(yùn)行。
圖1描述一個(gè)適用于本發(fā)明的說(shuō)明性實(shí)施方案中交換/路由設(shè)備的一個(gè)交換架10。交換架10為設(shè)備提供了核心交換功能性。下面將會(huì)進(jìn)行更加詳細(xì)地解釋,設(shè)備可以包含多個(gè)交換架來(lái)增加設(shè)備的交換能力。交換功能性的模塊化使得網(wǎng)絡(luò)提供者可以選擇適合于網(wǎng)絡(luò)提供者需要的交換能力。交換架1O包含一個(gè)機(jī)柜12用于固定交換架組件,包括八個(gè)線路卡14。八個(gè)線路卡14是包含接收和傳送數(shù)據(jù)智能的印刷電路板。每個(gè)線路卡14被設(shè)計(jì)成接收/傳送一個(gè)OC-48輸入流,相應(yīng)于2,488千兆比特每秒(Gbps)。SONET是一個(gè)定義了一系列便于多個(gè)銷售商傳輸產(chǎn)品之間互聯(lián)的光纖傳輸速率的標(biāo)準(zhǔn)。SDH是一個(gè)技術(shù)上和SONET一致的標(biāo)準(zhǔn)。光纖傳輸速率被定為光纖載送(OC)率。SONET/SDH OC速率被如下定義OC級(jí)別 線路速率 能力OC-1 51.84Mbps 28DS1s或1DS3OC-3 155.52Mbps 84DS1s或3DS3sOC-9 466.56Mbps 252DS1s或9DS3sOC-12 622.08Mbps 336DS1s或12DS3sOC-18 933.12Mbps 504DS1s或18DS3sOC-24 1.244Gbps 672DS1s或24DS3sOC-36 1.866Gbps 1008DS1s或36DS3sOC-48 2.488Gbps 1344DS1s或48DS3sOC-96 4.976Gbps 2688DS1s或96DS3sOC-192 9.953Gbps 5376DS1s或192DS3s在上面的標(biāo)識(shí)表中,OC-48是規(guī)定的線路速率之一。在表格的能力欄,以DS-1和DS-3速率作為參照。SONET/SDH能力用數(shù)字信號(hào)速率的近序時(shí)數(shù)字層次(PDH)的線路速率表示,其用來(lái)對(duì)線路或者干線能力進(jìn)行分級(jí)。在DS層次中,基本速度級(jí)別是DS-0,相當(dāng)于64千字節(jié)每秒。DS-1相當(dāng)于1.54兆字節(jié)每秒,而DS-3相當(dāng)于44.736mbps。
交換架10還包含占用3個(gè)插槽的交換模塊卡18。交換模塊卡18是印刷電路板,用來(lái)提供便于線路卡之間通信的交換能力。交換模塊卡18形成″互聯(lián)″的核心,其將在下面進(jìn)行更加詳細(xì)地描述。交換資源模塊16占用交換架10中剩余的兩個(gè)插槽。這些模塊16為交換架10管理板級(jí)別的狀態(tài)信息。
上面提到,附加交換架10可以用于設(shè)備來(lái)增加設(shè)備的交換能力。圖2顯示了一個(gè)采用八個(gè)交換架10的例子。訪問架20也在設(shè)備中采用。每個(gè)訪問架20有一對(duì)線性終端多路復(fù)用器,其產(chǎn)生一個(gè)結(jié)構(gòu)化的OC-48數(shù)據(jù)流體OC-12/STM4、OC-2/STM1、DS-3且/或E3支流。在圖2描述的例子中,八個(gè)訪問架20被采用。一個(gè)訪問架20提供給一個(gè)相應(yīng)的交換架10。設(shè)備還包含許多控制架24。每個(gè)控制架24包含一對(duì)雙冗余控制處理器。擴(kuò)展架22是一個(gè)160Gbps交換器,用于最多8個(gè)交換架10的互聯(lián)。擴(kuò)展架22允許一個(gè)輸入數(shù)據(jù)流在一個(gè)交換架10的一個(gè)線路卡接收而在第二個(gè)交換架的一個(gè)線路卡輸出。
說(shuō)明性實(shí)施方案的設(shè)備提供了一個(gè)運(yùn)行的信道SONET/SDH模式,這樣每個(gè)OC-48線路卡模塊可以配置成DS-3、OC-3以及OC-12或者OC-48支流結(jié)構(gòu)。圖3顯示了這種信道的一個(gè)例子。一個(gè)單OC-48輸入流30有包括SONET支流32上的一個(gè)OC-12C包以及一個(gè)OC-12ATM支流34。支流38劃分成四個(gè)OC-3支流,包括SONET支流44上的OC-3C包以及一個(gè)OC-3ATM支流46。支流47劃分成三個(gè)DS-3支流,包括一個(gè)ATM HEC描繪的支流40、一個(gè)DS-3ATM PLCP描繪的支流41以及一個(gè)在DS-3支流42上的PPP。在線路卡模塊14上的每個(gè)多路分解OC-48輸入流到特定的支流并且然后在支流(即″信道″)上獨(dú)自運(yùn)行。支流的配置是軟件控制的并且可以動(dòng)態(tài)改變。
圖4為說(shuō)明性實(shí)施方案的設(shè)備描述了功能布局部分的一個(gè)例子。設(shè)備包含耦合到輸入通信線的線路卡53、55、57和59。線路卡53、55、57和59中每個(gè)都通過(guò)一個(gè)輸入端口接收一個(gè)單物理OC-48數(shù)據(jù)流。圖5更加詳細(xì)地描述了一些在線路卡59中的附加組件。其它線路卡53、55、和57中每個(gè)都設(shè)為有一個(gè)相似的布局。線路卡59包含一個(gè)微處理器72以及一個(gè)存儲(chǔ)器74。存儲(chǔ)器74可以有許多不同形式,包括隨機(jī)存儲(chǔ)器(RAM)或者只讀存儲(chǔ)器(ROM)。線路卡59包含應(yīng)用專用的集成電路(ASICs),包括一個(gè)接收ASIC70以及一個(gè)傳輸ASIC64。接收ASIC70負(fù)責(zé)接收輸入數(shù)據(jù)并且處理數(shù)據(jù)從而數(shù)據(jù)適于在互聯(lián)62上傳送。傳輸ASIC64接收來(lái)自互聯(lián)62的數(shù)據(jù)并把數(shù)據(jù)在一個(gè)輸出端口上轉(zhuǎn)發(fā)到一條輸出線。上面提到,線路卡53、55、和57中每個(gè)都有一個(gè)圖5中描述的相似布局。因此,線路卡53包含ASIC54、線路卡55包含ASIC56而線路卡59包含ASIC58。
本領(lǐng)域的技術(shù)人員可以理解圖5中顯示的線路卡59的描述只是說(shuō)明性的,而不是本發(fā)明的限制。其它線路卡配置可以在本發(fā)明的實(shí)際應(yīng)用中使用。還有,線路卡提供的功能型不需要在一個(gè)線路卡本身實(shí)現(xiàn),而是可以在一個(gè)不同方式或者通過(guò)一個(gè)不同電路配置實(shí)現(xiàn)。另外,接收ASIC70以及傳輸ASIC64不需要作為兩個(gè)單獨(dú)的ASICs來(lái)實(shí)現(xiàn),而可以作為兩個(gè)以上ASICs或者一個(gè)單ASIC來(lái)實(shí)現(xiàn)。
線路卡53可以有SONET多路復(fù)用器,例如多路復(fù)用器50和52為線路卡放在輸入端口的輸入處來(lái)多路復(fù)用輸入支流數(shù)據(jù)流到OC-48數(shù)據(jù)流。在圖4描述的例子中,SONET多路復(fù)用器50多路復(fù)用4個(gè)OC-12數(shù)據(jù)流到一個(gè)OC-48數(shù)據(jù)流。控制處理器64控制監(jiān)視線路卡53、55、57以及59和互聯(lián)62的運(yùn)行。多路分解器50和52放在輸出端口的供給來(lái)接收線路卡的OC-48輸出并且把它分到組成的支流,例如OC-12、OC-3或者DS-3支流。
一個(gè)例子有助于說(shuō)明數(shù)據(jù)在圖4的組件中流動(dòng)。假定四個(gè)OC-12數(shù)據(jù)流在線路卡59的輸入端口被多路復(fù)用到一個(gè)單OC-48輸入數(shù)據(jù)流。在線路卡59上的接收ASIC70確定如何導(dǎo)向輸入數(shù)據(jù)流中的ATM信元以及/或者IP包。數(shù)據(jù)通過(guò)互聯(lián)62傳到一個(gè)目的線路卡,例如線路卡53。在線路卡53上的傳輸ASIC64用適用于目的地址的格式把數(shù)據(jù)打包(即封裝)。然后數(shù)據(jù)在輸出端口上送出。一個(gè)多路復(fù)用器50可以多路復(fù)用來(lái)自從線路卡輸出的OC-48流的輸出數(shù)據(jù)到一個(gè)物理OC-12端口。
圖6描述了設(shè)備在處理一個(gè)輸入數(shù)據(jù)流中的三個(gè)主要階段。最初,輸入處理80被執(zhí)行。如下將進(jìn)行更詳細(xì)的描述,輸入處理80在輸入數(shù)據(jù)流中定位ATM信元和IP包,并且解開封裝并分段輸入包數(shù)據(jù)。輸入處理80把數(shù)據(jù)放入一個(gè)合適的格式從而在互聯(lián)62上導(dǎo)向數(shù)據(jù)。IP轉(zhuǎn)發(fā)和ATM交換查找作為輸入處理80的部分被執(zhí)行?;ヂ?lián)階段82在互聯(lián)62上把輸入數(shù)據(jù)導(dǎo)向到合適的輸出線路卡。輸出處理84包含把在互聯(lián)上接收的數(shù)據(jù)封裝并把數(shù)據(jù)導(dǎo)出到合適的輸出端口從而使輸出數(shù)據(jù)到達(dá)指定的目的地址。下面的討論將更詳細(xì)地描述這些階段。
圖7提供了一個(gè)功能方框圖,顯示在說(shuō)明性實(shí)施方案中對(duì)于一個(gè)給定的數(shù)據(jù)流從輸入到輸出的處理總時(shí)間。OC-48輸入數(shù)據(jù)流90首先被多路分解92到單獨(dú)支流(也稱作″信道″)。每個(gè)信道中的數(shù)據(jù)被解開封裝94從而除去來(lái)自SONET幀和層2幀的數(shù)據(jù)。ATM輸入處理96在輸入數(shù)據(jù)中的ATM信元上執(zhí)行,而IP輸入處理98在輸入數(shù)據(jù)中的IP包上執(zhí)行。數(shù)據(jù)在互聯(lián)62上傳到一個(gè)輸出線路卡。輸出線路卡執(zhí)行輸出處理102,它包含隊(duì)列和通信成形102。封裝104在數(shù)據(jù)上執(zhí)行并且各個(gè)支流被多路復(fù)用106產(chǎn)生一個(gè)OC-48輸出數(shù)據(jù)流108。
說(shuō)明性實(shí)施方案調(diào)整SONET/SDH的底層結(jié)構(gòu)來(lái)支持多個(gè)數(shù)據(jù)封裝。假定輸入數(shù)據(jù)用一個(gè)SONET格式編碼。圖8是一個(gè)流程圖用于描述在說(shuō)明性實(shí)施方案中輸入處理時(shí)執(zhí)行的步驟。最初,輸入數(shù)據(jù)必須被多路分解到各個(gè)SONET/SDH支流(圖8中的步驟110)。輸入處理實(shí)際在所有支流上同時(shí)被執(zhí)行。圖9描述一個(gè)輸入處理的功能框圖,比圖7中的方框圖更加詳細(xì)。OC-48數(shù)據(jù)流90顯示為邏輯上被SONET多路分解器92多路分解。
在各個(gè)支流中的結(jié)果數(shù)據(jù)可以是許多不同格式中的任何一種。接收ASIC70描繪這些數(shù)據(jù)(圖8中的步驟112)來(lái)獲得對(duì)其所載的ATM信元、PPP幀或者FR幀的訪問(見圖7中的94)。每個(gè)IP包可以由多個(gè)ATM信元組成或者可以包含在一個(gè)PPP幀或者FR幀中。
圖11描述一個(gè)SONET STS-1幀200的格式。其他SONET幀格式可以被用來(lái)支持OC-3、OC-12以及OC-48。SONET幀200包含9行,每行包含90個(gè)八位二進(jìn)制數(shù)的位組(即90個(gè)8位字節(jié))。SONET幀200的有效負(fù)載被包含在同步有效負(fù)載封裝(SPE)202中。SPE202包含用于路徑開銷(OH)208的9個(gè)字節(jié)。SONET幀200還包含節(jié)OH204和線路OH206。節(jié)OH204和線路OH206是SONET傳輸開銷的一部分。在文中,″開銷″指的是提供來(lái)被計(jì)算機(jī)網(wǎng)絡(luò)各層使用的頭信息。
圖10更詳細(xì)地描述了接收ASIC70的組成部分。接收ASIC70包括一個(gè)接收輸入數(shù)據(jù)的SONET解幀器140。SONET解幀器140從SONET幀200中除去SPE202的內(nèi)容。結(jié)果有效載荷可以包含額外的幀,這將在下面進(jìn)行更詳細(xì)地描述。一個(gè)可能性是SONET幀200的有效載荷包含一個(gè)或多個(gè)DS-3PLCP(物理層集中協(xié)議)幀。這樣一個(gè)幀持有一個(gè)在把ATM信元映射到DS-3設(shè)備中使用的有效載荷。幀十二行象圖12中顯示的行210。每行包括PLCP幀指示八位二進(jìn)制數(shù)的位組用來(lái)標(biāo)識(shí)所使用的幀模板。路徑開銷指示器(POI)214索引相鄰的路徑開銷(POH)八位二進(jìn)制數(shù)的位組216,并標(biāo)識(shí)POH八位二進(jìn)制數(shù)的位組的編碼。ATM信元218持有對(duì)于幀210的數(shù)據(jù)內(nèi)容,并且?guī)膊堪胱止?jié)(即4字節(jié))220。
數(shù)據(jù)還可以被封裝成一個(gè)點(diǎn)到點(diǎn)協(xié)議(PPP)幀222,如圖13中所示。PPP是一個(gè)層2協(xié)議,建立在標(biāo)準(zhǔn)高級(jí)數(shù)據(jù)鏈路控制(HDLC)協(xié)議的一個(gè)限定性子集之上。PPP幀222由標(biāo)志223和231定界。每個(gè)PPP幀222包含一個(gè)地址224和一個(gè)用于保存流控制信息的控制域226。PPP幀222包含一個(gè)信息節(jié)228和一個(gè)PPP有效載荷。CRC域230標(biāo)識(shí)幀中所用的各種循環(huán)冗余校驗(yàn)。
數(shù)據(jù)還可以封裝成一個(gè)幀中繼(FR)幀232(圖14)。每個(gè)(FR)幀232在FR幀頭部包含一個(gè)字節(jié)的標(biāo)志信息234和一個(gè)地址域236。幀中繼幀232還包含一個(gè)信息域238,其保存一個(gè)有效載荷和一個(gè)幀校驗(yàn)序列八位二進(jìn)制數(shù)的位組240,其保存用于檢查幀是否被正確接收的信息。最后,幀中繼幀232在末尾有一個(gè)標(biāo)志八位二進(jìn)制數(shù)的位組242。
一旦ATM信元被定位,ATM信元輸入處理必須在每個(gè)ATM信元上執(zhí)行(見圖8中的步驟114和116)。ATM信元頭303和輸入端口信息一起被送到ATM查找引擎150(圖16中的步驟260)。ATM信元的剩余48字節(jié)被送到接收FIFO152(圖16中的步驟262)。圖17描述一個(gè)ATM信元290的格式。每個(gè)ATM信元是53字節(jié)長(zhǎng),其中48字節(jié)的有效載荷310和5字節(jié)的頭303。ATM信元290還包含一個(gè)虛擬路徑標(biāo)識(shí)(VPI)294,為ATM信元標(biāo)識(shí)虛擬路徑。ATM信元290包含一個(gè)虛擬信道標(biāo)識(shí)(VCI)298,為單元標(biāo)識(shí)虛擬信道。ATM信元使用VCIs和VPIs來(lái)指定一個(gè)單元的處理。一個(gè)VC(虛擬信道)是在兩個(gè)通信ATM實(shí)體之間的一個(gè)連接。一個(gè)VP(虛擬路徑)是在兩個(gè)點(diǎn)之間載送的一組VCs。VPs為指向同一目的地址的打捆通信提供一個(gè)方便技術(shù)。在一些例子中,一個(gè)交換結(jié)點(diǎn)只需要檢查一個(gè)VPI來(lái)續(xù)傳通信而不要檢查一個(gè)更完整的地址。
一種有效載荷類型304被包含在頭303中并包含一個(gè)用來(lái)指示單元是否包含用戶信息或者包含相關(guān)層管理信息的三位域。一個(gè)單元丟失優(yōu)先級(jí)位306允許為單元指定明確的丟失優(yōu)先級(jí)。ATM信元290的頭303還包含一個(gè)被網(wǎng)絡(luò)物理層為單元頭位錯(cuò)誤使用的頭錯(cuò)誤控制域308。
上面提到,ATM信元頭303被送到ATM查找引擎150(圖16中的步驟260)。有效載荷310被送到接收FIFO152(圖16中的步驟262)。ATM查找引擎115使用一個(gè)ATM表154進(jìn)行一個(gè)查找來(lái)確定向哪里導(dǎo)向ATM信元(圖16中的步驟264)。ATM查找引擎在策略(見圖9中的126)和查找功能(見圖9中的128)起到一定作用。應(yīng)該意識(shí)到被送到ATM查找150的信元頭不包含HEC域308。還應(yīng)該意識(shí)到當(dāng)數(shù)據(jù)的48字節(jié)被存到接收FIFO152(圖16中的步驟262)時(shí)ATM查找引擎150執(zhí)行一個(gè)查找(圖16中的步驟264)。
下面的討論首先集中在ATM查找的執(zhí)行(圖16中的步驟264),然后簡(jiǎn)要地討論由ATM查找引擎150執(zhí)行的策略。策略測(cè)量通信速率,并且輸入通信對(duì)使用一個(gè)雙漏桶算法的通信協(xié)議有效。
如圖19所示,一個(gè)輸入ATM信元通過(guò)一個(gè)三階段的查找。第一階段包含訪問端口查找表(PLUT)。PLUT320包含49個(gè)入口,其中48個(gè)入口提供給可能的48個(gè)不同環(huán)境,而一個(gè)49th入口相應(yīng)于線路卡處理器(LCP)72。PLUT320中的每個(gè)入口指向一個(gè)VP查找表(VPLUT)322的一個(gè)入口,其構(gòu)成了查找的第二個(gè)階段。VPLUT的每個(gè)入口和一個(gè)特定的虛擬路徑相關(guān)聯(lián)。因此,VPLUT中的一個(gè)入口指向和入口環(huán)境相關(guān)聯(lián)的虛擬路徑。每個(gè)VPLUT入口322指向一個(gè)VC查找表(VCLUT),它持有每一特定虛擬通路的信息。每個(gè)入口包含一個(gè)128字節(jié)的數(shù)據(jù)。數(shù)據(jù)標(biāo)識(shí)信元被路由或者交換的虛擬通路,或者指示通路在LCP上終止。
每個(gè)VCLUT入口324、326、或者328包含一個(gè)目的句柄和其它交換信息,包含在執(zhí)行策略時(shí)有用的信息。一個(gè)目的句柄是一個(gè)混合數(shù)據(jù)結(jié)構(gòu)保存關(guān)于一個(gè)信元將被導(dǎo)向到何處的有用信息,從而信元被正確地朝所期望的目的地址輸出。如下將被更詳細(xì)地解釋,目的句柄被傳輸ASIC64使用來(lái)確定往哪里發(fā)送輸出(即,哪個(gè)輸出端口將被使用)。ATM查找的結(jié)果通常是一個(gè)目的句柄。
上面提到,ATM查找引擎150也執(zhí)行某個(gè)策略行為。對(duì)于ATM信元,單獨(dú)策略器被實(shí)現(xiàn)來(lái)監(jiān)視高峰信元速率(PCR)以及持續(xù)信元速率(SCR),根據(jù)對(duì)于VC或者VP的通信協(xié)議。每個(gè)策略器實(shí)現(xiàn)通用信元速率算法(GCRA),它在UNI4.0規(guī)范中定義。PCR漏桶算法監(jiān)視最大信元速率在由信元延遲容差(CDVT)允許的容差范圍內(nèi)。SCR漏桶算法監(jiān)視在一段時(shí)期的信元到達(dá)平均速率在由最大突發(fā)大小(MBS)和CDVT允許的突發(fā)大小范圍內(nèi)。SCR應(yīng)用到VBR和UBR連接并且一直小于PCR。通信協(xié)議依照ATM形式通信管理4.0規(guī)范定義。超出通信協(xié)議的ATM信元受策略支配,它可能包括標(biāo)記或者丟棄不好的信元。
策略和QOS在相應(yīng)的名為″用于在一個(gè)通信結(jié)點(diǎn)中運(yùn)行的一個(gè)互聯(lián)網(wǎng)絡(luò)″[AGM-006]的申請(qǐng)中有更詳細(xì)地描述,它被指定為一個(gè)公共代理并且在本文參考中明確包括。
查找150(即目的句柄)的結(jié)果被送到CRC模塊152(圖16中的步驟266)。ATM查找150可以決定是否丟棄,一個(gè)信元或者不是作為策略的一部分(見圖16中的步驟268)。然后適當(dāng)?shù)男旁粊G棄(圖16中的步驟270)。如果信元不將被丟棄,一個(gè)標(biāo)簽從標(biāo)簽主管162請(qǐng)求得到(圖16中的步驟274)。標(biāo)簽是一個(gè)指針指向在一個(gè)接收數(shù)據(jù)保存160中的位置(圖10)。接收數(shù)據(jù)保存160是一個(gè)在執(zhí)行處理時(shí)用來(lái)存放數(shù)據(jù)的地方。標(biāo)簽可以被拿回而從由標(biāo)簽標(biāo)識(shí)的位置取出數(shù)據(jù)。響應(yīng)請(qǐng)求,標(biāo)簽主管162發(fā)出一個(gè)標(biāo)簽并且把標(biāo)簽送到ATM查找引擎150(圖16中的步驟276)。然后,信元的包含數(shù)據(jù)的48個(gè)字節(jié)從接收FIFO152被送到接收數(shù)據(jù)保存160。數(shù)據(jù)被存在由發(fā)送的標(biāo)簽標(biāo)識(shí)的位置(圖16中的步驟278)。進(jìn)行檢查ATM信元是否包含一個(gè)IP包的一部分(圖16中的步驟279)。如果包含,IP輸入處理必須在圖18中的步驟412開始被執(zhí)行(下面描述)。否則,接收數(shù)據(jù)保存160中保存的信元的48字節(jié)部分和標(biāo)簽以及目的頭部一起被送到互聯(lián)62(圖16中的步驟280)。具體而言,一個(gè)圖18描述格式的內(nèi)部信元被構(gòu)造。內(nèi)部信元312包含數(shù)據(jù)318以及用于信元的目的句柄316。互聯(lián)頭314持有被互聯(lián)62使用的頭部信息。
解封模塊182有一個(gè)解封表184,它確定數(shù)據(jù)從接收數(shù)據(jù)包提取的數(shù)據(jù)如何封裝成內(nèi)部信元(即規(guī)范格式)。對(duì)于原始ATM信元,ATM信元有效載荷和頭部信息以及目的句柄結(jié)合來(lái)創(chuàng)建在互聯(lián)62上傳送的內(nèi)部信元。
在圖8中的步驟118中,可以確定輸入數(shù)據(jù)不僅是一個(gè)ATM信元而是一個(gè)IP包的一步分。例如,一個(gè)ATM信元可以包含一個(gè)IP包的一部分,IP輸入處理被執(zhí)行(圖8中的步驟120)。IP包可以被封裝成一個(gè)PPP幀或者一個(gè)幀中繼幀。上面提到,解幀器144解開PPP幀和幀中繼幀。IP包可以被封裝成一個(gè)AAL5(ATM適應(yīng)層5)幀。換句話說(shuō),IP包可以在ATM上傳輸。圖15描述了一個(gè)AAL5幀245的格式。幀245包含一個(gè)有效載荷246以及一個(gè)尾部248。幀245可以任意長(zhǎng)度。尾部248包含用戶到用戶(UU)域250,它持有在用戶之間透明傳送的數(shù)據(jù)。一個(gè)公共部分指示器(CPI)域252在總的位流中對(duì)齊尾部。長(zhǎng)度域254指示總的幀有效載荷246的長(zhǎng)度。一個(gè)循環(huán)冗余校驗(yàn)(CRC)域256被用來(lái)僅在尾部的錯(cuò)誤檢查糾正。包含在幀245中的整套數(shù)據(jù)被分段成48個(gè)八位二進(jìn)制數(shù)的位組的有效載荷,前面添加一個(gè)5個(gè)八位二進(jìn)制數(shù)的位組的頭部來(lái)形成53個(gè)八位二進(jìn)制數(shù)的位組的ATM信元。
圖20是一個(gè)流程圖用于描述在IP輸入處理時(shí)所執(zhí)行的步驟。如果必要,IP包由AAL5分段器148劃分成偽ATM信元(圖20中的步驟400)。對(duì)于在ATM上的包輸入的情況,IP包可以被持在一個(gè)ATM信元或者可以被持在多個(gè)ATM信元。來(lái)自每個(gè)偽ATM信元的頭信息被送到ATM查找引擎150(圖20中的步驟402)。一個(gè)標(biāo)簽從標(biāo)簽主管162請(qǐng)求得到(圖20中的步驟404)。標(biāo)簽主管響應(yīng)請(qǐng)求發(fā)出一個(gè)標(biāo)簽(圖20中的步驟406)。信元的48個(gè)字節(jié)從信元送到數(shù)據(jù)保存(圖20中的步驟408)。ATM查找引擎150把信元識(shí)別為包含IP包數(shù)據(jù)并且把信元標(biāo)簽放到待處理信元隊(duì)列166(圖20中的步驟410)。如果必要,待處理信元隊(duì)列166累積構(gòu)成一個(gè)單個(gè)包的信元使得一個(gè)包的所有信元在互聯(lián)62上被傳送到同一個(gè)目的地址。
為了理解如何處理收入,考慮下面這一個(gè)情況是有幫助的,其中PPP幀包含一個(gè)IP包。在這個(gè)例子中,接收ASIC70把PPP幀中的IP包零散為偽ATM信元并且把頭送到ATM查找引擎150,同時(shí)把數(shù)據(jù)48字節(jié)送到接收FIFO152。PPP幀化名為ATM信元從而ATM查找引擎150能夠處理它們。明確地講,在一個(gè)PPP環(huán)境上來(lái)的通信有一個(gè)帶一個(gè)預(yù)配置的值0/1的VPI/VCI。這個(gè)值插入由于AAL5分段148產(chǎn)生的內(nèi)部信元的頭部。對(duì)于PPP環(huán)境的VPI/VCI的值0/1被配置為一條路由的鏈路。對(duì)于幀中繼幀,VPI/VCI根據(jù)輸入DLCI的值加一設(shè)置。當(dāng)處理輸入頭部數(shù)據(jù),ATM查找引擎150返回一個(gè)目的句柄或者一個(gè)占位符目的句柄。占位符目的句柄是一個(gè)指示,說(shuō)明輸入頭是用于一個(gè)IP包并且需要進(jìn)一步IP處理。占位符目的句柄輸出的存在導(dǎo)致頭信息被放在待處理信元隊(duì)列166。
ATM查找150確定信元是否是用于一個(gè)IP包的第一個(gè)信元(圖20中的步驟412)。如果信元不是第一個(gè),不需要進(jìn)一步輸入處理。但是,如果確定信元是用于一個(gè)IP包的第一個(gè)信元,IP頭信息被定位在對(duì)第一個(gè)信元解封模塊170有效的第一個(gè)信元的有效載荷(圖20中的步驟414)。信元的48個(gè)字節(jié)數(shù)據(jù)也從接收FIFO空間152送到第一個(gè)信元解封模塊170(圖20中的步驟416)。第一個(gè)信元解封模塊170解封第一個(gè)信元中包含的信息是發(fā)送適當(dāng)信息到IP查找模塊174的有效載荷,并且數(shù)據(jù)被送到保存(圖20中的步驟418)。第一個(gè)信元解封模塊170使用一個(gè)解封表171來(lái)識(shí)別如何解封信元。IP查找模塊174為IP包執(zhí)行轉(zhuǎn)發(fā)查找132(圖9)以及策略130。數(shù)據(jù)從保存獲得(圖24中的步驟422)。IP查找模塊174返回一個(gè)目的句柄,該句柄標(biāo)識(shí)把將在互聯(lián)62上發(fā)送的內(nèi)部信元送到何處(圖20中的步驟420)。規(guī)范幀在互聯(lián)62上發(fā)送(圖24中的步驟424)。除了被重新排列尾部字節(jié),IP包被收集成有一個(gè)AAL5幀格式的規(guī)范幀。多個(gè)字節(jié)塊的集合被切成規(guī)范幀來(lái)增強(qiáng)通過(guò)互聯(lián)62傳送的效率。
圖21描述了由IP查找模塊174使用的IP頭數(shù)據(jù)430的格式。除了域456和458(圖21),在頭數(shù)據(jù)430中的所有域從相關(guān)聯(lián)IP包的IP頭部被拷貝。域456和458從一個(gè)傳送頭拷貝。頭數(shù)據(jù)430包含一個(gè)持有關(guān)于所使用IP協(xié)議的版本信息的版本域432。對(duì)于版本4IP包,域432有一個(gè)值4?;ヂ?lián)網(wǎng)頭部長(zhǎng)度(IHO)域434用多個(gè)4個(gè)八位二進(jìn)制數(shù)的位組來(lái)標(biāo)識(shí)來(lái)自IP包的頭部的長(zhǎng)度。差別服務(wù)域436有一個(gè)標(biāo)識(shí)對(duì)包的一個(gè)具體控制或者處理的值??傞L(zhǎng)度域438持有關(guān)于在任何分割發(fā)生前的包的總長(zhǎng)度的信息。如果包后來(lái)被分割,標(biāo)識(shí)域440為包提供了標(biāo)識(shí)值可以用來(lái)將分割包和原始包相關(guān)聯(lián)。
頭數(shù)據(jù)430包含標(biāo)志170,包含一個(gè)DF標(biāo)志和一個(gè)MF標(biāo)志。DF(″不要分割″)標(biāo)志指示一個(gè)至少部分載在包上的數(shù)據(jù)報(bào)是否將被分割。MF(″更多分割″)標(biāo)志標(biāo)識(shí)是否有更多分割的段或者包是否持有數(shù)據(jù)報(bào)的最后一個(gè)分割段。段偏移域444持有一個(gè)偏移值標(biāo)識(shí)段屬于重組包的何處。生存時(shí)間域446標(biāo)識(shí)包的有效時(shí)期,并且在此之后包將被丟棄。協(xié)議域448持有一個(gè)值,其允許目的末端結(jié)點(diǎn)的網(wǎng)絡(luò)層知道運(yùn)行在末端結(jié)點(diǎn)的哪個(gè)協(xié)議將接收包。一個(gè)頭部校驗(yàn)和域450被提供。一個(gè)源地址域452以及一個(gè)目的地址域454各自被提供來(lái)持有包產(chǎn)生的源地址,以及一個(gè)包被轉(zhuǎn)發(fā)的目的地址。源端口域456標(biāo)識(shí)一個(gè)源端口而目的端口域458位包標(biāo)識(shí)一個(gè)目的端口。
IP查找模塊174使用多個(gè)表(見圖10中的路由表176)以及其它進(jìn)行IP查找時(shí)的結(jié)構(gòu)。圖22描述所使用的多個(gè)最重要的數(shù)據(jù)結(jié)構(gòu)和表格。一個(gè)接口(IF)結(jié)構(gòu)480提供來(lái)標(biāo)識(shí)每個(gè)接收數(shù)據(jù)的接口(即環(huán)境)。接口結(jié)構(gòu)包含一個(gè)初始查找項(xiàng),它在轉(zhuǎn)發(fā)查找開始時(shí)被使用。初始查找項(xiàng)是一組查找項(xiàng),它包含一個(gè)對(duì)于IP包在轉(zhuǎn)發(fā)查找開始時(shí)被執(zhí)行的指令(下面將進(jìn)行更加詳細(xì)描述)。
IP查找模塊174使用包含查找項(xiàng)的查找數(shù)組482。IP查找模塊174還可以使用一個(gè)SANET484或者DANET486。SANET是一個(gè)持有用于各自源地址的多個(gè)結(jié)構(gòu)的數(shù)據(jù)結(jié)構(gòu),它用于服務(wù)質(zhì)量(QOS)處理以及服務(wù)類型(TOS)處理。DANET 486持有包含關(guān)于目的地址信息的DANET結(jié)構(gòu),它識(shí)別IP包的下一段轉(zhuǎn)發(fā)。圖23顯示一個(gè)DANET結(jié)構(gòu)486的基本格式。DANET結(jié)構(gòu)486的域490中有一個(gè)目的句柄、一個(gè)指向一個(gè)轉(zhuǎn)子的指針或者一個(gè)指向一個(gè)TOS數(shù)組的指針。一個(gè)轉(zhuǎn)子是一個(gè)包含一套目的句柄的數(shù)據(jù)結(jié)構(gòu)。一個(gè)轉(zhuǎn)子可以用來(lái)聚集多個(gè)低速鏈路到一個(gè)虛擬高速鏈路。一個(gè)TOS數(shù)組也是一個(gè)句柄數(shù)組,但是它由一個(gè)TOS參數(shù)值索引。一個(gè)TOS數(shù)組允許目的句柄有不同TOS。DANET結(jié)構(gòu)486還包含用于統(tǒng)計(jì)數(shù)據(jù)的計(jì)數(shù)器492并且還可以包含附加用途以及其它數(shù)據(jù)。
圖24提供了一個(gè)描述對(duì)于一個(gè)單一發(fā)送的IP包在IP查找時(shí)所執(zhí)行步驟的流程圖。IP查找確定如何把IP包朝目的地址向下一個(gè)轉(zhuǎn)發(fā)步驟發(fā)送(即最終,它確定使用哪個(gè)端口)。IP查找模塊174知道IP包到達(dá)的接口。用于相關(guān)接口的接口結(jié)構(gòu)被訪問而且IP查找模塊174處理初始包含在接口結(jié)構(gòu)中的查找項(xiàng)(圖24中的步驟460)。如圖25所示,接口項(xiàng)包含一個(gè)查找項(xiàng)498。查找項(xiàng)498包含一組地址500,以及一個(gè)用于查找數(shù)組的操作碼504。查找項(xiàng)498還包含一個(gè)頭部半字節(jié)選擇502用來(lái)識(shí)別在頭部的哪個(gè)4位半字節(jié)可以被用來(lái)產(chǎn)生一個(gè)對(duì)在查找數(shù)組510中的一個(gè)查找數(shù)組項(xiàng)的索引。數(shù)組地址結(jié)合被頭部半字節(jié)選擇502選中的半字節(jié)被用來(lái)訪問在查找數(shù)組510中的一個(gè)查找項(xiàng)509。在IP包506中包含的位508被結(jié)合來(lái)產(chǎn)生一個(gè)用于訪問查找項(xiàng)509的索引。
路由表176包含多個(gè)查找表。具體而言,一個(gè)查找數(shù)組樹被提供。樹的第一級(jí)是一個(gè)單個(gè)查找數(shù)組,被一個(gè)IP包目的IP地址的頭兩個(gè)字節(jié)索引。樹的第二級(jí)包含查找數(shù)組,被目的IP地址的第三個(gè)字節(jié)索引。樹的第三級(jí)包含查找數(shù)組,被目的IP地址的最后字節(jié)索引。通過(guò)使用這個(gè)樹結(jié)構(gòu),說(shuō)明性實(shí)施方案能夠減少所需的內(nèi)存訪問次數(shù)并且加快IP查找發(fā)生的速度。
當(dāng)接口結(jié)構(gòu)中的指令被訪問后(見圖24中的步驟460),在第一個(gè)查找數(shù)組中的一個(gè)入口被訪問并且被處理(圖24中的步驟462)。指令告訴IP查找模塊174下一步該做什么。例如,指令可以指導(dǎo)IP查找模塊174訪問在第二個(gè)查找表中的一個(gè)項(xiàng)。作為選擇的是,指令可以引導(dǎo)IP查找模塊174使用在一個(gè)特定DANET結(jié)構(gòu)中包含的一個(gè)目的句柄。如果在第一個(gè)查找數(shù)組的入口未完成(即識(shí)別一個(gè)DANET結(jié)構(gòu)被使用)處理(見圖24中的步驟464),一個(gè)入口在第二個(gè)查找數(shù)組中被訪問并處理(圖24中的步驟466)。如果在第二個(gè)查找數(shù)組中的入口處理未完成查找(見圖24中的步驟468),在第三個(gè)查找數(shù)組中的一個(gè)入口被訪問并處理(圖24中的步驟470)。如果查找數(shù)組中的指令在轉(zhuǎn)發(fā)包中引導(dǎo)一個(gè)標(biāo)識(shí)的DANET結(jié)構(gòu)的使用,這個(gè)結(jié)構(gòu)被使用(圖24中的步驟472)。
圖28描述一個(gè)例子說(shuō)明在連接時(shí)查找數(shù)組和DANET結(jié)構(gòu)如何被使用。在圖26描述的例子中,16位查找數(shù)組512包含用于前綴1.2/16的一個(gè)入口514。這個(gè)入口514建議使用8位查找數(shù)組516。然后,目的地址中的下一位用來(lái)定位一個(gè)入口,例如入口522或者入口524。入口522是用于IP目的地址1.2.129/24。DANET結(jié)構(gòu)526用于這個(gè)例子。對(duì)于1.2.128/17的IP目的地址,DANET結(jié)構(gòu)528被使用。
IP查找在相應(yīng)的名為″一個(gè)減少內(nèi)存訪問次數(shù)的網(wǎng)絡(luò)包轉(zhuǎn)發(fā)查找″的申請(qǐng)中有更詳細(xì)地描述。申請(qǐng)?zhí)?9/237,128,在1999年一月25號(hào)存檔,它被指定為一個(gè)本申請(qǐng)的公共代理并且在本文參考中明確包括。
IP包策略也在IP查找模塊174中發(fā)生(見圖9中的130)。IP包被分成三種綠色、琥珀色或者紅色。綠色意味著通信在通信限定內(nèi)。琥珀色意味著通信超過(guò)了通信限定但是在一個(gè)預(yù)定義的突發(fā)速率下,而紅色意味著通信超過(guò)了突發(fā)速率。策略可以被用來(lái)在IP頭部標(biāo)記TOS位。另外,IP查找模塊174中的策略器產(chǎn)生在一個(gè)從一到四范圍的一個(gè)分布指示器的值,用在輸入到在傳輸ASIC64上的隨機(jī)早期丟棄(紅色)算法。每個(gè)流有一個(gè)相關(guān)的通信分布,設(shè)置了該流在多少限定上允許產(chǎn)生通信。流限定由一個(gè)令牌桶算法增強(qiáng),它允許超過(guò)流限定的短時(shí)突發(fā)。令牌桶指定輸入通信為適當(dāng)?shù)姆N類。這樣,IP查找引擎執(zhí)行策略功能130(圖9)以及IP轉(zhuǎn)發(fā)功能(圖9中的132)。
圖27是一個(gè)流程圖用于描述作為互聯(lián)階段82(圖6)的一部分由互聯(lián)所執(zhí)行的步驟。互聯(lián)拿回一個(gè)標(biāo)簽來(lái)從接收數(shù)據(jù)保存160獲得數(shù)據(jù)(圖27中的步驟530)。然后,來(lái)自保存的數(shù)據(jù)在互聯(lián)62上傳送(圖27中的步驟532)。數(shù)據(jù)被送到適當(dāng)?shù)膫鬏斁€路卡(圖27中的步驟534)。然后,標(biāo)簽返回到在接收ASIC70上的標(biāo)簽主管162(圖27中的步驟536)。互聯(lián)在相應(yīng)的名為″用于在一個(gè)通信結(jié)點(diǎn)內(nèi)運(yùn)行的互聯(lián)網(wǎng)絡(luò)″的申請(qǐng)中有更詳細(xì)地描述,它被指定為本申請(qǐng)的一個(gè)公共代理并且在本文參考中明確包括。
互聯(lián)62把內(nèi)部信元遞交到傳輸ASIC64。傳輸ASIC負(fù)責(zé)進(jìn)行輸出處理(見圖6中的84),所以適當(dāng)?shù)妮敵鰯?shù)據(jù)流在適當(dāng)?shù)妮敵龆丝谏陷敵?。這一點(diǎn)可以在圖28中看到,從互聯(lián)62接收的輸出通信在傳輸保存546中緩存直到信元或者包被傳送到它。如果一個(gè)內(nèi)部信元作為一個(gè)IP包的一部分被接收,輸出處理通常被延遲直到包的所有信元已經(jīng)被接收。
圖29更詳細(xì)地描述了ASIC64。64個(gè)字節(jié)的內(nèi)部信元從互聯(lián)62中接收。互聯(lián)頭部314(圖18)被除去,并且內(nèi)部信元的數(shù)據(jù)部分318被送到傳輸數(shù)據(jù)保存546。傳輸數(shù)據(jù)保存546可以用一個(gè)SDRAM來(lái)實(shí)現(xiàn)。本領(lǐng)域的專業(yè)人員將會(huì)意識(shí)到傳輸數(shù)據(jù)保存546可以選擇性地用許多其他類型的存儲(chǔ)器設(shè)備實(shí)現(xiàn)。
一個(gè)標(biāo)簽管理552管理標(biāo)簽的分發(fā)。標(biāo)簽管理552訪問一個(gè)標(biāo)簽空閑列表內(nèi)存556并且訪問內(nèi)存556來(lái)向互聯(lián)62提供一個(gè)在可用傳輸數(shù)據(jù)保存位置的空閑標(biāo)簽池550?;ヂ?lián)62選擇空閑標(biāo)簽中的一個(gè)并且把標(biāo)簽放在標(biāo)簽管理552?;ヂ?lián)62也請(qǐng)求被保存在傳輸數(shù)據(jù)保存546中由標(biāo)簽標(biāo)識(shí)的位置的數(shù)據(jù)。
標(biāo)簽管理552被提供用于內(nèi)部信元的目的句柄(DH),并且把DH傳給信元鏈管理558。信元鏈管理558累積信元鏈的包。在慣例中,信元鏈管理558保證IP包的所有組成部分(即一段段數(shù)據(jù))在IP包被傳送之前有效。也會(huì)有一個(gè)快捷的情況,其中這些約束被放松。
輸出隊(duì)列管理為實(shí)現(xiàn)QOS選項(xiàng)而提供調(diào)度。它管理各種輸出隊(duì)列,其將在下面被更詳細(xì)地描述。輸出隊(duì)列管理570和一個(gè)QOS表574以及一個(gè)日歷隊(duì)列572一起協(xié)作。
輸出數(shù)據(jù)流不需要是一個(gè)單一發(fā)送的數(shù)據(jù)流,而可以是一個(gè)多個(gè)發(fā)送的數(shù)據(jù)流,這樣同一個(gè)數(shù)據(jù)流被送到多個(gè)目的地址。圖29中的組成部分546負(fù)責(zé)把信元編入傳送隊(duì)列中并且執(zhí)行支持多個(gè)發(fā)送輸出所必需的步驟。多個(gè)發(fā)送包或者信元被組件546識(shí)別并且被給一個(gè)相應(yīng)于一個(gè)ATM或者IP多個(gè)發(fā)送組的標(biāo)識(shí)。將被發(fā)送的包或者信元被組件546復(fù)制來(lái)產(chǎn)生和在一個(gè)多個(gè)發(fā)送別名表566中指定的目的地址一樣多的拷貝。復(fù)制數(shù)據(jù)被輸入到適當(dāng)?shù)年?duì)列。
對(duì)于每個(gè)環(huán)境有八個(gè)隊(duì)列,象圖30中所描述的那些。對(duì)于一個(gè)信元的一個(gè)目的句柄指定往哪個(gè)隊(duì)列中放信元。中斷隊(duì)列620是最高優(yōu)先級(jí)的隊(duì)列并且被立即解隊(duì)。中斷隊(duì)列620用于特別緊急的數(shù)據(jù),它不得不在其他信息之前傳送。優(yōu)先級(jí)隊(duì)列622、624、626、628和630用于不同優(yōu)先級(jí)的數(shù)據(jù)。這些優(yōu)先級(jí)隊(duì)列622、624、626、628和630根據(jù)一個(gè)權(quán)重輪轉(zhuǎn)法來(lái)被服務(wù),其中在高優(yōu)先級(jí)隊(duì)列的數(shù)據(jù)(例如優(yōu)先級(jí)一隊(duì)列622)在低優(yōu)先級(jí)隊(duì)列(例如優(yōu)先級(jí)五隊(duì)列630)之前被服務(wù)。最努力隊(duì)列632是用于所有沒有遞交保證或者保障的通信。最不努力隊(duì)列634是用于標(biāo)為和一個(gè)通信規(guī)范沖突并且如果沒有任何可用帶寬的話將被丟棄的數(shù)據(jù)。通常,在最不努力隊(duì)列634中的數(shù)據(jù)沒有希望被傳送除非有可用帶寬的話才會(huì)被傳送。
一個(gè)日歷隊(duì)列540被提供來(lái)成形或者速度限制通信。數(shù)據(jù)通過(guò)日歷隊(duì)列540被調(diào)整而放進(jìn)隊(duì)列620、622、624、626、628、630、632和634。如果一個(gè)信元或者包被成形(即輸出到QOS處理),那么信元或者包通過(guò)日歷隊(duì)列540傳送。當(dāng)日歷隊(duì)列延遲輸出通信超出可配置的域值,通信被丟棄。在成形完成后,輸入隊(duì)列中的信元或者包被傳送到特定的輸出隊(duì)列。日歷隊(duì)列540是一個(gè)有相應(yīng)于將來(lái)時(shí)刻槽的環(huán)狀結(jié)構(gòu)。日歷隊(duì)列540有基于時(shí)間的入隊(duì)和出隊(duì)指針。出隊(duì)指針根據(jù)基于一個(gè)時(shí)間片和日歷環(huán)的寬度的一個(gè)時(shí)間調(diào)度而增加。入隊(duì)指針指向在出隊(duì)指針到達(dá)它之前可以被安全編隊(duì)的最后一個(gè)時(shí)間片。兩個(gè)指針一起增加。數(shù)據(jù)基于一個(gè)所期望的速率而編隊(duì),這樣一個(gè)″將來(lái)時(shí)刻″為基于最后傳輸時(shí)刻而編隊(duì)的項(xiàng)來(lái)計(jì)算。這個(gè)″將來(lái)時(shí)刻″不能小于被入隊(duì)指針?biāo)傅臅r(shí)間片。日歷隊(duì)列540依賴QOS表524來(lái)為將被使用的QOS適當(dāng)配置日歷隊(duì)列。
對(duì)于日歷隊(duì)列540的出隊(duì)處理相對(duì)于入隊(duì)處理是異步的。出隊(duì)處理為″當(dāng)前時(shí)刻″時(shí)間片除去所有入口并且增加入隊(duì)和出隊(duì)指針。從″當(dāng)前時(shí)刻″時(shí)間片除去的入口被放進(jìn)由它們的QOS處理指定的隊(duì)列。這樣,如圖31中所示,不受支配的數(shù)據(jù)直接傳到輸出隊(duì)列620、622、624、626、628、630、632和634。將被編碼的數(shù)據(jù)被放進(jìn)日歷隊(duì)列540直到出隊(duì)654。
一個(gè)隊(duì)列調(diào)度器544(在輸出隊(duì)列管理570中)負(fù)責(zé)從輸出隊(duì)列542中出隊(duì)數(shù)據(jù)。隊(duì)列調(diào)度器544在輸出隊(duì)列管理570內(nèi)被提供。調(diào)度器544實(shí)現(xiàn)優(yōu)先級(jí)隊(duì)列和權(quán)重輪轉(zhuǎn)隊(duì)列。一個(gè)可編程域值把優(yōu)先級(jí)隊(duì)列和權(quán)重輪轉(zhuǎn)隊(duì)列劃分開。調(diào)度器544先處理優(yōu)先級(jí)隊(duì)列,在嚴(yán)格的優(yōu)先級(jí)順序中傳輸通信。隊(duì)列的剩余部分在權(quán)重輪轉(zhuǎn)順序中處理。輸出隊(duì)列通常被指定成QOS級(jí)別,并且隊(duì)列權(quán)重上的優(yōu)先級(jí)相應(yīng)被配置。對(duì)于全部輸出隊(duì)列620、622、624、626、628、630、632和634,優(yōu)先級(jí)域值只能用來(lái)選擇只有優(yōu)先級(jí)隊(duì)列或者只有權(quán)重輪轉(zhuǎn)隊(duì)列。
輸出隊(duì)列管理570把一個(gè)標(biāo)簽列表和一個(gè)目的句柄傳到封裝選擇器576。然后,封裝選擇器576從輸出隊(duì)列542接收適當(dāng)?shù)臄?shù)據(jù)。封裝選擇器576為選中信元把目的句柄傳到目的描述管理器580。目的描述管理器580和封裝引擎590一起工作來(lái)確定如何適當(dāng)?shù)胤庋b將被輸出的數(shù)據(jù)。目的描述管理器580訪問封裝RAM578來(lái)獲得關(guān)于對(duì)目的地址適當(dāng)封裝的信息。目的描述管理器580對(duì)于輸出數(shù)據(jù)流的目的地址有一個(gè)目的描述器。目的句柄(它伴隨每個(gè)信元)被目的描述管理器580使用來(lái)定位一個(gè)目的描述器。目的描述器是一個(gè)在目的句柄內(nèi)的一個(gè)域,其中目的句柄包含為信元再次封裝的所有必要信息(包括部分循環(huán)冗余校驗(yàn)和關(guān)于幀長(zhǎng)度的信息)。封裝引擎590使用一個(gè)來(lái)自目的描述器的封裝標(biāo)識(shí)來(lái)引用一個(gè)封裝描述器表592。封裝描述器包含一個(gè)將被插入到一個(gè)標(biāo)識(shí)模板封裝的輸出幀開始的模板。
目的句柄和從適當(dāng)封裝的傳輸數(shù)據(jù)保存546中獲得的數(shù)據(jù)為ATM輸出而收集。結(jié)果ATM信元被送到ATM輸出模塊594。ATM輸出模塊創(chuàng)建一個(gè)正確的AAL5尾部并且在信元中設(shè)置各個(gè)不同的位。OAM596可以被產(chǎn)生或者輸出OAM信元,它由LCP產(chǎn)生或者從接收ASIC70轉(zhuǎn)發(fā),可能需要被格式化。結(jié)果數(shù)據(jù)被傳送到PLCP模塊598。如果不需要PLCP封裝,信元不經(jīng)修改直接傳到端口傳輸隊(duì)列600。否則,信元由PLCP模塊598封裝成PLCP幀。
IP包被傳送到PPP/FR輸出模塊604,其負(fù)責(zé)為封裝數(shù)據(jù)創(chuàng)建PPP幀或者FR幀。結(jié)果幀直接傳到端口傳輸隊(duì)列600。某些包需要送到LCP。LCP包輸出606經(jīng)過(guò)一個(gè)LCP緩存608并且最終傳到LCP。
一個(gè)SONET幀調(diào)節(jié)器/物理接口602被提供來(lái)把數(shù)據(jù)形成SONE幀并且來(lái)進(jìn)行并行到串行的轉(zhuǎn)換。SONET幀調(diào)節(jié)器/物理接口602提供一個(gè)物理接口給輸出線路。結(jié)果數(shù)據(jù)被輸出到它的描述器。
雖然本發(fā)明參照一個(gè)它的說(shuō)明性實(shí)施方案來(lái)描述,本領(lǐng)域的專業(yè)人員將意識(shí)到在形式和細(xì)節(jié)上的各種改變可以在不偏離如附加權(quán)利要求中本發(fā)明的指定范圍的情況下進(jìn)行。
權(quán)利要求
1.一種用于把輸入數(shù)據(jù)導(dǎo)向到目的地址的設(shè)備,包含一個(gè)用于把輸入數(shù)據(jù)中的IP包轉(zhuǎn)發(fā)到它們的目的地址的互聯(lián)網(wǎng)協(xié)議(IP)包轉(zhuǎn)發(fā)設(shè)備;和一個(gè)用于把輸入數(shù)據(jù)中的ATM信元交換到它們的目的地址的異步傳輸方式(ATM)單元交換設(shè)備。
2.如權(quán)利要求1中的設(shè)備,還包含一個(gè)放置IP包轉(zhuǎn)發(fā)設(shè)備和ATM信元交換設(shè)備的外殼。
3.如權(quán)利要求1中的設(shè)備,還包含一個(gè)應(yīng)用專用的集成電路(ASIC),包含至少一部分的IP包轉(zhuǎn)發(fā)設(shè)備和ATM信元交換設(shè)備。
4.如權(quán)利要求1中的設(shè)備,還包含一個(gè)公共的輸入,IP包轉(zhuǎn)發(fā)設(shè)備和ATM信元交換設(shè)備從它接收輸入數(shù)據(jù)。
5.如權(quán)利要求1中的設(shè)備,其中輸入數(shù)據(jù)包含同步光纖網(wǎng)絡(luò)(SONET)幀并且設(shè)備還包含一個(gè)SONET解幀器用于解開輸入數(shù)據(jù)中的SONET幀。
6.如權(quán)利要求1中的設(shè)備,其中設(shè)備包含用于輸出數(shù)據(jù)的輸出端口,并且其中ATM信元交換設(shè)備還包含一個(gè)ATM信元查找用來(lái)基于ATM信元中包含的地址信息識(shí)別向哪個(gè)輸出端口導(dǎo)向輸入數(shù)據(jù)中的ATM信元。
7.如權(quán)利要求1中的設(shè)備,其中設(shè)備包含用于輸出數(shù)據(jù)的輸出端口,并且其中IP包轉(zhuǎn)發(fā)設(shè)備還包含一個(gè)IP包查找用來(lái)基于IP包中包含的地址信息識(shí)別向哪個(gè)輸出端口導(dǎo)向輸入數(shù)據(jù)中的IP包。
8.一種用于把數(shù)據(jù)導(dǎo)向?qū)康牡刂返难b置,包含用于接收輸入的數(shù)據(jù)端口;用于輸出數(shù)據(jù)的輸出端口;一個(gè)耦合到一個(gè)選中輸入端口的導(dǎo)向器,用于把在選中輸入端口接收的輸入導(dǎo)向到輸出端口,所述導(dǎo)向器把由一個(gè)OS1層2協(xié)議封裝的層2數(shù)據(jù)單元基于層2數(shù)據(jù)單元中的地址信息導(dǎo)向到輸出端口并且把由一個(gè)OS1層3協(xié)議封裝的層3數(shù)據(jù)單元基于層3數(shù)據(jù)單元中的地址信息導(dǎo)向到輸出端口。8.如權(quán)利要求8中的裝置,其中層2數(shù)據(jù)單元由異步傳輸方式(ATM)協(xié)議封裝。
9.如權(quán)利要求8中的裝置,其中層3數(shù)據(jù)單元由互聯(lián)網(wǎng)協(xié)議(IP)封裝。
10.在一個(gè)把在輸入端口接收的輸入數(shù)據(jù)通信導(dǎo)向到輸出端口的設(shè)備中,一種方法,包含下列步驟提供一個(gè)互聯(lián)網(wǎng)(IP)查找,用于識(shí)別向何處導(dǎo)向在一個(gè)選中輸入端口接收的一個(gè)IP包;提供一個(gè)異步傳輸方式(ATM)查找,用于識(shí)別向何處導(dǎo)向在一個(gè)選中輸入端口接收的一個(gè)ATM信元;在選中輸入端口接收一個(gè)輸入數(shù)據(jù)單元;當(dāng)該單元數(shù)據(jù)是一個(gè)ATM信元,使用ATM查找來(lái)識(shí)別向哪個(gè)輸出端口導(dǎo)向該單元數(shù)據(jù);以及當(dāng)該單元數(shù)據(jù)是一個(gè)IP包,使用IP查找來(lái)識(shí)別向哪個(gè)輸出端口導(dǎo)向該單元數(shù)據(jù)。
11.如權(quán)利要求11中的方法,其中設(shè)備包含一個(gè)同步光纖網(wǎng)(SONET)解幀器并且其中SONET解幀器用來(lái)解開在選中輸入端口接收的輸入數(shù)據(jù)通信中的任何SONET幀。
12.如權(quán)利要求11中的方法,其中一個(gè)單獨(dú)的ATM查找和IP查找被提供給每個(gè)輸入端口。
13.一種裝置,用于把包含標(biāo)識(shí)目的地址信息的互聯(lián)網(wǎng)協(xié)議(IP)包以及包含標(biāo)識(shí)目的地址信息的異步傳輸方式(ATM)單元導(dǎo)向到它們的目的地址,包含用于接收輸入數(shù)據(jù)流的輸入端口;用于輸出數(shù)據(jù)流的輸出端口;用于把在輸入端口接收的輸入數(shù)據(jù)導(dǎo)向到輸出端口的線路卡,每個(gè)所述的線路卡包含一個(gè)IP包轉(zhuǎn)發(fā)設(shè)備用于把輸入數(shù)據(jù)中的IP包根據(jù)包含在IP包中的地址信息導(dǎo)向到輸出端口;以及一個(gè)ATM信元轉(zhuǎn)發(fā)設(shè)備用于把輸入數(shù)據(jù)中的ATM信元根據(jù)包含在ATM信元中的地址信息導(dǎo)向到輸出端口。
14.如權(quán)利要求14中的設(shè)備,還包含一個(gè)用于互聯(lián)線路卡而在線路卡之間通信的互聯(lián)。
15.如權(quán)利要求14中的設(shè)備,還包含一個(gè)放在一個(gè)選中輸入端口之前的多路復(fù)用器,用來(lái)多路復(fù)用多個(gè)數(shù)據(jù)流到一個(gè)單輸入數(shù)據(jù)流。
16.如權(quán)利要求14中的設(shè)備,其中輸入數(shù)據(jù)作為一個(gè)OC-48數(shù)據(jù)流被接收。
17.如權(quán)利要求14中的設(shè)備,還包含一個(gè)放在一個(gè)選中輸出端口之前的多路復(fù)用器,用來(lái)多路復(fù)用多個(gè)數(shù)據(jù)支流到一個(gè)單輸出數(shù)據(jù)流。
18.如權(quán)利要求14中的設(shè)備,其中IP包轉(zhuǎn)發(fā)設(shè)備是一個(gè)應(yīng)用專用的集成電路(ASIC)的一部分。
19.如權(quán)利要求14中的設(shè)備,其中ATM信元轉(zhuǎn)發(fā)設(shè)備是一個(gè)應(yīng)用專用的集成電路(ASIC)的一部分。
全文摘要
一個(gè)通信結(jié)點(diǎn)包含用于把互聯(lián)網(wǎng)協(xié)議(IP)包和異步傳輸方式(ATM)信元導(dǎo)向到它們的目的地址的智能。ATM信元和IP包可以在一個(gè)公共數(shù)據(jù)流中接收。各自設(shè)備處理ATM信元和IP包從而把信元和包導(dǎo)向到它們的目的地址而到達(dá)適當(dāng)?shù)妮敵龆丝?。設(shè)備能夠在ATM信元和IP包上進(jìn)行策略和服務(wù)質(zhì)量(QOS)處理。
文檔編號(hào)H04J3/22GK1275299SQ99801401
公開日2000年11月29日 申請(qǐng)日期1999年6月18日 優(yōu)先權(quán)日1998年6月19日
發(fā)明者S·R·維利斯 申請(qǐng)人:尤尼斯菲爾解決方案公司