計算機網(wǎng)絡(luò)基礎(chǔ)知識和程序
在計算機網(wǎng)絡(luò)的基本概念中,分層次的體系結(jié)構(gòu)是最基本的。
1. 計算機網(wǎng)絡(luò)體系結(jié)構(gòu)的形成
計算機網(wǎng)絡(luò)是個非常復雜的系統(tǒng)。 為了說明這一點,可以設(shè)想一個最簡單的情況: 連接在網(wǎng)絡(luò)上的兩臺計算機要互相傳送文件。
顯然,在這兩臺計算機之間必須有一條傳送數(shù)據(jù)的通路。 但這還遠遠不夠,至少還有以下幾項工作需要去完成:
①發(fā)起通信的計算機必須將數(shù)據(jù)通信的通路激活 (activate)。 所謂激活,就是要發(fā)出一些信令,保證要傳送的計算機數(shù)據(jù)能在通路上正確發(fā)送和接收。
②要告訴網(wǎng)絡(luò)如何識別接收數(shù)據(jù)的計算機。
③發(fā)起通信的計算機必須查明對方計算機是否已開機,并且與網(wǎng)絡(luò)連接正常。
④發(fā)起通信的計算機中的應用程序必須弄清楚,對方計算機中的文件管理程序是否已做好接收文件和存儲文件的準備工作。
⑤若計算機的文件格式不兼容,則至少其中的一臺計算機應完成格式轉(zhuǎn)換功能。
⑥對出現(xiàn)的各種差錯和意外事故,如數(shù)據(jù)傳送錯誤、 重復或丟失,網(wǎng)絡(luò)中某個結(jié)點交換機出故障等,應當有可靠的措施保證對方計算機最終能夠收到正確的文件。 還可以舉出一些要做的其他工作。 由此可見,相互通信的兩個計算機系統(tǒng)必須高度協(xié)調(diào)工作才行,而這種“協(xié)調(diào)” 是相當復雜的。 為了設(shè)計這樣復雜的計算機網(wǎng)絡(luò),早在最初的ARPANET設(shè)計時即提出了分層的方法。 “分層” 可將龐大而復雜的問題轉(zhuǎn)化為若干較小的局部問題,而這些較小的局部問題就比較易于研究和處理。
為了使不同體系結(jié)構(gòu)的計算機網(wǎng)絡(luò)都能互連,國際標準化組織于1977年成立了專門機構(gòu),即著名的開放系統(tǒng)互連基本參考模型OSI/RM (Open System Interconnection Reference Model),簡稱為OSI。 OSI試圖達到一種理想的境界,即全世界的計算機網(wǎng)絡(luò)都遵循這個統(tǒng)一的標準,因而全世界的計算機都能夠按照統(tǒng)一的標準方便地進行互連和傳送數(shù)據(jù)。 在20世紀80年代,許多大公司紛紛表示支持OSI。 然而到了20世紀90年代初,雖然整套的OSI國際標準都已經(jīng)制定出來了,但由于因特網(wǎng)已搶先在全世界覆蓋了相當大的范圍,而與此同時卻幾乎找不到有什么廠家生產(chǎn)出符合OSI標準的商用產(chǎn)品。
2. 具有五層協(xié)議的體系結(jié)構(gòu)
OSI的七層協(xié)議體系結(jié)構(gòu)(圖2-6 (a)) 的概念清楚理論也較完整但它既復雜又不實用。 TCP/IP體系結(jié)構(gòu)則不同,它現(xiàn)在已經(jīng)得到了非常廣泛的應用。 TCP/IP是一個四層的體系結(jié)構(gòu)(圖2-6 (b)),它包含應用層、 運輸層、 網(wǎng)際層和網(wǎng)絡(luò)接口層。 不過從實質(zhì)上講,TCP/IP只有最上面的三層,因為最下面的網(wǎng)絡(luò)接口層基本上和一般的通信鏈路在功能上沒有多大差別,對于計算機網(wǎng)絡(luò)來說,這一層并沒有什么特別新的具體內(nèi)容。 因此,在學習計算機體系結(jié)構(gòu)時,往往采用折中的辦法,即綜合OSI和TCP/IP的優(yōu)點,采用一種只有五層協(xié)議的體系結(jié)構(gòu) (圖2-6 (c))。
圖2-6 計算機網(wǎng)絡(luò)體系結(jié)構(gòu)
(a) OSI的七層協(xié)議 (b) TCP/IP的四層協(xié)議 (c) 五層協(xié)議
現(xiàn)在結(jié)合因特網(wǎng)的情況,自上而下地、 非常簡要地介紹一下各層的主要功能。
(1) 應用層 (applicationlayer)
應用層是體系結(jié)構(gòu)的最高層。 應用層的任務是通過應用進程的交互來完成特定網(wǎng)絡(luò)應用。 應用層協(xié)議定義的是應用進程間通信和交互的規(guī)則。 應用層的協(xié)議很多,如HTTP、FTP、 DNS等。
(2) 運輸層 (transportlayer)
運輸層的任務就是負責向兩個主機中進程之間的通信提供通用的數(shù)據(jù)傳輸服務。 應用進程利用該服務傳送應用層報文。
運輸層兩種主要協(xié)議是:
①傳輸控制協(xié)議 (Transmission Control Protocol,TCP) ——提供面向連接的、 可靠的數(shù)據(jù)傳輸服務,其數(shù)據(jù)傳輸?shù)膯挝皇菆笪亩巍?/p>
②用戶數(shù)據(jù)報協(xié)議 (User Datagram Protocol,UDP) ——提供無連接的、 盡最大努力交付的數(shù)據(jù)傳輸服務,其傳輸?shù)臄?shù)據(jù)單位是用戶數(shù)據(jù)報。
(3) 網(wǎng)絡(luò)層 (networklayer)
網(wǎng)絡(luò)層負責為分組交換網(wǎng)上的不同主機提供通信服務。 在發(fā)送數(shù)據(jù)時,網(wǎng)絡(luò)層把運輸層產(chǎn)生的報文段或用戶數(shù)據(jù)報封裝成分組或包 (packet) 進行傳送。
網(wǎng)絡(luò)層的另一個任務就是要選擇合適的路由,使源主機運輸層所傳下來的分組能夠通過網(wǎng)絡(luò)中的路由器找到目的主機。
(4) 數(shù)據(jù)鏈路層 (datalinklayer)
數(shù)據(jù)鏈路層常簡稱為鏈路層。 數(shù)據(jù)鏈路層將網(wǎng)絡(luò)層交下來的IP數(shù)據(jù)報組裝成幀 (fram ̄ing),在兩個相鄰結(jié)點間的鏈路上傳送幀 (frame)。
(5) 物理層
在物理層上所傳送的單位是比特。 物理層還要確定連接電纜的插頭應當有多少根引腳以及各條引腳應如何連接。
免責聲明:以上內(nèi)容源自網(wǎng)絡(luò),版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請告知,我們將盡快刪除相關(guān)內(nèi)容。