如何定義網(wǎng)絡(luò)協(xié)議,它有哪些意義?
??? 協(xié)議是對(duì)網(wǎng)絡(luò)中設(shè)備以何種方式交換信息的一系列規(guī)定的組合,它對(duì)信息交換的速率、傳輸代碼、代碼結(jié)構(gòu)、傳輸控制步驟、出錯(cuò)控制等許多參數(shù)作出定義。
網(wǎng)絡(luò)是一個(gè)相互聯(lián)結(jié)的大群體,因此要想加入到這個(gè)群體中來,就不能隨心所欲,任由興之所發(fā)。就好象一個(gè)國(guó)家或一個(gè)種族擁有自己的語(yǔ)言,大家都必須通曉并憑借這種語(yǔ)言來對(duì)話一樣,相互聯(lián)結(jié)的網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)也需要擁有共同的“語(yǔ)言”,依據(jù)它所定義的規(guī)則來控制數(shù)據(jù)的傳遞,這種語(yǔ)言便是大家經(jīng)常聽說的 “協(xié)議”。協(xié)議是對(duì)網(wǎng)絡(luò)中設(shè)備以何種方式交換信息的一系列規(guī)定的組合,它對(duì)信息交換的速率、傳輸代碼、代碼結(jié)構(gòu)、傳輸控制步驟、出錯(cuò)控制等許多參數(shù)作出定義。
對(duì)網(wǎng)絡(luò)始入門者來說,紛繁復(fù)雜的協(xié)議常常讓人頭痛不已—這些協(xié)議各起什么作用?它們之間又有什么聯(lián)系?為什么有了A協(xié)議還需要補(bǔ)充B協(xié)議?這些問題搞不清楚,往往成為進(jìn)一步學(xué)習(xí)的障礙。其實(shí)這個(gè)問題應(yīng)該這樣理解:是先有了各種不同語(yǔ)言的民族,后來隨著社會(huì)的發(fā)展,才有了不同民族間交流的需求。網(wǎng)絡(luò)也是這樣,最初人們?cè)谛》秶鷥?nèi)建立網(wǎng)絡(luò),只需要自己作一些簡(jiǎn)單的約定,保證這一有限范圍內(nèi)的用戶遵守就可以了;到后來網(wǎng)絡(luò)規(guī)模越來越大,才考慮到制定更嚴(yán)格的規(guī)章制度即協(xié)議;而為了實(shí)現(xiàn)多個(gè)不同網(wǎng)絡(luò)的互聯(lián),又會(huì)增加不少新協(xié)議作為補(bǔ)充,或成長(zhǎng)為統(tǒng)一的新標(biāo)準(zhǔn)。
數(shù)據(jù)在網(wǎng)絡(luò)中由源傳輸?shù)侥康牡兀枰幌盗械募庸ぬ幚恚瑸榱吮阌诶斫猓覀冞@里不妨打個(gè)比喻。如果我們把數(shù)據(jù)比做巧克力:我們可以把加工巧克力的設(shè)備作為源,而把消費(fèi)者的手作為目的來看看會(huì)有什么樣的傳輸過程。巧克力廠通常會(huì)為每塊巧克力外邊加上一層包裝,然后還會(huì)將若干巧克力裝入一個(gè)巧克力盒,再把幾個(gè)巧克力盒一起裝入一個(gè)外包裝,運(yùn)輸公司還會(huì)把許多箱巧克力裝入一個(gè)集裝箱,到達(dá)消費(fèi)者所在的城市后,又會(huì)由運(yùn)輸商、批發(fā)商、零售商、消費(fèi)者打開不同的包裝層。不同層次的包裝、解包裝需要不同的規(guī)范和設(shè)備,計(jì)算機(jī)網(wǎng)絡(luò)也同樣有不同的封裝、傳輸層面,為此國(guó)際標(biāo)準(zhǔn)化組織ISO于1978 年提出“開放系統(tǒng)互連參考模型”,即著名的OSI(Open System Interconnection)七層模型,它將是我們后續(xù)篇幅中要介紹的內(nèi)容,這里先不展開論述。 網(wǎng)絡(luò)的協(xié)議就是用作這些不同的網(wǎng)絡(luò)層的行為規(guī)范的。網(wǎng)絡(luò)在發(fā)展過程中形成了很多不同的協(xié)議族,每一協(xié)議族都在網(wǎng)絡(luò)的各層對(duì)應(yīng)有相應(yīng)的協(xié)議,其中作為Internet規(guī)范的是ICP/IP協(xié)議族,這也是我們今天要講的。
TCP/IP協(xié)議的定義以及層次、功能
什么是TCP/IP協(xié)議,劃為幾層,各有什么功能?
TCP/IP協(xié)議族包含了很多功能各異的子協(xié)議。為此我們也利用上文所述的分層的方式來剖析它的結(jié)構(gòu)。TCP/IP層次模型共分為四層:應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層。
TCP/IP網(wǎng)絡(luò)協(xié)議
TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協(xié)議/網(wǎng)間網(wǎng)協(xié)議)是目前世界上應(yīng)用最為廣泛的協(xié)議,它的流行與Internet的迅猛發(fā)展密切相關(guān)—TCP/IP最初是為互聯(lián)網(wǎng)的原型ARPANET所設(shè)計(jì)的,目的是提供一整套方便實(shí)用、能應(yīng)用于多種網(wǎng)絡(luò)上的協(xié)議,事實(shí)證明TCP/IP做到了這一點(diǎn),它使網(wǎng)絡(luò)互聯(lián)變得容易起來,并且使越來越多的網(wǎng)絡(luò)加入其中,成為Internet的事實(shí)標(biāo)準(zhǔn)。
* 應(yīng)用層—應(yīng)用層是所有用戶所面向的應(yīng)用程序的統(tǒng)稱。ICP/IP協(xié)議族在這一層面有著很多協(xié)議來支持不同的應(yīng)用,許多大家所熟悉的基于Internet的應(yīng)用的實(shí)現(xiàn)就離不開這些協(xié)議。如我們進(jìn)行萬(wàn)維網(wǎng)(WWW)訪問用到了HTTP協(xié)議、文件傳輸用FTP協(xié)議、電子郵件發(fā)送用SMTP、域名的解析用DNS協(xié)議、 遠(yuǎn)程登錄用Telnet協(xié)議等等,都是屬于TCP/IP應(yīng)用層的;就用戶而言,看到的是由一個(gè)個(gè)軟件所構(gòu)筑的大多為圖形化的操作界面,而實(shí)際后臺(tái)運(yùn)行的便是上述協(xié)議。
* 傳輸層—這一層的的功能主要是提供應(yīng)用程序間的通信,TCP/IP協(xié)議族在這一層的協(xié)議有TCP和UDP。
* 網(wǎng)絡(luò)層—是TCP/IP協(xié)議族中非常關(guān)鍵的一層,主要定義了IP地址格式,從而能夠使得不同應(yīng)用類型的數(shù)據(jù)在Internet上通暢地傳輸,IP協(xié)議就是一個(gè)網(wǎng)絡(luò)層協(xié)議。
* 網(wǎng)絡(luò)接口層—這是TCP/IP軟件的最低層,負(fù)責(zé)接收IP數(shù)據(jù)包并通過網(wǎng)絡(luò)發(fā)送之,或者從網(wǎng)絡(luò)上接收物理幀,抽出IP數(shù)據(jù)報(bào),交給IP層。
1.TCP/UDP協(xié)議
TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)協(xié)議屬于傳輸層協(xié)議。其中TCP提供IP環(huán)境下的數(shù)據(jù)可靠傳輸,它提供的服務(wù)包括數(shù)據(jù)流傳送、可靠性、有效流控、全雙工操作和多路復(fù)用。通過面向連接、端到端和可靠的數(shù)據(jù)包發(fā)送。通俗說,它是事先為所發(fā)送的數(shù)據(jù)開辟出連接好的通道,然后再進(jìn)行數(shù)據(jù)發(fā)送;而UDP則不為IP提供可靠性、流控或差錯(cuò)恢復(fù)功能。一般來說,TCP對(duì)應(yīng)的是可靠性要求高的應(yīng)用,而UDP對(duì)應(yīng)的則是可靠性要求低、傳輸經(jīng)濟(jì)的應(yīng)用。TCP支持的應(yīng)用協(xié)議主要有:Telnet、FTP、SMTP等;UDP支持的應(yīng)用層協(xié)議主要有:NFS(網(wǎng)絡(luò)文件系統(tǒng))、SNMP(簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)、DNS(主域名稱系統(tǒng))、TFTP(通用文件傳輸協(xié)議)等。
IP協(xié)議的定義、IP地址的分類及特點(diǎn)
什么是IP協(xié)議,IP地址如何表示,分為幾類,各有什么特點(diǎn)?
為了便于尋址和層次化地構(gòu)造網(wǎng)絡(luò),IP地址被分為A、B、C、D、E五類,商業(yè)應(yīng)用中只用到A、B、C三類。
IP協(xié)議(Internet Protocol)又稱互聯(lián)網(wǎng)協(xié)議,是支持網(wǎng)間互連的數(shù)據(jù)報(bào)協(xié)議,它與TCP協(xié)議(傳輸控制協(xié)議)一起構(gòu)成了TCP/IP協(xié)議族的核心。它提供網(wǎng)間連接的完善功能, 包括IP數(shù)據(jù)報(bào)規(guī)定互連網(wǎng)絡(luò)范圍內(nèi)的IP地址格式。
Internet 上,為了實(shí)現(xiàn)連接到互聯(lián)網(wǎng)上的結(jié)點(diǎn)之間的通信,必須為每個(gè)結(jié)點(diǎn)(入網(wǎng)的計(jì)算機(jī))分配一個(gè)地址,并且應(yīng)當(dāng)保證這個(gè)地址是全網(wǎng)唯一的,這便是IP地址。
目前的IP地址(IPv4:IP第4版本)由32個(gè)二進(jìn)制位表示,每8位二進(jìn)制數(shù)為一個(gè)整數(shù),中間由小數(shù)點(diǎn)間隔,如159.226.41.98,整個(gè)IP地址空間有4組8位二進(jìn)制數(shù),由表示主機(jī)所在的網(wǎng)絡(luò)的地址(類似部隊(duì)的編號(hào))以及主機(jī)在該網(wǎng)絡(luò)中的標(biāo)識(shí)(如同士兵在該部隊(duì)的編號(hào))共同組成。
為了便于尋址和層次化的構(gòu)造網(wǎng)絡(luò),IP地址被分為A、B、C、D、E五類,商業(yè)應(yīng)用中只用到A、B、C三類。
* A類地址:A類地址的網(wǎng)絡(luò)標(biāo)識(shí)由第一組8位二進(jìn)制數(shù)表示,網(wǎng)絡(luò)中的主機(jī)標(biāo)識(shí)占3組8位二進(jìn)制數(shù),A類地址的特點(diǎn)是網(wǎng)絡(luò)標(biāo)識(shí)的第一位二進(jìn)制數(shù)取值必須為“0”。不難算出,A類地址允許有126個(gè)網(wǎng)段,每個(gè)網(wǎng)絡(luò)大約允許有1670萬(wàn)臺(tái)主機(jī),通常分配給擁有大量主機(jī)的網(wǎng)絡(luò)(如主干網(wǎng))。
* B類地址:B類地址的網(wǎng)絡(luò)標(biāo)識(shí)由前兩組8位二進(jìn)制數(shù)表示,網(wǎng)絡(luò)中的主機(jī)標(biāo)識(shí)占兩組8位二進(jìn)制數(shù),B類地址的特點(diǎn)是網(wǎng)絡(luò)標(biāo)識(shí)的前兩位二進(jìn)制數(shù)取值必須為“10”。B類地址允許有16384個(gè)網(wǎng)段,每個(gè)網(wǎng)絡(luò)允許有65533臺(tái)主機(jī),適用于結(jié)點(diǎn)比較多的網(wǎng)絡(luò)(如區(qū)域網(wǎng))。
* C類地址:C類地址的網(wǎng)絡(luò)標(biāo)識(shí)由前3組8位二進(jìn)制數(shù)表示,網(wǎng)絡(luò)中主機(jī)標(biāo)識(shí)占1組8位二進(jìn)制數(shù),C類地址的特點(diǎn)是網(wǎng)絡(luò)標(biāo)識(shí)的前3位二進(jìn)制數(shù)取值必須為“110”。具有C類地址的網(wǎng)絡(luò)允許有254臺(tái)主機(jī),適用于結(jié)點(diǎn)比較少的網(wǎng)絡(luò)(如校園網(wǎng))。
為了便于記憶,通常習(xí)慣采用4個(gè)十進(jìn)制數(shù)來表示一個(gè)IP地址,十進(jìn)制數(shù)之間采用句點(diǎn)“.”予以分隔。這種IP地址的表示方法也被稱為點(diǎn)分十進(jìn)制法。如以這種方式表示,A類網(wǎng)絡(luò)的IP地址范圍為1.0.0.1-127.255.255.254;B類網(wǎng)絡(luò)的IP地址范圍為:128.1.0.1-191.255.255.254;C類網(wǎng)絡(luò)的IP地址范圍為:192.0.1.1-223.255.255.254。
由于網(wǎng)絡(luò)地址緊張、主機(jī)地址相對(duì)過剩,采取子網(wǎng)掩碼的方式來指定網(wǎng)段號(hào)。
TCP/IP協(xié)議與低層的數(shù)據(jù)鏈路層和物理層無關(guān),這也是TCP/IP的重要特點(diǎn)。正因?yàn)槿绱?,它能廣泛地支持由低兩層協(xié)議構(gòu)成的物理網(wǎng)絡(luò)結(jié)構(gòu)。目前已使用TCP/IP連接成洲際網(wǎng)、全國(guó)網(wǎng)與跨地區(qū)網(wǎng)。