1 osi參考模型
談到網路不能不談osi參考模型,雖然osi參考模型的實際應用意義不是很大,但其的確對於理解網路協議內部的運作很有幫助,也為我們學習網路協議提供了乙個很好的參考。在現實網路世界裡,tcp/ip協議棧獲得了更為廣泛的應用。
1.1 osi參考模型的分層結構
osi參考模型(osi/rm)的全稱是開放系統互連參考模型(open system interconnection reference model,osi/rm),它是由國際標準化組織(international standard organization,iso)提出的乙個網路系統互連模型。
osi參考模型採用分層結構,如圖1-1所示。
圖1-1 osi參考模型
在這個osi七層模型中,每一層都為其上一層提供服務、並為其上一層提供乙個訪問介面或介面。
不同主機之間的相同層次稱為對等層。如主機a中的表示層和主機b中的表示層互為對等層、主機a中的會話層和主機b中的會話層互為對等層等。
對等層之間互相通訊需要遵守一定的規則,如通訊的內容、通訊的方式,我們將其稱為協議(protocol)。
我們將某個主機上執行的某種協議的集合稱為協議棧。主機正是利用這個協議棧來接收和傳送資料的。
osi參考模型通過將協議棧劃分為不同的層次,可以簡化問題的分析、處理過程以及網路系統設計的複雜性。
osi參考模型的提出是為了解決不同廠商、不同結構的網路產品之間互連時遇到的不相容性問題。但是該模型的複雜性阻礙了其在計算機網路領域的實際應用。與此對照,後面我們將要學習的tcp/ip參考模型,獲得了非常廣泛的應用。實際上,也是目前網際網路範圍內執行的唯一一種協議。
1.2 osi參考模型中各層的作用
在osi參考模型中,從下至上,每一層完成不同的、目標明確的功能。
1、物理層(physical layer)
物理層規定了啟用、維持、關閉通訊端點之間的機械特性、電氣特性、功能特性以及過程特性。該層為上層協議提供了乙個傳輸資料的物理**。
在這一層,資料的單位稱為位元(bit)。
屬於物理層定義的典型規範代表包括:eia/tia rs-232、eia/tia rs-449、v.35、rj-45等。
2、資料鏈路層(data link layer)
資料鏈路層在不可靠的物理介質上提供可靠的傳輸。該層的作用包括:實體地址定址、資料的成幀、流量控制、資料的檢錯、重發等。
在這一層,資料的單位稱為幀(frame)。
資料鏈路層協議的代表包括:sdlc、hdlc、ppp、stp、幀中繼等。
3、網路層(network layer)
網路層負責對子網間的資料報進行路由選擇。此外,網路層還可以實現擁塞控制、網際互連等功能。
在這一層,資料的單位稱為資料報(packet)。
網路層協議的代表包括:ip、ipx、rip、ospf等。
4、傳輸層(transport layer)
傳輸層是第乙個端到端,即主機到主機的層次。傳輸層負責將上層資料分段並提供端到端的、可靠的或不可靠的傳輸。此外,傳輸層還要處理端到端的差錯控制和流量控制問題。
在這一層,資料的單位稱為資料段(segment)。
傳輸層協議的代表包括:tcp、udp、spx等。
5、會話層(session layer)
會話層管理主機之間的會話程序,即負責建立、管理、終止程序之間的會話。會話層還利用在資料中插入校驗點來實現資料的同步。
6、表示層(presentation layer)
表示層對上層資料或資訊進行變換以保證乙個主機應用層資訊可以被另乙個主機的應用程式理解。表示層的資料轉換包括資料的加密、壓縮、格式轉換等。
表示層協議的代表包括:ascii、asn.1、jpeg、mpeg等。
應用層為作業系統或網路應用程式提供訪問網路服務的介面。
應用層協議的代表包括:telnet、ftp、http、snmp等。
1.3 osi參考模型中的資料封裝過程
圖1-2 osi參考模型中的資料封裝過程
表示層並不"關心"上層-應用層的資料格式而是把整個應用層遞交的資料報看成是乙個整體進行封裝,即加上表示層的報頭(presentation header,ph)。然後,遞交到下層-會話層。
同樣,會話層、傳輸層、網路層、資料鏈路層也都要分別給上層遞交下來的資料加上自己的報頭。它們是:會話層報頭(session header,sh)、傳輸層報頭(transport header,th)、網路層報頭(network header,nh)和資料鏈路層報頭(data link header,dh)。其中,資料鏈路層還要給網路層遞交的資料加上資料鏈路層報尾(data link termination,dt)形成最終的一幀資料。
當一幀資料通過物理層傳送到目標主機的物理層時,該主機的物理層把它遞交到上層-資料鏈路層。資料鏈路層負責去掉資料幀的幀頭部dh和尾部dt(同時還進行資料校驗)。如果資料沒有出錯,則遞交到上層-網路層。
同樣,網路層、傳輸層、會話層、表示層、應用層也要做類似的工作。最終,原始資料被遞交到目標主機的具體應用程式中。
2 tcp/ip參考模型
iso制定的osi參考模型的過於龐大、複雜招致了許多批評。與此對照,由技術人員自己開發的tcp/ip協議棧獲得了更為廣泛的應用。如圖2-1所示,是tcp/ip參考模型和osi參考模型的對比示意圖
圖2-1 tcp/ip參考模型
表示層並不"關心"上層-應用層的資料格式而是把整個應用層遞交的資料報看成是乙個整體進行封裝,即加上表示層的報頭(presentation header,ph)。然後,遞交到下層-會話層。
同樣,會話層、傳輸層、網路層、資料鏈路層也都要分別給上層遞交下來的資料加上自己的報頭。它們是:會話層報頭(session header,sh)、傳輸層報頭(transport header,th)、網路層報頭(network header,nh)和資料鏈路層報頭(data link header,dh)。其中,資料鏈路層還要給網路層遞交的資料加上資料鏈路層報尾(data link termination,dt)形成最終的一幀資料。
當一幀資料通過物理層傳送到目標主機的物理層時,該主機的物理層把它遞交到上層-資料鏈路層。資料鏈路層負責去掉資料幀的幀頭部dh和尾部dt(同時還進行資料校驗)。如果資料沒有出錯,則遞交到上層-網路層。
同樣,網路層、傳輸層、會話層、表示層、應用層也要做類似的工作。最終,原始資料被遞交到目標主機的具體應用程式中。
2 tcp/ip參考模型
iso制定的osi參考模型的過於龐大、複雜招致了許多批評。與此對照,由技術人員自己開發的tcp/ip協議棧獲得了更為廣泛的應用。如圖2-1所示,是tcp/ip參考模型和osi參考模型的對比示意圖。
圖2-2 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協議是乙個不可靠的、無連線協議,主要適用於不需要對報文進行排序和流量控制的場合。
4、應用層
tcp/ip模型將osi參考模型中的會話層和表示層的功能合併到應用層實現。
應用層面向不同的網路應用引入了不同的應用層協議。其中,有基於tcp協議的,如檔案傳輸協議(file transfer protocol,ftp)、虛擬終端協議(telnet)、超文字鏈結協議(hyper text transfer protocol,http),也有基於udp協議的,如簡
ISO中七層用的協議
層名 協議 應用層 dhcp dns ftp gopher http imap4 irc nntp xmpp pop3 sip smtp snmp ssh telnet rpc rtcp rtp rtsp sdp soap gtp stun ntp ssdp 表示層 http html ftp te...
ISO模型七層簡介
物 理 層 physical layer 我們知道,要傳遞資訊就要利用一些物理 如雙絞線 同軸 電纜等,但具體的物理 並不在osi的7層之內,有人把物理 當作第0層,物理層的任務就是為它的上一層提供乙個物理連線,以及它們的機械 電氣 功能和過程特性。如規定使用電纜和接頭 的型別,傳送訊號的電壓等。在...
網路基礎 ISO七層模型
iso osi七層模型簡介 資料傳送是從上層往下層傳遞,經過物理層協議傳輸,然後由下層往上層接收,呈u字型。上三層 應用層 表示層 會話層 是最貼近使用者的,為使用者服務 而下四層 傳輸層 網路層 資料鏈路層 物理層 是為資料傳遞提供服務的。如果不涉及資料傳輸,則不會經過下四層。物理層資料的單位為b...