《網(wǎng)絡(luò)設(shè)備配置與管理》課件第2章_第1頁
《網(wǎng)絡(luò)設(shè)備配置與管理》課件第2章_第2頁
《網(wǎng)絡(luò)設(shè)備配置與管理》課件第2章_第3頁
《網(wǎng)絡(luò)設(shè)備配置與管理》課件第2章_第4頁
《網(wǎng)絡(luò)設(shè)備配置與管理》課件第2章_第5頁
已閱讀5頁,還剩119頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第2章計算機(jī)網(wǎng)絡(luò)體系與協(xié)議

2.1計算機(jī)網(wǎng)絡(luò)體系概述2.2OSI體系結(jié)構(gòu)模型2.3TCP/IP體系結(jié)構(gòu)模型2.4其他網(wǎng)絡(luò)協(xié)議本章小結(jié)練習(xí)與思考2.1計算機(jī)網(wǎng)絡(luò)體系概述計算機(jī)網(wǎng)絡(luò)通過不同的通信介質(zhì)和通信設(shè)備將處在不同地理位置的計算機(jī)系統(tǒng)連起來,使人們不管在何時何地都能通過網(wǎng)絡(luò)實(shí)現(xiàn)資源的共享和信息的交換,它已逐漸成為人們?nèi)粘I詈凸ぷ髦械闹匾M成部分。計算機(jī)網(wǎng)絡(luò)起源于20世紀(jì)60年代,最初為美國軍方研究所用,隨著高等院校以及各個科研機(jī)構(gòu)的介入,人們開始認(rèn)識到計算機(jī)網(wǎng)絡(luò)對科學(xué)研究的重要價值,從而計算機(jī)網(wǎng)絡(luò)技術(shù)也得到了發(fā)展和完善,現(xiàn)在已被廣泛應(yīng)用于各個領(lǐng)域。為了將地理位置分布各異的計算機(jī)通信結(jié)點(diǎn)連接起來,首先要有實(shí)際的連通信道,然后才能進(jìn)行數(shù)據(jù)的傳輸。但是僅有物理上的連接是不夠的,因?yàn)橛嬎銠C(jī)網(wǎng)絡(luò)是一個非常龐大和復(fù)雜的系統(tǒng)。在這個龐大的系統(tǒng)下,物理信道的連接方式各不相同,它們可以是不同的傳輸介質(zhì)、不同廠商的通信設(shè)備,以及不同的數(shù)據(jù)傳輸技術(shù)。如果沒有一種被大家所共同遵循的約定或規(guī)則,數(shù)據(jù)在計算機(jī)網(wǎng)絡(luò)上的傳輸將會非?;靵y,而通信雙方將無法正確獲取和理解通信數(shù)據(jù)的正確含義。另外,計算機(jī)網(wǎng)絡(luò)還必須為計算機(jī)之間的通信提供各種公平、健全、高性能以及低成本的服務(wù)。以上因素都決定了計算機(jī)網(wǎng)絡(luò)需要網(wǎng)絡(luò)軟件(網(wǎng)絡(luò)協(xié)議)系統(tǒng)的支持,并且這些網(wǎng)絡(luò)軟件也應(yīng)具有很高的復(fù)雜性。也正是有了網(wǎng)絡(luò)軟件,這些不同的異構(gòu)通信系統(tǒng)才真正實(shí)現(xiàn)了互聯(lián)。網(wǎng)絡(luò)軟件系統(tǒng)無疑是一個功能龐大而又極其復(fù)雜的軟件系統(tǒng)。為了實(shí)現(xiàn)這樣的軟件系統(tǒng),網(wǎng)絡(luò)設(shè)計者研究并制定了網(wǎng)絡(luò)體系結(jié)構(gòu)(NetworkArchitecture)。網(wǎng)絡(luò)的體系結(jié)構(gòu)用于指導(dǎo)網(wǎng)絡(luò)軟件的設(shè)計和實(shí)現(xiàn),當(dāng)網(wǎng)絡(luò)體系結(jié)構(gòu)被設(shè)計出來后,就使得某個公司所生產(chǎn)的網(wǎng)絡(luò)設(shè)備和開發(fā)的網(wǎng)絡(luò)軟件很容易形成特定結(jié)構(gòu)的網(wǎng)絡(luò)。如果網(wǎng)絡(luò)體系結(jié)構(gòu)具有通用性和標(biāo)準(zhǔn)性,那么各個公司的網(wǎng)絡(luò)設(shè)備根據(jù)這樣的網(wǎng)絡(luò)體系就能很容易地實(shí)現(xiàn)互聯(lián)。事實(shí)上,OSI(OpenSystemInterconnection)參考模型和TCP/IP(TransferControlProtocol/InternetProtocol)參考模型正是這樣的兩個被廣泛使用的網(wǎng)絡(luò)體系模型。2.2OSI體系結(jié)構(gòu)模型

OSI即開放系統(tǒng)互連,其基本參考模型是1981年在國際標(biāo)準(zhǔn)化組織(ISO)的建議下,為了解決不同網(wǎng)絡(luò)系統(tǒng)的互聯(lián)而提出的模型。在1984年,形成了ISO7498國際標(biāo)準(zhǔn)(稱為OSI/RM),對應(yīng)于我國的國標(biāo)GB9387?!伴_放系統(tǒng)”的含義是指任何異構(gòu)的網(wǎng)絡(luò)系統(tǒng),只要共同遵守OSI的協(xié)議標(biāo)準(zhǔn),就能夠?qū)崿F(xiàn)通信。OSI參考模型對網(wǎng)絡(luò)進(jìn)行了分層,并對各層的協(xié)議進(jìn)行了標(biāo)準(zhǔn)化規(guī)范,其中所包含的詳細(xì)信息用于幫助將不同廠商的網(wǎng)絡(luò)硬件設(shè)備和網(wǎng)絡(luò)軟件連接起來。2.2.1OSI參考模型的表示

OSI參考模型是網(wǎng)絡(luò)體系結(jié)構(gòu)的一種描述模型,它屬于邏輯層面上的參考模型。實(shí)際上,OSI參考模型并不構(gòu)成網(wǎng)絡(luò)體系結(jié)構(gòu)的全部,因?yàn)樗]有對協(xié)議層間的接口和其所提供的服務(wù)進(jìn)行完整的描述。OSI參考模型將計算機(jī)網(wǎng)絡(luò)按功能劃分為七層,每一層都代表了同層的對等實(shí)體的通信協(xié)議結(jié)構(gòu),如圖2-1所示。圖2-1OSI參考模型將OSI參考模型劃分為七層協(xié)議主要基于以下原則:

(1)各層層次劃分抽象,每層協(xié)議應(yīng)該在邏輯上具備明顯的區(qū)分度;

(2)各協(xié)議層功能定義明確,而且應(yīng)該有助于制定網(wǎng)絡(luò)協(xié)議的標(biāo)準(zhǔn)化;

(3)各協(xié)議層邊界的劃分應(yīng)盡量減少層間通信量;

(4)各協(xié)議層次的劃分應(yīng)該適中,以避免層次劃分太多而增加復(fù)雜性,而且各層的功能應(yīng)盡量單一。

在OSI參考模型中,各層協(xié)議之間并不是孤立的,它們在功能和實(shí)現(xiàn)上都存在著相互依存的關(guān)系,這和在網(wǎng)絡(luò)體系結(jié)構(gòu)中是一致的。鄰接的協(xié)議層之間是緊密地聯(lián)系在一起的,下一層的服務(wù)提供者所能提供的服務(wù),將直接作用和影響上一層服務(wù)使用者所能完成的通信功能,在具體實(shí)現(xiàn)上更是要完成數(shù)據(jù)在鄰接層間的傳輸。2.2.2OSI參考模型的協(xié)議層分析

1.物理層

物理層處于OSI參考模型的最下層,它主要涉及對實(shí)際比特數(shù)據(jù)流的傳輸。物理層解決包括傳輸介質(zhì)接口、數(shù)據(jù)信號編碼、電壓表示、接頭尺寸以及和比特數(shù)據(jù)流傳輸相關(guān)的各種內(nèi)容。物理層有四個基本的特性:機(jī)械特性、電氣特性、功能特性和過程特性。

機(jī)械特性規(guī)定電纜與網(wǎng)絡(luò)接口卡的接頭類型、形狀、幾何尺寸、插腳個數(shù)、引線排列方式以及引腳的連接方法等特征。

電氣特性規(guī)定傳輸過程中的信號電平、傳輸速率、電纜長度和匹配阻抗等內(nèi)容。功能特性規(guī)定信道連接雙方每對連線的具體作用和用法,比如數(shù)據(jù)線、控制線、接地線。

過程特性則對通信雙方的通信步驟或通信時序進(jìn)行規(guī)定。

物理層的各種協(xié)議規(guī)范是為了讓通信發(fā)送設(shè)備實(shí)現(xiàn)將0/1的數(shù)據(jù)串通過物理傳輸介質(zhì)傳送到接收方。同樣,也要讓數(shù)據(jù)接收設(shè)備能從物理傳輸介質(zhì)上獲得這些數(shù)據(jù)串。在物理層上,比特數(shù)據(jù)流進(jìn)行的是“透明”的傳輸過程。在比特流的傳輸過程中,物理層的設(shè)備并不關(guān)心也不知道這些比特流實(shí)際所代表的數(shù)據(jù)意義(比如代表控制信息還是數(shù)據(jù)信息)。設(shè)備唯一需要做的就是完成這些比特流的傳輸,甚至不負(fù)責(zé)數(shù)據(jù)是否被正確傳輸?shù)侥康牡亍?/p>

2.?dāng)?shù)據(jù)鏈路層

數(shù)據(jù)鏈路層的功能是在物理層的比特流傳輸?shù)幕A(chǔ)上,加強(qiáng)數(shù)據(jù)傳輸?shù)目煽啃?,也就是要在不可靠的物理鏈路之上建立可靠的?shù)據(jù)傳輸。數(shù)據(jù)鏈路層負(fù)責(zé)實(shí)現(xiàn)在通信結(jié)點(diǎn)之間建立起數(shù)據(jù)鏈路的連接,比單純的物理層傳輸增加了差錯控制和比特數(shù)據(jù)流的處理功能。

數(shù)據(jù)鏈路層將比特數(shù)據(jù)流組合成數(shù)據(jù)塊,這種數(shù)據(jù)塊在數(shù)據(jù)鏈路層中稱為數(shù)據(jù)幀(DataFrame)。數(shù)據(jù)幀是數(shù)據(jù)鏈路層所處理的基本數(shù)據(jù)單位,數(shù)據(jù)發(fā)送方將要傳輸?shù)臄?shù)據(jù)進(jìn)行分裝,形成多個數(shù)據(jù)幀,一個數(shù)據(jù)幀往往包含了幾百或幾千字節(jié)。這些數(shù)據(jù)幀在數(shù)據(jù)鏈路層的控制之下進(jìn)行傳輸。數(shù)據(jù)鏈路層分為兩個子層:MAC(MediaAccessControl,介質(zhì)訪問控制)層和LLC(LogicalLinkControl,邏輯鏈路控制)層。MAC層控制所有與傳輸介質(zhì)有關(guān)的內(nèi)容,并為LLC層提供接口服務(wù)。這樣即使物理介質(zhì)發(fā)生改變,也不會影響其上的高層協(xié)議。LLC層則向更高層的協(xié)議提供邏輯接口服務(wù),比如為網(wǎng)絡(luò)層提供數(shù)據(jù)報、虛電路控制以及多路復(fù)用技術(shù)等。

3.網(wǎng)絡(luò)層

在OSI參考模型中,最底下的三層也被稱為通信子網(wǎng),主要實(shí)現(xiàn)數(shù)據(jù)通信的功能。網(wǎng)絡(luò)層(NetworkLayer)是這三層中最為復(fù)雜和關(guān)鍵的一層。網(wǎng)絡(luò)層處于數(shù)據(jù)鏈路層和傳輸層之間,它的功能是實(shí)現(xiàn)通信結(jié)點(diǎn)之間端到端的數(shù)據(jù)傳輸。正是在網(wǎng)絡(luò)層上,異構(gòu)的物理網(wǎng)絡(luò)設(shè)備可以實(shí)現(xiàn)互聯(lián)。路由選擇、擁塞控制以及流量控制是網(wǎng)絡(luò)層中的重要技術(shù)。

網(wǎng)絡(luò)層所實(shí)現(xiàn)的通信結(jié)點(diǎn)之間端到端傳輸?shù)暮x不同于數(shù)據(jù)鏈路層上的幀傳輸。通信結(jié)點(diǎn)的源發(fā)送端到目的接收端之間會經(jīng)過許多中間結(jié)點(diǎn),網(wǎng)絡(luò)層實(shí)現(xiàn)把這些數(shù)據(jù)分組獨(dú)立地通過中間結(jié)點(diǎn)向目的地傳輸?shù)墓δ堋?/p>

4.傳輸層

傳輸層是用戶資源子網(wǎng)和通信子網(wǎng)之間的橋梁。傳輸層徹底屏蔽了通信子網(wǎng)中的傳輸細(xì)節(jié),實(shí)現(xiàn)了用戶資源子網(wǎng)中通信結(jié)點(diǎn)間邏輯層面的通信。

傳輸層負(fù)責(zé)管理發(fā)送端和接收端之間端口到端口的數(shù)據(jù)交換,保證數(shù)據(jù)被完整無誤地傳輸。傳輸層從更上一層的會話層接收用戶數(shù)據(jù),完成傳輸?shù)刂返骄W(wǎng)絡(luò)地址的映射,并將數(shù)據(jù)轉(zhuǎn)換為通信數(shù)據(jù)子網(wǎng)進(jìn)行傳輸?shù)臄?shù)據(jù)格式,然后交給通信子網(wǎng)進(jìn)行發(fā)送。傳輸層同時還提供序列控制、流控制和錯誤的檢測恢復(fù)等功能。

5.會話層

會話層提供會話管理的功能,并允許在計算機(jī)上的不同用戶之間建立會話關(guān)系。會話層建立在下層,即傳輸層提供的服務(wù)基礎(chǔ)上,負(fù)責(zé)打開或者關(guān)閉會話。會話層在連接出現(xiàn)錯誤時試圖進(jìn)行恢復(fù)。如果會話層檢測到一個連接長時間沒有被使用,它即會關(guān)閉連接并在需要使用時再重新打開連接。這個連接的控制過程對于更上層的協(xié)議是完全透明的。

6.表示層

表示層負(fù)責(zé)對面向連接或無連接傳輸中的數(shù)據(jù)信息進(jìn)行處理。這一點(diǎn)和其他各層的協(xié)議很不相同,表示層關(guān)心的是數(shù)據(jù)信息的語法和語義,而其他各層協(xié)議關(guān)心的是對數(shù)據(jù)的傳輸控制。

表示層中的一個典型示例就是標(biāo)準(zhǔn)的數(shù)據(jù)編碼。傳輸?shù)臄?shù)據(jù)是有其內(nèi)在意義的,它要表示一定的邏輯信息。不同通信結(jié)點(diǎn)對于數(shù)據(jù)的組織方式有可能并不相同,這就像中國人把姓放在前面,而西方人把姓放在后面一樣。不同的計算機(jī)可能使用不同的代碼來表示字符串,比如ASCII碼和Unicode碼。標(biāo)準(zhǔn)的數(shù)據(jù)編碼就是把這些不同的編碼表示統(tǒng)一起來,將機(jī)器的內(nèi)部編碼轉(zhuǎn)換成標(biāo)準(zhǔn)的網(wǎng)絡(luò)編碼在網(wǎng)絡(luò)上傳輸。這樣,接收端的機(jī)器就能理解對方數(shù)據(jù)編碼的含義,而只需再將標(biāo)準(zhǔn)的網(wǎng)絡(luò)編碼轉(zhuǎn)換成自己的編碼格式就可以進(jìn)行內(nèi)部的處理了。表示層實(shí)際上就是對數(shù)據(jù)進(jìn)行抽象的處理,制定出數(shù)據(jù)的語法表示和語義的轉(zhuǎn)換。對于兩個數(shù)據(jù)交換實(shí)體來說,它們之間要正確通信就必須對它們所使用的抽象語法集合進(jìn)行商定。協(xié)商使用的抽象語法規(guī)則將確定數(shù)據(jù)的含義和表示的數(shù)據(jù)值,而在抽象語法規(guī)則商定之后的傳輸過程中將不再關(guān)心對數(shù)據(jù)的表示。在傳輸過程中對數(shù)據(jù)的表示和數(shù)據(jù)值含義的保持將由表示層負(fù)責(zé),它會控制通信協(xié)議的轉(zhuǎn)換、數(shù)據(jù)的翻譯以及字符的轉(zhuǎn)換等各種工作。另外,在表示層上還有兩個比較重要的功能:數(shù)據(jù)的加密(用以解決數(shù)據(jù)安全問題)和對數(shù)據(jù)的冗余壓縮(減少網(wǎng)絡(luò)數(shù)據(jù)傳輸數(shù)據(jù)量)。

7.應(yīng)用層

應(yīng)用層位于OSI參考模型的頂層,其主要功能是通過網(wǎng)絡(luò)應(yīng)用程序直接為用戶提供網(wǎng)絡(luò)服務(wù)。

在OSI參考模型中,應(yīng)用層的邏輯抽象性最高,在這一層上開發(fā)了大量的常用協(xié)議,這些協(xié)議被各種網(wǎng)絡(luò)應(yīng)用程序?qū)崿F(xiàn)以完成不同的網(wǎng)絡(luò)服務(wù)功能。如文件的傳輸FTP、TFTP,遠(yuǎn)程訪問控制TELNET,超文本傳輸服務(wù)HTTP等,電子郵件服務(wù)SMTP等。2.2.3OSI參考模型的特點(diǎn)

從上面的分層描述中可以看出,OSI參考模型是一個設(shè)計詳盡和完整的體系結(jié)構(gòu),每一層協(xié)議功能的劃分和相關(guān)的服務(wù)都有很細(xì)致的定義,是一個結(jié)構(gòu)化非常好的網(wǎng)絡(luò)體系結(jié)構(gòu)模型。因此,OSI參考模型主要具有以下特點(diǎn):

(1)標(biāo)準(zhǔn)化程度高。OSI參考模型是由國際化標(biāo)準(zhǔn)組織制定的,目的是為了提供異構(gòu)網(wǎng)絡(luò)的開放互聯(lián)標(biāo)準(zhǔn),以促進(jìn)不同結(jié)構(gòu)網(wǎng)絡(luò)的互聯(lián),因此標(biāo)準(zhǔn)化程度很高。

(2)層次劃分細(xì)致,結(jié)構(gòu)化程度高。OSI參考模型的七層架構(gòu)將每層協(xié)議的組織和實(shí)現(xiàn)功能都劃分得很獨(dú)立,層間耦合程度低,因此結(jié)構(gòu)化程度很高,即使某層協(xié)議發(fā)生改動,對整個體系結(jié)構(gòu)的影響也很小。

(3)兼容性好。OSI參考模型支持開放互聯(lián),能實(shí)現(xiàn)多種平臺和網(wǎng)路標(biāo)準(zhǔn)的異構(gòu)系統(tǒng)的互聯(lián)。

(4)擴(kuò)充性強(qiáng)。OSI參考系統(tǒng)采用了可變長地址的定義,能夠支持大型的網(wǎng)絡(luò)架構(gòu)而不會有網(wǎng)絡(luò)地址耗盡的問題。2.3TCP/IP體系結(jié)構(gòu)模型在網(wǎng)絡(luò)體系結(jié)構(gòu)模型中,TCP/IP是另外一個非常重要的體系結(jié)構(gòu)模型,也是我們實(shí)際生活中接觸最多的應(yīng)用模型。TCP/IP協(xié)議是互聯(lián)網(wǎng)實(shí)現(xiàn)的技術(shù)基礎(chǔ)。最初的TCP/IP協(xié)議的研究由美國國防部DOD在1967年發(fā)起,目的是為了發(fā)展軍用計算機(jī)通信網(wǎng)絡(luò)技術(shù),1969年形成了ARPANET,到1978年開始正式使用TCP/IP這一名稱。隨著IAB(InternetArchitectureBoard)下的非盈利組織IETF(InternetEngineeringTaskForce)的介入,開發(fā)出了現(xiàn)在正在使用的大部分協(xié)議,也使得TCP/IP協(xié)議成為網(wǎng)絡(luò)結(jié)點(diǎn)接入Internet的網(wǎng)絡(luò)協(xié)議。

TCP/IP協(xié)議在RFC(ReconstructionFinanceCorporation)中經(jīng)過設(shè)計、討論和使用后,被IETF確認(rèn)為最終的標(biāo)準(zhǔn)文檔,這些所有的文檔都在網(wǎng)上公開并可以免費(fèi)獲取。2.3.1TCP/IP參考模型的表示

TCP/IP參考模型的體系結(jié)構(gòu)和OSI參考模型并不是完全匹配,并且對于TCP/IP層狀模型的描述也不是非常統(tǒng)一。因?yàn)楹蚈SI參考模型不一樣,TCP/IP的模型實(shí)際上并不存在,但由于其協(xié)議被廣泛使用,因而形成了事實(shí)上的標(biāo)準(zhǔn)。將這些協(xié)議按功能層進(jìn)行組織,就形成了與OSI參考模型類似的TCP/IP層狀參考模型。

TCP/IP參考模型的一種劃分是將網(wǎng)絡(luò)體系結(jié)構(gòu)分為五層,每一層結(jié)構(gòu)都代表了同層的對等實(shí)體間的通信協(xié)議結(jié)構(gòu)。TCP/IP參考模型中沒有對協(xié)議層間的接口進(jìn)行詳細(xì)設(shè)定。圖2-2是按五層體系結(jié)構(gòu)模型對TCP/IP的一種劃分方式。圖2-2TCP/IP參考模型2.3.2TCP/IP參考模型的協(xié)議層分析

參照圖2-2給出的TCP/IP參考模型,以下將按由低到高的次序?qū)Ω鲗拥墓δ芎秃x進(jìn)行詳細(xì)的介紹。

1.物理層

物理層主要是指網(wǎng)絡(luò)接口設(shè)備,它是TCP/IP模型中的最底層,主要負(fù)責(zé)將上層協(xié)議的數(shù)據(jù)幀通過網(wǎng)絡(luò)設(shè)備發(fā)送到網(wǎng)絡(luò),或者接收從網(wǎng)絡(luò)到達(dá)的數(shù)據(jù)幀,再轉(zhuǎn)交給上一層協(xié)議進(jìn)行處理。

2.?dāng)?shù)據(jù)鏈路層

TCP/IP模型中的數(shù)據(jù)鏈路層也稱為網(wǎng)絡(luò)接口層(NetworkInterface),它結(jié)合了OSI參考模型中的物理層和數(shù)據(jù)鏈路層的功能,定義了各種介質(zhì)的物理連接特性,及其在不同介質(zhì)上的信息幀格式。數(shù)據(jù)鏈路層涵蓋了各種物理介質(zhì)層網(wǎng)絡(luò)技術(shù),可以支持任何一種數(shù)據(jù)鏈路技術(shù),如以太網(wǎng)、令牌環(huán)、ATM、FDDI、幀中繼等。

3.網(wǎng)絡(luò)層

網(wǎng)絡(luò)層是TCP/IP參考模型中非常重要的協(xié)議層,承擔(dān)了路由和地址處理等核心的功能。在這一層,將實(shí)現(xiàn)主機(jī)之間的分組數(shù)據(jù)獨(dú)立傳送。

在網(wǎng)絡(luò)層上正式地對分組的格式和協(xié)議進(jìn)行了定義,也就是我們常說的IP協(xié)議。在IP協(xié)議的基礎(chǔ)上能夠?qū)崿F(xiàn)將IP分組發(fā)送到任何它所期望去的地方。

網(wǎng)絡(luò)層負(fù)責(zé)提供信息,使得網(wǎng)絡(luò)訪問能夠把幀發(fā)送到本地的目的主機(jī)或路由器。它包括了地址解析協(xié)議(ARP)和反向地址解析協(xié)議(RARP)。網(wǎng)絡(luò)層具有路由能力,使得數(shù)據(jù)可以經(jīng)過互聯(lián)網(wǎng)到達(dá)目的網(wǎng)絡(luò),故這層包括路由選擇協(xié)議(RIP),RIP協(xié)議可以決定如何把數(shù)據(jù)包發(fā)送到目的地。

網(wǎng)絡(luò)層還可以讓主機(jī)交換網(wǎng)絡(luò)本身的信息,實(shí)現(xiàn)這種功能的協(xié)議叫做網(wǎng)際控制報文協(xié)議(ICMP)。本層還有支持組播的網(wǎng)際組管理協(xié)議(IGMP)。

4.傳輸層

傳輸層是計算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)中很重要的一層,它的重要性主要體現(xiàn)在其基本功能是為信源結(jié)點(diǎn)和目的結(jié)點(diǎn)間的通信提供端到端的數(shù)據(jù)傳輸,而通信子網(wǎng)只能提供相鄰結(jié)點(diǎn)之間的點(diǎn)到點(diǎn)傳輸。在這里,通信子網(wǎng)在TCP/IP體系結(jié)構(gòu)中是指IP以下的各層。這種從“點(diǎn)到點(diǎn)”傳輸?shù)健岸说蕉恕眰鬏旙w現(xiàn)了服務(wù)質(zhì)量的一個飛躍。

TCP/IP的傳輸層對應(yīng)于OSI的會話層和傳輸層。它的功能包括:格式化信息流(將數(shù)據(jù)流分段)和提供可靠傳輸。它主要有兩個協(xié)議:傳輸控制協(xié)議(TCP)和用戶數(shù)據(jù)報協(xié)議(UDP)。

TCP協(xié)議是一個面向連接的協(xié)議,它提供有序、無差錯的字節(jié)流傳輸服務(wù)。因?yàn)槭敲嫦蜻B接的方式,因此,TCP傳輸也要經(jīng)過連接建立、數(shù)據(jù)傳輸和拆除連接的過程。

UDP協(xié)議則是一個無連接的協(xié)議。UDP由IP數(shù)據(jù)報直接進(jìn)行傳輸,UDP協(xié)議在接收端不對接收的報文進(jìn)行錯誤檢查,也不反饋報文的確認(rèn)信息,發(fā)送方也沒有數(shù)據(jù)重傳的機(jī)制。因此,它是一種無連接、不可靠的數(shù)據(jù)傳輸服務(wù)。但是UDP傳輸數(shù)據(jù)時,不用創(chuàng)建連接或?qū)B接進(jìn)行維護(hù),因此有較好的處理速度,比較適合一次性的快速數(shù)據(jù)傳輸?shù)膱龊希貏e是在多媒體傳輸中,適用于聲音、圖像等要求較小的延遲而可靠性相對較低的應(yīng)用。

5.應(yīng)用層

應(yīng)用層位于TCP/IP參考模型的最上層,它在傳輸層提供的服務(wù)基礎(chǔ)上開發(fā)了大量的協(xié)議和應(yīng)用程序。幾乎各種不同的TCP/IP模型的實(shí)現(xiàn)都會提供下面這些大家所熟知的網(wǎng)絡(luò)應(yīng)用程序:

·HTTP:超文本傳輸協(xié)議;

·FTP/TFTP:文件/小文件傳輸協(xié)議;

·SMTP:簡單郵件傳輸協(xié)議;

·TELNET:遠(yuǎn)程登錄協(xié)議;

·SNMP:簡單網(wǎng)絡(luò)管理協(xié)議。2.3.3TCP/IP協(xié)議簇

TCP/IP實(shí)際上是指作用于計算機(jī)通信的一組協(xié)議,這組協(xié)議通常被稱為TCP/IP協(xié)議簇。TCP/IP協(xié)議簇包括了地址解析協(xié)議(ARP)、反向地址解析協(xié)議(RARP)、Internet協(xié)議(IP)、網(wǎng)際控制報文協(xié)議(ICMP)、用戶數(shù)據(jù)報協(xié)議(UDP)、傳輸控制協(xié)議(TCP)、超文本傳輸協(xié)議(HTTP)、文件傳輸協(xié)議(FTP)、簡單郵件傳輸協(xié)議(SMTP)、域名服務(wù)協(xié)議(DNS)、遠(yuǎn)程登錄協(xié)議(TELNET)等眾多的協(xié)議。協(xié)議簇的實(shí)現(xiàn)是以協(xié)議報文格式為基礎(chǔ),完成對數(shù)據(jù)的交換和傳輸?shù)摹D2-3是對TCP/IP協(xié)議簇層次結(jié)構(gòu)的簡單描述。

1.IP協(xié)議

在TCP/IP協(xié)議簇中,最重要的協(xié)議層就是網(wǎng)絡(luò)層。從圖2-3可以看出,在TCP/IP模型的網(wǎng)絡(luò)層上,可以實(shí)現(xiàn)對各種不同物理網(wǎng)絡(luò)的支持。網(wǎng)絡(luò)層上對等實(shí)體之間的數(shù)據(jù)交換是以IP數(shù)據(jù)報文為基礎(chǔ),當(dāng)不同物理網(wǎng)絡(luò)的通信結(jié)點(diǎn)進(jìn)行通信時,它們在網(wǎng)絡(luò)層實(shí)現(xiàn)了對數(shù)據(jù)分組的統(tǒng)一IP協(xié)議格式,因此可以實(shí)現(xiàn)數(shù)據(jù)信息的交換。網(wǎng)絡(luò)層的重要功能是實(shí)現(xiàn)IP分組報文的存儲-轉(zhuǎn)發(fā),IP分組報文是獨(dú)立的被處理單位,網(wǎng)絡(luò)層通過對IP分組報文的報頭信息進(jìn)行分析,可以得到IP報文分組的目的地址信息。因此,中間路由結(jié)點(diǎn)可以通過查找IP分組報文目標(biāo)地址路由實(shí)現(xiàn)IP分組報文的下站傳輸線路的選擇,通過這種方式最終將IP分組報文投遞到目標(biāo)地址。圖2-3TCP/IP協(xié)議簇

IP協(xié)議在TCP/IP協(xié)議簇中占有非常重要的地位,正是在IP協(xié)議的基礎(chǔ)上才能夠?qū)崿F(xiàn)Internet的互聯(lián)。IP分組報文由報頭信息部分和正文部分組成,圖2-4是IP分組報文的格式信息。圖2-4IP報文格式

(1)版本:表示此報文采用哪種版本的協(xié)議進(jìn)行解析,這里只有Ipv4和Ipv6兩種。

(2)首部長度:指的是首部占32比特的數(shù)目,包括任何選項(xiàng)。由于它是一個4比特字段,因此首部最長為64個字節(jié)。普通IP數(shù)據(jù)報(沒有任何選擇項(xiàng))字段的值是5。

(3)服務(wù)類型(TOS):包括一個3比特的優(yōu)先權(quán)子字段(現(xiàn)在已被忽略)、4比特的TOS子字段和1比特未用位(此位必須置0)。4比特的TOS分別代表最小時延、最大吞吐量、最高可靠性和最小費(fèi)用。這4比特中通常只有一位置1,如果這4比特均為0,那么就意味著是一般服務(wù)。

(4)總長度:指整個IP數(shù)據(jù)報的長度,以字節(jié)為單位。利用首部長度字段和總長度字段,就可以知道IP數(shù)據(jù)報中數(shù)據(jù)內(nèi)容的起始位置和長度。由于該字段長16比特,所以IP數(shù)據(jù)報最長可達(dá)65?535字節(jié)。

(5)標(biāo)識:唯一標(biāo)識一個數(shù)據(jù)報。如果數(shù)據(jù)報需要分段,則每個分段的標(biāo)識符都一樣。當(dāng)目的主機(jī)收到具有相同標(biāo)識符的數(shù)據(jù)報分段時,認(rèn)為它們來自同一個完整的數(shù)據(jù)報,并據(jù)此對其進(jìn)行重組工作。

(6)標(biāo)志:其長度為3位,其中最高位未定義,設(shè)定為0,其余兩位分別是“不可分段位”(DF)和“更多分段位”(MF),用來控制IP數(shù)據(jù)報的分段情況,其位的具體含義為:未定義位設(shè)定為0;DF位,0:可分段,1:不可分段;MF位,0:最后分段,1:更多分段。

(7)偏移量:其長度為13位,當(dāng)數(shù)據(jù)報進(jìn)行分段時,以8個字節(jié)為單位,指出該分段的第一個數(shù)據(jù)字在原始數(shù)據(jù)報中的偏移位置。

(8)生存時間:用于設(shè)置數(shù)據(jù)報可以經(jīng)過的最多路由器數(shù),它指定了數(shù)據(jù)報的生存時間。生存時間字段的初始值由源主機(jī)設(shè)置(通常為32或64),一旦經(jīng)過一個處理它的路由器,它的值就減去1。當(dāng)該字段的值為0時,數(shù)據(jù)報就被丟棄,并發(fā)送ICMP報文通知源主機(jī)。

(9)傳輸層協(xié)議類型:其長度為8位,指明接收該數(shù)據(jù)報的高層協(xié)議,例如,1表示ICMP報文,6表示TCP報文,17表示UDP報文。

(10)IP頭校驗(yàn)和:其長度為16位,用于報頭的校驗(yàn),以保證IP報頭的完整性。

(11)源IP地址和目的IP地址:其長度均為32位,指明發(fā)送該數(shù)據(jù)報的源主機(jī)的IP地址和接收該數(shù)據(jù)報的目的主機(jī)的IP地址。

(12)任選項(xiàng):是數(shù)據(jù)報中的一個可變長的可選信息。目前,這些任選項(xiàng)定義如下:

·安全和處理限制(用于軍事領(lǐng)域,詳細(xì)內(nèi)容參見?RFC1108)。

·記錄路徑(讓每個路由器都記下它的IP地址)。

·時間戳(讓每個路由器都記下它的IP地址和時間)。

·寬松的源站選路(為數(shù)據(jù)報指定一系列必須經(jīng)過的IP地址)。

·嚴(yán)格的源站選路(與寬松的源站選路類似,但是要求只能經(jīng)過這些指定的地址,不能經(jīng)過其他的地址)。

IP地址可以將不同的物理地址統(tǒng)一起來,但這只是一種現(xiàn)象,其真正的工作是在各種物理網(wǎng)絡(luò)技術(shù)上覆蓋了一層軟件(IP協(xié)議及下面要談到的ARP、RARP協(xié)議),將物理地址隱藏起來。IP層以上各層使用的都是統(tǒng)一的IP地址格式,但事實(shí)上對于各種物理地址并不做任何改動,在物理層內(nèi)部,依然要使用各自原來的物理地址。這樣,Internet中存在兩種地址(IP和物理地址),二者之間必須建立映射關(guān)系,從而達(dá)到相互轉(zhuǎn)換的目的。

2.TCP協(xié)議

在對上述的IP協(xié)議進(jìn)行分析時,我們所講的網(wǎng)絡(luò)層是為更上層協(xié)議提供數(shù)據(jù)傳輸服務(wù)的。網(wǎng)絡(luò)層可以為上層的傳輸層提供兩種不同的服務(wù)類型:無連接的用戶數(shù)據(jù)報服務(wù)UDP和面向連接的傳輸控制服務(wù)TCP。其中,TCP是網(wǎng)絡(luò)層提供的有效的和可靠的面向連接服務(wù)。在IP分組報文中,提供TCP服務(wù)報文的協(xié)議字段標(biāo)記為TCP協(xié)議。

1)?TCP數(shù)據(jù)格式

TCP數(shù)據(jù)格式如圖2-5所示。

(1)源端口號和目的端口號:標(biāo)識接收端和發(fā)送端的應(yīng)用進(jìn)程。這兩個值加上IP首部中的源IP地址和目的IP地址唯一地確定一個TCP連接。

(2)序號:所發(fā)送的數(shù)據(jù)的第一個字節(jié)的序號,用以標(biāo)識從TCP發(fā)端向TCP收端發(fā)送的數(shù)據(jù)字節(jié)流。

(3)確認(rèn)序號:期望收到的下一個消息第一個字節(jié)的序號,即確認(rèn)端所期望接收的下一個序號。只有在標(biāo)識字段中的確認(rèn)位設(shè)置為1時,此序號才有效。

(4)首部長度:以32比特為計算單位的TCP段首部的長度。圖2-5TCP數(shù)據(jù)格式

(5)標(biāo)識位:有以下六個標(biāo)識(下面說明的含義是指設(shè)置為1時的意義,為0時的意義相反)。

·緊急位(URG):緊急指針有效。

·確認(rèn)位(ACK):表示確認(rèn)序號字段有意義。

·急迫位(PSH):表示請求接收端的傳輸實(shí)體盡快將報文字段交付應(yīng)用層。

·重建位(RST):表示出現(xiàn)嚴(yán)重差錯,必須重建連接。

·同步位(SYN):SYN=1,ACK=0,表示連接請求消息;SYN=1,ACK=1,表示同意建立連接消息。

·終止位(FIN):表示數(shù)據(jù)已發(fā)送完,要求釋放連接。

(6)窗口大?。夯瑒哟翱趨f(xié)議中的窗口大小。

(7)校驗(yàn)和:對整個TCP首部和TCP數(shù)據(jù)部分的校驗(yàn)。

(8)緊急指針:緊急指針是一個正的偏移量,與序號字段的值相加等于該數(shù)據(jù)的最后一個字節(jié)的序號。

我們已經(jīng)知道,IP協(xié)議以存儲—轉(zhuǎn)發(fā)方式傳輸數(shù)據(jù),這樣的傳輸是不可靠的,那么,TCP協(xié)議是怎樣實(shí)現(xiàn)提供可靠的面向連接的服務(wù)的呢?從前面介紹的知識大家一定都想到了,網(wǎng)絡(luò)層為TCP服務(wù)做了更多的工作,包括建立虛連接,對IP數(shù)據(jù)分組進(jìn)行編號傳輸,以及分組的接收確認(rèn)和差錯控制等。

2)?TCP三次握手機(jī)制

TCP協(xié)議在實(shí)現(xiàn)端到端的連接時使用了三次握手機(jī)制。按一般的想法,連接的建立只需要經(jīng)過客戶端請求(T-CONNECTRequest)、服務(wù)器端指示(T-CONNECTIndication)、服務(wù)器端響應(yīng)(T-CONNECTResponse)、客戶端確認(rèn)(T-CONNECTConfirm)兩次握手四個步驟,如圖2-6所示。圖2-6兩次握手四個步驟假如分組丟失將如何處理呢?通常的做法是使用超時重傳機(jī)制,客戶端發(fā)出一連接請求,同時啟動一個定時器。一旦定時器超時,客戶再次發(fā)出連接請求并再啟動定時器。直到成功建立連接,或重傳次數(shù)到達(dá)一定限度時認(rèn)為連接不可建立而放棄。

最難解決的問題是請求根本沒有丟失,而是在子網(wǎng)中存儲起來了,過一段時間后又突然出現(xiàn)在服務(wù)器端,即所謂的延遲重復(fù)問題。延遲重復(fù)會導(dǎo)致重復(fù)連接和重復(fù)處理,這在很多應(yīng)用系統(tǒng)(如訂票、銀行系統(tǒng))中是絕對不能出現(xiàn)的。三次握手的機(jī)制就是為了消除重復(fù)連接的問題。三次握手方法首先要求對本次連接的所有報文進(jìn)行編號,取一個隨機(jī)值作為初始序號。由于序號域足夠長,可以保證序號循環(huán)一周時使用同一序號的舊報文早已傳輸完畢,網(wǎng)絡(luò)上也就不會出現(xiàn)關(guān)于同一連接、同一序號的兩個不同報文。在三次握手法的第一次中,A機(jī)向B機(jī)發(fā)出連接請求(簡稱CR),其中包含A機(jī)端的初始報文序號(比如X)。第二次,B機(jī)收到CR后,發(fā)回連接確認(rèn)(CC),其中包含B機(jī)端的初始報文序號(比如Y),以及B機(jī)對A機(jī)的確認(rèn)。第三次,A機(jī)向B機(jī)發(fā)送X序號數(shù)據(jù),其中包含對B機(jī)初始序號Y的確認(rèn)。

三次握手機(jī)制如圖2-7所示。圖2-7三次握手機(jī)制示意圖由于A機(jī)在本端對報文進(jìn)行編號,因此它知道哪些序號是過時的。假如B機(jī)收到一個過時連接請求CR(初始序號=X1),并確認(rèn)之。A機(jī)則會判斷出CC(確認(rèn)=X1)是過時的,將發(fā)送一個拒絕報文REJ(確認(rèn)=Y),表示對來自B機(jī)的CC(初始序號=Y,確認(rèn)=X1)的拒絕。于是便不會在舊的連接請求上建立錯誤連接了。

3)?TCP的滑動窗口與流控

在面向連接的傳輸過程中,發(fā)送方每發(fā)出一個分組都需要得到接收方的確認(rèn)。面向連接數(shù)據(jù)傳輸?shù)淖詈唵螀f(xié)議是:每發(fā)一個分組,等待確認(rèn);收到確認(rèn)后再發(fā)下一個分組。這就是簡單停止等待協(xié)議,其最大的缺點(diǎn)是效率太低。

與上述簡單停止等待協(xié)議相對的另一個極端是無確認(rèn)數(shù)據(jù)報傳輸。發(fā)送方可以一味地向網(wǎng)絡(luò)注入數(shù)據(jù),而不管網(wǎng)絡(luò)是否擁塞,對方是否收到。當(dāng)然這種方式的可靠性很難保證。

TCP采用的滑動窗口協(xié)議是對上述兩者的折中處理,它既能充分利用連接所提供的網(wǎng)絡(luò)能力,又能保證連接的可靠性?;瑒哟翱趦?nèi)含一組順序排列的報文序號。在發(fā)送端,窗口內(nèi)的報文序號對應(yīng)的報文是可以連續(xù)發(fā)送的,各報文按序發(fā)送出去,但確認(rèn)不一定按序返回。一旦窗口前面部分報文得到確認(rèn),則窗口向前滑動相應(yīng)位置,落入窗口的后續(xù)報文又可連續(xù)發(fā)送。一個窗口大小為4的發(fā)送滑動窗口如圖2-8所示。其中,報文1、2、3已發(fā)送且確認(rèn);報文4、5已發(fā)送,但至少4未確認(rèn)。假如5先確認(rèn),4后確認(rèn),以后報文未確認(rèn),則窗口一次向前滑動兩個位置。4確認(rèn)之前,窗口是不能滑動的,4確認(rèn)后窗口立即滑動。圖2-8發(fā)送滑動窗口示意圖在接收端,窗口內(nèi)的序號對應(yīng)于允許接收的幀。窗口前的幀是已收到且發(fā)回確認(rèn)的幀,是不允許接收的,窗口后的幀要等待窗口滑動后才能接收。

滑動窗口協(xié)議的一個重要用途是流量控制(流控),網(wǎng)關(guān)和接收端可以通過某種方式(比如ICMP)通知發(fā)送方改變其窗口大小,以限制發(fā)送方報文注入網(wǎng)絡(luò)的速度,達(dá)到流控的目的。

4)?TCP的確認(rèn)與超時重傳

TCP協(xié)議保證數(shù)據(jù)有效性的重要措施是確認(rèn)與重傳機(jī)制。TCP流的特點(diǎn)是無結(jié)構(gòu)的字節(jié)流,流中的數(shù)據(jù)是一個個字節(jié)構(gòu)成的序列,而無任何可供解釋的結(jié)構(gòu),這一特點(diǎn)在TCP的基本傳輸單元——段(segment)格式中體現(xiàn)為段不定長??勺冮LTCP段給確認(rèn)與超時重傳機(jī)制帶來的結(jié)果是所謂的“累計確認(rèn)”。TCP確認(rèn)針對流中的字節(jié),而不是段。接收方確認(rèn)已正確收到的、最長的、連續(xù)的流前部,每個確認(rèn)指出下一個希望接收的字節(jié)(比流前部字節(jié)數(shù)大1的位置)。影響確認(rèn)超時重傳最關(guān)鍵的因素是定時時間片的大小。網(wǎng)間網(wǎng)環(huán)境中,要確定合適的定時時間片是一件相當(dāng)困難的事情。從發(fā)出數(shù)據(jù)到收到確認(rèn)所需的往返時間(RoundTripTime,RTT)呈動態(tài)變化,很難把握。為適應(yīng)上述情況,TCP采用一種適應(yīng)性重傳算法,其大致思想是:TCP監(jiān)視每一條連接的性能,由此推算出合適的時間片,當(dāng)連接性能發(fā)生變化時,TCP隨即改變時間片值。

3.UDP協(xié)議

1)?UDP協(xié)議數(shù)據(jù)格式

UDP協(xié)議數(shù)據(jù)格式如圖2-9所示。圖2-9UDP協(xié)議數(shù)據(jù)格式源端口號和目的端口號:用于標(biāo)識接收端和發(fā)送端的應(yīng)用進(jìn)程。

報文長度:包括UDP報頭和數(shù)據(jù)在內(nèi)的報文長度值,以字節(jié)為單位,最小為8。

校驗(yàn)和:計算對象包括偽協(xié)議頭、UDP報頭和數(shù)據(jù)。校驗(yàn)和為可選字段,如果該字段設(shè)置為0,則表示發(fā)送者沒有為該UDP數(shù)據(jù)報提供校驗(yàn)和。偽協(xié)議頭主要包含源IP地址、目的IP地址、協(xié)議號和UDP報長等來自IP報頭的字段,對其進(jìn)行校驗(yàn)主要用于檢驗(yàn)UDP數(shù)據(jù)報是否正確傳送到了目的地。

2)?UDP的應(yīng)用

UDP協(xié)議建立在IP協(xié)議之上,同IP協(xié)議一樣提供無連接數(shù)據(jù)報傳輸。相對于IP協(xié)議,它唯一增加的功能是提供協(xié)議端口,以保證進(jìn)程通信。

許多基于UDP的應(yīng)用程序在高可靠性、低延遲的局域網(wǎng)上運(yùn)行的很好,而一旦到了通信子網(wǎng)QOS很低的網(wǎng)間網(wǎng)環(huán)境下,就可能根本不能運(yùn)行。原因就在于UDP不可靠,而這些程序本身又沒有做可靠性處理。因此,基于UDP的應(yīng)用程序在不可靠子網(wǎng)上必須自己解決可靠性(諸如報文丟失、重復(fù)、失序和流控等)問題。

既然UDP如此不可靠,為何TCP/IP還要采納它?最主要的原因在于UDP的高效率。在實(shí)際應(yīng)用中,UDP往往面向只需少量報文交互的應(yīng)用,假如為此而建立連接和撤除連接,開銷是相當(dāng)大的。

4.ARP和RARP協(xié)議

1)?ARP協(xié)議

ARP(AddressResolutionProtocol)是一種動態(tài)聯(lián)編的標(biāo)準(zhǔn),用于從IP地址到物理地址的映射。其原理是:主機(jī)A不知道主機(jī)B的MAC地址,發(fā)出一個含有主機(jī)B的IP地址的ARP請求。網(wǎng)內(nèi)所有主機(jī)均收到ARP請求,將其中的IP地址與自己的比較,只有主機(jī)B的相同,向主機(jī)A發(fā)出一個含有自己MAC地址的ARP響應(yīng),這就是所謂的動態(tài)聯(lián)編。主機(jī)A將主機(jī)B的IP及MAC地址對寫入ARPCache,即可通過LAN向主機(jī)B發(fā)數(shù)據(jù)包。Cache是在使用ARP的主機(jī)中保留的一個專用的高速緩存,存放最近獲得的IP-MAC地址聯(lián)編。欲發(fā)送報文時,首先在Cache中查找IP-MAC地址聯(lián)編,找不到再用ARP進(jìn)行地址解析,從而大大地提高了ARP的效率。為進(jìn)一步提高效率,ARP還采用了如下措施:

·?在ARP請求報文中放入信源機(jī)的IP-MAC地址聯(lián)編,以防止信宿機(jī)緊接著為解析信源機(jī)的物理地址再進(jìn)行一次動態(tài)聯(lián)編。

·信源機(jī)在廣播自己的地址聯(lián)編時,網(wǎng)上的所有主機(jī)都可以將它存入自己的高速緩存。

·?新機(jī)入網(wǎng)時,令其主動廣播地址聯(lián)編,以免其他主機(jī)對它運(yùn)行ARP。

在Windows系統(tǒng)下,可使用arp–a命令觀察主機(jī)的ARP緩存表。注意,此表是動態(tài)的,可以使用ping命令多ping幾臺局域網(wǎng)中的其他主機(jī),再使用arp–a命令觀察。

2)?RARP協(xié)議

RARP(ReverseAddressResolutionProtocol),用于從物理地址到IP地址的映射。在網(wǎng)絡(luò)中有一類站點(diǎn)叫無盤機(jī),就是不帶硬盤的計算機(jī)。RARP協(xié)議使無盤機(jī)或沒有IP地址的主機(jī)能從服務(wù)器上獲得自己的IP地址。RARP運(yùn)作需要服務(wù)器上有一個很大的物理地址——IP地址映射數(shù)據(jù)庫,并能夠響應(yīng)客戶端的請求。當(dāng)一個RARPserver收到一個客戶端的請求后,它會在自己的硬件地址——IP地址映射數(shù)據(jù)庫中查找,如果找到了,就向客戶端發(fā)出響應(yīng),響應(yīng)中包含有客戶端的IP地址;如果找不到,則摒棄請求。

3)?ARP/RARP幀格式

ARP只用于解析對方的MAC地址;RARP除用于解析本機(jī)的IP地址外,還可用于解析第三方的IP地址。兩者的幀格式完全相同,如圖2-10所示。圖2-10ARP/RARP幀格式圖2-10中的數(shù)據(jù)以字節(jié)為單位,其各域的意義如下:

(1)硬件類型:指明硬件接口類型,若為以太網(wǎng),則該值為1。

(2)協(xié)議類型:指明發(fā)送者使用ARP獲取物理地址的高層協(xié)議類型(0X0800代表IP協(xié)議)。

(3)硬件地址長度和協(xié)議地址長度:分別指出以后各相應(yīng)域的長度。

(4)操作:指明本報文的類型(“1”為ARP請求,“2”為ARP響應(yīng),“3”為RARP請求,“4”為RARP響應(yīng))。ARP/RARP報文是作為一般數(shù)據(jù)放入數(shù)據(jù)鏈路幀數(shù)據(jù)區(qū)中來傳輸?shù)摹?/p>

5.ICMP協(xié)議

網(wǎng)際控制報文協(xié)議(InternetControlMessageProtocol,?ICMP)是用來提供差錯報告服務(wù)的協(xié)議。ICMP報文要通過IP協(xié)議發(fā)出去,且只向數(shù)據(jù)報的初始源主機(jī)發(fā)送錯誤報告報文。

每個ICMP報文都是作為IP數(shù)據(jù)報的數(shù)據(jù)部分在網(wǎng)絡(luò)中進(jìn)行傳輸?shù)摹F鋱笪母袷饺鐖D2-11所示。圖2-11ICMP報文格式“ICMP報文類型”為1字節(jié),其取值含義如表2-1所示。

6.路由選擇協(xié)議

網(wǎng)絡(luò)中的路由器在收到IP數(shù)據(jù)報時是通過路由表來決定如何向前傳輸各個數(shù)據(jù)報的。一旦在路由器系統(tǒng)中建立起全部正確并一致的路由表,尋徑問題就迎刃而解了,而且該路由表也應(yīng)當(dāng)是動態(tài)的,這樣能夠及時反映網(wǎng)絡(luò)拓?fù)涞淖兓?/p>

Internet的自動路徑獲取機(jī)制由一組協(xié)議來實(shí)現(xiàn),這組協(xié)議主要描述網(wǎng)關(guān)之間的路徑信息交換及獲取路徑信息后如何據(jù)此進(jìn)行路徑更新的機(jī)制,包括用于自治域(AutonomousSystem)(互聯(lián)網(wǎng)由大量自治域組成)內(nèi)部的內(nèi)部網(wǎng)關(guān)協(xié)議(InteriorGatewayProtocol,IGP)和用于自治域之間的外部網(wǎng)關(guān)協(xié)議(ExteriorGatewayProtocol,EGP)。

IGP協(xié)議用于自治域內(nèi)部的路徑信息交換,常用的有RIP協(xié)議和OSPF協(xié)議。RIP協(xié)議是使用最廣泛的IGP協(xié)議之一,是V-D(Vector-Distance,向量-距離算法)算法的實(shí)現(xiàn)。OSPF協(xié)議是S-L(鏈接-狀態(tài))算法的實(shí)現(xiàn),它解決了RIP協(xié)議的一些不足。EGP協(xié)議用于兩個自治域之間路由信息的交換,常用的EGP協(xié)議是邊界網(wǎng)關(guān)協(xié)議(BorderGatewayProtocol,BGP)。

7.應(yīng)用層協(xié)議

應(yīng)用層協(xié)議如前所述,它工作在ICP/IP協(xié)議簇的最高層,表現(xiàn)為應(yīng)用程序。

1)超文本傳輸協(xié)議(HTTP)

HTTP是一種在客戶端與服務(wù)器(Web瀏覽器與Web服務(wù)器)之間進(jìn)行交流的協(xié)議。HTTP是一種無連接協(xié)議,意味著Web瀏覽器和Web服務(wù)器彼此之間不需要建立連接,它們只來回發(fā)送獨(dú)立的消息。

HTTP遵循請求/應(yīng)答模型。Web瀏覽器向Web服務(wù)器發(fā)送請求,服務(wù)器處理該請求并回送適當(dāng)?shù)膽?yīng)答,所有的HTTP連接都被構(gòu)造為一套請求和應(yīng)答。

2)文件傳輸協(xié)議(FTP)

FTP用于把文件傳輸?shù)竭\(yùn)行FTP服務(wù)器的主機(jī)上,或相反方向的傳輸。FTP是基于客戶/服務(wù)器模型而設(shè)計的,客戶和服務(wù)器之間利用TCP建立連接。

與其他客戶/服務(wù)器模型不同的是,F(xiàn)TP客戶與服務(wù)器之間要建立雙重連接,一是控制連接,另一是數(shù)據(jù)連接。建立雙重連接的原因在于:FTP是一個交互式會話系統(tǒng),客戶每次調(diào)用FTP,都將與服務(wù)器建立一個會話,會話以控制連接來維持,直至退出FTP??刂七B接負(fù)責(zé)傳輸控制信息,尤其是客戶命令。利用控制命令,客戶可以向服務(wù)器提出多次請求(一個請求就是一個客戶命令)??蛻裘刻岢鲆粋€請求,服務(wù)器就與客戶建立一個數(shù)據(jù)連接,進(jìn)行實(shí)際的數(shù)據(jù)傳輸。一旦數(shù)據(jù)傳輸結(jié)束,數(shù)據(jù)連接相繼撤銷,但控制連接依然存在,客戶可以繼續(xù)發(fā)出命令,直到客戶鍵入close命令撤銷控制連接。在一個FTP會話中需要建立一個控制連接和若干數(shù)據(jù)連接。建立控制連接的過程大家比較熟悉,F(xiàn)TP服務(wù)器的公認(rèn)端口是21,客戶控制進(jìn)程申請一個隨機(jī)分配的本地端口后可以與服務(wù)器端口21建立一個相關(guān)。數(shù)據(jù)連接的建立就不是那么簡單了。在建立數(shù)據(jù)連接的過程中,客戶控制進(jìn)程反客為主,成為連接的接收者,而服務(wù)器數(shù)據(jù)傳輸進(jìn)程成了連接的請求者。作為一個新的子進(jìn)程,服務(wù)器傳輸進(jìn)程可以申請一個新的端口號建立自己的半相關(guān)連接(一般是利用FTP保留端口20),而它向哪個客戶端口發(fā)送連接請求呢?要知道客戶是沒有公認(rèn)端口的。這時就要用到控制連接。客戶控制進(jìn)程通過控制連接告訴服務(wù)器控制進(jìn)程它的數(shù)據(jù)連接端口,服務(wù)器控制將該端口轉(zhuǎn)告自己的數(shù)據(jù)傳輸進(jìn)程,服務(wù)器數(shù)據(jù)傳輸進(jìn)程便可以利用它與客戶建立數(shù)據(jù)連接。嚴(yán)格的FTP訪問控制要求客戶給出文件所在信宿服務(wù)器上的一個合法賬號(包括注冊名和口令)才能訪問文件,這給使用者帶來很大麻煩。于是FTP提供一種對公共文件的非嚴(yán)格訪問控制,即所謂匿名FTP。

3)遠(yuǎn)程登錄協(xié)議(Telnet)

Telnet使遠(yuǎn)程服務(wù)器提供終端仿真服務(wù)。遠(yuǎn)程登錄的根本目的在于讓用戶訪問遠(yuǎn)程系統(tǒng)的資源就像訪問本地的一樣。

Telnet遠(yuǎn)程登錄的服務(wù)過程分為三個步驟:

第一步,本地用戶在本地終端上對遠(yuǎn)程系統(tǒng)進(jìn)行遠(yuǎn)程登錄。該遠(yuǎn)程登錄實(shí)際上是一個TCP連接。

第二步,將本地終端上的鍵盤輸入逐鍵傳到遠(yuǎn)程服務(wù)器。第三步,將遠(yuǎn)程服務(wù)器的輸出送回本地終端。

在以上過程中,輸入/輸出均對遠(yuǎn)程系統(tǒng)內(nèi)核透明,遠(yuǎn)程登錄服務(wù)本身對用戶也透明,本地用戶好像直接連入遠(yuǎn)程系統(tǒng)。這種透明性是Telnet的重要特點(diǎn),也是Telnet內(nèi)部機(jī)制的重要部分。

4)域名服務(wù)(DNS)

為便于記憶,在Internet網(wǎng)絡(luò)上使用的是主機(jī)名而不是IP地址,它們之間的轉(zhuǎn)換需要使用DNS域名服務(wù)。TCP/IP對于主機(jī)名采用的是一種層次型命名機(jī)制,它能夠適應(yīng)大量而且迅速變化的對象。層次命名是將名字空間分為若干部分,每一部分授權(quán)給某個機(jī)構(gòu)管理,授權(quán)管理機(jī)構(gòu)可將其管轄的名字空間進(jìn)一步劃分,再授權(quán)給若干子機(jī)構(gòu)管理。

在TCP/IP網(wǎng)間網(wǎng)中所實(shí)現(xiàn)的層次型名字管理機(jī)制叫做域名系統(tǒng)(DomainNameSystem)。域名系統(tǒng)的命名機(jī)制叫做域名,例如。要標(biāo)識到某一具體的主機(jī)就需要全域名,全域名是域主機(jī)名加域名,例如,其中www是域主機(jī)名,是域名。在TCP/IP域名系統(tǒng)中,包含一個有效的、可靠的、通用的分布式名字-地址映射系統(tǒng)。TCP/IP名字-地址映射由一組既獨(dú)立又協(xié)作的名字服務(wù)器完成,這組名字服務(wù)器是解析系統(tǒng)的核心。名字服務(wù)器其實(shí)是一個服務(wù)軟件,通常將運(yùn)行名字服務(wù)軟件的機(jī)器稱為名字服務(wù)器。對應(yīng)于域名結(jié)構(gòu),Internet名字服務(wù)器也構(gòu)成一定的層次結(jié)構(gòu),是一種樹狀結(jié)構(gòu)。總的來說,域名解析采用自頂向下的算法,從根服務(wù)器開始直到葉服務(wù)器,在其間的某個結(jié)點(diǎn)上一定能找到所需的名字-地址映射。由于父子結(jié)點(diǎn)的上下管轄關(guān)系,名字解析的過程只需走過一條從樹中某結(jié)點(diǎn)開始到另一結(jié)點(diǎn)的自頂向下的單向路徑,不需要遍歷整棵樹。域名解析的方式有兩種。第一種叫遞歸解析,要求名字服務(wù)器系統(tǒng)一次性完成全部名字-地址映射。第二種叫反復(fù)解析,每次請求一個服務(wù)器,不行就再請求別的服務(wù)器。二者的區(qū)別在于前者將復(fù)雜性和負(fù)擔(dān)交給服務(wù)器軟件,后者交給解析器軟件。顯然遞歸解析方式在名字請求頻繁時性能不好,而反復(fù)解析方式在名字請求不多時性能不好。

域名解析算法圖如圖2-12所示。圖2-12域名解析算法圖逆向域名解析(InverseResolution)又叫逆向映射(InverseMapping),即根據(jù)IP地址解析相應(yīng)的域名。逆向解析的一個明顯的問題是同一IP地址可能對應(yīng)若干域名,另外,沒有任何方法可以不經(jīng)搜索整個服務(wù)器組而找到能解析逆向詢問的服務(wù)器。這是因?yàn)镮P地址與域名服務(wù)器樹型結(jié)構(gòu)無任何關(guān)系。

為解決上述問題,域名系統(tǒng)提供了一種特殊形式的逆向解析,為此,專門構(gòu)造了一個特別域及特別報文,稱為“指針詢問”。在指針詢問中,欲解析的IP地址以一種像域名一樣的可顯示形式表達(dá),后綴以逆向解析域域名“”。例如,IP地址為aaa.bbb.ccc.ddd,其指針詢問表達(dá)方式為。在這兩種表達(dá)方式中,IP地址部分正好相反。

正如IP地址的逆向解析一樣,域名逆向解析也對無盤主機(jī)尤其有用。配合起來,無盤結(jié)點(diǎn)便可通過自己的物理地址求出自己的IP地址,進(jìn)而求出更高級的域名。

5)電子郵件服務(wù)(EMS)

電子郵件是我們最熟悉的網(wǎng)絡(luò)應(yīng)用之一,用戶通過電子郵件可以進(jìn)行信息交互,與現(xiàn)實(shí)中的郵件相似,但更方便快捷。TCP/IP電子郵件系統(tǒng)使用了Spooling緩沖技術(shù),如圖2-13所示。圖2-13電子郵件服務(wù)示意圖用戶發(fā)送郵件時,首先利用用戶界面生成郵件,然后把它傳給發(fā)送郵件Spooling區(qū),整個發(fā)送過程用戶都不必關(guān)心,只需等待關(guān)于發(fā)送結(jié)果的報告就可以了。負(fù)責(zé)發(fā)送郵件的客戶是一個后臺進(jìn)程,它一發(fā)現(xiàn)發(fā)送緩沖區(qū)有郵件待發(fā),立刻將其取出,并把信宿機(jī)名映射成IP地址,然后請求與對方的服務(wù)器建立TCP連接。如果連接成功,便發(fā)送郵件,對方服務(wù)器將接收到的郵件存放在接收郵件郵箱;發(fā)送完后,客戶將相應(yīng)郵件從發(fā)送緩沖區(qū)刪除。假如連接不成功,客戶記下發(fā)送時間??蛻暨M(jìn)程周期性地檢查發(fā)送緩沖區(qū),每當(dāng)它發(fā)現(xiàn)未發(fā)郵件,或用戶傳來一個新郵件,客戶立即著手發(fā)送。當(dāng)發(fā)現(xiàn)某郵件很長時間都發(fā)送不出去時,客戶便將它返回發(fā)送者。

TCP/IP將電子郵件標(biāo)準(zhǔn)分為兩部分:一部分定義郵件的格式,一部分定義郵件在發(fā)送、接收兩端之間的傳輸,例如SMTP協(xié)議和POP3協(xié)議等。

由于TCP/IP協(xié)議簇是在實(shí)踐應(yīng)用中發(fā)展起來的,因此層次的劃分并不像圖2-3中描述的那么規(guī)范。但是,也正是因?yàn)門CP/IP協(xié)議簇來源于實(shí)踐,其實(shí)現(xiàn)考慮了理想模型的實(shí)際實(shí)現(xiàn)問題,所以成為了事實(shí)上的網(wǎng)絡(luò)體系結(jié)構(gòu)的實(shí)現(xiàn)標(biāo)準(zhǔn)。2.3.4IP地址分配

1.IP地址

IP地址標(biāo)識著網(wǎng)絡(luò)中一個系統(tǒng)的位置。我們知道每個IP地址都是由兩部分組成的:網(wǎng)絡(luò)號和主機(jī)號。其中網(wǎng)絡(luò)號標(biāo)識一個物理的網(wǎng)絡(luò),同一個網(wǎng)絡(luò)上所有主機(jī)擁有同一個網(wǎng)絡(luò)號,該號在互聯(lián)網(wǎng)中是唯一的;而主機(jī)號確定網(wǎng)絡(luò)中的一個工作端、服務(wù)器、路由器及其他TCP/IP主機(jī)。對于同一個網(wǎng)絡(luò)號來說,主機(jī)號是唯一的。每個TCP/IP主機(jī)由一個邏輯IP地址確定。

1)網(wǎng)絡(luò)號和主機(jī)號

IP地址有兩種表示形式:二進(jìn)制表示和點(diǎn)分十進(jìn)制表示。每個IP地址的長度為4字節(jié),由四個8位域組成,通常稱之為八位體。八位體由句點(diǎn)(.)分開,由一個0~255之間的十進(jìn)制數(shù)表示。一個IP地址的4個域分別標(biāo)明了網(wǎng)絡(luò)號和主機(jī)號。

2)地址類型

為適應(yīng)不同大小的網(wǎng)絡(luò),Internet定義了五種IP地址類型??梢酝ㄟ^IP地址的前八位來確定地址的類型。具體如下:

A類地址:可以擁有很大數(shù)量的主機(jī),最高位為0,緊跟的7位表示網(wǎng)絡(luò)號,余下的24位表示主機(jī)號,總共允許有126個網(wǎng)絡(luò)。

B類地址:被分配到中等規(guī)模和大規(guī)模的網(wǎng)絡(luò)中,高兩位被置為二進(jìn)制的10,緊跟的14位表示網(wǎng)絡(luò)號,允許有16384個網(wǎng)絡(luò),余下16位表示主機(jī)號。

C類地址:被用于局域網(wǎng),高三位被置為二進(jìn)制的110,緊跟的21位表示網(wǎng)絡(luò)號,允許大約200萬個網(wǎng)絡(luò),余下8位表示主機(jī)號。

D類地址:被用于多路廣播組用戶,高四位被置為1110,余下的位用于標(biāo)明客戶機(jī)所屬的組。

E類地址:一種僅供試驗(yàn)的地址。

3)地址分配指南

在分配網(wǎng)絡(luò)號和主機(jī)號時應(yīng)遵守以下幾條準(zhǔn)則:

(1)網(wǎng)絡(luò)號不能為127。該標(biāo)識號被保留作回路及診斷功能。

(2)不能將網(wǎng)絡(luò)號和主機(jī)號的各位均置1。如果每一位都是1的話,該地址會被解釋為網(wǎng)內(nèi)廣播而不是一個主機(jī)號。

(3)對應(yīng)于上面一條,各位不能均置0,否則該地址被解釋為“就是本網(wǎng)絡(luò)”。

(4)對于本網(wǎng)絡(luò)來說,主機(jī)號應(yīng)該唯一,否則會出現(xiàn)IP地址已分配或有沖突之類的錯誤。

4)分配網(wǎng)絡(luò)號

對于每個網(wǎng)絡(luò)以及廣域連接,必須有唯一的網(wǎng)絡(luò)號,如果網(wǎng)絡(luò)由路由器連接,則每個廣域網(wǎng)絡(luò)都需要唯一的網(wǎng)絡(luò)號。

5)分配主機(jī)號

主機(jī)號用于區(qū)分同一網(wǎng)絡(luò)中不同的主機(jī),并且主機(jī)號應(yīng)該是唯一的。路由器的主機(jī)號要配置成工作站的缺省網(wǎng)關(guān)地址。

6)有效的主機(jī)號

A類:w.0.0.1~w.255.255.254。

B類:w.x.0.1~w.x.255.254。

C類:w.x.y.1~w.x.y.254。

7)子網(wǎng)屏蔽

TCP/IP上的每臺主機(jī)都需要用一個子網(wǎng)屏蔽號。它是一個4字節(jié)的地址,用來封裝或“屏蔽”IP地址的一部分,以區(qū)分網(wǎng)絡(luò)號和主機(jī)號。當(dāng)網(wǎng)絡(luò)還沒有劃分為子網(wǎng)時,可以使用缺省的子網(wǎng)屏蔽;當(dāng)網(wǎng)絡(luò)被劃分為若干個子網(wǎng)時,就要使用自定義的子網(wǎng)屏蔽了。

缺省的子網(wǎng)屏蔽值用于一個還沒有劃分子網(wǎng)的網(wǎng)絡(luò)。即使是在一個單段網(wǎng)絡(luò)上,每臺主機(jī)也都需要這樣的缺省值。它的形式依賴于網(wǎng)絡(luò)的地址類型。在它的4個字節(jié)里,所有對應(yīng)網(wǎng)絡(luò)號的位都置為1,于是每個八位體的十進(jìn)制值都是255;所有對主機(jī)號的位都置為0。例如,C類網(wǎng)地址其相應(yīng)的缺省屏蔽值為。

8)確定數(shù)據(jù)包的目的地址

我們說把屏蔽值和IP地址值作“與”的操作其實(shí)是一個內(nèi)部過程,它用來確定一個數(shù)據(jù)包是傳給本地還是遠(yuǎn)程網(wǎng)絡(luò)上的主機(jī)。其相應(yīng)的操作過程是這樣的:當(dāng)TCP/IP初始化時,主機(jī)的IP地址和子網(wǎng)屏蔽值相“與”,在數(shù)據(jù)包被發(fā)送之前,再把目的地址也和屏蔽值作“與”,這樣如果發(fā)現(xiàn)兩個計算結(jié)果相等,IP協(xié)議就知道數(shù)據(jù)包屬于本地網(wǎng)上的某臺主機(jī);否則數(shù)據(jù)包將被送到缺省網(wǎng)關(guān)上。

注意:“與”操作是將IP地址中的每一位與子網(wǎng)屏蔽碼中相應(yīng)的位邏輯與。

2.子網(wǎng)

1)子網(wǎng)的定義

一個網(wǎng)絡(luò)實(shí)際上可能會有多個物理網(wǎng)段,我們把這些網(wǎng)段稱之為子網(wǎng),其使用的IP地址是由某個網(wǎng)絡(luò)號派生得到的。

將一個網(wǎng)絡(luò)劃分成若干個子網(wǎng),需要使用不同的網(wǎng)絡(luò)號或子網(wǎng)號。通過劃分子網(wǎng),每個單位可以將復(fù)雜的物理網(wǎng)段連接成一個網(wǎng)絡(luò),并且可以完成下列功能:

(1)混合使用多種技術(shù),比如以太網(wǎng)和令牌環(huán)網(wǎng)。

(2)克服當(dāng)前技術(shù)的限制,比如突破每段主機(jī)的最大數(shù)量限制。

(3)通過重定向傳輸和減少廣播等傳輸方式,減輕網(wǎng)絡(luò)的擁擠。

2)子網(wǎng)劃分

在劃分子網(wǎng)之前,一定要先分析一下自己的需求以及將來的規(guī)劃。一般情況下應(yīng)遵循如下準(zhǔn)則:

(1)確定網(wǎng)絡(luò)中的物理段數(shù)量。

(2)基于(1)的需求,定義整個網(wǎng)絡(luò)的子網(wǎng)屏蔽、每個子網(wǎng)唯一的子網(wǎng)號和每個子網(wǎng)的主機(jī)號范圍。

3)子網(wǎng)屏蔽位

在定義一個子網(wǎng)屏蔽之前,確定將來需要的子網(wǎng)數(shù)量及每個子網(wǎng)的主機(jī)數(shù)是必不可少的一步。因?yàn)楫?dāng)更多的位用于子網(wǎng)時,就有更多的可用子網(wǎng),但每個子網(wǎng)中的主機(jī)數(shù)也將減少。將網(wǎng)絡(luò)劃分成若干個子網(wǎng)時,必須要定義好子網(wǎng)屏蔽。下面是定義的步驟:

(1)確定物理網(wǎng)段也就是子網(wǎng)的個數(shù),并將這個數(shù)字轉(zhuǎn)換成二進(jìn)制數(shù)。比如B類地址,分6個子網(wǎng)就是110。

(2)計算物理網(wǎng)段數(shù)(子網(wǎng)數(shù))的二進(jìn)制位數(shù),這里是110,所以需要3位。

(3)以高位順序(從左到右)將這個反碼轉(zhuǎn)換成相應(yīng)的十進(jìn)制值,因?yàn)樾枰?位,就將主機(jī)號前3位作為子網(wǎng)號,這里是11100000,所以相應(yīng)的屏蔽值就是。

4)定義子網(wǎng)號

子網(wǎng)號與子網(wǎng)屏蔽的位數(shù)相同。定義子網(wǎng)號的步驟如下:

(1)列出子網(wǎng)號按由高到低的順序使用的位數(shù)。例如子網(wǎng)屏蔽使用了3位,二進(jìn)制值是11100000。

(2)將最低的一位1轉(zhuǎn)換成十進(jìn)制,用這個值來定義子網(wǎng)的增量。這個例子中是100000,所以增量是32。

(3)用這個增量疊加從0開始的子網(wǎng)號,直到下一個值256。這個例子中就是w.x.32.1~w.x.63.254、w.x.64.1~w.x.95.254等。

5)定義子網(wǎng)中的主機(jī)號

從上面的例子看出,一旦定義了子網(wǎng)號,就表示已經(jīng)確定每個子網(wǎng)的主機(jī)號了。在做每次增量后得出的值即表明了子網(wǎng)中主機(jī)號范圍的起始值。

確定每個子網(wǎng)中的主機(jī)數(shù)目的方法如下:

(1)計算主機(jī)號可用的位數(shù)。例如在B類網(wǎng)中用3位定義了網(wǎng)絡(luò)號,那么余下的13位便定義了主機(jī)號。

(2)將余下的位數(shù)(也就是主機(jī)號)轉(zhuǎn)換為十進(jìn)制,再減去1。例如13位值1111111111111轉(zhuǎn)換為十進(jìn)制就是8191,所以,這個網(wǎng)絡(luò)中每個子網(wǎng)的主機(jī)數(shù)就是8190。

3.IP路由

路由就是選擇一條數(shù)據(jù)包傳輸路徑的過程。當(dāng)TCP/IP主機(jī)發(fā)送IP數(shù)據(jù)包時,便出現(xiàn)了路由,且當(dāng)?shù)竭_(dá)IP路由器時通常還需要再次路由。路由器是從一個物理網(wǎng)向另一個物理網(wǎng)發(fā)送數(shù)據(jù)包的裝置,路由器通常被稱為網(wǎng)關(guān)。對于發(fā)送的主機(jī)和路由器而言,必須決定向哪里轉(zhuǎn)發(fā)數(shù)據(jù)包。在決定路由時,IP層查詢位于內(nèi)存中的路由表。

(1)當(dāng)一個主機(jī)試圖與另一個主機(jī)通信時,IP首先決定目的主機(jī)是一個本地網(wǎng)還是遠(yuǎn)程網(wǎng)。

(2)如果目的主機(jī)是遠(yuǎn)程網(wǎng),IP將查詢路由表來為遠(yuǎn)程主機(jī)或遠(yuǎn)程網(wǎng)選擇一個路由。

(3)若未找到明確的路由,IP用缺省的網(wǎng)關(guān)地址將一個數(shù)據(jù)包轉(zhuǎn)送給另一個路由器。

(4)在該路由器中,路由表再次為遠(yuǎn)程主機(jī)或網(wǎng)絡(luò)查詢路由,若還未找到路由,該數(shù)據(jù)包將發(fā)送到該路由器的缺省網(wǎng)關(guān)地址。

每發(fā)現(xiàn)一條路由,數(shù)據(jù)包被轉(zhuǎn)送下一級路由器,稱為一次“跳步”,并最終發(fā)送至目的主機(jī)。

若未發(fā)現(xiàn)任何一個路由,源主機(jī)將收到一個出錯信息。2.3.5TCP/IP數(shù)據(jù)的封裝和分用

1.TCP/IP數(shù)據(jù)的封裝

TCP/IP數(shù)據(jù)的封裝與OSI參考模型的數(shù)據(jù)傳輸過程類似,數(shù)據(jù)會在協(xié)議棧中分級進(jìn)行傳輸。如圖2-14所示,當(dāng)有用戶數(shù)據(jù)需要發(fā)送時,應(yīng)用程序會在用戶數(shù)據(jù)之前加上應(yīng)用層協(xié)議頭信息HTTP、FTP、TFTP等,然后再將它交到傳輸控制層。圖2-14TCP/IP協(xié)議棧的數(shù)據(jù)封裝傳輸層接到應(yīng)用層的數(shù)據(jù)后,也會在數(shù)據(jù)之前加上傳輸層的協(xié)議TCP/UDP,然后繼續(xù)向下傳輸。網(wǎng)絡(luò)層收到傳輸層的數(shù)據(jù)后將數(shù)據(jù)轉(zhuǎn)換成IP分組的格式,在每片分組上加入IP報頭信息,然后轉(zhuǎn)交到數(shù)據(jù)鏈路層進(jìn)行處理。數(shù)據(jù)鏈路層的工作就是將IP分組轉(zhuǎn)換為物理幀的格式,在網(wǎng)絡(luò)發(fā)送設(shè)備將物理幀發(fā)送到網(wǎng)絡(luò)上。

2.TCP/IP數(shù)據(jù)的分用

數(shù)據(jù)的分用是和數(shù)據(jù)封裝相反的過程。每個協(xié)議層上的對等實(shí)體之間的通信都是相同層的協(xié)議格式。目的主機(jī)在接收到一個物理幀后,會按協(xié)議棧由低到高的方向?qū)?shù)據(jù)進(jìn)行傳遞。傳輸過程中的每層協(xié)議都會對收到的報文信息進(jìn)行檢查,以決定上層協(xié)議中正確的數(shù)據(jù)接收者,并將數(shù)據(jù)轉(zhuǎn)換回接收協(xié)議模塊處理的報文格式。

圖2-15是TCP/IP協(xié)議棧的數(shù)據(jù)分用。圖2-15TCP/IP協(xié)議棧的數(shù)據(jù)分用分用的過程可以用下述的一個典型例子進(jìn)行解釋,在這個例子中,我們將看到傳輸層是如何正確地將數(shù)據(jù)傳送給上層的應(yīng)用進(jìn)程的。

當(dāng)在計算機(jī)上同時進(jìn)行網(wǎng)頁瀏覽和兩個文件傳輸進(jìn)程時,這時就有三個應(yīng)用進(jìn)程:一個HTTP進(jìn)程,兩個FTP進(jìn)程。當(dāng)傳輸層收到從網(wǎng)絡(luò)層傳來的數(shù)據(jù)報后,它要決定把數(shù)據(jù)送交到上面三個接收進(jìn)程中的正確接收者。這時,傳輸層對該數(shù)據(jù)片進(jìn)行分析。而我們知道,最初的源主機(jī)在數(shù)據(jù)發(fā)送時已經(jīng)收集了不同的應(yīng)用進(jìn)程的信息,并將它們封裝在應(yīng)用層的報頭信息中。因此,傳輸層通過對數(shù)據(jù)片的分析就知道該傳送到哪個接收進(jìn)程了。圖2-16是傳輸層的數(shù)據(jù)片的內(nèi)容。圖2-16傳輸層根據(jù)目的端口進(jìn)行分用2.4其他網(wǎng)絡(luò)協(xié)議網(wǎng)絡(luò)協(xié)議是一種特殊的軟件,是計算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)其功能的最基本條件。網(wǎng)絡(luò)協(xié)議的本質(zhì)是規(guī)則,即各種硬件和軟件必須遵循的共同守則。網(wǎng)絡(luò)協(xié)議并不是一套單獨(dú)的軟件,它融合于其他所有的軟件系統(tǒng)中,因此可以說,協(xié)議在網(wǎng)絡(luò)中無所不在。網(wǎng)絡(luò)協(xié)議遍及OSI通信模型的各個層次,有上千種之多。局域網(wǎng)常用的三種通信協(xié)議分別是TCP/IP協(xié)議、NetBEUI協(xié)議和IPX/SPX協(xié)議。

TCP/IP協(xié)議毫無疑問是這三大協(xié)議中最重要的一個,作為互聯(lián)網(wǎng)的基礎(chǔ)協(xié)議,TCP/IP協(xié)議是目前最流行的網(wǎng)絡(luò)協(xié)議,但TCP/IP協(xié)議在局域網(wǎng)中的通信效率并不高,在某種情況下,不如NETBEUI協(xié)議。IPX/SPX協(xié)議是NOVELL公司開發(fā)的專用于NETWARE網(wǎng)絡(luò)中的協(xié)議,但I(xiàn)PX/SPX協(xié)議在局域網(wǎng)絡(luò)中的使用并不是很廣泛。

下面就NetBEUI協(xié)議和IPX/SPX協(xié)議加以詳細(xì)說明。2.4.1NetBEUI協(xié)議

NetBEUI是NetBIOS

Enhanced

User

Interface(NetBIOS

增強(qiáng)型用戶接口)的簡稱。NetBIOS即Network

Basic

Input/Output

System(網(wǎng)絡(luò)基本輸入/輸出系統(tǒng)),它給程序提供了請求低層服務(wù)的統(tǒng)一命令集,這些服務(wù)是管理名稱、執(zhí)行會話和在網(wǎng)絡(luò)結(jié)點(diǎn)之間發(fā)送數(shù)據(jù)報所必需的。

NetBEUI由IBM于1985年發(fā)布,是一種短小精悍、通信效率高且占用內(nèi)存較少的廣播型協(xié)議。NetBEUI在安裝后不需要進(jìn)行設(shè)置,特別適合于在Windows平臺的“網(wǎng)絡(luò)鄰居”中傳送數(shù)據(jù)。在同一個局域網(wǎng)區(qū)段內(nèi),NetBEUI是Windows系列所支持的通信協(xié)議中速度最快的。

NetBEUI是NetBIOS協(xié)議的增強(qiáng)版本,被許多操作系統(tǒng)采用,例如Windows98、Windows2000、Windows

XP等,也是Windows98之前的操作系統(tǒng)的缺省協(xié)議。一臺只安裝了TC

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論