rfc5245翻譯--4

對此rfc的翻譯正確性不做任何保證。按照它而導致的任何問題後果自負。轉載請註明原地址。

對此rfc的翻譯正確性不做任何保證。按照它而導致的任何問題後果自負。轉載請註明原地址。

4.1.2候選優先級計算

媒體流的候選地址的優先級必須是唯一的,範圍1-2^31-1。優先級將用來決定連接檢測的順序和候選地址的選擇。

Agent應該用4.1.2.1節的方法計算優先級。並按4.1.2.2的原則選擇計算參數。如果一個agent不用這個算法,雙方會不協調而導致ICE完成時間變長。

4.1.2.1推薦方法

方法:Agent對各類型的候選地址設定偏好值,並且當agent是多IP的,爲不同IP設置偏好值(譯註:本地偏好)。然後兩個偏好值混合起來計算候選地址的優先級。計算公式如下:

 

   priority =(2^24)*(type preference) +

             (2^8)*(local preference) +

             (2^0)*(256 - component ID)

類型偏好範圍[0-126] 的整數,126最高0最低。相同類型候選的類型偏好值必須一樣,不同類型候選的類型偏好值必須不同。對端自反地址偏好值必須高於服務器自反地址。注意通過4.1.1的過程後不可能獲得對端自反地址;它通過ICE的連接檢查獲取。

本地偏好必須是[0-65535]的整數。65535最高。當只有一個IP,本地偏好應該被設置爲65535。更一般的來說,一個媒體組件有多個類型相同的候選地址,每個候選地址的本地偏好必須唯一。這個只發生在多IP主機。如果是因爲雙棧(IPv6 +IPV4)原因導致的多IP(rfc3484),本地偏好應該一樣。

組件ID範圍[0-256]

4.1.2.2選擇類型和本地偏好的原則

選擇標準之一是媒體中繼,如TURN,VPN,NAT的用法。如果媒體流發到那些候選地址,它在到達目的前會在中繼中轉。一類需要媒體中繼的候選地址是中繼地址(譯註:TURN)。另類是從VPN獲得的主機地址。使用媒體中繼的成本高。建議優先級:主機候選地址126,服務器自反地址100,對端自反地址110,0中繼地址0。如果是多IP主機,從VPN獲得的地址的本地偏好(local preference)應該設爲0

選擇標準之二是IP的類型。(RFC3056)在雙棧(IPv4+IpV6)主機上,優先選擇IPv6,Ipv6失敗選擇Ipv4。這時IpV6的本地偏好優先值高,6轉4地址優先級次之,4地址最低。

選擇標準之三是安全性。比如用戶通過VPN網絡和內部客戶相連,而和外網直接連通,用戶希望和內部用戶通話時優先選擇VPN,這時VPN地址的本地優先級要提高。

選擇標準之四是網絡拓撲發現。在有中繼時很有用當一個agent有個預先配置/動態發現的中繼。這個候選地址的本地偏好值可以調高。

4.1.3刪除冗餘地址

冗餘地址是指傳輸層地址相同BASE相同的候選地址。通常一個設備不在NAT後的話服務器自反地址和主機地址是冗餘的。Agent應該刪除低優先級的冗餘地址

4.1.4選擇默認候選

和不支持ICE對端通信的目的候選地址叫做默認候選;它也叫默認目標。如果和支持ICE的對端交互時沒有選擇默認候選,需要在ICE完成後需要一個update offer/answer,用來”修復”SDP來讓默認候選和ICE選擇的候選地址相同。

Agent必須爲每個在使用的媒體流選個默認地址。在使用的媒體流沒有0端口(rfc3264 用來拒絕媒體流)。甚至當如果媒體流a=inactive(RFC 4566)或者bandwidth值0時表明媒體流在使用。

建議根據對端連接的可能性來選擇默認候選。建議默認候選順序:中繼地址,服務器自反地址,主機候選地址

4.2簡易實現需要的

(未完待續)

 



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章