基于GSM/GPRS的IP協(xié)議提供了與互聯(lián)網(wǎng)“永遠(yuǎn)在線”的可能性,使之成為一種節(jié)約成本的選擇。為了開發(fā)基于IP協(xié)議的應(yīng)用,系統(tǒng)設(shè)計師需要同時通曉無線網(wǎng)絡(luò)和TCP/IP協(xié)議。本文將詳細(xì)介紹支持TCP/IP協(xié)議和嵌入式應(yīng)用的索尼愛立信模塊及其應(yīng)用實例。
各種各樣的接入技術(shù)被用于無線網(wǎng)絡(luò)。在FDMA技術(shù)中,每個用戶被分配一個頻率,而TDMA技術(shù)則通過時間分隔用戶。在CDMA技術(shù)中,所有用戶在同一時間使用同一頻段發(fā)送信號,分隔用戶通過各自被分配到的唯一代碼來實現(xiàn)。在2G系統(tǒng)中,數(shù)據(jù)傳輸主要是通過電路交換,即一個被分配給用戶的傳輸信道,當(dāng)一個用戶完成傳輸任務(wù)、讓出信道后,該傳輸信道才被提供給其他用戶使用。由于猝發(fā)性是數(shù)據(jù)業(yè)務(wù)的基本特征,當(dāng)一個用戶不再有數(shù)據(jù)傳輸時,寬帶就處于荒廢狀態(tài)中。在分組交換系統(tǒng)中,所有用戶分享同一個信道,用戶則可以實現(xiàn)多路復(fù)用的功能。當(dāng)一個用戶沒有需要傳輸?shù)臄?shù)據(jù)時,信道就會被其他用戶所使用。信息包的傳輸方法可通過媒體存取控制(MAC)協(xié)議被編排。
在互聯(lián)網(wǎng)上的信息包傳輸全部基于IP協(xié)議。無線網(wǎng)絡(luò)將與互聯(lián)網(wǎng)整合,信息包通過無線媒介無縫地傳輸至基于IP協(xié)議的網(wǎng)絡(luò),在傳輸前,為了能直接到達(dá)指定目的地,數(shù)據(jù)包必須根據(jù)TCP/IP協(xié)議封裝。在GPRS網(wǎng)絡(luò)中也采取了IP協(xié)議進(jìn)行傳輸。
就服務(wù)的靈活性來說,幾乎所有的GSM模塊都可以連接到GPRS網(wǎng)絡(luò)。通常情況下,根據(jù)TCP/IP協(xié)議棧的信息打包功能并不是模塊特征的一部分。在通過模塊發(fā)送數(shù)據(jù)前,TCP/IP協(xié)議棧必須事先被開發(fā),然而,只有很少的模塊具有內(nèi)嵌式的TCP/IP協(xié)議棧,數(shù)據(jù)可以通過模塊直接被發(fā)送。如此一來,應(yīng)用開發(fā)周期被縮短,其執(zhí)行能力也在很大程度上得到提高。
本文將簡要介紹TCP/IP協(xié)議及在GPRS網(wǎng)絡(luò)中實現(xiàn)TCP/IP的必要條件,詳細(xì)敘述支持TCP/IP協(xié)議和嵌入式應(yīng)用的索尼愛立信模塊及其應(yīng)用實例。
基于GPRS的TCP/IP協(xié)議
TCP/IP是為協(xié)同操作計算機(jī)、分享網(wǎng)絡(luò)資源的一套協(xié)議。該協(xié)議成員包括IP、TCP、UDP等。TCP確保數(shù)據(jù)的正確傳送,如果對于一個信息包來說,數(shù)據(jù)量太大,TCP則可將其分成若干組。IP被用來為信息包到達(dá)另一端尋找通道,每一個與網(wǎng)絡(luò)相連接的工作站都有一個唯一IP地址,該IP地址為一個32位數(shù),它通常被寫成四個十進(jìn)制數(shù)字,每一個代表8位,例如,165.21.32.70是索尼愛立信網(wǎng)站服務(wù)器的一個IP地址。
TCP/IP是一個無連接協(xié)議,信息以分組方式進(jìn)行傳輸,信息包的最大容量在初始化過程中得以商定。如果信息超出其最大容量,則將被分成若干組分別傳送。信息包未得以按順序傳送甚至丟失及再次轉(zhuǎn)發(fā)的可能性是存在的,因此,TCP必須將序號、信息來源和目的地通道數(shù),以及其他信息添加進(jìn)數(shù)據(jù)包中,被稱為TCP包頭。接收器端將利用該信息來檢測數(shù)據(jù)包是否被正確地接收,從而加以整理。要直接將信息包發(fā)送至正確的工作站,僅有TCP包頭,是不充分的。一個IP報頭必須被加在TCP包頭之上,源地址和目的地址被包括在IP包頭里。發(fā)送信息包至目的地,計算機(jī)將首先核對其自身的路由列表,如果目的地在自己的網(wǎng)絡(luò)內(nèi),它將直接發(fā)送信息包。否則,它將發(fā)送信息包至網(wǎng)關(guān),每一個網(wǎng)關(guān)都有一個路由列表,信息包將通過幾個單獨(dú)的路由節(jié)點(diǎn)到達(dá)目的地址。
GPRS網(wǎng)提供網(wǎng)絡(luò)功能將IP信息包從移動用戶點(diǎn)傳送至外部網(wǎng)絡(luò)。GPRS可以為IP地址提供多重選擇,包括公共地址、專用地址以及客戶代理地址。指定IP地址選擇權(quán)的GPRS機(jī)制被稱為接入點(diǎn)域名(APN)。
圖1顯示了基于GSM/GPRS的TCP/IP系統(tǒng)結(jié)構(gòu)。因為IP地址的整體供應(yīng)受到限制,一個GPRS網(wǎng)絡(luò)提供商通常使用專用的、可動態(tài)分配地址,然而,公共網(wǎng)址選擇可由專門的客戶提供,專用網(wǎng)址則無法越過公共網(wǎng)進(jìn)行操作。為連接公共網(wǎng)絡(luò),專用網(wǎng)址被轉(zhuǎn)換成公共網(wǎng)址。該轉(zhuǎn)換通過一個節(jié)點(diǎn)發(fā)生,該節(jié)點(diǎn)是專用的網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)。多重專用地址可被映射成一個公共地址,對于基于IP協(xié)議的應(yīng)用,和有線網(wǎng)絡(luò)一樣,在無線網(wǎng)絡(luò)中它們以相同的方式工作。當(dāng)GPRS對話啟動時,大多數(shù)服務(wù)提供商也將監(jiān)控數(shù)據(jù)的傳輸流量,如果在特定的一段時間內(nèi)沒有數(shù)據(jù)傳輸,其連接將被斷開。
因為TCP/IP信息包是通過GSM網(wǎng)傳輸?shù),所以,必須考慮TCP/IP協(xié)議棧的一些參數(shù)配置。基于GPRS的TCP應(yīng)當(dāng)支持適當(dāng)?shù)拇翱诔叽缫岳趦?yōu)化端對端連接的帶寬延遲,默認(rèn)接收和發(fā)送緩沖器比例應(yīng)當(dāng)增加到容納足夠大的窗口,被銜接層支持的IP數(shù)據(jù)包的最大值是最大傳輸單元(MTU)。在高誤碼率的鏈路上,較小的MTU尺寸增加了成功傳輸?shù)臋C(jī)會,默認(rèn)IP最大傳輸單元值為576字節(jié)。依據(jù)鏈路條件和ARQ的配置,它有可能增加MTU大小到一個較大的值,一個較大的MTU允許TCP更快地增加擁擠窗口。對于基于GPRS的TCP/IP協(xié)議的設(shè)計,設(shè)計師必須考慮到這些問題。
索尼愛立信機(jī)對機(jī)通信模塊
很多GSM模塊可以通過GSM/GPRS直接接入互聯(lián)網(wǎng),如果模塊上沒有TCP/IP協(xié)議棧,它則必須在其應(yīng)用或外圍的微處理器中體現(xiàn)。索尼愛立信GR47/48模塊正是一種內(nèi)置TCP/IP協(xié)議棧的模塊之一。為開發(fā)基于GSM/GPRS網(wǎng)的TCP/IP應(yīng)用,索尼愛立信提供了一套完整工具,其機(jī)對機(jī)通信商業(yè)解決方案(M2mpower Business Solution)是一個強(qiáng)有力的支持環(huán)境,專為促進(jìn)提高成本效益比率的無線機(jī)對機(jī)應(yīng)用的研發(fā)而設(shè)計。M2mpower使開發(fā)者通過運(yùn)用特定的開發(fā)工具,能夠更容易地將無線應(yīng)用直接嵌入兼容的索尼愛立信機(jī)對機(jī)產(chǎn)品中。M2mpower與可編程無線器件GR47/48一同被引入,其腳本語言是建立在工業(yè)級ANSI C語言的基礎(chǔ)之上,使開發(fā)者將現(xiàn)有的應(yīng)用可以平滑地轉(zhuǎn)換到M2mpower。
圖2顯示了GR47實時操作系統(tǒng)的結(jié)構(gòu)。新款可編程無線模塊GR47/48提供了完整全面的功能。該模塊包括一個內(nèi)置TCP/TP協(xié)議棧,以便更有效地使用GPRS。它允許一個TCP/UDP傳輸機(jī)制以最小的前期配置和操作來被使用。其內(nèi)嵌控制器方便集成客戶的應(yīng)用,減少外部控制器的需求,例如在報警、儀表抄送和自動售貨等應(yīng)用上。GR47和GR48分別支持雙頻GSM寬帶900MHz/1800MHz和850MHz/1900MHz,它們都可通過SMS短消息服務(wù)、CSD、HSCSD或GPRS來發(fā)送或接收數(shù)據(jù),并可處理語音及傳真。其TCP/IP協(xié)議棧亦可通過AT命令或嵌入式應(yīng)用進(jìn)行訪問。
GR47/48模塊具有很多強(qiáng)大的特征。其TCP/UDP會話可以通過一個命令啟動;它還提供為統(tǒng)一資源定位器(URL)查詢IP地址的功能;最有用的特點(diǎn)之一是IP服務(wù)器偵聽功能,該功能允許通信模塊啟動與網(wǎng)絡(luò)的對話,例如,一個被分配的IP地址無需連接任何部分,只要等待該單元接收一個基于IP的連接引入請求,即可實現(xiàn)。