




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、windows網(wǎng)絡(luò)通信程序設(shè)計(jì)2參考書參考書 王艷平主編王艷平主編 WindowsWindows網(wǎng)絡(luò)與通信程序設(shè)計(jì)網(wǎng)絡(luò)與通信程序設(shè)計(jì)(第二版)人民郵電出版社第二版)人民郵電出版社 任泰明任泰明 TCP/IPTCP/IP協(xié)議與網(wǎng)絡(luò)編程協(xié)議與網(wǎng)絡(luò)編程 西安電西安電子科技大學(xué)出版社子科技大學(xué)出版社 謝希仁謝希仁 計(jì)算機(jī)網(wǎng)絡(luò)教程計(jì)算機(jī)網(wǎng)絡(luò)教程 第一章計(jì)算網(wǎng)絡(luò)基礎(chǔ) 4內(nèi)容提要1、網(wǎng)絡(luò)基本概念2、計(jì)算網(wǎng)絡(luò)參考模型3、網(wǎng)絡(luò)程序?qū)ぶ?、網(wǎng)絡(luò)程序體系結(jié)構(gòu)51 網(wǎng)絡(luò)的定義n網(wǎng)絡(luò)是連接在一起的可以互相通信的設(shè)備的集合。 1.1 網(wǎng)絡(luò)基本概念6 自主計(jì)算機(jī)(Autonomous computers) 互聯(lián)/互連(In
2、terconnected) 通信物理:通信線路/網(wǎng)絡(luò);邏輯:交換信息。7兩臺(tái)計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)進(jìn)行通信AB網(wǎng)絡(luò)網(wǎng)絡(luò)180協(xié)議協(xié)議協(xié)議協(xié)議端端口口號(hào)號(hào)端端口口號(hào)號(hào)8用戶因特網(wǎng)ISP1ISP2因特網(wǎng)服務(wù)提供者用戶通過(guò)用戶通過(guò) ISP 上網(wǎng)上網(wǎng)91.2 計(jì)算機(jī)網(wǎng)絡(luò)參考模型 1. OSI模型OSI/RM(Open System Interconnection/Reference Model,開(kāi)放系統(tǒng)互連參考模型)將計(jì)算機(jī)網(wǎng)絡(luò)通信定義為一個(gè)七層框架模型,如圖1.1所示。 信息流同層間對(duì)等通信7.應(yīng)用層6.表示層5.會(huì)話層4.傳輸層3.網(wǎng)絡(luò)層2.數(shù)據(jù)鏈路層1.物理層
3、7.應(yīng)用層6.表示層5.會(huì)話層4.傳輸層3.網(wǎng)絡(luò)層2.數(shù)據(jù)鏈路層1.物理層源主機(jī)目標(biāo)主機(jī)信息流信息流圖1.1 OSI模型與通信流程 10對(duì)等通信示例“你好你好”“Hello”“Hello”傳真?zhèn)髡嬷袊?guó)中國(guó)教師教師翻譯翻譯秘書秘書“Hallo”“Hallo”“Hello”“Hello”傳真?zhèn)髡娴聡?guó)德國(guó)教師教師翻譯翻譯秘書秘書對(duì)交談內(nèi)容的共識(shí)對(duì)交談內(nèi)容的共識(shí)用英語(yǔ)對(duì)話用英語(yǔ)對(duì)話使用傳真通信使用傳真通信P3P3P2P2P1P1物理通信線路物理通信線路11表1.1 OSI模型中各個(gè)層的功能 名稱 層次 功 能 物理層 1 提供比特流傳輸 數(shù)據(jù)鏈路層 2 進(jìn)行數(shù)據(jù)打包與解包,形成信息幀 網(wǎng)絡(luò)層 3 提供
4、數(shù)據(jù)通過(guò)的路由 傳輸層 4 提供傳輸順序與相應(yīng)信息 會(huì)話層 5 建立和中止連接 表示層 6 數(shù)據(jù)轉(zhuǎn)換,確認(rèn)數(shù)據(jù)格式 應(yīng)用層 7 提供用戶程序接口 12OSI模型的數(shù)據(jù)傳輸PHSHTHNHDHDTAH物理傳輸媒體數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)AH數(shù)據(jù)PHAH數(shù)據(jù)PHSHAH數(shù)據(jù)PHSHTHAH數(shù)據(jù)PHSHTHNHAH比特流132. TCP/IP參考模型參考模型TCP/IP的架構(gòu)的架構(gòu)OSI參考模參考模型層次描述型層次描述OSI層次層次號(hào)號(hào)應(yīng)用層應(yīng)用層7表示層表示層6會(huì)話層會(huì)話層5傳輸層傳輸層4網(wǎng)絡(luò)層網(wǎng)絡(luò)層3數(shù)據(jù)鏈路層數(shù)據(jù)鏈路層2物理層物理層1TCP/IP參考模型參考模型應(yīng)用層應(yīng)用層傳輸層傳輸層網(wǎng)絡(luò)層網(wǎng)絡(luò)層網(wǎng)絡(luò)接口
5、層網(wǎng)絡(luò)接口層14TCP/IP中每一層負(fù)責(zé)不同的功能:中每一層負(fù)責(zé)不同的功能:應(yīng)用層,負(fù)責(zé)處理特定的應(yīng)用程序細(xì)節(jié)。各種不同的TCP/IP實(shí)現(xiàn)都會(huì)提供下面這些通用的應(yīng)用程序: Telnet 遠(yuǎn)程登錄。 FTP 文件傳輸協(xié)議。 SMTP 簡(jiǎn)單郵件傳送協(xié)議。 SNMP 簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議。 HTTP 超文本傳輸協(xié)議。 TFTP 簡(jiǎn)單文件傳輸協(xié)議。傳輸層,主要為兩臺(tái)主機(jī)上的應(yīng)用程序提供端到端的通信。在TCP/IP協(xié)議族中,有兩個(gè)傳輸協(xié)議:TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報(bào)協(xié)議)。15UDP 用戶數(shù)據(jù)報(bào)的首部格式用戶數(shù)據(jù)報(bào)的首部格式 偽首部源端口目的端口長(zhǎng) 度檢驗(yàn)和數(shù) 據(jù)首 部UDP長(zhǎng)度源 IP 地
6、址目的 IP 地址017IP 數(shù)據(jù)報(bào)字節(jié)44112122222字節(jié)發(fā)送在前數(shù) 據(jù)首 部UDP 用戶數(shù)據(jù)報(bào)16TCP首部20 字節(jié)的固定首部目 的 端 口數(shù)據(jù)偏移檢 驗(yàn) 和選 項(xiàng) (長(zhǎng) 度 可 變)源 端 口序 號(hào)緊 急 指 針窗 口確 認(rèn) 號(hào)保 留FIN32 位SYNRSTPSHACKURG位 0 8 16 24 31填 充TCP 數(shù)據(jù)部分TCP 首部TCP 報(bào)文段IP 數(shù)據(jù)部分IP 首部發(fā)送在前TCP傳輸控制協(xié)議的首部格式傳輸控制協(xié)議的首部格式 17網(wǎng)絡(luò)層網(wǎng)絡(luò)層,有時(shí)也稱作互聯(lián)網(wǎng)層,處理分組在網(wǎng)絡(luò)中,有時(shí)也稱作互聯(lián)網(wǎng)層,處理分組在網(wǎng)絡(luò)中的活動(dòng),例如分組的選路。的活動(dòng),例如分組的選路。網(wǎng)絡(luò)層協(xié)
7、議包括網(wǎng)絡(luò)層協(xié)議包括:IP協(xié)議(網(wǎng)際協(xié)議),協(xié)議(網(wǎng)際協(xié)議),ARP協(xié)議(地址解析協(xié)議),協(xié)議(地址解析協(xié)議),RARP(逆地址解析協(xié)議),(逆地址解析協(xié)議),ICMP協(xié)議(協(xié)議(Internet互聯(lián)網(wǎng)控制報(bào)文協(xié)議),互聯(lián)網(wǎng)控制報(bào)文協(xié)議), IGMP協(xié)議(協(xié)議( Internet組管理協(xié)議)。組管理協(xié)議)。18固定部分可變部分04816192431版 本標(biāo)志生 存 時(shí) 間協(xié) 議標(biāo) 識(shí)服務(wù)類型總 長(zhǎng) 度片 偏 移填 充首 部 檢 驗(yàn) 和源 地 址目 的 地 址可 選 字 段 (長(zhǎng) 度 可 變)位首部長(zhǎng)度數(shù) 據(jù) 部 分?jǐn)?shù) 據(jù) 部 分首 部傳送IP 數(shù)據(jù)報(bào)首部發(fā)送在前19網(wǎng)絡(luò)接口層網(wǎng)絡(luò)接口層,通常包
8、括,通常包括操作系統(tǒng)中的設(shè)備驅(qū)動(dòng)程序操作系統(tǒng)中的設(shè)備驅(qū)動(dòng)程序和計(jì)算機(jī)中對(duì)應(yīng)的和計(jì)算機(jī)中對(duì)應(yīng)的網(wǎng)絡(luò)接口卡網(wǎng)絡(luò)接口卡。它們一起處理與電。它們一起處理與電纜(或其他任何傳輸媒介)的物理接口細(xì)節(jié)。纜(或其他任何傳輸媒介)的物理接口細(xì)節(jié)。20 采用五層結(jié)構(gòu) 計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 2應(yīng) 用 程 序 數(shù) 據(jù)應(yīng)用層首部H510100110100101 比 特 流 110101110101注意觀察加入或剝?nèi)ナ撞浚ㄎ膊浚┑膶哟螒?yīng) 用 程 序 數(shù) 據(jù)H5應(yīng) 用 程 序 數(shù) 據(jù)H4H5應(yīng) 用 程 序 數(shù) 據(jù)H3H4H5應(yīng) 用 程 序 數(shù) 據(jù)H4運(yùn)輸層首部H
9、3網(wǎng)絡(luò)層首部H2鏈路層首部T2鏈路層尾部21計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 210100110100101 比 特 流 110101110101計(jì)算機(jī) 2 的物理層收到比特流后交給數(shù)據(jù)鏈路層H2T2H3H4H5應(yīng) 用 程 序 數(shù) 據(jù)22計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)H3H4H5應(yīng) 用 程 序 數(shù) 據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 2數(shù)據(jù)鏈路層剝?nèi)撞亢蛶膊亢蟀褞臄?shù)據(jù)部分交給網(wǎng)絡(luò)層H2T2H3H4H5應(yīng) 用 程 序 數(shù) 據(jù)23計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)H4H5應(yīng) 用 程 序 數(shù) 據(jù)H3H4H5應(yīng) 用 程 序
10、數(shù) 據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 2網(wǎng)絡(luò)層剝?nèi)シ纸M首部后把分組的數(shù)據(jù)部分交給運(yùn)輸層24計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)H5應(yīng) 用 程 序 數(shù) 據(jù)H4H5應(yīng) 用 程 序 數(shù) 據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 2運(yùn)輸層剝?nèi)?bào)文首部后把報(bào)文的數(shù)據(jù)部分交給應(yīng)用層25計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)應(yīng) 用 程 序 數(shù) 據(jù)H5應(yīng) 用 程 序 數(shù) 據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 2應(yīng)用層剝?nèi)?yīng)用層首部后把應(yīng)用程序數(shù)據(jù)交給應(yīng)用進(jìn)程26計(jì)算機(jī) 1 向計(jì)算機(jī) 2 發(fā)送數(shù)據(jù)5432154321計(jì)算機(jī) 1AP2AP1計(jì)算機(jī) 2收到了 AP1 發(fā)來(lái)的應(yīng)用程
11、序數(shù)據(jù)!27TCP/IP 協(xié)議族協(xié)議族網(wǎng)絡(luò)接口 1網(wǎng)絡(luò)接口 2網(wǎng)絡(luò)接口328局域網(wǎng)廣域網(wǎng)主機(jī) H1主機(jī) H2路由器 R1路由器 R2路由器 R3電話網(wǎng)局域網(wǎng)主機(jī) H1 向 H2 發(fā)送數(shù)據(jù)鏈路層應(yīng)用層運(yùn)輸層網(wǎng)絡(luò)層物理層鏈路層應(yīng)用層運(yùn)輸層網(wǎng)絡(luò)層物理層鏈路層網(wǎng)絡(luò)層物理層鏈路層網(wǎng)絡(luò)層物理層鏈路層網(wǎng)絡(luò)層物理層R1R2R3H1H2從層次上來(lái)看數(shù)據(jù)的流動(dòng)29 Windows操作系統(tǒng)的總體架構(gòu)應(yīng)用層核心層q EXE是一個(gè)獨(dú)立且能直接執(zhí)行的模塊。DLL是一個(gè)共享的函數(shù)庫(kù),它提供標(biāo)準(zhǔn)的接口供其它應(yīng)用程序調(diào)用,本身不能單獨(dú)運(yùn)行,被應(yīng)用程序調(diào)用時(shí)就成為程序的一部分。 應(yīng)用層是可以直接接觸到的,各種用戶界面都是應(yīng)用層程
12、序執(zhí)行的結(jié)果。文件擴(kuò)展名是.exe或.dll。 在應(yīng)用層下面是核心層(kernel)。Windows95/98下核心層程序擴(kuò)展名是.vxd;WindowsNT/2000下核心層擴(kuò)展名是.sysq 核心層的程序叫驅(qū)動(dòng)程序。驅(qū)動(dòng)程序?yàn)樯蠈討?yīng)用程序提供底層的支持。30應(yīng)用層應(yīng)用層傳輸層傳輸層網(wǎng)絡(luò)層網(wǎng)絡(luò)層網(wǎng)絡(luò)接口層網(wǎng)絡(luò)接口層TCP/IP協(xié)議Windows程序User.exeWS2_32.DLLftp.exeTcpip.sysTcpip.sysNe2000.sys網(wǎng)卡應(yīng)用層核心層系統(tǒng)文件,主要提供了TCP、UDP、IP協(xié)議的實(shí)現(xiàn)網(wǎng)卡驅(qū)動(dòng)程序 TCP/IP 協(xié)議在Windows中的實(shí)現(xiàn)311.3 網(wǎng)絡(luò)程序
13、尋址方式 IP地址 MAC地址 端口 NAT32 使用使用TCP/IP協(xié)議的互連網(wǎng)使用協(xié)議的互連網(wǎng)使用3個(gè)等級(jí)的地址:即個(gè)等級(jí)的地址:即物理(物理(硬件)地址硬件)地址、互連網(wǎng)(互連網(wǎng)(IP)地址)地址、端口地址端口地址。 每一種地址都與每一種地址都與TCP/IP體系結(jié)構(gòu)中的特定層相對(duì)應(yīng)。體系結(jié)構(gòu)中的特定層相對(duì)應(yīng)。底層物理網(wǎng)絡(luò)IP協(xié)議TCP 進(jìn)程UDP物理地址 IP地址端口地址 地址分類331. IP地址地址(IPV4) IP 地址就是給每個(gè)連接在因特網(wǎng)上的主機(jī)(或路由器)分配一個(gè)在全世界范圍地址就是給每個(gè)連接在因特網(wǎng)上的主機(jī)(或路由器)分配一個(gè)在全世界范圍是唯一的是唯一的 32 位的標(biāo)識(shí)符。
14、位的標(biāo)識(shí)符。目前目前IP地址是一個(gè)地址是一個(gè)32位地址位地址(IPv4),可以用來(lái)標(biāo)識(shí)連接在因特網(wǎng)上的每一個(gè)主,可以用來(lái)標(biāo)識(shí)連接在因特網(wǎng)上的每一個(gè)主機(jī)。機(jī)。在因特網(wǎng)上沒(méi)有兩個(gè)主機(jī)具有同樣的在因特網(wǎng)上沒(méi)有兩個(gè)主機(jī)具有同樣的IP地址。地址。下一代的下一代的IP為為IPv6。34 IP地址采用點(diǎn)分十進(jìn)制記法10000000000010110000001100011111 機(jī)器中存放的 IP 地址是 32 位二進(jìn)制代碼每隔 8 位插入一個(gè)空格能夠提高可讀性10000000 00001011 00000011 00011111 128 11 3 31 將每 8 位的二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)采用點(diǎn)分十進(jìn)制記
15、法則進(jìn)一步提高可讀性1 35IP 地址的編址方法地址的編址方法 分類的分類的 IP 地址地址。這是最基本的編址方法。這是最基本的編址方法。 劃分子網(wǎng)劃分子網(wǎng)。這是對(duì)最基本的編址方法的改進(jìn)。這是對(duì)最基本的編址方法的改進(jìn)。 無(wú)分類編址(無(wú)分類編址(CIDR)。這是比較新的無(wú)分類編。這是比較新的無(wú)分類編址方法。址方法。36net-id24 位host-id24 位net-id16 位net-id8 位IP 地址中的網(wǎng)絡(luò)號(hào)字段和主機(jī)號(hào)字段 0A 類地址host-id16 位B 類地址C 類地址01 1host-id8 位D 類地址 1 1 1 0多 播 地 址E 類地址保 留 為
16、今 后 使 用1 1 1 10137 特殊的IP地址:網(wǎng)絡(luò)地址:IP中主機(jī)地址為0的地址表示網(wǎng)絡(luò)地址,如。廣播地址:網(wǎng)絡(luò)號(hào)后跟一個(gè)所有位全是1的后綴,就是廣播地址。環(huán)回地址:127.*.*.*,用于測(cè)試。 38TCP 報(bào)文IP 數(shù)據(jù)報(bào)MAC 幀應(yīng)用層數(shù)據(jù)首部首部尾部首部鏈路層及以下使用硬件地址硬件地址網(wǎng)絡(luò)層及以上 使用 IP 地址IP 地址39 劃分子網(wǎng)純屬一個(gè)單位內(nèi)部的事情。這個(gè)單位對(duì)外仍然表現(xiàn)為沒(méi)有劃分子網(wǎng)的網(wǎng)絡(luò)。 從主機(jī)號(hào)借用若干個(gè)位作為子網(wǎng)號(hào) subnet-id,而主機(jī)號(hào) host-id 也就相應(yīng)減少了若干個(gè)位。IP地址 := , , 三級(jí)的 IP 地址-劃分子網(wǎng)
17、40 CIDR 消除了傳統(tǒng)的 A 類、B 類和 C 類地址以及劃分子網(wǎng)的概念,因而可以更加有效地分配 IPv4 的地址空間。 CIDR使用各種長(zhǎng)度的“網(wǎng)絡(luò)前綴”(network-prefix)來(lái)代替分類地址中的網(wǎng)絡(luò)號(hào)和子網(wǎng)號(hào)。 IP 地址從三級(jí)編址(使用子網(wǎng)掩碼)又回到了兩級(jí)編址。 無(wú)分類編址無(wú)分類編址-CIDR 最主要的特點(diǎn) 41 無(wú)分類的兩級(jí)編址的記法是: IP地址 := , 掩碼無(wú)分類的兩級(jí)編址 42 2. MAC地址硬件地址又稱為物理地址或MAC地址,這一地址被固化在每個(gè)網(wǎng)卡的ROM中,每個(gè)網(wǎng)卡在出廠時(shí)都賦于了一個(gè)全世界范圍內(nèi)唯一的地址編號(hào),地址為6字節(jié)(即48位)。MAC地址與網(wǎng)絡(luò)無(wú)
18、關(guān),也即無(wú)論將帶有這個(gè)地址的硬件(如網(wǎng)卡、集線器、路由器等)接入到網(wǎng)絡(luò)的何處,都有相同的MAC地址。MAC地址6字節(jié)(48比特)。43地址解析地址解析(Address Resolution)就是將計(jì)算機(jī)中的協(xié)議地址翻譯成物理地址(或稱MAC地址,即媒體映射地址)。地址解析只能在本地網(wǎng)內(nèi)進(jìn)行。44ARP 響應(yīng)AYXBZ主機(jī) B 向 A 發(fā)送ARP 響應(yīng)分組 主機(jī) A 廣播發(fā)送ARP 請(qǐng)求分組 ARP 請(qǐng)求ARP 請(qǐng)求ARP 請(qǐng)求ARP 請(qǐng)求00-00-C0-15-AD-1808-00-2B-00-EE-0A我是 ,硬件地址是 00-00-C0
19、-15-AD-18我想知道主機(jī) 的硬件地址我是 硬件地址是 08-00-2B-00-EE-0AAYXBZ00-00-C0-15-AD-1845HA1HA5HA4HA3HA6主機(jī) H1主機(jī) H2路由器 R1硬件地址路由器 R2HA2IP1IP2局域網(wǎng)局域網(wǎng)局域網(wǎng)IP1HA1HA5HA4HA3HA6HA2IP6主機(jī) H1主機(jī) H2路由器 R1IP 層上的互聯(lián)網(wǎng)MAC 幀IP2IP4IP3IP5路由器 R2 IP1 IP2IP1 IP2IP1 IP2從 HA1 到 HA3從 HA4 到 HA5從 HA6 到 HA2MAC 幀M
20、AC 幀IP 數(shù)據(jù)報(bào)從協(xié)議棧的層次上看數(shù)據(jù)的流動(dòng)46 3.端口網(wǎng)絡(luò)中可以被命名和尋址的通信端口是操作系統(tǒng)可分配的一種資源。按照OSI協(xié)議的描述,傳輸層與網(wǎng)絡(luò)層在功能上的最大區(qū)別是傳輸層提供進(jìn)程通信,從這個(gè)意義上講,網(wǎng)絡(luò)通信的最終地址不僅僅是主機(jī)地址,還包括可以描述進(jìn)程的某種標(biāo)識(shí)符。TCP/IP協(xié)議提出協(xié)議端口(protocol port,簡(jiǎn)稱端口)的概念,用于標(biāo)識(shí)通信的進(jìn)程。 47端口是一種抽象的軟件結(jié)構(gòu)(包括一些數(shù)據(jù)結(jié)構(gòu)和I/O緩沖區(qū))。應(yīng)用程序(進(jìn)程)通過(guò)系統(tǒng)調(diào)用與某端口建立連接(binding)后,傳輸層傳給該端口的數(shù)據(jù)都被相應(yīng)進(jìn)程所接收,相應(yīng)進(jìn)程發(fā)給傳輸層的數(shù)據(jù)都通過(guò)該端口輸出。 端口
21、是用來(lái)標(biāo)志應(yīng)用層的進(jìn)程端口是用來(lái)標(biāo)志應(yīng)用層的進(jìn)程。 TCP/IP中的端口地址是中的端口地址是16位。位。48端口號(hào)的兩種基本分配方式全局分配全局分配是一種集中控制方式,由一個(gè)公認(rèn)的中央機(jī)構(gòu)根據(jù)用戶需要進(jìn)行統(tǒng)一分配,并將結(jié)果公布于眾。本地分配本地分配又稱動(dòng)態(tài)分配,即進(jìn)程需要訪問(wèn)傳輸層服務(wù)時(shí),向本地操作系統(tǒng)提出申請(qǐng),操作系統(tǒng)返回一個(gè)本地唯一的端口號(hào),進(jìn)程再通過(guò)合適的系統(tǒng)調(diào)用,將自己與該端口號(hào)聯(lián)系起來(lái)。49 TCP/IP中端口號(hào)的分配綜合了上述兩種方式,TCP/IP將端口號(hào)分為兩部分,少量的作為保留端口,以全局方式分配給服務(wù)進(jìn)程,因此每個(gè)標(biāo)準(zhǔn)服務(wù)器都擁有一個(gè)全局公認(rèn)的端口即周知端口(well-kno
22、wn port) 。 例如,服務(wù)器提供的服務(wù)一般都是通過(guò)通用端口號(hào)來(lái)識(shí)別的,對(duì)于TCP/IP實(shí)現(xiàn)來(lái)說(shuō),F(xiàn)TP服務(wù)器的TCP端口號(hào)都是21,Telnet服務(wù)器的TCP端口號(hào)都是23,TFTP(簡(jiǎn)單文件傳送協(xié)議)服務(wù)器的UDP端口號(hào)都是69。任何TCP/IP實(shí)現(xiàn)所提供的服務(wù)都使用通用端口號(hào)1-1023。這些通用端口號(hào)由Internet號(hào)分配機(jī)構(gòu)(Internet Assigned Numbers Authority, IANA)來(lái)管理。504. 網(wǎng)絡(luò)地址轉(zhuǎn)換 NAT (Network Address Translation) 網(wǎng)絡(luò)地址轉(zhuǎn)換 NAT 方法于1994 年提出。 緩解IPv4地址危機(jī):專
23、用地址只能用于結(jié)構(gòu)內(nèi)部通信 ,不用用于和因特網(wǎng)的主機(jī)通信. 需要在專用網(wǎng)連接到因特網(wǎng)的路由器上安裝 NAT 軟件。裝有 NAT 軟件的路由器叫做 NAT路由器,它至少有一個(gè)有效的外部全球地址 IPG。 所有使用本地地址的主機(jī)在和外界通信時(shí)都要在 NAT 路由器上將其本地地址轉(zhuǎn)換成 IPG 才能和因特網(wǎng)連接。 51 內(nèi)部地址 :是指在內(nèi)部網(wǎng)絡(luò)中分配給節(jié)點(diǎn)的私有IP地址,這個(gè)地址只能在內(nèi)部網(wǎng)絡(luò)中使用,如果不通過(guò)路由器它是不能被外部不同的IP網(wǎng)段訪問(wèn)到的。 內(nèi)部地址也稱私有地址,它是可以隨機(jī)挑選。但是通常使用的是RFC 1918中定義的NAT專用地址:-55;
24、-55;-55。其中10.X.X.X地址最常用也是NAT推薦的一種地址。 全局地址,是指合法的IP地址,它是由NIC(國(guó)際IP授權(quán)機(jī)構(gòu))或者網(wǎng)絡(luò)服務(wù)提供商分配的地址,對(duì)外代表一個(gè)或多個(gè)內(nèi)部地址,是全球統(tǒng)一的可尋址的地址即可路由地址。 NAT概念52NAT的工作原理53NAT的工作原理(1)客戶機(jī)將數(shù)據(jù)包發(fā)給運(yùn)行NAT的計(jì)算機(jī)。(2)NAT將數(shù)據(jù)包中的端口號(hào)和專用的IP地址換成它自己的端口號(hào)和公用的IP地址,然后將數(shù)據(jù)包發(fā)給外部網(wǎng)絡(luò)的目的主機(jī),同時(shí)記錄一個(gè)跟蹤信息在映像表中(NAT 轉(zhuǎn)換表),以便向客戶機(jī)
25、發(fā)送回答信息。(3)外部網(wǎng)絡(luò)發(fā)送回答信息給NAT。(4)NAT將所收到的數(shù)據(jù)包的端口號(hào)和公用IP地址轉(zhuǎn)換為客戶機(jī)的端口號(hào)和內(nèi)部網(wǎng)絡(luò)使用的專用IP地址并轉(zhuǎn)發(fā)給客戶機(jī)。54NAT類型NAT有三種類型:靜態(tài)NAT(static NAT)、NAT池(pooled NAT)和端口NAT(PAT)。 靜態(tài)NAT設(shè)置簡(jiǎn)單,內(nèi)部網(wǎng)絡(luò)中的每個(gè)主機(jī)都被永久映射成 外部網(wǎng)絡(luò)中的某個(gè)合法的地址,多用于服務(wù)器。 NAT池則是在外部網(wǎng)絡(luò)中定義了一系列的合法地址,采用動(dòng)態(tài)分配的方法映射到內(nèi)部網(wǎng)絡(luò)。多用于網(wǎng)絡(luò)中的工作站。 PAT則是把內(nèi)部地址映射到外部網(wǎng)絡(luò)的一個(gè)IP地址的不同端口上。55在TCP/IP網(wǎng)絡(luò)應(yīng)用中,通信的兩個(gè)進(jìn)
26、程間相互作用的主要模式是客戶機(jī)/服務(wù)器模式(Client/Server Model)??蛻魴C(jī)/服務(wù)器模式的建立基于以下兩點(diǎn):首先,建立網(wǎng)絡(luò)的起因是網(wǎng)絡(luò)中軟/硬件資源、運(yùn)算能力和信息不均等,需要共享,從而形成擁有眾多資源的主機(jī)提供服務(wù),資源較少的客戶請(qǐng)求服務(wù)這一非對(duì)稱的情況。其次,網(wǎng)間進(jìn)程通信完全是異步的,相互通信的進(jìn)程間既不存在父子關(guān)系,又不共享內(nèi)存緩沖區(qū),因此需要一種機(jī)制為希望通信的進(jìn)程間建立聯(lián)系,為二者的數(shù)據(jù)交換提供同步,這就是基于客戶機(jī)/服務(wù)器模式的TCP/IP。4 .網(wǎng)絡(luò)程序體系結(jié)構(gòu)56 客戶機(jī)服務(wù)器結(jié)構(gòu) 網(wǎng)絡(luò)應(yīng)用程序一般是以客戶機(jī)服務(wù)器結(jié)構(gòu)工作的。在這種工作方式中,一個(gè)服務(wù)器程序通常
27、事先已經(jīng)啟動(dòng),并在一個(gè)眾所周知的端口監(jiān)聽(tīng)對(duì)服務(wù)的請(qǐng)求。客戶應(yīng)用程序需要服務(wù)時(shí),便向提供該服務(wù)的服務(wù)器發(fā)出請(qǐng)求,服務(wù)器在接收到請(qǐng)求后,就響應(yīng)客戶提出的請(qǐng)求。ClientServer57 客戶機(jī)服務(wù)器結(jié)構(gòu)的特點(diǎn) 客戶機(jī)程序之間并不直接交流信息,它們僅與服務(wù)器通信??蛻魴C(jī)之間可以通過(guò)服務(wù)器中轉(zhuǎn)通信。 服務(wù)器方有一個(gè)固定的、公開(kāi)的地址,包括IP地址和端口號(hào)碼。IP地址唯一地標(biāo)識(shí)主機(jī),端口號(hào)標(biāo)識(shí)主機(jī)上運(yùn)行的某個(gè)服務(wù)進(jìn)程。58 網(wǎng)絡(luò)程序中通信雙方的標(biāo)識(shí) 為了唯一地標(biāo)識(shí)網(wǎng)絡(luò)中通信的某一方,就要使用一個(gè)如下的三元組:(本地協(xié)議,本地IP地址,本地端口號(hào)) 因此通信的雙方可以使用如下六元組:(本地協(xié)議,本地IP地址,本地端口號(hào),遠(yuǎn)程協(xié)議,遠(yuǎn)程IP地址,遠(yuǎn)程端口號(hào)) 由于通信的雙方在端到端的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 租賃車輛管理辦法暫緩
- 小區(qū)公攤物業(yè)管理辦法
- 管理人員職務(wù)管理辦法
- 省級(jí)人民醫(yī)院管理辦法
- 房屋簽約制度管理辦法
- 眼部瑜伽培訓(xùn)課件文案
- 腸胃細(xì)胞健康課件
- 腸癰的護(hù)理課件
- 人事管理培訓(xùn)課件
- 店長(zhǎng)培訓(xùn)內(nèi)容流程課件
- 新課標(biāo)(水平三)體育與健康《籃球》大單元教學(xué)計(jì)劃及配套教案(18課時(shí))
- 《生物安全培訓(xùn)》課件-2024鮮版
- GB/T 14454.4-2008香料折光指數(shù)的測(cè)定
- 消防工程擬投入主要施工設(shè)備機(jī)具表
- 橋梁工程支座智能化發(fā)展
- GM∕T 0036-2014 采用非接觸卡的門禁系統(tǒng)密碼應(yīng)用指南
- BIM技術(shù)在施工項(xiàng)目管理中的應(yīng)用
- 25公斤級(jí)平焊法蘭及螺栓規(guī)格尺寸
- 小升初火車過(guò)橋問(wèn)題
- 中文版EN-12546
- 長(zhǎng)三角地區(qū)地圖(可以隨意更改顏色、轉(zhuǎn)動(dòng)、組合))
評(píng)論
0/150
提交評(píng)論