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