簡介
(Unstructured Supplementary Service Data)即非結構化補充數據業務,是一種新型基於GSM網路的互動式數據業務.
當你使用手機鍵盤輸入一些網路已預先制定的數字或者符號比如*#等,再按send也就是撥號鍵就可以向網路傳送一條指令,網路根據你的指令選擇你需要的服務提供給你。
詳述
介紹了USSD的背景和特點,並與短訊息、GPRS和WAP相比較,論述了其在工業套用上的可行性及優點,並以中電五十所成功運營在烏魯木齊的無線遠程監控系統為例,講述了USSD在工業套用中的系統結構、接口協定和通信流程。
關鍵字:非結構化補充數據業務 通用分組無線業務 業務提供者中國移動點對點
非結構化補充數據業務USSD(Unstructured Supplementary Service Data)是一種基於全球移動通信系統GSM(Global System for Mobile Communications)網路的、實時線上的新型互動會話數據業務;它基於用戶識別模組SIM(Subscriber Identity Module)卡,利用GSM網路的信令通道傳送數據,是在GSM的短訊息系統技術基礎上推出的新業務,在業務開拓方面的能力遠遠強於SMS系統。
USSD技術單獨使用或與目前的短訊息技術、通用分組無線業務GPRS(General Packet Radio Service)技術相結合,可為客戶提供種類繁多的增值業務,如移動銀行、金融股票交易、手機話費查詢、氣象信息預報和查詢、收發電子郵件、航班查詢、網上訂票、民意測驗等。採用USSD對原有系統結構影響較小,且運營商還可以針對本地網的具體情況靈活地推出功能業務,方便地為移動用戶提供各類數據業務;另外USSD不僅可用於一些信息服務,利用移動運營商提供的通信網路,也可套用於工業範圍,USSD的套用可使工業監控通信的範圍大大擴展,功能增強,成本降低,所以這種業務在香港特區、新加坡等國家和地區已有廣泛的套用,在我國也有廣闊的套用前景。
1 USSD的特點及與其他業務的比較
USSD系統與短訊息業務SMS(Short Message Service)、GPRS和無線套用協定WAP(Wireless Application Protocol)的套用範圍相似,但有其自己的特點。
USSD在通話狀態下使用獨立專用控制信道SDCCH(Stand-alone Dedicated Control Channel),數據傳輸速率大約為600bps;而非通話狀態時,USSD使用快速輔助控制信道FACCH(Fast Associated Control Channel),數據傳輸速率大約為1kbps,比SMS傳輸速率高。目前,用戶只能在非通話狀態下使用WAP,數據通過業務信道TCH(Traffic Channel)進行交換,其傳輸速率大約為9.6kbps,目前WAP的回響時間較慢,且需專門的WAP手機支持。
USSD在會話過程中一直保持通話連線,提供透明通道,不進行存儲轉發;而SMS在物理承載層沒有會話通道,是一個存儲轉發系統,用戶完成一次查詢需要進行多次會話過程。由於USSD與GPRS類似,在互動中保持一個會話過程,每次數據傳送不需要重新建立信道,所以USSD系統對用戶的呼叫請求是即時回響,使回響時間大大加快,主要的回響時延已轉移為套用伺服器一端, 回響時間比短訊息快。
USSD在互動式會話中可以提供直觀的選單操作,方便用戶使用,在一次信息服務中,只需要撥打服務號碼,以後就可以按選單提示進行下一步操作,可以建立類似WAP的入口網站來提供電信增值服務。
USSD和GPRS適合不同的用戶群。在工業環境下,在通信量不大、每次通信量只有幾K數據量的情況下使用USSD的費用低廉;而GPRS傳送頻寬高,適用於信息量大的數據傳輸。
現在市面上的手機大多支持USSD服務。在工業套用中,大多具有SMS和GPRS功能的通信模組或晶片也支持USSD服務。
2 USSD在工業套用中的系統結構
如圖1,監控中心通過Internet或專線與USSD平台建立TCP/IP連線,USSD傳輸終端通過GSM的公用網路與USSD平台建立無線連線,通過USSD平台與GSM網路、監控中心和現場監控單元建立起一個數據通信的通道。在移動USSD平台中有資料庫備份數據,監控中心除套用平台外,還可備有有線瀏覽器進行監測。透過GSM網路和USSD平台,無線瀏覽器和手機也可與監控中心建立聯繫。
圖1 USSD系統結構圖
其中,USSD伺服器有兩個網路接口分別對應于歸屬位置暫存器HLR(Home Location Register)和區域網路:一方面,它通過七號信令SS7(Signalin
System No.7)的移動套用部分Map(Mobile Application Part)與GSM系統的HLR連線;另一方面,它通過專線以傳輸控制協定/ 網際協定TCP/IP(Transfer Control Protocol/Internet Protocol)與套用監控中心連線。套用監控中心與USSD伺服器的接口協定可為短訊息點對點SMPP(Short Message Peer to Peer)或中國移動點對點CMPP(China Mobile Peer to Peer)。GSM系統及USSD均起透明通道的作用,監控中心可以發出指令,對終端或手機進行通信控制或傳送短訊息,手機或終端也可通過USSD服務來對監控中心發出請求以得到相應的服務。通信通道建立之後,就可以象一般的工業匯流排一樣,監控中心對遠程終端進行三遙操作,終端也可以主動上報報警、開機等信息。
3 USSD的接口協定
USSD的接口協定與短訊息類似,採用SMPP或CMPP。SMPP是國際通用的協定,CMPP是中國移動根據我國情況在SMPP基礎上自己制定的協定,二者體系結構大體相同,套用範圍也相同,但數據包的格式及內容有一定的差異。CMPP在2003年6月30日版本已升到了3.0。
兩者的訊息均分為訊息頭和訊息體,其中訊息頭長度是固定的。主要信息為訊息總長度、命令類型和訊息流水號。命令類型用來說明訊息的類型是連線,還是由USSD中心到業務提供者SP(Service Provider)的訊息或由SP到USSD中心的訊息,下線及其回應等。訊息流水號順序累加,步長為1,循環使用,一對請求和應答訊息的流水號必須相同。在SMPP中還有一個請求訊息的回應是否成功的狀態信息,而在CMPP中相應信息放到了訊息體中。訊息體則根據訊息的類型和內容來決定長度和數據,但其所攜帶的自定義信息長度不超過160個位元組,自定義信息即平時通過手機輸入或接收的短訊息內容或工業通信中的自定義通信規約部分。相對於SMPP而言,CMPP增加了許多信息,尤其是計費和號碼的信息。
以下是採用CMPP的USSD訊息在VB中的結構定義:
Type UssdCmppMsgStruct
′------------Message Header
Total_Length As Long′訊息總長度(含訊息頭和訊息體)
Command_Id As Long′命令類型
Sequence_Id As Long ′訊息流水號
′---------------Message Body
Msg_Id(7) As Byte ′信息標識
Pk_Total As Byte′相同Msg_Id的信息總條數
Pk_number As Byte ′相同Msg_Id的信息序號
Registered_Delivery As Byte ′是否要求返回狀態確認報告
Msg_level As Byte ′信息級別
Service_Id(9) As Byte ′業務類型
Fee_UserType As Byte′計費用戶類型
TP_pId As Byte ′GSM協定類型
TP_udhi As Byte ′GSM協定類型
Msg_Fmt As Byte ′信息格式
Msg_src(5) As Byte′信息內容來源
FeeType(1) As Byte′資費類別
FeeCode(5) As Byte′資費代碼
ValId_Time(16) As Byte ′存活有效期
At_Time(16) As Byte ′定時傳送時間
Src_Id(20) As Byte′源號碼
DestUsr_tl As Byte′接收信息的用戶數量
Dest_terminal_Id() As Byte ′接收USSD信息的MSIS-DN號碼,length=21*DestUsr_tl
Msg_Length As Byte′信息長度 <160 byte
Msg_Content() As Byte ′信息內容
USSD_TYPE(7) As Byte′USSD會話類型
End Type
4 USSD的通信過程
在工業套用的監控中心和USSD伺服器接口的兩種協定中,儘管SMPP和CMPP的數據包格式不大相同,但二者的流程大體相同。在目前USSD的套用中,大部分是套用在信息資訊等電信增值服務中,在工業的套用中還不多,但由於USSD業務的方便快捷、費用低廉等優勢,在工業套用中的前景大有可為。
在USSD的通信會話過程中有兩種方式,由手機或終端發起的會話連線和由套用平台或監控中心發起的對話連線,以下介紹兩種流程。
首先,在兩種連線流程中,監控中心都要與USSDC(USSD Center)先建立一個連線,一般採用長連線。所謂長連線,指在一個TCP連線上可以連續傳送多個數據包。監控中心發出連線請求,USSDC收到後給予回應,監控中心收到回應後,就表明USSDC到監控中心的通路已經搭建好了,這個通路在平時一直保持連線,線上路空閒時要傳送鏈路檢測包及其回應以維持此連線。當信道上沒有數據傳輸時,通信雙方應每隔時間C傳送鏈路檢測包以維持此連線,當鏈路檢測包發出後超過時間T未收到回響,應立即再傳送鏈路檢測包,再連續傳送N-1次後仍未得到回響則斷開此連線。參數C、T、N原則上可配置,現階段中國移動的建議取值為:C=3min,T=60s,N=3。數據包採用並發方式傳送,加以滑動視窗流量控制,視窗大小參數W可配置,現階段中國移動的建議值為16,即接收方在應答前一次收到的數據包最多不超過16條。
圖2 終端發起的會話示意圖
4.1 終端發起的會話
如圖2,RTU為手機或帶GSM通信功能的終端,SP為監控中心。RTU通過USSDC發給SP的命令都是DELIVER命令,SP用SUBMIT命令通過USSDC把訊息傳給RTU。DELIVER和SUMBIT都是 SMPP與CMPP中的命令類型,具體數據格式可參見SMPP或CMPP協定。在USSD套用中有一個欄位的數據是短訊息套用中沒有用到的,用來說明DELIVER和SUBMIT的命令參數,在CMPP中是Service_Id,在SMPP中是Servid_Type,在本文中稱為USSD_TYPE,易於理解。不同的交換機使用的USSD_TYPE內容可能不一樣,這裡以新疆移動使用的USSD伺服器為例說明。
(1)終端或手機撥打運營商提供的服務號(例:*139*1#),通過USSDC傳送給SP一條請求連線命令DELIVER(REQUEST_CONNECT),USSD_TYPE參數的內容為“PSSRR”,傳送一個移動到套用的會話請求。
(2) SP收到後傳送SUBMIT(REPLY),USSD_TYPE的內容為“USSRR”,RTU收到信息後即與SP建立起一次會話連線,SP在此命令中把訊息傳送到手機上,可以提供直觀的選單方式讓用戶決定下一步的操作,如在新疆烏魯木齊運行的監控系統中,把某些相關人員的手機設定後,這些手機就可以通過撥打專用服務號,與監控中心建立起一次會話連線。手機上馬上會顯示“歡迎進入本系統:1.系統介紹;2.數據查詢;3.故障查詢;4.退出”。
(3) 用戶可通過選單提示按鍵來獲得想要的服務,USSDC收到請求後向SP傳送 DELIVER(SERVICE_REQUEST),USSD_TYPE為“USSRC”,傳送從移動到套用的一個USSR相應,用戶的回覆信息可在此命令中傳給SP。如第(2)步驟,手機可按“1“鍵向SP傳送進入系統介紹界面的請求。
(4) SP收到請求後,與第(2)步驟一樣,傳送SUBMIT(REPLY)命令,將系統介紹文字選單傳送到手機上,用戶可重複在第(3)和第(4)步驟間多次互動,獲取想要的信息。
(5) 最後完成手機發出斷開請求,如在主選單上按“4”選擇退出,USSDC傳送DELIVER(RELC)命令給SP,USSD_TYPE為“RELC”,傳送結束會話命令給SP。
(6) SP傳送SUBMIT(FINISH)命令,USSD_TYPE為“USSNR”,在該命令中附帶“歡迎再次使用”等結束語的訊息,手機收到後與SP結束一次會話過程。也可以由SP傳送SUBMIT(RELR),USSD_TYPE為“RELR”,主動斷開會話。
在整個通信過程中,RTU與SP保持連線,直接對話,速度比短訊息快得多。用戶只需撥打專用號碼,就可以根據選單進行下一步操作,進行遠程訪問並查詢各個遠程監控終端的數據和故障,及時掌握第一手資料。當然也可根據用戶要求,在SP的程式中加入遠程遙控或其它擴展功能。
4.2 SP發起的連線
在工業套用中,大部分的通信過程是由監控中心發起的,下面終端發起的會話主要是一些突發事件(開機申請、主動報警等)。一些平時主要的通信任務(遙測、遙控等)都是由監控中心發起的,終端收到後給予回應,尤其是一些應急處理更需要由監控中心主動發起。這種會話方式的實現需詢問當地移動運行商是否支持。
如圖3,結合一次遙測數據來說明SP發起的會話通信流程。
圖3 SP發起的會話示意圖
(1)在監控中心發起的會話連線過程中,監控中心先把連線請求傳送到USSDC,傳送SUBMIT(REQUEST_CONNECT),USSD_TYPE為“OPEN
R”, 表示SP希望打開一個與RTU的新對話。
(2)USSDC收到後回復DELIVER(REPLY_CONNECT),USSD_TYPE為“OPENC”,表示USSDC接受SP打開一個與移動用戶的新對話的請求,此時並不表示已經成功地與移動用戶建立起該對話。
(3)SP收到USSDC的會話請求回應後傳送SUBMIT(COMMAND),USSD_TYPE為“USSRR”,在該命令的訊息體中帶著自定義通信規約的數據,即向終端傳送遙測命令。
(4)終端在收到遙測命令後,一次會話已經成功建立,終端採集數據後,用與短訊息類似的方式將數據傳送到USSDC,USSDC將數據放到DELIVER的訊息體中,以DELIVER(REPLY)命令傳送給SP,USSD_TYPE是“USSRC”。
(5)監控中心收到數據後處理數據,傳送SUBMIT(RELR),USSD_TYPE為“RELR”,斷開這次會話,完成一次遙測操作。
在某些工業套用中,如在集中監控中,有時需要在短時間對一組監控終端進行同一操作, 由於每次會話中包含一定的等待回應的時間,如果對每一個終端都一個個單獨操作,那么所有終端操作下來將需要耗費不少的時間,這樣就不能保證操作回響的及時性。鑒於USSDC具有可以同時建立多個連線的功能以及在一次會話中,如在時間T內監控中心與終端之間無通信量(T可以由伺服器廠商或移動設定,如新疆移動設為10s),USSDC可以將全部終端分為若干組,同一組終端都先全部建立好連線,再一個個傳送數據,這樣就可以減少等待回應的時間,提高操作的效率。
在我國,USSD在工業上的套用剛剛興起,由中國電子科技集團公司第五十研究所開發的無線遠程監控系統採用了USSD為主、短訊息為輔的通信方式,已經在新疆烏魯木齊市成功運營。該系統USSD協定採用SMPP 3.4。另外,在其它幾個城市的遠程監控系統中,也採用了USSD為主的通信方式,在有些地方採用CMPP 2.0協定,協定的採用主要是與當地的運營商配合協商而定。
參考文獻
1中國移動通信集團公司.中國移動通信網際網路簡訊網關接口協定(CMPP) v2.0【S】.2002,4
2 SMPP Developers Forum. Short Message Peer to Peer Proto-col Specification v3.4【S】. Issue 1.2.1999
3 中國移動通信集團公司.中國移動通信USSD業務接口協定【S】.2003