本發(fā)明涉及通信領域,尤其涉及一種數據包處理方法、裝置及通信系統(tǒng)。
背景技術:
在第三代UMTS(Universal Mobile Telecommunications System,環(huán)球移動通信系統(tǒng))移動通信系統(tǒng)中,RNC(RadioNetworkController,無線網絡控制器)與NodeB(第三代UMTS移動通信系統(tǒng)中的無線基站)間的數據按照Iub口協議進行傳輸,數據在傳輸過程中可能會因為物理因素或其他問題,導致數據延時較大,雖然UMTS系統(tǒng)考慮了時間窗調整,但時延抖動較大,調整不及時或者調整偏差,可能會造成一定程度的丟包,進而影響業(yè)務性能。
UMTS系統(tǒng)中要求FP(Frame Packet,幀數據)包到達NodeB的時間應該提前Tproc(Processing time before transmission on air-interface,時間提前量)ms,系統(tǒng)才能正常的處理,其中的Tproc等于NodeB處理FP包的時間,一般由系統(tǒng)設備設定。在實際生活中,當在碼偏比較大的情況,FP包的到達時間比較晚,即使FP包落到了接收窗,若TOA(Time Of Arrival,到達時間)很小,數據也并未提前Tproc ms到達NodeB,從而導致NodeB無法正確幀處理該包數據,此時NodeB也不會發(fā)時間調整給RNC,結果就會發(fā)生數據丟包,嚴重可能導致掉話。
因此,如何提供一種可以解決采用系統(tǒng)設備設定Tproc導致的碼偏較大的FP包無法正常處理的數據包處理方法,是本領域技術人員亟待解決的技術問題。
技術實現要素:
本發(fā)明提供了一種數據包處理方法、裝置及通信系統(tǒng),以解決現有采用系統(tǒng)設備設定Tproc導致的碼偏較大的FP包無法正常處理的問題。
本發(fā)明提供了一種數據包處理方法,其包括:
獲取傳輸信道的時間窗參數,承載傳輸信道的物理信道的碼偏(chipoffset);
根據時間窗參數及碼偏,計算傳輸信道的時間提前量(Tproc);
根據時間提前量計算通過傳輸信道所接收的幀數據包的到達時間,根據到達時間處理幀數據包。
進一步的,根據到達時間處理幀數據包包括:根據到達時間判斷幀數據包是否在時間窗內到達,若否,則丟棄幀數據包。
進一步的,在丟棄幀數據包之后,還包括:向無線網絡控制器發(fā)送用于調整幀數據包發(fā)送時間的發(fā)送時間調整控制幀。
進一步的,還包括:當時間窗參數及碼偏發(fā)生變化時,利用變化后的時間窗參數及碼偏計算獲取新時間提前量。
進一步的,還包括:若新時間提前量大于時間提前量時,利用新時間提前量替換時間提前量時。
進一步的,還包括:獲取基站從處理一個無線幀開始至發(fā)送到空口的時間T1、通信系統(tǒng)內一個無線幀的幀長T2;時間窗參數包括時間窗開始時間TOAWS、時間窗結束時間TOAWE,碼偏為chipoffset;根據時間窗參數及碼偏,計算傳輸信道的時間提前量包括:利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/ 38400)-TOAWE),計算時間提前量Tproc。
進一步的,還包括:根據任務周期確定時間余量ΔT3;根據時間窗參數及碼偏,計算傳輸信道的時間提前量包括:利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE)+ΔT3,計算時間提前量Tproc。
本發(fā)明提供了一種數據包處理裝置,其包括:
獲取模塊,用于獲取傳輸信道的時間窗參數,承載傳輸信道的物理信道的碼偏;
計算模塊,用于根據時間窗參數及碼偏,計算傳輸信道的時間提前量;
處理模塊,用于根據時間提前量計算通過傳輸信道所接收的幀數據包的到達時間,根據到達時間處理幀數據包。
進一步的,處理模塊用于根據到達時間判斷幀數據包是否在時間窗內到達,若否,則丟棄幀數據包。
進一步的,處理模塊在丟棄幀數據包之后,還用于向無線網絡控制器發(fā)送用于調整幀數據包發(fā)送時間的發(fā)送時間調整控制幀。
進一步的,計算模塊還用于當時間窗參數及碼偏發(fā)生變化時,利用變化后的時間窗參數及碼偏計算獲取新時間提前量。
進一步的,計算模塊還用于若新時間提前量大于時間提前量時,利用新時間提前量替換時間提前量時。
進一步的,獲取模塊還用于獲取基站從處理一個無線幀開始至發(fā)送到空口的時間T1、通信系統(tǒng)內一個無線幀的幀長T2;時間窗參數包括時間窗開始時間TOAWS、時間窗結束時間TOAWE,碼偏為chipoffset;計算模塊用于利用公式 Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE),計算時間提前量Tproc。
進一步的,獲取模塊還用于根據任務周期確定時間余量ΔT3;計算模塊用于利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE)+ΔT3,計算時間提前量Tproc。
本發(fā)明提供了一種通信系統(tǒng),其特征在于,包括基站及無線網絡控制器,以及本發(fā)明提供的數據包處理裝置,利用數據包處理裝置處理基站從無線網絡控制器接收到的幀數據包。
本發(fā)明的有益效果:
本發(fā)明提供了一種數據包處理方法,獲取傳輸信道的時間窗參數,承載傳輸信道的物理信道的碼偏,并根據時間窗參數及碼偏,計算傳輸信道的時間提前量Tproc,這樣Tproc都是與各傳輸信道的參數相關,Tproc計算結果將根據不同傳輸信道的參數獲得,與現有由系統(tǒng)設備設定Tproc的方式相比,更準確,解決了現有采用系統(tǒng)設備設定Tproc導致的碼偏較大的FP包無法正常處理的問題。
附圖說明
圖1為本發(fā)明第一實施例提供的數據包處理裝置的結構示意圖;
圖2為本發(fā)明第二實施例提供的數據包處理方法的流程圖;
圖3為本發(fā)明第三實施例提供的數據包處理方法的流程圖;
圖4為3GPP TS25.402協議中Tproc計算條件示意圖。
具體實施方式
現通過具體實施方式結合附圖的方式對本發(fā)明做出進一步的詮釋說明。
第一實施例:
圖1為本發(fā)明第一實施例提供的數據包處理裝置的結構示意圖,由圖1可知,在本實施例中,本發(fā)明提供的數據包處理裝置1包括:
獲取模塊11,用于獲取傳輸信道的時間窗參數,承載傳輸信道的物理信道的碼偏;
計算模塊12,用于根據時間窗參數及碼偏,計算傳輸信道的時間提前量;
處理模塊13,用于根據時間提前量計算通過傳輸信道所接收的幀數據包的到達時間,根據到達時間處理幀數據包。
在一些實施例中,上述實施例中的處理模塊13用于根據到達時間判斷幀數據包是否在時間窗內到達,若否,則丟棄幀數據包。
在一些實施例中,上述實施例中的處理模塊13在丟棄幀數據包之后,還用于向無線網絡控制器發(fā)送用于調整幀數據包發(fā)送時間的發(fā)送時間調整控制幀。
在一些實施例中,上述實施例中的計算模塊12還用于當時間窗參數及碼偏發(fā)生變化時,利用變化后的時間窗參數及碼偏計算獲取新時間提前量。
在一些實施例中,上述實施例中的計算模塊12還用于若新時間提前量大于時間提前量時,利用新時間提前量替換時間提前量時。
在一些實施例中,上述實施例中的獲取模塊11還用于獲取基站從處理一個無線幀開始至發(fā)送到空口的時間T1、通信系統(tǒng)內一個無線幀的幀長T2;時間窗參數包括時間窗開始時間TOAWS、時間窗結束時間TOAWE,碼偏為chipoffset; 計算模塊12用于利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE),計算時間提前量Tproc。
在一些實施例中,上述實施例中的獲取模塊11還用于根據任務周期確定時間余量ΔT3;計算模塊12用于利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE)+ΔT3,計算時間提前量Tproc。
對應的,本發(fā)明提供了一種通信系統(tǒng),其特征在于,包括基站及無線網絡控制器,以及本發(fā)明提供的數據包處理裝置1,利用數據包處理裝置處理基站從無線網絡控制器接收到的幀數據包。
第二實施例:
圖2為本發(fā)明第二實施例提供的數據包處理方法的流程圖,由圖2可知,在本實施例中,本發(fā)明提供的數據包處理方法包括以下步驟:
S201:獲取傳輸信道的時間窗參數,承載傳輸信道的物理信道的碼偏;
S202:根據時間窗參數及碼偏,計算傳輸信道的時間提前量;
S203:根據時間提前量計算通過傳輸信道所接收的幀數據包的到達時間,根據到達時間處理幀數據包。
在一些實施例中,上述實施例中的根據到達時間處理幀數據包包括:根據到達時間判斷幀數據包是否在時間窗內到達,若否,則丟棄幀數據包。
在一些實施例中,上述實施例中的方法在丟棄幀數據包之后,還包括:向無線網絡控制器發(fā)送用于調整幀數據包發(fā)送時間的發(fā)送時間調整控制幀。
在一些實施例中,上述實施例中的方法還包括:當時間窗參數及碼偏發(fā)生變化時,利用變化后的時間窗參數及碼偏計算獲取新時間提前量。
在一些實施例中,上述實施例中的方法還包括:若新時間提前量大于時間提前量時,利用新時間提前量替換時間提前量時。
在一些實施例中,上述實施例中的方法還包括:獲取基站從處理一個無線幀開始至發(fā)送到空口的時間T1、通信系統(tǒng)內一個無線幀的幀長T2;時間窗參數包括時間窗開始時間TOAWS、時間窗結束時間TOAWE,碼偏為chipoffset;根據時間窗參數及碼偏,計算傳輸信道的時間提前量包括:利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE),計算時間提前量Tproc。
在一些實施例中,上述實施例中的方法還包括:根據任務周期確定時間余量ΔT3;根據時間窗參數及碼偏,計算傳輸信道的時間提前量包括:利用公式Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE)+ΔT3,計算時間提前量Tproc。
現結合具體應用場景對本發(fā)明做進一步的詮釋說明。
第三實施例:
針對現有技術中存在的Tproc設定方式單一且不準確的問題,本實施例提供了一種根據TOAWE/TOAWS動態(tài)計算Tproc的方法。
圖4為3GPP TS25.402協議中Tproc計算條件示意圖,根據該Tproc的計算條件可知,在一個實施例中,利用專用傳輸信道和公用傳輸信道的TOAWS/TOAWE,及承載傳信道的物理信道的chipoffset計算每條傳輸承載的Tproc,包含以下步驟:
NodeB記錄每條傳輸信道的TOAWS、TOAWE、chipoffset參數,每條傳輸信道都會對應一個LinkId;
針對每一條傳輸信道,NodeB根據記錄的傳輸信道參數計算Tproc,其計算 方法為:
Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE)+ΔT3;
其中,
T1為NodeB從處理一個無線幀的數據開始到發(fā)送至空口的時間,單位為ms;
T2等于10,為WCDMA系統(tǒng)中一個無線幀的幀長等于10ms;
ΔT3為NodeB處理預留的余量,需要保證每幀最后會有1個時隙的數據可能在下一幀幀頭才被處理,所以根據軟件執(zhí)行的任務周期,需要額外增加時間余量,單位為ms。如:任務執(zhí)行周期不足1ms,按1ms計算,如果超過1ms,但不足2ms,取2ms,總之,ΔT3向上圓整。
從原理上來看,在chipoffset比較小的情況下,Tproc可以設置的小一些,它是一個根據chipoffset變化的值。chipoffset比較大的情況下,到達時間為TOA Late的FP包就無法處理了,只有通過時間調整幀使RNC再發(fā)的包時間上靠前一點,在chipoffset比較小的情況下,TOA Late的包是可以正常處理的,并且也會伴有時間調整幀的發(fā)送。根據公式計算Tproc值,再加ΔT3ms的余量,只要計算出來的Tproc大于預先設定的值,就立即對Tproc進行更新,確保下一次落在時間窗邊緣的數據能夠被正確處理,而不會造成丟包。
在實際應用中,在每個傳輸承載下面下記錄變量Tproc,在每個傳輸承載建立的時候,進行計算得出這個Tproc值,然后根據實際傳輸情況,對落在時間窗內的數據進行處理。
具體的,如圖3所示,在本實施例中,本發(fā)明提供的數據包處理方法包括以下步驟:
S301:基站獲取傳輸信道參數。
NodeB保存所接收到的NBAP(NodeB Application Part,Iub信令協議中NodeB應用部分協議)信令中傳輸信道相關參數,TOAWS、TOAWE、chipoffset,每條傳輸信道對應一個傳輸承載線路標識。
S302:NodeB計算傳輸信道的Tproc。
NodeB根據本發(fā)明提供的Tproc的計算方法,Tproc=MAX(T1,T2+(T2*ChipOffset/38400)-TOAWE)+ΔT3,依次計算出各傳輸信道的Tproc的值。
例如,某一傳輸信道的相關參數為:T1=11ms,T2=10ms,ΔT3=1ms,TOAWE=4ms,chipoffset=27904,則計算出的Tproc=14ms。那么NodeB收到每個傳輸信道從Iub口發(fā)過來的包后,從開始經過下行編碼處理后再到發(fā)送到空口的時間為14ms。
在實際應用中,如果不加入chipoffset使用動態(tài)計算方法,強制Tproc=T1,則TOA比實際偏大,那么理論上落在時間窗TOAWE之外的包,在空口時間CFN其實已經超過了,仍然會被當做有效數據處理,會與正常達到的數據包CFN重疊,造成空口同一CFN有兩幀數據,終端接收數據后解析出錯,影響業(yè)務。如果加入chipoffset經過計算,Tproc=14ms,對數據包的到達時間判斷更精準,已經嚴重到達較晚(Too late)的FP包被丟棄,不影響后面正常的數據發(fā)送。同時,在檢測到數據包的到達時間在Toa Late區(qū)間后,NodeB及時向RNC發(fā)送時間調整控制幀,保證后續(xù)數據向前調整,盡量落在時間窗之內。
S303:NodeB動態(tài)計算傳輸信道的Tproc。
如果因業(yè)務改變,RNC和NodeB之間的傳輸信道參數發(fā)生改變,NodeB更新TOAWS、TOAWE、chipoffset,需要重新計算Tproc的值。
S304:NodeB根據Tproc處理數據包。
NodeB在接收到Iub口的FP包時,根據Tproc計算數據包的到達時間,判斷收到的數據包是否在時間窗內;若是,則正常處理;若在Late區(qū)間,NodeB及時向RNC發(fā)送時間調整控制幀,保證后續(xù)數據向前調整,盡量落在時間窗之內;若在Too late區(qū)間,NodeB將FP包丟棄,不影響后面正常的數據發(fā)送。
綜上可知,通過本發(fā)明的實施,至少存在以下有益效果:
本發(fā)明提供了一種數據包處理方法,獲取傳輸信道的時間窗參數,承載傳輸信道的物理信道的碼偏,并根據時間窗參數及碼偏,計算傳輸信道的時間提前量Tproc,這樣Tproc都是與各傳輸信道的參數相關,Tproc計算結果將根據不同傳輸信道的參數獲得,與現有由系統(tǒng)設備設定Tproc的方式相比,更準確,解決了現有采用系統(tǒng)設備設定Tproc導致的碼偏較大的FP包無法正常處理的問題。
以上僅是本發(fā)明的具體實施方式而已,并非對本發(fā)明做任何形式上的限制,凡是依據本發(fā)明的技術實質對以上實施方式所做的任意簡單修改、等同變化、結合或修飾,均仍屬于本發(fā)明技術方案的保護范圍。