專利名稱:一種非接入層(nas)消息的編、解碼方法及裝置的制作方法
技術(shù)領(lǐng)域:
本申請涉及移動通信技術(shù)領(lǐng)域,特別是涉及ー種非接入層(Non Access Stratum,NAS)消息的編碼方法、解碼方法,以及編碼裝置、解碼裝置。
背景技術(shù):
在LTE網(wǎng)絡(luò)內(nèi),移動管理實(shí)體(MME, Mobility Management Entity)和用戶終端(UE, User Equipment)之間采用NAS協(xié)議進(jìn)行消息交互。現(xiàn)有技術(shù)中,如果MME和UE的安全上下文沒建立之前,ー些消息可以使用普通NAS消息,通過SlAP協(xié)議(SI Application Protoco, SI接ロ應(yīng)用協(xié)議)消息中的NAS-PDU (Protocol Data Unit,協(xié)議數(shù)據(jù)單元)進(jìn)行傳輸,比如附著請求(Attach Request)消息,去附著(Detach Request)消息等。在MME和UE建立了安全上下文之后,MME和UE之間的NAS消息都需要使用被安全保護(hù)的NAS消息進(jìn)行傳輸。被安全保護(hù)的NAS消息,是使用計(jì)算出的NAS完整性保護(hù)密鑰和NAS加密密鑰,對普通的NAS消息進(jìn)行完整性保護(hù)和加密保護(hù)。在消息發(fā)送之前,發(fā)送方將普通NAS消息進(jìn)行加密保護(hù)和完整性保護(hù),成為被安全保護(hù)的NAS消息,之后通過SlAP協(xié)議消息中的NAS-PDU進(jìn)行傳輸。接收方收到NAS-PDU后,將里邊的被安全保護(hù)和完整性保護(hù)的NAS消息,進(jìn)行完整性保護(hù)校驗(yàn)和解密,得到普通的NAS消息。在上述過程中,毎次加密保護(hù)和完整性保護(hù)的消息只能是一條NAS消息,而且每個SlAP消息中的NAS-PDU只能攜帶ー個普通NAS消息或被安全保護(hù)的NAS消息。但在實(shí)際應(yīng)用中,存在連續(xù)發(fā)送兩條NAS消息的情況,例如網(wǎng)絡(luò)側(cè)觸發(fā)承載更改中攜帯一個承載上 下文隊(duì)列(Bearer context List), MME會連續(xù)向UE發(fā)送多個NAS消息來完成該流程。另外在并發(fā)過程中,也可能會存在連續(xù)發(fā)送多個NAS消息的情況。在上述連續(xù)發(fā)送多個NAS的情況下,使用現(xiàn)有的NAS編碼方式,MME以及UE對于每個NAS消息,每次都需要計(jì)算最新的NAS完整性保護(hù)密鑰和加密密鑰,對每個普通的NAS消息分別進(jìn)行完整性保護(hù)和加密保護(hù)的操作,并對每個NAS消息分別發(fā)送和處理。分別計(jì)算不同的完整性保護(hù)密鑰和加密密鑰都需要占用MME和UE的處理時間。而且,同時發(fā)送多條普通NAS消息或多條被安全保護(hù)的NAS消息,都増加了網(wǎng)絡(luò)間的消息交互??傊?,現(xiàn)有的NAS編碼方式,在計(jì)算過程以及傳輸過程中,都將降低MME和UE交互處理的速度。
發(fā)明內(nèi)容
本申請?zhí)峁┝拴`種非接入層(NAS)消息的編碼方法及裝置,以解決現(xiàn)有的NAS編碼方式將降低MME和UE交互處理速度的問題。相應(yīng)地,本申請還提供了ー種非接入層(NAS)消息的解碼方法及裝置,能夠降低MME和UE交互處理的速度。
為了解決上述問題,本申請公開了ー種非接入層(NAS)消息的編碼方法,包括確定待編碼的ー個或多個NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息;若為普通NAS消息,則將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,得到編碼后的普通NAS消息;若為被安全保護(hù)的NAS消息,則將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,并對編碼后的普通NAS消息進(jìn)行安全保護(hù)編碼,得到編碼后的被安全保護(hù)的NAS消息;將編碼后的普通NAS消息或者編碼后的被安全保護(hù)的NAS消息,包含在同一個協(xié)議數(shù)據(jù)単元中傳輸。優(yōu)選地,所述將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個 則將多個NAS消息按序排列,得到編碼后的普通NAS消息,包括從待編碼的第一個NAS消息開始進(jìn)行普通NAS編碼吋,在所述第一個NAS消息對應(yīng)的普通消息結(jié)構(gòu)中増加背包標(biāo)記和消息長度;其中,所述背包標(biāo)記表示所述第一個NAS消息之后是否跟隨另ー個NAS消息;若待編碼的NAS消息為ー個,則對第一個NAS完成編碼后得到編碼后的普通NAS消息;若待編碼的NAS消息為多個,則在第一個NAS消息編碼完成后,繼續(xù)對跟隨的下ー個NAS消息進(jìn)行普通NAS編碼,直到對最后ー個待編碼的NAS消息編碼完成;所有完成普通NAS編碼的NAS消息按序排列,并統(tǒng)一作為編碼后的普通NAS消息。其中,所述在普通消息結(jié)構(gòu)中増加背包標(biāo)記,包括將普通消息結(jié)構(gòu)中占用4個比特的協(xié)議鑒別符壓縮為3個比特;將壓縮后剰余的I個比特存儲背包標(biāo)記。其中,所述在普通消息結(jié)構(gòu)中増加消息長度,包括在普通消息結(jié)構(gòu)中存儲信息元素的位置之前増加2個字節(jié)來存儲消息長度,所述消息長度表示該普通消息結(jié)構(gòu)中消息長度之后的所有信息元素的長度總和。優(yōu)選地,所述對編碼后的普通NAS消息進(jìn)行安全保護(hù)編碼,得到編碼后的被安全保護(hù)的NAS消息,包括將ー個或多個編碼后的普通NAS消息進(jìn)行加密;將加密后的ー個或多個普通NAS消息放入同一個安全保護(hù)消息結(jié)構(gòu)中,得到編碼后的攜帯ー個或多個普通NAS消息的被安全保護(hù)的NAS消息。本申請還提供了ー種非接入層(NAS)消息的解碼方法,包括接收編碼后的NAS消息,并識別所述NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息;若為普通NAS消息,則按照普通消息結(jié)構(gòu)解碼,解碼時根據(jù)普通消息結(jié)構(gòu)中的背包標(biāo)記判斷NAS消息之后是否跟隨另ー個NAS消息,并根據(jù)普通消息結(jié)構(gòu)中的消息長度控制每個NAS消息的長度,得到解碼后的ー個或多個NAS消息;若為被安全保護(hù)的NAS消息,則先按照安全保護(hù)消息結(jié)構(gòu)解碼,得到ー個或多個普通NAS消息,然后按照普通消息結(jié)構(gòu)對所述普通NAS消息解碼,得到解碼后的ー個或多個NAS消息。本申請還提供了ー種非接入層(NAS)消息的編碼裝置,包括確定模塊,用于確定待編碼的ー個或多個NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息;
普通編碼模塊,用于若為普通NAS消息,則將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,得到編碼后的普通NAS消息;安全保護(hù)編碼模塊,用于若為被安全保護(hù)的NAS消息,則調(diào)用所述普通編碼模塊,將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,并對編碼后的普通NAS消息進(jìn)行安全保護(hù)編碼,得到編碼后的被安全保護(hù)的NAS消息;編碼后處理模塊,用于將編碼后的普通NAS消息或者編碼后的被安全保護(hù)的NAS消息,包含在同一個協(xié)議數(shù)據(jù)單元中傳輸。
優(yōu)選地,所述普通編碼模塊包括單條編碼子模塊,用于從待編碼的第一個NAS消息開始進(jìn)行普通NAS編碼時,在所述第一個NAS消息對應(yīng)的普通消息結(jié)構(gòu)中増加背包標(biāo)記和消息長度;其中,所述背包標(biāo)記表示所述第一個NAS消息之后是否跟隨另ー個NAS消息;若待編碼的NAS消息為ー個,則對第一個NAS完成編碼后得到編碼后的普通NAS消息;多條編碼子模塊,用于若待編碼的NAS消息為多個,則在第一個NAS消息編碼完成后,繼續(xù)對跟隨的下ー個NAS消息進(jìn)行普通NAS編碼,直到對最后ー個待編碼的NAS消息編碼完成;所有完成普通NAS編碼的NAS消息按序排列,并統(tǒng)一作為編碼后的普通NAS消息。優(yōu)選地,所述安全保護(hù)編碼模塊包括安全保護(hù)子模塊,用于將ー個或多個編碼后的普通NAS消息進(jìn)行加密;編碼子模塊,用于將加密后的ー個或多個普通NAS消息放入同一個安全保護(hù)消息結(jié)構(gòu)中,得到編碼后的攜帯ー個或多個普通NAS消息的被安全保護(hù)的NAS消息。本申請還提供了ー種非接入層(NAS)消息的解碼裝置,包括接收及識別模塊,用于接收編碼后的NAS消息,并識別所述NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息;普通解碼模塊,用于若為普通NAS消息,則按照普通消息結(jié)構(gòu)解碼,解碼時根據(jù)普通消息結(jié)構(gòu)中的背包標(biāo)記判斷NAS消息之后是否跟隨另ー個NAS消息,并根據(jù)普通消息結(jié)構(gòu)中的消息長度控制每個NAS消息的長度,得到解碼后的ー個或多個NAS消息;安全保護(hù)解碼模塊,用于若為被安全保護(hù)的NAS消息,則調(diào)用所述普通解碼模塊,先按照安全保護(hù)消息結(jié)構(gòu)解碼,得到ー個或多個普通NAS消息,然后按照普通消息結(jié)構(gòu)對所述普通NAS消息解碼,得到解碼后的ー個或多個NAS消息。與現(xiàn)有技術(shù)相比,本申請包括以下優(yōu)點(diǎn)本申請通過對普通NAS消息的消息結(jié)構(gòu)進(jìn)行修改,增加了背包標(biāo)記(piggybackedflag)和消息長度(Message Length),使得普通NAS消息可以攜帶一條或者多條NAS消息。并且,可以將多個普通NAS消息通過RRC消息或者SlAP消息中的同一個NAS-PDU進(jìn)行傳輸。進(jìn)ー步地,在普通NAS消息可以攜帶一條或者多條NAS消息的基礎(chǔ)上,還可以使得UE或者M(jìn)ME在發(fā)送NAS消息的時候,在每次對NAS消息進(jìn)行安全保護(hù)的時候,可以計(jì)算ー個完整性保護(hù)密鑰和ー個加密密鑰,對多個NAS消息同時進(jìn)行安全保護(hù)。并且,可以將多個被安全保護(hù)的NAS消息通過RRC消息或者SlAP消息中的同一個NAS-PDU進(jìn)行傳輸。總之,本申請簡化了 MME和UE的處理步驟,減少了網(wǎng)絡(luò)內(nèi)的消息交互,對于提高通信效率、提升網(wǎng)絡(luò)性能有比較大的作用。
圖I是現(xiàn)有技術(shù)中普通的NAS消息結(jié)構(gòu)示意圖;圖2是現(xiàn)有技術(shù)中被安全保護(hù) 的NAS消息結(jié)構(gòu)示意圖;圖3是本申請實(shí)施例中改進(jìn)后的普通NAS消息結(jié)構(gòu)示意圖;圖4是本申請實(shí)施例中改進(jìn)后的被安全保護(hù)的NAS消息結(jié)構(gòu)示意圖;圖5是本申請實(shí)施例所述一種NAS消息的編碼方法流程圖;圖6是圖5實(shí)施例中普通的背包NAS消息的格式示意圖;圖7是圖5實(shí)施例中被安全保護(hù)的背包NAS消息的格式示意圖;圖8是本申請實(shí)施例所述一種NAS消息的解碼方法流程圖;圖9是本申請實(shí)施例所述UE和MME之間的NAS消息傳輸流程圖;圖10是本申請實(shí)施例所述UE和MME之間的NAS消息傳輸示意圖;圖11是本申請實(shí)施例所述UE向MME發(fā)送NAS消息的流程圖;圖13,其示出了本申請實(shí)施例所述ー種NAS編碼裝置的結(jié)構(gòu)圖;圖12是本申請實(shí)施例所述MME向UE發(fā)送NAS消息的流程圖;圖13是本申請實(shí)施例所述ー種NAS編碼裝置的結(jié)構(gòu)圖;圖14是本申請實(shí)施例所述ー種NAS解碼裝置的結(jié)構(gòu)圖。
具體實(shí)施例方式為使本申請的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對本申請作進(jìn)一步詳細(xì)的說明。本申請?zhí)岢雯`種NAS編、解碼方法,編碼時通過對普通NAS消息的消息結(jié)構(gòu)進(jìn)行修改,增加了背包標(biāo)記(piggybacked flag)和消息長度(Message Length),使得普通NAS消息可以攜帶一條或者多條NAS消息,進(jìn)而使得UE或者M(jìn)ME可以對多條NAS消息同時進(jìn)行完整性保護(hù)和加密保護(hù),提高M(jìn)ME和UE交互處理的速度。下面首先介紹現(xiàn)有技術(shù)中NAS消息的編碼格式(即消息結(jié)構(gòu))。在3GPP TS 24. 301 V10. 5. O協(xié)議的第9. I章節(jié)規(guī)定了 NAS消息的通用編碼格式。其中,普通NAS消息的編碼格式如圖I所示,被安全保護(hù)的NAS消息結(jié)構(gòu)如圖2所示。MME或者UE將每個NAS消息通過SlAP消息的NAS-PDU發(fā)送給對方。本申請中,改進(jìn)后的普通NAS消息結(jié)構(gòu)如圖3所示。圖3中,將原普通NAS消息中占用4個比特的協(xié)議鑒別符(Protocoldiscriminator)壓縮為3個比特,分別用第一個字節(jié)的bit3, bit2, bitl表示,如下表I所
示
權(quán)利要求
1.ー種非接入層(NAS)消息的編碼方法,其特征在于,包括 確定待編碼的ー個或多個NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息;若為普通NAS消息,則將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,得到編碼后的普通NAS消息; 若為被安全保護(hù)的NAS消息,則將待編碼的ー個或多個NAS消息進(jìn) 行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,并對編碼后的普通NAS消息進(jìn)行安全保護(hù)編碼,得到編碼后的被安全保護(hù)的 NAS消息; 將編碼后的普通NAS消息或者編碼后的被安全保護(hù)的NAS消息,包含在同一個協(xié)議數(shù)據(jù)單兀中傳輸。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,得到編碼后的普通NAS消息,包括 從待編碼的第一個NAS消息開始進(jìn)行普通NAS編碼時,在所述第一個NAS消息對應(yīng)的普通消息結(jié)構(gòu)中増加背包標(biāo)記和消息長度;其中,所述背包標(biāo)記表示所述第一個NAS消息之后是否跟隨另ー個NAS消息; 若待編碼的NAS消息為ー個,則對第一個NAS完成編碼后得到編碼后的普通NAS消息;若待編碼的NAS消息為多個,則在第一個NAS消息編碼完成后,繼續(xù)對跟隨的下ー個NAS消息進(jìn)行普通NAS編碼,直到對最后ー個待編碼的NAS消息編碼完成;所有完成普通NAS編碼的NAS消息按序排列,并統(tǒng)一作為編碼后的普通NAS消息。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述在普通消息結(jié)構(gòu)中増加背包標(biāo)記,包括 將普通消息結(jié)構(gòu)中占用4個比特的協(xié)議鑒別符壓縮為3個比特; 將壓縮后剰余的I個比特存儲背包標(biāo)記。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述在普通消息結(jié)構(gòu)中増加消息長度,包括 在普通消息結(jié)構(gòu)中存儲信息元素的位置之前増加2個字節(jié)來存儲消息長度,所述消息長度表示該普通消息結(jié)構(gòu)中消息長度之后的所有信息元素的長度總和。
5.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述對編碼后的普通NAS消息進(jìn)行安全保護(hù)編碼,得到編碼后的被安全保護(hù)的NAS消息,包括 將ー個或多個編碼后的普通NAS消息進(jìn)行加密; 將加密后的ー個或多個普通NAS消息放入同一個安全保護(hù)消息結(jié)構(gòu)中,得到編碼后的攜帯ー個或多個普通NAS消息的被安全保護(hù)的NAS消息。
6.ー種非接入層(NAS)消息的解碼方法,其特征在于,包括 接收編碼后的NAS消息,并識別所述NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息; 若為普通NAS消息,則按照普通消息結(jié)構(gòu)解碼,解碼時根據(jù)普通消息結(jié)構(gòu)中的背包標(biāo)記判斷NAS消息之后是否跟隨另ー個NAS消息,并根據(jù)普通消息結(jié)構(gòu)中的消息長度控制每個NAS消息的長度,得到解碼后的ー個或多個NAS消息; 若為被安全保護(hù)的NAS消息,則先按照安全保護(hù)消息結(jié)構(gòu)解碼,得到ー個或多個普通NAS消息,然后按照普通消息結(jié)構(gòu)對所述普通NAS消息解碼,得到解碼后的ー個或多個NAS消息。
7.ー種非接入層(NAS)消息的編碼裝置,其特征在于,包括 確定模塊,用于確定待編碼的ー個或多個NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息; 普通編碼模塊,用于若為普通NAS消息,則將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,得到編碼后的普通NAS消息;安全保護(hù)編碼模塊,用于若為被安全保護(hù)的NAS消息,則調(diào)用所述普通編碼模塊,將待編碼的ー個或多個NAS消息進(jìn)行普通NAS編碼,編碼時若為多個則將多個NAS消息按序排列,并對編碼后的普通NAS消息進(jìn)行安全保護(hù)編碼,得到編碼后的被安全保護(hù)的NAS消息;編碼后處理模塊,用于將編碼后的普通NAS消息或者編碼后的被安全保護(hù)的NAS消息,包含在同一個協(xié)議數(shù)據(jù)單元中傳輸。
8.根據(jù)權(quán)利要求7所述的編碼裝置,其特征在于,所述普通編碼模塊包括 單條編碼子模塊,用于從待編碼的第一個NAS消息開始進(jìn)行普通NAS編碼時,在所述第ー個NAS消息對應(yīng)的普通消息結(jié)構(gòu)中増加背包標(biāo)記和消息長度;其中,所述背包標(biāo)記表示所述第一個NAS消息之后是否跟隨另ー個NAS消息; 若待編碼的NAS消息為ー個,則對第一個NAS完成編碼后得到編碼后的普通NAS消息;多條編碼子模塊,用于若待編碼的NAS消息為多個,則在第一個NAS消息編碼完成后,繼續(xù)對跟隨的下ー個NAS消息進(jìn)行普通NAS編碼,直到對最后ー個待編碼的NAS消息編碼完成;所有完成普通NAS編碼的NAS消息按序排列,并統(tǒng)一作為編碼后的普通NAS消息。
9.根據(jù)權(quán)利要求7所述的編碼裝置,其特征在于,所述安全保護(hù)編碼模塊包括 安全保護(hù)子模塊,用于將ー個或多個編碼后的普通NAS消息進(jìn)行加密; 編碼子模塊,用于將加密后的ー個或多個普通NAS消息放入同一個安全保護(hù)消息結(jié)構(gòu)中,得到編碼后的攜帯ー個或多個普通NAS消息的被安全保護(hù)的NAS消息。
10.ー種非接入層(NAS)消息的解碼裝置,其特征在于,包括 接收及識別模塊,用于接收編碼后的NAS消息,并識別所述NAS消息為普通NAS消息或者為被安全保護(hù)的NAS消息; 普通解碼模塊,用于若為普通NAS消息,則按照普通消息結(jié)構(gòu)解碼,解碼時根據(jù)普通消息結(jié)構(gòu)中的背包標(biāo)記判斷NAS消息之后是否跟隨另ー個NAS消息,并根據(jù)普通消息結(jié)構(gòu)中的消息長度控制每個NAS消息的長度,得到解碼后的ー個或多個NAS消息; 安全保護(hù)解碼模塊,用于若為被安全保護(hù)的NAS消息,則調(diào)用所述普通解碼模塊,先按照安全保護(hù)消息結(jié)構(gòu)解碼,得到ー個或多個普通NAS消息,然后按照普通消息結(jié)構(gòu)對所述普通NAS消息解碼,得到解碼后的ー個或多個NAS消息。
全文摘要
本申請?zhí)峁┝艘环N非接入層(NAS)消息的編、解碼方法及裝置,以解決現(xiàn)有的NAS編碼方式將降低MME和UE交互處理速度的問題。本申請通過對普通NAS消息的消息結(jié)構(gòu)進(jìn)行修改,增加了背包標(biāo)記和消息長度,使得普通NAS消息可以攜帶一條或者多條NAS消息,還可以使得每次對NAS消息進(jìn)行安全保護(hù)的時候,計(jì)算一個完整性保護(hù)密鑰和一個加密密鑰,對多個NAS消息同時進(jìn)行安全保護(hù)。并且,可以將多個NAS消息通過RRC消息或者S1AP消息中的同一個NAS-PDU進(jìn)行傳輸。本申請簡化了MME和UE的處理步驟,減少了網(wǎng)絡(luò)內(nèi)的消息交互,對于提高通信效率、提升網(wǎng)絡(luò)性能有比較大的作用。
文檔編號H04W12/02GK102740287SQ20121023587
公開日2012年10月17日 申請日期2012年7月6日 優(yōu)先權(quán)日2012年7月6日
發(fā)明者吳鵬程 申請人:大唐移動通信設(shè)備有限公司