轉自:[url]http://sj.media.edu.cn/xiayidai/index2.php?id=2&IDx=275[/url] | |||
在本文中首先說明了基於IPv6的任播通訊,及目前在該領域中存在許多可能的應用,並指出一些問題和與之對應的解決辦法,隨後介紹了一種使用特殊任播地址來創建TCP鏈接的任播地址解析協議(AARP),使得任播地址在適應已經存在的應用和高層協議時,不須要修改或者擴展的狀況下更加有效。
1 IPv6
地址類型的概述
IPv6
地址長度爲128比特,地址按照其傳輸類型分爲三種,即單播地址(UnicastAddress)、多播地址(Multicast Address)和任播地址(Anycast Address)。單播和多播地址在IPv4中已經存在,任播地址是IPv6中新的成員,RFC 2723將IPv6地址結構中的的任播地址定義爲一系列網絡接口(一般屬於不一樣的節點)的標識,其特色是:發往一個任播地址的分組將被轉發到由該地址標識的「最近」的一個網絡接口(「最近」的定義是基於路由協議中的距離度量)。
單播地址是每一個網絡接口的惟一的標識符,多個接口不能分配相同的單播地址,帶有一樣目的地地址的數據包被髮往同一個節點;另外一方面,多播地址被分配給一組節點,組中全部成員擁有一樣的組播地址,而帶有一樣地址的數據包同時發給全部成員;相似於多播地址,單一的任播地址被分配給多個節點(任播成員),但和多播機制不一樣的是:每次僅有一個分配任播地址的成員與發送端通訊。通常與任播地址相關的有三個節點,當源節點發送一個目的地地址爲任播地址地數據包時,數據包被髮送給三個節點中的一個,而不是全部的主機。任播機制的優點在於源節點不須要了解服務節點或目前網絡的狀況,而能夠接收特定服務,當一個節點沒法工做時,帶有任播地址的數據包又被髮往其餘兩個主機節點,從任播成員中選擇合適的目的地節點取決於任播路由協議。
2 IPv6
任播技術的分析
任播技術是一種新的網絡應用,它可以支持把一樣的地址能夠分配給多個節點去提供特定服務的以服務導向的地址,而帶有任播目的地地址的數據報可以使用相同的任播地址並被傳給衆多節點中的任意一個。因特網研究任務組(IRTF)在1993年到RFC 1546中已經定義了任播技術的做用:「主機向一個任播地址發送數據報,網絡負責盡力將數據報傳遞到至少一個,最好也是一個,按任播地址接收數據的服務器上。'採用任播機制的初衷是完全去簡化在互聯網中尋找合適服務器的任務;任播通訊的基本概念是從物理主機設備中分離出的邏輯服務標識符,任播地址能夠根據服務類型來分配,使得網絡服務擔當一個邏輯主機的角色。
雖然目前任播技術的定義不是十分清楚,可是終端主機經過路由器是被基於包交換所決定。任播技術的概念並不侷限於網絡層,它也能夠在其餘層實現(例如:應用層),網絡層和應用層的任播技術均有優勢和缺點。
3 IPv6
任播技術的應用
適合於任播通訊的應用有不少,其中比較重要的一個應用是服務器位置。發送端的主機能夠在衆多一樣功能的主機中選擇其中一個,若是合理地利用任播路由方法去將任播需求均勻的分配到主機上,任播主機之中的負載分配目標能夠達到。在任播主機中使用簡便的隨即選擇方法在網絡層任播技術中卻不會奏效,例如:CPU的負載,由於很難知道每一個服務器的資源使用狀態,而應用層任播技術使用該方法倒是實用的。
另外一個重要應用是服務位置,發送端主機能夠經過說明任播地址去從多個任播主機中選擇與最佳的、最小時延的、最大輸出量的主機進行通訊,例如:在諸如移動ad hoc網絡這類動態改變環境下運用該方法特別適用。經過網絡層的任播技術,節點能夠和合適的或是最近的服務器進行通訊,並經過應用層任播技術得到該類服務。
網絡層任播技術的優點在於能夠提供令源節點在無須藉助服務節點和網絡的狀況下,可以接收到特定服務機制的簡便方法。
4 IPv6
任播技術的問題和解決方法
IPv6
任播技術仍然存在許多問題。首先是任播技術的使用場合和應用任播技術的優勢,其次是基於IPv6的任播技術是一個路由協議並無被包括IPv6的規範說明中,而這正是使得任播技術應用更普遍不可獲缺的條件,路由器應該在決定目的地網絡讓任播包能夠合適的傳送地過程當中起到主動做用。目前的任務是須要設計和應用合適的任播路由協議到任播應用場合之中,並讓互聯網可以逐步去支持任播技術。例如:任播路由即便在因特網中只有少許的節點或路由器支持任播技術時也可以恰當的工做。全部基於TCP和一些基於UDP的協議在互聯網應用中已經說明了,端主機之間創建通訊過程,並在交換信息過程當中認爲它們是一致的。
4.1
主機向任播成員通告參與的問題
節點申明除了針對任播地址的公開路由信息之外,它們能夠接受的數據報,而在IPv6的技術說明中節點必須是一個路由器。一個主機準備加入成爲任播成員或離開時,它必須有不一樣的能力去向「最近」的任播路由器通告它目前的狀態(加入或離開)。
|