麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 網絡通信 > 正文

一種新的IPv6任播地址解析協議及應用

2019-11-03 08:59:02
字體:
來源:轉載
供稿:網友
王建 李方偉


  摘要:任播技術是一種新的網絡應用。任播通信是支持導向服務地址的,但是目前ipv6中它的很多定義是模糊的,并且在控制路由方面沒有達成一致的協議標準,因此節點間任播通信仍然無法實現。在本文中首先說明了基于IPv6的任播通信,及目前在該領域中存在許多可能的應用,并指出一些問題和與之對應的解決辦法,隨后介紹了一種使用特殊任播地址來建立TCP連接的任播地址解析協議(AARP),使得任播地址在適應已經存在的應用和高層協議時,不需要修改或者擴展的情況下更加有效。

  關鍵詞:IPv6, 任播通信,任播地址,解析,網絡應用

1 IPv6地址類型的概述

  IPv6地址長度為128比特,地址按照其傳輸類型分為三種,即單播地址(Unicast Address)、多播地址(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的技術說明中節點必須是一個路由器。一個主機準備加入成為任播成員或離開時,它必須有不同的能力去向“最近”的任播路由器通告它目前的狀態(加入或離開)。

4.2 支持高層申明協議的問題

  因為任播技術擁有無狀態的特性,它不能確保屬于相同的任播地址的所有數據報會傳到同一個目的地節點,然而這將會導致的是諸如TCP這類的全狀態協議不被支持這一嚴重的問題。當主機向任播地址發起TCP連接時,接收端主機為了確認信息包,它將不能設置自己的任播地址作為源地址。IPv6技術說明中不允許任播地址來源于在包頭設置的源地址,這主要是由于IPv6任播地址沒有定義單獨的源節點。如果協議允許任播地址被設置到包頭的源地址,接受端主機在通信過程中將不能確信所有發送的數據包來自于同一個主機,也就是說主機的任播地址不能接收到包確認。

4.3 實現任播路由的問題

  目前現存任播技術的標準定義路由協議都很不清楚,因此在設計IPv6任播路由協議時還存在一些相關的技術問題。

  (a)可量測性問題。由于任播成員不管它們實際的前綴時位置是分散的,所以針對任播地址的路由條目無法被聚集。因此針對任播地址的路由條目必須分別被存儲在路由器中,當任播地址得到廣泛應用時,路由表會變得十分擁擠。

  (b)安全問題。維持任播成員關系特別重要,對主機獲得成員資格最簡單的方式是它只需廣播針對相關任播地址進入路由器的路由條目。但是這種方法有時會導致嚴重的安全問題,即任播主機可以自由的在路由表中添加或刪除路由條目。

  (c)選擇任播成員資格的標準。不同的應用需要不同的標準,如果應用中需要快速響應,在源節點和任播節點之間的傳播時延就相當重要,任播成員資格的最近節點應該作出選擇。任播路由機制的標準的選擇對于任播通信容量能力影響極大。

  任播地址重要的一個特點是任播地址必須從同一個地址空間分配作為一個單播地址,因而從單播地址中無法加以區別。RFC1546原來推薦的是分配任播機制本身的地址空間,為了希望極大地降低由于應用中錯誤而無法辨識出任播地址的風險。當任播路由器配置時,互聯網中的一些路由器不可能處理任播地址,這些地址如果被分配在單播地址空間中,對于繼承的路由器針對通信去配置特殊的操作變得沒有必要。任播路由器去判斷接收包的目的地地址是否是任播地址或是單播地址是很困難的,設計路由協議也會存在問題的。

5 新的任播地址解析協議及應用

  任播地址解析協議(AARP)可以滿足IPv6任播和高層協議(諸如:沒有必要去修改應用和協議的TCP和UDP)。更明確的說,實行AARP的目的是為了解決專門用于通信單播地址的任播地址的問題。AARP用來作為一種寫在原始應用編程接口(API)之上的動態鏈接庫(DLL),這種庫實際上是能夠提供一套與原始IPv6的API插槽相同的API插槽,并用來解決任播地址的AARP庫,它可以在呼叫原始API之前將任播地址轉換成相應的通信單播地址。任播地址僅僅用于應用層和AARP庫層,而在AARP庫層以下的層并不采用任播地址,只是處理轉換后的單播地址。

5.1 AARP的地址解析過程

  假設主機C想和任播地址為AA的另一個主機建立任播通信,任播地址解析過程如下:(1)主機C呼叫帶有參數的任播地址的socket API模塊(譬如:TCP中的connect( ) ),AARP庫的API替代API的套接層面而被呼叫。(2)AARP庫在被叫者的功能中將任播地址轉換成單播地址。(3)轉換后,AARP庫通過單播地址呼叫原來的socket API。(4)當通信被建立以后,從主機C發出的所有信息包的目的地地址都給被賦以單播地址,并傳輸給主機S。

5.2 AARP的地址轉換方法

  由IPv6的協議規范得知當不能自身確定任播地址時,連接任播地址的主機通信應該至少從目的地主機接收到一個數據包。地址轉換有以下兩種方法:

5.2.1探測數據包法(由客戶端發起)

  主機在進行通信之前首先發送一個探測數據包給任播地址,它可以從返回數據包的源地址中得到目的地主機的單播地址。

5.2.2捎帶確認法(由服務器端發起)

  捎帶確認法指的是經全雙工(雙向同時)數據鏈路,不用專門(確認)報文返回確認信息所用的技術。與一個方向的報文流有關的確認信息鉗在反方向正常攜帶數據的報文流中,當數據包從通信對端返傳回來時,任播主機將任播地址附加到數據包。通過檢查附加在數據包上的信息,可以確認數據包是從與任播地址相聯系的主機上發送出的。

  探測包方法中需要提供給探測數據包額外的網絡帶寬,這將會浪費網絡資源。與之相對的,捎帶確認方法需要修改應用使得任播地址可以捎帶到數據包上。由于實際應用中應當避免應用的任何修改,必須在AARP中包括單播地址來使用探測包法。

5.3 AARP的應用

  為了解析任播地址到它相應的單播地址,可以使用ICMPv6 ECHO REQUEST/REPLY包。由于任播地址不能設置到數據包頭的源地址,任播成員主機在ICMP包源地址區域上設置通信單播地址來代替任播地址。因此,接收發送到任播地址的ICMPv6 ECHO REQUEST/REPLY包的主機會附帶使用它的單播地址來發送這個數據包。如果AARP無法使用ICMPv6機制,從呼叫者主機需要配置特殊的軟件來相應探測數據包。

  AARP庫也會提供一張高速緩沖存儲器表用來解析任播地址,當任播地址不能在表上隱藏時,AARP可以發送探測數據包去解析任播地址。解析后的單播地址和定時器一起存儲在高速緩沖存儲器表上,當超時后會被刪除。對客戶端而言,向任播地址的數據包被傳遞到同一個任播服務器,直到高速緩沖存儲器失效,與之相反,AARP從高速緩沖存儲器表返回解析后的單播地址,針對任播地址的條目在高速緩沖存儲器表失效后,探測數據包才會被發送。使用ICMP包的方法雖然簡便,但是不能解決安全的問題。即使惡意用戶捕獲ICMP ECHO REQUEST包并發送它,客戶端也只是用數據包的源地址。

6 結論

  目前,IPv6任播機制在實際通信中的應用依然存在許多問題。為了解決這些問題,在本文中介紹了一種新的IPv6地址解析協議(AARP)將任播地址轉換為相應的通信單播地址,并在轉換后可以直接用于實際的通信中,使得任播通信在不改變現有應用設置協議的基礎上得以實現。


摘自 世界電信
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美乱论 | 91午夜视频 | 久久2019中文字幕 | av电影网在线观看 | 在线观看国产www | 日本xxxx视频 | 日本羞羞的午夜电视剧 | 一级做a在线观看 | 免费一区二区三区 | 免费国产不卡午夜福在线 | 国产精品久久久久久久四虎电影 | 黄 色 免费网 站 成 人 | 九色在线78m | 日韩av电影在线免费观看 | 一本色道久久99精品综合蜜臀 | 成人一级毛片 | 成人羞羞在线观看网站 | 国产欧美日韩视频在线观看 | 线观看免费完整aaa 久久不雅视频 | 大片毛片 | 免费永久看羞羞片网站入口 | 91久久国产综合久久91精品网站 | hdhdhd69ⅹxxx黑人 | 中文在线观看www | 九九热免费视频在线观看 | 九九热精彩视频 | 97中文字幕在线观看 | 色婷婷久久久亚洲一区二区三区 | 国产精品亚洲精品久久 | 天堂亚洲一区 | 精品国产91一区二区三区 | h视频在线免费观看 | 国产亚洲精久久久久久蜜臀 | 久久精品视频16 | 在线看免费的a | 国产精品美女久久久免费 | 亚洲特黄| 91在线看黄 | 中日韩乱码一二新区 | 久久国产成人精品国产成人亚洲 | 美国黄色小视频 |