国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      路由查找裝置的制作方法

      文檔序號(hào):6423939閱讀:218來源:國知局
      專利名稱:路由查找裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及路由查找技術(shù),更具體的說,本發(fā)明涉及一種應(yīng)用于IPv6網(wǎng)絡(luò)中的路由查找裝置。
      背景技術(shù)
      互連網(wǎng)協(xié)議路由轉(zhuǎn)發(fā)表線速查表技術(shù)是核心骨干路由器關(guān)鍵技術(shù)之一。路由查找是指對(duì)每個(gè)到達(dá)的IP報(bào)文根據(jù)其目的IP地址確定其應(yīng)轉(zhuǎn)發(fā)的輸出端口號(hào)和下一跳地址。為提高IPv4地址空間的利用率,減緩路由表中表項(xiàng)的增長速度,Internet工作組IETF在1993年提出了無類域間路由(ClasslessInter-domain Routing-CIDR)技術(shù),地址前綴長度可為不超過IPv4地址寬度的任意長度。變長地址前綴的采用使得IP地址的層次性分配成為可能,但在路由轉(zhuǎn)發(fā)表查表時(shí)就有可能找到多個(gè)匹配的路由表項(xiàng),因此需要在所有匹配的表項(xiàng)中選擇地址前綴長度最大的表項(xiàng)作為最終的查找結(jié)果,即進(jìn)行最長前綴匹配(LPM-Longest Prefix Match)。
      目前,隨著網(wǎng)絡(luò)規(guī)模不斷增長和服務(wù)質(zhì)量的需求,互聯(lián)網(wǎng)逐漸向以IPv6網(wǎng)絡(luò)互聯(lián)協(xié)議為基礎(chǔ)的新一代互聯(lián)網(wǎng)過渡。IPv6與IPv4相比,在地址格式上發(fā)生了很大改變,地址長度由原來的32位變成了128位,在地址分配上也進(jìn)行了改進(jìn)。盡管IPv6的地址結(jié)構(gòu)與IPv4相比有許多不同之處,但整個(gè)地址空間還是層次性結(jié)構(gòu),仍然存在類似于IPv4CIDR地址結(jié)構(gòu)下的路由合并,IPv6路由查找同樣采用LPM,但隨著IPv6地址寬度的增加使得最長前綴匹配問題變得更加突出。隨著鏈路速度的提高和IPv6的應(yīng)用,LPM日益成為實(shí)現(xiàn)IPv6高速路由查表線速轉(zhuǎn)發(fā)的瓶頸。
      對(duì)IPv6骨干路由器而言,查找速率、表項(xiàng)更新速度、查找連續(xù)性和更新預(yù)處理復(fù)雜性是衡量路由查找方法的最重要的性能指標(biāo)。雖然人們提出了許多針對(duì)IPv4的路由查找算法,但不適應(yīng)IPv6骨干路由器的轉(zhuǎn)發(fā)需求。比如,即使采用搜索次數(shù)較少的對(duì)前綴長度的二分搜索算法,一次IPv6路由查找需要多達(dá)7步搜索,且因存在回溯問題難以硬件實(shí)現(xiàn)。
      目前已有的支持IPv6快速路由查找的技術(shù)是單級(jí)內(nèi)容可尋址存儲(chǔ)器(TCAM,Ternary Content Addressable Memory)方案。其采用的技術(shù)方案是采用單級(jí)TCAM存儲(chǔ)前綴,將前綴對(duì)應(yīng)的輸出端口號(hào)和下一跳地址存儲(chǔ)在靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)中。查表時(shí)將目的IP地址送入TCAM,TCAM將匹配項(xiàng)的最低地址輸出(優(yōu)先編碼)作為后續(xù)查表索引,據(jù)此從SRAM中讀出相應(yīng)的輸出端口號(hào)和下一跳地址,即為最長前綴匹配結(jié)果。由于實(shí)際應(yīng)用中路由表項(xiàng)需要不斷更新,表項(xiàng)更新會(huì)中斷查表流程,而TCAM僅簡單地將地址最低的匹配表項(xiàng)的存儲(chǔ)地址作為結(jié)果(索引)輸出,所以要保障最長前綴匹配,表項(xiàng)的存儲(chǔ)必須按前綴長度相對(duì)存儲(chǔ)地址降序排列,因而一個(gè)表項(xiàng)插入TCAM有時(shí)需要數(shù)十次維序操作,即中斷路由查找流程數(shù)十次,不僅影響路由表項(xiàng)的及時(shí)更新,也使查表連續(xù)性能大幅下降。
      為了克服所述缺點(diǎn),現(xiàn)有技術(shù)采用減少按序插入表項(xiàng)所需的表項(xiàng)移動(dòng)次數(shù)來進(jìn)一步提高表項(xiàng)更新速度,雖對(duì)路由更新的平均效率有所改進(jìn),但預(yù)處理操作復(fù)雜,最差情況下更新開銷大。

      發(fā)明內(nèi)容
      本發(fā)明解決的技術(shù)問題是提供一種快速更新表項(xiàng)的路由查找裝置。采用所述裝置,表項(xiàng)存儲(chǔ)不需要排序,一個(gè)表項(xiàng)更新只中斷路由查找流程一次,路由查找連續(xù)性強(qiáng),且不需要表項(xiàng)更新預(yù)處理。
      為解決上述問題,本發(fā)明的路由查找裝置,包括
      第一級(jí)TCAM,用于根據(jù)16個(gè)地址長度范圍劃分的存儲(chǔ)區(qū)分別存儲(chǔ)相應(yīng)的擴(kuò)展為64位的IPv6地址前綴的轉(zhuǎn)發(fā)表,路由查找時(shí),根據(jù)輸入的待查找地址進(jìn)行最長前綴匹配,然后輸出第一最長前綴匹配結(jié)果I1;第一比較器,與所述第一級(jí)TCAM相連,用于將所述第一最長前綴匹配結(jié)果與第一界值比較,輸出第一附加前綴Q1;第二級(jí)TCAM,與所述第一比較器相連,用于根據(jù)4個(gè)地址長度范圍劃分以及增加相應(yīng)的附加前綴的存儲(chǔ)區(qū)分別存儲(chǔ)相應(yīng)的擴(kuò)展為64位的IPv6地址前綴的轉(zhuǎn)發(fā)表,路由查找時(shí),根據(jù)輸入的所述第一附加前綴Q1和待查找地址進(jìn)行最長前綴匹配,然后輸出第二最長前綴匹配結(jié)果I2;第二比較器,與所述第二TCAM相連,用于將所述第二最長前綴匹配結(jié)果I2與第二界值比較,輸出第二附加前綴Q2;第三級(jí)TCAM,與所述第二比較器相連,用于1個(gè)地址長度范圍劃分以及增加相應(yīng)的附加前綴的存儲(chǔ)區(qū)分別存儲(chǔ)相應(yīng)的擴(kuò)展為64位的IPv6地址前綴的轉(zhuǎn)發(fā)表,路由查找時(shí),根據(jù)輸入的所述第一、第二附加前綴Q1、Q2和待查找地址進(jìn)行最長前綴匹配,然后輸出第三最長前綴匹配結(jié)果I3;SRAM,與所述第三級(jí)TCAM相連,用于保存對(duì)應(yīng)最長前綴匹配結(jié)果的轉(zhuǎn)發(fā)路由信息,路由查找時(shí),根據(jù)所述第三最長前綴匹配結(jié)果I3輸出相應(yīng)的轉(zhuǎn)發(fā)路由信息。
      其中,所述第一級(jí)TCAM設(shè)置為5個(gè)存儲(chǔ)區(qū),分別為S11存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S12存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S13存儲(chǔ)區(qū),其中S11存儲(chǔ)區(qū)、S12存儲(chǔ)區(qū)和S13存儲(chǔ)區(qū)按照16個(gè)地址長度范圍劃分;所述第二級(jí)TCAM設(shè)置為5個(gè)存儲(chǔ)區(qū),分別為S21存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S22存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S23存儲(chǔ)區(qū),其中S21存儲(chǔ)區(qū)、S22存儲(chǔ)區(qū)和S23存儲(chǔ)區(qū)按照4個(gè)地址長度范圍劃分,且每4個(gè)地址長度范圍對(duì)應(yīng)一個(gè)第一附加前綴;
      所述第三級(jí)TCAM設(shè)置為7個(gè)存儲(chǔ)區(qū),分別為S31存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S32存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S33存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S34存儲(chǔ)區(qū),其中S31存儲(chǔ)區(qū)、S32存儲(chǔ)區(qū)、S33和S34存儲(chǔ)區(qū)按照1個(gè)地址長度范圍劃分,且每1個(gè)地址長度范圍對(duì)應(yīng)一個(gè)第一及相應(yīng)第二附加前綴。
      其中,所述第一比較器輸入的第一界定值包括3個(gè)界定量位于S11存儲(chǔ)區(qū)和S12存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的空表項(xiàng)地址b11、位于S12存儲(chǔ)區(qū)和S13存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的空表項(xiàng)地址b12、最高存儲(chǔ)地址b13,第一附加前綴Q1包括4個(gè)可選的比較結(jié)果若I1<b11 則Q1=11;若b11<I1<b12則Q1=10;若b12<I1<b13則Q1=01;若I1=b13 則Q1=00;Q1作為第三級(jí)TCAM輸入的附加前綴的第1、2位。
      第二比較器的第二界定值包括3個(gè)界定量位于S21存儲(chǔ)區(qū)和S22存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b21、位于S22存儲(chǔ)區(qū)和S23存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b22、最高存儲(chǔ)地址b23;第二附加前綴Q2包括4個(gè)可選的比較結(jié)果若I2<b21 則Q2=11;若b21<I2<b22則Q2=10;若b22<I2<b23則Q2=01;若I2=b23 則Q2=00Q2作為第三級(jí)TCAM輸入的附加前綴的第3、4位。
      其中,采用奇擴(kuò)偶方式或分布擴(kuò)展方式將128位IPv6地址長度范圍擴(kuò)展為64位地址長度范圍。
      其中,轉(zhuǎn)發(fā)表更新時(shí),當(dāng)需更新的表項(xiàng)T到來時(shí),第一拍將T送入第一級(jí)TCAM,第二拍將T送入第二級(jí)TCAM并將第一級(jí)TCAM轉(zhuǎn)為路由查找狀態(tài),第三拍將T送入第三級(jí)TCAM并將第二級(jí)TCAM轉(zhuǎn)為路由查找狀態(tài),第四拍將第三級(jí)TCAM轉(zhuǎn)為路由查找狀態(tài)。
      與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果1、表項(xiàng)存儲(chǔ)不需要排序,表項(xiàng)更新速度快;現(xiàn)有技術(shù)單級(jí)TCAM路由查找方法則需要對(duì)表項(xiàng)排序,表項(xiàng)更新速度慢,本發(fā)明由于各級(jí)TCAM的各存儲(chǔ)區(qū)內(nèi)的前綴存儲(chǔ)不需考慮長度順序,所以可進(jìn)行快速表項(xiàng)更新。
      2、一個(gè)表項(xiàng)更新只中斷路由查找流程一次,路由查找連續(xù)性強(qiáng);現(xiàn)有技術(shù)單級(jí)TCAM路由查找方法則需要對(duì)表項(xiàng)排序,排序過程中要進(jìn)行多次表項(xiàng)移動(dòng),每移動(dòng)一次表項(xiàng)要中斷一次路由查找流程,其查找連續(xù)性差,本發(fā)明由于各級(jí)TCAM的各存儲(chǔ)區(qū)內(nèi)的前綴存儲(chǔ)不需考慮長度順序,所以一個(gè)表項(xiàng)更新只需中斷路由查找流程一次。
      3、不需要表項(xiàng)更新預(yù)處理。
      現(xiàn)有技術(shù)單級(jí)TCAM路由查找方法,為提高減少表項(xiàng)排序過程中對(duì)表項(xiàng)的移動(dòng)次數(shù),需要復(fù)雜的表項(xiàng)更新預(yù)處理,本發(fā)明由于各級(jí)TCAM的各存儲(chǔ)區(qū)內(nèi)的前綴存儲(chǔ)不需考慮長度順序,所以一個(gè)表項(xiàng)更新時(shí)只需直接存入確定的存儲(chǔ)區(qū)域,所以不需要表項(xiàng)更新預(yù)處理。


      圖1是本發(fā)明路由查找裝置實(shí)施例組成示意圖;圖2是本發(fā)明三級(jí)流水結(jié)構(gòu)存儲(chǔ)示意圖。
      具體實(shí)施例方式
      本發(fā)明的路由查找裝置采用三級(jí)流水操作實(shí)現(xiàn)路由查找,通過將轉(zhuǎn)發(fā)表經(jīng)前綴擴(kuò)展后再逐級(jí)四分,加上不同長度的附加前綴后存儲(chǔ)在對(duì)應(yīng)的存儲(chǔ)區(qū)內(nèi)。由于各存儲(chǔ)區(qū)內(nèi)的前綴存儲(chǔ)可避免表項(xiàng)存儲(chǔ)排序,因此,可提高表項(xiàng)更新速度。
      所述存儲(chǔ)區(qū)可采用公知的TCAM通用器件實(shí)現(xiàn),下面以具體實(shí)施例進(jìn)行說明。
      圖1是本發(fā)明路由查找具體實(shí)施例組成示意圖。
      本發(fā)明中采用3級(jí)流水操作進(jìn)行路由查找,流水查找結(jié)構(gòu)自左至右分別為第一級(jí)、第二級(jí)、第三級(jí)。第一、二級(jí)分別由一個(gè)TCAM和一個(gè)比較器組成,第三級(jí)為一個(gè)TCAM,后接存儲(chǔ)下一跳地址的SRAM。
      第一級(jí)TCAM從低地址到高地址劃分為5個(gè)存儲(chǔ)區(qū)域,5個(gè)存儲(chǔ)區(qū)域分別為S11存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S12存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S13存儲(chǔ)區(qū);第二級(jí)TCAM從低地址到高地址劃分為5個(gè)存儲(chǔ)區(qū)域,5個(gè)存儲(chǔ)區(qū)域分別為S21存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S22存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S23存儲(chǔ)區(qū);第三級(jí)TCAM從低地址到高地址劃分為7個(gè)存儲(chǔ)區(qū)域,7個(gè)存儲(chǔ)區(qū)域分別為S31存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S32存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S33存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S34存儲(chǔ)區(qū)。
      表一是本發(fā)明比較器運(yùn)算規(guī)則。
      比較器運(yùn)算規(guī)則

      表一本發(fā)明中所述第一比較器和第二比較器采用相同的比較器運(yùn)算規(guī)則,比較器有四個(gè)輸入量,一個(gè)輸出量。
      第一比較器的四個(gè)輸入量分別是位于S11存儲(chǔ)區(qū)和S12存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b11、位于S12存儲(chǔ)區(qū)和S13存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b12、最高存儲(chǔ)地址b13、第一級(jí)TCAM輸出的當(dāng)前匹配結(jié)果I1(即第一最長前綴匹配結(jié)果)。其中b11、b12和b13作為界定值(即第一界定值),一個(gè)輸出量是2比特的比較結(jié)果Q1作為第一附加前綴。
      其中第一比較器的運(yùn)算規(guī)則參考表一所示,根據(jù)以下規(guī)則輸出Q1若I1<b11 則Q1=11;若b11<I1<b12則Q1=10;若b12<I1<b13則Q1=01;若I1=b13 則Q1=00Q1作為第二級(jí)、第三級(jí)TCAM輸入的附加前綴的第1、2位。
      第二比較器的四個(gè)輸入量分別是位于S21存儲(chǔ)區(qū)和S22存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b21、位于S22存儲(chǔ)區(qū)和S23存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b22、最高存儲(chǔ)地址b23、第二級(jí)TCAM輸出的當(dāng)前匹配結(jié)果I2(即第二最長前綴匹配結(jié)果)。其中b21、b22和b23作為界定值(即第二界定值),一個(gè)輸出量是2比特的比較結(jié)果Q2作為第二附加前綴。
      同樣的,所述第二比較器的運(yùn)算規(guī)則參考圖2所示,根據(jù)以下規(guī)則輸出Q2若I2<b21 則Q2=11;若b21<I2<b22則Q2=10;若b22<I2<b23則Q2=01;若I2=b23 則Q2=00
      Q2作為第三級(jí)TCAM輸入的附加前綴的第3、4位。
      這樣,根據(jù)輸入的所述第一、第二附加前綴Q1、Q2和待查找地址進(jìn)行最長前綴匹配,然后輸出第三最長前綴匹配結(jié)果I3,即最終的最長前綴匹配結(jié)果,由所述第三最長前綴匹配結(jié)果I3即可通過SRAM查找輸出相應(yīng)的轉(zhuǎn)發(fā)路由信息。
      需要說明的是,為實(shí)現(xiàn)上述的3級(jí)流水操作,本發(fā)明中采用前綴擴(kuò)展,即將IPv6的地址長度數(shù)目由128個(gè)減少為64個(gè)。前綴擴(kuò)展可采用方法較多,本實(shí)施例僅介紹兩種比較簡單的方法,第一種是奇擴(kuò)偶方式。即奇數(shù)長度前綴擴(kuò)展1位后成為偶數(shù)長度前綴,例如范圍有兩個(gè)長度的前綴0110011/7,10111000/8,奇偶擴(kuò)展后為01100110/8,01100111/8,10111000/8,只有一個(gè)長度了;第二種是分布擴(kuò)展方式,即根據(jù)對(duì)轉(zhuǎn)發(fā)表中前綴長度的分布情況做不同的擴(kuò)展。若某長度的前綴出現(xiàn)的頻率高,則不擴(kuò)或少擴(kuò);若某些長度的前綴出現(xiàn)的頻率低則多擴(kuò)。原前綴擴(kuò)展后含有64個(gè)不同長度,64個(gè)長度分別按遞增順序標(biāo)識(shí)為01~64,作為三級(jí)流水處理的前綴長度。
      第一、二、三級(jí)TCAM的最高地址存儲(chǔ)相同的前綴統(tǒng)配符“*”_第一、二、三級(jí)TCAM除最高地址的其它存儲(chǔ)區(qū)存儲(chǔ)不同的、確定的前綴長度范圍和附加前綴,各存儲(chǔ)區(qū)內(nèi)的前綴存儲(chǔ)不需考慮長度順序。
      第一級(jí)TCAM存儲(chǔ)的前綴長度范圍和附加前綴分別是S13[17,32]S12[33,48]S11[49,64]第二級(jí)TCAM存儲(chǔ)的前綴長度范圍和附加前綴分別是S2300
      、01[21,24]、10[37,40]、11[53,56]S2200
      、01[25,28]、10[41,44]、11[57,60]S2100[13,16]、01[29,32]、10[45,48]、11[61,64]
      第三級(jí)TCAM存儲(chǔ)的前綴長度范圍和附加前綴分別是S340000
      、0100[17]、1000[33]、1100[49]、0001
      、0101[21]、1001[37]、1101[53]、0010
      、0110[25]、1010[41]、1110[57]、0011[13]、0111[29]、1011[45]、1111[61]S330000
      、0100[18]、1000[34]、1100[50]、0001
      、0101[22]、1001[38]、1101[54]、0010[10]、0110[26]、1010[42]、1110[58]、0011[14]、0111[30]、1011[46]、1111[62]S320000
      、0100[19]、1000[35]、1100[51]、0001
      、0101[23]、1001[37]、1101[55]、0010[11]、0110[27]、1010[43]、1110[59]、0011[15]、0111[31]、1011[47]、1111[63]S310000
      、0100[20]、1000[36]、1100[52]、0001
      、0101[24]、1001[40]、1101[56]、0010[12]、0110[28]、1010[44]、1110[60]、0011[16]、0111[32]、1011[48]、1111[64]下面說明路由查找過程第一、二、三級(jí)TCAM進(jìn)行同步流水查找操作。當(dāng)目的IPv6地址P到來時(shí),第一拍直接送入第一級(jí)TCAM,第二拍將第一級(jí)TCAM輸出的結(jié)果送給第一比較器,第三拍將第一比較器產(chǎn)生的結(jié)果加在地址P前一同輸入給第二級(jí)TCAM,第四拍將第二級(jí)TCAM輸出的結(jié)果送給第二比較器,第五拍將第一比較器和第二比較器產(chǎn)生的結(jié)果加在P前一同輸入給第三級(jí)TCAM,第六拍將第三級(jí)TCAM的輸出送入SRAM,從中得到下一跳地址。
      當(dāng)需要更新表項(xiàng)時(shí),可根據(jù)以下過程進(jìn)行1、2、3級(jí)TCAM進(jìn)行同步流水更新操作。當(dāng)需更新的表項(xiàng)T到來時(shí),第一拍將T送入第一級(jí)TCAM,第二拍將T送入第二級(jí)TCAM并將第一級(jí)TCAM轉(zhuǎn)為路由查找狀態(tài),第三拍將T送入第三級(jí)TCAM并將第二級(jí)TCAM轉(zhuǎn)為路由查找狀態(tài),第四拍將第三級(jí)TCAM轉(zhuǎn)為路由查找狀態(tài)。
      綜上,本發(fā)明通過第一級(jí)TCAM將目的地址P的最長前綴匹配項(xiàng)所在的長度范圍由最初的64縮小為16,即將匹配項(xiàng)存在的范圍縮小至原范圍的1/4,比如可能是長度最短的范圍[1,16],或次短的范圍[17,32],或較長的范圍[33,48],或最長的范圍[49,64]。然后由第一比較器判斷目的地址P的最長前綴匹配項(xiàng)所在的長度范圍。判斷的過程是用第一級(jí)TCAM的輸出(一個(gè)前綴/表現(xiàn)的存儲(chǔ)地址,確切地說是所有與P匹配的前綴中,存儲(chǔ)地址最小的那個(gè)前綴的存儲(chǔ)地址。這一功能是TCAM的基本功能)、與范圍S11與S12間空表項(xiàng)區(qū)的一個(gè)存儲(chǔ)地址、范圍S12與S13間空表項(xiàng)區(qū)的一個(gè)存儲(chǔ)地址、最高存儲(chǔ)地址比較,第一比較器產(chǎn)生4個(gè)不同的比較結(jié)果,對(duì)應(yīng)指示四個(gè)不同的范圍,然后將比較結(jié)果送給第二級(jí)TCAM,第二級(jí)TCAM據(jù)此知道在哪個(gè)1/4范圍內(nèi)繼續(xù)查找。例如,若第一比較器輸出11,則對(duì)應(yīng)的范圍是[49,64]。
      同理,第二級(jí)TCAM將目的地址P的最長前綴匹配項(xiàng)所在的長度范圍由最初的16縮小為4,即將匹配項(xiàng)存在的范圍縮小至原范圍的1/4,比如對(duì)范圍[49,64],可能是長度最短的范圍[49,52],或次短的范圍[53,56],或較長的范圍[57,60],或最長的范圍[61,64]。然后第二比較器進(jìn)一步判斷目的地址P的最長前綴匹配項(xiàng)所在的長度范圍。判斷的過程是用第二級(jí)TCAM的輸出(一個(gè)前綴/表現(xiàn)的存儲(chǔ)地址,確切地說是所有與P匹配的前綴中,存儲(chǔ)地址最小的那個(gè)前綴的存儲(chǔ)地址。這一功能是TCAM的基本功能)、與范圍S21與S22間空表項(xiàng)區(qū)的一個(gè)存儲(chǔ)地址、范圍S22與S23間空表項(xiàng)區(qū)的一個(gè)存儲(chǔ)地址、最高存儲(chǔ)地址比較。第二比較器產(chǎn)生4個(gè)不同的比較結(jié)果,對(duì)應(yīng)指示四個(gè)不同的范圍,比較結(jié)果送給第三級(jí)TCAM,結(jié)合第一級(jí)TCAM輸出的結(jié)果,第三級(jí)TCAM據(jù)此知道在哪個(gè)1/4范圍內(nèi)繼續(xù)查找。例如,若第二比較器輸出00,則對(duì)應(yīng)的范圍是[49,52]。
      最后由第三級(jí)TCAM確定最終的最長匹配結(jié)果,例如將范圍[49,52]進(jìn)一步縮小至原范圍的1/4。此時(shí)其輸出就是最長前綴匹配項(xiàng)的存儲(chǔ)地址了,最后據(jù)此從SRAM中取出下一跳地址。
      以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
      權(quán)利要求
      1.一種路由查找裝置,用于IPv6網(wǎng)絡(luò)中,其特征在于,包括第一級(jí)內(nèi)容可尋址存儲(chǔ)器,用于根據(jù)16個(gè)地址長度范圍劃分的存儲(chǔ)區(qū)分別存儲(chǔ)相應(yīng)的擴(kuò)展為64個(gè)地址長度范圍的IPv6地址前綴的轉(zhuǎn)發(fā)表,路由查找時(shí),根據(jù)輸入的待查找地址進(jìn)行最長前綴匹配,然后輸出第一最長前綴匹配結(jié)果I1;第一比較器,與所述第一級(jí)內(nèi)容可尋址存儲(chǔ)器相連,用于將所述第一最長前綴匹配結(jié)果與第一界值比較,輸出第一附加前綴Q1;第二級(jí)內(nèi)容可尋址存儲(chǔ)器,與所述第一比較器相連,用于根據(jù)4個(gè)地址長度范圍劃分以及增加相應(yīng)的附加前綴的存儲(chǔ)區(qū)分別存儲(chǔ)相應(yīng)的擴(kuò)展為64個(gè)地址長度范圍的IPv6地址前綴的轉(zhuǎn)發(fā)表,路由查找時(shí),根據(jù)輸入的所述第一附加前綴Q1和待查找地址進(jìn)行最長前綴匹配,然后輸出第二最長前綴匹配結(jié)果I2;第二比較器,與所述第二級(jí)內(nèi)容可尋址存儲(chǔ)器相連,用于將所述第二最長前綴匹配結(jié)果I2與第二界值比較,輸出第二附加前綴Q2;第三級(jí)內(nèi)容可尋址存儲(chǔ)器,與所述第二比較器相連,用于1個(gè)地址長度范圍劃分以及增加相應(yīng)的附加前綴的存儲(chǔ)區(qū)分別存儲(chǔ)相應(yīng)的擴(kuò)展為64個(gè)地址長度范圍的IPv6地址前綴的轉(zhuǎn)發(fā)表,路由查找時(shí),根據(jù)輸入的所述第一、第二附加前綴Q1、Q2和待查找地址進(jìn)行最長前綴匹配,然后輸出第三最長前綴匹配結(jié)果I3;靜態(tài)隨機(jī)存取存儲(chǔ)器,與所述第三級(jí)內(nèi)容可尋址存儲(chǔ)器相連,用于保存對(duì)應(yīng)最長前綴匹配結(jié)果的轉(zhuǎn)發(fā)路由信息,路由查找時(shí),根據(jù)所述第三最長前綴匹配結(jié)果I3輸出相應(yīng)的轉(zhuǎn)發(fā)路由信息。
      2.根據(jù)權(quán)利要求1所述的路由查找裝置,其特征在于,所述第一級(jí)內(nèi)容可尋址存儲(chǔ)器設(shè)置為5個(gè)存儲(chǔ)區(qū),分別為S11存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S12存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S13存儲(chǔ)區(qū),其中S11存儲(chǔ)區(qū)、S12存儲(chǔ)區(qū)和S13存儲(chǔ)區(qū)按照16個(gè)地址長度范圍劃分;所述第二級(jí)內(nèi)容可尋址存儲(chǔ)器設(shè)置為5個(gè)存儲(chǔ)區(qū),分別為S21存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S22存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S23存儲(chǔ)區(qū),其中S21存儲(chǔ)區(qū)、S22存儲(chǔ)區(qū)和S23存儲(chǔ)區(qū)按照4個(gè)地址長度范圍劃分,且每4個(gè)地址長度范圍對(duì)應(yīng)一個(gè)第一附加前綴;所述第三級(jí)內(nèi)容可尋址存儲(chǔ)器設(shè)置為7個(gè)存儲(chǔ)區(qū),分別為S31存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S32存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S33存儲(chǔ)區(qū)、空表項(xiàng)區(qū)、S34存儲(chǔ)區(qū),其中S31存儲(chǔ)區(qū)、S32存儲(chǔ)區(qū)、S33和S34存儲(chǔ)區(qū)按照1個(gè)地址長度范圍劃分,且每1個(gè)地址長度范圍對(duì)應(yīng)一個(gè)第一及相應(yīng)第二附加前綴。
      3.根據(jù)權(quán)利要求2所述的路由查找裝置,其特征在于,所述第一比較器輸入的第一界定值包括3個(gè)界定量位于S11存儲(chǔ)區(qū)和S12存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的空表項(xiàng)地址b11、位于S12存儲(chǔ)區(qū)和S13存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的空表項(xiàng)地址b12、最高存儲(chǔ)地址b13,第一附加前綴Q1包括4個(gè)可選的比較結(jié)果若I1<b11 則Q1=11;若b11<I1<b12 則Q1=10;若b12<I1<b13 則Q1=01;若I1=b13 則Q1=00;Q1作為第三級(jí)內(nèi)容可尋址存儲(chǔ)器輸入的附加前綴的第1、2位。第二比較器的第二界定值包括3個(gè)界定量位于S21存儲(chǔ)區(qū)和S22存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b21、位于S22存儲(chǔ)區(qū)和S23存儲(chǔ)區(qū)之間空表項(xiàng)區(qū)中的某一空表項(xiàng)地址b22、最高存儲(chǔ)地址b23;第二附加前綴Q2包括4個(gè)可選的比較結(jié)果若I2<b21 則Q2=11;若b21<I2<b22 則Q2=10;若b22<I2<b23 則Q2=01;若I2=b23 則Q2=00Q2作為第三級(jí)內(nèi)容可尋址存儲(chǔ)器輸入的附加前綴的第3、4位。
      4.根據(jù)權(quán)利要求1所述的路由查找裝置,其特征在于,采用奇擴(kuò)偶方式或分布擴(kuò)展方式將128個(gè)IPv6地址長度范圍擴(kuò)展為64個(gè)地址長度范圍。
      5.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的路由查找裝置,其特征在于,轉(zhuǎn)發(fā)表更新時(shí),當(dāng)需更新的表項(xiàng)T到來時(shí),第一拍將T送入第一級(jí)內(nèi)容可尋址存儲(chǔ)器,第二拍將T送入第二級(jí)內(nèi)容可尋址存儲(chǔ)器并將第一級(jí)內(nèi)容可尋址存儲(chǔ)器轉(zhuǎn)為路由查找狀態(tài),第三拍將T送入第三級(jí)內(nèi)容可尋址存儲(chǔ)器并將第二級(jí)內(nèi)容可尋址存儲(chǔ)器轉(zhuǎn)為路由查找狀態(tài),第四拍將第三級(jí)內(nèi)容可尋址存儲(chǔ)器轉(zhuǎn)為路由查找狀態(tài)。
      全文摘要
      本發(fā)明公開一種路由查找裝置,用于IPv6網(wǎng)絡(luò)中,該裝置主要包括三級(jí)內(nèi)容可尋址存儲(chǔ)器以及位于第一級(jí)內(nèi)容可尋址存儲(chǔ)器和第二級(jí)內(nèi)容可尋址存儲(chǔ)器之間的第一比較器,第二級(jí)內(nèi)容可尋址存儲(chǔ)器和第三級(jí)內(nèi)容可尋址存儲(chǔ)器之間的第二比較器。本發(fā)明由于各級(jí)內(nèi)容可尋址存儲(chǔ)器的各存儲(chǔ)區(qū)內(nèi)的前綴存儲(chǔ)不需考慮長度順序,所以可進(jìn)行快速表項(xiàng)更新。另一方面,一個(gè)表項(xiàng)更新只中斷路由查找流程一次,路由查找連續(xù)性強(qiáng)。
      文檔編號(hào)G06F12/00GK1728676SQ20041007104
      公開日2006年2月1日 申請(qǐng)日期2004年7月28日 優(yōu)先權(quán)日2004年7月28日
      發(fā)明者蘭巨龍, 王振興, 張興明, 于婧, 李云濤 申請(qǐng)人:國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1