新四季網

對網絡地址轉換的映射條目生成順序實現優先級的方法

2023-09-23 07:17:15 2

專利名稱:對網絡地址轉換的映射條目生成順序實現優先級的方法
技術領域:
本發明涉及網絡通信技術,更具體的說,是涉及針對網絡地址映射的生成 順序實現優先級的方法。
技術背景由於網際網路的飛速發展,網絡規模不斷擴大,導致網際網路協議第四版本(Internet Protocol Version 4, IPv4 )地址非常緊張,無法為每個企業分配大量 公網地址,所以企業一般都為自己的公司網絡分配私網地址。如圖l所示,由 於私網地址無法在公網設備上使用,所以一般的做法是通過網絡地址轉換(Network Address Translation, NAT)設備進行私網到公網地址的轉換,然後 再登陸公網。NAT技術是一種地址映射技術,通常用於子網內具有私有IP位址的主機 訪問外部主機時將該主機的私有IP位址映射為一個外部唯一可識別的公用IP 地址;同時,將外部主機返回給內部主機的公用IP位址映射回內部標誌該主 機的私有IP位址,使得返回的數據包正確到達內部目的主機,即通常所說的 生成了一個會話。因此NAT主要用於在專用網和本地企業網中使用,其中本 地網絡被指定為內部網,全球網際網路被指定為外部網。本地網地址可以通過 NAT映射到外部網中的一個或多個地址,且用於轉換的外部網地址數目可以 少於需要轉換的本地網IP位址數目。由於系統資源的限制,私網到公網的地址映射數量不是無限增長的,所以 分配到每個私網用戶的映射條目數量是有限的。在NAT發展的過程中,為了 保證每個用戶都有一定的映射條目資源可以使用, 一般會為每個用戶設置一定 的映射條目限制,即單個用戶映射條目上限。這樣,每個用戶能夠被允許發起 的映射條目不會超過單個用戶映射條目上限,保證了每個用戶都能夠獲得一定 的映射空間,不會出現先上網的用戶把映射空間佔滿的情況。但是,即使這樣,還是會存在下述問題。比如,為每個用戶分配的映射空間可能不夠用,以上網瀏覽為例,由於網頁上往往存在很多連結或者廣告,打開一個網頁並不是僅^f叉發起一個超文本傳輸協議(Hyper Text Transfer Protocol, HTTP)請求,往往一次發起幾個到幾十個不等,甚至完整打開一個 網頁可能需要發起超過100個連結,如果設備總的映射空間有限,並且用戶數 量比較大的話,很可能分配給單個用戶的映射條目數量只能夠保證夠打開一兩 個網頁。在這種情況下,如果用戶同時打開多個網頁,這些網頁完全打開需要 的連結數總和一旦超過設備分配給單個用戶的映射數,那麼可能會導致每個網 頁都不能完全打開,也許都只能打開一部分就不能再繼續瀏覽剩餘的信息了 。 舉例說明,NAT設備為每個用戶分配的映射數為200, —個用戶同時打開 了5張網頁,每張網頁完整打開需要發起的HTTP請求在50個左右,這樣每 個網頁能夠被成功連接的請求數只有40個,剩餘的10個請求就無法打開了 。此外,由於連結發起的順序不是一定的,而往往由網站的維護人員設定。 因此,不同的用戶需求不同,網站維護人員無法把所有用戶認為重要的信息都 安排優先發起HTTP請求。可能一個網頁上對用戶來說比較重要的信息並不是 首先被發起連結,這樣,當單個用戶的映射條目用完的時候,某些網頁上的重 要信息可能還未被顯示出來。 發明內容本發明的目的在於,提供一種對網絡地址轉換的映射條目生成順序實現優 先級的方法,使得網頁按照一定的順序依次打開,保證用戶至少在一個時間段內能夠至少有一個網頁可以瀏覽。本發明的對網絡地址轉換的映射條目生成順序實現優先級的方法,包括下 列步驟步驟A:當地址轉換NAT設備收到數據包後,需要進行地址轉換時,判 斷映射條目是否已經生成,在未生成映射條目時,將數據包上送至CPU,並 執行步驟B;步驟B: CPU判斷並發映射數是否超過預定的映射入隊門限,在超過預 定的映射入隊門限時,判斷在HTTP數據中是否含有Referer推薦欄位,並根 據判斷結果記錄Referer欄位或者GET獲得欄位,作為標識寫入REF推薦表 中,並將每個用戶依照寫入順序排列出優先級;步驟C: CPU依照所述REF表中的優先級依次生成映射,然後下發到轉 發層面轉發數據包。其中,在所述步驟A之前,進一步包括下列步驟預先建立REF表,所 述表中列出各個用戶對應的HTTP中Referer欄位的優先級,其中,初始表項 為空。其中,在所述步驟B中,所述預定的映射入隊門限小於單個用戶允許被 生成的映射總數。進一步地,在所述步驟B中,包括下列步驟在從HTTP報文中提取出 Referer欄位後,或者在HTTP數據中未含有Referer欄位時,提取GET欄位, 與當前REF表中同 一用戶組進行比較,如果所述REF表中已經存在相應條目, 則依照相應的優先等級順序由CPU進行處理;否則,作為新條目,按順序排 在表鏈末端,等待CPU處理。其中,在所述步驟B中,可以根據HTTP的編碼規則,通過字符匹配提 取Referer欄位。此外,在所述步驟A中,在已經生成映射條目時,直接進行NAT轉換。 進一步地,可以包括下列步驟步驟D:在REF條目生成時,為其設置 保活時間,保活時間到時,刪除所述REF條目。 其中,所述步驟D,可以包括下列步驟 步驟D1: REF條目生成,為其設置保活時間;步驟D2:判斷REF條目對應的映射條目是否正在被使用,如果否,則判 斷是否有新的映射條目加入REF中,如果是,說明用戶的網頁還沒有完全打 開,REF條目不能被刪除;否則,所述REF條目具備老化條件,將所述REF 條目刪除。本發明的有益效果是依照本發明的對網絡地址轉換的映射條目生成順序 實現優先級的方法,能夠防止在用戶通過NAT設備上網的過程中出現同時打 開多個網頁,但是由於單個用戶NAT映射有限從而導致每個網頁都不能完全 打開的情況,能夠令網頁按照一定的順序依次打開,保證用戶至少在一個時間 段內能夠至少有一個網頁可以瀏覽。


圖1為NAT設備工作的網絡示意圖; 圖2為REF表的結構示意圖; 圖3為本發明實施例的流程圖; 圖4為單個用戶REF條目和映射對應關係表; 圖5為REF表中REF條目的老化條件以及流程示意圖。
具體實施方式
以下,參考附圖2~5詳細描述本發明的對網絡地址轉換的映射條目生成順 序實現優先級的方法。圖2為REF表的結構示意圖,該表是區別不同優先級的HTTP請求,實 現的基礎是識別不同的HTTP報文中推薦(Referer)欄位。如圖2所示,包括 兩個主要的表 一個是用戶,使用數據包的源IP位址識別;另一個是優先級, 用Px表示。 一個用戶發起的HTTP請求會有很多,其中連結的源地址會有很 多,按照發起順序,對應用戶依次提取HTTP包中的Referer欄位記錄在表中, 表中條目按照"Referer+用戶編號+優先級"統一命名,稱為推薦(REF)條目, 如用戶1對應優先級為P2的REF條目名稱為Referer12。需要說明的是,各 個用戶相同的優先級別在全局來看也是相同的。就是說,從全局來看,所有用 戶處於P1優先級的REF條目在CPU的調度上都是平等的。另外,由於每個 Ref條目表示一個網頁的信息,所以對於一個用戶來說,每個優先級只對應一 個REF條目,從而保證網頁能夠被一個個依次打開。本發明的對網絡地址轉換的映射條目生成順序實現優先級的方法,包括下 列步驟步驟301,當地址轉換NAT設備收到數據包後,在需要進行地址轉換時, 檢查NAT映射表,判斷是否已經生成了對應的映射,如果是,則執行步驟310; 否則,執行步驟302;其中,在步驟301之前,進一步包括下列步驟預先建立REF表,該表列出每個用戶對應的HTTP中Referer欄位的優先 級,初始表項為空。步驟302,將報文上送CPU進行處理,判斷該數據包是否為HTTP請求 包,如果是,則執行步驟303;否則,執行步驟309;其中,在步驟302中,可以通過目的埠號判斷數據包是否為HTTP請求 包,例如,在目的埠號為80時,認為數據包為HTTP請求包。步驟303,判斷同一時間上送到CPU的數據包數量是否大於預定的映射 入隊門限,如果是,則執行步驟304;否則,執行步驟309;其中,在步驟303中,預定的映射入隊門限是針對NAT映射數量而設置, 表示一個允許生成映射的範圍,目的是為了觸發CPU對上送的數據包產生排 隊操作而設置的一個參數。具體地說,該門限就像一個閘門,當同一時間上送 CPU的數據包數量大於該門限的時候CPU就會將這些數據包中的Referer字 段提取出來進行排隊,即進入步驟304;如果數量小於該門限,則認為映射數 還比較小,還沒有必要進行排隊,即進入步驟309。該門限類似服務質量中的擁塞判斷條件,在服務質量中,只有擁塞產生的 情況下隊列機制才會生效;在這裡,只有映射數超過門限值才會觸發數據包入 隊,進而排列映射生成的優先級。其中,該門限值可以人為設置,可以參考網絡的具體情況而決定。設計入 隊門限的目的,在於觸發隊列機制,所以該數值必須小於單個用戶允許被生成 的映射總數,如果等於單個用戶映射總數,那麼當同時上送的數據包大於入隊 門限的同時,也大於了單個用戶映射總數,此時由於已經不能再生成更多的映 射,入隊操作也已經失去了意義。步驟304,判斷在一個HTTP報文中,是否含有Referer欄位,如果是, 則執行步驟305;否則,執行步驟306;步驟305,從HTTP報文中提取出Referer欄位,與預先存儲的REF表進 行比較,判斷是否一致,如果是,則執行步驟307;否則,執行步驟308;其中,在步驟305中,可以根據HTTP的編碼規則,通過字符匹配提取 Referer欄位。由於HTTP的編碼方式單一,每個字符都有唯一對應的ASCII 數字表示,並且每個語句的末尾都以Vh結束,所以只要通過字符匹配就可以 找到Referer欄位。具體的,如果需要識別Referer對應的網址,只需要提取 Referer:和下一個VW之間的部分即可。步驟306,提取獲得(GET)欄位,與該REF表進行比較,判斷是否一致, 如果是,則執行步驟307;否則,執行步驟308;這裡需要說明的是,如果HTTP報文中沒有Referer欄位,說明該HTTP 報文是打開主頁的源連結。因為用戶打開的網頁包括主頁的源連結,該連結由 於源連結就是本身,所以沒有Referer欄位,無法提取Referer欄位與REF表 中的條目比較。此時,GET欄位的值可以作為比較的信息,即進入步驟306, 將GET欄位提取出來與REF表中條目比較。此外,CPU從HTTP報文中提取出相應欄位之後,與本身REF表中條目 進行比較時,比較的前提是在同一個用戶組中,即圖2的同一行中。如果沒有 匹配上相應條目,則說明是新的HTTP請求,進入步驟308;否則,進入步驟 307。步驟307,依照相應的優先等級順序由CPU進行處理;在步驟307中,由於查找到REF表中已經存在相應的條目,說明該《連接 的源網頁已經被申請打開,並且在表中已經有了對應的優先級,那麼就不需要 重新生成新條目,直接按照對應的優先級等待CPU處理。步驟308,新條目加入的時候需要識別不同的用戶,可以通過數據包中源 IP位址欄位查找得出結果。依照如上所述,如果在REF表中沒有查找到對應的條目,則說明其是一 個新的連結,按照順序排列在用戶組的末尾,表示優先級最低。如果REF表 中該用戶對應的條目為空,說明該用戶是第一次打開連結,新的條目即為優先 級最高的條目。步驟309, CPU依照當前順序依次生成映射條目後,將其下發至轉發層面; 其中,在步驟309中,CPU生成映射的順序以REF表為準。首先生成的映射都是REF表中處於Pl優先級的條目,在用戶映射數以及CPU資源允許的情況下,依次生成優先級為P2、 P3的條目,以此類推。步驟310:轉發層面生成轉發表,將數據包進行地址轉換後轉發出去。 如圖4所示,為單個用戶REF條目和映射對應關係表,該表由CPU負責維護,每個REF條目對應的映射條目被依次記錄在該表中,形成一個鍊表,並為映射寫入的同時設置時間值,超過一定時間如果還沒有新映射條目寫入,該REF條目就被刪除,由次優先級條目替代。在CPU資源緊張的情況下,當優先級高的REF條目所對應的HTTP請求已經連結完成,網頁已經打開完畢,或者用戶手動停止網頁的連結後,如果該REF條目仍然佔據高優先級位置,就會導致後面的網頁無法打開。另外,即使 CPU資源有空餘,並且已經對較低優先級的REF條目進行處理,高優先級REF 條目的存在仍然會佔用CPU查找的時間,所以需要為高優先級條目設置老化 時間,並設置相應的老化條件。如圖5所示,為REF表中REF條目的老化條件以及流程示意圖,以該表 中的某一個用戶為例,具體的步驟說明如下步驟501, REF條目生成,並為其設置保活時間;其中,保活時間可以由網絡管理者根據網絡實際情況設置,不同的優先級 應該設置不同的長度;步驟502,判斷REF條目對應的映射條目是否正在被使用,如果已經沒有 再被使用,則進入步驟503,繼續進行條件判斷;如果仍然在使用,則說明該 REF條目還不具備老化條件;其中,步驟502的判斷需要轉發層面定時向控制層面發送映射條目使用情況;步驟503,判斷是否有新的映射條目加入REF中,如果有,說明用戶的網 頁還沒有完全打開,REF條目不能被刪除;如果沒有,加上步驟502的判斷, 說明該REF已經具備老化條件;步驟504,如果該REF條目既沒有新映射加入,對應的原映射條目也沒有 被繼續使用,那麼按照預先設置好的保活時間計時,保護時間到則刪除該REF 條目;步驟505,如果不具備老化條件,則執行本步驟,不採取刪除操作;繼續 等待條件滿足;步驟506,如果以上老化條件都已經具備,則將該Ref條目老化,其優先 級被次優先級條目替代。需要說明,即使REF條目沒有被老化,只要CPU資源有空閒,NAT映射 都可以正常生成,因為REF條目針對的只是映射生成之前的優先級,以及CPU 調度,並不是限制映射的生成權限。另夕卜,對刪除REF條件的判斷需要轉發層面定時上送映射條目使用信息,這種機制已經被廣泛採用,屬於現有技術,在此不再詳細說明。綜上所述,依照本發明的對網絡地址轉換的映射條目生成順序實現優先級的方法,能夠防止在用戶通過NAT設備上網的過程中出現同時打開多個網頁, 但是由於單個用戶NAT映射有限從而導致每個網頁都不能完全打開的情況, 能夠令網頁按照一定的順序依次打開,保證用戶至少在一個時間段內能夠至少 有一個網頁可以洌覽。以上是為了使本領域普通技術人員理解本發明,而對本發明所進行的詳細 描述,但可以想到,在不脫離本發明的權利要求所涵蓋的範圍內還可以做出其 它的變化和修改,這些變化和修改均在本發明的保護範圍內。
權利要求
1.一種對網絡地址轉換的映射條目生成順序實現優先級的方法,其特徵在於,包括下列步驟步驟A當地址轉換NAT設備收到數據包後,需要進行地址轉換時,判斷映射條目是否已經生成,在未生成映射條目時,將數據包上送至CPU,並執行步驟B;步驟BCPU判斷並發映射數是否超過預定的映射入隊門限,在超過預定的映射入隊門限時,判斷在HTTP數據中是否含有Referer推薦欄位,並根據判斷結果記錄Referer欄位或者GET獲得欄位,作為標識寫入REF推薦表中,並將每個用戶依照寫入順序排列出優先級;步驟CCPU依照所述REF表中的優先級依次生成映射,然後下發到轉發層面轉發數據包。
2. 如權利要求1所述的對網絡地址轉換的映射條目生成順序實現優先級 的方法,其特徵在於,在所述步驟A之前,進一步包括下列步驟預先建立REF表,所述表中列出各個用戶對應的HTTP中Referer欄位的 優先級,其中,初始表項為空。
3. 如權利要求1或2所述的對網絡地址轉換的映射條目生成順序實現優 先級的方法,其特徵在於,在所述步驟B中,所述預定的映射入隊門限小於 單個用戶允許^L生成的映射總數。
4. 如權利要求1或2所述的對網絡地址轉換的映射條目生成順序實現優 先級的方法,其特徵在於,在所述步驟B中,包括下列步驟在從HTTP報文中提取出Referer欄位後,或者在HTTP數據中未含有 Referer欄位時,提取GET欄位,與當前REF表中同 一用戶組進行比較,如果 所述REF表中已經存在相應條目,則依照相應的優先等級順序由CPU進行處 理;否則,作為新條目,按順序排在表鏈末端,等待CPU處理。
5. 如權利要求4所述的對網絡地址轉換的映射條目生成順序實現優先級 的方法,其特徵在於,在所述步驟B中,根據HTTP的編碼規則,通過字符 匹配提取Referer欄位。
6. 如權利要求1或2所述的對網絡地址轉換的映射條目生成順序實現優 先級的方法,其特徵在於,在所述步驟A中,在已經生成映射條目時,直接 進行NAT轉換。
7. 如權利要求1或2所述的對網絡地址轉換的映射條目生成順序實現優 先級的方法,其特徵在於,進一步包括下列步驟步驟D:在REF條目生成時,為其設置保活時間,保活時間到時,刪除 所述REF條目。
8. 如權利要求7所述的對網絡地址轉換的映射條目生成順序實現優先級 的方法,其特徵在於,所述步驟D,包括下列步驟步驟D1: REF條目生成,為其設置保活時間;步驟D2:判斷REF條目對應的映射條目是否正在被使用,如果否,則判 斷是否有新的映射條目加入REF中,如果是,說明用戶的網頁還沒有完全打 開,REF條目不能被刪除;否則,所述REF條目具備老化條件,將所述REF 條目刪除。
全文摘要
本發明提供一種對網絡地址轉換的映射條目生成順序實現優先級的方法,包括下列步驟步驟A當地址轉換設備收到數據包後,需要進行地址轉換時,判斷映射條目是否已經生成,在未生成映射條目時,將數據包上送至CPU;步驟BCPU判斷並發映射數是否超過預定的映射入隊門限,如果是,則判斷在HTTP數據中是否含有Referer欄位,並根據判斷結果記錄Referer欄位或者GET欄位,寫入REF表中,並將每個用戶依照寫入順序排列出優先級;步驟CCPU依照REF表中的優先級依次生成映射,然後下發到轉發層面轉發數據包。本發明能夠令網頁按照一定的順序依次打開,保證用戶至少在一個時間段內能夠至少有一個網頁可以瀏覽。
文檔編號H04L12/56GK101227390SQ20081000056
公開日2008年7月23日 申請日期2008年1月22日 優先權日2008年1月22日
發明者揚 楊 申請人:中興通訊股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀