国产精品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>

      一種報文控制的方法和設(shè)備的制作方法

      文檔序號:7817699閱讀:244來源:國知局
      一種報文控制的方法和設(shè)備的制作方法
      【專利摘要】本發(fā)明公開了一種報文控制的方法和設(shè)備,該方法包括:AFTR設(shè)備接收來自B4設(shè)備的IPv6報文,所述IPv6報文中攜帶IPv6頭,所述IPv6頭的源地址為所述B4設(shè)備的IPv6隧道地址;所述AFTR設(shè)備獲得所述B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備繼續(xù)處理所述IPv6報文;如果所述連接數(shù)達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備丟棄所述IPv6報文。本發(fā)明實施例中,保證AFTR設(shè)備的資源不會被耗盡,防止資源耗盡而影響用戶服務(wù)質(zhì)量。避免影響AFTR設(shè)備的處理性能,不會造成網(wǎng)絡(luò)嚴(yán)重延遲,不會影響正常用戶訪問目的IPv4網(wǎng)絡(luò)。
      【專利說明】一種報文控制的方法和設(shè)備

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其是涉及一種報文控制的方法和設(shè)備。

      【背景技術(shù)】
      [0002]如圖1所示,為DS-Lite (Dual-Stack Lite,輕型雙棧)網(wǎng)絡(luò)的組網(wǎng)示意圖,當(dāng)IPv4網(wǎng)絡(luò)內(nèi)的客戶端需要經(jīng)過IPv6網(wǎng)絡(luò)訪問目的IPv4網(wǎng)絡(luò)時,該客戶端發(fā)送的IPv4報文將會經(jīng)過B4(Basic Bridging Broad Band,網(wǎng)關(guān)基本橋接寬帶單元)設(shè)備?;贐4設(shè)備與AFTR(Address Family Transit1n Router,地址族過渡路由器單元)設(shè)備之間的IPv6隧道,B4設(shè)備對IPv4報文進行IPv6隧道封裝,在IPv4報文上封裝一層IPv6頭。其中,該IPv6頭的源地址為B4設(shè)備的IPv6隧道地址,目的地址為AFTR設(shè)備的IPv6隧道地址。進一步的,B4設(shè)備通過IPv6網(wǎng)絡(luò)將IPv6隧道封裝后的報文發(fā)送到AFTR設(shè)備。AFTR設(shè)備在接收到來自B4設(shè)備的報文之后,對報文進行IPv6隧道解封裝,去掉報文的IPv6頭,得到客戶端發(fā)送的 IPv4 報文。之后,AFTR 設(shè)備對該 IPv4 報文進行 NAT (Network Address Translat1n,網(wǎng)絡(luò)地址轉(zhuǎn)換)轉(zhuǎn)換,并將NAT轉(zhuǎn)換之后的IPv4報文發(fā)送到目的IPv4網(wǎng)絡(luò)內(nèi)。
      [0003]在上述實現(xiàn)方式中,如果B4設(shè)備連接的某個客戶端惡意發(fā)起大量訪問目的IPv4網(wǎng)絡(luò)的IPv4報文,則AFTR設(shè)備將收到大量的IPv4報文,影響AFTR設(shè)備的處理性能,可能造成網(wǎng)絡(luò)嚴(yán)重延遲,嚴(yán)重影響正常用戶訪問目的IPv4網(wǎng)絡(luò)。


      【發(fā)明內(nèi)容】

      [0004]本發(fā)明實施例提供一種報文控制的方法,應(yīng)用于包括地址族過渡路由器單元AFTR設(shè)備和網(wǎng)關(guān)基本橋接寬帶單元B4設(shè)備的輕型雙棧DS-Lite網(wǎng)絡(luò)中,所述B4設(shè)備通過IPv6網(wǎng)絡(luò)與所述AFTR設(shè)備連接,所述方法包括以下步驟:
      [0005]所述AFTR設(shè)備接收來自所述B4設(shè)備的IPv6報文,所述IPv6報文中攜帶IPv6頭,所述IPv6頭的源地址為所述B4設(shè)備的IPv6隧道地址;
      [0006]所述AFTR設(shè)備獲得所述B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);
      [0007]如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備繼續(xù)處理所述IPv6報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述連接數(shù)達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備丟棄所述IPv6報文。
      [0008]所述方法進一步包括:
      [0009]所述AFTR設(shè)備在接收到所述IPv6報文時,對所述IPv6報文進行IPv6隧道解封裝,并將解封裝后的IPv4報文以及所述B4設(shè)備的IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識記錄到報文緩沖區(qū)BUFFER中,并在預(yù)先配置的hash表中存儲所述IPv6隧道標(biāo)識與所述IPv6隧道地址之間的映射關(guān)系;
      [0010]所述AFTR設(shè)備從報文BUFFER中獲得IPv6隧道標(biāo)識,并通過所述IPv6隧道標(biāo)識查詢所述hash表,得到所述IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址;
      [0011]當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值時,所述AFTR設(shè)備繼續(xù)處理所述報文BUFFER中的IPv4報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值時,所述AFTR設(shè)備丟棄所述報文BUFFER中的IPv4報文。
      [0012]所述AFTR設(shè)備從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識的過程,具體包括:所述AFTR設(shè)備查詢本AFTR設(shè)備上配置的訪問控制列表ACL規(guī)則;如果所述ACL規(guī)則用于限制所述IPv6隧道地址對應(yīng)的連接數(shù),則所述AFTR設(shè)備從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識。
      [0013]所述方法進一步包括:
      [0014]所述AFTR設(shè)備利用IPv6隧道地址查詢預(yù)先配置的連接數(shù)統(tǒng)計表;
      [0015]如果所述連接數(shù)統(tǒng)計表中沒有記錄所述IPv6隧道地址,則所述AFTR設(shè)備確定連接數(shù)未達到連接數(shù)限制數(shù)值,在所述連接數(shù)統(tǒng)計表中記錄所述IPv6隧道地址,并記錄所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為I ;
      [0016]如果所述連接數(shù)統(tǒng)計表中記錄有所述IPv6隧道地址,則所述AFTR設(shè)備從所述連接數(shù)統(tǒng)計表中獲得所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為所述連接數(shù)統(tǒng)計表中記錄的連接數(shù)加I。
      [0017]所述方法進一步包括:
      [0018]所述AFTR設(shè)備在接收到來自所述B4設(shè)備的IPv6報文之后,判斷所述B4設(shè)備使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值;如果達到預(yù)設(shè)數(shù)量閾值,則所述AFTR設(shè)備不再為所述B4設(shè)備分配端口,并丟棄所述IPv6報文。
      [0019]本發(fā)明實施例提供一種地址族過渡路由器單元AFTR設(shè)備,應(yīng)用于包括AFTR設(shè)備和網(wǎng)關(guān)基本橋接寬帶單元B4設(shè)備的輕型雙棧DS-Lite網(wǎng)絡(luò)中,所述B4設(shè)備通過IPv6網(wǎng)絡(luò)與所述AFTR設(shè)備連接,所述AFTR設(shè)備具體包括:
      [0020]接收模塊,用于接收來自所述B4設(shè)備的IPv6報文,所述IPv6報文中攜帶IPv6頭,所述IPv6頭的源地址為所述B4設(shè)備的IPv6隧道地址;
      [0021]處理模塊,用于獲得所述B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則繼續(xù)處理所述IPv6報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值,則丟棄所述IPv6報文。
      [0022]所述處理模塊,具體用于在接收到所述IPv6報文時,對所述IPv6報文進行IPv6隧道解封裝,并將解封裝后的IPv4報文以及所述B4設(shè)備的IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識記錄到報文緩沖區(qū)BUFFER中,并在預(yù)先配置的hash表中存儲所述IPv6隧道標(biāo)識與所述IPv6隧道地址之間的映射關(guān)系;
      [0023]從所述報文BUFFER中獲得IPv6隧道標(biāo)識,并通過所述IPv6隧道標(biāo)識查詢所述hash表,以得到所述IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址;
      [0024]當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值時,則繼續(xù)處理所述報文BUFFER中的IPv4報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到所述連接數(shù)限制數(shù)值時,則丟棄所述報文BUFFER中的IPv4報文。
      [0025]所述處理模塊,進一步用于在從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識的過程中,查詢所述AFTR設(shè)備上配置的訪問控制列表ACL規(guī)則;如果所述ACL規(guī)則用于限制所述IPv6隧道地址對應(yīng)的連接數(shù),則從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識。
      [0026]所述處理模塊,進一步用于利用所述IPv6隧道地址查詢預(yù)先配置的連接數(shù)統(tǒng)計表;如果所述連接數(shù)統(tǒng)計表中沒有記錄所述IPv6隧道地址,則確定連接數(shù)未達到連接數(shù)限制數(shù)值,在所述連接數(shù)統(tǒng)計表中記錄所述IPv6隧道地址,并記錄所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為I ;
      [0027]如果所述連接數(shù)統(tǒng)計表中記錄有所述IPv6隧道地址,則從所述連接數(shù)統(tǒng)計表中獲得所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);
      [0028]如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為所述連接數(shù)統(tǒng)計表中記錄的連接數(shù)加I。
      [0029]所述處理模塊,還用于在接收到來自所述B4設(shè)備的IPv6報文之后,判斷所述B4設(shè)備使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值;如果達到預(yù)設(shè)數(shù)量閾值,則不再為所述B4設(shè)備分配端口,并丟棄所述IPv6報文。
      [0030]基于上述技術(shù)方案,本發(fā)明實施例中,通過對B4設(shè)備的IPv6隧道地址進行連接數(shù)限制,以保證該B4設(shè)備的連接總數(shù)在連接數(shù)限制范圍之內(nèi),保證AFTR設(shè)備的資源不會被耗盡,防止資源耗盡而影響用戶服務(wù)質(zhì)量。如果B4設(shè)備連接的某個客戶端惡意發(fā)起了大量訪問目的IPv4網(wǎng)絡(luò)的IPv4報文時,則AFTR設(shè)備針對收到的大量IPv4報文,只會處理連接數(shù)限制范圍之內(nèi)的IPv4報文,并直接丟棄連接數(shù)限制范圍之外的IPv4報文,避免影響AFTR設(shè)備的處理性能,不會造成網(wǎng)絡(luò)嚴(yán)重延遲,不會影響正常用戶訪問目的IPv4網(wǎng)絡(luò)。

      【專利附圖】

      【附圖說明】
      [0031]圖1是現(xiàn)有技術(shù)中DS-Lite網(wǎng)絡(luò)的組網(wǎng)示意圖;
      [0032]圖2是本發(fā)明實施例提出的應(yīng)用場景示意圖;
      [0033]圖3是本發(fā)明實施例提供的一種報文控制的方法流程示意圖;
      [0034]圖4是本發(fā)明實施例提供的一種AFTR設(shè)備的結(jié)構(gòu)示意圖。

      【具體實施方式】
      [0035]針對現(xiàn)有技術(shù)中存在的問題,本發(fā)明實施例提供了一種報文控制的方法,該方法應(yīng)用于包括AFTR設(shè)備和B4設(shè)備的DS-Lite網(wǎng)絡(luò)中,且B4設(shè)備通過IPv6網(wǎng)絡(luò)與AFTR設(shè)備連接。以圖2為本發(fā)明實施例的應(yīng)用場景示意圖,IPv4網(wǎng)絡(luò)內(nèi)的客戶端需要經(jīng)過IPv6網(wǎng)絡(luò)訪問目的IPv4網(wǎng)絡(luò)內(nèi)的服務(wù)器。其中,IPv4網(wǎng)絡(luò)內(nèi)的客戶端與IPv6網(wǎng)絡(luò)之間為B4設(shè)備,B4設(shè)備與AFTR設(shè)備之間為IPv6網(wǎng)絡(luò),且B4設(shè)備與AFTR設(shè)備之間建立了 IPv6隧道,IPv6網(wǎng)絡(luò)與目的IPv4網(wǎng)絡(luò)之間為AFTR設(shè)備。在此應(yīng)用場景下,假設(shè)IPv4網(wǎng)絡(luò)內(nèi)的客戶端的IPv4地址為192.168.0.2,目的IPv4網(wǎng)絡(luò)內(nèi)的服務(wù)器的IPv4地址為10.153.66.111。B4設(shè)備的IPv4地址為192.168.0.1,B4設(shè)備的IPv6地址為2000:: 2。AFTR設(shè)備的IPv6地址為 2000::1, AFTR 設(shè)備的 IPv4 地址為 10.153.66.109。
      [0036]在上述應(yīng)用場景下,如圖3所示,該報文控制的方法具體包括以下步驟:
      [0037]步驟301,AFTR設(shè)備接收來自B4設(shè)備的IPv6報文,該IPv6報文中攜帶IPv6頭和客戶端發(fā)送給服務(wù)器的IPv4報文,該IPv6頭的源地址為B4設(shè)備的IPv6隧道地址,該IPv6頭的目的地址為AFTR設(shè)備的IPv6隧道地址。
      [0038]當(dāng)客戶端訪問服務(wù)器時,客戶端發(fā)送IPv4報文,該IPv4報文的源地址為客戶端的IPv4地址192.168.0.2,目的地址為服務(wù)器的IPv4地址10.153.66.111。B4設(shè)備在接收到IPv4報文后,對IPv4報文進行IPv6隧道封裝,在IPv4報文上封裝一層IPv6頭,得到IPv6報文。其中,該IPv6頭的源地址為B4設(shè)備的IPv6隧道地址2000:: 2,目的地址為AFTR設(shè)備的IPv6隧道地址2000::1?;贐4設(shè)備與AFTR設(shè)備之間的IPv6隧道,B4設(shè)備可以通過IPv6網(wǎng)絡(luò)將IPv6報文發(fā)送給AFTR設(shè)備,由AFTR設(shè)備接收來自B4設(shè)備的IPv6報文。
      [0039]步驟302,AFTR設(shè)備獲得B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)。
      [0040]本發(fā)明實施例中,該IPv6隧道地址具體為本AFTR設(shè)備收到的IPv6報文的IPv6頭的源地址,且該IPv6隧道地址具體為B4設(shè)備的IPv6隧道地址。
      [0041]本發(fā)明實施例中,B4設(shè)備的IPv6隧道地址對應(yīng)的連接數(shù)又可以稱為B4設(shè)備的IPv6隧道地址對應(yīng)的會話數(shù)。其中,針對B4設(shè)備的IPv6隧道地址,其對應(yīng)的連接數(shù)與IPv4報文的報文特征有關(guān),當(dāng)IPv6報文中封裝的IPv4報文(即客戶端發(fā)送的IPv4報文)的報文特征相同時,則說明IPv6報文不是一個新的連接,此時IPv6隧道地址對應(yīng)的連接數(shù)不會增加,當(dāng)IPv6報文中封裝的IPv4報文的報文特征不同時,則說明IPv6報文是一個新的連接,此時IPv6隧道地址對應(yīng)的連接數(shù)會增加。進一步的,IPv4報文的報文特征具體包括但不限于IPv4報文的五元組,且IPv4報文的五元組包括:IPv4報文的源地址、源端口、目的地址、目的端口和協(xié)議類型(即IPv4類型)。
      [0042]當(dāng)AFTR設(shè)備收到的IPv6報文中封裝的IPv4報文的報文特征相同時,即已經(jīng)處理過具有相同報文特征的IPv4報文,則步驟301之后,AFTR設(shè)備直接按照現(xiàn)有流程處理該IPv6報文,而不再執(zhí)行步驟302和步驟303,該處理本發(fā)明實施例中不再贅述。當(dāng)AFTR設(shè)備收到的IPv6報文中封裝的IPv4報文的報文特征不同時,即沒有處理過具有相同報文特征的IPv4報文,則步驟301之后,AFTR設(shè)備執(zhí)行步驟302和步驟303。為了方便描述,本發(fā)明實施例中,以AFTR設(shè)備收到的IPv6報文中封裝的IPv4報文的報文特征不同為例進行說明,即針對收到的IPv6報文,AFTR設(shè)備執(zhí)行步驟302和步驟303。
      [0043]步驟303,如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則AFTR設(shè)備繼續(xù)處理IPv6報文,并更新該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值,則AFTR設(shè)備直接丟棄IPv6報文,而不再繼續(xù)處理該IPv6報文。
      [0044]在本發(fā)明實施例的優(yōu)選實施方式中,AFTR設(shè)備獲得IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù),如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則AFTR設(shè)備繼續(xù)處理IPv6報文,并更新該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值,則AFTR設(shè)備直接丟棄IPv6報文的過程,具體包括但不限于以下步驟:
      [0045]步驟1、AFTR設(shè)備在接收到IPv6報文時,將該IPv6報文添加到報文BUFFER (緩沖區(qū)),并對報文BUFFER內(nèi)記錄的IPv6報文進行IPv6隧道解封裝,以在該報文BUFFER內(nèi)記錄該IPv6報文內(nèi)部封裝的IPv4報文。
      [0046]步驟2、AFTR設(shè)備確定IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識,并將該IPv6隧道標(biāo)識添加到該IPv6報文對應(yīng)的報文BUFFER,并在預(yù)先配置的hash表中存儲該IPv6隧道標(biāo)識與該IPv6隧道地址之間的映射關(guān)系。
      [0047]本發(fā)明實施例中,對于來自B4設(shè)備的IPv6報文,該IPv6報文中攜帶IPv6頭以及IPv4報文,且該IPv6頭的源地址為B4設(shè)備的IPv6隧道地址?;诖?,AFTR設(shè)備可以從IPv6頭中獲得B4設(shè)備的IPv6隧道地址(即2000:: 2)。進一步的,AFTR設(shè)備可以對IPv6報文進行IPv6隧道解封裝,去掉IPv6報文的IPv6頭,得到IPv4報文(源地址為192.168.0.2,目的地址為10.153.66.111)。
      [0048]由于AFTR設(shè)備在對IPv6報文進行IPv6隧道解封裝后,在該IPv6報文對應(yīng)的報文BUFFER中記錄的是IPv6報文內(nèi)部封裝的IPv4報文,此時,AFTR設(shè)備不會保存IPv6報文的IPv6頭的信息,即不會保存B4設(shè)備的IPv6隧道地址?;诖耍景l(fā)明實施例中,AFTR設(shè)備在接收到IPv6報文之后,需要確定IPv6頭中的B4設(shè)備的IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識,將該IPv6隧道標(biāo)識添加到報文BUFFER中,并在預(yù)先配置的hash表中存儲該IPv6隧道標(biāo)識與該IPv6隧道地址之間的映射關(guān)系,從而使得在后續(xù)處理過程中,能夠還原獲得B4設(shè)備的IPv6隧道地址,具體的IPv6隧道地址的還原過程在后續(xù)步驟中闡述。
      [0049]AFTR設(shè)備在確定IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識時,AFTR設(shè)備可以根據(jù)預(yù)設(shè)算法計算IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識,具體的計算過程與現(xiàn)有技術(shù)相同,在此不再贅述。經(jīng)過上述處理,報文BUFFER中記錄了 IPv6隧道標(biāo)識和IPv4報文,hash表中記錄了IPv6隧道標(biāo)識和IPv6隧道地址。
      [0050]步驟3、AFTR設(shè)備從報文BUFFER中獲得IPv6隧道標(biāo)識,并通過該IPv6隧道標(biāo)識查詢hash表,以得到該IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址。
      [0051]本發(fā)明實施例中,AFTR設(shè)備從報文BUFFER中獲得IPv6隧道標(biāo)識的過程,具體包括但不限于:AFTR設(shè)備查詢本AFTR設(shè)備上所配置的ACL(Access Control List,訪問控制列表)策略。如果有ACL規(guī)則用于限制IPv6隧道地址對應(yīng)的連接數(shù),則執(zhí)行本發(fā)明實施例提供的技術(shù)方案,即AFTR設(shè)備從報文BUFFER中獲得IPv6隧道標(biāo)識,并通過該IPv6隧道標(biāo)識查詢hash表,以得到該IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址。如果沒有ACL規(guī)則用于限制IPv6隧道地址對應(yīng)的連接數(shù),則按照現(xiàn)有流程進行處理,該處理在此不再贅述。
      [0052]為了對B4設(shè)備的IPv6隧道地址進行連接數(shù)限制,以保證該B4設(shè)備的連接總數(shù)在連接數(shù)限制范圍之內(nèi),保證AFTR設(shè)備的資源不會被耗盡,本發(fā)明實施例中,服務(wù)提供商在AFTR設(shè)備上配置連接數(shù)限制,用來限制B4設(shè)備的所有連接,并在AFTR設(shè)備上下發(fā)ACL規(guī)貝U,且該ACL規(guī)則用于限制IPv6隧道地址對應(yīng)的連接數(shù)。進一步的,ACL規(guī)則需要配置在IPv4策略下,用以表示相應(yīng)處理是在IPv4處理流程中。該ACL規(guī)則需要是IPv6類型的,用來匹配IPv6地址。該ACL規(guī)則關(guān)注的是與AFTR設(shè)備連接的B4設(shè)備的IPv6隧道地址,而不是與B4設(shè)備連接的客戶端的IPv4地址。該ACL規(guī)則可以在AFTR設(shè)備的一個接口下應(yīng)用,也可以在AFTR設(shè)備的所有接口下應(yīng)用。
      [0053]本發(fā)明實施例中,報文BUFFER中記錄了 IPv6隧道標(biāo)識以及IPv4報文,該IPv6隧道標(biāo)識是AFTR設(shè)備在對IPv6報文進行IPv6隧道解封裝時,利用該IPv6報文中攜帶的B4設(shè)備的IPv6隧道地址計算的IPv6隧道標(biāo)識,對于不同的B4設(shè)備的IPv6隧道地址,其對應(yīng)的IPv6隧道標(biāo)識不同。AFTR設(shè)備在從報文BUFFER中獲得IPv6隧道標(biāo)識之后,如果IPv6隧道標(biāo)識為0,則說明該IPv6隧道標(biāo)識無效,即該報文BUFFER中記錄的IPv4報文不是從IPv6隧道上收到,AFTR設(shè)備直接按照現(xiàn)有技術(shù)對報文BUFFER中記錄的IPv4報文進行處理。如果IPv6隧道標(biāo)識不為O,則說明該IPv6隧道標(biāo)識有效,即該報文BUFFER中記錄的IPv4報文是從IPv6隧道上收到,AFTR設(shè)備通過該IPv6隧道標(biāo)識查詢hash表,以得到該IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址。
      [0054]步驟4、AFTR設(shè)備獲得IPv6隧道地址(即IPv6隧道標(biāo)識對應(yīng)的B4設(shè)備的IPv6隧道地址)當(dāng)前對應(yīng)的連接數(shù)。當(dāng)IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值時,則AFTR設(shè)備繼續(xù)處理報文BUFFER中的IPv4報文(即IPv6隧道標(biāo)識對應(yīng)的IPv4報文),并更新IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)。當(dāng)IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值時,則AFTR設(shè)備丟棄報文BUFFER中的IPv4報文,而不再繼續(xù)處理該IPv4報文。
      [0055]本發(fā)明實施例中,AFTR設(shè)備上可以預(yù)先配置連接數(shù)統(tǒng)計表,該連接數(shù)統(tǒng)計表用于記錄IPv6隧道地址和連接數(shù)之間的對應(yīng)關(guān)系。基于此連接數(shù)統(tǒng)計表,AFTR設(shè)備在獲得IPv6隧道地址后,利用該IPv6隧道地址查詢預(yù)先配置的連接數(shù)統(tǒng)計表。如果連接數(shù)統(tǒng)計表中沒有記錄該IPv6隧道地址,則AFTR設(shè)備確定該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)(即O)未達到連接數(shù)限制數(shù)值,AFTR設(shè)備繼續(xù)處理報文BUFFER中的IPv4報文,并在連接數(shù)統(tǒng)計表中記錄該IPv6隧道地址,并記錄該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為I。如果連接數(shù)統(tǒng)計表中記錄有該IPv6隧道地址,AFTR設(shè)備從連接數(shù)統(tǒng)計表中獲得該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則AFTR設(shè)備繼續(xù)處理報文BUFFER中的IPv4報文,并更新IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為連接數(shù)統(tǒng)計表中記錄的連接數(shù)加I ;如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值時,則AFTR設(shè)備丟棄報文BUFFER中的IPv4報文。
      [0056]其中,連接數(shù)限制數(shù)值可以根據(jù)實際經(jīng)驗進行設(shè)置,該連接數(shù)限制數(shù)值可以與上述用于限制IPv6隧道地址對應(yīng)的連接數(shù)的ACL規(guī)則一起下發(fā)給AFTR設(shè)備,該連接數(shù)限制數(shù)值也可以由管理員直接配置在AFTR設(shè)備上。
      [0057]本發(fā)明實施例中,AFTR設(shè)備繼續(xù)處理報文BUFFER中的IPv4報文具體包括:AFTR設(shè)備對IPv4報文進行NAT轉(zhuǎn)換,并將NAT轉(zhuǎn)換之后的IPv4報文發(fā)送到目的IPv4網(wǎng)絡(luò)內(nèi)的服務(wù)器上,以完成客戶端對服務(wù)器的訪問。
      [0058]AFTR設(shè)備在對IPv4報文進行NAT轉(zhuǎn)換時,如果需要同時對IPv4報文的源IP地址和源端口進行NAT轉(zhuǎn)換,則AFTR設(shè)備需要為B4設(shè)備分配端口段(即包含η個連續(xù)的端口,如端口 10-端口 100),對于每個Β4設(shè)備下的客戶端來說,其只能使用AFTR設(shè)備為該Β4設(shè)備分配的端口段?;诖?,本發(fā)明實施例中,考慮到AFTR設(shè)備為每個Β4設(shè)備分配的端口數(shù)量有限,且AFTR設(shè)備對IPv4報文進行NAT轉(zhuǎn)換時,需要使用AFTR設(shè)備為Β4設(shè)備分配的端口,則AFTR設(shè)備在接收到來自Β4設(shè)備的IPv6報文之后,則:
      [0059]情況一、在執(zhí)行步驟302之前,AFTR設(shè)備還可以判斷Β4設(shè)備當(dāng)前使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值。如果達到預(yù)設(shè)數(shù)量閾值,則AFTR設(shè)備不再為Β4設(shè)備分配端口,并丟棄IPv6報文,此時不再執(zhí)行步驟302-步驟303。如果未達到預(yù)設(shè)數(shù)量閾值,則執(zhí)行步驟302-步驟 303。
      [0060]情況二、在執(zhí)行步驟303之后,如果該IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則AFTR設(shè)備還可以判斷Β4設(shè)備當(dāng)前使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值。如果達到預(yù)設(shè)數(shù)量閾值,則AFTR設(shè)備不再為B4設(shè)備分配端口,并丟棄IPv6報文,此時結(jié)束流程,如果未達到預(yù)設(shè)數(shù)量閾值,則繼續(xù)處理IPv6報文,該處理過程在此不再詳加贅述。
      [0061]其中,預(yù)設(shè)數(shù)量閾值可以為AFTR設(shè)備為B4設(shè)備分配的端口數(shù)量。
      [0062]基于上述技術(shù)方案,本發(fā)明實施例中,通過對B4設(shè)備的IPv6隧道地址進行連接數(shù)限制,以保證該B4設(shè)備的連接總數(shù)在連接數(shù)限制范圍之內(nèi),保證AFTR設(shè)備的資源不會被耗盡,防止資源耗盡而影響用戶服務(wù)質(zhì)量。如果B4設(shè)備連接的某個客戶端惡意發(fā)起了大量訪問目的IPv4網(wǎng)絡(luò)的IPv4報文時,則AFTR設(shè)備針對收到的大量IPv4報文,只會處理連接數(shù)限制范圍之內(nèi)的IPv4報文,并直接丟棄連接數(shù)限制范圍之外的IPv4報文,避免影響AFTR設(shè)備的處理性能,不會造成網(wǎng)絡(luò)嚴(yán)重延遲,不會影響正常用戶訪問目的IPv4網(wǎng)絡(luò)。
      [0063]基于與上述方法同樣的發(fā)明構(gòu)思,本發(fā)明實施例中還提供了一種地址族過渡路由器單元AFTR設(shè)備,應(yīng)用于包括AFTR設(shè)備和網(wǎng)關(guān)基本橋接寬帶單元B4設(shè)備的輕型雙棧DS-Lite網(wǎng)絡(luò)中,所述B4設(shè)備通過IPv6網(wǎng)絡(luò)與所述AFTR設(shè)備連接,如圖4所示,所述AFTR設(shè)備具體包括:
      [0064]接收模塊11,用于接收來自所述B4設(shè)備的IPv6報文,所述IPv6報文中攜帶IPv6頭,所述IPv6頭的源地址為所述B4設(shè)備的IPv6隧道地址;
      [0065]處理模塊12,用于獲得所述B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則繼續(xù)處理所述IPv6報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值,則丟棄所述IPv6報文。
      [0066]所述處理模塊12,具體用于在接收到所述IPv6報文時,對所述IPv6報文進行IPv6隧道解封裝,并將解封裝后的IPv4報文以及所述B4設(shè)備的IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識記錄到報文緩沖區(qū)BUFFER中,并在預(yù)先配置的hash表中存儲所述IPv6隧道標(biāo)識與所述IPv6隧道地址之間的映射關(guān)系;
      [0067]從所述報文BUFFER中獲得IPv6隧道標(biāo)識,并通過所述IPv6隧道標(biāo)識查詢所述hash表,以得到所述IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址;
      [0068]當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值時,則繼續(xù)處理所述報文BUFFER中的IPv4報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到所述連接數(shù)限制數(shù)值時,則丟棄所述報文BUFFER中的IPv4報文。
      [0069]所述處理模塊12,進一步用于在從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識的過程中,查詢所述AFTR設(shè)備上配置的訪問控制列表ACL規(guī)則;如果所述ACL規(guī)則用于限制所述IPv6隧道地址對應(yīng)的連接數(shù),則從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識。
      [0070]所述處理模塊12,進一步用于利用所述IPv6隧道地址查詢預(yù)先配置的連接數(shù)統(tǒng)計表;如果所述連接數(shù)統(tǒng)計表中沒有記錄所述IPv6隧道地址,則確定連接數(shù)未達到連接數(shù)限制數(shù)值,在所述連接數(shù)統(tǒng)計表中記錄所述IPv6隧道地址,并記錄所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為I ;
      [0071]如果所述連接數(shù)統(tǒng)計表中記錄有所述IPv6隧道地址,則從所述連接數(shù)統(tǒng)計表中獲得所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);
      [0072]如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為所述連接數(shù)統(tǒng)計表中記錄的連接數(shù)加I。
      [0073]所述處理模塊12,還用于在接收到來自所述B4設(shè)備的IPv6報文之后,判斷所述B4設(shè)備使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值;如果達到預(yù)設(shè)數(shù)量閾值,則不再為所述B4設(shè)備分配端口,并丟棄所述IPv6報文。
      [0074]其中,本發(fā)明裝置的各個模塊可以集成于一體,也可以分離部署。上述模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。
      [0075]通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。本領(lǐng)域技術(shù)人員可以理解附圖只是一個優(yōu)選實施例的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。本領(lǐng)域技術(shù)人員可以理解實施例中的裝置中的模塊可以按照實施例描述進行分布于實施例的裝置中,也可以進行相應(yīng)變化位于不同于本實施例的一個或多個裝置中。上述實施例的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。以上公開的僅為本發(fā)明的幾個具體實施例,但是,本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護范圍。
      【權(quán)利要求】
      1.一種報文控制的方法,應(yīng)用于包括地址族過渡路由器單元AFTR設(shè)備和網(wǎng)關(guān)基本橋接寬帶單元B4設(shè)備的輕型雙棧DS-Lite網(wǎng)絡(luò)中,所述B4設(shè)備通過IPv6網(wǎng)絡(luò)與所述AFTR設(shè)備連接,其特征在于,所述方法包括以下步驟: 所述AFTR設(shè)備接收來自所述B4設(shè)備的IPv6報文,所述IPv6報文中攜帶IPv6頭,所述IPv6頭的源地址為所述B4設(shè)備的IPv6隧道地址; 所述AFTR設(shè)備獲得所述B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù); 如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備繼續(xù)處理所述IPv6報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述連接數(shù)達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備丟棄所述IPv6報文。
      2.如權(quán)利要求1所述的方法,其特征在于,所述方法進一步包括: 所述AFTR設(shè)備在接收到所述IPv6報文時,對所述IPv6報文進行IPv6隧道解封裝,并將解封裝后的IPv4報文以及所述B4設(shè)備的IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識記錄到報文緩沖區(qū)BUFFER中,并在預(yù)先配置的hash表中存儲所述IPv6隧道標(biāo)識與所述IPv6隧道地址之間的映射關(guān)系; 所述AFTR設(shè)備從報文BUFFER中獲得IPv6隧道標(biāo)識,并通過所述IPv6隧道標(biāo)識查詢所述hash表,得到所述IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址; 當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值時,所述AFTR設(shè)備繼續(xù)處理所述報文BUFFER中的IPv4報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值時,所述AFTR設(shè)備丟棄所述報文BUFFER中的IPv4報文。
      3.如權(quán)利要求2所述的方法,其特征在于,所述AFTR設(shè)備從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識的過程,具體包括: 所述AFTR設(shè)備查詢本AFTR設(shè)備上配置的訪問控制列表ACL規(guī)則; 如果所述ACL規(guī)則用于限制所述IPv6隧道地址對應(yīng)的連接數(shù),則所述AFTR設(shè)備從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識。
      4.如權(quán)利要求1或2所述的方法,其特征在于,所述方法進一步包括: 所述AFTR設(shè)備利用IPv6隧道地址查詢預(yù)先配置的連接數(shù)統(tǒng)計表; 如果所述連接數(shù)統(tǒng)計表中沒有記錄所述IPv6隧道地址,則所述AFTR設(shè)備確定連接數(shù)未達到連接數(shù)限制數(shù)值,在所述連接數(shù)統(tǒng)計表中記錄所述IPv6隧道地址,并記錄所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為I ; 如果所述連接數(shù)統(tǒng)計表中記錄有所述IPv6隧道地址,則所述AFTR設(shè)備從所述連接數(shù)統(tǒng)計表中獲得所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則所述AFTR設(shè)備更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為所述連接數(shù)統(tǒng)計表中記錄的連接數(shù)加I。
      5.如權(quán)利要求1所述的方法,其特征在于,所述方法進一步包括: 所述AFTR設(shè)備在接收到來自所述B4設(shè)備的IPv6報文之后,判斷所述B4設(shè)備使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值;如果達到預(yù)設(shè)數(shù)量閾值,則所述AFTR設(shè)備不再為所述B4設(shè)備分配端口,并丟棄所述IPv6報文。
      6.一種地址族過渡路由器單元AFTR設(shè)備,應(yīng)用于包括AFTR設(shè)備和網(wǎng)關(guān)基本橋接寬帶單元B4設(shè)備的輕型雙棧DS-Lite網(wǎng)絡(luò)中,所述B4設(shè)備通過IPv6網(wǎng)絡(luò)與所述AFTR設(shè)備連接,其特征在于,所述AFTR設(shè)備具體包括: 接收模塊,用于接收來自所述B4設(shè)備的IPv6報文,所述IPv6報文中攜帶IPv6頭,所述IPv6頭的源地址為所述B4設(shè)備的IPv6隧道地址; 處理模塊,用于獲得所述B4設(shè)備的IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值,則繼續(xù)處理所述IPv6報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到連接數(shù)限制數(shù)值,則丟棄所述IPv6報文。
      7.如權(quán)利要求6所述的AFTR設(shè)備,其特征在于, 所述處理模塊,具體用于在接收到所述IPv6報文時,對所述IPv6報文進行IPv6隧道解封裝,并將解封裝后的IPv4報文以及所述B4設(shè)備的IPv6隧道地址對應(yīng)的IPv6隧道標(biāo)識記錄到報文緩沖區(qū)BUFFER中,并在預(yù)先配置的hash表中存儲所述IPv6隧道標(biāo)識與所述IPv6險道地址之間的映射關(guān)系; 從所述報文BUFFER中獲得IPv6隧道標(biāo)識,并通過所述IPv6隧道標(biāo)識查詢所述hash表,以得到所述IPv6隧道標(biāo)識對應(yīng)的IPv6隧道地址; 當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)未達到連接數(shù)限制數(shù)值時,則繼續(xù)處理所述報文BUFFER中的IPv4報文,并更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);當(dāng)所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)達到所述連接數(shù)限制數(shù)值時,則丟棄所述報文BUFFER中的IPv4報文。
      8.如權(quán)利要求7所述的AFTR設(shè)備,其特征在于, 所述處理模塊,進一步用于在從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識的過程中,查詢所述AFTR設(shè)備上配置的訪問控制列表ACL規(guī)則;如果所述ACL規(guī)則用于限制所述IPv6隧道地址對應(yīng)的連接數(shù),則從所述報文BUFFER中獲得所述IPv6隧道標(biāo)識。
      9.如權(quán)利要求6或7所述的AFTR設(shè)備,其特征在于, 所述處理模塊,進一步用于利用所述IPv6隧道地址查詢預(yù)先配置的連接數(shù)統(tǒng)計表;如果所述連接數(shù)統(tǒng)計表中沒有記錄所述IPv6隧道地址,則確定連接數(shù)未達到連接數(shù)限制數(shù)值,在所述連接數(shù)統(tǒng)計表中記錄所述IPv6隧道地址,并記錄所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為I ;如果所述連接數(shù)統(tǒng)計表中記錄有所述IPv6隧道地址,則從所述連接數(shù)統(tǒng)計表中獲得所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù);如果所述連接數(shù)未達到連接數(shù)限制數(shù)值,則更新所述IPv6隧道地址當(dāng)前對應(yīng)的連接數(shù)為所述連接數(shù)統(tǒng)計表中記錄的連接數(shù)加I。
      10.如權(quán)利要求6所述的AFTR設(shè)備,其特征在于, 所述處理模塊,還用于在接收到來自所述B4設(shè)備的IPv6報文之后,判斷所述B4設(shè)備使用的端口數(shù)量是否達到預(yù)設(shè)數(shù)量閾值;如果達到預(yù)設(shè)數(shù)量閾值,則不再為所述B4設(shè)備分配端口,并丟棄所述IPv6報文。
      【文檔編號】H04L12/823GK104363176SQ201410579071
      【公開日】2015年2月18日 申請日期:2014年10月24日 優(yōu)先權(quán)日:2014年10月24日
      【發(fā)明者】趙殿樂, 鄧覃思, 楊銀柱 申請人:杭州華三通信技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1