《TCP IP詳解卷一 協議》 概述

2021-08-09 03:18:04 字數 3302 閱讀 8910

tcp/ip協議族是一組不同層次上的多個協議的組合。tcp/ip通常被認為是乙個

四層次協議系統。

應用層: 負責處理特定的應用程式細節。 

tcp/ip協議族是一組不同的協議組合在一起構成的協議族,儘管通常稱該協議為tcp/ip協議,但tcp和ip只是其中的兩種協議而已。(該協議族的另乙個名字為internet協議族(internet protocol suite))。如上圖所示,ftp是一種應用層協議,tcp是一種運輸層協議,ip是一種網路協議,而乙太網協議應用於鏈路層。

乙個互連網(internet)就是一組通過相同協議族互連在一起的網路。構建互連網最簡單的方法就是把兩個或多個網路通過路由器進行連線。它是一種特殊的用於網路互連的硬體盒。路由器(router)的好處是為為不同型別的物理網路提供連線:乙太網、令牌環網、點對點的鏈結和fddi(光纖分布式資料介面)。從歷史上說,這些盒子稱為閘道器。但現在閘道器這個術語只用來表示應用層閘道器:乙個連線兩種不同協議族的程序,它為特定的應用程式服務。

對上面描述的互連網,我們可以劃分出端系統(end system)(兩邊的主機)和中間系統( intermediate system)(中間的路由器)。應用層和傳輸層使用端到端協議,只有端系統需要這兩層協議。而網路層使用逐跳協議,兩個端系統和中間系統都要使用它。

網路層和運輸層的區別:

網路層ip提供的是一種不可靠的服務。也就是說,它只是盡可能快的把分組從源結點送到目的結點,但是並不提供任何可靠性保證。運輸層tcp採用了超時重傳、傳送和接收端到端的確認分組機制,在不可靠的ip層上提供了乙個可靠的運輸層。

從定義上看,乙個路由器具有兩個或兩個以上網路介面層(因為它連線了兩個或多個網路)。網際網路的目的之一就是在應用程式中隱藏所有的物理細節。因此,通過路由器進行互連不同型別的物理網路,對應用層而言,下層細節是被隱藏的。連線網路的另一途徑是使用網橋。網橋是在鏈路層上對網路進行互連,而路由器是在網路層上對網路進行互連。網橋使得多個區域網(lan)組合在一起,這樣對上層來說就好像是乙個區域網。

上圖介紹了本書將主要討論的協議。

icmp是ip協議的附屬協議,ip層用它來與其他主機或路由器交換錯誤報文和其他重要資訊。igmp是internet組管理協議,它用來把乙個udp資料報多播到多個主機。(注意廣播(將乙個udp資料報傳送到某個指定網路上的所有主機)和多播的區別)。arp(位址解析協議)和rarp(逆位址解析協議)是某些網路介面(乙太網和令牌環網)使用的特殊協議,用來轉換ip層和網路介面層使用的位址。

這裡介紹ipv4版本,ip位址長度為32bit,使用常見的點分十進位制表示。

在tcp/ip領域中,網域名稱系統(dns)是乙個分布的資料庫,由它來提供ip位址和主機名之間的對映資訊。

當應用程式使用tcp傳送資料時,資料被送入協議棧中,然後逐個通過每一層直到被當作一串位元流送入網路。其中每一層對收到的資料都要新增一些首部資訊(有的還要新增尾部資訊)。tcp傳給ip的資料單元稱為tcp報文段或簡稱為tcp段(tcp segment),ip傳給網路介面層的資料單元稱為ip資料報(ip datagram),通過乙太網傳輸的位元流稱為幀。乙太網資料幀的物理特性是其長度必須在46到15000位元組之間。

udp資料與tcp資料基本一致,唯一不同的是udp傳給ip的資訊單元稱為udp資料報(udp  datagram),而且udp的首部長度為8位元組(tcp首部為20位元組)。關於每一層新增的首部資訊詳細解釋後面介紹。

當目的主機收到乙個乙太網資料幀時,資料就開始從協議棧中由底向上公升,同時去掉各層協議加上的報文首部,每次協議盒都要去檢查報文首部中的協議標識,以確定接收資料的上層協議。同時為協議icmp和igmp定位存在著一些困難。在圖1-4中,將它們與ip放在同一層上,那是因為它們是ip的附屬協議。但在這裡,將它們放在ip層上面,是因為icmp和igmp報文都被封裝在ip資料報中。同時,對於arp和rarp協議而言,將它們放在乙太網裝置驅動程式之上,是因為它們跟ip資料報一樣,都有各自的乙太網資料幀型別(通過幀首部的型別字段判斷)。而在圖1-4中,把arp作為乙太網裝置驅動程式的一部分,放在ip層的下面,在邏輯上是合理的。

埠號用來標識互相通訊的應用程式。對於每乙個tcp/ip實現來說,ftp伺服器的tcp埠號都是21,每個telnet伺服器的tcp埠號都是23,每個tftp伺服器的udp埠號都是69。任何tcp/ip實現所提供的服務都要用知名的1~1023之間的埠號。客戶端通常對它使用的埠號並不關心,只需保證該埠號在本機上是唯一的就可以了。大多數tcp/ip實現給臨時埠分配1024~5000之間的埠號。大於5000的埠號是為其他伺服器預留的。

internet這個詞的第乙個字母是否大寫決定了它具有不同的含義。internet意思是乙個共用的協議族把多個網路連線在一起。而internet指的是世界範圍內通過tcp/ip相互通訊的所有主機集合。internet是乙個internet,而internet不等於internet。

使用tcp/ip協議的應用程式通常採用兩種應用程式設計介面:socket和tli(運輸層介面:transport layer inte***ce)。

《TCP IP協議詳解 卷1》 概述

分層 1 鏈路層,又稱網路介面層,處理與電纜的物理介面細節。乙太網協議 arp rarp 2 網路層,處理分組在網路中的活動。ip icmp igmp 3 運輸層,為兩台主機上的應用提供端到端的通訊。tcp udp 4 應用層,處理特定的應用程式細節。telnet ftp smtp snmp 網路層...

TCP IP詳解 卷一 協議

第一章概述 第二章internet位址結構 第三章鏈路層 第四章位址解析協議 第五章internet協議 第六章系統配置 dhcp和自動配置 第七章防火牆和網路位址轉換 第八章icmpv4和icmpv6 internet控制報文協議 第九章廣播和本地組播 igmp和mld 第十章使用者資料報協議和i...

TCP IP 卷1 協議 概述

1.1 引言 1.2 分層 網路協議通常是分成不同層次進行開發,每一層負責不同的通訊功能。tcp ip分為4層 鏈路層 包括作業系統中的驅動裝置和計算機中對應的網路介面卡。處理物理介面細節。網路層 處理分組在網路中的活動。包括ip協議,icmp 協議 igmp協議。運輸層 為兩台主機上的應用程式提供...