論TCP IP協議的體系的結構極其各層結構

2021-08-07 23:38:55 字數 4693 閱讀 4905

目錄1.1 tcp/ip協議的歷史和發展過程

1.2 tcp/ip協議的體系結構模型

2.1 ip網際層的功能

2.2 ip位址及其轉換

2.2.1 ip位址

2.2.2 ip位址的轉換

2.2.3 子網技術

2.3 ip資料報的格式

2.4 internet控制報文協議icmp

3.1 tcp運輸層協議概述

3.2 埠及套接字

3.3 tcp報文的格式

3.4 差錯控制與流量控制

3.5 tcp連線管理

3.6 使用者資料報協議udp

4.1 應用層的概述

4.2 應用層協議簡介

4.2.1 檔案傳送協議ftp、tftp

4.2.2 簡單郵件傳輸協議smtp

4.2.3 遠端登入telnet

論tcp/ip協議的體系的結構及其各層協議

易家傅 99714001盧凌凌 99714004)

摘要: 本文主要論述了tcp/ip協議體系結構及各層協議。重點說明ip網際協議的資料報格式、ip位址及位址轉換,tcp傳輸控制協議的資料報格式、差錯控制、流量控制和連線的建立等原理。

最後還簡介了應用層的幾個常用協議。

關鍵字:tcp/ip ip位址子網掩碼埠套接字

引言:當前的世界經濟正在從工業經濟向知識經濟轉變,這種以知識基礎的經濟有兩個重要的特點,就是資訊化和全球化。而要實現資訊化和全球化,就必須依靠完善的網路。

計算機網路是其中最重要的一部分,然而計算機網路遠比電信網路複雜,它不僅僅是計算機之間簡單的連線,還是相互通訊的計算機系統之間的高度協調工作,因此必須將這龐大而複雜的問題分層處理,轉化成若干個區域性問題,從而形成了像建築框架那樣的網路體系結構。由於internet已得到全世界的承認,因此internet所使用的tcp/ip體系計算機網路中占有真重要的地位,了解其內容和工作原理對學習計算機網路是很有幫助的。

1.1 tcp/ip協議的歷史和發展過程

tcp協議最早由史丹福大學的兩名研究人員於2023年提出。2023年,tcp/ip被unix 4.2bsd系統採用。

隨著unix的成功,tcp/ip逐步成為unix機器的標準網路協議。internet的前身arpanet最初使用ncp(network control protocol)協議,由於tcp/ip協議具有跨平台特性,arpanet的實驗人員在經過對tcp/ip的改進以後,規定連入arpanet的計算機都必須採用tcp/ip協議。隨著arpanet逐漸發展成為internet,tcp/ip協議就成為internet的標準連線協議。

1.2 tcp/ip協議的體系結構模型

tcp/ip協議其實是乙個協議集合,它包括了tcp協議(transport control protocol,傳輸控制協議)、ip協議(internet protocol internet協議)及其它一些協議。如圖1,tcp/ip體系結構模型自下往上分別是:

(1)網路介面層:嚴格來說它不是乙個層次,而僅僅是乙個介面,用以提供在下面的資料鏈路層和物理層的介面。網路介面層並沒有什麼具體的內容,這裡就不再討論了。 圖1

(2)ip網路層:主要有網際協議ip,位址解析協議arp,逆位址解析協議rarp

(3)tcp運輸層:有運輸控制協議tcp,使用者資料報協議udp。

(4)應用層:有telnet,ftp,smtp等應用層協議。

層與層之間的關係是,下層總是為上一層服務的,上層遮蔽下一層的服務細節。

2.1 ip網際層的功能

不同的物理網路技術有不同的編址方式;不同物理網路中的主機,有不同的物理網路位址。網間網技術是將不同物理網路技術統一起來的高層軟體術。網間網技術採用一種全域性通用的位址格式,為全網的每一網路和每一主機都分配乙個網間網位址,以此遮蔽物理網路位址的差異。

ip協議提供一種全網間網通用的位址格式,並在統一管理下進行位址分配,保證乙個位址對應一台網間網主機(包括閘道器),這樣實體地址的差異被ip層所遮蔽。ip提供的是無連線服務。

2.2 ip位址及其轉換

2.2.1 ip位址

每個internet上的主機和路由器都有乙個ip位址,包括網路號和主機號,其中網路號標識該網路,而主機號標識該網路中的主機。所有的ip位址都是32位,分成4個字段,每個欄位8位。

32位的ip位址可以有五種格式,如圖2所示:

ip位址通常用帶點十進位制記法來書寫,即ip位址寫成四個十進位制數,相互之間用小數點隔開,每個十進位制數(從0到255)表示ip位址的乙個位元組。值得指出的是0和1有特殊的意義,見**1:

**12.2.2 ip位址的轉換

ip位址是網路層的位址,而下傳到鏈路層要轉變為mac幀後才能傳送到網路。而mac幀使用的是硬體位址。如何將32位的ip位址轉變成48位的區域網位址,這就是位址解析協議arp要解決的問題。

假設是在本區域網中,a主機向b主機發生資料報。首先a主機檢視arp快取記憶體內的ip位址到實體地址的對映表,如果找到就寫入mac幀傳送,否則進行以下步驟:

(1) 在本區域網上廣播傳送乙個arp請求分組,上面有主機b的ip位址;

(2) 在本區域網上的所以主機上執行的arp程序都收到此arp請求分組;

(3) 主機b在arp請求分組中見到自己的ip位址,就向主機a傳送乙個arp響應分組,上面寫入自己的實體地址;

(4) 主機a收到主b的arp響應分組後,就在其arp快取記憶體中寫入主機b的ip位址到實體地址的對映。

有時還要用到逆位址解析協議rarp使只知道自己實體地址的主機能夠知道其ip位址,如無盤工作站的引導就可以通過逆位址解析協議rarp來解決。

2.2.3 子網技術

我們知道乙個單位分配到的ip位址是ip位址中網路號net-id,而後面的主機號host-id則由本單位進行分配。若該單位的所有主機都使用同乙個網路號,主機的數量很多,分布在很大的地理範圍時,往往需要一些網橋將這些主機互連起來。網橋的缺點較多,例如,容易引起廣播風暴,同時當網路出現故障時也不太容易隔離和管理。

為了讓本單位的主機便於管理,可以將本單位所屬主機劃分為若干個子網,用ip 位址中的主機號字段中的前若干個位元作為「子網號字段」,後面剩下來的仍為主機號字段。這樣便可以用路由器把本單位的各子網互連起來,使全單位的網路便於管理。從外部看,這個單位只有乙個網路號。

只有當外面的分組進入到本單位範圍後,再由該單位的路由器根據子網號進行選路,最後找到目的主機。這樣一來該單位的網路管理就很方便得多了。同時ip位址的使用不至於造成很大的浪費,緩解了日益增加的區域網和網上主機對ip位址的需求。

如圖3所示,說明了子網掩碼的意義。每乙個路由器當收到乙個分組時,首先檢查該分組的ip位址中的網路號,若不是本網路號則傳送到下一站路由器,若是本網路號則用子網掩碼與ip位址按位相與運算,然後取出子網號進行判斷,決定是傳送到其他子網,或直接交付給本網路的主機埠。

2.3 ip資料報的格式

ip資料報的格式能夠說明ip協議都具有什麼樣的功能,圖4就是資料報的格式。

從圖4中可以看出,乙個資料報首部由和資料兩部分組成。首部的前20位元組是固定部分,後一部分則是可變部分。

資料報首部的固定部分中的各欄位

。版本佔4bit,指的版本。通訊雙方使用的協議的版本必須一致。

。首部長度

佔4bit,可表示的最大數值是15個單位(每個單位為4位元組),因此ip的首部長度的最大值是60 位元組。當ip分組的首部長度不是4位元組的整數倍的時開始,這樣在實現起來會比較方便。首部長度的限制為60 個位元組的缺點是有時(如採用源站選路的時)不夠用。

但這樣的用意是要使用者儘量減少額外開銷。

。服務型別

佔8bit用來獲得更好的服務,其意義見圖一的上面部分所示。服務型別欄位的前三個位元表示優先順序,它可使資料報具有8個有限級中的乙個。

第四個位元是d位元,表示要求有更低的時延。

第五個位元是t位元,表示要求有更高的吞吐量。

第六個位元是r位元,表示要求有更高的可靠性,即在資料報傳送的過程中,被節點交換機丟棄的概率比較更小一些。

第七個位元是c位元,是新增加的,表示要求選擇費用更低廉的路由。

最後乙個位元組目前尚未使用。

。總長度

總長度指首部和資料之和的長度,單位為位元組。

總長度欄位為16bit,因此資料報的最大長度為節。這在目前是夠用的。

當很長的資料報要分片記性傳送時,「總長度」不是指資料報長度,而是指分片後的首部長度和資料長度的總和。

。標識標識欄位是為了使分片後的各資料報最後能準確地重灌成為原來的資料報。請注意:這裡的「標識」並沒有順序號的意思,因為ip是無連線服務,資料報不存在按序接受的問題。

。標誌佔3bit 。目前只有前兩個比特有意義。

標誌欄位中的最低位記為mf(more fragment)。mf=1即表示後面還有分片的資料報。mf=0表示這已是若干資料報片中的最後乙個。

標誌字段中間的一位記為df (don't fragment).只有當mf=0時才允許分片。

。片偏移

片偏移指出:較長的分組在分片後,某個片在原分組中的相對位置。也就是說,相對於使用者資料字段的起點,該片從何處開始。片偏移以8個位元組為偏移單位。

。壽命壽命欄位記為ttl(time to live), 其單位為秒,建議壽命值為32秒。

。協議佔8bit,。常用的協議和相應的協議字段值是:udp(17),tcp(6),icmp(1),ggp(3)。

。首部檢驗和

此字段只檢驗資料報的首部不包括資料部分。ip檢驗和的計算方法是:將資料報首部看成為16bit字的序列。

先將檢驗和字段置零,將所有的16bit字相加後,將和的二進位制反碼寫進檢驗和字段。收到資料報後,將首部的16bit字的序列再相加一次,若首部未發生任何變化,則和必全為1,否則即認為出錯,並將資料報丟棄。

TCPIP中各種協議資料的格式

ip包中的檢驗和是針對ip首部做檢驗的。tcp udp icmp igmp包首部中的檢驗和都是針對整個包 首部和資料部分 做檢驗的。說明 preamble field 前導用以傳送端和接收端的物理裝置達到同步狀態 start frame delimiter sfd field sfd用以表示乙個幀的...

TCPIP詳解 卷一 協議 11 簡單的例子

用我們自己編寫的sock程式生成一些可以通過tcpdump觀察的udp資料報 bsdi sock v u i n4svr4discard connectedon140.252.13.35.1108to140.252.13.34.9bsdi sock v u i n4 w0svr4discard co...

論流程與體系的關係

所謂資訊化的業務流程管理平台即指企業所有的業務流程都必須在此統一的平台上進行建立和發布。這樣可以有效地避免不同管理專案所建立的管理體系之間的不協調和衝突。當然,要做到這一點還需要有一套統一的資訊化的業務流程管理語言,所有業務人員都用同樣的 語言 來描述業務流程,避免各說各話。只有這樣才能描述出一套企...