午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

EPS是什么鬼?(四)

 沅希920 2018-08-22


感謝閱讀。

 

上一篇講述了EPS承載和Qos的概念,包括EPS承載的類(lèi)型和關(guān)系、TFT和PF的作用,QCI、ARP、GBR、MBR、APN-AMBR和UE-AMBR的作用。這一篇將講述EPS承載的構(gòu)成和GTP-U的應(yīng)用。

 

簡(jiǎn)單回顧一下。在第一篇中,引入了UE和PGW之間的隧道概念;在第二篇中,根據(jù)APNPDN Type(IPv4、IPv6或IPv4v6),隧道劃分為多個(gè)PDN連接;在第三篇中,根據(jù)QoS(QCI ARP),PDN連接劃分為多個(gè)EPS承載(1個(gè)默認(rèn)承載和0~N個(gè)專(zhuān)用承載)。EPS承載是UE和PGW之間最小粒度的隧道,橫向劃分到此為止,接下來(lái)對(duì)EPS承載進(jìn)行豎向拆分,了解EPS承載的構(gòu)成和實(shí)現(xiàn)。

 

UE和PGW顯然不是直連的,中間必然存在串聯(lián)的節(jié)點(diǎn)。為了降低因節(jié)點(diǎn)處理和轉(zhuǎn)發(fā)數(shù)據(jù)增加的時(shí)延,串聯(lián)的節(jié)點(diǎn)數(shù)量應(yīng)盡可能減少。那么,UE和PGW之間哪些節(jié)點(diǎn)是必不可少的呢?

 

首先是基站

 

EPS是移動(dòng)通信系統(tǒng),UE和網(wǎng)絡(luò)通過(guò)無(wú)線信號(hào)進(jìn)行通信,而網(wǎng)絡(luò)一側(cè)發(fā)送和接收無(wú)線信號(hào)的是基站。在PS中基站稱(chēng)為NodeB(UMTS),在EPS中基站演進(jìn)為eNodeB,即evolved NodeB,在這個(gè)系列中簡(jiǎn)寫(xiě)為eNB

 

無(wú)線信號(hào)的覆蓋范圍是有限的,而UE是移動(dòng)的,顯然UE不會(huì)只和某個(gè)eNB通信,可能會(huì)在eNB之間移動(dòng)。UE在空閑態(tài)時(shí)(ECM-IDLE),UE應(yīng)能主動(dòng)接入網(wǎng)絡(luò),網(wǎng)絡(luò)也應(yīng)能主動(dòng)找到UE;UE在連接態(tài)時(shí)(ECM-CONNECTED),網(wǎng)絡(luò)應(yīng)能保持業(yè)務(wù)的連續(xù)性。這是EMM(EPS Mobility Management)要解決的問(wèn)題,暫時(shí)不展開(kāi)講述,大家只要知道eNB不是固定不變的就可以了。

 

其次是SGW。

 

eNB數(shù)量很多且分布范圍廣,如果eNB直連PGW會(huì)帶來(lái)很多問(wèn)題。比如,讓國(guó)外eNB直連國(guó)內(nèi)PGW,IP路由組織會(huì)變得復(fù)雜而難以管理,可靠性也無(wú)法保證。為了避免這些問(wèn)題,網(wǎng)絡(luò)需要一個(gè)靠近eNB的(訪問(wèn)地)節(jié)點(diǎn)對(duì)eNB數(shù)據(jù)進(jìn)行匯聚,這個(gè)節(jié)點(diǎn)就是Serving GW(服務(wù)網(wǎng)關(guān)),簡(jiǎn)稱(chēng)SGW。

由此,UE、eNBSGWPGW構(gòu)成了EPS的用戶面(User Plane)路徑。所謂用戶面,就是真正傳送業(yè)務(wù)數(shù)據(jù)(比如DNS請(qǐng)求和HTTP請(qǐng)求)的平面,相對(duì)應(yīng)的,傳送信令數(shù)據(jù)(比如E-RAB Setup Request和Create Bearer Request)的平面稱(chēng)為控制面(Control Plane)。換句話說(shuō),用戶面是業(yè)務(wù)數(shù)據(jù)傳送的通道,而控制面負(fù)責(zé)通道的管理,包括建立、修改和釋放等,這是ESM(EPS Session Management)要解決的問(wèn)題,也是下一篇將開(kāi)始講述的內(nèi)容。

 

在PS中,用戶面路徑包括UE、NodeBRNC、SGSNGGSN,EPS在用戶面上的改進(jìn),主要是將RNC部分功能合并到NodeB中,演進(jìn)為eNB,減少一個(gè)節(jié)點(diǎn),從而降低時(shí)延。同時(shí),SGSN控制面和用戶面分離,演進(jìn)為MME和SGW,GGSN演進(jìn)為PGW。邏輯上,SGW和PGW是相互獨(dú)立的節(jié)點(diǎn),實(shí)現(xiàn)上,SGW和PGW可共存于同一物理設(shè)備,進(jìn)一步降低時(shí)延。這個(gè)物理設(shè)備稱(chēng)為SAEGW(SAE即System Architecture Evolution,可理解為EPC的另一個(gè)名稱(chēng)),MME選擇SGW和PGW時(shí)應(yīng)盡量選擇同一SAEGW。

 

PGW是EPS中的業(yè)務(wù)錨點(diǎn)(SGi接口的終結(jié)點(diǎn)),或說(shuō)是IP連接的錨點(diǎn),一旦PDN連接建立,PGW就不會(huì)變化,直到PDN連接釋放。前面提到,UE會(huì)“移動(dòng)”,范圍較大時(shí)會(huì)超出原有eNB覆蓋范圍,范圍更大時(shí)會(huì)超出原有SGW服務(wù)范圍,PDN連接串聯(lián)的eNB和SGW都會(huì)發(fā)生變化,但PGW保持不變,就像是一個(gè)(Anchor)。

示圖中UE有一個(gè)PDN連接(黃線),PGW為PGW1??梢?jiàn)最初PDN連接路徑為UE、eNB1、SGW1、PGW1。當(dāng)UE從eNB1移動(dòng)到eNB2時(shí)(空閑態(tài)或連接態(tài)),SGW不變,PGW對(duì)UE移動(dòng)沒(méi)有感知;當(dāng)UE從eNB2移動(dòng)到eNB3時(shí),SGW由SGW1變?yōu)镾GW2,PGW依然沒(méi)變。

 

SGW是EPS中的移動(dòng)錨點(diǎn)(E-UTRAN的終結(jié)點(diǎn))。可從兩個(gè)角度理解:第一,SGW對(duì)PGW屏蔽了UE移動(dòng)性:SGW服務(wù)范圍內(nèi),UE在eNB之間移動(dòng)不用通知PGW(MME可向PGW上報(bào)UE位置,但不是必須的),后續(xù)會(huì)看到,在某些EMM流程,信令只走到SGW就結(jié)束了;第二,UE如果有多個(gè)不同APN的PDN連接,(物理)PGW可能不同,但SGW必定相同,當(dāng)SGW變化時(shí),所有PGW都會(huì)連接到新的SGW上。

示圖中UE有兩個(gè)PDN連接,APN為APN1和APN2,PGW為PGW1和PGW2,兩個(gè)PDN連接分別以黃線和藍(lán)線表示。可見(jiàn)最初PDN連接1路徑為UE、eNB1、SGW1、PGW1,PDN連接2路徑為UE、eNB1、SGW1、PGW2,eNB和SGW共用。當(dāng)UE從eNB1移動(dòng)到eNB2時(shí)(空閑態(tài)或連接態(tài)),SGW不變,PGW對(duì)UE移動(dòng)沒(méi)有感知;當(dāng)UE從eNB2移動(dòng)到eNB3時(shí),SGW由SGW1變?yōu)镾GW2,PGW1和PGW2同時(shí)從連接SGW1變?yōu)檫B接SGW2。

 

有網(wǎng)元的地方就有接口。

 

有人的地方就有江湖。江湖是什么?江湖就是人際關(guān)系,而接口(Interface)就是網(wǎng)元(NetworkElement,簡(jiǎn)稱(chēng)NE)之間的“人際關(guān)系”。UE和PGW之間插入了eNB和SGW兩個(gè)網(wǎng)元,就產(chǎn)生了UE和eNB之間、eNB和SGW之間、SGW和PGW之間的接口,分別稱(chēng)為Uu、S1-US5/S8。S5和S8的區(qū)別是,SGW和PGW歸屬同一運(yùn)營(yíng)商時(shí)(Intra-PLMN)為S5,SGW和PGW歸屬不同運(yùn)營(yíng)商時(shí)(Inter-PLMN)為S8。S5和S8本質(zhì)上沒(méi)有太大區(qū)別,本文余下部分只提S5。

 

3GPP TS23.401S1-U: Reference point between E-UTRANand Serving GW for the per bearer user plane tunnelling and inter eNodeB path switching during handover. S1-U does not apply to the Control Plane CIoT EPS Optimisation.  S5: It provides user plane tunnelling and tunnel management between Serving GW and PDN GW. It isused for Serving GW relocation due to UE mobility and if the Serving GW needsto connect to a non-collocated PDN GW for the required PDN connectivity.  S8:Inter-PLMN reference point providing user and control plane between the Serving GW in the VPLMN and the PDN GW in the HPLMN. S8 is the inter PLMN variant of S5.

 

注意:在Control Plane CIoT EPS Optimisation方案中,業(yè)務(wù)數(shù)據(jù)經(jīng)eNB和MME之間的S1-C傳送,此時(shí)S1-U不適用;S5/S8包括控制面(Control Plane)和用戶面(User Plane)兩部分,在后續(xù)內(nèi)容中會(huì)加以區(qū)分,以S5為例,控制面和用戶面分別以S5-C和S5-U表示。

 

相應(yīng)的,EPS承載(EPS Bearer)拆分為三段:無(wú)線承載(Radio Bearer,簡(jiǎn)稱(chēng)RB,不同于LTE物理層RB)S1承載(S1 Bearer)S5承載(S5 Bearer)。無(wú)線承載 S1承載的組合稱(chēng)為E-RAB(E-UTRAN Radio Access Bearer)。E-RAB由eNB相關(guān)的兩段承載構(gòu)成,信令流程中常作為整體操作(建立、修改、釋放)比如,MME向eNB發(fā)送E-RABSetup Request,要求eNB建立E-RAB,E-RAB作為整體建立。同樣的,如果切換中eNB發(fā)生變化,E-RAB作為整體修改;如果空閑定時(shí)器(User Inactive Timer,常見(jiàn)配置為10秒或20秒)超時(shí),E-RAB作為整體釋放。

3GPP TS 23.401:An EPSbearer is realized by the following elements: A radio bearer (defined in TS 36.300 [5]) transports the packets of an EPS bearer between a UE and an eNodeB. If a radio bearer exists, there is a one-to-one mapping between an EPS bearer and this radio bearer; An S1 bearer transports the packets of an EPS bearer between an eNodeB and a Serving GW; An E-RAB (E-UTRAN Radio Access Bearer)refers to the concatenation of an S1 bearer and the corresponding radio bearer, as defined inTS 36.300 [5]. An S5/S8 bearer transports the packets of an EPS bearer betweena Serving GW and a PDN GW。(EPS承載的部分實(shí)現(xiàn))

 

不是說(shuō),釋放默認(rèn)承載等同于釋放PDN連接嗎 —— 淡定,完全釋放不可以,部分釋放是可以的。PDN連接體現(xiàn)在ESM Context中,UE和PGW(以及MME)存有PDN連接信息,包括APN、PDNType、UE IP等,不會(huì)因?yàn)镋-RAB釋放而丟失。默認(rèn)承載體現(xiàn)在UE、eNB、SGW和PGW具體占用的資源中,如NE IP、Port和TEID等,只要S5承載存在,默認(rèn)承載就存在,雖然可能不完整。

 

為什么要釋放E-RAB ——因?yàn)榭湛谫Y源寶貴,UE沒(méi)有傳送業(yè)務(wù)數(shù)據(jù)時(shí),網(wǎng)絡(luò)應(yīng)騰出資源給其他UE,同時(shí),UE保持在連接態(tài)也更耗電,返回空閑態(tài)更省電。eNB負(fù)責(zé)監(jiān)測(cè)UE的活躍性(包括所有E-RAB的流量,可通過(guò)監(jiān)測(cè)DRB緩存實(shí)現(xiàn)),在空閑定時(shí)器超時(shí)后通知MME釋放資源,包括控制面的NAS信令連接(RRC連接和S1AP連接),以及用戶面的E-RAB(無(wú)線承載和S1承載)。

 

網(wǎng)絡(luò)釋放E-RAB,S5承載不會(huì)釋放。即使E-RAB釋放,PDN連接依然存在,只不過(guò)EPS承載(默認(rèn)承載和專(zhuān)用承載)不完整,UE和PGW再次發(fā)送數(shù)據(jù)前,網(wǎng)絡(luò)要先建立NAS信令連接,通過(guò)Service Request流程建立E-RAB,構(gòu)成完整的EPS承載,此時(shí)eNB可能不是原有eNB。

 

E-RAB ID用來(lái)區(qū)分UE的多個(gè)E-RAB,由MME分配。E-RAB是EPS承載的一部分,和EPS承載一一對(duì)應(yīng),E-RAB ID也和EBI一一對(duì)應(yīng)。比如,EPS承載的EBI為5,則E-RAB ID也為5。3GPPTS 23.401:The E-RAB ID value used at S1 and X2 interfaces to identify an E-RAB is the same as the EPS Bearer ID value usedto identify the associated EPS Bearer.)

 

承載具體是什么呢?

 

從EPS承載拆分角度看,無(wú)線承載、S1承載和S5承載是各個(gè)區(qū)間的隧道。不過(guò),如果不去考慮底層的傳送過(guò)程,僅從協(xié)議棧角度看,承載則是提供傳送數(shù)據(jù)服務(wù)的實(shí)體,上層把數(shù)據(jù)交給這個(gè)實(shí)體,就等同于交給對(duì)端(服務(wù)靠不靠譜另說(shuō)),而不用關(guān)心底層的傳送過(guò)程。

 

承載就如同郵遞員。

 

比如,你又寫(xiě)信給小甜甜(為什么說(shuō)“又”?),你知道郵遞員收到信后要裝包、裝箱、裝車(chē),走很長(zhǎng)的路,消滅很多妖怪才能到達(dá)目的地(沒(méi)準(zhǔn)小甜甜就是如來(lái)…),但對(duì)你而言,眼前的這個(gè)郵遞員,就代表了把郵件投遞給對(duì)方的服務(wù)(你總不會(huì)尾隨他一路吧)。你把無(wú)限的期許都托付于一首歌:

好吧,這首歌說(shuō)的其實(shí)是妹子期盼渣男來(lái)信的心情,不過(guò)大家也應(yīng)該get到意思了。在UE和eNB之間,郵遞員就是PDCP(Packet Data Convergence Protocol)實(shí)體,上層將業(yè)務(wù)數(shù)據(jù)交給PDCP實(shí)體,經(jīng)過(guò)逐層封裝(以及分段、映射、復(fù)用)后經(jīng)物理層發(fā)送,接收方逐層解封,最后由對(duì)端PDCP實(shí)體將業(yè)務(wù)數(shù)據(jù)交給上層。從上層的角度看,提供傳送數(shù)據(jù)服務(wù)的PDCP實(shí)體,就是所謂的“無(wú)線承載”。(當(dāng)然,完整的無(wú)線承載應(yīng)包括PDCP以下各層,這里強(qiáng)調(diào)的是上層視角)

無(wú)線承載可以傳送業(yè)務(wù)數(shù)據(jù),也可以傳送信令數(shù)據(jù)。通常而言,用于業(yè)務(wù)數(shù)據(jù)(上層為User Plane Entity)的承載稱(chēng)為Data Radio Bearer,簡(jiǎn)稱(chēng)DRB;用于信令數(shù)據(jù)(上層為Control Plane Entity)的承載稱(chēng)為Signalling Radio Bearer,簡(jiǎn)稱(chēng)SRB。在建立EPS承載時(shí),MME向eNB發(fā)送E-RAB Setup,eNB向UE發(fā)送RRC Connection Reconfiguration,PDCP內(nèi)容就是DRBs to ADD

 

例外場(chǎng)景是,在Control Plane CIoT EPS Optimisation(CIoT = Cellular Internet of Things,蜂窩物聯(lián)網(wǎng))方案中,業(yè)務(wù)數(shù)據(jù)包含在NAS消息中(再包含在RRC消息中)傳送,在Uu由SRB傳送,并經(jīng)S1-C轉(zhuǎn)發(fā)給MME,此時(shí)S1-U不適用。

 

3GPP TS36.323:The PDCP entities are located in the PDCP sublayer. Several PDCP entities may be defined for a UE. Each PDCP entity carrying user plane data may be configured to use header compression. Each PDCP entity is carrying the data ofone radio bearer. In this version of the specification, only the robust header compression protocol (ROHC), is supported. Every PDCP entity uses atmost one ROHC compressor instance and at most one ROHC decompressor instance. A PDCP entity is associated either to the control plane or the user plane depending on which radio bearer it is carrying data for. For RNs, integrity protection and verification are also performedfor the u-plane. DRB:Data Radio Bearer carrying user plane data. SRB:Signalling Radio Bearer carrying control plane data.

 

DRB ID用來(lái)區(qū)分UE的多個(gè)DRB,取值范圍為1~32,但只表示取值有32種可能,并不表示UE可有32個(gè)DRB。MAC(Medium Access Control)層的邏輯信道(Logical Channel)僅在LCID=3~10用于DRB(LCID=1~2用于SRB),實(shí)際UE最多可有8個(gè)DRB。相應(yīng)的,UE最多可有8個(gè)EPS承載,或8個(gè)PDN連接。

郵遞服務(wù)有好有壞,無(wú)線承載也是這樣。比如,PDCP對(duì)控制面和用戶面都支持加密保護(hù),但只對(duì)用戶面支持RoHC(Robust Header Compression,頭壓縮協(xié)議,減少I(mǎi)P頭部占用資源),只對(duì)控制面支持完整性保護(hù)(在RN組網(wǎng)中也對(duì)用戶面支持完整性保護(hù))。另外,有些業(yè)務(wù)對(duì)時(shí)延敏感(例如語(yǔ)音通話和實(shí)時(shí)游戲),有些業(yè)務(wù)對(duì)可靠性敏感(例如IMS信令),可通過(guò)RLC(Radio Link Control)UM模式(Unacknowledged Mode)AM模式(Acknowledged Mode)滿足不同需求(部分實(shí)現(xiàn))。


在UE和eNB之間,真正傳送數(shù)據(jù)的是物理層的無(wú)線信道,DRB是在PDCP層上抽象出來(lái)的(用戶面)隧道,UE和eNB使用DRB ID區(qū)分UE的多個(gè)DRB。問(wèn)題是,eNB不只為一個(gè)UE服務(wù),eNB會(huì)向多個(gè)UE發(fā)送信號(hào),UE也會(huì)收到發(fā)送給其他UE的信號(hào),eNB和UE還需要其他UE ID(RNTI)進(jìn)行區(qū)分。E-UTRAN不是本系列的重點(diǎn)(重點(diǎn)是我不懂),這里不展開(kāi)講述,主要關(guān)注EPC部分。

 

比如在下行方向,RRC連接建立時(shí)eNB會(huì)給UE分配一個(gè)C-RNTI(Cell Radio Network Temporary Identity),UE使用C-RNTI對(duì)PDCCH(Physical Downlink Control Channel)解擾,通過(guò)DCI(Downlink Control Information)才能在相應(yīng)的位置解調(diào)自己的PDSCH(Physical Downlink Shared Channel),獲得自己的下行數(shù)據(jù)。

 

誰(shuí)是EPC的郵遞員?

 

在eNB和SGW之間、SGW和PGW之間通過(guò)IP網(wǎng)絡(luò)(Underlying IP Transport Network)互聯(lián),以IP Over IP方式傳送業(yè)務(wù)數(shù)據(jù)(作為底層IP網(wǎng)絡(luò)的Payload)似乎也可以。但是,和eNB相同,SGW和PGW不只為一個(gè)UE服務(wù),在IP Over IP方式中,要區(qū)分所有UE的所有承載,底層網(wǎng)絡(luò)IP地址再多都不夠用,就算加上傳輸層(TCP或UDP)端口也不夠。因而,EPS在傳輸層上又加了一層:GTP(GPRS Tunnelling Protocol)。實(shí)際上,S5還支持另一種隧道協(xié)議PMIP(Proxy Mobile IP,詳見(jiàn)RFC 5213),不過(guò)我沒(méi)接觸過(guò),所以……

 

MIPMobile IP,移動(dòng)IP。IP協(xié)議最初設(shè)計(jì)用于固定網(wǎng)絡(luò),IP地址同時(shí)作為標(biāo)識(shí)和地址使用,在移動(dòng)場(chǎng)景中會(huì)面臨尋址困難,為此IETF提出了移動(dòng)IP的概念,在網(wǎng)絡(luò)中增加了HA(Home Agent)和FA(Foreign Agent)角色,HA在FA的協(xié)助下維護(hù)MN(Mobile Node)的位置信息,負(fù)責(zé)對(duì)外收發(fā)數(shù)據(jù),并在HA和MN之間的隧道轉(zhuǎn)發(fā)數(shù)據(jù)。

 

PMIPProxy Mobile IP。HA轉(zhuǎn)變?yōu)?strong>LMA(Local Mobility Anchor),MAG(Mobile Access Gateway)作為MN的Proxy向LMA注冊(cè)。隧道在LMA和MAG之間建立,而MN對(duì)MIP的應(yīng)用沒(méi)有感知。在EPS中,如果UE從E-UTRAN接入,且S5應(yīng)用PMIP,則PGW是LMA角色而SGW是MAG角色。

注意:圖中有兩個(gè)IP層,一個(gè)是業(yè)務(wù)數(shù)據(jù)的IP層,即UE IP(暗綠色);一個(gè)是網(wǎng)元互聯(lián)的IP層,即NE IP(灰色)。前面提到,UEIP在EPS內(nèi)部沒(méi)有尋址的意義,對(duì)于EPS承載而言,UE IP只是用戶面數(shù)據(jù)的一部分,即payload的一部分。在EPS內(nèi)部更關(guān)注的是NE IP,即eNB、SGW和PGW用于GTP-U實(shí)體的IP。

 

GTP協(xié)議不是EPS引入的新事物。從名字可以看出,GTP是PS引入的協(xié)議。GTP共有3個(gè)版本:GTPv0、GTPv1GTPv2。GTPv1又可細(xì)分為GTP-C、GTP-U和GTP’三部分。GTPv0協(xié)議為GSM 09.60;GTPv1協(xié)議為3GPP TS 29.060;GTPv2-C協(xié)議為3GPP TS 29.274,GTPv2-U協(xié)議為3GPP TS 29.281。

 

更具體的,PS(UMTS)中用于控制面的是GTPv1-C,用于用戶面的是GTPv1-U,EPS中用于控制面的是GTPv2-C,用于用戶面的依然是GTPv1-U。GTPv1-U就是S1-U和S5-U的郵遞員。在本系列中,如果沒(méi)有特指的話,GTP-C表示GTPv2-C,GTP-U表示GTPv1-U。

 

GTP’用于GSN和OCS或CG之間傳送計(jì)費(fèi)數(shù)據(jù),本系列不涉及。從R8版本開(kāi)始,協(xié)議不再支持GTPv1和GTPv2回落到GTPv0,GTPv1實(shí)體和GTPv2實(shí)體可不再監(jiān)聽(tīng)GTPv0注冊(cè)端口3386,即使監(jiān)聽(tīng),也應(yīng)“安靜的”丟棄收到的GTPv0消息。

 

應(yīng)用GTPv1-U協(xié)議的網(wǎng)元(比如eNB、SGW和PGW)稱(chēng)為Peer(或Node),Peer包含1或多個(gè)GTU-U Protocol Entity,不同Peer的GTP-U Protocol Entity之間的連接稱(chēng)為UDP/IP Path(或GTP Path),UDP/IP Path包含0或多個(gè)GTP-UTunnel。S1承載和S5承載的實(shí)質(zhì)就是GTP-U Tunnel。

以S5-U接口為例,SGW和PGW是Peer。SGW或PGW有多少NE IP用于GTP-U,則有多少GTP-U Protocol Entity。具體實(shí)現(xiàn)中,某些廠家會(huì)配置多塊插板(U板)用于GTP-U業(yè)務(wù),每塊插板分配1個(gè)IP,則有多個(gè)GTP-U Protocol Entity。

 

GTPv1只能使用UDP/IP作為Path Protocol。盡管IP和端口共同定義了UDP/IP Path的Endpoint,個(gè)人認(rèn)為端口沒(méi)有起到區(qū)分Endpoint的作用 ——協(xié)議規(guī)定GTP-U消息的目標(biāo)UDP端口為2152,源UDP端口由發(fā)送方分配,實(shí)際上不同的源UDP端口并不會(huì)被認(rèn)為對(duì)應(yīng)不同的UDP/IP Path。比較簡(jiǎn)單(粗暴)的,可把GTP-U ProtocolEntity(和IP對(duì)應(yīng))看作UDP/IP Path的Endpoint,UDP更多的是體現(xiàn)在協(xié)議棧結(jié)構(gòu)中。

 

3GPP TS 29.060UDP/IP path is used to multiplex GTP tunnels. Path Protocol: protocol used as a bearer of GTP between GSNs or between a GSN and a RNC. UDP/IP Path:connection-less unidirectional or bidirectional path defined by two end-points.An IP address and a UDP port number define an end-point. A UDP/IP path carries GTP messages between GSN nodes,and between GSN and RNC nodes related to one or more GTP tunnels. UDP/IP is the only path protool defined to transfer GTP messages in the version 1 of GTP. The UDP Destination Port number shall be 2152.It is the registered port number for GTP-U. The UDP Source Port is a locally allocated port number at the sending GSN/RNC.


GTP Tunnel是包含在UDP/IP Path中的隧道,隧道兩端的Endpoint稱(chēng)為Tunnel Endpoint。為了區(qū)分同一UDP/IP Path包含的多個(gè)GTP Tunnel,兩端的GTP-U Protocol Entity會(huì)分配各自的Tunnel Endpoint ID,簡(jiǎn)稱(chēng)TEID。

 

GTP-C使用和GTP-U相同的隧道機(jī)制。GTP-C和GTP-U在多個(gè)接口應(yīng)用。因而,完整的描述一個(gè)Tunnel Endpoint應(yīng)包括接口(在哪兩個(gè)網(wǎng)元之間)、網(wǎng)元(在隧道的哪一側(cè))和協(xié)議(是GTP-C還是GTP-U)。比如,S5承載對(duì)應(yīng)的GTP-U Tunnel,在SGW一側(cè)的TEID是S5 SGW GTP-U TEID,在PGW一側(cè)的TEID是S5 PGW GTP-U TEID。另外,SGW和PGW可能有多個(gè)GTP-U Protocol Entity,需要結(jié)合IP和TEID才能完整的描述Peer上的一個(gè)Tunnel Endpoint,IP TEID的組合稱(chēng)為Fully Qualified TEID,簡(jiǎn)稱(chēng)F-TEID

 

TEID就像一個(gè)臨時(shí)郵箱號(hào)。

 

你又,又,又寫(xiě)信給小甜甜。你們是大學(xué)同班同學(xué),男生們住在A校區(qū)(SGW)2號(hào)樓(IP1),女生們住在B校區(qū)(PGW)3號(hào)樓(IP2),兩邊各有一個(gè)樓長(zhǎng)(GTP-U ProtocolEntity)負(fù)責(zé)從同學(xué)們(User Plane Entity)和郵遞員(Path Protocol Entity)收發(fā)信件。

 

這么多女生,怎么確保信件會(huì)交到小甜甜手里呢?B-3樓長(zhǎng)給小甜甜分配一個(gè)臨時(shí)郵箱號(hào)(S5 PGW GTP-U TEID),比如說(shuō)12號(hào),A-2樓長(zhǎng)也給你分配一個(gè)臨時(shí)郵箱號(hào)(S5 SGW GTP-U TEID),比如說(shuō)5號(hào)。你把信件扔進(jìn)5號(hào)郵箱,A-2樓長(zhǎng)取出后加上一個(gè)信封,地址寫(xiě)上B-3樓(IP)12號(hào)郵箱(TEID),B-3樓長(zhǎng)收到后放進(jìn)12號(hào)郵箱,小甜甜去12號(hào)郵箱取就好了。反向也是如此。

 

可是,A-2樓長(zhǎng)怎么知道地址(F-TEID)要寫(xiě)B(tài)-3樓12號(hào)信箱呢?顯然,在此之前B-3樓長(zhǎng)要通過(guò)其他渠道(Control Plane)將這個(gè)信息告知A-2樓長(zhǎng)。在PGW和SGW之間,F(xiàn)-TEID通過(guò)GTP-C交換;在SGW和eNB之間,F(xiàn)-TEID通過(guò)GTP-C和S1AP交換(SGW和eNB之間沒(méi)有直達(dá)的控制面路徑,需要通過(guò)MME間接交換);在SGSN和RNC之間,F(xiàn)-TEID通過(guò)RANAP交換。

 

小甜甜的郵箱是B-3樓長(zhǎng)分配的,但實(shí)際是給A-2樓長(zhǎng)發(fā)送時(shí)使用的。同樣,PGW分配的TEID,實(shí)際是給SGW發(fā)送GTP數(shù)據(jù)時(shí)使用的,反向也是如此。User Plane Entity發(fā)給GTP-U Protocol Entity的是原始的業(yè)務(wù)數(shù)據(jù),稱(chēng)為T-PDU,GTP-U Protocol Entity在T-PDU前加上GTP Header構(gòu)成G-PDU,TEID字段寫(xiě)入對(duì)端GTP-U Protocol Entity分配的TEID。Path Protocol Entity在G-PDU前加上UDP Header和IPHeader構(gòu)成IP分組,再通過(guò)IP網(wǎng)絡(luò)發(fā)送給對(duì)端。

 

3GPP TS 29.281GTP-U Tunnels are used to carry encapsulated T-PDUs and signalling messages between a given pair of GTP-U Tunnel Endpoints. The TunnelEndpoint ID (TEID) which is present in the GTP header shall indicate whichtunnel a particular T-PDU belongs to. In this manner, packets are multiplexedand de-multiplexed by GTP-U between a given pair of Tunnel Endpoints. The TEIDvalue to be used in the TEID field shall be signalled to the peer GTP-U entity using a control plane protocol like GTPv1-C,GTPv2-C, RANAP or S1-AP.

 

有意思的是,GTP Header只包含接收方TEID,并不包含發(fā)送方TEID,接收方GTP-UProtocol Entity也不驗(yàn)證發(fā)送方TEID。也就是說(shuō),小甜甜只管從12號(hào)信箱取出信件,至于信件是不是你發(fā)出來(lái)的,就管不了那么多了??梢?jiàn),GTP Tunnel的Endpoint是成對(duì)定義的,但兩個(gè)Endpoint的關(guān)系有些松散。

 

這帶來(lái)一個(gè)安全隱患 —— 只要知道小甜甜的郵箱號(hào),誰(shuí)都可以給小甜甜發(fā)信,而且小甜甜認(rèn)為都是你發(fā)的。為了安全起見(jiàn),小甜甜的郵箱號(hào)只能臨時(shí)分配,并且最好是隨機(jī)分配,以免攻擊者輕易猜到。同樣,TEID在建立GTP-U Tunnel時(shí)才分配,且最好隨機(jī)分配(The TEID valueshall be assigned in a non-predictable manner),以免攻擊者通過(guò)上一個(gè)TEID猜測(cè)到下一個(gè)TEID。同時(shí),GTP-U Tunnel釋放后TEID會(huì)回收,和UE的關(guān)聯(lián)結(jié)束。

 

隨機(jī)分配TEID是GTPv1相對(duì)于GTPv0的改進(jìn)之一,GTPv0中TEID簡(jiǎn)單的依次增長(zhǎng),容易被受到“確定性攻擊”。不過(guò),即使是GTPv1和GTPv2,隨機(jī)分配TEID也只是 “指導(dǎo)性原則”,設(shè)備廠家不一定會(huì)完全實(shí)現(xiàn)。我曾觀察過(guò)某PGW給同一個(gè)UE連續(xù)建立專(zhuān)用承載的過(guò)程,PGW分配的S5 PGW GTP-C TEID前幾位看上去沒(méi)什么規(guī)律,但始終是相同的,只有最后一位(16進(jìn)制顯示)依次遞增,每16次完成一輪循環(huán),攻擊者一開(kāi)始可能猜不到TEID,但接下來(lái)就不是那么難了。

 

GTP Tunnel的本意是,只有你發(fā)信給小甜甜,也只有小甜甜發(fā)信給你。也就是說(shuō),如果SGW和PGW之間建立了GTP-U Tunnel,除了GTP-U Tunnel的兩個(gè)Tunnel Endpoint外,其他Endpoint(其他Peer的Endpoint)不應(yīng)向這兩個(gè)Endpoint發(fā)送數(shù)據(jù)。不過(guò),也有例外,UE在切換過(guò)程中,SGW如果發(fā)生變化,上行數(shù)據(jù)會(huì)從New SGW(所謂其他Endpoint)發(fā)給PGW,而下行數(shù)據(jù)依然從PGW發(fā)給OldSGW,在切換后再發(fā)給New SGW。在PGW改變下行路徑前,上行數(shù)據(jù)和下行數(shù)據(jù)實(shí)際上通過(guò)不同的UDP/IP Path發(fā)送??梢?jiàn),由于Tunnel Endpoint的松散關(guān)系,EPS承載的上行方向和下行方向分開(kāi)來(lái)看會(huì)更清晰。

發(fā)送方TEID對(duì)接收方來(lái)說(shuō)沒(méi)啥存在感,發(fā)送方IP似乎也可以忽略 —— 其實(shí)不然,如果UDP/IP Path包含GTP-U Tunnel,GTP-U Protocol Entity可根據(jù)發(fā)送方IP向?qū)Χ税l(fā)送Echo Request,如果收到Echo Response,則說(shuō)明UDP/IP Path正常。Echo Request是UDP/IP Path級(jí)別的維護(hù)消息,即使UDP/IP Path包含多個(gè)GTP-U Tunnel,也只需要周期性的發(fā)送一個(gè)Echo Request(周期通常為60秒)。GTP Echo機(jī)制相對(duì)于Ping的優(yōu)點(diǎn)在于不僅探測(cè)對(duì)端IP是否可達(dá),還探測(cè)對(duì)端GTP-U Protocol Entity是否可達(dá),對(duì)于故障定界很有幫助。GTP-C同理。

 

即使UDP/IP Path包含的GTP-U Tunnel全部釋放,GTP-U Protocol Entity也要準(zhǔn)備好接收Echo Request和返回Echo Response。舉個(gè)例子,如果eNB和SGW之間建立了S1承載,eNB和SGW就會(huì)發(fā)送EchoRequest,在E-RAB釋放后,eNB和SGW之間可能沒(méi)有任何GTP-U Tunnel,某些廠家eNB會(huì)繼續(xù)向SGW發(fā)送EchoRequest,以確定SGW的GTP-U ProtocolEntity是否可達(dá),當(dāng)SGW有多個(gè)GTP-U ProtocolEntity(多塊U板,各分配1個(gè)IP)時(shí),U板倒換可能會(huì)導(dǎo)致eNB產(chǎn)生不必要的告警,因?yàn)楣收蟄板雖然已經(jīng)退服(且不影響業(yè)務(wù)),但eNB會(huì)探測(cè)到故障U板的GTP-U Protocol Entity不可達(dá)。

 

除了Echo Request和Echo Response,還有一個(gè)Path管理消息:Supported Extension Header Information,用于指出GTP實(shí)體支持的擴(kuò)展頭類(lèi)型。一個(gè)典型的擴(kuò)展頭例子:X2切換中X2接口傳送的未確認(rèn)的PDCP數(shù)據(jù),PDCP SN會(huì)由GTP擴(kuò)展頭(PDCPPDU Number)攜帶。

 

除了Path管理消息,還有Tunnel管理消息:Error Indication和End Marker。如果GTP-U實(shí)體收到TEID不匹配的G-PDU,GTP-U實(shí)體應(yīng)向?qū)Χ税l(fā)送Error Indication。在切換場(chǎng)景中,SGW或PGW收到更新下行F-TEID的MBR(GTP-C消息)后,應(yīng)向原有下行路徑發(fā)送End Mark(GTP-U消息),指示eNB或SGW從新建下行路徑接收數(shù)據(jù)。Path管理消息和Tunnel管理消息不攜帶T-PDU,不屬于G-PDU,報(bào)文格式詳見(jiàn)3GPP TS 29.281。

 

最后,eNB和SGW通過(guò)映射(Mapping)將無(wú)線承載、S1承載和S5承載串接起來(lái),再和ULTFT、DL TFT關(guān)聯(lián),就完成了EPS承載的完整實(shí)現(xiàn)。如下圖所示,UE將UL TFT和RB ID(無(wú)線承載)關(guān)聯(lián);eNB將RB ID(無(wú)線承載)和S1 eNB GTP-U TEID(S1承載)關(guān)聯(lián);SGW將S1 SGW GTP-U TEID(S1承載)和S5 SGW GTP-U TEID(S5承載)關(guān)聯(lián);PGW將DL TFT和S5 PGW GTP-U TEID(S5承載)關(guān)聯(lián)。

3GPP TS 23.401:An EPS bearer is realized by the following elements: A UE stores a mapping between an uplink packet filter and a radio bearer to create the mapping between a traffic flow aggregate and a radio bearer in the uplink; A PDN GW stores a mapping between a downlink packet filter and an S5/S8 bearer to create the mapping between a traffic flow aggregate and an S5/S8 bearer in the downlink; An eNodeB stores a one-to-one mapping between a radio bearer and an S1 Bearer to create the mapping between a radio bearer and an S1 bearer in both the uplink and downlink; A Serving GW stores a one-to-one mapping between an S1 Bearer and an S5/S8 bearer to create the mapping between an S1 bearer and an S5/S8 bearer in both the uplink and downlink. (Uu承載、S1承載和S5承載的關(guān)聯(lián))

 

3GPP TS 23.401:An EPS bearer is realized by thefollowing elements: In the UE, the UL TFT maps a traffic flow aggregate to an EPS bearer in the uplink direction; In the PDN GW, the DL TFT maps atraffic flow aggregate to an EPS bearer in the downlink direction.

 

這一篇講述了EPS承載的構(gòu)成和GTP-U的應(yīng)用,包括Uu承載、S1承載、S5/S8承載的概念、E-RAB、ERAB ID和DRB ID的概念,GTP-U隧道的概念、TEID的分配和作用。下一篇將開(kāi)始講述PDN連接和默認(rèn)承載的建立過(guò)程。


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多