TCP/IP與OSI之比較
TCP/IP與OSI分層架構間的對應,可以圖十二來表示(註103)。OSI具有完整的七層架構,而TCP/IP則定義了三種層次的服務(註104)。TCP/IP應用服務層,對應到OSI架構中的應用層、表現層以及交談層,兩者之間最大的不同點,在於OSI考慮到開放式系統互連而設定了資料表現層。而TCP/IP的連線服務與傳輸服務,則分則與OSI的網路層和傳輸層的功能大致相同。此外,TCP/IP本身並沒有提供實體層與資料鏈結層的服務,所以一般是架在OSI的第一、二層上運作。
圖十二:TCP/IP與OSI分層架構的對應
資料來源:Sidnie Feit, TCP/IP : Architecture, Protocols, and Implementation with Ipv6 and IP Security, (New York: McGraw-Hill, 1997), 28; 中文部分由筆者自譯之.
(二) 整體發展
TCP/IP的發展比OSI早了約10年左右,技術上的發展較成熟,開發出來的相關的應用協定也較多,此外,由於它是因應網際網路的實際需求而產生的,因此在現實的環境中可行性也較高。而OSI架構完整、功能詳盡、包容性大,但在網際網路中仍多屬測試階段,鮮少有實作的系統。
就目前的發展狀況來說,TCP/IP已成為了網際網路中的主流協定,在使用上比OSI要廣泛許多。它具有非常多的應用標準,對於現行網路應用系統的開發而言,能提供較多的規劃選擇,而且由於TCP/IP已行之有年,具有此方面開發與使用經驗的人員也比較多。
(三) 標準及規格
TCP/IP產生於網際網路的研究和實踐中,是應實際需求而產生的實作,本身在發展之前並沒有事先定義一個嚴謹的架構。而OSI則是由標準化組織所制定,先定義了一個功能完整的架構,再根據該架構發展相應的協定。
TCP/IP雖然有IAB、IETF等機構負責制定與討論TCP/IP的標準化,也有許多學術界人士和電腦廠商參與,但是卻沒有一個正式的單位負責測試驗證廠商所開發的TCP/IP通信軟體是否完全遵照標準的規格設計,所以對使用者而言,唯一的保障是藉著各系統之間的互通測試經驗,以確實求證其所使用的網路系統是否可以與其他系統上的TCP/IP網路應用功能互通或連結。(註105)而OSI則有專門的單位來進行符合性測試以及互通性測試,這一點對使用者而言,是一個很重要的保障,但是由於測試需花費一段不短的時間(約需二至三年),所以通常效率不彰,經常會有標準已經出來,但是卻在市場上找不到可用產品的窘態,與市場需求較不相符。
(四) 連線服務
TCP/IP的連線服務與OSI架構中的網路層的功能大致相仿。若以實際協定來作比較,TCP/IP的IP與OSI的CLNP,其主要差別在於定址方式的不同。(註106) TCP/IP將網路上每一點的位址定為32位元的固定長度,TCP/IP網路上的每一個系統都至少具有一個唯一的位址與其它系統通信,但對於同時提供兩個網路介面連接不同網路的系統(如閘道器)而言,則必須擁有兩個地址,這在網路位址管理及對網路其它點的通信進行上,會比較麻煩。而且以長遠的角度來看,現有的定址方式將會不夠容納網路上愈來愈多新增的系統,因此,目前許多人員正在研究IPng (即IPv6) 此一新協定,期能滿足未來不斷擴張中的需求。
OSI所定的位址空間為不固定的可變長,必須由所選定的位址命名方式(Authority and Identifier)決定,最長可達160位元(20 bytes)。依照OSI中有關位址標準的規範,網路上每一個系統至多可有256個通信位址,而且因為OSI所定義的網路位址與網路介面無關,所以網路位址的安排將不受限於網路介面。由於其位址長度較長,因此將可容納網路上更多的系統,具有較大的成長空間。
(五) 傳輸服務
TCP/IP在傳輸服務中有TCP與UDP兩種協定,各具有連接導向與非連接導向的性質。OSI在制定傳輸層的標準時,主要是參考TCP/IP協定組,而定義了五個等級的不同層次服務。其中TCP/IP的TCP與OSI的TP4、TCP/IP的UDP與OSI的TP0的架構及功能大體上是相同的,只是其內部細節有一些差異。(註107)
(六) 應用服務
1. 虛擬終端系統 (註108)
TCP/IP的虛擬終端標準為TELNET,OSI所定的虛擬終端標準稱為VT(Virtual Terminal)。由於不同的終端機會有各種型態及屬性的不同,因此在TCP/IP的TELNET與OSI VT虛擬終端標準中都提供了協議(Negotiation)的功能,提供終端模擬的兩端在通信之前,會進行溝通協議,並交換終端機環境參數(Profile),直到彼此達到共識之後才進行應用系統與用戶端之間的資料交換。
除了共有的協議功能之外,OSI VT所提供的終端機參數模型比TELNET多:
VT能支援控制的轉換,例如ASCII的警鈴字元(BELL)與EBCDIC的警鈴字元各有不同的內碼定義。而TELNET則無法處理這類因字元集不同所造成的字元功能解釋差異。
VT能夠提供更多的字元顯示屬性,例如在終端螢幕上每一個字元都可以定義其顏色及字型等項目。
VT能夠提供一維、二維、三維顯示區域。而TELNET只提供捲送顯示模式(Scroll Mode)。
2. 檔案傳輸及管理系統 (註109)
以TCP/IP所制定的FTP與OSI所制定FTAM而言,兩者都提供了基本檔案處理功能,如檔案複製、刪除、目錄查詢、更改檔名、檔案屬性的對應等。但是由於TCP/IP中並未定義資料表現層來執行不同系統間資料儲存內碼轉換的功能,因此,雖然FTP可傳送任何一種資料型態檔案(如IMAGE、ASCII、EBCDIC等),但是卻不能在數種不同的資料格式之間自動地進行內碼轉換處理。OSI在FTAM中則定義了一套虛擬檔案儲存器(Virtual File Store),使得不同電腦系統間在交換檔案時,首先將本身的檔案格式與檔案屬性對應轉換成標準的虛擬檔案儲存格式送出,對方在收到此虛擬檔案資料後,再根據其自己的檔案系統與虛擬檔案儲存的對應關係,轉換成屬於自己的檔案格式,以解決不同檔案系統間對檔案格式處理方式不盡相同的問題。
以檔案傳輸效率而言,由於OSI FTAM在檔案傳輸的過程中,必須先將檔案對應成虛擬檔案格式,再透過表現層的抽象符號語法轉換成網路上標準的檔案傳輸資料,會花費許多時間。反觀TCP/IP FTP,不但省去了上述的轉換動作,同時還可依檔案的性質,選擇壓縮式傳輸法(Compressed Mode),提供更有效率的檔案傳輸方法。因此平均而言,TCP/IP FTP將會比OSI FTAM檔案傳輸的效率高。
TCP/IP FTP與OSI FTAM在不同的功能層次雖各占勝場,但以目前的使用狀況來說,TCP/IP FTP卻比OSI STAM要普遍得多。
3. 訊息處理系統 (註110)
在訊息處理系統方面,由於TCP/IP SMTP的發展時間較早,因此目前是比較廣泛被採用的。但OSI所制定的MHS,在功能上比TCP/IP SMTP完整,且具有傳輸過程可靠、郵件處理的功能較多等應用潛力。以下茲列出OSI MHS所提供的一些TCP/IP SMTP沒有的功能:
可指定郵件傳遞的時間與郵件的處理優先順序(如急件、速件、正常郵件),並設定郵件內容的敏感度(Sensitivity)。
可設定雙掛號郵件傳遞以確認郵件已正確送扺收件人郵箱中,或傳回遞送失敗報告給發信人查明原因。
郵件的內容格式除了文字以外,尚能傳輸許多其它的多媒體檔案型態。而在TCP/IP SMTP中,文件的內容格式只能是一般的文字檔,若要傳輸多媒體的資料則需配合MIME協定。
4. 網路管理系統
網路管理方面,TCP/IP 與OSI的協定均不限定只能在本身的網路上運作:TCP/IP 所發展出來的網路管理協定可以利用其他通信網路協定作實施的基礎,而OSI 的相應協定也可以在TCP/IP的通信網路協定之上運作(稱為Common Management Information Service From OSI on TCP/IP, CMOT) 。(註111)因此,我們將範圍限定在SNMP與 CMIP兩者間的本身功能作比較。
基本上,SNMP所提供的是一套能滿足基本需求的簡易網路管理協定,它具有簡單、容易製作等優點,執行時所佔用的記憶體及使用的CPU資源也較少。由於其實際被利用的經驗較多,目前在網路上廣泛程度大於 CMIP。以下將SNMP與CMIP功能的異同整理如下:(註112)
SNMP與CMIP都提供以下的管理功能:
網路發生錯誤時的處理(Fault Management)
網路運轉績效評估(Performance Management)
網路會計管理(Accounting Management)
被管理物件(Managed Object)的名稱辨識與組合(Configuration and Name Management)
通信連線:CMIP會預先建立通信管道才執行管理命令,而SNMP則採用非連接導向式的網路連線管理方式,所以平均而言SNMP的額外負擔較少,但相對地,CMIP通信管理品質則較為穩定可靠。
管理模式:SNMP採用輪詢式(Polling-based)的管理模式,管理者會定期詢問被管理者,兩者間的連繫較密切,不過這種方式會使網路上的資料傳輸量增加,同時在網路上同一個管理者將無法同時管理網路上的許多點。CMIP採用事件導向管理模式(Event-based Management),被管理者利用非同步的方式,將預定發生的事件通知管理者處理。
管理資訊:SNMP與CMIP的網路資訊都是使用物件(Object)來表示,並採用ISO所定義的抽象符號語法描述基本編碼方式(BER-Basic Ecoding Rule)來表示一個物件。但目前SNMP僅使用了部分的抽象符號語法規則,因此所能定義的物件型態及屬性比CMIP所能定義的來得少。
網路安全:CMIP的在網路安全的管理功能比SNMP完整,可提供管理之間的辨識(Authentication)、使用權管制(Access Control)、加密鍵語管理(Key for Enciphering Code)、網路執行功能授權(Authorization)、網路事件追蹤(Security Log)等安全管制。而SNMP在這方面的機能上相對地較弱。
就目前的網路環境而言,真正在TCP/IP中發展的應用環境比較成熟,且它在執行時所需要的系統資源較少。除此之外,TCP/IP還提供了網路檔案系統(NFS)、遠端程式呼叫(Remote Procedure Call, 簡稱RPC)、視窗作業系統(X-Windows)等其他應用項目,而這些功能則尚未在OSI定義的應用標準中。所以,目前有某些應用需求無法利用OSI的方式來規劃。
OSI所制定的應用標準,大致上來說比起TCP/IP的相應功能來得完整豐富且精細,但卻始終無法在電信網路及數網路中快速成長。除了上述的原因之外,可能也是由於其相關產品過於複雜,且需要龐大的建置人力與經費等成本。此外,OSI的標準訂定程序太過緩慢,也使它的應用受到限制。
註釋 |
註103:同註36, p.28.
註104:TCP/IP雖然定義了三種層次的服務,但由於其所提供的應用服務層的協定均可以架在TCP/IP以外的通訊協定上,所以嚴格來說只TCP/IP有二層,以TCP與IP為代表。
註105:同註98,頁28。
註106:同註67,頁12。
註107:張詩言編譯,TCP/IP網路技術導論:各型電腦溝通的橋樑,(臺北市:全欣資訊,民國84年),頁180。
註108:同註98,頁34-35。
註109:同註98,頁30-31。
註110:同註98,頁32-33。
註111:同註55,頁13。
註112:同註98,頁39。