目錄
一、傳輸技術
二、互連處理器的分類
三、網絡軟件
1.協議層次結構
2.面向連接和無連接服務
3.服務原語
4.服務與協議的關系
四、參考模型
1.ISO參考模型
2.TCP/IP參考模型
一、傳輸技術
從廣義上講,目前普遍使用的傳輸技術有兩種,分別是廣播式鏈路和點到點鏈路。
點到點鏈路——點到點鏈路將一對單獨的機器連接起來。在一個由點到點鏈路組成的網絡中,為了從源端到達接收方,短消息必須首先訪問一個或多個中間機器,這種短消息在某些情況下稱為數據包或包。點-點傳輸只能有一個發送方和一個接收方,有時候也稱為單播。
廣播式鏈路——在一個廣播網絡上,通信信道被網絡上的所有機器所共享;任何一臺機器發出的數據包能被所有其他任何機器收到。每個數據包的地址字段指定了預期的接收方。當一個機器收到數據包時,它要檢查地址字段。如果包的目的地就是接收機器,則該機器要處理此數據包;如果包的目的地址是某臺其他機器,則該機器就忽略此數據包。
二、互連處理器的分類
三、網絡軟件
1.協議層次結構
為了降低網絡設計的復雜性,絕大多數網絡都組織成一個層次棧或分級棧,每一層都建立在其下一層的基礎之上。層的個數、每一層的名字、每一層的內容以及每一層的功能各個網絡不盡相同。每一層的目的是向上一層提供特定的服務,而把如何實現這些服務的細節對上一層加以屏蔽。從某種意義上講,每一層都是一種虛擬機,它向上一層提供特定的服務。
一臺機器的第n層與另一臺機器的第n層進行對話,該對話中使用的規則和約定統稱為第n層協議。所謂協議,就是指通信雙方就如何進行通信的一種約定。下圖是一個5層網絡。不同機器上構成相應層次的實體稱為對等體。這些對等體可能是軟件過程、硬件設備。
實際上,數據并不是從一臺機器的第n層直接傳遞到另一臺機器的第n層。相反,每一層都將數據和控制信息傳遞給它的下一層,這樣一直傳遞到最低層。第1層下面是物理介質,通過它進行實際的通信。在上圖中,虛線表示虛擬通信,實現表示物理通信。在每一對相鄰層次之間的是接口,接口定義了下層向上層提供哪些原語操作和服務。
2.面向連接和無連接服務
下層可以向上層提供兩種不同類型的服務:面向連接的服務和無連接的服務。
面向連接的服務——面向連接的服務是按照電話系統建模的。為了使用面向連接的網絡服務,服務用戶首先必須建立一個連接,然后使用該連接傳輸數據,最后釋放該連接。這種連接最本質的方面在于它像一個管道:發送方把對象(數據位)壓入管道的一端,接收方在管道的另一端將它們取出來。在大多數情況下,數據位保持原來的順序,所以數據位都會按照發送的數據到達。
無連接服務——無連接服務是按照郵政系統建模的。每個報文(信件)都攜帶了完整的目標地址,每個報文都有系統中的中間節點路由,而且路由獨立于后續報文。如果中間節點只能在收到報文的全部內容之后再將該報文發送給下一個節點,這種處理方式為存儲-轉發交換。有別與此的另一種方式是在報文還沒有被全部接收完畢之前就向下一個節點傳輸,這種處理方式稱為直通式交換。通常來說,當兩個報文被發往同一個目的地時,首先被發送的報文會到達。然而,先發送的報文可能被延遲,因而后發送的的報文比它先到達,這種情況也是有可能發生的。
3.服務原語
一個服務由一組原語正式說明,用戶進程通過這些原語(操作)來訪問該服務。原語告訴服務要執行某個動作,或者將對等實體所執行的動作報告給用戶。可用的原語取決于底層所提供的服務。面向連接的原語與無連接服務的原語是不同的。原語示例如下:為簡單面向連接服務提供的6個服務原語。
這些原語在客戶機-服務器環境下可用來實現“請求-應答”交互式應用。
4.服務與協議的關系
服務和協議是兩個截然不同的概念。服務是指某一層向它上一層提供的一組原語(操作)。服務定義了該層準備代表其用戶執行哪些操作,但是它并不涉及如何實現這些操作。服務與兩層之間的接口有關,低層是服務提供者,而上層是服務用戶。
協議是一組規則,規定了同一層上對等實體之間所交換的數據包或者報文的格式和含義。對等實體利用協議來實現它們的服務定義,它們可以自由的改變協議,只要不改變呈現給它們用戶的服務即可。按照這種方式,服務和協議是完全相分離的。
服務涉及層與層之間的接口,協議涉及不同機器上兩個對等實體之間發送的數據包。
四、參考模型
1.ISO參考模型
該協議基于國際標準化組織(ISO,International Standards Organization)的提案。這個模型稱為ISO的開放系統互連(OSI,Open Systems Interconnection)參考模型,因為它涉及如何連接開放的系統——即那些為了與其他系統通信而開放的系統。
OSI模型有7層,適用于這7層的基本原則如下:
(1)應該在需要一個不同抽象體的地方創建一層。
(2)每一層應該執行一個明確定義的功能。
(3)每一層功能的選擇應該向定義國際標準化協議的目標看齊。
(4)層與層邊界的選擇應該使跨越接口的信息流最小。
(5)層數應該足夠多,保證不同的功能不會被混雜在同一層中,但同時層數又不能太多,以免體系結構變得過于龐大。
OSI參考模型本身并不是一個網絡體系結構,因為它并沒有定義每一層的服務和所用的協議。它只是指明了每一層應該做些什么事。
物理層——關注在一條通信信道上傳輸原始比特。
數據鏈路層——主要任務是將一個原始的傳輸設施轉變成一條沒有漏檢傳輸錯誤的線路。
網絡層——主要功能是控制子網的運行。
傳輸層——接收來自上一層的數據,在必要的時候把這些數據分割成較小的單元,然后把這些數據單元傳遞給網絡層,并且確定這些數據單元正確地到達另一端。傳輸層是真正的端到端的層,它自始至終將數據從源端攜帶到接收方。
會話層——允許不同機器上的用戶建立會話。會話通常提供各種服務,包括對話控制、令牌管理(禁止雙方同時執行同一個關鍵操作),以及同步功能。
表示層——表示層以下的各層主要關注的是如何傳遞數據位,而表示層關注的是所傳遞信息的語法和語義。不同的計算機可能有不同的內部數據表示法,為了讓這些計算機能夠進行通信,它們所交換的數據結構必須以一種抽象的方式來定義,同時還應該定義一種“線上”使用的標準編碼方法。表示層管理這些抽象的數據結構,并允許定義和交換更高層的數據結構。
應用層——包含了用戶通常需要的各種各樣的協議。一個得到廣泛使用的應用協議是超文本傳輸協議(HTTP),它是萬維網的基礎。
2.TCP/IP參考模型
鏈路層——模型中的最低層。該層描述了鏈路必須完成什么功能才能滿足無連接的互聯網絡層的需求。
互聯網層——是將整個網絡體系結構貫穿在一起的關鍵層。它大致對應于OSI的網絡層,該層的任務是允許主機將數據包注入到任何網絡,并且讓這些數據包獨立的到達接收方(接收方可能在不同的網絡上)。互聯網層定義了官方的數據包協議和格式,該協議稱為因特網協議(IP),與之相伴的還有一個輔助協議,稱為因特網控制報文協議(ICMP)。
傳輸層——它的設計目標是允許源主機和目標主機上的對等實體進行對話,猶如OSI的傳輸層一樣。這里定義了兩個端到端的傳輸協議。第一個是傳輸控制協議(TCP),它是一個可靠的、面向連接的協議,允許從一臺機器發出的字節流正確無誤地交付到互聯網上的另一臺機器。傳輸層的第二個協議是用戶數據報協議(UDP),它是一個不可靠的、無連接的協議,適用于那些不想要TCP的有序性或流量控制功能,而寧可自己提供這些功能的應用程序。UDP被廣泛應用于那些一次性的基于客戶機-服務器類型的“請求-應答”查詢應用,以及那些及時交付比精確交付更加重要的應用,比如傳輸語音或者視頻。
應用層——在傳輸層之上是應用層,它包含了所有的高層協議