摘要:互聯網技術移動報文發送和接收搜塊設計:移動報文發送緊接者解析和構造報文模塊,它的作用是將移動報文按照要求,填好IPv6包頭,并加入擴展頭,最后送到發送隊列上。
3.3.6 移動報文發送和接收搜塊設計
移動報文發送緊接者解析和構造報文模塊,它的作用是將移動報文按照要求,填好IPv6包頭,并加入擴展頭,最后送到發送隊列上。
解析和構造報文模塊首先發送報文,然后構造數據。在數據中加入HA地址選項、類型2路由頭,用于以后在IPv6層的擴展包頭的產生。最后加入IPPROTO.MH類型并放入socket發送隊列,傳遞到IPv6層。
為了處理移動報文,必須對Linux內核中ip6_mitpUt函數進行修改:在正常處理數據包的同時,齋要查找本地的綁定級存或BU列表,找出HoA和CoA,構造好IPv6包頭(主要是源地址和R的地址),類型2路由頭,HoA選項。整個發送流程如圖3-34所示。

移動報文接收用于接收移動報文,主要作用是取出CoA和HoA,交換位胥,然后輸入到解析和構造移動報文模塊。其實現相對簡單。
由于加入新的協議交換表項,當出現IPPROTO_MH類型的數據報時,首先通過IPv6輸入模塊處理,然后進入MIPv6模塊進行處理o在通過幾層調用后,最后通過移動頭處理函數來處理報文中的HoA選項和類型2路由頭,取出CoA和HoA,交換位置,傳到解析和構造移動報文模塊處理。同時在IPv6輸入模塊處理數據包時,對于不是本機地址的包,需要查詢代理列表來確定這個地址是否為本機代理的地址。如果是,就通過隧道將其轉發。整個接收流程如圖3-35所示。

返回目錄:
編輯特別推薦:
通信工程師備考資料免費領取
去領取
專注在線職業教育25年