《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 嵌入式Internet體系結構研究

嵌入式Internet體系結構研究

2009-09-02
作者:闕建榮

  摘? 要: 研究了目前嵌入式Internet技術的二種典型體系結構,在此基礎上分析和研究了嵌入式TCP/IP協議棧的特點及其實現方法。

  關鍵詞: 嵌入式Internet? 體系結構? 嵌入式TCP/IP協議棧

?

  嵌入式Internet是一種將嵌入式設備接入Internet的技術。利用該技術可將Internet從PC機延伸到8位、16位、32位單片機,并實現基于Internet的遠程數據采集、遠程控制、自動報警、上傳下載數據文件、自動發送Email等功能,大大擴展了Internet的應用范圍。網絡專家預測,將來在Internet上傳輸的信息中,有70%的信息來自小型嵌入式系統。嵌入式Internet將會產生比PC機時代多成百上千倍的瘦服務器和超級嵌入式瘦服務器。這些瘦服務器將與人們所能想到的各種物理信息、生物信息相聯接,通過Internet網自動地、實時地、方便地、簡單地提供給需要這些信息的對象。

  嵌入式Internet的技術正在不斷發展,新技術、新產品層出不窮,從底層硬件技術到頂層軟件所提供的解決方案都在不斷的完善。但從根本上講,嵌入式設備要接入Internet,它必須支持TCP/IP通信協議,這是不能選擇的。由于嵌入式系統是以計算機技術為基礎、軟硬件可裁剪并對成本、體積、功耗有嚴格要求的專用系統,它對TCP/IP通信協議的支持有其自身的特點,這些特點也決定了嵌入式Internet的體系結構。

1? 嵌入式Internet的體系結構

  目前,很多研究機構和企業提出了許多有關嵌入式設備連入Internet的解決方案。從嵌入式設備對TCP/IP通信協議的支持方式和體系結構分析,可以把這些解決方案歸納為以下二種。

1.1 基于網關的體系結構

  嵌入式設備要支持TCP/IP通信協議,所需要的計算資源和存儲資源相當可觀。而目前大多數的嵌入式設備其計算資源和存儲資源是有限的,不能直接支持TCP/IP協議棧。于是就出現了一種基于網關的結構。這種結構的核心思想就是,采用桌面計算機或高性能嵌入式處理器作為網關,支持TCP/IP協議棧并運行Internet服務程序(通常是Web Server)。網關和嵌入式設備之間則通過一些標準的輕量級總線(RS232、RS485等)和私有通信協議(由解決方案提供商提供)進行通信。用戶通過網絡瀏覽器訪問網關上運行的服務器實現對這些嵌入式設備的遠程訪問和控制,從而實現嵌入式設備連入Internet。

  emWare公司開發的嵌入式微Internet網絡技術(Embedded Micro Internetworking Technology,EMIT)就是這種體系結構的典型應用。EMIT由emNet和emGateway二部分組成,如圖1所示。emNet協議運行在MCU內部,是為嵌入式系統和其他網絡(如RS485、IR、RF和電力線等)進行聯接的網絡協議。同時,emNet使得集成emMicro的嵌入式系統能夠和嵌入式微控制器網關emGateway進行有效的通信。嵌入式微控制器網關(即emGateway)運行在計算機、TV機頂盒或專用的家用電器服務器中,它是嵌入式設備和Internet之間聯接的橋梁。應用系統運行MCU內的emNet,通過emGateway連入Internet。

?

  Webchip是一種使嵌入式電子設備和家用電器與網絡方便聯接的實用解決方案(圖2)。它也是基于網關的體系結構應用的一個典型實例。Webchip是獨立于各種微控制器的專用網絡接口芯片。它通過標準的輸入、輸出口與各種MCU相連。MCU通過Webchip與網關聯接即可接收并執行經由Internet遠程傳來的命令或將數據交給Webchip發送出去。MCU應用系統通過Webchip網絡芯片與Gateway聯接,再連入Internet。基于Webchip的嵌入式Internet體系結構最終還是要通過網關連入Internet,它只不過是用硬件代替軟件實現的方式屏蔽了底層的通信機制和網關的交互過程,可以說是EMIT體系結構的一個變種。

?

  基于網關的體系結構的最大優點就是網關中的一個IP地址可以聯接多個嵌入式設備。但它需要PC機做網關,因而增加了整個系統的成本。

1.2 直連的體系結構

  讓嵌入式設備連入Internet的最直接方法就是讓嵌入式系統本身支持完整TCP/IP協議棧。要支持TCP/IP通信協議,所需要的計算資源和存儲資源相當可觀。因此這種讓嵌入式設備本身支持完整的TCP/IP協議棧直接連入Internet的結構只適用于那些高檔的嵌入式處理器,如32位的ARM、SH3、MIPS等。而對那些低檔的8位和16位嵌入式系統,這個方案顯然行不通。

  要讓那些低檔的8位和16位嵌入式系統支持TCP/IP協議棧而直接連入Internet,可行的辦法就是針對嵌入式系統的特點對傳統的TCP/IP協議棧進行裁剪。讓這些嵌入式設備支持一種輕量級的TCP/IP協議棧而直接連入Internet。基于Webit的嵌入式Internet直連結構就是這一體系結構典型的應用實例。

  Webit是國內某公司研制開發的用于嵌入式系統接入Internet的一個實用產品,它將MCU和以太網控制器集成到一塊小板卡上,將它內置到嵌入系統中就可以完成嵌入式系統與Internet網的聯接,如圖3所示。Webit有自己的IP地址,有很高的集成度。它將協議處理部分獨立出來,使開發人員省去了網絡部分的設計,可將主要精力放在應用系統本身。

Webit實際上是個嵌入式瘦Web服務器。其中運行的TCP/IP協議棧是經過裁剪了的。嵌入式Internet直連體系結構無需網關,發布比較靈活,開發成本相對較低,但需要獨立的IP地址。

?

  相對于技術和應用比較成熟的基于網關的體系結構,嵌入式Internet直連結構還需要不斷完善。從這種體系結構的特點可以看出,實現這種體系結構的關鍵問題就是如何針對嵌入式系統的特點及其具體的應用場合對傳統的TCP/IP協議棧進行裁剪,以得到適合于嵌入式Internet直連結構的嵌入式TCP/IP協議棧,這也正是近年來研究的熱點。

2?嵌入式TCP/IP協議棧的特點及其實現方法

  和嵌入式系統面向特定的應用一樣,分析嵌入式TCP/IP協議棧的特點和對傳統的TCP/IP協議棧進行簡化也要針對特定的系統環境和應用背景。離開了特定的系統環境和應用背景來討論嵌入式TCP/IP協議棧的特點和對TCP/IP協議棧進行簡化是沒有意義的。這里所討論的嵌入式TCP/IP協議棧是針對那些低檔的8位和16位嵌入式系統能支持嵌入式Internet直連體系結構而提出的。

  低檔嵌入式系統中一般沒有多任務操作系統支持,嵌入式TCP/IP協議棧直接面對硬件。MCU中的程序結構一般是順序執行和硬件中斷相配合的方式。由于嵌入式處理器的時鐘頻率低,地址、數據總線窄,所以對一個IP包的處理要花很多的時間。如果采用中斷處理方式,勢必影響其他中斷和任務的執行。當系統中有實時數據采集、串口通信中斷、鍵盤中斷等實時任務時,則會造成很大的沖突。設計時需要合理劃分中斷處理程序,將無實時要求和費時的嵌入式TCP/IP協議棧的處理放在主程序順序循環中。對網絡接口控制芯片采用查詢式,即在其他中斷任務的執行間隙處理嵌入式TCP/IP協議棧,以犧牲響應速度來換取系統可靠性(圖4)。由于處理不及時可能會發生溢出、丟包等,這可依靠TCP協議本身的機制來保證可靠傳輸。

?

  緩沖區方案的選擇對TCP/IP協議棧的性能影響很大。8位或16位嵌入式系統中存儲空間一般只有幾十字節,在設計嵌入式TCP/IP協議棧時,不但要考慮協議棧本身的大小,還要考慮緩沖區的設置。一個最大的以太網包的大小超過1500個字節,嵌入式系統一般只能提供幾十字節的空間,并要被各個協議所用。所以只能申請一個能存放一個最大以太網包的緩沖區來存放接收到的數據包,收到一包處理一包,其存儲地址是固定的,而不是動態分配的。同時這個緩沖區還要作為發送包時的緩沖區用。在大多數應用中,嵌入式TCP/IP協議棧用于嵌入式瘦服務器,其接收包的類型一般為系統狀態配置包、控制動作命令包、通信控制包等,包中裝載的數據較少。而嵌入式瘦服務器發回給客戶的數據包中含有一些嵌入式瘦服務器的實時狀態信息或網頁,包中裝載的數據較多,可以通過精心設計,使這些數據能用一個以太網包發送出去。

  在IP層,根據嵌入式系統特定的應用背景,可以對其通信環境做出一些假設。只考慮一般的情況,例如:如果數據包經過最大傳輸單元(MTV)不同的物理網絡,則IP層必須支持數據包的分片和重裝。但現有的網絡一般都支持以太網,因此可以不考慮IP數據包的分片和重裝,這在一般情況下是可行的。因此嵌入式TCP/IP協議棧中的IP層協議可以把路由、分片、重裝等功能裁減掉。

  TCP/IP協議棧中的TCP協議實現面向連接的、端到端的可靠通信協議。它采用了許多機制來保證傳輸的可靠性,例如通過確認ACK和定時器來判斷是否有必要重發;通過序列號來解決通信時的丟失、重復、失序等問題。前面提到嵌入式TCP/IP協議棧一般用于嵌入式瘦服務器。TCP有限狀態機只需要實現服務器端的TCP有限狀態機即可。在發送數據包時可以采用“發送—停止—等待—確認—發送”的方式,不實現滑動窗口協議。由于每次只緩沖和發送一個包,接受一包處理一包,不必考慮流量控制和擁塞控制。在一般的應用場合,和嵌入式TCP/IP協議棧通信的是完整的TCP/IP協議棧。當這些嵌入式瘦服務器發送的包丟失后,對方收不到確認包,認為自己所發的包丟失,超時重發,而嵌入式瘦服務器此時再響應,仍然可以保證可靠性。因此嵌入式TCP/IP協議棧的TCP協議可以不實現超時重發機制。嵌入式TCP/IP協議棧中TCP協議處理流程如圖5所示。

?

  嵌入式TCP/IP協議棧接口的設計一般不遵循BSD Socket接口標準,而采用基于事件驅動的程序模型。應用程序(協議)用一個C函數實現。當一個事件到達時(如一個新的連接請求到達,一個新的數據包到達一個已經建立的連接等),應用程序(協議)就會被調用,并由應用程序根據所發生的事件做出處理。嵌入式TCP/IP協議棧與傳統TCP/IP協議棧的區別如表1所示。

?

3? 結束語

  隨著嵌入式Internet技術的不斷發展,將來可能會出現新的嵌入式Internet解決方案。但有一點是不能選擇的:嵌入式系統要接入Internet則最終要通過TCP/IP通信協議的支持,不管這種支持是直接的還是間接的。同時TCP/IP協議棧解決的是個通信問題,對TCP/IP通信協議的研究和簡化不會因為嵌入式系統性能的提高而變得沒有意義。將來,也許會用輕量級TCP/IP協議棧取代目前一些標準的輕量級通信協議(如RS-232等)而成為嵌入式設備和網關之間進行通信的一種解決方案。

?

參考文獻

1? 呂京建.嵌入式因特網技術的興起與前景.今日電子,2000;增刊7~10

2? 彭少熙.家庭網絡中的嵌入式Internet方案.電子技術應用,2001;(10)

3? 黎明.Webchip智能Internet網絡接口芯片及其應用.力源電子工程,2000;(2)

4? 李明,廖靜秋.嵌入式TCP/IP協議棧的研究與開發.計算機工程與應用,2002;(16)

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 国产精品亚洲综合五月天| 精品视频在线观看一区二区| 女人让男人免费桶爽30分钟| 亚洲av中文无码乱人伦| 高清日本撒尿xxxx| 天堂中文8资源在线8| 久久久久久亚洲精品无码| 欧美日韩电影在线| 动漫痴汉电车1~6集在线| 黑人一个接一个上来糟蹋| 日本三级黄色网址| 亚洲无码一区二区三区| 蝌蚪视频app下载安装无限看丝瓜苏| 天天躁日日躁狠狠躁一级毛片| 亚洲a视频在线观看| 神马重口味456| 国产乱码卡一卡2卡三卡四| 在线免费观看h片| 女人18片毛片60分钟| 久久久久久中文字幕| 欧美乱大交xxxx| 亚洲视频一区网站| 美女扒开粉嫩尿口漫画| 国产精品扒开腿做爽爽爽的视频| 久久99久久99精品免视看动漫| 色碰人色碰人视频| 国产精品亚洲片在线观看不卡| 中文字幕无线码一区二区| 极品尤物一区二区三区| 国产ts在线播放| 777精品成人影院| 在线中文高清资源免费观看| 久久青草国产免费观看| 毛片免费在线观看| 免费高清av一区二区三区| 99在线精品视频| 成品煮伊在2021一二三久| 久久精品国产一区二区三| 精品国产一区二区三区香蕉| 国产精品美女在线观看| 久久久久99精品成人片|