新四季網

前向通用路由封裝包的亂序調整方法

2023-04-25 19:27:01

專利名稱:前向通用路由封裝包的亂序調整方法
技術領域:
本發明涉及無線通信系統中的通用路由封裝(GRE)技術,特別涉及GRE包亂序之後的調 整方法。
背景技術:
隨著網際協議(IP)技術的發展,GRE隧道(一個數據包封裝在另一個數據包的淨荷中 進行傳送時,所經過的路徑稱為隧道)也得到了廣泛的應用,GRE隧道是基於RFC1701標準 協議、RFC1702標準協議和RFC2784標準協議的IP方案。它的方案是將數據包加上GRE包頭, 封裝了GRE包頭的數據包通過GRE隧道傳送。在路由器看來GRE隧道是一個點到點埠,它 可以被加密。
如圖1所示,在無線通訊系統的地面鏈路中,網絡分組數據通過分組數據服務結點(PI)SN) 與分組控制功能(PCF)之間的GRE數據隧道傳輸到基站控制器(BSC)。由PDSN'經過BSC再傳輸 到移動臺的方向稱為前向鏈路,反之,由移動臺經過BSC再到PDSN的鏈路稱為反向鏈路,在 PDSN與PCF之間的業務接口稱為RP接口,其鏈路稱為Ai0數據鏈路。由於網絡拓樸結構的 複雜性,在PDSN中序號連續的GRE包,可能會經過不同的路由到達BS(:,從而當BSC接收到 GRE包時可能存在序號不連續的甜向GRE包。當這些亂序的GRE包(點對點協議(PPP)的淨荷) 通過空中鏈路傳輸到移動臺側,再通過某些上層具有可靠保證的傳輸協議(如TCP:傳輸控制 協議)傳輸後,會導致移動臺側的上層協議因為要分出資源來糾正亂序而影響移動臺的性能 如果GRE包承載的是PPP報文分片,則GRE包亂序可能會導致移動臺側組PPP報文失敗而丟 棄報文。由此而引起的數據重傳會對數據業務的性能產生較大影響。在亂序嚴重的情況下, 可能會使網絡分組傳輸性能嚴重下降,極大地影響無線鏈路的通訊質量。

發明內容
為克服上述缺陷,本發明的目的在於提供一種能夠很大程度將亂序包調整為順序包的前 向通用路由封裝包的亂序調整方法。
為達到上述發明目的,本發明前向通用路由封裝包的亂序調整方法包括如下步驟 (1)設置條件參數;
(2) 接收前向通用路由封裝包
(3) 利用條件參數對接收到的前向通用路由封裝包進行亂序調整。
其中,所述步驟(1)中的條件參數包括目標序號,該目標序號為等待接收的前向通問路 由封裝包的序號。
其中,所述的步驟(3)具體為
(31) 判斷接收到的前向通用路由封裝包的序號與目標序號是否相等,若相等,執行步 驟(32):若不相等,執行步驟(33):
(32) 將該接收到的前向通用路由封裝包,以及重排序緩衝區中與該接收到的前向通用 路由封裝包序號連續的前向通用路由封裝包,按順序發送到移動臺,並調整目標序號,返回 執行歩驟(2);
(33) 將該接收到的前向通用路由封裝包按照亂序包處理。 其中,所述的歩驟(33)具體為
(331) 將該接收到的前向通用路由封裝包按照序號遞增的方式加入到重排序緩衝區;
(332) 判斷重排序緩衝區是否寫滿,如果沒有寫滿,執行歩驟(333):如果已經寫滿, 執行歩驟(334);
(333) 若定時器沒有啟動,則啟動定時器後返回執行歩驟(2);若定時器已啟動,直接
返回執行歩驟(2);
(334) 將重排序緩衝區中的全部前向通用路由封裝包按順序發送到移動臺,調整目標序 號,並停止定時器,返回執行步驟(2)。
其中,所述定時器的處理流程為
A、 定時器計時並判斷定時器是否超時,若定時器超時,執行歩驟B;若定時器沒有超時, 重新執行步驟A;
B、 將重排序緩衝區中的全部前向通用路由封裝包按順序發送到移動臺,調整目標序號,
並停止定時器。
其中,所述步驟(32)中的調整目標序號的具體方法為將所述發送到移動臺的連續的
前向通用路由封裝包中的最後一個包序號加1設置為目標序號。
其中,所述步驟(334)中的調整目標序號的具體方法為將接收到的前向通用路由封裝
包的序號加l設置為目標序號。
其中,所述步驟B中的調整目標序號的具體方法為將所述發送到移動臺的前向通用路
由封裝包中的最後一個包序號加1設置為目標序號。
由上述技術方案所描述的前向通用路由封裝包的亂序調整方法,對接收到的順序GRE包 按順序發送,對接收到的亂序GRE包則利用重排序緩衝區進衧一次重薪排序,並在緩沖超時 或重排序緩衝區寫滿後按順序發送。雖然重新排過的順序不一定是嚴格按照我們所需要的順 序排列,但是能夠將大部分的數據包在局部區域內是按照順序排列的,能夠保證GRE包在一 定緩衝範圍內有序,能夠符合鏈路層高效、 一定程度低出錯率的數據傳輸特性。


圖1為PDSN到移動臺鏈路的框圖; 圖2為GRE隧道模型圖3為本發明前向通用路由封裝包的亂序調整方法的重排序緩衝區的順序圖; 圖4為本發明前向通用路由封裝包的亂序調整方法的重排序緩衝區的亂序圖 圖5為本發明前向通用路由封裝包的亂序調整方法的整體流程圖; 圖6為本發明前向通用路由封裝包的亂序調整方法的定時器的流程圖。
具體實施例方式
下面結合附圖對本發明前向通用路由封裝包的亂序調整方法進行詳細的描述。 在PDSN與PCF的A10數據鏈路之間通過一種稱為GRE隧道的技術進行數據封裝。如圖1 和圖2所示,PDSN首先對收到的網絡報文進行PPP封裝,然後再通過GRE封裝完成不同鏈路 層協議的轉換和PPP (點對點協議)報文的封裝,從而在PDSN與PCF之間建立一個GRI':數據 隧道,兩者之間所有的數據均在此隧道中傳輸。BSC收到甜向GRE包後,會進行GRE解封裝 成PPP數據包,再使用無線鏈路協議(RLP)通過空中接口傳送到移動臺。
由於GRE協議本身不包含亂序調整功能,BSC在解GRE封裝時,不會對亂序的GRf':包進 行調整和重排序,當GRE包亂序較為嚴重時,會嚴重影響網絡分組數據的傳輸心能,所以, 引入GRE包亂序調整功能對於在GRE包產生亂序的情況下提高無線分組網絡傳輸性能是很有 必要的。
本發明針對現有GRE協議的缺陷提供一種前向GRE包亂序調整方法,可以在很大程度上 保證亂序包調整為順序包,從而使數據業務性能基本不受影響。考慮到A10鏈路位於數據鏈 路層,數據鏈路層的可靠傳輸並不能保證網絡層的傳輸也是可靠的(上層可能因為網絡擁塞而 丟棄報文),因而,鏈路層過分強求精確的調整反而不利於傳輸性能。前向GRf:包亂序調整採
用了一種簡單而高效的算法,該算法的特點是"保證收到的GRE包在--定緩衝範圍內有序, 不過分強求精確的調整,同時通過一定的保護措施來控制A10鏈路的數據包時延"。從而使之 更符會鏈路層髙效、 一定程度的低出錯率數據傳送特性。對子鏈路層出現的小量錯誤,則通 過上層傳輸協議(如TCP)來達到可靠的數據傳輸。
本發明的核心算法思想是利用等待接收的前向通用路由封裝包的序號和接收到的的'向 通用路由封裝包的序號,進行亂序調整,在二者序號相同的情況下,進行順序包的處理,在 二者序號不同的情況下,進行亂序包的處理。
將上述算法思想付諸實踐需要以下歩驟
步驟1、設置條件參數,該條件參數是指等待接收的前向通用路由封裝包的序號,作為 最初的參數可以設置為1,該參數還可以通過後續的流程進行修改。修改的方法有很多,但 每次進行修改都必須是在將數據包發送出去後,或者該參數溢出的情況下。
歩驟2、接收到前向通用路由封裝包,並獲取該接收到的前向通用路由封裝包的序號.
與歩驟1中設置的參數共同作為亂序調整的條件。
步驟3、判斷接收到的前向通用路由封裝包的序號與等待接收的甜向通閉路由封裝包的
序號是否相等,如果相等,則將接收到的前向通用路由封裝包以及重排序緩衝區中與接收到
的前向通用路由封裝包的序號連續的GRE包一起發送到移動臺,並重新調整等待接收的前向 通用路由封裝包的序號之後執行歩驟2;否則執行歩驟4。
歩驟4、將接收到的前向通用路由封裝包,按序號遞增的方式加入到重排序緩衝區中-. 如果重排序緩衝區沒有寫滿,執行步驟5;否則執行歩驟6。
步驟5、如果沒有啟動定時器,則啟動定時器,並返回執行歩驟2。
步驟6、發送重排序緩衝區中的全部GRE包到移動臺,並重新調整等待接收的前向通用 路由封裝包的序號,停止定時器,並返回執行歩驟2。
上述歩驟中所述的定時器有自己的一個處理流程如下在定時器超時的情況下,將重排 序緩衝區中的全部前向通用路由封裝包按順序發送到移動臺,並調整等待接收的前向通用路 由封裝包的序號,停止定時器。
通過上述的步驟,本發明可以將大多數亂序的GRE包調整為順序包,並且充分考慮數據 鏈路層的特點,引入的亂序調整所需的系統開銷很小,能在前向GRE包亂序的情況下依然保 證數據業務的傳輸性能。
在加入上述的處理流程以後,BSC在解GRE封裝時,就會判斷GRE序號是否連續從而決
定需要亂序調整與否。假設BSC等待接收的GRE包的序號是Vn,當前BSC接收到的GRfi包的 序號為Seq。如果Vn等於Seq,則表示前向GRE包是順序包;否則前向GRE包存在亂序,需 耍進行亂序調盤。圖3和圖4就是例子
順序包:如圖3所示,先後收到Seq=l和Seq=2的GRE包,等待接收的GRE包的序號V'n=3, 而此時,Seq為3的順序GRE包到達BSC,這就是一個順序包。
亂序包如圖4所示,等待接收的GRE包的序號V『3,先後收到Seq為1、 2、 4、 7、 y、 IO的GRE包。而接收到的GRE包中,仍然存在亂序(或者丟包),如序號為5、 6、 8的G服 包一旦到達,雖然中間有一部分是順序的GRE包,但由於不符合Vn等於Seq,仍然認定是乩 序包。
考慮到等待接收的GRE包的到達,需要引入一個重排序緩衝區來實現該功能。重排序緩 衝區由存放N個GRE包結點組成.在該重排序緩衝區中存放的GRE包滿足如下兩個條件
(1) 該重排序緩衝區中的亂序GRE包按序號遞增的方式存放;
(2) 等待接收的GRE包的序號Vn總指向緩衝區中序號最小的空洞,空洞可以為
A、 順序接收所期望的GRE包,如圖2中的Vn;
B、 亂序或丟包造成的GRE包不連續,如圖3中相鄰兩個GRE包中的空洞所示的Vn。 圖5說明了 GRE包亂序調整的總體流程,該流程歩驟如下-
101、 設置等待接收的GRE包的序號Vn;
102、 BSC接收到序號為Seq的GRE包;
103、 判斷Seq是否等於Vn,若二者不相等,執行歩驟104;若二者相等,執行步驟108:
104、 BSC收到的當前GRE包是亂序包,將該收到的GRE包按序號遞增的方式加入到重排 序緩衝區中;
105、 判斷重排序緩衝區是否被寫滿,若還沒有寫滿,執行步驟106;若巳經寫滿,執行 歩驟107;
106、 判斷是否啟動過Flush定時器,若沒有啟動則啟動Flush定時器,並返回執行步驟 102;若Flush定時器已啟動則直接返回執行歩驟102;
107、 重排序緩衝區被寫滿,則表示發生了丟包或亂序幅度已經超出該重排序緩衝區所能 調節的範圍,將重排序緩衝區中的GRE包一次性按順序發送(由於在緩衝區存放GRE包時己經 排序,可以保證這些GRE包是按序號增序存放的),並調整Vn為Seq+l,即期望接收與Seq
連續的下一個GRE包,並在停止Flush定時器後返回執行歩驟102;108、如果Vn-Seq,則BSC收到的當前GRE包為順序包,檢査重排序緩衝區裡是否有與 Seq序號連續的GRE包,如果有,則將這些GRE包按順序先後發送,調整Vn為發送出去的最 後一個GRE包序號加1。
在上述的流程中設定了一個定時器,該定時器是用來限制亂序包在重排序緩衝區中等待 順序包的時間。如果等待時間太短,可能順序包並沒有到達就匆忙將GRE包發送給移動臺, 無法達到較好的亂序調整效果;但是如果等待時間過長,會造成前向(;RE包的數據積壓,造 成傳輸延遲增大。更為嚴重的是,如果GRE包在緩衝區中積壓太久,將會導致移動臺側的某 些上層協議(例如TCP協議)認為數據傳輸超時而申請數據重傳,而積壓的數據隨後發到移動 臺側已經是無效數據,造成不必要的資源浪費。
該Flush定時器的具體工作流程如圖6所示
201、 定時器計時;
202、 判斷定時器是否超時,若定吋器超時,執行步驟203:若定時器沒有超時,重新執 行步驟201;
203、 將重排序緩衝區中的全部前向通用路由封裝包按順序發送到移動臺,調整等待接收 的前向通用路由封裝包的序號為發送的最後一個包的序號加1,停止定時器。
本發明的一個最重要的處理就是對重排序緩衝區中的數據的排序和發送,在重排序緩衝 區中的數據在3種情況下需要發送
第一、就是在接收到順序包的時候發送連續的GRE包
第二、重排序緩衝區被寫滿則發送重排序緩衝區的全部GRE包;
如果重排序緩衝區被寫滿,則說明可能存在兩種情況 一是可能發生了丟包(丟包可以 認為是亂序的一種);二是可能亂序情況很嚴重,收到了N—l個包後仍然沒有等到序號為Vn 的GRE包。為了防止死等某一個亂序嚴重或已經丟包的GRE包而影響後續連續包的情況.當 緩衝區滿後立即將緩衝的GRE包全部發送至移動臺側,並自動調整Vn。由於緩衝區的G股包 按照GRE序號增序排列,因而符合算法"保證收到的GRE包在一定緩衝範圍內有序,不過分 強求精確的調整"的特點,而且簡單高效。
第三、Flush定時器超時就發送重排序緩衝區的全部GRE包;該Flush定時器起到的作 用如下
1) 保證任一GRE包的傳輸時延不超過一個定時器周期;
2) 保證一次數據傳輸業務的最後幾個GRE包正確發送(通過定時器來觸發GRE包傳輸);
3) 緩解某些亂序GRE包積壓問題;
4) 保證某些低速率數據業務的亂序包能及時傳輸。
本發明充分考慮了性能與效能的平衡點,保證在達到一定效能的基礎上達到較高的性能。 並且,也考慮了可能出現的異常處理,如GRE包的傳輸時延處理(髙速率時引入的亂序調整 基本不影響性能;低速率時引入了 GRE包的傳輸時延雙重保護,保證亂序調整儘可能小地影 響時延);對於某些特殊情況出現的異常GRE序號(例如, 一個異常大的GRE序號攻擊入侵), 可能會導致Vn值的異常,如果不作特殊處理,會導致等待接收的Vn值遠遠偏離實際接收的 GRE序號,從而嚴重影響亂序調整效果。針對此,本發明的算法可以在很短時間內自適應地 調整Vn為正常值,從而提高容錯能力。
本發明不僅可以應用於無線通訊領域,還可以應用於任何存在分組網絡傳輸系統的亂序 包的調整中,不僅針對GRE包,也就是說亂序調整的對象是可以拓展的。
在上述的實施例中,除了本發明的亂序調整對象可以拓展以外,還可以改變一些其他的 參數,例如為了根據系統需求來更改重排序緩衝區的亂序調整能力,可以適當改變重排序 緩衝區大小。在本發明中除了用定時器來實現GRE包傳輸時延的保護,還可以採用其它的手 段來保證GRE包的傳輸時延。
權利要求
1、一種前向通用路由封裝包的亂序調整方法,其特徵在於包括以下步驟(1)設置條件參數;(2)接收前向通用路由封裝包;(3)利用條件參數對接收到的前向通用路由封裝包進行亂序調整。
2、 按照權利要求1所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述步驟 (1)中的條件參數包括目標序號,該目標序號為等待接收的前向通用路由封裝包的序號。
3、 按照權利要求2所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述的步 驟(3)具體為(31) 判斷接收到的前向通用路由封裝包的序號與目標序號是否相等,若相等,執行步 驟(32);若不相等,執行歩驟(33);(32) 將該接收到的前向通用路由封裝包,以及重排序緩衝區中與該接收到的前向通用路由封裝包序號連續的前向通用路由封裝包,按順序發送到移動臺,並調整目標序號,返回執行歩驟(2);(33) 將該接收到的前向通用路由封裝包按照亂序包處理。
4、 按照權利要求3所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述的步 驟(33)具體為(331) 將該接收到的前向通用路由封裝包按照序號遞增的方式加入到重排序緩衝區(332) 判斷重排序緩衝區是否寫滿,如果沒有寫滿,執行歩驟(333):如果己經寫滿, 執行歩驟(334);(333) 若定時器沒有啟動,則啟動定時器後返回執行步驟(2);若定時器已啟動,直接返回執行步驟(2);(334) 將重排序緩衝區中的全部前向通用路由封裝包按順序發送到移動臺,調整目標序 號,並停止定時器,返回執行歩驟(2)。
5、 按照權利要求4所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述定時 器的處理流程為A、 定時器計時並判斷定時器是否超時,若定時器超時,執行歩驟B;若定時器沒有超時, 重新執行歩驟A;B、 將重排序緩衝區中的全部前向通用路由封裝包按順序發送到移動臺,調整目標序號,並停止定時器。
6、 按照權利要求3所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述步驟 (32)中的調整目標序號的具體方法為將所述發送到移動臺的連續的前向通用路由封裝包中的最後一個包序號加1設置為目標序號。
7、 按照權利要求4所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述步驟 (334)中的調整目標序號的具體方法為將接收到的前向通用路由封裝包的序號加1設置為目標序號。
8、 按照權利要求5所述的前向通用路由封裝包的亂序調整方法,其特徵在於所述步驟 B中的調整目標序號的具體方法為將所述發送到移動臺的前向通用路由封裝包中的最後一 個包序號加l設置為目標序號。
全文摘要
本發明公開了一種前向通用路由封裝包的亂序調整方法,涉及無線通信系統中的分組數據傳輸,為解決現有技術中數據鏈路層沒有亂序調整功能的問題而發明。該前向通用路由封裝包的亂序調整方法包括(1)設置條件參數;(2)接收前向通用路由封裝包;(3)利用條件參數對接收到的前向通用路由封裝包進行亂序調整。其中的條件參數包括目標序號,且目標序號為等待接收的前向通用路由封裝包的序號,並根據該目標序號來確定接收到的GRE包是順序包還是亂序包。本發明通過將接收到的順序GRE包發送,將接收到的亂序GRE包重新排序後發送,從而實現了GRE包在一定緩衝範圍內有序。本發明主要用於分組數據傳輸系統中。
文檔編號H04L1/00GK101162968SQ200610140378
公開日2008年4月16日 申請日期2006年12月8日 優先權日2006年12月8日
發明者佟志新, 康向鋒, 譚繼奎 申請人:中興通訊股份有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀