一,電腦網路體繫結構的形成
1,為什麼要分層?
處理複雜的系統時:
清楚的結構允許我們對大型複雜系統定義其特定部分,探討其各部分的關係
模組化使得系統的維護、升級簡化
改變其某一層服務的具體實現對系統其餘部分透明(不影響)
e.g. 改變登機口程式(不影響系統其餘部分)
分層的弊端:
各層可能重複較低層功能 … 2,問題的提出
網路系統非常複雜,包含大量的硬體和軟體,而相互連信的電腦系統必須高度協調才能正常工作,“分層”可以將問題轉化為若干較小的易處理的局部問題。 3,劃分層次的概念舉例
電腦 1 向電腦 2 通過網路傳送檔案。
可以將要做的工作進行如下的劃分。 1)兩個電腦將檔案傳送模組作為最高的一層 ,剩下的工作由下面的模組負責。其工作與傳送檔案直接有關。:
確信對方已做好接收和隱藏檔的準備。
雙方協調好一致的檔案格式。
2)再設立一個通訊服務模組用來保證檔案和檔案傳送命令在可靠地在兩個系統之間交換。也就是說,位於上層的檔案傳送模組利用下面的通訊服務模組所提供的服務。
3)再構造一個網路接入模組,用來負責做與網路介面細節有關的工作(例如,規定傳輸的框架格式,幀的最大長度等),並向上層提供服務,使上面的通訊服務模組能夠完成可靠通訊的任務。
4,分層的好處
(1)各層之間是獨立的。
(2)靈活性好。
(3)結構上可分割開。
(4)易於實現和維護。
(5)能促進標準化工作。
註: 層數多少要適當
(1)層數太少,會使每一層的協議太複雜。
(2)層數太多,會在描述和綜合各層功能的系統工程任務時遇到較多的困難。 5、電腦網路體繫結構的形成
1974年,美國的IBM公司宣布了它研製的系統網路結構SNA
(System Network Architecture)。它是世界上使用得相當廣泛的一種網路體繫結構。不久,一些大的公司紛紛推出自己的體繫結構。 1)兩種標準
國際標準組織ISO於1977年成立了專門機構研究網路體繫結構問題。提出一個試圖使各種電腦在世界範圍內互連成網的標準架構,即開放系統互相連線模型基本參考模型OSI/RM
(Open Systems Interconnection Reference Model),簡稱為OSI,並於1983年形成了ISO7489標準,即七層協議體繫結構。
關於開放系統互相連線模型參考模型OSI/RM:
只要遵循 OSI 標準,一個系統就可以和位於世界上任何地方的、也遵循這同一標準的其他任何系統進行通訊。
在市場化方面 OSI 卻失敗了,原因如下: OSI 的專家們在完成 OSI 標準時沒有商業驅動力; OSI 的協議實現起來過分複雜,且運行效率很低; OSI 標準的制定周期太長,因而使得按 OSI 標準生產的裝置無法及時進入市場; OSI 的層次劃分並也不太合理,有些功能在多個層次中重複出現。
法律上的國際標準 OSI 並沒有得到市場的認可。非國際標準 TCP/IP 現在獲得了最廣泛的應用。TCP/IP 常被稱為事實上的國際標準。
OSI概念清楚,體系價格低廉,理論較完整,但實現複雜。而TCP/IP協議現在實際上並沒有一個完整的體繫結構。 2)協議
協議是為進行網路中的資料交換而建立的規則、標準或約定。一個網路通訊協定主要由以下三個要素組成:
(1)文法,即資料與控制資訊的結構或格式;
(2)語義,即需要發出何種控制資訊,完成何種動作以及做出何種響應;
(3)同步,即事件實現順序的詳細說明。
協議的兩種存在形式:文字描述、程式碼 3)電腦網路體繫結構概念
電腦網路的體繫結構(architecture)是電腦網路的各層及其協議的集合。
體繫結構就是這個電腦網路及其組件所應完成的功能的精確定義。
實現(implementation)是遵循這種體繫結構的前提下用何種硬體或軟體完成這些功能的問題。
體繫結構是抽象的,而實現則是具體的,是真正在啟動並執行電腦硬體和軟體。 二,具有五層協議的電腦網路體繫結構
OSI體繫結構既複雜又不實用,但概念清楚,理論較完整。TCP/IP協議得到了全世界的承認,但它體繫結構不完整。因此在學習電腦網路的原理時往往採取折中的辦法,綜合二者優點,採用一種只有五層原理體繫結構。
主機 1 向主機 2 發送資料 過程分析:
三,實體、協議、服務和服務存取點 1、基本概念 1)實體(entity):表示任何可發送或接收資訊的硬體或軟體進程。
2)協議:是控制兩個對等實體進行通訊的規則的集合。 3)服務:在協議的控制下,兩個對等實體間的通訊使得本層能夠向上一層提供服務。要實現本層協議,還需要使用下面一層所提供的服務。
4)資料單元
a,協議資料單元PDU
指在不同端點中的各層對等實體之間,為實現該層協議交換的資訊單元.
PCI:協議控制資訊 UD:使用者資料
b,服務資料單元SDU
指(N)實體為完成(N+1)實體所請求的功能,所需要的資料單元.
5)服務存取點SAP:在同一系統中相鄰兩層的實體進行互動(即交換資訊)的地方,通常稱為 (Service Access Point)。
6)服務原語:上層使用下層所提供的服務必須通過與下層交換一些命令,這些命令在OSI中稱為服務原語。
四種類型服務原語:
(N)-PRIMITIVE NAME request (a0,…,an-1)
(N)-PRIMITIVE NAME indication (a0,…,an-1)
(N)-PRIMITIVE NAME response (a0,…,an-1)
(N)-PRIMITIVE NAME confirm(a0,…,an-1) 2,服務與協議的區別
協議和服務在概念上是很不一樣的。
首先,協議的實現保證了能夠向上一層提供服務。本層的服務使用者只能看見服務而無法看見下面的協議。下面的協議對上面的服務使用者是透明的。
其次,協議是“水平的”,即協議是控制對等實體之間通訊的規則。但服務是“垂直的”,即服務是由下層向上層通過層間介面提供的
協議很複雜 :
協議必須將各種不利的條件事先都估計到,而不能假定一切情況都是很理想和很順利的。
必須非常仔細地檢查所設計協議能否應付所有的不利情況。
應當注意:事實上難免有極個別的不利情況在設計協議時並沒有預計到。在出現這種情況時,協議就會失敗。因此實際上協議往往只能應付絕大多數的不利情況。
著名的協議舉例
佔據兩個山頂的藍軍與駐紮在這山穀的白軍作戰。力量對比是:一個山頂上的藍軍打不過白軍,但兩個山頂的藍軍協同作戰就可戰勝白軍。一個山頂上的藍軍擬於次日正午向白軍發起攻擊。於是發送電文給另一山頂上的友軍。但通訊線路很不好,電文出錯的可能性很大。因此要求收到電文的友軍必鬚髮送確認電文。但確認電文也可能出錯。試問能否設計出一種協議,使得藍軍能實現協同作戰因而一定(即100 %)取得勝利。
由於這種收到資訊後返回一個資訊的協議會無限的迴圈下去,所以這樣的協議是無法實現的。 3、連線導向服務與無串連服務
從通訊的角度看,各層所提供的服務可分為兩大類,即連線導向的與不需連線的。 1)連線導向服務(connection-oriented)
在網路層中為虛電路服務。
在傳輸層為TCP服務。
工作特點同電話 2)無串連服務(connectionless)
資料是“盡最大努力交付”。
工作特點同平信 四,TCP/IP的體繫結構 1,TCP/IP的四層模型
2,OSI vs TCP/IP
OSI 與 TCP/IP體繫結構的比較:
OSI概念清楚,體系價格低廉,理論較完整,但實現複雜。
在一些問題的處理上,TCP/IP與OSI是很不相同的: TCP/IP一開始就考慮到多種異構網的互連問題。 TCP/IP一開始就對連線導向服務和無串連服務並重。 TCP/IP有較好的網路管理功能。
-當然TCP/IP也有不足之處: 概念不清楚 通用性較差 網路介面層並沒有實質內容
客戶進程和伺服器處理序使用 TCP/IP 協議進行通訊:
功能較強的電腦同時運行多個伺服器處理序: