菲尼克斯電氣(南京)研發工程中心有限公司 張 龍,吳勇志

3.6.1 無線網卡
提供與有線網卡一樣豐富的系統接口,包括PCMCIA、CardBus、PCI和USB等。在有線局域網中,網卡是操作系統與網線之間的接口。在無線局域網中,它們是操作系統與天線之間的接口,用來創建透明的網絡連接。
3.6.2 接入點
接入點(Access Point,簡稱AP)的作用相當于局域網集線器,它在無線局域網和有線網絡之間接收、緩沖存儲和傳輸數據,以支持一組無線用戶設備。接入點通常是通過標準以太網線連接到有線網絡上,并通過天線與無線設備進行通信。在有多個接入點時,用戶可以在接入點之間漫游切換。根據技術、配置和使用情況,一個接入點可以支持15~250個用戶,通過添加更多的接入點,可以比較輕松地擴充無線局域網,從而減少網絡擁塞并擴大網絡的覆蓋范圍。
與有線局域網的載波偵聽多路訪問/沖突檢測(CSMA/CD)相類似,IEEE802為無線局域網的信道訪問定義了載波偵聽多點多路訪問/沖突避免(CSMA/CA)法,即系統在傳輸前也會先查看“信道”是否空閑。與有線局域網沖突檢測不同的是使用沖突避免法。
為避免沖突所使用的一種協議是,在發送之前讓信道保持一段時間的空閑,使得站點可以進行無錯的傳輸。但是不能解決隱藏節點的問題。
當兩個工作站由于都偵聽到相同傳輸介質的空閑,并同時傳輸時,就會發生沖突。此類沖突的發生是在不能相互聯系的兩個工作站同時與第三個工作站進行傳輸時出現(我們稱這兩工作站互為隱藏節點)。IEEE802.11為了解決這個問題,在MAC層上引入了一個RTS/CTS(RequestToSend/ClearToSend)協議。RTS或CTS的應答機制可以用來預訂無線信道一定的時長。為了防止RTS/CTS報文的沖突造成其無法使用,它們的報文都很短。
建立無線網絡時要區分兩種基本結構:可以建立一個特別靈活的且方便數據傳輸的點對點網絡;對于工業環境中的數據傳輸任務,由于可以進行集中管理而建立了所謂的基礎設施網絡。
3.8.1 點對點(Ad-hoc)網絡
這種應用包含多個無線終端和一個服務器,均配有無線網卡,但不連接到接入點和有線網絡,而是通過無線網卡進行相互通信。它主要用來在沒有基礎設施的地方,進行快速而輕松地組建無線局域網。
在點對點模式中,多個用戶建立起對等網絡。這種情況下,所有連接站都是平等的,相互之間可以直接通信。此設置也被稱為IBSS(獨立基本服務集)。這種結構尤其在用戶想快速廉價交換數據時具有意義。它也適用于把數據從固定個人電腦(如筆記本電腦)傳輸到移動設備。
由于沒有集中管理,所以每個用戶必須自己注意數據的安全性。所有其他用戶可以在由共享SSID(服務集標識符)組成的網絡中訪問打開的目錄和文件。通常,在短距離(用戶坐在視線范圍內)和用戶彼此認識的情況下建立對等網絡。

圖1 點對點網絡
3.8.2 基礎設施(Infrastructure)網絡
該模式是目前最常見的一種架構,這種架構包含一個接入點(Access Point,簡稱AP)和多個無線終端,所有設備之間的通信都是通過公用的接入點來實現的。接入點通過電纜連線與有線網絡連接,通過無線電波與無線終端連接,可以實現無線終端之間的通信,以及無線終端與有線網絡之間的通信。這種配置被稱之為基本服務集(BSS)。通過對這種模式進行復制,可以實現多個接入點相互連接的更大的無線網絡。

圖2 基礎設施網絡
若想用無線技術完全覆蓋給定區域,單個接入點的覆蓋區域必須重疊。為了避免相互干擾必須注意,相鄰基礎網絡要在不同信道上進行通信。
如果單個AP的覆蓋范圍不夠大,例如存在太多設備、傳輸范圍不夠大或可用的帶寬不夠等,可以將一些物理重疊的BSS組成共享無線局域網。此類方式又稱為擴展服務集(ESS)。可以連接各個接入點的網絡被稱為DS(分布式系統)。所有AP必須連接在一起,這可以通過有線方式或擴展無線網絡結構,即WDS(無線分布式系統)來實現。該結構為接入更高級網絡和所謂的漫游提供了基礎。
ESS的使用可以使設備之間相互通信,即使它們不在同一個共享接入點的范圍內。另外,采用ESS,移動設備可以在不需要中斷通信的情況下,自動地在各接入點間進行轉發(漫游)。基礎架構模式,特別是ESS的使用使得遵循IEEE802.11所形成的大規模網絡操作成為可能,這種網絡也被稱為無線以太網。

圖3 擴展服務集——無線以太網
3.8.3 漫游(Roaming)
如果移動用戶在擴展網絡(擴展服務集模式)內離開了一個接入點的無線覆蓋范圍進入了另一個接入點的無線覆蓋范圍,就是所謂的漫游。
漫游在IEEE802.11中被定義為在不同接入點間進行通信連接傳遞的功能。以下是漫游的過程。
? 如果一設備測得從AP得到的信號太弱,它將尋找一個信號更強的AP。具體的有主動和被動掃描,其區別如下:
? 被動掃描:偵探介質,確定哪個AP可用。
? 主動:在所有通道上發送請求,如果從一個AP上得到響應,響應信息中包含了通信傳輸所需要的全部信息。
? 設備通過信號強弱來選擇最合適的AP并發送相關請求,它請求AP接管通信。
? 如果得到相關請求的肯定應答,那么漫游就成功了,否則,重新啟動以上過程。
3.8.4 分段(Fragmentation)
無線局域網的各種安全措施在IEEE802.11i中進行了介紹。在一次傳輸中,數據幀的最大容量是2312bytes。當速率是11Mbps時,傳輸的時間為2毫秒,此時很可能發生傳輸錯誤。為此,IEEE802.11提出了數據分段傳輸。這減少了出錯的可能性,也縮短了因錯誤造成的數據包重復發送時間。
但是,這也稍微增加了協議的額外開銷,并減少了凈數據的吞吐量。因此分段傳輸功能常常根據實際情況被激活或取消。
由于無線局域網采用公共的電磁波作為載體,因此對越權存取和竊聽的行為也更不容易防備。無線局域網必須考慮的安全要素有三個:信息保密、身份驗證和訪問控制。如果這三個要素都沒有問題了,就不僅能保護傳輸中的信息免受危害,還能保護網絡和移動設備免受危害,常見的無線網絡安全技術有以下幾種。
3.9.1 服務集標識符(SSID)
通過對多個無線接入點AP設置不同的SSID,并要求無線工作站出示正確的SSID才能訪問AP,這樣就可以允許不同群組的用戶接入,并對資源訪問的權限進行區別限制。這只是一個簡單的口令,只能提供一定的安全;而且如果配置AP向外廣播其SSID,那么安全程度還將下降。
3.9.2 物理地址(MAC)過濾
由于每個無線工作站的網卡都有世界范圍內唯一的物理地址,即MAC(介質訪問控制)地址。因此可以在AP中手工插入一組允許訪問的MAC地址列表,實現物理地址過濾。這個方案要求AP中的MAC地址列表必需隨時更新,可擴展性差。
3.9.3 虛擬專用網絡(VPN)
VPN是指在一個公共IP網絡平臺上通過隧道以及加密技術保證專用數據的網絡安全性,它不屬于802.11標準定義;用戶可以借助VPN來抵抗無線網絡的不安全因素。
3.9.4 端口訪問控制技術(802.1x)
該技術也是用于無線局域網的一種增強性網絡安全解決方案。當無線工作站與AP關聯后,是否可以使用AP的服務要取決于802.1x的認證結果。如果認證通過,則AP為用戶打開這個邏輯端口,否則不允許用戶上網。
3.9.5 加密方法
IEEE802.11i中指定的加密方法提供了一個更高的安全標準。
(1)使用WEP(有線等同隱私)加密
在鏈路層采用RC4對稱加密技術,用戶的加密密鑰必須與AP的密鑰相同時才能獲準存取網絡的資源,從而防止非授權用戶的監聽以及非法用戶的訪問。WEP提供了64位(40位密鑰+ 24位初始化向量)或128位(104位密鑰+ 24位初始化向量)長度的密鑰機制,128位方法被視為更安全。但是它仍然存在許多缺陷,例如一個服務區內的所有用戶都共享一個密鑰,一個用戶丟失鑰匙將使整個網絡不安全。
(2)使用 WPA (保護接入)加密
保護接入(WPA)和它的改進版WPA2是當前加密程序的最高安全標準。通過128、192或256位密鑰進行編碼。與WEP (有線等同隱私)相比,它的初始化向量增加到48位,避免了重復。使用的密鑰在運行一些時間后會發生交換。這種交換在接入點和活躍客戶端之間直接組織。密鑰生成需要使用登錄接入點時的傳輸密碼。私人應用中,通常使用共享密碼PSK(預共享密鑰)。專業應用中,如在公司使用時,會分配個人密碼。通過固定服務器(遠程接入撥入用戶服務RADIUS)驗證合法性和訪問。大多數情況下,WPA和WEP運行時使用相同的硬件。使用適當的驅動程序(客戶端)或固件(接入點)可以調整現有系統。
(3)擴展程序 WPA2
不再使用RC4進行加密,而使用先進的AES程序(高級加密標準)。但是該程序明顯需要更高的計算能力。只有當所有組件都支持該程序時,它才能用于整個網絡。有時也可以使用WPA和WPA2混合驅動模式。只有通過專業管理并考慮到密碼質量時,WPA安全保護系統才有可能達到最高安全級別。
藍牙是針對近距離無線電收發方法的一種開放的標準,它可以在不需要許可證和注冊的情況下使用。藍牙主要用于不同廠家的I/O設備間的無線數據通信,但也可以用在移動電話技術中的無線語音通信。
藍牙技術的開發是藍牙技術聯盟(SIG)于1998年發起的。SIG當初是由愛利信、諾基亞、IBM、英特爾、東芝等公司共同創立的,現在已經包括超過2500個制造商。目前已有的藍牙規范存在不同的版本,它們之間相互兼容。
藍牙使用ISM頻率范圍內的2.4GHz頻段。除了藍牙(IEEE802.15.1)外,無線局域網(IEEE802.11b/g)和ZigBee(IEEE802.15.4)也都用這個頻段。如果各自的頻道由于頻段的過度使用而過載,1.2版本或更高版本的藍牙技術可利用“自適應跳頻”來將這些過載的頻道從跳頻序列中移去。
為了確保頻段的最優使用,傳輸功率與所需的范圍自適應。這種傳輸功率的適應性降低了無線發射,并確保使用于一個網絡中的無線頻道,可以多次為分散場所內的設備所用。
由于技術和經濟的原因,藍牙被越來越廣泛地應用在工業場所中,它被用來與運動的、回轉的或移動的設備建立通信連接。這些應用通常要求在苛刻的環境中時間嚴格的控制信號短距離內周期性確定性的傳輸。對于自動化網絡的最優整合,無線網絡連接的配置簡單和自動建立是所期望的特征。其中,一個重要的特征是,當發生連接異常中斷或其它的數據傳輸錯誤時,組件的輸出便會置為先前規定的狀態。
藍牙根據發射功率的大小可分為三大類。

表1 藍牙技術分類
第1類設備的發射功率可進行自動控制。通過錯誤檢測和校正機制確定在哪一發射功率下連接可保持穩定。該方法利于節約能源。這是使用藍牙裝置和設備在工業應用中的一個特殊優勢。
無線連接使用的是2.4GHz的ISM頻段。該頻段占用的頻率范圍在2.4000GHz~2.4835GHz之間。安全距離最小值為2MHz,最大值為3.5MHz。該范圍內用于信息傳輸的信道有79條,信道間距均為1MHz(從2.402GHz~2.480GHz)。信道頻率計算公式如下:
頻率 = 2402MHz + kMHz,k (信道號) = 0,1,2,3,...,78
所有信道使用調頻方法進行傳輸。在藍牙裝置中,信道每秒鐘可變化1600次。因此,各個通道的信息傳輸時間為625微秒。建立同步和異步數據傳輸包時也要考慮到這種情況。
自發布了藍牙版本1.2以來,一直使用自適應跳頻技術(AFH)。在這里,它不再作為既定擾動信道跳頻序列使用。它會占用在同一頻率工作的其它無線電服務,會對其產生干擾。周圍有無線局域網運行的情況就是這么一個例子。可能會受到無線局域網連接影響的藍牙信道多達20個。使用自適應跳頻技術可以避過該區域,兩個系統可互不干擾地并行工作。
為了保證工業應用中的確定性行為,每個數據包的傳輸時間設置為5毫秒。與時間間隙相類似,每個信息“長”625微秒。對于信息能否正確傳輸這個問題,又有625微秒可供使用。在5毫秒的固定窗口,該過程可重復三次。
傳輸范圍依賴于傳輸功率和環境參數的范圍,對于3類設備來說,可達10米的范圍,最大傳輸功率為1mW~0dBm;于2類設備來說,可達50米的范圍,最大傳輸功率為2.5mW~4dBm;對于1類設備來說,可達100米的范圍,其最大傳輸功率為100mW~20dBm。
有效帶寬取決于無線連接的質量,這意味著在某些情況下具有更高傳輸功率的設備同樣也提供更寬的有效帶寬。1.1版本的藍牙同時支持一方向最大為723.2kbps,另一方向最大57.6kbps的異步無連接傳輸,或是雙向最大433.9kbps的對稱傳輸。版本2.0發布之后,通過使用增強數據速率傳輸速率可達3Mbit/s,最大凈數據傳輸率可達2.1Mbit/s。
藍牙協議根據傳輸技術可以分為兩種類型。一種是面向連接的同步方式(SCO,Synchronous Connection Oriented),另一種是無連接的異步方式(ACL,Asynchronous Connectionless Link)。 區別主要在于時間特性、糾錯和數據傳輸率。
4.2.1 采用ACL的數據傳輸
ACL是主從站之間以數據包為導向的無連接通信。與SCO相比,ACL具有較低的優先權。如果一個現有SCO連接的傳輸能力沒有得到充分利用,那么可以額外傳輸ACL數據包。這種情況下,傳輸只在特定時隙發生。ACL可以在有糾錯或無糾錯(FEC,轉發誤碼控制)的情況下工作。與SCO相比,這里存在生成與傳輸校驗和(CRC,循環冗余碼校驗)的可能性。如果能夠忍受可能出現的時間延遲,則可以使用ACL數據包。這種方法的優勢在于數據的完整性。
兩個藍牙設備之間的通信可以是對稱的或不對稱的。對稱傳輸中,上下游的數據傳輸率相同。在只要求簡短反饋或確認的地方,連接是不對稱的,也就是說,兩個方向的數據傳輸率不同。

表2 不含有FEC時可能的數據傳輸率

表3 含有2/3FEC時可能的數據傳輸率
4.2.2 采用SCO的數據傳輸
SCO是主從站之間的點對點同步連接,相當于點對點有線連接。主站與從站通信的時隙具有規律性。剩余的時間可用于與其它從站進行通信。

圖4 時隙設置
SCO主要用于高效語音傳輸。幀的類型包括:HV(1/3FEC,10字節語音);HV2(2/3FEC,20字節語音);HV3(30字節語音);DV(10字節語音和2/3FEC下的9字節數據)。區別在于糾錯機制不同。型號HV3(高品質語音)無糾錯功能。HV2和HV1具有向上糾錯功能,不能審查數據的完整性。由于可能會出現語音延遲,所以重發缺陷數據包沒有意義。
在網絡中,一個主站至多可以維持三個與一個或多個從站的SCO連接。一個從站至多可以支持三個與一個主站的SCO連接,或者最多可以支持兩個與不同主站的SCO連接。
每個藍牙設備都有一個公共的和全球唯一的48位設備地址,類似于以太網中的MAC地址。連接的建立可采用兩個命令:查詢(inquiry)和尋呼(paging)。
一個藍牙設備使用查詢程序來掃描所使用頻帶并確定在傳輸/接收范圍內是否存在其它的設備。查詢確定了所有設備的地址和通信準備就緒設備的相關時鐘。

圖5 使用查詢/尋呼消息形成微微網(piconet)
在查詢程序中,一個尋呼請求與其中查找到的一個準備通信的設備建立起通信連接。建立了一個微微網(piconet)。微微網是自動而動態地形成的。初始化連接并發出查詢的設備是主站,其它的則是從站。當進行建立連接尋呼時,主站發送其設備地址和時鐘給從站。使用從站的跳頻序列,稱為尋呼跳頻序列。
對于后續通信,使用主站跳頻序列,稱為信道跳頻序列。在一個微微網中可有255個藍牙設備作為從站,特殊情況下甚至更多。在暫停(park)、保持(hold)或呼吸(sniff)模式下可與主機形成網絡,這樣的從站最多有7個可以同時與主機進行主動通信。這些設備可分配為活動成員地址(3位)或一個暫停成員地址。
原則上,藍牙可最多有10個微微網進行組網形成一個分布網。在這些重疊的微微網中,一個微微網中的主站能被整合為另一個微微網中的從站。

圖6 分布網
除了用于實際無線通信及所用基帶的低層協議外,在鏈接管理規范中定義了鏈路層。鏈路層包括了在無線傳輸中的糾錯方法/規范和密碼安全機制。例如,2/3前向糾錯(2/3FEC)用于不重發報文時的基本錯誤糾正或1/3FEC,其中每一位會重發3遍。它同樣針對不同的應用提供各種協議。

圖7 藍牙協議架構
協議使用示例:
? 服務發現協議(SDP):提供關于支持各個設備的服務信息。
? 邏輯鏈路協議(L2CAP):允許對無線通信實現協議多路。
? 鏈接管理協議(LMP):啟動,管理,和中斷與其它設備的連接;設置各個從站設備處于各種節能模式;協商具有相關參數的連接類型。
SIG定義了一個應用行規,能保證不同設備的互操作性,而不需要執行所有設備中的所有已有協議。這些應用行規描述了不同的功能以及在協議層上的使用。一個例子就是HID行規,其有效性是通過兩次傳輸所有報文而得到提高,同時對確定性的時間響應沒有負面影響(5ms SNIFF 間隔)。

表4 所使用的行規
4.5.1 密碼安全機制
藍牙規范中的密碼安全機制有兩個目的:阻止未授權的藍牙設備訪問通信以及完全禁止未授權的通信。除了監測和去除傳輸錯誤這種無密碼方法外,藍牙規范中詳細描述了密碼授權和加密算法。隨著它們已經在芯片層上的實現,則在鏈路層以標準化的形式提供。
連接密鑰形成了所使用的加密方法的基礎。這些連接密鑰在兩個藍牙設備進行配對時被認可。
如果兩個藍牙設備都想使用密碼安全機制,配對過程首先會產生一個128位的組合密鑰,僅用于這兩個設備之間的連接,并作為連接密鑰保存在每一個設備中,以便將來使用。
組合密鑰從設備地址和每個設備中的一個隨機值中產生。為確保這些隨機值的安全性,使用一個初始密鑰,它是從其它公共的隨機值、設備地址或PIN中產生,相同的PIN必須輸入到這兩個設備中。PIN的長度可以是1到16字節,可以是個預置值或者可被用戶所配置。如果其中一個設備具有固定PIN,則就必須將其輸入到其它的設備中。如果兩個設備都預置了PIN,則就不可能進行配對了。
4.5.2 加密
如果兩個通信設備中至少有一個已被另一個授權,加密數據傳輸則可選。任一個參與設備可以啟動加密。然而,一旦主站與從站對必需的參數進行協商后,主站將啟動實際的加密過程。首先,確定密鑰長度,然后主站在發送給從站一個隨機值后開始加密。密碼索引從連接密鑰,密碼偏移量和隨機值中產生。在加密開始之前,主密鑰將替代連接密鑰。
當前的密碼被用于加密。對每一個數據包來說,初始化矢量是從設備地址和主站時鐘中產生。數據僅在無線傳輸中加密,在傳輸前后,數據在所有參與的設備中以未加密的形式提供。
4.5.3 安全操作模式
藍牙規范描述了以下3種安全模式。
? 安全模式1:藍牙設備本身并不觸發任何有效安全機制的使用,但可以對來自其它設備的授權查詢作出響應。
? 安全模式2:安全機制的選擇和使用是由用戶根據藍牙設備和所使用服務來定義。如果設備接收到建立連接的請求,只是啟動安全機制。
? 安全模式3:建立連接總是要求授權;待傳輸的數據要進行加密則可作為可選項。
此外,下列查詢模式可用于藍牙設備的發現。
? 不可發現模式:設備對其它設備的查詢不作響應。
? 受限可發現模式:當用戶受令時,設備才對其它設備的查詢作出響應。
? 通用可發現模式:設備將自動對其它設備的查詢作出響應。
? 其它操作模式:“不可連接模式”(對尋呼請求不作響應)或“可連接模式”;“不可配對模式”或“可配對模式”。