TCPIP協(xié)議的結(jié)構(gòu)與運行原理_第1頁
TCPIP協(xié)議的結(jié)構(gòu)與運行原理_第2頁
TCPIP協(xié)議的結(jié)構(gòu)與運行原理_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、TCP/IP 協(xié)議的結(jié)構(gòu)與運行原理TCP/IP 模型很成功,其設(shè)計已經(jīng)經(jīng)得起多年的磨練。無奈,TCP/IP 協(xié)議 族是很繁雜的一個模型,為了全面理解它,宜采取先全局后局部的庖丁解牛式。本文從應(yīng)用的角度試著去理解 TCP/IP 的全貌,配合例 子加以講解。本文目的: 鞏固自己這方面的知識,作為深入TCP/IP 協(xié)議 族的基礎(chǔ)。本文內(nèi)容:1. TCP/IP 協(xié)議 族組成從字面上理解,TCP/IP協(xié)議族只有TCP、IP協(xié)議,其實不然。其真正的名字是Internet協(xié)議族(Internet Protocol Suite) 。和大型軟件一樣,其分為四層:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、鏈路層。每一層的功能和目的

2、都是不一樣的,每一層上服務(wù)的協(xié)議也不是有區(qū)別的。從上往下看:應(yīng)用層(產(chǎn)生 |利用數(shù)據(jù))協(xié)議:FTP、HTTP、SNMP(網(wǎng)管)、SMTP(Email)等常用協(xié)議;職責(zé):利用應(yīng)用層協(xié)議發(fā)送用戶的應(yīng)用數(shù)據(jù),比如利用FTP發(fā)送文件,利用SMTP發(fā)送Email;由系統(tǒng)調(diào)用交給運輸層處理。運輸層(發(fā)送 |接收數(shù)據(jù))協(xié)議:TCP(有連接)、UDP(無連接); 職責(zé):負責(zé)建立連接、將數(shù)據(jù)分割發(fā)送;釋放連接、數(shù)據(jù)重組或錯誤處理。網(wǎng)絡(luò)層(分組 |路由 數(shù)據(jù))協(xié)議:IP、ICMP(控制報文協(xié)議)、IGMP(組管理協(xié)議); 職責(zé):負責(zé)數(shù)據(jù)的路由,即數(shù)據(jù)往哪個路由器發(fā)送。鏈路層(按位發(fā)送 |接收數(shù)據(jù)) 協(xié)議:以太網(wǎng)卡

3、設(shè)備驅(qū)動、令牌網(wǎng)卡驅(qū)動程序、 ARP、 RARP 等; 職責(zé):負責(zé)傳輸校驗二進制用戶數(shù)據(jù)。從可靠性角度看各層區(qū)別:網(wǎng)絡(luò)層 IP 協(xié)議是不可靠的協(xié)議, 為此, 如果其上面的層也不做任何特殊處理, 也將是不可靠的。 于是, 運輸層的 TCP 協(xié)議彌補了這個空缺,提供有連接的、可校驗的數(shù)據(jù)傳輸服務(wù)。應(yīng)用層的話可對數(shù)據(jù)進行加密之類的處理,增強的是傳輸數(shù)據(jù)的 安全性,如 https。 鏈路層可對數(shù)據(jù)進行校驗。從運行進程態(tài)看各層區(qū)別:應(yīng)用層運行在用戶程序進程中,屬性用戶態(tài);其他層則在系統(tǒng)內(nèi)核進程運行,屬于核心態(tài); 從通信方式上看各層區(qū)別:傳輸層是端對端的通信,也就是說,處理的是進程與進程之間的通信,如兩個

4、TCP 進程;網(wǎng)絡(luò)層是點對點的通信,也就是說,處理的是機器之間的邏輯連接。從傳輸數(shù)據(jù)單元上看區(qū)別:傳輸層上形成的是 TCP 或 UDP 報文段; 網(wǎng)絡(luò)層形成的是 IP 數(shù)據(jù)報; 數(shù)據(jù)鏈路層形成的是幀 (Frame)。從尋址方式上看各層區(qū)別:網(wǎng)絡(luò)層通過 IP 尋址;鏈路層通過 MAC 尋址。注解 :ICMP: 供 IP 用于發(fā)送錯誤報文,也可由應(yīng)用層直接調(diào)用;IGMP: 用于多播 (Multicast) ,比如, UDP 可用多播 IP 地址往多個目標主機發(fā)送數(shù)據(jù)報,就是依靠它 ARP&RARP: 用戶在 IP 地址與 MAC 地址互相轉(zhuǎn)換。2. TCP/IP 模型基礎(chǔ)設(shè)施IP 地址 共

5、分五類地址,分別如下:A 類:0. 0. 0. 0 55(單播 )B 類: 55(單播 )C 類: 55(單播 )D 類: 55(多播 )E 類:55(待用 )附加類: 55 (傳輸層 UDP 廣播 )MAC 地址每個網(wǎng)卡的 MAC 地址世界唯一,不可變;計算機通信其實靠的是 MAC 地址,而不是 IP 地址,請看 下面注解。端口 端口在硬件里的名稱為接口,跟網(wǎng)卡的入口

6、一樣;在軟件概念里,可以理解為一些數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)緩沖 區(qū)。端口可分為:知名端口:00011023 (例如 FTP 20,TCP 21 ,UDP 69)臨時端口:1024 5000預(yù)留端口:5000 65535假設(shè)你的應(yīng)用程序需要端口,一般是從臨時端口分配,只在應(yīng)用程序運行時有效,故稱臨時端口。 傳輸層可將進程與端口進行綁定,當數(shù)據(jù)到來時,其知該往哪個進程緩沖區(qū)里送。注解:IP 與 MAC 的區(qū)別: IP 地址是基于網(wǎng)絡(luò)拓撲結(jié)構(gòu)的,是動態(tài)可變的。 MAC 地址是由網(wǎng)卡廠商定的,是 終身不可變且唯一的。假設(shè)應(yīng)用層利用 MAC 地址傳輸數(shù)據(jù),那么其是不靈活的 ,因為它不能變。所以,應(yīng) 用層用 IP 尋

7、址。但是,硬件又必須用 MAC 才能找到機器,為此引入 ARP 及 RARP 來做兩地址的查詢與轉(zhuǎn)換。3. TCP/IP 應(yīng)用案例分析 場景:左邊用戶利用 FTP 客戶端與右邊 FTP 服務(wù)器 端進行連接上傳文件。 數(shù)據(jù)將從上往下流,每到一層都會加上層頭,數(shù)據(jù)以類堆棧形式 存儲 ,到目標機器時,底層數(shù)據(jù)先 得,由底向上,符合堆棧先進后出的特性。步驟 1:應(yīng)用層準備好數(shù)據(jù)文件,調(diào)用 Windows API 通知傳輸層 TCP 建立連接,傳輸層加入 TCP 包頭,其中包含標識應(yīng)用層協(xié)議的標識符 端口 21。步驟 2:網(wǎng)絡(luò)層接收了傳輸層的 TCP 包,由于 IP 協(xié)議可接收 ICMP(1) 、IGM

8、P(2) 、TCP(6) 、 UDP(17) 來的數(shù)據(jù),其需要一個標識域來表明是那個協(xié)議發(fā)來的數(shù)據(jù)。此數(shù)據(jù)域?qū)⒓佑?IP 包頭中。除此之外,還將 賦以 IP 地址。步驟 3:數(shù)據(jù)鏈路層接收網(wǎng)絡(luò)層來的數(shù)據(jù)后,加之標識域表明數(shù)據(jù)是從IP、 ARP 或 RARP 來。然后,加上 MAC 地址往外發(fā)送。步驟 4:將數(shù)據(jù)由網(wǎng)卡送出,送的過程中, ARP 利用目標 IP 找到最近的路由器 MAC 地址,然后將包 發(fā)往它,之后由它找到一個路由器,最終將數(shù)據(jù)包送到右邊機器的網(wǎng)卡中。步驟 5 :根據(jù)包頭的標識域可知這是一個 IP 數(shù)據(jù)包,利用 IP 協(xié)議拆包。步驟 6:根據(jù)包頭的標識域可知這是一個 TCP 包,利用 TCP 協(xié)議拆包。步驟 7:根據(jù)包頭的端口號,將數(shù)據(jù)直接送入應(yīng)用層的對應(yīng)緩沖區(qū)中,應(yīng)用程序負責(zé)解析數(shù)據(jù)包, 相應(yīng)的業(yè)務(wù)邏輯處理。注解:RFC 1600RF

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論