1、第12章 Mobile IP 與無線應用協定Mobile IP 的使用n可使電腦在不同網際網路的連接點移動時維持連線.nMobile 使用者的連接點動態改變後,所有的網路連線會自動維持.n漫遊(Nomadic)每當使用者移動時,網路連線便中斷.當使用者重新撥接上線後,新的連線便建立起來.n將分配新而暫時的 IP 位址.Mobile IP 的運作網際網路或其他繞送器及鏈結的拓樸A的總部網路外部代理器外部網路移動節點A總部代理器伺服器XMobile IP 的運作n行動節點(Mobile Node)會被指定至一特定網路 home network.n本地網路(home network)的 IP 位址是
2、靜態的 本地位址(home address).n行動節點可移動至另一網路 外地網路(foreign network).n行動節點在外地網路上向當地的網路代理器註冊為網路節點 外地代理器(foreign agent).n行動節點將註冊的位址傳回給本地網路的網路代理器 本地代理器(home agent).Mobile IP 的能力nDiscovery 搜索能力,行動節點利用搜索程序來辦認可能的本地及外地代理器.nRegistration 註冊能力,行動節點利用認証註冊程序來通知本地代理器有關它管轄的轉交位址(care-of address).nTunneling 通道建立能力,用來從本地位址轉送
3、IP datagrams 至轉交位址.支援行動IP能力的基本協定使用者資料片協定(UDP)網際網路控制訊息協定(ICMP)網際網路協定(IP)註冊發現建立隧道DiscoverynMobile node 負責搜索程序的進行.n必須決定它是連接至本地網路或是外地網路.n從本地網路轉換至外地網路可在不通知網路層 的情況下隨時進行.nMobile node 會收聽代理器公告訊息(agent advertisement messages)n將比對路由器的 IP 位址與本地位址的 network 部份Agent Solicitationn代理器請求n外地代理器須定期發出代理器公告訊息(agent adve
4、rtisement messages).n若 mobile node 立刻需要 agent information,它可發出 ICMP router solicitation message.n任何代理器收到此訊息後會發出代理器公告.移動偵測nMobile node 可因換手機制(handoff mechanism)而在 不經由IP 層的情形下移動至另一網路.nAgent discovery process 是用來讓代理器可偵測到這類的動作.n行動偵測演算法:n使用 lifetime field mobile node 將 lifetime field 當作agent advertisemen
5、ts 的計時器n使用 network prefix mobile node 檢查剛收到的 agent advertisement messages 是否與此節點目前的care-of address 在同一個網路Co-Located Addressesn同址位址n若 mobile node 移動至一個沒有外地代理器的網路,或所有的外地代理器正忙碌中,則它可當作是自已的外地代理器.n行動代理程式(Mobile agent)使用同址轉交位址(co-located care-of address).n由 mobile node 所關聯的網路介面所得到的 IP address.n取得同址位址的方法:n由
6、網路服務所得到暫時的 IP address,例如,DHCP.nMobile node 在一已知的外地網路中時,此位址可當作 long-term address.註冊程序nMobile node 送出註冊要求到外地代理器 要求轉送服務(forwarding service)n外地代理器將要求轉交到本地代理器.n本地代理器在決定接收或拒絕要求後再送出註冊回覆給外地代理器.n外地代理器將回覆轉交到 mobile node註冊運作訊息n註冊要求訊息n欄位有:type,S,B,D,M,V,G,lifetime,home address,home agent,care-of-address,identif
7、ication,extensionsn註冊回覆訊息n欄位有:type,code,lifetime,home address,home agent,identification,extensions 註冊程序的安全性nMobile IP 是被設計來抵禦攻撃n節點假裝成是外地代理器來傳送 registration request 到本地代理器去遵引 mobile node 的傳輸至節畸本身.n代理器會重播原有的註冊訊息以切斷 mobile node 的網路連線.n對訊息認証而言,registration request 和 reply 都包含認証延伸項目(Authentication Extens
8、ions)n欄位有:type,length,security parameter index(SPI),authenticatorAuthentication Extensions 型態nMobile-home 提供在 mobile node 和本地代理器的訊息認証;必須的.nMobile-foreign 必須的,若在 mobile node 和外地代理器之間有安全組織的話.nForeign-home 必須的,若在外地代理器和本地代理器之間有安全組織的話.建立通道(Tunneling)n本地代理器攔截送往 mobile node 的本地位址的 IP datagrams.n本地代理器通知本地網路
9、的其他節點將欲送往 mobile node 的 datagrams 轉送至本地代理器.nDatagrams 經由通道轉送至 care-of address.n Datagram 被封裝在外部 IP datagram建立通道(Tunneling)(續)網際網路Mobile IP 封裝選項nIP-within-IP 整個 IP datagram 成為新IP datagram 中的 payload.n原始而內部的 IP header 是不改變,除非 TTL 值減一n外圍的標頭是一完整的 IP headernMinimal encapsulation 在原始 IP header 及原始 IP payl
10、oad 間插入新的 header.n原始 IP header 被修改成新的外圍 IP headernGeneric routing encapsulation(GRE)發展的比 Mobile IP 早無線應用協定nWireless Application Protocol(WAP)n開放的標準提供給無線終端設備(Wireless terminals)的行動用戶存取語音及資訊服務nWireless terminals 包含 wireless phones,pagers 及 personal digital assistants(PDAs)n相容於各種無線網路技術,例如,GSM,CDMA,和 TD
11、MAn架構在現有的網際網路標準,例如,IP,XML,HTML,與 HTTPn包含安全功能.WAP 協定堆疊無線審定語言(WML)無線應用環境(WAE)WML腳本無線會議協定(WSP)無線交易協定(WTP)無線傳輸層安全(WTLS)無線資料框協定(WDP)UDPIPGSMD-AMPSIS-953GBluetooth圖12.8 WAP協定堆疊WAP 的程式設計模型編 碼 器和解 碼 器閘 道 器W AE使 用 者代 理 器編 碼 請 求編 碼 請 求客 戶編 碼 回 應編 碼 回 應原 始 伺 服 器請 求請 求回應(內容)回應(內容)內 容CGI腳 本等 等圖12.9 WAP程式模式無線標籤語言
12、的功能nWireless Markup Language(WML)n支援 Text 及 image 具格式與編排指令.nDeck/card 組織譬喻 WML 文件細分為 cards,說明一個以上的互動交談單位.n支援在 cards 及 decks 間的導覽 包含 event handling的規定;使用在導覽或執行敘述(scripts).WMLScriptn屬 Scripting language,用以在使用者的裝置上定義具有有限處理能力及記憶體的 script-type 的程式.nWMLScript 的能力:n於送出資料前,檢查使用者輸入的有效性n存取裝置及週邊設備n可與使用者互動而不須動用
13、到原始伺服器.WMLScript(續)n WMLScript 功能:nJavaScript-based scripting languagen程序式邏輯nEvent-basednCompiled implementationn整合在無線應用環境.無線應用環境nWireless Application Environment(WAE)nWAE 為 wireless devices 指定了一個應用框架nWAE 的元素:nWAE User agents 在 wireless device 中執行的軟體nContent generators 回應 mobile terminal 的 user agen
14、ts 要求而產生標準內容格式的應用程式nStandard content encoding 被定義來讓 WAE user agent 可導覽 Web contentnWireless telephony applications(WTA)collection of telephony-specific extensions for call and feature control mechanismsWAE 客戶端組成元件客戶端組成元件WTA使用者代理器WML使用者代理器其他代理器WAE服務/格式WMLWTA服務WML腳本其他服務與格式URLs使用者代理器WAP協定堆疊與服務其他應用與服務元件
15、OS/服務圖12.11 WAE用戶端元件WAPF98無線會議協定nWireless Session Protocol(WSP)n架構在要求/回覆觀念的交易導向協定(Transaction-oriented protocol)n提供具二個會議服務介面的應用:n連線導向式會議服務 在可靠的傳輸協定(WTP)上運作n無連線式會議服務 在不可靠的傳輸協定(WDP)上運作連線模式的 WSP Servicesn建立/釋放從客戶端至伺服端的可靠會議n同意在協定機能的共同水平上使用能力協議(capability negotiation)n在客戶端與伺服端利用壓縮編碼交換內容.n暫停/繼續執行會議.n以非同步方
16、式將內容從伺服端送至客戶端.WSP 交易型態nSession establishment 客戶端的 WSP 使用者要求與伺服端的 WSP 使用者建立會談(session)nSession termination 客戶端的 WSP 使用者終止會談nSession suspend and resume 由暫停與繼續執行的要求啟動nTransaction 在客戶端與伺服器之間進行資料交換nNonconfirmed data push 伺服器用來傳送非要求的資訊到客戶端nConfirmed data push 伺服器收到來自客戶端的傳送確認.無線交易協定nWireless Transaction Pr
17、otocol(WTP)n適用在簡易型客戶端及低頻寬無線連線的輕型協定(Lightweight protocol)nWTP 功能n三種交易服務等級n選項式的 user-to-user 可靠性:WTP 使用者可觸動對每一個收到的訊息的確認回覆n選項式的 out-of-band data 確認n具有 PDU 串接與延遲的確認以減少訊息的傳送量n非同步交易WTP 交易等級nClass 0:不具結果的不可靠請求訊息nClass 1:不具結果的可靠請求訊息nClass 2:具有一個可靠結果的不可靠請求訊息WTP 協定資料單元(PDU)型態WTP 協定資料單元(PDU)型態(續)nInvoke PDU 用以
18、將一要求自發出者運送至回應者nACK PDU 用以確認 Invoke 或 Result PDUnResult PDU 用以將一回應自伺服器運送至客戶端nAbort PDU 用以放棄一項交易n分段式 invoke PDU 與分段式 result PDU 用在分段及重組nNegative acknowledgment PDU 用以註明有部份封包沒被收到WTP 運作範例運作範例WTP啟動WTP回應Invoke PDU(a)基本等級0交易WTP啟動WTP回應Invoke PDU(c)基本等級2交易Result PDUACK PDUWTP啟動WTP回應(b)基本等級1交易Invoke PDUACK PD
19、UWTP啟動WTP回應Invoke PDU(d)使用等待回應的等級2交易Result PDUACK PDUACK PDU圖12.14 WTP操作範例無線傳輸層安全功能nWireless Transport Layer Security(WTLS)n資料完整性Data integrity 使用訊息認証以確保在客戶端與 gateway 間傳送的資料不被修改n隱私性Privacy 使用加密方式以確保資料不被第三者讀取n認証Authentication 使用數位簽章(digital certificates)以建立雙方的認証方法n防護 Denial-of-service 的攻擊 偵測與拒絕重複發送或不
20、被驗証的訊息WTLS 協定堆疊WTLS握手協定WTLS 更改密碼規格協定WTLS警報協定WTPWTLS 紀錄協定WDP 或 UDP/IP圖12.16 WTLS協定堆疊WTLS 協定堆疊(續)nWTLS 由二層協定組成nWTLS Record Protocol 為不同的 higher-layer protocols提供基本的安全服務.nHigher-layer protocols:nThe Handshake ProtocolnThe Change Cipher Spec ProtocolnThe Alert ProtocolWTLS Record Protocol 操作使用者資料壓縮加入MAC
21、加密附掛WTLS紀錄標頭圖12.17 WTL紀錄協定操作握手協定握手協定(Handshake Protocol)用戶伺服器用戶 _hello伺服器 _hello憑證伺服器_密碼鑰匙_交換憑證_請求伺服器 _hello_ 完成憑證用戶_密碼鑰匙_交換憑證_確認交換_密碼_規格結束交換_密碼_規格結束時間建立安全功能,包括協定版本,會議 ID,密碼組,壓縮方法,與初始亂數伺服器可能送出憑證,密碼鑰匙交換,與請求憑證.伺服器信號在hello 訊息相位上結束如果是請求則用戶送出憑證.用戶出出密碼鑰匙交換.用戶可能送出憑證確認交換密碼組與結束握手協定注意:陰影部分的轉換是可選擇的且與狀態相關之訊息,這個
22、部分不會時常傳送Handshake Protocol 的階段改變nFirst phase 用來啟始邏輯連線與建立安全能力nSecond phase 用在伺服器認証及鍵值交換nThird phase 用在客戶端認証及鍵值交換nForth phase 完成安全連線的設定無線資料包協定nWireless Datagram Protocol(WDP)n用來容納 higher-layer WAP protocol 到mobile node 與 WAP gateway 間所用的通訊機制中.nWDP 自WAP其他層協定中隱藏了不同承載網路(bearer network)的細節.n採納的內容包括:n為承載網路將資料分割成適當大小片段.n當作與承載網路的介面無線控制訊息協定nWireless Control Message Protocol(WCMP)n在 WDP 執行如同 ICMP 在 IP 中的功能n用在不提供承載IP且不讓他們自已利用 ICMP的環境.n由 wireless nodes 和 WAP gateways 使用以回報在處理 WDP datagrams 時所遇到的錯誤n可用來作為資訊及偵錯目的.