在網路曆史的早期,國際標準組織(ISO)和國際電報電話諮詢委員會
(CCITT)共同出版了開放系統互聯的七層參考模型。一台電腦作業系統中的網路過程包括從應用請求(在協議棧的頂部)到網路介質(底部)
,OSI參考模型把功能分成七個分立的層次。圖2.1表示了OSI分層模型。
┌—————┐
│ 應用程式層 │←第七層
├—————┤
│ 展示層 │
├—————┤
│ 會話層 │
├—————┤
│ 傳輸層 │
├—————┤
│ 網路層 │
├—————┤
│資料連結層│
├—————┤
│ 物理層 │←第一層
└—————┘
圖2.1 OSI七層參考模型
OSI模型的七層分別進行以下的操作:
第一層??物理層
第一層負責最後將資訊編碼成電流脈衝或其它訊號用於網上傳輸。它由電腦和網路介質之間的實際介面組成,可定義電氣訊號、符號、線的狀態和時鐘要
求、資料編碼和資料轉送用的連接器。如最常用的RS-232規範、10BASE-T的曼徹斯特編碼以及RJ-45就屬於第一層。所有比物理層高的層都通過
事先定義好的介面而與它通話。如乙太網路的附屬單元介面(AUI),一個DB-15連接器可被用來串連層一和層二。
第二層??資料連結層
資料連結層通過物理網路鏈路提供可靠的資料轉送。不同的資料連結層定義了不同的網路和協議特徵,其中包括物理編址、網路拓撲結構、錯誤校正、幀序
列以及流控。物理編址(相對應的是網路編址)定義了裝置在資料連結層的編址方式;網路拓撲結構定義了裝置的物理串連方式,如匯流排拓撲結構和環拓撲結構;錯
誤校正向發生傳輸錯誤的上層協議警示;資料幀序列重新整理並傳輸除序列以外的幀;流控可能延緩資料的傳輸,以使接收裝置不會因為在某一時刻接收到超過其處
理能力的資訊流而崩潰。資料連結層實際上由兩個獨立的部分組成,介質存取控制(Media Access
Control,MAC)和邏輯鏈路控制層(Logical Link
Control,LLC)。MAC描述在共用介質環境中如何進行站的調度、發生和接收資料。MAC確保資訊跨鏈路的可靠傳輸,對資料轉送進行同步,識別錯
誤和控制資料的流向。一般地講,MAC只在共用介質環境中才是重要的,只有在共用介質環境中多個節點才能串連到同一傳輸介質上。IEEE
MAC規則定義了地址,以標識資料連結層中的多個裝置。邏輯鏈路控制子層管理單一網路鏈路上的裝置間的通訊,IEEE
802.2標準定義了LLC。LLC支援無串連服務和連線導向的服務。在資料連結層的資訊幀中定義了許多域。這些域使得多種高層協議可以共用一個物理資料
鏈路。
第三層??網路層
網路層負責在源和終點之間建立串連。它一般包括網路尋徑,還可能包括流量控制、錯誤檢查等。相同MAC標準的不同網段之間的資料轉送一般只涉及到資料連結層,而不同的MAC標準之間的資料轉送都涉及到網路層。例如IP路由器工作在網路層,因而可以實現多種網路間的互聯。
第四層??傳輸層
傳輸層向高層提供可靠的端到端的網路資料流服務。傳輸層的功能一般包括流控、多路傳輸、虛電路管理及差錯校正和恢複。流控管理裝置之間的資料傳
輸,確保傳輸裝置不發送比接收裝置處理能力大的資料;多路傳輸使得多個應用程式的資料可以傳輸到一個物理鏈路上;虛電路由傳輸層建立、維護和終止;差錯校
驗包括為檢測傳輸錯誤而建立的各種不同結構;而差錯恢複包括所採取的行動(如請求資料重發),以便解決發生的任何錯誤。傳輸控制通訊協定(TCP)是提供可靠
資料轉送的TCP/IP協議族中的傳輸層協議。
第五層??會話層
會話層建立、管理和終止展示層與實體之間的通訊會話。通訊會話包括髮生在不同網路應用程式層之間的服務要求和服務應答,這些請求與應答通過會話層的協議實現。它還包括建立檢查點,使通訊發生中斷的時候可以返回到以前的一個狀態。
第六層??展示層
展示層提供多種功能用於應用程式層資料編碼和轉化,以確保以一個系統應用程式層發送的資訊可以被另一個系統應用程式層識別。展示層的編碼和轉化模式包括公用資料表示格式、效能轉化表示格式、公用資料壓縮模式和公用資料加密模式。
公用資料表示格式就是標準的映像、聲音和視頻格式。通過使用這些標準格式,不同類型的電腦系統可以相互交換資料;轉化模式通過使用不同的文本和
資料表示,在系統間交換資訊,例如ASCII(American Standard Code for Information
Interchange,美國標準資訊交換碼);標準資料壓縮模式確保原始裝置上被壓縮的資料可以在目標裝置上正確的解壓;加密模式確保原始裝置上加密的
資料可以在目標裝置上正確地解密。
展示層協議一般不與特殊的協議棧關聯,如QuickTime是Applet電腦的視頻和音訊標準,MPEG是ISO的視頻壓縮與編碼通訊協定。常見的圖形映像格式PCX、GIF、JPEG是不同的靜態映像壓縮和編碼通訊協定。
第七層??應用程式層
應用程式層是最接近終端使用者的OSI層,這就意味著OSI應用程式層與使用者之間是通過應用軟體直接相互作用的。注意,應用程式層並非由電腦上啟動並執行實際應用
軟體組成,而是由嚮應用程式提供訪問網路資源的API(Application Program
Interface,應用程式介面)組成,這類應用軟體程式超出了OSI模型的範疇。應用程式層的功能一般包括標識通訊夥伴、定義資源的可用性和同步通訊。因
為可能丟失通訊夥伴,應用程式層必須為傳輸資料的應用子程式定義通訊夥伴的標識和可用性。定義資源可用性時,應用程式層為了請求通訊而必須判定是否有足夠的網路資
源。在同步通訊中,所有應用程式之間的通訊都需要應用程式層的協同操作。
OSI的應用程式層協議包括檔案的傳輸、訪問及管理協議(FTAM) ,以及檔案虛擬終端協議(VIP)和公用管理系統資訊(CMIP)等。
2.2 TCP/IP分層模型
TCP/IP分層模型(TCP/IP Layening Model)被稱作網際網路分層模型(Internet Layering Model)、網際網路參考模型(Internet Reference Model)。圖2.2表示了TCP/IP分層模型的四層。
┌————————┐┌—┬—┬—┬—┬—┬—┬—┬—┬—┬—┬—┐
│ ││D│F│W│F│H│G│T│I│S│U│ │
│ ││N│I│H│T│T│O│E│R│M│S│其│
│第四層,應用程式層 ││S│N│O│P│T│P│L│C│T│E│ │
│ ││ │G│I│ │P│H│N│ │P│N│ │
│ ││ │E│S│ │ │E│E│ │ │E│它│
│ ││ │R│ │ │ │R│T│ │ │T│ │
└————————┘└—┴—┴—┴—┴—┴—┴—┴—┴—┴—┴—┘
┌————————┐┌—————————┬———————————┐
│第三層,傳輸層 ││ TCP │ UDP │
└————————┘└—————————┴———————————┘
┌————————┐┌—————┬————┬——————————┐
│ ││ │ICMP│ │
│第二層,網間層 ││ └————┘ │
│ ││ IP │
└————————┘└—————————————————————┘
┌————————┐┌—————————┬———————————┐
│第一層,網路介面││ARP/RARP │ 其它 │
└————————┘└—————————┴———————————┘
圖2.2 TCP/IP四層參考模型
TCP/IP協議被組織成四個概念層,其中有三層對應於ISO參考模型中的相應層。ICP/IP協議族並不包含物理層和資料連結層,因此它不能獨立完成整個電腦網路系統的功能,必須與許多其他的協議協同工作。
TCP/IP分層模型的四個協議層分別完成以下的功能:
第一層??網路介面層
網路介面層包括用於協作IP資料在已有網路介質上傳輸的協議。實際上TCP/IP標準並不定義與ISO資料連結層和物理層相對應的功能。相反,它
定義像位址解析通訊協定(Address Resolution
Protocol,ARP)這樣的協議,提供TCP/IP協議的資料結構和實際物理硬體之間的介面。
第二層??網間層
網間層對應於OSI七層參考模型的網路層。本層包含IP協議、RIP協議(Routing Information
Protocol,路由資訊協議),負責資料的封裝、定址和路由。同時還包含網間控制報文協議(Internet Control Message
Protocol,ICMP)用來提供網路診斷資訊。
第三層??傳輸層
傳輸層對應於OSI七層參考模型的傳輸層,它提供兩種端到端的通訊服務。其中TCP協議(Transmission Control Protocol)提供可靠的資料流運輸服務,UDP協議(Use Datagram Protocol)提供不可靠的使用者資料報服務。
第四層??應用程式層
應用程式層對應於OSI七層參考模型的應用程式層和表達層。網際網路的應用程式層協議包括Finger、Whois、FTP(檔案傳輸通訊協定)、Gopher、
HTTP(超文字傳輸通訊協定 (HTTP))、Telent(遠程終端協議)、SMTP(簡單郵件傳送協議)、IRC(網際網路中繼會話)、NNTP(網路新聞傳輸通訊協定)