天天看點

網絡七層的功能(轉)

網絡七層的功能

   網絡七層包括實體層、資料鍊路層、網絡層、傳輸層、會話層、表示層和應用層。其中實體層、資料鍊路層和網絡層通常被稱作媒體層,是網絡工程師所研究的對象;傳輸層、會話層、表示層和應用層則被稱作主機層,是使用者所面向和關心的内容。

   那麼,網絡七層的具體定義和相應職責各是什麼呢?下圖便是OSI七層模型的協定堆棧示意,它們由下到上分别為:

  第一層—實體層:實體層定義了通訊網絡之間實體鍊路的電氣或機械特性,以及激活、維護和關閉這條鍊路的各項操作。實體層特征參數包括:電壓、資料傳輸率、最大傳輸距離、實體連接配接媒體等。

  第二層—資料鍊路層:實際的實體鍊路是不可靠的,總會出現錯誤,資料鍊路層的作用就是通過一定的手段(将資料分成幀,以資料幀為機關進行傳輸)将有差錯的實體鍊路轉化成對上層來說沒有錯誤的資料鍊路。它的特征參數包括:實體位址、網絡拓樸結構、錯誤警告機制、所傳資料幀的排序和流控等。其中實體位址是相對網絡層位址而言的,它代表了資料鍊路層的節點辨別技術;“拓樸”是網絡中經常會碰到的術語,标記着各個裝置以何種方式互連起來,如:總線型—所有裝置都連在一條總線上,星型—所有裝置都通過一個中央結點互連;錯誤警告是向上層協定報告資料傳遞中錯誤的發生;資料幀排序可将所傳資料重新排列;流控則用于調整資料傳輸速率,使接收端不至于過載。

  OSL參考模型(簡單圖一)

  應用層

  表示層

  會話層

  傳輸層

  網絡層

  資料鍊路層

  實體層

  第三層—網絡層:網絡層将資料分成一定長度的分組,并在分組頭中辨別源和目的節點的邏輯位址,這些位址就象街區、門牌号一樣,成為每個節點的辨別;網絡層的核心功能便是根據這些位址來獲得從源到目的的路徑,當有多條路徑存在的情況下,還要負責進行路由選擇。

  第四層—傳輸層:提供對上層透明(不依賴于具體網絡)的可靠的資料傳輸。如果說網絡層關心的是“點到點”的逐點轉遞,那麼可以說傳輸層關注的是“端到端”(源端到目的端)的最終效果。它的功能主要包括:流控、多路技術、虛電路管理和糾錯及恢複等。其中多路技術使多個不同應用的資料可以通過單一的實體鍊路共同實作傳遞;虛電路是資料傳遞的邏輯通道,在傳輸層建立、維護和終止;糾錯功能則可以檢測錯誤的發生,并采取措施(如重傳)解決問題。

  第五層—會話層:在網絡實體間建立、管理和終止通訊應用服務請求和響應等會話。

  第六層—表示層:定義了一系列代碼和代碼轉換功能以保證源端資料在目的端同樣能被識别,比如大家所熟悉的文本資料的ASCII碼,表示圖象的GIF或表示動畫的MPEG等。

  第七層——應用層:應用層是面向使用者的最高層,通過軟體應用實作網絡與使用者的直接對話,如:找到通訊對方,識别可用資源和同步操作等。

   網絡七層的底三層(實體層、資料鍊路層和網絡層)通常被稱作媒體層,它們不為使用者所見,默默地對網絡起到支撐作用,是網絡工程師所研究的對象;上四層(傳輸層、會話層、表示層和應用層)則被稱作主機層,是使用者所面向和關心的内容,這些程式常常将各層的功能綜合在一起,在使用者面前形成一個整體。大家所熟悉的網上應用WWW、FTP、TELNET等,都是這多層功能的綜合。

   在資料的實際傳輸中,發送方将資料送到自己的應用層,加上該層的控制資訊後傳給表示層;表示層如法炮制,再将資料加上自己的辨別傳給會話層;以此類推,每一層都在收到的資料上加上本層的控制資訊并傳給下一層;最後到達實體層時,資料通過實際的實體媒體傳到接收方。接收端則執行與發送端相反的操作,由下往上,将逐層辨別去掉,重新還原成最初的資料。由此可見,資料通訊雙方在對等層必須采用相同的協定,定義同一種資料辨別格式,這樣才可能保證資料的正确傳輸而不至走形。

  OSI與實際應用模型

   七層模型是一個理論模型,實際應用則千變萬化,完全可能發生變異。對大多數應用,我們隻是将它的協定族(即協定堆棧)與七層模型作大緻的對應,看看實際用到的特定協定是屬于七層中某個子層,還是包括了上下多層的功能。

   網絡中實際用到的協定是否嚴格按照這七層來定義呢?并非如此,七層模型是一個理論模型,實際應用則千變萬化,完全可能發生變異。何況有的應用由來已久,不可能在七層模型推出後又推翻重來。是以對大多數應用,我們隻是将它的協定族(即協定堆棧)與七層模型作大緻的對應,看看實際用到的特定協定是屬于七層中某個子層,還是包括了上下多層的功能。我們在以前的篇幅中曾介紹過的TCP/IP協定,它與七層模型的對應關系如下:

  OSL與TCP/IP模型的對應關系(簡單圖二)

  應用層 *

  表示層 應用層

  會話層 *

  傳輸層 傳輸層

  網絡層 網絡層

  資料鍊路層 網絡接口層

  實體層 *

   由圖二可看出,TCP/IP的多數應用協定将OSI應用層、表示層、會話層的功能合在一起,構成其應用層,典型協定有:HTTP、FTP、TELNET等;TCP/UDP協定對應OSI的傳輸層,提供上層資料傳輸保障;IP協定對應OSI的網絡層,它定義了衆所周知的IP位址格式,做為網間網中查找路徑的依據;TCP/IP的最底層功能由網絡接口層實作,相當于OSI的實體層和資料鍊路層,實際上TCP/IP對該層并未作嚴格定義,而是應用已有的底層網絡實作傳輸,這就是它得以廣泛應用的原因。

TCPIP協定教程    這個tcp/ip的教程時主要是考慮到現在的網際網路幾乎全都是基于tcp/ip協定的,是以我們應該明白的一點就是這個tcp/ip的架構究竟是什麼?它怎樣為我們服務。它成為被稱作“全球網際網路”或“網際網路(Internet)”的基礎,能夠将絕大部分的計算機連接配接起來,不管你用什麼作業系統,可見tcp/ip體系是本世紀網際網路發展的根本基石。對于網絡程式員來說;了解tcp/ip的機理,可以有構造任何網絡應用程式的基本要素,什麼winsocket,序列槽通訊等等甚至木馬,你都會迎刃而解。

  一

  首先說說網絡協定的層次,網絡協定通常分不同層次進行開發,每一層分别負責不同的通信功能。一個協定族,比如T C P / I P,是一組不同層次上的多個協定的組合。

  (1) 鍊路層,有時也稱作資料鍊路層或網絡接口層,通常包括作業系統中的裝置驅動程式和計算中對應的網絡接口卡。它們一起處理與電纜(或其他任何傳輸媒介)的實體接口細節。

  (2) 網絡層,有時也稱作網際網路層,處理分組在網絡中的活動,例如分組的選路。在T C P / I P協定族中,網絡層協定包括I P協定(網際協定),I C M P協定(I n t e r n e t網際網路控制封包協定),以及I G M P協定(I n t e r n e t組管理協定)。

  (3)運輸層,主要為兩台主機上的應用程式提供端到端的通信。在T C P / I P協定族中,有兩個互不相同的傳輸協定: T C P(傳輸控制協定)和U D P(使用者資料報協定)。T C P為兩台主機提供高可靠性的資料通信。它所做的工作包括把應用程式交給它的資料分成合适的小塊交給下面的網絡層,确認接收到的分組,設定發送最後确認分組的逾時時鐘等。由于運輸層提供了高可靠性的端到端的通信,是以應用層可以忽略所有這些細節。而另一方面, U D P則為應用層提供一種非常簡單的服務。它隻是把稱作資料報的分組從一台主機發送到另一台主機,但并不保證該資料報能到達另一端。任何必需的可靠性必須由應用層來提供。

  應用層 Telnet、FTP和e-mail等

  運輸層 TCP和UDP

  網絡層 IP、ICMP和IGMP

  鍊路層 裝置驅動程式及接口卡

  (4)應用層,負責處理特定的應用程式細節。幾乎各種不同的T C P / I P實作都會提供下面這些通用的應用程式:?Telnet 遠端登入,FTP 檔案傳輸協定,SMTP 簡單郵件傳送協定,SNMP 簡單網絡管理協定,現在想要給大家說的是大多數的網絡應用程式都被設計成客戶—伺服器模式在同一層上,雙方都有對應的一個或多個協定進行通信。例如,某個協定允許T C P層進行通信,而另一個協定則允許兩個I P層進行通信。

  這裡實際上就是說應用層本身本不注意資料的傳遞和交換,它一般隻是一個使用者程序,而上面我提到的運輸層及其以下的三層的目的就是處理通信的過程,他們不管你應用程式的事,分工明确。