第1章 網(wǎng)絡(luò)概述
因特網(wǎng)(Internet) 是世界上最大的互連網(wǎng)絡(luò)【小寫i
的internet
是通用名詞,互連的網(wǎng)絡(luò)都叫internet
】
因特網(wǎng)的前身是1969年創(chuàng)建的第一個(gè)分組交換網(wǎng):ARPANT
普通用戶如何接入因特網(wǎng)?
通過ISP
接入因特網(wǎng)。ISP
可以從因特網(wǎng)管理機(jī)構(gòu)申請(qǐng)到成塊的IP
地址,同時(shí)擁有通信線路以及路由器等連網(wǎng)設(shè)備,任何機(jī)構(gòu)和個(gè)人只要向ISP
交納規(guī)定的費(fèi)用,就可以從ISP
得到所需要的IP
地址?;ヂ?lián)網(wǎng)上的主機(jī)都必須有IP
地址才能通信
定義
互聯(lián)、自治、計(jì)算機(jī)系統(tǒng)的集合
- 互連:指計(jì)算機(jī)之間可以通過有線或無線的方式進(jìn)行數(shù)據(jù)通信
- 自治:指獨(dú)立的計(jì)算機(jī),它有自己的硬件和軟件,可以單獨(dú)運(yùn)行使用
- 集合:指至少需要兩臺(tái)計(jì)算機(jī)
組成
- 從組成部分上看,一個(gè)完整的計(jì)算機(jī)網(wǎng)絡(luò)主要由硬件、軟件、協(xié)議三大部分組成。
硬件主要由主機(jī)(也稱端系統(tǒng))、通信鏈路(如雙絞線、光纖)、交換設(shè)備(如路由器、交換機(jī)等)和通信處理機(jī)(如網(wǎng)卡)等組成。
軟件主要包括各種實(shí)現(xiàn)資源共享的軟件和方便用戶使用的各種工具軟件(如網(wǎng)絡(luò)操作系統(tǒng)、郵件收發(fā)程序、FTP 程序、聊天程序等)。軟件部分多屬于應(yīng)用層。
協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)的核心,如同交通規(guī)則制約汽車駕駛一樣,協(xié)議規(guī)定了網(wǎng)絡(luò)傳輸數(shù)據(jù)時(shí)所遵循的規(guī)范。
- 從工作方式上看,計(jì)算機(jī)網(wǎng)絡(luò)(這里主要指 Internet,即因特網(wǎng))可分為邊緣部分和核心部分。
邊緣部分由所有連接到因特網(wǎng)上、供用戶直接使用的主機(jī)組成,用來進(jìn)行通信(如傳輸數(shù)據(jù)、音頻或視頻)和資源共享;核心部分由大量的網(wǎng)絡(luò)和連接這些網(wǎng)絡(luò)的路由器組成,它為邊緣部分提供連通性和交換服務(wù)。
- 從功能組成上看,計(jì)算機(jī)網(wǎng)絡(luò)由通信子網(wǎng)和資源子網(wǎng)組成。通信子網(wǎng)由各種傳輸介質(zhì)、通信設(shè)備和相應(yīng)的網(wǎng)絡(luò)協(xié)議組成,它使網(wǎng)絡(luò)具有數(shù)據(jù)傳輸、交換、控制和存儲(chǔ)的能力,實(shí)現(xiàn)聯(lián)網(wǎng)計(jì)算機(jī)之間的數(shù)據(jù)通信。資源子網(wǎng)是實(shí)現(xiàn)資源共享功能的設(shè)備及其軟件的集合,向網(wǎng)絡(luò)用戶提供共享其他計(jì)算機(jī)上的硬件資源、軟件資源和數(shù)據(jù)資源的服務(wù)。
分類
按交換技術(shù):①電路交換網(wǎng)絡(luò) ②報(bào)文交換網(wǎng)絡(luò) ③分組交換網(wǎng)絡(luò)
按使用者:①公用網(wǎng) (Public Network)②專用網(wǎng)(Private Network)
按傳輸介質(zhì):①有線網(wǎng)絡(luò) ②無線網(wǎng)絡(luò)
按傳播技術(shù):①廣播式 ②點(diǎn)對(duì)點(diǎn)
- 是否采用分組存儲(chǔ)轉(zhuǎn)發(fā)與路由器選擇機(jī)制,是點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)與廣播式網(wǎng)絡(luò)的重要區(qū)別
- 廣域網(wǎng)基本都屬于點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)
按覆蓋范圍:
①廣域網(wǎng)WAN( Wide Area Network) ②城域網(wǎng)MAN(Metropolitan Area Network) ③局域網(wǎng)LAN( Local Area Network) ④個(gè)域網(wǎng)PAN( Private Area Network)
廣域網(wǎng)和局域網(wǎng)之間的差異不僅在于所覆蓋范圍不同,還在于他們所使用的協(xié)議和網(wǎng)絡(luò)技術(shù)不同,廣域網(wǎng)使用點(diǎn)對(duì)點(diǎn)技術(shù),局域網(wǎng)使用廣播技術(shù)
若中央處理器之間的距離非常近(如僅1m的數(shù)量級(jí)或更?。?,則一般稱為多處理器系統(tǒng),而不稱為計(jì)算機(jī)網(wǎng)絡(luò)
按拓?fù)浣Y(jié)構(gòu):①總線型網(wǎng)絡(luò) ②星型網(wǎng)絡(luò) ③環(huán)型網(wǎng)絡(luò) ④網(wǎng)狀型網(wǎng)絡(luò)
拓?fù)浣Y(jié)構(gòu)主要是指通信子網(wǎng)的拓?fù)浣Y(jié)構(gòu)
- 星形、總線型和環(huán)形網(wǎng)絡(luò)多用于LAN,網(wǎng)狀形網(wǎng)絡(luò)多用于WAN
性能指標(biāo)
性能指標(biāo)可以從不同的方面來度量計(jì)算機(jī)網(wǎng)絡(luò)的性能
1. 速率Speed
(比特率/數(shù)據(jù)率)
比特
計(jì)算機(jī)中的數(shù)據(jù)量單位,也是信息論中信息量的單位。一個(gè)比特就是二進(jìn)制數(shù)字中的一個(gè)1
或0
連接在計(jì)算機(jī)網(wǎng)絡(luò)上的主機(jī)在數(shù)字信道上傳送比特的速率,也稱為比特率或數(shù)據(jù)率
注意:
速率提高體現(xiàn)在單位時(shí)間內(nèi)發(fā)送到鏈路上的比特?cái)?shù)增多了,而并不是比特在鏈路上跑得更快了。所以速率才可以稱為比特率或數(shù)據(jù)率
2. 帶寬(Bandwidth)
帶寬在模擬信號(hào)系統(tǒng)中的意義
信號(hào)所包含的各種不同頻率成分所占據(jù)的頻率范圍
單位:Hz(kHz,MHz,GHz)
帶寬在計(jì)算機(jī)網(wǎng)絡(luò)中的意義
傳送數(shù)據(jù)的能力,最高速率
單位:b/s(kb/s,Mb/s,Gb/s,Tb/s)
一條通信線路的"頻帶寬度"越寬,其所傳輸數(shù)據(jù)的"最高數(shù)據(jù)率"也越高
3. 吞吐量(Throughput)
吞吐量表示在單位時(shí)間內(nèi)通過某個(gè)網(wǎng)絡(luò)(或信道、接口)的數(shù)據(jù)量。
吞吐量被經(jīng)常用于對(duì)現(xiàn)實(shí)世界中的網(wǎng)絡(luò)的一種測(cè)量,以便知道實(shí)際上到底有多少數(shù)據(jù)量能夠通過網(wǎng)絡(luò)。
吞吐量受網(wǎng)絡(luò)的帶寬或額定速率的限制
4. ★時(shí)延(Delay)
在處理過程中所需要的時(shí)間
包括發(fā)送時(shí)延、傳播時(shí)延、處理時(shí)延、排隊(duì)時(shí)延
5. 時(shí)延帶寬積
6. 往返時(shí)間(Round-Trip Time / RTT)
在許多情況下,因特網(wǎng)上的信息不僅僅單方向傳輸,而是雙向交互
我們有時(shí)很需要知道雙向交互一次所需要的時(shí)間
因此,往返時(shí)間RTT(Round-Trip Time)
也是一個(gè)重要的性能指標(biāo)
7. ★利用率
信道利用率:用來表示某信道有百分之幾的時(shí)間是被利用的(有數(shù)據(jù)通過)
網(wǎng)絡(luò)利用率:全網(wǎng)絡(luò)的信道利用率的加權(quán)平均
- 根據(jù)排隊(duì)論,當(dāng)某信道的利用率增大時(shí),該信道引起的時(shí)延也會(huì)迅速增加。因此信道利用率不是越高越好
- 如果令[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-BLc2Hvb9-1689925655241)()]和利用率U之間的關(guān)系
當(dāng)網(wǎng)絡(luò)利用率U
到50%
時(shí),時(shí)延急劇增大。
當(dāng)網(wǎng)絡(luò)利用率接近100%
時(shí),時(shí)延趨于無窮大
但是也不能使信道利用率過低,這回使寶貴的通信資源被浪費(fèi)
因此一些擁有較大主干網(wǎng)的ISP
通常會(huì)控制它們的信道利用率不超過50%
。如果超過了,就要準(zhǔn)備擴(kuò)容,增大線路帶寬
8. 丟包率
丟包率即分組丟失率,是指在一定的時(shí)間范圍內(nèi),傳輸過程中丟失的分組數(shù)量與總分組數(shù)量的比率
具體可分為:接口丟包率、結(jié)點(diǎn)丟包率、鏈路丟包率、路徑丟包率、網(wǎng)絡(luò)丟包率等
丟包率是網(wǎng)絡(luò)運(yùn)維人員非常關(guān)心的一個(gè)網(wǎng)絡(luò)性能指標(biāo),但對(duì)于普通用戶來說往往并不關(guān)心這個(gè)指標(biāo),因?yàn)樗麄円庾R(shí)不到丟包
分組丟失的兩種情況
- 分組在傳輸過程中出現(xiàn)誤碼,被結(jié)點(diǎn)丟棄
- 分組到達(dá)一臺(tái)隊(duì)列已滿的分組交換機(jī)時(shí)被丟棄,在通信量較大時(shí)就可能造成網(wǎng)絡(luò)擁塞
丟包率反映了網(wǎng)絡(luò)的擁塞情況
-
無擁塞時(shí)路徑丟包率為
0
- 輕度擁塞時(shí)路徑丟包率為
1%~4%
-
嚴(yán)重?fù)砣?/strong>時(shí)路徑丟包率為
5%~15%
體系結(jié)構(gòu)和參考模型
我們把計(jì)算機(jī)網(wǎng)絡(luò)的各層及其協(xié)議的集合稱為網(wǎng)絡(luò)的體系結(jié)構(gòu)(Architecture)。換言之,計(jì)算機(jī)網(wǎng)絡(luò)的體系結(jié)構(gòu)就是這個(gè)計(jì)算機(jī)網(wǎng)絡(luò)及其所應(yīng)完成的功能的精確定義,它是計(jì)算機(jī)網(wǎng)絡(luò)中的層次、各層的協(xié)議及層間接口的集合。需要強(qiáng)調(diào)的是,這些功能究竟是用何種硬件或軟件完成的,則是一個(gè)遵循這種體系結(jié)構(gòu)的實(shí)現(xiàn)(Implementation)問題。體系結(jié)構(gòu)是抽象的,而實(shí)現(xiàn)是具體的,是真正在運(yùn)行的計(jì)算機(jī)硬件和軟件
分層體系結(jié)構(gòu)
第n層實(shí)體實(shí)現(xiàn)的服務(wù)為第n+1層所利用。在這種情況下,第n層稱為服務(wù)提供者,第n+1層則服務(wù)于用戶。
每一層還有自己傳送的數(shù)據(jù)單位,其名稱、大小、含義也各有不同。
在計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)的各個(gè)層次中,每個(gè)報(bào)文都分為兩部分:一是數(shù)據(jù)部分,即SDU;二是控制信息部分,即PCI,它們共同組成PDU。
- 服務(wù)數(shù)據(jù)單元(SDU):為完成用戶所要求的功能而應(yīng)傳送的數(shù)據(jù)。第n層的服務(wù)數(shù)據(jù)單元記為n-SDU。
- 協(xié)議控制信息(PCI):控制協(xié)議操作的信息。第n層的協(xié)議控制信息記為n-PCI。
- 協(xié)議數(shù)據(jù)單元(PDU):對(duì)等層次之間傳送的數(shù)據(jù)單位稱為該層的PDU。第n層的協(xié)議數(shù)據(jù)單元記為n-PDU。
在實(shí)際的網(wǎng)絡(luò)中,每層的協(xié)議數(shù)據(jù)單元都有一個(gè)通俗的名稱,如物理層的PDU稱為比特,數(shù)據(jù)鏈路層的PDU稱為幀,網(wǎng)絡(luò)層的PDU稱為分組,傳輸層的PDU稱為報(bào)文段。
在各層間傳輸數(shù)據(jù)時(shí),把從第n+1層收到的PDU作為第n層的SDU,加上第n層的PCI,就變成了第n層的PDU,交給第n-1層后作為SDU發(fā)送,接收方接收時(shí)做相反的處理,因此可知三者的關(guān)系為
具體地,層次結(jié)構(gòu)的含義包括以下幾方面:
- 第n層的實(shí)體不僅要使用第n-1層的服務(wù)來實(shí)現(xiàn)自身定義的功能,還要向第n+1層提
供本層的服務(wù),該服務(wù)是第n層及其下面各層提供的服務(wù)總和。
- 最低層只提供服務(wù),是整個(gè)層次結(jié)構(gòu)的基礎(chǔ);中間各層既是下一層的服務(wù)使用者,又是
上一層的服務(wù)提供者;最高層面向用戶提供服務(wù)。
- 上一層只能通過相鄰層間的接口使用下一層的服務(wù),而不能調(diào)用其他層的服務(wù);下一層
所提供服務(wù)的實(shí)現(xiàn)細(xì)節(jié)對(duì)上一層透明。
- 兩臺(tái)主機(jī)通信時(shí),對(duì)等層在邏輯上有一條直接信道,表現(xiàn)為不經(jīng)過下層就把信息傳送到
對(duì)方。
專用術(shù)語
①實(shí)體
任何可發(fā)送或接收信息的硬件或者軟件進(jìn)程,通常是一個(gè)特定的軟件模塊
對(duì)等實(shí)體
收發(fā)雙方相同層次中的實(shí)體
②協(xié)議
控制兩個(gè)對(duì)等實(shí)體進(jìn)行邏輯通信(這種通信實(shí)際上不存在,只是便于我們考慮問題) 的規(guī)則的集合,是水平的
三要素
協(xié)議由語法,語義,同步三部分構(gòu)成.
一個(gè)完整的協(xié)議通常應(yīng)該具有線路管理(建立\連接\釋放連接),差錯(cuò)控制,數(shù)據(jù)轉(zhuǎn)換等功能
- 語法:定義所交換信息的格式(即報(bào)文格式)
- 語義:定義收發(fā)雙方所要完成的操作(即收,發(fā)任務(wù)需要各自定義)
- 同步:定義收發(fā)雙方的時(shí)序關(guān)系(如先建立偵聽才可以通信是有先后順序的)
③服務(wù)
- 在協(xié)議控制下,兩個(gè)對(duì)等實(shí)體間的邏輯通信使得本層能夠向上一層提供服務(wù)(也就是說通過協(xié)議完成本層的內(nèi)容后就可以向上提供服務(wù))
- 要實(shí)現(xiàn)本層協(xié)議,還需要使用下面一層所提供的服務(wù)
- 協(xié)議是 “水平的” ,服務(wù)是 “垂直的”
- 實(shí)體看得見相鄰下層所提供的的服務(wù),但是并不知道實(shí)現(xiàn)該服務(wù)的具體協(xié)議。也就是說,下面的協(xié)議對(duì)上面的實(shí)體是 “透明” 的
服務(wù)原語: 上層使用下層所提供的服務(wù)必須通過與下層交換一些命令,這些命令稱為服務(wù)原語
OSI參考模型將原語劃分為4類
- 請(qǐng)求(Requst)
- 指示(Indication)
- 響應(yīng)(Response)
- 證實(shí)(Confirmation)
④服務(wù)訪問點(diǎn)(接口)
接口是同一結(jié)點(diǎn)內(nèi)相鄰兩層間交換信息的連接點(diǎn),是一個(gè)系統(tǒng)內(nèi)部的規(guī)定
在典型的接口上,同一結(jié)點(diǎn)內(nèi)相鄰兩層間實(shí)體通過服務(wù)訪問點(diǎn)SAP
進(jìn)行交互,服務(wù)是通過SAP
提供給上層使用的
服務(wù)訪問點(diǎn)SAP(Service Access Point)
:在同一系統(tǒng)中相鄰兩層的實(shí)體交換信息的邏輯接口(就像Web里的request域,后端前端都能取到) ,用于區(qū)分不同的服務(wù)類型,每個(gè)SAP
都有一個(gè)能唯一標(biāo)識(shí)它的地址
- 鏈路層的服務(wù)訪問點(diǎn):
幀的"類型"字段
- 網(wǎng)絡(luò)層的服務(wù)訪問點(diǎn):
IP數(shù)據(jù)報(bào)首部中的"協(xié)議字段"
- 運(yùn)輸層的服務(wù)訪問點(diǎn):
"端口號(hào)"
協(xié)議和服務(wù)的區(qū)別
一定要注意,協(xié)議和服務(wù)在概念上是不一樣的。首先,只有本層協(xié)議的實(shí)現(xiàn)才能保證向上一層提供服務(wù)。本層的服務(wù)用戶只能看見服務(wù)而無法看見下面的協(xié)議,即下面的協(xié)議對(duì)上層的服務(wù)用戶是透明的。其次,協(xié)議是“水平的”,即協(xié)議是控制對(duì)等實(shí)體之間通信的規(guī)則。但服務(wù)是“垂直的”,即服務(wù)是由下層通過層間接口向上層提供的。另外,并非在一層內(nèi)完成的全部功能都稱為服務(wù),只有那些能夠被高一層實(shí)體“看得見”的功能才稱為服務(wù)。
ISO/OSI參考模型
國際標(biāo)準(zhǔn)化組織(ISO)提出的網(wǎng)絡(luò)體系結(jié)構(gòu)模型,稱為開放系統(tǒng)互連參考模型(OSI/RM),通常簡稱為OSI參考模型。OSI參考模型有7層,自下而上依次為物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會(huì)話層、表示層、應(yīng)用層。低三層統(tǒng)稱為通信子網(wǎng),它是為了聯(lián)網(wǎng)而附加的通信設(shè)備,完成數(shù)據(jù)的傳輸功能:高三層統(tǒng)稱為資源子網(wǎng),它相當(dāng)于計(jì)算機(jī)系統(tǒng),完成數(shù)據(jù)的處理等功能。
1. 物理層(Physical Layer)
物理層的傳輸單位是比特,功能是在物理媒體上為數(shù)據(jù)端設(shè)備透明地傳輸原始比特流。物理層主要定義數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通信設(shè)備(DCE)的物理與邏輯連接方法,所以物理層協(xié)議也稱物理層接口標(biāo)準(zhǔn)(物理層規(guī)程)
物理層接口標(biāo)準(zhǔn)很多,如EIA-232C、EIA/TIARS-449、CCITT的X.21等
物理層主要研究以下內(nèi)容:
- 通信鏈路與通信結(jié)點(diǎn)的連接需要一些電路接口物理層規(guī)定了這些接口的一些參數(shù),如機(jī)械形尺寸、交換電路的數(shù)量和排列等
- 物理層也規(guī)定了通信鏈路上傳輸?shù)男盘?hào)的意義和電氣特征
采用什么信號(hào)表示比特0/1
2. 數(shù)據(jù)鏈路層(Data Link Layer)
數(shù)據(jù)鏈路層的傳輸單位是幀,任務(wù)是將網(wǎng)絡(luò)層傳來的IP數(shù)據(jù)報(bào)
封裝成幀
物理層的功能可以概括為:封裝成幀、差錯(cuò)控制、流量控制和傳輸管理等
廣播式網(wǎng)絡(luò)在數(shù)據(jù)鏈路層還要處理新的問題,即對(duì)共享信道的訪問。物理層的一個(gè)特殊的子層——介質(zhì)訪問層,就是專門處理這個(gè)問題的
- 標(biāo)識(shí)網(wǎng)絡(luò)中各主機(jī)(MAC地址)
- 從比特流中區(qū)分出地址和數(shù)據(jù)(數(shù)據(jù)封裝格式)
- 協(xié)調(diào)各主機(jī)征用總線(媒體接入控制)
- 體驗(yàn)得花交換機(jī)的實(shí)現(xiàn)(自學(xué)習(xí)和轉(zhuǎn)發(fā)幀)
- 檢測(cè)數(shù)據(jù)是否出現(xiàn)誤碼(差錯(cuò)檢測(cè))
- 出現(xiàn)傳輸差錯(cuò)如何處理(可靠傳輸和不可靠傳輸)
典型的數(shù)據(jù)鏈路層協(xié)議有SDLC、HDLC、PPP、STP和幀中繼等
3. 網(wǎng)絡(luò)層(Network Layer)
網(wǎng)絡(luò)層的傳輸單位是數(shù)據(jù)報(bào),它關(guān)心的是通信子網(wǎng)的運(yùn)行控制,主要任務(wù)是把網(wǎng)絡(luò)層的協(xié)議數(shù)據(jù)單元(分組)從源端傳到目的端,為分組交換網(wǎng)上的不同主機(jī)提供通信服務(wù)。
關(guān)鍵問題是對(duì)分組進(jìn)行路由選擇,并實(shí)現(xiàn)流量控制、擁塞控制、差錯(cuò)控制和網(wǎng)際互連等功能。
因特網(wǎng)是一個(gè)很大的互聯(lián)網(wǎng),它由大量異構(gòu)網(wǎng)絡(luò)通過路由器(Router)相互連接起來。因特網(wǎng)的主要網(wǎng)絡(luò)層協(xié)議是無連接的網(wǎng)際協(xié)議(Internet Protocol,IP)
和許多路由選擇協(xié)議
因特網(wǎng)的網(wǎng)絡(luò)層也稱網(wǎng)際層或IP層
注意,網(wǎng)絡(luò)層中的“網(wǎng)絡(luò)”一詞并不是我們通常談及的具體網(wǎng)絡(luò),而是在計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)中使用的專有名詞
網(wǎng)絡(luò)層的協(xié)議有 IP、IPX、ICMP、IGMP、ARP、RARP和OSPF等
- 表示網(wǎng)絡(luò)和網(wǎng)絡(luò)中的各主機(jī)(網(wǎng)絡(luò)和主機(jī)共同編址,例如IP地址)
- 路由器轉(zhuǎn)發(fā)分組(路由器選擇協(xié)議、路由表和轉(zhuǎn)發(fā)表)
4. 傳輸層(運(yùn)輸層)(Transport Layer)
傳輸層也稱運(yùn)輸層,傳輸單位是報(bào)文段,傳輸層負(fù)責(zé)主機(jī)中兩個(gè)進(jìn)程之間的通信,功能是為端到端連接提供可靠的傳輸服務(wù),為端到端連接提供流量控制、差錯(cuò)控制、服務(wù)質(zhì)量、數(shù)據(jù)傳輸管理等服務(wù)。
數(shù)據(jù)鏈路層提供的是點(diǎn)到點(diǎn)的通信,傳輸層提供的是端到端的通信,兩者不同。通俗地說,點(diǎn)到點(diǎn)可以理解為主機(jī)到主機(jī)之間的通信,一個(gè)點(diǎn)是指一個(gè)硬件地址或I地址,網(wǎng)絡(luò)中參與通信的主機(jī)是通過硬件地址或地址標(biāo)識(shí)的;端到端的通信是指運(yùn)行在不同主機(jī)內(nèi)的兩個(gè)進(jìn)程之間的通信,一個(gè)進(jìn)程由一個(gè)端口來標(biāo)識(shí),所以稱為端到端通信。
使用傳輸層的服務(wù),高層用戶可以直接進(jìn)行端到端的數(shù)據(jù)傳輸,從而忽略通信子網(wǎng)的存在。通過傳輸層的屏蔽,高層用戶看不到子網(wǎng)的交替和變化。由于一臺(tái)主機(jī)可同時(shí)運(yùn)行多個(gè)進(jìn)程,因此傳輸層具有復(fù)用和分用的功能。
傳輸層的協(xié)議有TCP、UDP。
- 進(jìn)程之間基于網(wǎng)絡(luò)的通信(進(jìn)程的標(biāo)識(shí),例如端口號(hào))
- 出現(xiàn)傳輸差錯(cuò)如何處理(可靠傳輸和不可靠傳輸)
5. 會(huì)話層(Session Layer)
會(huì)話層允許同主機(jī)上的各個(gè)進(jìn)程之間進(jìn)行會(huì)話。會(huì)話層利用傳輸層提供的端到端的服務(wù),向表示層提供它的增值服務(wù)。這種服務(wù)主要為表示層實(shí)體或用戶進(jìn)程建立連接并在連接上有序地傳輸數(shù)據(jù),這就是會(huì)話,也稱建立同步(SYN)。
會(huì)話層負(fù)責(zé)管理主機(jī)間的會(huì)話進(jìn)程,包括建立、管理及終止進(jìn)程間的會(huì)話。會(huì)話層可以使用校驗(yàn)點(diǎn)使通信會(huì)話在通信失效時(shí)從校驗(yàn)點(diǎn)繼續(xù)恢復(fù)通信,實(shí)現(xiàn)數(shù)據(jù)同步。
6. 表示層(Presentation Layer)
表示層主要處理在兩個(gè)通信系統(tǒng)中交換信息的表示方式。不同機(jī)器采用的編碼和表示方法不同,使用的數(shù)據(jù)結(jié)構(gòu)也不同。為了使不同表示方法的數(shù)據(jù)和信息之間能互相交換,表示層采用插象的標(biāo)準(zhǔn)方法定義數(shù)據(jù)結(jié)構(gòu),并采用標(biāo)準(zhǔn)的編碼形式。數(shù)據(jù)壓縮、加密和解密也是表示層可提供的數(shù)據(jù)表示變換功能。
7. 應(yīng)用層(Application Layer)
應(yīng)用層是OSI參考模型的最高層,是用戶與網(wǎng)絡(luò)的界面。應(yīng)用層為特定類型的網(wǎng)絡(luò)應(yīng)用提供訪問0SI參考模型環(huán)境的手段。因?yàn)橛脩舻膶?shí)際應(yīng)用多種多樣,這就要求應(yīng)用層采用不同的應(yīng)用協(xié)議來解決不同類型的應(yīng)用要求,因此應(yīng)用層是最復(fù)雜的一層,使用的協(xié)議也最多。
典型的協(xié)議有用于文件傳送的FTP、用于電子郵件的SMTP、用于萬維網(wǎng)的HTTP等。
TCP/IP模型
ARPA在研究 ARPAnet 時(shí)提出了TCP/IP 模型,模型從低到高依次為網(wǎng)絡(luò)接口層(對(duì)應(yīng)OSI參考模型中的物理層和數(shù)據(jù)鏈路層)、網(wǎng)際層、傳輸層和應(yīng)用層(對(duì)應(yīng)OSI參考模型中的會(huì)話層、表示層和應(yīng)用層)。TCPIIP 由于得到廣泛應(yīng)用而成為事實(shí)上的國際標(biāo)準(zhǔn)。
1.網(wǎng)絡(luò)接口層
網(wǎng)絡(luò)接口層的功能類似于OSI參考模型的物理層和數(shù)據(jù)鏈路層。它表示與物理網(wǎng)絡(luò)的接口,但實(shí)際上TCP/IP 本身并未真正描述這一部分,只是指出主機(jī)必須使用某種協(xié)議與網(wǎng)絡(luò)連接,以便在其上傳遞IP分組。具體的物理網(wǎng)絡(luò)既可以是各種類型的局域網(wǎng),如以太網(wǎng)、令牌環(huán)網(wǎng)、令牌總線網(wǎng)等,也可以是諸如電話網(wǎng)、SDH、X.25、幀中繼和 ATM等公共數(shù)據(jù)網(wǎng)絡(luò)。網(wǎng)絡(luò)接口層的作用是從主機(jī)或結(jié)點(diǎn)接收IP分組,并把它們發(fā)送到指定的物理網(wǎng)絡(luò)上。
2. 網(wǎng)際層
網(wǎng)際層(主機(jī)-主機(jī))是TCP/IP 體系結(jié)構(gòu)的關(guān)鍵部分。它和0SI參考模型的網(wǎng)絡(luò)層在功能上非常相似。
網(wǎng)際層將分組發(fā)往任何網(wǎng)絡(luò),并為之獨(dú)立地選擇合適的路由,但它不保證各個(gè)分組有序地到達(dá),各個(gè)分組的有序交付由高層負(fù)責(zé)。網(wǎng)際層定義了標(biāo)準(zhǔn)的分組格式和協(xié)議,即 IP。
3. 傳輸層
同樣和OSI參考模型中的傳輸層類似
1)傳輸控制協(xié)議(Transmission Control Protocol,TCP),能夠提供可靠的交付。
2)用戶數(shù)據(jù)報(bào)協(xié)議(User Datagram Protocol,UDP)。它是無連接的,數(shù)據(jù)傳輸?shù)膯挝皇怯?br> 戶數(shù)據(jù)報(bào),不保證提供可靠的交付,只能提供“盡最大努力交付”。
4. 應(yīng)用層
應(yīng)用層(用戶-用戶或進(jìn)程-進(jìn)程)包含所有的高層協(xié)議,如虛擬終端協(xié)議(Telnet)、文件傳輸協(xié)議(FTP)、域名解析服務(wù)(DNS)、電子郵件協(xié)議(SMTP)和超文本傳輸協(xié)議(HTTP)。
IP協(xié)議是因特網(wǎng)中的核心協(xié)議:TCP/IP可以為各式各樣的應(yīng)用提供服務(wù)(所謂的everything over IP),同時(shí)TCP/IP也允許IP協(xié)議在由各種網(wǎng)絡(luò)構(gòu)成的互聯(lián)網(wǎng)上運(yùn)行(所謂的IPover everything)。正因?yàn)槿绱?,因特網(wǎng)才會(huì)發(fā)展到今天的規(guī)模。
總結(jié):TCP/IP模型與OSI參考模型的比較
TCP/IP模型與OSI參考模型有許多相似之處。
- 都采取分層的體系結(jié)構(gòu)
- 都是基于獨(dú)立的協(xié)議棧的概念。
- 都可以解決異構(gòu)網(wǎng)絡(luò)的互連,實(shí)現(xiàn)世界上不同廠家生產(chǎn)的計(jì)算機(jī)之間的通信。
兩個(gè)模型除具有這些基本的相似之處外,也有很多差別。
- OSI參考模型的最大貢獻(xiàn)就是精確地定義了三個(gè)主要概念:服務(wù)、協(xié)議和接口,這與現(xiàn)代的面向?qū)ο蟪绦蛟O(shè)計(jì)思想非常吻合。而TCP/IP 模型在這三個(gè)概念上卻沒有明確區(qū)分,不得合軟件工程的思想。
- OSI參考模型產(chǎn)生在協(xié)議發(fā)明之前,沒有偏向于任何特定的協(xié)議,通用性良好。但計(jì)者在協(xié)議方面沒有太多經(jīng)驗(yàn),不知道把哪些功能放到哪一層更好。TCP/IP模型正好相反,首出現(xiàn)的是協(xié)議,模型實(shí)際上是對(duì)已有協(xié)議的描述,因此不會(huì)出現(xiàn)協(xié)議不能匹配模型的情況,但模型不適合于任何其他非TCP/IP的協(xié)議棧。
- TCP/IP 模型在設(shè)計(jì)之初就考慮到了多種異構(gòu)網(wǎng)的互連問題,并將網(wǎng)際協(xié)議(IP)作一個(gè)單獨(dú)的重要層次。OSI參考模型最初只考慮到用一種標(biāo)準(zhǔn)的公用數(shù)據(jù)網(wǎng)將各種不同的系給連。OSI 參考模型認(rèn)識(shí)到IP的重要性后,只好在網(wǎng)絡(luò)層中劃分出一個(gè)子層來完成類似于TG模型中的IP的功能。
- 0SI參考模型在網(wǎng)絡(luò)層支持無連接和面向連接的通信,但在傳輸層僅有面向連接的通信。
而TCP/IP模型認(rèn)為可靠性是端到端的問題,因此它在網(wǎng)際層僅有一種無連接的通信,但傳輸層支持無連接和面向連接兩種模式。這個(gè)不同點(diǎn)常常作為考查點(diǎn)
OSI | TCP/IP | |
---|---|---|
網(wǎng)絡(luò)層(TCP/IP叫網(wǎng)際層) | 無/有連接 | 僅無連接 |
傳輸層 | 僅無連接 | 無/有連接 |
圖1.14通信協(xié)議棧的通信過程示例 |
原理體系結(jié)構(gòu)
學(xué)習(xí)計(jì)算機(jī)網(wǎng)絡(luò)時(shí),我們往往采取折中的辦法,即綜合OSI參考模型和TCP/IP模型
基于通信協(xié)議棧進(jìn)行通信的結(jié)點(diǎn)的數(shù)據(jù)傳輸過程
當(dāng)我們利用瀏覽器發(fā)送網(wǎng)頁請(qǐng)求到服務(wù)器并發(fā)生響應(yīng)的過程中,數(shù)據(jù)會(huì)怎么變化呢?
瀏覽器發(fā)送
- 應(yīng)用層:按照
HTTP協(xié)議
的規(guī)定構(gòu)建一個(gè)HTTP請(qǐng)求報(bào)文(請(qǐng)求要干什么) 。應(yīng)用層將HTTP請(qǐng)求
的報(bào)文交給運(yùn)輸層處理
- 運(yùn)輸層:給
HTTP請(qǐng)求
報(bào)文添加一個(gè)TCP首部(區(qū)分應(yīng)用進(jìn)程) ,使之成為TCP報(bào)文段
。運(yùn)輸層將TCP報(bào)文段
交給網(wǎng)絡(luò)層處理
- 網(wǎng)絡(luò)層:給
TCP報(bào)文段
添加一個(gè)IP首部(使之可以在互聯(lián)網(wǎng)上傳輸) ,使之成為IP數(shù)據(jù)報(bào)
。網(wǎng)絡(luò)層將IP數(shù)據(jù)報(bào)
交付給數(shù)據(jù)鏈路層處理
- 數(shù)據(jù)鏈路層:給
IP數(shù)據(jù)報(bào)
添加一個(gè)首部(讓其能在一段鏈路上傳輸,能被相應(yīng)主機(jī)接收) 和一個(gè)尾部(讓目的主機(jī)檢查所接收到的幀是否有誤碼) ,使之成為幀。數(shù)據(jù)鏈路層將幀交給物理層
- 物理層:將幀看作比特流,如果網(wǎng)絡(luò)是以太網(wǎng),它還會(huì)在幀上加前導(dǎo)碼(讓目的主機(jī)做好接收幀的準(zhǔn)備) 。接著將比特流變成相應(yīng)信號(hào)發(fā)送到傳輸媒體
路由器轉(zhuǎn)發(fā)
- 物理層收到信號(hào)將其變為比特流,去掉前導(dǎo)碼后,將其交付給數(shù)據(jù)鏈路層 (交付的實(shí)際是幀)
- 數(shù)據(jù)鏈路層將幀去掉首部和尾部后,將其交付給網(wǎng)絡(luò)層 (交付的實(shí)際是IP數(shù)據(jù)報(bào))
- 網(wǎng)絡(luò)層解析
IP數(shù)據(jù)報(bào)
首部,從中提取目的網(wǎng)絡(luò)地址,然后查找自身路由表,確定轉(zhuǎn)發(fā)端口。接著數(shù)據(jù)鏈路層封裝,物理層再封裝,將比特流變成信號(hào)發(fā)送出去。
服務(wù)器接收
- 物理層收到信號(hào)將其變?yōu)楸忍亓?/strong>,去掉前導(dǎo)碼后,將其交付給數(shù)據(jù)鏈路層 (交付的實(shí)際是幀)
- 數(shù)據(jù)鏈路層收到幀后,去除首部和尾部,將其交付給網(wǎng)絡(luò)層 (交付的實(shí)際是IP數(shù)據(jù)報(bào))
- 網(wǎng)絡(luò)層收到
IP數(shù)據(jù)報(bào)
后,去除IP首部
,將其交付給運(yùn)輸層 (交付的實(shí)際是TCP報(bào)文)
- 運(yùn)輸層收到
TCP報(bào)文
后,從中得知是與哪個(gè)端口上的進(jìn)程通信,去除TCP頭部
后,交付給應(yīng)用層 (交付的實(shí)際是HTTP請(qǐng)求報(bào)文)
- 應(yīng)用層收到
HTTP請(qǐng)求
報(bào)文后,將其解析給對(duì)應(yīng)進(jìn)程,并執(zhí)行相關(guān)操作,返回HTTP響應(yīng)報(bào)文
具體有哪些功能
流量控制(FLow Control)
一般來說,我們希望數(shù)據(jù)傳輸能快一些,但如果發(fā)送方把數(shù)據(jù)發(fā)送得過快,接收方就可能來不及接收,這會(huì)造成數(shù)據(jù)的丟失
流量控制就是讓發(fā)送方的發(fā)送速率不要太快,要讓接收方來得及接收(即接收緩存有可能溢出) ,因此流量控制可以說是一種速度匹配服務(wù)
傳輸層和數(shù)據(jù)鏈路層的流量控制的區(qū)別
傳輸層定義端到端用戶之間的流量控制,數(shù)據(jù)鏈路層定義兩個(gè)中間的相鄰結(jié)點(diǎn)的流量控制。另外,數(shù)據(jù)鏈路層的滑動(dòng)窗口協(xié)議的窗口大小不能動(dòng)態(tài)變化,傳輸層的則可以動(dòng)態(tài)變化
例題
擁塞控制
在某段時(shí)間,若對(duì)網(wǎng)絡(luò)中某一資源的需求超過了該資源所能提供的可用部分,網(wǎng)絡(luò)性能就要變壞,這種情況叫做擁塞
若出現(xiàn)擁塞而不進(jìn)行控制,整個(gè)網(wǎng)絡(luò)的吞吐量將隨輸入負(fù)荷的增大而下降
擁塞控制基本方法
- 開環(huán)控制
當(dāng)網(wǎng)絡(luò)的流量特征可以準(zhǔn)確規(guī)定且性能要求可以事先獲得時(shí),適合使用開環(huán)控制。
-
- 試圖用良好的設(shè)計(jì)來解決問題。
-
- 從一開始就保證問題不會(huì)發(fā)生。
-
- 一旦系統(tǒng)啟動(dòng)并運(yùn)行起來,就不需要中途修正。
- 閉環(huán)控制
當(dāng)網(wǎng)絡(luò)的流量特征不能準(zhǔn)確描述或者當(dāng)網(wǎng)絡(luò)不提供資源預(yù)留時(shí),適合使用閉環(huán)控制。因特網(wǎng)采用的就是閉環(huán)控制方法。
-
- 基于反饋的控制方法
根據(jù)擁塞信息的反饋形式,可將閉環(huán)擁塞控制算法分為:
- 顯式反饋算法
從擁塞節(jié)點(diǎn)(即路由器)向源點(diǎn)提供關(guān)于網(wǎng)絡(luò)中擁塞狀態(tài)的顯式反饋信息。
- 隱式反饋算法
源點(diǎn)自身通過對(duì)網(wǎng)絡(luò)行為的觀察(例如超時(shí)重傳或往返時(shí)間RTT)來推斷網(wǎng)絡(luò)是否發(fā)生了擁塞。TCP采用的就是隱式反饋算法。
擁塞控制并不僅僅是運(yùn)輸層要考慮的問題。顯式反饋算法就必須涉及網(wǎng)絡(luò)層。雖然一些網(wǎng)絡(luò)體系結(jié)構(gòu)(如ATM網(wǎng)絡(luò))主要在網(wǎng)絡(luò)層實(shí)現(xiàn)擁塞控制,但因特網(wǎng)主要利用隱式反饋在運(yùn)輸層實(shí)現(xiàn)擁塞控制。
進(jìn)行擁塞控制是需要付出代價(jià)的
- 可能需要在節(jié)點(diǎn)之間交換信息和各種命令,以便選擇擁塞控制的策略并實(shí)施控制,這樣會(huì)產(chǎn)生額外開銷。
- 可能需要預(yù)留一些資源用于特殊用戶或特殊情況,這樣就降低了網(wǎng)絡(luò)資源的共享程度。
然而,為了確保網(wǎng)絡(luò)性能的穩(wěn)定,不會(huì)因?yàn)檩斎胴?fù)載的增長而導(dǎo)致網(wǎng)絡(luò)性能的惡化甚至出現(xiàn)崩潰,使用擁塞控制而付出一定的代價(jià)是值得的。
衡量網(wǎng)絡(luò)擁塞的指標(biāo)
流量控制與擁塞控制的區(qū)別
流量控制:以接收方的接收能力控制發(fā)送方(源點(diǎn))的發(fā)送速率,只與特定的點(diǎn)對(duì)點(diǎn)通信的發(fā)送方和接收方之間的流量有關(guān)
擁塞控制:源點(diǎn)根據(jù)各方面因素,按擁塞控制算法自行控制發(fā)送速率,全局性問題,涉及網(wǎng)絡(luò)中所有的主機(jī)、路由器等文章來源:http://www.zghlxwxcb.cn/news/detail-605643.html
總結(jié):ISO/OSI各層功能實(shí)現(xiàn)
靈魂拷問
1. 計(jì)算機(jī)網(wǎng)絡(luò)和分布式計(jì)算機(jī)系統(tǒng)的主要區(qū)別是什么?
2. 端到端通信和點(diǎn)到點(diǎn)通信之間的區(qū)別?
直接相連的結(jié)點(diǎn)之間的通信稱為點(diǎn)到點(diǎn)通信,不涉及程序或進(jìn)程的概念
端到端通信建立在點(diǎn)到點(diǎn)通信的基礎(chǔ)上,以完成應(yīng)用程序進(jìn)程之間的通信文章來源地址http://www.zghlxwxcb.cn/news/detail-605643.html
點(diǎn)到點(diǎn)通信 | 端到端通信 | |
---|---|---|
程序或進(jìn)程 | ![]() |
到了這里,關(guān)于計(jì)算機(jī)網(wǎng)絡(luò)第一章概述的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!