成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

視頻通信原理之NET的簡單介紹

zhaot / 1337人閱讀

摘要:網(wǎng)絡地址轉(zhuǎn)換,其基本工作原理是當私有網(wǎng)主機與公共網(wǎng)逐漸通信的經(jīng)過網(wǎng)關(guān)時,將包中的源或目的在私有和的公共之間進行轉(zhuǎn)換。由于包的源已經(jīng)被轉(zhuǎn)換成的公共,響應的包將被發(fā)送到。對于通信雙方而言,這種地址的轉(zhuǎn)換過程是完全透明的。

一:為什么需要NAT

由于IP地址隨著互聯(lián)網(wǎng)的發(fā)展而逐漸稀缺,難以使得每臺主機都擁有一個公網(wǎng)上的IP地址,且并不是所有主機都需要一個公網(wǎng)上的地址,于是就有了NAT技術(shù)。

NAT(The IP Network Address Translator)網(wǎng)絡地址轉(zhuǎn)換,其基本工作原理是:當私有網(wǎng)主機與公共網(wǎng)逐漸通信的IP經(jīng)過NAT網(wǎng)關(guān)時,將IP包中的源IP或目的IP在私有IP和NAT的公共IP之間進行轉(zhuǎn)換。

假設(shè)NAT網(wǎng)關(guān)有2個網(wǎng)絡端口,其中公共網(wǎng)絡端口的IP地址是統(tǒng)一分配的公共IP,為202.204.65.2;私有網(wǎng)絡端口的IP地址是保留地址,為192.168.1.1。私有網(wǎng)中的主機 192.168.1.2向公共網(wǎng)中的主機166.111.80.200發(fā)送了1個IP包(Des=166.111.80.200,Src=192.168.1.2)。

當IP包經(jīng)過NAT網(wǎng)關(guān)時,NAT會將IP包的源IP轉(zhuǎn)換為NAT的公共 IP并轉(zhuǎn)發(fā)到公共網(wǎng),此時IP包(Des=166.111.80.200,Src=202.204.65.2)中已經(jīng)不含任何私有網(wǎng)IP的信息。由于IP 包的源IP已經(jīng)被轉(zhuǎn)換成NAT的公共IP,響應的IP包(Des=202.204.65.2,Src=166.111.80.200)將被發(fā)送到NAT。 這時,NAT會將IP包的目的IP轉(zhuǎn)換成私有網(wǎng)中主機的IP,然后將IP包(Des=192.168.1.2,Src=166.111.80.200)轉(zhuǎn) 發(fā)到私有網(wǎng)。對于通信雙方而言,這種地址的轉(zhuǎn)換過程是完全透明的。

二、NAT類型 (一)Full-cone NAT:

一旦一個內(nèi)網(wǎng)地址 (iAddr:iPort) 被映射到一個外部地址 (eAddr:ePort), 來自 iAddr:iPort 的任何數(shù)據(jù)包將通過 eAddr:ePort 發(fā)送。

任何外部主機能夠通過eAdder:ePort這個地址發(fā)送數(shù)據(jù)包到iAddr:iPort

(二)Address-restricted-cone NAT:

一旦一個內(nèi)網(wǎng)地址(iAdder:iPort)被映射到一個外部地址(eAddr:ePort),來自iAddr:iPort的任何數(shù)據(jù)包將通過eAddr:ePort發(fā)送。

僅只有接收到主機(iAddr:iPort)通過eAddr:ePort發(fā)送的數(shù)據(jù)包的外部主機通過該主機的任何端口發(fā)送到eAddr:ePort的數(shù)據(jù)包才能夠被正確的轉(zhuǎn)發(fā)到iAddr:iPort.也就是說主機有關(guān)端口無關(guān)

(三)Port-restricted cone NAT

類似于address restricted cone NAT, 但是端口號有限制.

一旦一個內(nèi)網(wǎng)地址 (iAddr:iPort) 被映射到一個外部地址 (eAddr:ePort), 來自 iAddr:iPort 的任何數(shù)據(jù)包將通過 eAddr:ePort 發(fā)送.

僅只有接收到主機(iAddr:iPort)通過eAddr:ePort發(fā)送的數(shù)據(jù)包的外部主機通過該主機的相同端口發(fā)送到eAddr:ePort的數(shù)據(jù)包才能夠被正確的轉(zhuǎn)發(fā)到iAddr:iPort.

(四)Symmetric NAT

來自相同內(nèi)部ip和port發(fā)送到相同目的地ip和port的請求被映射到唯一的外部ip和port地址;如果相同的內(nèi)部主機采用相同的ip和port地址發(fā)送到不同的目的地,那么重新分配映射地址。

只有先前收到內(nèi)部主機發(fā)送包的外部主機才能夠發(fā)送返回包到內(nèi)部主機。

針對前面三種NAT類型,只要通信雙方彼此知道對方的內(nèi)部地址和外部地址的映射關(guān)系,然后通過UDP打洞的方式就可以建立相互連接的通信;但是第四種也就是Symmetric NAT的話由于每次向不同目的地發(fā)送數(shù)據(jù)包時采用不同的外部地址,也就沒辦法通過直接的方式建立P2P連接。

三:為什么要做NAT穿透:

我們知道在日常的互聯(lián)網(wǎng)交互中,所有的信息流必須要通過NAT,經(jīng)過服務器,而這對服務器的壓力可想而知。

這時就有人提出,我們能不能不從服務器經(jīng)過,直接對兩個端口進行連接。這樣不僅能減輕服務器壓力,也可以節(jié)省大量的流量。這時發(fā)現(xiàn),之前幫助端口實現(xiàn)“溝通”的NAT現(xiàn)在成了直接連接的阻力。NAT穿透是實現(xiàn)P2P所需的基礎(chǔ)。

四:如何做NAT穿透:

NAT穿透目前主要有:ALG、MII3COM、STUN、TURN、ICE和Full?Proxy等6種方式,這里主要介紹一下ICE方式

ICE是一種NAT穿透技術(shù),通過offer/answer模型建立基于UDP的媒介流。ICE是offer/answer模型的擴展,通過在offer和answer的SDP里面包含的IP地址和端口,然后對本地SDP和遠程SDP里面的IP地址進行配對,然后通過P2P連通性檢查進行連通性測試工作,如果測試通過即表明該傳輸?shù)刂穼梢越⑦B接。其中IP地址和端口有以下幾種:本機地址、通過STUN服務器反射后獲取的server-reflexive地址(內(nèi)網(wǎng)地址被NAT映射后的地址)、relayed地址(和TURN轉(zhuǎn)發(fā)服務器相對應的地址)及Peer reflexive地址等。

在通常的ICE部署環(huán)境中,我們有兩個端想要建立通信連接,他們可以直接通過signaling服務器(如SIP服務器)執(zhí)行offer/answer過程來交換SDP消息。

在ICE過程開始的時候,客服端會忽略他們各自的網(wǎng)絡拓撲結(jié)構(gòu),不管是不是在NAT或多個NAT后面,ICE允許客服端發(fā)現(xiàn)他們所在網(wǎng)絡的拓撲結(jié)構(gòu)的信息,然后找出一個或更多可以建立通信連接的路徑。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/11061.html

相關(guān)文章

  • 詳解云計算網(wǎng)絡底層技術(shù)——Linux network namespace 原理與實踐

    摘要:和相關(guān)的操作的子命令是。之間的通信新創(chuàng)建的默認不能和主機網(wǎng)絡,以及其他通信。下面顯示兩個之間通信的網(wǎng)絡拓撲創(chuàng)建使用命令指定的名字。 本文首發(fā)于我的公眾號 CloudDeveloper(ID: cloud_dev),專注于干貨分享,號內(nèi)有大量書籍和視頻資源,后臺回復「1024」即可領(lǐng)取,歡迎大家關(guān)注,二維碼文末可以掃。 本文通過 IP 命令操作來簡單介紹 network namespac...

    binta 評論0 收藏0

發(fā)表評論

0條評論

zhaot

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<