計算機(jī)網(wǎng)絡(luò)-NAT與P2Pppt課件_第1頁
計算機(jī)網(wǎng)絡(luò)-NAT與P2Pppt課件_第2頁
計算機(jī)網(wǎng)絡(luò)-NAT與P2Pppt課件_第3頁
計算機(jī)網(wǎng)絡(luò)-NAT與P2Pppt課件_第4頁
計算機(jī)網(wǎng)絡(luò)-NAT與P2Pppt課件_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、NAT and P2P1;.2網(wǎng)絡(luò)地址裝換(NAT)Network Address TranslationNAT允許一個機(jī)構(gòu)專用Intranet中的主機(jī)透明地連接到公共域中的主機(jī),無需內(nèi)部主機(jī)擁有注冊的(以及越來越缺乏的)Internet地址。 NAT是一種把內(nèi)部私有網(wǎng)絡(luò)IP地址翻譯成合法網(wǎng)絡(luò)IP地址的技術(shù)。 3NAT技術(shù)4NAT技術(shù)引入的原因解決IP地址不夠用的問題 A類 55 B類 55 C類 55對內(nèi)部計算機(jī)進(jìn)行有效的安全保護(hù) 內(nèi)部網(wǎng)絡(luò)中的所有計算機(jī)上

2、網(wǎng)時受到路由器或服務(wù)器(防火墻)的保護(hù),黑客與病毒的攻擊被阻擋在網(wǎng)絡(luò)出口設(shè)備上,大大提高了內(nèi)部計算機(jī)的安全性。 5NAT分類基本的NAT(Basic NAT)將私網(wǎng)主機(jī)的私有IP地址轉(zhuǎn)換成公網(wǎng)IP地址,但并不將TCP/UDP端口信息進(jìn)行轉(zhuǎn)換。 網(wǎng)絡(luò)地址/端口轉(zhuǎn)換器(NAPT)NAPT檢查、修改包的IP地址和TCP/UDP端口信息。這樣,更多的內(nèi)部主機(jī)就可以同時使用一個公網(wǎng)IP地址。 6NAPT當(dāng)一個內(nèi)部網(wǎng)主機(jī)通過NAT打開一個外流的TCP或UDP會話時,NAPT分配給這個會話一個公網(wǎng)IP和端口,用來接收外網(wǎng)的響應(yīng)的數(shù)據(jù)包,并經(jīng)過轉(zhuǎn)換通知內(nèi)部網(wǎng)的主機(jī)。這樣做的效果是,NAPT在私網(wǎng)IP:私網(wǎng)端口

3、和公網(wǎng)IP:公網(wǎng)端口之間建立了一個端口綁定。端口綁定指定了NAPT將在這個會話的生存期內(nèi)進(jìn)行地址轉(zhuǎn)換任務(wù)。對通信雙方而言,這種IP地址和端口的轉(zhuǎn)換是完全透明的。78 服務(wù)器 S1 服務(wù)器 S2 1:1235 :1235 會話 1 (A-S1) 會話 2 (B-S2) 1:1235 :1235 1: 1: NAT 1 會話 1 (A-S1) 會話 2 (B-S2) 1: : :1234 10

4、.0.0.2:1234 Client A Client B9NAT地址轉(zhuǎn)換表私網(wǎng)IP:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12341:12351:62000:1234:12351:6200110虛擬服務(wù)器虛擬服務(wù)器:對路由器任何一個或一段協(xié)議端口的訪問(從WAN口進(jìn)來的訪問),都可以重定位到局域網(wǎng)內(nèi)某一臺指定的網(wǎng)絡(luò)服務(wù)器。192.168. 1.1:80 www 7:80/:2 smtp 25 pop3

5、 11011NAPT如果P2P應(yīng)用程序從內(nèi)部網(wǎng)絡(luò)的一個私網(wǎng)IP:私網(wǎng)端口對同時發(fā)出多條會話給不同的外網(wǎng)主機(jī),根據(jù)NAT處理方式,分成下面兩類:對稱NAT(Symmetric NAT)1. 錐形錐形NAT(Cone NAT)12對稱NAT 服務(wù)器 S1 服務(wù)器 S2 1:1235 :1235 | | | | +-+-+ | 會話 1 (A-S1) | 會話 2 (A-S2) | 1:1235 | | | :1235 | v 1: v | v 1: v | 對稱 NAT

6、1 | 會話 1 (A-S1) | 會話 2 (A-S2) | 1:1235 | | | :1235 | v :1234 v | v :1234 v | Client A13錐形錐形NAT建立在(私網(wǎng)IP、私網(wǎng)端口)和(公網(wǎng)IP、公網(wǎng)端口)之間端口的綁定之后,如果Cone NAT 再次創(chuàng)建一個從同一(私網(wǎng)IP、私網(wǎng)端口)建立的會話時,不會新分配一個端口號,而是用原來分配的端口號,只要這個會話使綁定的端口仍然有效。14錐形錐形NAT 服務(wù)器 S1 服務(wù)器 S2 1:1235 138

7、.76.29.7:1235 | | | | +-+-+ | 會話 1 (A-S1) | 會話 2 (A-S2) | 1:1235 | | | :1235 | v v | v : v | 錐形 NAT 1 | 會話 1 (A-S1) | 會話 2 (A-S2) | 1:1235 | | | :1235 | v :1234 v | v :1234 v | 客戶機(jī) A :123415P2P(Peer-to-Peer) 16P2P概述很多NAT的采用

8、使通信處在一種不對稱的模式下:內(nèi)網(wǎng)的主機(jī)可以主動訪問鏈接到外網(wǎng)主機(jī)上,但是外網(wǎng)的主機(jī)除非通過代理管理員的特定設(shè)置,否則不能主動訪問鏈接到內(nèi)網(wǎng)主機(jī)上。P2P技術(shù)是一種用于不同PC用戶之間、不經(jīng)過中繼設(shè)備直接交換數(shù)據(jù)或服務(wù)的技術(shù)。它打破了傳統(tǒng)的C/S模式,在對等網(wǎng)絡(luò)中,每個節(jié)點的地位都是相同的,具備客戶端和服務(wù)器雙重特性,可以同時作為服務(wù)使用者和服務(wù)提供者。由于P2P技術(shù)的飛速發(fā)展,互聯(lián)網(wǎng)的存儲模式將由目前的“內(nèi)容位于中心”模式轉(zhuǎn)變?yōu)椤皟?nèi)容位于邊緣”模式,改變Internet現(xiàn)在的以大網(wǎng)站為中心的狀態(tài),重返“非中心化”,將權(quán)力交還給用戶。 17P2P通信方式通信方式 18P2P的技術(shù)特點(1) 既

9、是S(Server)又是C(Client),如何表現(xiàn)取決于用戶的要求,網(wǎng)絡(luò)應(yīng)用由使用者自由驅(qū)動。 (2) 信息在網(wǎng)絡(luò)設(shè)備間直接流動,高速及時,降低中轉(zhuǎn)服務(wù)成本。 (3) 構(gòu)成網(wǎng)絡(luò)設(shè)備互動的基礎(chǔ)和應(yīng)用。 (4) 在使網(wǎng)絡(luò)信息分散化的同時,相同特性的P2P設(shè)備可以構(gòu)成存在于互聯(lián)網(wǎng)這張大網(wǎng)中的子網(wǎng),使信息按新方式又一次集中。19基于NAT代理設(shè)備上的P2P技術(shù) 中繼轉(zhuǎn)發(fā)(Relaying) 反向連接(Connection reversal) UDP打洞技術(shù)(UDP Hole Punching)20中繼轉(zhuǎn)發(fā)(Relaying)穿越代理實現(xiàn)P2P通信, 最可靠但是效率最低的的方法,將P2P通信看作一個C

10、/S結(jié)構(gòu),通過服務(wù)器來轉(zhuǎn)發(fā)消息。舉例來說,假設(shè)二個客戶機(jī)A和B,與一個有公網(wǎng)固定IP地址的服務(wù)器S各創(chuàng)建一個TCP或UDP連接,這兩個客戶機(jī)在不同的私網(wǎng)上,這樣,他們各自的NAT代理服務(wù)器不允許他們向?qū)Ψ絼?chuàng)建直接的連接。 21中繼轉(zhuǎn)發(fā)(Relaying) 服務(wù)器 S | | +-+-+ | | NAT A NAT B | | | | 客戶機(jī) A 客戶機(jī) B22中繼轉(zhuǎn)發(fā)(Relaying)優(yōu)勢:當(dāng)兩個客戶端都與服務(wù)端保持連接的時候,它將始終如一的正常工作。劣勢:它消耗服務(wù)器不必要地處理能力和網(wǎng)絡(luò)帶寬,而且即使服務(wù)器有好的鏈接性,在二個客戶機(jī)之間的通信反應(yīng)時間比較長。 23反向連接(Connect

11、ion reversal) 如果只有一個客戶機(jī)在NAT后,那么采用反向連接技術(shù)。如下圖,假設(shè)客戶機(jī)A在NAT后,而客戶機(jī)B有一個公網(wǎng)IP地址: 服務(wù)器 S 1:1235 | | +-+-+ | | NAT A | 1:62000 | | | | | 客戶機(jī)A 客戶機(jī)B :1234 :123424反向連接(Connection reversal)現(xiàn)在假設(shè)客戶機(jī)B想要和客戶機(jī)A創(chuàng)建一個P2P通信會話,B可能先嘗試連接客戶機(jī)A的任何一個地址或是客戶機(jī)A的私網(wǎng)地址:1234,或是從服務(wù)器S觀察到的地址155

12、.99.25.11:6200。然而在任一情況,連接都會失敗。在第一種情況中,因為不是公網(wǎng)可路由的IP地址,所以不能通過網(wǎng)絡(luò)直接連接IP地址。在第二種情況中,來自B的TCP SYN請求將會直接到達(dá)NAT A的62000端口,但因為NAT A只允許外流的連接從而拒絕該連接請求。25反向連接(Connection reversal)在所有嘗試失敗后,客戶機(jī)B只能請求服務(wù)器S對客戶機(jī)A轉(zhuǎn)發(fā)一個請求到客戶機(jī)A,請求A創(chuàng)建一個“反向”的連接到B??蛻魴C(jī)A一收到這個經(jīng)過S的轉(zhuǎn)發(fā)請求后,將建立一個與B通信的TCP連接(在B的公網(wǎng)IP地址和端口號上)。NAT A允許這個連接通過,

13、因為這個連接起源于NAT A的內(nèi)部,同時客戶端B接受這個連接因為B并不位于NAT之后?,F(xiàn)在很多的P2P系統(tǒng)采用這種技術(shù)。主要缺陷:只有一端在NAT之后這個技術(shù)才能生效。而通常情況中,往往兩端都在NAT后面,不能采用這種技術(shù)。因為反向連接不是問題的通用解決辦法,并不推薦。26NAT存在問題通過NAT,子網(wǎng)內(nèi)的計算機(jī)向外連結(jié)是很容易的(NAT相當(dāng)于透明的,子網(wǎng)內(nèi)的和外網(wǎng)的計算機(jī)不用知道NAT的情況)。 但是如果外部的計算機(jī)想訪問子網(wǎng)內(nèi)的計算機(jī)就比較困難了 !怎么辦?27客戶機(jī)分別位于不同NAT后面 服務(wù)器 S 1:1234 | | +-+-+ | | NAT A NAT B 1

14、1:62000 :31000 | | | | 客戶機(jī)A 客戶機(jī) B :1234 :123428UDP打洞技術(shù)(UDP Hole Punching) “UDP打洞技術(shù)”依賴公共防火墻和錐形NAT,允許恰當(dāng)?shù)挠杏媱澋腜2P應(yīng)用程序通過NAT打洞,即使通信雙方的計算機(jī)都在NAT之后。 29誰發(fā)起?有了上面的理論,實現(xiàn)兩個內(nèi)網(wǎng)的主機(jī)通訊就差最后一步了:那就是雞生蛋還是蛋生雞的問題了,兩邊都無法主動發(fā)出連接請求,誰也不知道誰的公網(wǎng)地址,那我們?nèi)绾蝸泶蜻@個洞呢?我們需要一個中間人來聯(lián)系這兩個內(nèi)網(wǎng)主機(jī)。 30“打洞”過程(一) (1)

15、首先,Client A登錄服務(wù)器,NAT A為這次連接分配了一個端口62000,那么Server S收到的Client A的地址是1:62000,這就是Client A的外網(wǎng)地址了。 (2)同樣,Client B登錄Server S,NAT B給此次連接分配的端口是31000,那么Server S收到的B的地址是:31000 。此時,Client A與Client B都可以與Server S通信了。31P2P通信方式通信方式 (1)(2)32NAT A地址轉(zhuǎn)換表客戶A IP:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12

16、341:12341:62000客戶B IP:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12341:1234:31000NAT B地址轉(zhuǎn)換表服務(wù)器 S客戶客戶IP:Port客戶機(jī)A1:62000客戶機(jī)B:31000(1)(2)33“打洞”過程(二)如果Client A此時想直接發(fā)送信息給Client B,那么他可以從Server S那兒獲得B的公網(wǎng)地址:31000 ,是不是Client A向這個地址發(fā)送信息Client

17、 B就能收到了呢?答案是不行,因為如果這樣發(fā)送信息,NAT B會將這個信息丟棄(因為這樣的信息是不請自來的,為了安全,大多數(shù)NAT都會執(zhí)行丟棄動作)??蛻鬊 IP:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12341:1234:310001:62000 - :31000.12341:62000:31000不存在不存在34“打洞”過程(三)(3) 現(xiàn)在我們需要的是在NAT B上打一個方向為1(即Cli

18、ent A的外網(wǎng)地址)的洞,那么Client A發(fā)送到:31000的信息,Client B就能收到了。這個打洞命令由誰來發(fā)呢,當(dāng)然是Server S??偨Y(jié)一下這個過程:如果Client A想向Client B發(fā)送信息,那么Client A發(fā)送命令給Server S,請求Server S命令Client B向Client A方向打洞。35P2P通信方式通信方式 (1)(2)(3)36NAT A地址轉(zhuǎn)換表客戶A IP:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12341:12341:62000客戶B IP

19、:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12341:1234:31000.12341:62000:31000NAT B地址轉(zhuǎn)換表服務(wù)器 S客戶客戶IP:Port客戶機(jī)A1:62000客戶機(jī)B:31000(1)(2)(3)37“打洞”過程(四)(4) 然后Client A就可以通過Client B的外網(wǎng)地址與Client B通信了。 客戶A IP:Port外部IP:PortNAT公網(wǎng)IP:公網(wǎng)Port:12341:12341:62000.1234:31000 1:6200038P2P通信方式通信方式 (1)(2)(3)(4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論