摘要:TCP/IP的參考模型TCP/IP是建立在“無連接”技術上的網絡互連協議,信息(包括報文和數據流)以數據報的形式在網絡中傳輸,從而實現用戶間的通信。TCP/IP協議遵守一個四層的模型概念:應用層(ApplicationLayer)、傳輸層(TransportLayer)、網絡層(InternetLayer)和網絡接口層(NetworkInterfaceLayer)。一、網絡接口層模型
TCP / IP的參考模型
TCP/IP是建立在“無連接”技術上的網絡互連協議,信息(包括報文和數據流)以數據報的形式在網絡中傳輸,從而實現用戶間的通信。TCP/IP協議遵守一個四層的模型概念:應用層(Application Layer)、傳輸層(Transport Layer)、網絡層(Internet Layer)和網絡接口層(Network Interface Layer)。
一、網絡接口層
模型的基層是網絡接口層。負責數據幀的發送和接收,幀是獨立的網絡信息傳輸單元。網絡接口層將幀放在網上,或從網上把幀取下來。
二、網絡層
互聯協議將數據包封裝成Internet數據報,并運行必要的路由算法。 這里有四個互聯協議:
網際協議IP:負責在主機和網絡之間尋址和路由數據包。
地址解析協議ARP:獲得同一物理網絡中的硬件主機地址。
網際控制消息協議ICMP:發送消息,并報告有關數據包的傳送錯誤。
互聯組管理協議IGMP:被IP主機拿來向本地多路廣播路由器報告主機組成員。
三、傳輸層
傳輸協議在計算機之間提供通信會話。傳輸協議的選擇根據數據傳輸方式而定。 這里有兩個傳輸協議:
傳輸控制協議TCP:為應用程序提供可靠的通信連接。適合于一次傳輸大批數據的情況。并適用于要求得到響應的應用程序。
用戶數據報協議UDP:提供了無連接通信,且不對傳送包進行可靠的保證。適合于一次傳輸小量數據,可靠性則由應用層來負責。
四、應用層
應用程序通過這一層訪問網絡。
網絡設計者在解決網絡體系結構時經常使用ISO/OSI( 國際標準化組織/開放系統互連)七層模型,該模型每一層代表一定層次的網絡功能。最下面是物理層,它代表著進行數據轉輸的物理介質,換句話說,即網絡電纜。其上是數據鏈路層,它通過網卡提供服務。最上層是應用層,這里運行著使用網絡服務的應 用程序。
TCP/IP模型是同ISO/OSI模型等價的。當一個數據單元從網絡應用程序向下送到網卡,它通過了一列的TCP/IP 模塊。這其中的每一步,數據單元都會同網絡另一端對等TCP/IP模塊所需的信息一起打成包。在數據傳送中,可以形象地理解為有兩個信封,TCP和IP就像是信封,要傳遞的信息被劃分成若干段,每一段塞入一個TCP信封,并在該信封封面上記錄有分段號的信息,再將TCP信封塞入IP大信封,發送上網。在接受端,一個TCP軟件包收集信封,抽出數據,按發送前的順序還原,并加以校驗,若發現差錯,TCP將會要求重發。因此,TCP/IP在INTERNET中幾乎可以無差錯地傳送數據。
為了勾勒TCP/IP在現實網絡世界中所扮演的角色,請考慮當使用HTTP(超文本傳輸協議)的Web瀏覽器(如IE)從連接在Internet上的Web服務器上獲取一頁HTML數據時所發生的情況。為形成同Web服務器的虛鏈路,瀏覽器使用一種被抽象地稱為套接口(socket)的高層軟件。為了獲 取Web頁,它通過向套接口寫入HTTPGET命令來向Web 服務器發出該指令。接下來套接口軟件使用TCP協議向Web服務器發出包含GET命令的字節流和位流,TCP將數據分段并將各獨立段傳到IP模塊,該模塊將數據段轉換成數據報并發送給Web服務器。
其實在這一過程中,在網絡上發送和接收的數據已經被分成一個或多個數據包(packet),每個數據包包括:要傳送的數據;控制信息,即告訴網絡怎樣處理數據包。TCP/IP決定了每個數據包的格式。如果事先不告訴你,你可能不會知道信息被分成用于傳輸和再重新組合起來的許多小塊。
當有應用程序(如例子中的瀏覽器)創建它時,這個數據包的生命就開始了。每個包都會穿過發送主機的各層,再通過網絡電纜進入目標主機的各層后,進入適當的應用程序(如例子中的Web服務器)。當包穿過發送主機各層時,其控制信息和格式信息被加在包上。在它到達目標主機后,隨著這個包向上穿過各個層,這些信息分別被讀取并剝去。一旦這個包被送到線路上去時,它的重量已經增大,因為包中增加了許多網絡信息。當這個滾雪球式增大的包到達目的主機時,又開始逐漸減輕,當它最后到達頂層時,又變得十分苗條了。
對瀏覽器和服務器來說,數據在這一端寫入套接口而在另一端出現如同魔術一般,但這只是網絡底層發生的各種復雜行為的表象,它創造了數據經過網絡無縫傳輸的假象。
IP協議――天地本寬
IP是英文 Internet Protocol的縮寫,意思是“網絡之間互連的協議”,也就是為計算機網絡相互連接進行通信而設計的協議。在因特網中,它是能使連接到網上的所有計算機網絡實現相互通信的一套規則。任何廠家生產的計算機系統,只要遵守IP協議就可以與因特網互連互通。正是因為有了IP協議,因特網才得以迅速發展成為世界上最大的、開放的計算機通信網絡。因此,IP協議也可以叫做“因特網協議”。
IP是怎樣實現網絡互連的?各個廠家生產的網絡系統和設備,如以太網、分組交換網等,它們相互之間不能互通,不能互通的主要原因是因為它們所傳送數據的基本單元(技術上稱之為“幀”)的格式不同。IP協議實際上是一套由軟件程序組成的協議軟件,它把各種不同“幀”統一轉換成“IP數據報”格式,這種轉換是因特網的一個最重要的特點,使所有各種計算機都能在因特網上實現互通,即具有“開放性”的特點。
IP協議用來在網絡間交換數據并且執行一項重要的功能:路由選擇--選擇數據報從A主機到B主機將要經過的路徑以及利用合適的路由器完成不同網絡之間的跨越(hop)。
那么,“數據報” 是什么?它又有什么特點呢?數據報也是分組交換的一種形式,就是把所傳送的數據分段打成 “包”,再傳送出去。但是,與傳統的“連接型”分組交換不同,它屬于“無連接型”,是把打成的每個“包”(分組)都作為一個“獨立的報文”傳送出去,所以叫做“數據報”。這樣,在開始通信之前就不需要先連接好一條電路,各個數據報不一定都通過同一條路徑傳輸,所以叫做“無連接型”。這一特點非常重要,它大大提高了網絡的堅固性和安全性。
每個數據報都有報頭和報文這兩個部分,報頭中有目的地址等必要內容,使每個數據報不經過同樣的路徑都能準確地到達目的地。在目的地還需要重新組合還原成原來發送的數據,這就要IP具有分組打包和集合組裝的功能。
在實際傳送過程中,數據報還要能根據所經過網絡規定的分組大小來改變數據報的長度,IP數據報的最大長度可達65535個字節。
IP協議中還有一個非常重要的內容,那就是給因特網上的每臺計算機和其它設備都規定了一個地址,叫做“IP 地址”。由于有這種地址,才保證了用戶在連網的計算機上操作時,能夠高效而且方便地從千千萬萬臺計算機中選出自己所需的對象來。
現在電信網正在與IP網走向融合,以IP為基礎的新技術是熱門的技術,如用IP網絡傳送話音的技術(即VoIP)就很熱門,其它如IP over ATM、IP over SDH、IP over WDM等等,都是IP技術的研究重點。
IP分組格式的奧妙
IPv4數據包的報頭包含如下內容:版本、頭標長、服務類型、總長、標識、標志、片偏移、生存時間、協議、頭標校驗和、源IP地址、宿IP地址、選項。
為便于按照相應規定對報頭進行分析,首先路由器要確定報頭的格式,查看IP協議的“版本”(IPv4的“版本”是4);次之,路由器必須知道報頭的長度和正確性,按照“頭標長”截獲報頭,用“頭校驗和”加以校驗。為避免數據包因尋徑錯誤而在互聯網中無休止地流動、占用寶貴的網絡資源,有必要限制數據包的轉發次數。路由器檢查“生存時間”,目的在于此。路由器還需要根據“宿IP地址”或“選項”中的源路徑查找路由轉發表,如果“宿IP地址”正好與自己吻合,需參考“源IP地址”和“協議”,決定該數據包是否有權限訪問路由器。如果有,就要根據“協議”在本地作進一步的高層處理,不過在此之前有必要根據“標識”、“標志”和“片偏移”來重組數據包。“協議”標明了數據區的協議類型,如89代表OSPF等,路由器根據“協議”規定的數據區格式分析數據,從而可以進一步處理其中相應的協議消息。
如果“宿IP地址”尚未到達,須參考“源IP地址”和“協議”,決定該數據包是否被允許轉發,如果允許,路由器根據“宿IP地址”或“選項”中的源路徑、“服務類型”在路由轉發表中查找相應的輸出端口,并把數據包交換到該輸出端口的某隊列中,解析下一跳IP地址對應的物理地址(比如以太網的MAC地址),把數據包封裝在物理幀中傳輸。不過,如果一個物理幀裝不下完整的數據包,還須把數據包分片,在“標識”、“標志”和“片偏移”中加以指示。“服務類型”包含優先級、時延、吞吐率和可靠性,目的是要映射到相應的路由選擇、排隊優先級、帶寬分配上。不過,映射不是強制性的,即使映射也并非所有的要求都能被滿足。在不久的將來,“服務類型”有可能被“區分服務”替代。
上述任何一個環節沒通過,IP數據包就要被丟棄,與此同時,路由器可能產生ICMP數據包,報告相應的差錯。
[1] [2]
通信工程師備考資料免費領取
去領取
專注在線職業教育25年