標籤: 暫無標籤

計算機網路是指由通信線路互相連接的許多自主工作的計算機構成的集合體,各個部件之間以何種規則進行通信,就是網路模型研究的問題。網路模型一般是指OSI七層參考模型和TCP/IP四層參考模型。這兩個模型在網路中應用最為廣泛。

1 網路模型 -OSI模型概述

網路模型OSI七層參考模型
OSI(Open System Interconnection )七層網路模型由下至上為1至7 層,分別為物理層(Physical layer),數據鏈路層(Data link layer),網路層(Network layer),傳輸層(Transport layer),會話層(Session layer),表示層(Presentation layer),應用層(Application layer)。

在OSI出現之前,計算機網路中存在眾多的體系結構,其中以IBM公司的SNA(系統網路體系結構)和DEC公司的DNA(Digital Network Architecture)數字網路體系結構最為著名。為了解決不同體系結構的網路的互聯問題,國際標準化組織ISO(注意不要與OSI搞混)於1981年制定了開放系統互連參考模型(Open System Interconnection Reference Model,OSI/RM)。這個模型把網路通信的工作分為7層,它們由低到高分別是物理層(Physical Layer),數據鏈路層(Data Link Layer),網路層(Network Layer),傳輸層(Transport Layer),會話層(Session Layer),表示層(Presen tation Layer)和應用層(Application Layer)。第一層到第三層屬於OSI參考模型的低三層,負責創建網路通信連接的鏈路;第四層到第七層為OSI參考模型的高四層,具體負責端到端的數據通信。每層完成一定的功能,每層都直接為其上層提供服務,並且所有層次都互相支持,而網路通信則可以自上而下(在發送端)或者自下而上(在接收端)雙向進行。當然並不是每一通信都需要經過OSI的全部七層,有的甚至只需要雙方對應的某一層即可。物理介面之間的轉接,以及中繼器與中繼器之間的連接就只需在物理層中進行即可;而路由器與路由器之間的連接則只需經過網路層以下的三層即可。總的來說,雙方的通信是在對等層次上進行的,不能在不對稱層次上進行通信。

OSI 標準制定過程中採用的方法是將整個龐大而複雜的問題劃分為若干個容易處理的小問題,這就是分層的體系結構辦法。在OSI中,採用了三級抽象,既體系結構,服務定義,協議規格說明。

2 網路模型 -OSI參考模型的主要功能和任務

網路模型OSI七層參考模型
1、物理層(Physical layer)
  
物理層是OSI的第一層,它雖然處於最底層,卻是整個開放系統的基礎。物理層為設備之間的數據通信提供傳輸媒體及互連設備,為數據傳輸提供可靠的環境。
  
媒體和互連設備

物理層的媒體包括架空明線、平衡電纜、光纖、無線通道等。通信用的互連設備指DTE和DCE間的互連設備。DTE既數據終端設備,又稱物理設備,如計算機、終端等都包括在內。而DCE則是數據通信設備或電路連接設備,如數據機等。數據傳輸通常是經過DTE──DCE,再經過DCE──DTE的路徑。互連設備指將DTE、DCE連接起來的裝置,如各種插頭、插座。LAN中的各種粗、細同軸電纜、T型接頭、插頭,接收器,發送器,中繼器等都屬物理層的媒體和連接器。

物理層的主要功能
  
為數據端設備提供傳送數據的通路,數據通路可以是一個物理媒體,也可以是多個物理媒體連接而成.一次完整的數據傳輸,包括激活物理連接,傳送數據,終止物理連接.所謂激活,就是不管有多少物理媒體參與,都要在通信的兩個數據終端設備間連接起來,形成一條通路.
  
傳輸數據.物理層要形成適合數據傳輸需要的實體,為數據傳送服務.一是要保證數據能在其上正確通過,二是要提供足夠的帶寬(帶寬是指每秒鐘內能通過的比特(BIT)數),以減少通道上的擁塞.傳輸數據的方式能滿足點到點,一點到多點,串列或并行,半雙工或全雙工,同步或非同步傳輸的需要.
  
完成物理層的一些管理工作.
  
物理層的一些重要標準
  
物理層的一些標準和協議早在OSI/TC97/C16 分技術委員會成立之前就已制定並在應用了,OSI也制定了一些標準並採用了一些已有的成果.下面將一些重要的標準列出,以便讀者查閱.ISO2110:稱為"數據通信----25芯DTE/DCE介面連接器和插針分配".它與EIA(美國電子工業協會)的"RS-232-C"基本兼容。ISO2593:稱為"數據通信----34芯DTE/DCE----介面連接器和插針分配"。ISO4092:稱為"數據通信----37芯DTE/DEC----介面連接器和插針分配".與EIARS-449兼容。CCITT V.24:稱為"數據終端設備(DTE)和數據電路終接設備之間的介面電路定義表".其功能與EIARS-232-C及RS-449兼容於100序列線上.
  
2、數據鏈路層(Data link layer)
  
數據鏈路可以粗略地理解為數據通道。物理層要為終端設備間的數據通信提供傳輸媒體及其連接.媒體是長期的,連接是有生存期的.在連接生存期內,收發兩端可以進行不等的一次或多次數據通信.每次通信都要經過建立通信聯絡和拆除通信聯絡兩過程.這種建立起來的數據收發關
  
系就叫作數據鏈路.而在物理媒體上傳輸的數據難免受到各種不可靠因素的影響而產生差錯,為了彌補物理層上的不足,為上層提供無差錯的數據傳輸,就要能對數據進行檢錯和糾錯.數據鏈路的建立,拆除,對數據的檢錯,糾錯是數據鏈路層的基本任務。
  
鏈路層的主要功能
  
鏈路層是為網路層提供數據傳送服務的,這種服務要依靠本層具備的功能來實現。鏈路層應具備如下功能:
  
鏈路連接的建立,拆除,分離。
幀定界和幀同步。鏈路層的數據傳輸單元是幀,協議不同,幀的長短和界面也有差別,但無論如何必須對幀進行定界。
順序控制,指對幀的收發順序的控制。
差錯檢測和恢復。還有鏈路標識,流量控制等等.差錯檢測多用方陣碼校驗和循環碼校驗來檢測通道上數據的誤碼,而幀丟失等用序號檢測.各種錯誤的恢復則常靠反饋重發技術來完成。
數據鏈路層的主要協議
數據鏈路層協議是為發對等實體間保持一致而制定的,也為了順利完成對網路層的服務。主要協議如下:
  
ISO1745--1975:"數據通信系統的基本型控制規程".這是一種面向字元的標準,利用10個控制字元完成鏈路的建立,拆除及數據交換.對幀的收發情況及差錯恢復也是靠這些字元來完成.ISO1155, ISO1177, ISO2626, ISO2629等標準的配合使用可形成多種鏈路控制和數據傳輸方式.
  
ISO3309--1984:稱為"HDLC 幀結構".ISO4335--1984:稱為"HDLC 規程要素 ".ISO7809--1984:稱為"HDLC 規程類型彙編".這3個標準都是為面向比特的數據傳輸控制而制定的.有人習慣上把這3個標準組合稱為高級鏈路控制規程.
  
ISO7776:稱為"DTE數據鏈路層規程".與CCITT X.25LAB"平衡型鏈路訪問規程"相兼容.
  
鏈路層產品
  
獨立的鏈路產品中最常見的當屬網卡,網橋也是鏈路產品。MODEM的某些功能有人認為屬於鏈路層,對些還有爭議.數據鏈路層將本質上不可靠的傳輸媒體變成可靠的傳輸通路提供給網路層。在IEEE802.3情況下,數據鏈路層分成了兩個子層,一個是邏輯鏈路控制,另一個是媒體訪問控制。下圖所示為IEEE802.3LAN體系結構。
  
AUI=連接單元介面       PMA=物理媒體連接
MAU=媒體連接單元       PLS=物理信令
MDI=媒體相關介面
  
3、網路層(Network layer)
  
網路層的產生也是網路發展的結果.在聯機系統和線路交換的環境中,網路層的功能沒有太大意義.當數據終端增多時.它們之間有中繼設備相連.此時會出現一台終端要求不只是與唯一的一台而是能和多台終端通信的情況,這就是產生了把任意兩台數據終端設備的數據鏈接起來的問題,也就是路由或者叫尋徑.另外,當一條物理通道建立之後,被一對用戶使用,往往有許多空閑時間被浪費掉.人們自然會希望讓多對用戶共用一條鏈路,為解決這一問題就出現了邏輯通道技術和虛擬電路技術.
  
網路層主要功能

網路層為建立網路連接和為上層提供服務,應具備以下主要功能:
  
路由選擇和中繼
激活,終止網路連接
在一條數據鏈路上復用多條網路連接,多採取分時復用技術
差錯檢測與恢復
排序,流量控制
服務選擇
網路管理

網路層標準簡介

網路層的一些主要標準如下:
  
ISO.DIS8208:稱為"DTE用的X.25分組級協議"
ISO.DIS8348:稱為"CO 網路服務定義"(面向連接)
ISO.DIS8349:稱為"CL 網路服務定義"(面向無連接)
ISO.DIS8473:稱為"CL 網路協議"
ISO.DIS8348:稱為"網路層定址"
  
除上述標準外,還有許多標準。這些標準都只是解決網路層的部分功能,所以往往需要在網路層中同時使用幾個標準才能完成整個網路層的功能.由於面對的網路不同,網路層將會採用不同的標準組合.

在具有開放特性的網路中的數據終端設備,都要配置網路層的功能.現在市場上銷售的網路硬設備主要有網關和路由器.

網路模型OSI七層參考模型
 
4、傳輸層(Transport layer)
  
傳輸層是兩台計算機經過網路進行數據通信時,第一個端到端的層次,具有緩衝作用。當網路層服務質量不能滿足要求時,它將服務加以提高,以滿足高層的要求;當網路層服務質量較好時,它只用很少的工作。傳輸層還可進行復用,即在一個網路連接上創建多個邏輯連接。 傳輸層也稱為運輸層.傳輸層只存在於端開放系統中,是介於低3層通信子網系統和高3層之間的一層,但是很重要的一層.因為它是源端到目的端對數據傳送進行控制從低到高的最後一層.
  
有一個既存事實,即世界上各種通信子網在性能上存在著很大差異.例如電話交換網,分組交換網,公用數據交換網,區域網等通信子網都可互連,但它們提供的吞吐量,傳輸速率,數據延遲通信費用各不相同.對於會話層來說,卻要求有一性能恆定的界面.傳輸層就承擔了這一功能.它採用分流/合流,復用/介復用技術來調節上述通信子網的差異,使會話層感受不到.
  
此外傳輸層還要具備差錯恢復,流量控制等功能,以此對會話層屏蔽通信子網在這些方面的細節與差異.傳輸層面對的數據對象已不是網路地址和主機地址,而是和會話層的界面埠.上述功能的最終目的是為會話提供可靠的,無誤的數據傳輸.傳輸層的服務一般要經歷傳輸連接建立階段,數據傳送階段,傳輸連接釋放階段3個階段才算完成一個完整的服務過程.而在數據傳送階段又分為一般數據傳送和加速數據傳送兩種。傳輸層服務分成5種類型.基本可以滿足對傳送質量,傳送速度,傳送費用的各種不同需要.

傳輸層的協議標準有以下幾種:
  
ISO8072:稱為"面向連接的傳輸服務定義"
ISO8072:稱為"面向連接的傳輸協議規範
  
5、會話層(Application layer)
  
會話層提供的服務可使應用建立和維持會話,並能使會話獲得同步。會話層使用校驗點可使通信會話在通信失效時從校驗點繼續恢復通信。這種能力對於傳送大的文件極為重要。會話層,表示層,應用層構成開放系統的高3層,面對應用進程提供分佈處理,對話管理,信息表示,恢復最後的差錯等. 會話層同樣要擔負應用進程服務要求,而運輸層不能完成的那部分工作,給運輸層功能差距以彌補.主要的功能是對話管理,數據流同步和重新同步。要完成這些功能,需要由大量的服務單元功能組合,已經制定的功能單元已有幾十種.現將會話層主要功能介紹如下.
  
為會話實體間建立連接。為給兩個對等會話服務用戶建立一個會話連接,應該做如下幾項工作:
  
將會話地址映射為運輸地址
選擇需要的運輸服務質量參數(QOS)
對會話參數進行協商
識別各個會話連接
傳送有限的透明用戶數據
數據傳輸階段

這個階段是在兩個會話用戶之間實現有組織的,同步的數據傳輸.用戶數據單元為SSDU,而協議數據單元為SPDU.會話用戶之間的數據傳送過程是將SSDU轉變成SPDU進行的.

連接釋放
  
連接釋放是通過"有序釋放","廢棄","有限量透明用戶數據傳送"等功能單元來釋放會話連接的.會話層標準為了使會話連接建立階段能進行功能協商,也為了便於其它國際標準參考和引用,定義了12種功能單元.各個系統可根據自身情況和需要,以核心功能服務單元為基礎,選配其他功能單元組成合理的會話服務子集.會話層的主要標準有"DIS8236:會話服務定義"和"DIS8237:會話協議規範".


6、表示層(Presentation layer)

這一層主要解決用戶信息的語法表示問題。它將欲交換的數據從適合於某一用戶的抽象語法,轉換為適合於OSI系統內部使用的傳送語法。即提供格式化的表示和轉換數據服務。數據的壓縮和解壓縮, 加密和解密等工作都由表示層負責。例如圖像格式的顯示,就是由位於表示層的協議來支持。

7、應用層(Application layer),應用層為操作系統或網路應用程序提供訪問網路服務的介面。
應用層協議的代表包括:Telnet、FTP、HTTP、SNMP等。

通過 OSI 層,信息可以從一台計算機的軟體應用程序傳輸到另一台的應用程序上。例如,計算機 A 上的應用程序要將信息發送到計算機 B 的應用程序,則計算機 A 中的應用程序需要將信息先發送到其應用層(第七層),然後此層將信息發送到表示層(第六層),表示層將數據轉送到會話層(第五層),如此繼續,直至物理層(第一層)。在物理層,數據被放置在物理網路媒介中並被發送至計算機 B 。計算機 B 的物理層接收來自物理媒介的數據,然後將信息向上發送至數據鏈路層(第二層),數據鏈路層再轉送給網路層,依次繼續直到信息到達計算機 B 的應用層。最後,計算機 B 的應用層再將信息傳送給應用程序接收端,從而完成通信過程。下面圖示說明了這一過程。
  
OSI 的七層運用各種各樣的控制信息來和其他計算機系統的對應層進行通信。這些控制信息包含特殊的請求和說明,它們在對應的 OSI 層間進行交換。每一層數據的頭和尾是兩個攜帶控制信息的基本形式。

對於從上一層傳送下來的數據,附加在前面的控制信息稱為頭,附加在後面的控制信息稱為尾。然而,在對來自上一層數據增加協議頭和協議尾,對一個 OSI 層來說並不是必需的。

當數據在各層間傳送時,每一層都可以在數據上增加頭和尾,而這些數據已經包含了上一層增加的頭和尾。協議頭包含了有關層與層間的通信信息。頭、尾以及數據是相關聯的概念,它們取決於分析信息單元的協議層。例如,傳輸層頭包含了只有傳輸層可以看到的信息,傳輸層下面的其他層只將此頭作為數據的一部分傳遞。對於網路層,一個信息單元由第三層的頭和數據組成。對於數據鏈路層,經網路層向下傳遞的所有信息即第三層頭和數據都被看作是數據。換句話說,在給定的某一 OSI 層,信息單元的數據部分包含來自於所有上層的頭和尾以及數據,這稱之為封裝。
 
例如,如果計算機 A 要將應用程序中的某數據發送至計算機 B ,數據首先傳送至應用層。 計算機 A 的應用層通過在數據上添加協議頭來和計算機 B 的應用層通信。所形成的信息單元包含協議頭、數據、可能還有協議尾,被發送至表示層,表示層再添加為計算機 B 的表示層所理解的控制信息的協議頭。信息單元的大小隨著每一層協議頭和協議尾的添加而增加,這些協議頭和協議尾包含了計算機 B 的對應層要使用的控制信息。在物理層,整個信息單元通過網路介質傳輸。

計算機 B 中的物理層收到信息單元並將其傳送至數據鏈路層;然後 B 中的數據鏈路層讀取計算機 A 的數據鏈路層添加的協議頭中的控制信息;然後去除協議頭和協議尾,剩餘部分被傳送至網路層。每一層執行相同的動作:從對應層讀取協議頭和協議尾,並去除,再將剩餘信息發送至上一層。應用層執行完這些動作后,數據就被傳送至計算機 B 中的應用程序,這些數據和計算機 A 的應用程序所發送的完全相同 。

一個 OSI 層與另一層之間的通信是利用第二層提供的服務完成的。相鄰層提供的服務幫助一 OSI 層與另一計算機系統的對應層進行通信。一個 OSI 模型的特定層通常是與另外三個 OSI 層聯繫:與之直接相鄰的上一層和下一層,還有目標聯網計算機系統的對應層。例如,計算機 A 的數據鏈路層應與其網路層,物理層以及計算機 B 的數據鏈路層進行通信。   

3 網路模型 -OSI參考模型中的數據封裝過程

網路模型OSI參考模型中的數據封裝過程

  
如圖所示,在OSI參考模型中,當一台主機需要傳送用戶的數據(DATA)時,數據首先通過應用層的介面進入應用層。在應用層,用戶的數據被加上應用層的報頭(Application Header,AH),形成應用層協議數據單元(Protocol Data Unit,PDU),然後被遞交到下一層-表示層。
  
表示層並不"關心"上層-應用層的數據格式而是把整個應用層遞交的數據包看成是一個整體進行封裝,即加上表示層的報頭(Presentation Header,PH)。然後,遞交到下層-會話層。
  
同樣,會話層、傳輸層、網路層、數據鏈路層也都要分別給上層遞交下來的數據加上自己的報頭。它們是:會話層報頭(Session Header,SH)、傳輸層報頭(Transport Header,TH)、網路層報頭(Network Header,NH)和數據鏈路層報頭(Data link Header,DH)。其中,數據鏈路層還要給網路層遞交的數據加上數據鏈路層報尾(Data link Termination,DT)形成最終的一幀數據。
  
當一幀數據通過物理層傳送到目標主機的物理層時,該主機的物理層把它遞交到上層-數據鏈路層。數據鏈路層負責去掉數據幀的幀頭部DH和尾部DT(同時還進行數據校驗)。如果數據沒有出錯,則遞交到上層-網路層。
  
同樣,網路層、傳輸層、會話層、表示層、應用層也要做類似的工作。最終,原始數據被遞交到目標主機的具體應用程序中。

4 網路模型 -TCP/IP參考模型

ISO制定的OSI參考模型的過於龐大、複雜招致了許多批評。與此對照,由技術人員自己開發的TCP/IP協議棧獲得了更為廣泛的應用。如圖所示,是TCP/IP參考模型和OSI參考模型的對比示意圖。

網路模型OSI參考模型和TCP/IP參考模型的對比

TCP/IP協議棧是美國國防部高級研究計劃局計算機網(Advanced Research Projects Agency Network,ARPANET)和其後繼網際網路使用的參考模型。ARPANET是由美國國防部(U.S.Department of Defense,DoD)贊助的研究網路。最初,它只連接了美國境內的四所大學。隨後的幾年中,它通過租用的電話線連接了數百所大學和政府部門。最終ARPANET發展成為全球規模最大的互連網路-網際網路。最初的ARPANET於1990年永久性地關閉。
  
TCP/IP參考模型分為四個層次:應用層、傳輸層、網路互連層和主機到網路層。如圖所示。

網路模型TCP/IP參考模型的層次結構


在TCP/IP參考模型中,去掉了OSI參考模型中的會話層和表示層(這兩層的功能被合併到應用層實現)。同時將OSI參考模型中的數據鏈路層和物理層合併為主機到網路層。下面,分別介紹各層的主要功能。
  
1、主機到網路層
  
實際上TCP/IP參考模型沒有真正描述這一層的實現,只是要求能夠提供給其上層-網路互連層一個訪問介面,以便在其上傳遞IP分組。由於這一層次未被定義,所以其具體的實現方法將隨著網路類型的不同而不同。
  
2、網路互連層

網路互連層是整個TCP/IP協議棧的核心。它的功能是把分組發往目標網路或主機。同時,為了儘快地發送分組,可能需要沿不同的路徑同時進行分組傳遞。因此,分組到達的順序和發送的順序可能不同,這就需要上層必須對分組進行排序。
  
網路互連層定義了分組格式和協議,即IP協議(Internet Protocol)。
  
網路互連層除了需要完成路由的功能外,也可以完成將不同類型的網路(異構網)互連的任務。除此之外,網路互連層還需要完成擁塞控制的功能。
  
3、傳輸層
  
在TCP/IP模型中,傳輸層的功能是使源端主機和目標端主機上的對等實體可以進行會話。在傳輸層定義了兩種服務質量不同的協議。即:傳輸控制協議TCP(transmission control protocol)和用戶數據報協議UDP(user datagram protocol)。
  
TCP協議是一個面向連接的、可靠的協議。它將一台主機發出的位元組流無差錯地發往互聯網上的其他主機。在發送端,它負責把上層傳送下來的位元組流分成報文段並傳遞給下層。在接收端,它負責把收到的報文進行重組后遞交給上層。TCP協議還要處理端到端的流量控制,以避免緩慢接收的接收方沒有足夠的緩衝區接收發送方發送的大量數據。
  
UDP協議是一個不可靠的、無連接協議,主要適用於不需要對報文進行排序和流量控制的場合。

第四層應用層
應用層對應於OSI七層參考模型的應用層和表達層。網際網路的應用層協議包括Finger、Whois、FTP(文件傳輸協議)、Gopher、HTTP(超文本傳輸協議)、Telent(遠程終端協議)、SMTP(簡單郵件傳送協議)、IRC(網際網路中繼會話)、NNTP(網路新聞傳輸協議)等,這也是本書將要討論的重點。

5 網路模型 -參考資料

《網路工程師教程》 雷震甲 主編;北京:清華大學出版社,2004.7
http://cisco.chinaitlab.com/colligate/6841.html
http://cisco.chinaitlab.com/TCP/35485.html

上一篇[移動IP技術]    下一篇 [長星]

相關評論

同義詞:暫無同義詞