作者: MA806P
地址: http://www.lxweimin.com/p/fc45e0ff73f4
前言
本篇文章將全面介紹計算機網絡技術基礎知識,對計算機網絡運作流程進行簡單介紹。閱讀本篇文章你將會對計算機網絡的發展、組成、性能指、計算機網絡體系結構,等,這些計算機網絡基礎知識,有大概的了解。
概述
從上世紀90年代以后,以因特網為代表的計算機網絡得到了飛速的發展,網絡改變了我的工作生活的各個方面,加速了全球信息革命的進程。
1994年4月20日我國用64kb/s專線正式連入互聯網,從此我國被國際正式承認為接入因特網的國家。想象一下短短二十多年,互聯網在我國迅速的發展,直到今天我們的生活已經離不開了網絡,大大小小的互聯網公司迅速發展,時時刻刻都在改變著我們的生活方式。
網絡起源
了解一項技術首先你得知道它是怎樣被發明、因為什么被發明、又是怎么被發展壯大起來的呢?多去了解事物的發展歷史、發展規律,你將會看到別人看不到的東西抓住先機,說不定一不小心就改變了世界。好了不扯淡了,直奔主題。
internet(互聯網)是一個通用名詞,泛指由多個計算機網絡互連而成的網絡。
Internet(因特網)是一個專用名詞,是指當前全球最大的、開放的、由眾多網絡相互連接而成的特定計算機網絡,它采用TCP/IP協議族作為通信的規則,其前身是美國的ARPANET。
網絡把許多計算機連接在一起,而因特網則把許多網絡連接在一起。
1969年美國國防部創建的第一個分組交換網ARPANET最初只是一個單個的分組交換網,所有要連接在ARPANET上的主機都直接與就近的結點交換機相連,這顯然是不能滿足通信需求的,于是就開始研究多種網絡互連的技術,這就導致后來的互聯網的出現,一步步發展成現在的因特網。
1983年,TCP/IP協議成為ARPANET上的標準協議,這個使得所有使用TCP/IP協議的計算機都能利用互聯網互相通信,因而人們就把1983年作為因特網的誕生時間。
1985年起,美國國家科學基金會NSF(National Science Foundation)圍繞大型計算機中心建設計算機網絡,即國家科學基金網絡NSFNET。這種計算機網絡覆蓋了全美的主要大學和研究所。
1991年,NSF意識到因特網必將擴大其使用范圍,不用僅僅限于大學和研究機構。世界上許多公式紛紛接入因特網,網絡上的通信量急劇增大,使因特網的容量以滿足不了需要,于是美國政府決定將因特網的主干網轉交給私人公司來經營,并開始對接入英特網的單位收費。
從1993年開始,由美國政府資助的NSFNET逐漸被若干商用的因特網主干網替代,政府機構不在負責因特網的運營,這樣就出現了因特網服務提供者ISP(Internet Service Provider)又被譯為因特網服務提供商。
我國最有名的ISP,中國電信、中國移動、中國聯通。ISP可以從因特網管理機構申請到很多IP地址,同時擁有通信線路以及路由器等聯網設備,向ISP繳納費用,就可以從該ISP獲取所需IP地址的使用權,并可通過該ISP接入到因特網。
因特網的標準化工作
任何事物發展大了,就得有特定的標準,不然就亂了套,有了好的游戲規則,才能玩的好、玩的轉。
制定因特網標準的是因特網協會ISOC(Internet Society),ISOC下面有個技術組織叫因特網體系結構委員會IAB(Internet Architecture Board),負責管理因特網有關協議的開發。
IAB下面有兩個工程部:1.因特網工程部IETF(Internet Engineering Task Force)2.因特網研究部IRTF(Internet Research Task Force)。
所有的因特網標準都是以RFC(Request For Comments請求評論)的形式在網上發表,所有的RFC文檔都可以在網上免費下載,并非所有的RFC文檔都是因特網標準,只有一小部分RFC文檔才能變成因特網標準。
因特網的組成
從工作方式上看,可以劃分為兩大塊:
因特網邊緣部分
1.邊緣部分
- 邊緣部分是由所有連接在因特網上的主機組成,這部分是用戶直接使用的,用來進行通信(傳送數據、音頻或視頻)和資源共享。
在網絡邊緣的端系統中運行的程序之間的通信方式通常可劃分為兩大類:
1>客戶服務器方式(C/S 方式):客戶(client)和服務器(server)都是指
通信中所涉及的兩個應用進程。
2>客戶服務器方式所描述的是進程之間服務和被服務的關系。
客戶是服務的請求方,服務器是服務的提供方。
如下圖:
- 對等方式(P2P 方式):對等連接(peer-to-peer,簡寫為 P2P)是指兩個主機在通信時并不區分哪一個是服務請求方還是服務提供方。
- 只要兩個主機都運行了對等連接軟件(P2P 軟件),它們就可以進行平等的、對等連接通信。
-
對等連接方式從本質上看仍然是使用客戶服務器方式,只是對等連接中的每一個主機既是客戶又同時是服務器。如下圖
2.核心部分
核心部分是由大量網絡和連接這些網絡的路由器組成,這部分是為邊緣部分提供服務的(提供連通性和交換)。
網絡核心部分是因特網中最復雜的部分。網絡中的核心部分要向網絡邊緣中的大量主機提供連通性,使邊緣部分中的任何一個主機都能夠向其他主機通信(即傳送或接收各種形式的數據)。
在網絡核心部分起特殊作用的是路由器(router)。路由器是實現分組交換(packet switching)的關鍵構件,其任務是轉發收到的分組,這是網絡核心部分最重要的功能。
分組交換則采用存儲轉發技術。
通常我們把要發送的整塊數據稱為一個報文,在發送報文之前,先把較長的報文劃分成為一個個更小的等長數據段,在每個數據段前面加上一些必要的控制信息組成的首部后,就構成了一個分組
。
分組
又稱為“包”,而分組的首部也可稱為”包頭“。分組
是在因特網中傳送的數據單元。
計算機網絡的性能
1.速率
比特(bit)是計算機中數據量的單位,也是信息論中使用的信息量的單位。Bit 來源于 binary digit,意思是一個“二進制數字”,因此一個比特就是二進制數字中的一個 1 或 0。
速率即數據率(data rate)或比特率(bit rate)是計算機網絡中最重要的一個性能指標。速率的單位是 b/s,或kb/s, Mb/s, Gb/s 等。速率往往是指額定速率或標稱速率。
2.帶寬
帶寬本來是指信號具有的頻帶寬度,單位是赫(或千赫、兆赫、吉赫等)。現在“帶寬”是數字信道所能傳送的“最高數據率”的同義語,單位是“比特每秒”,或 b/s (bit/s)。 常用的帶寬單位 kb/s、Mb/s、Gb/s。現在人們常用更簡單但很不嚴格的記法來描述網絡的速率,如100M以太網。
3.吞吐量
吞吐量(throughput)表示在單位時間內通過某個網絡(或信道、接口)的數據量。
吞吐量更經常地用于對現實世界中的網絡的一種測量,以便知道實際上到底有多少數據量能夠通過網絡。
吞吐量受網絡的帶寬或網絡的額定速率的限制。
4.傳輸時延
發送數據時,數據塊從結點進入到傳輸媒體所需要的時間。也就是從發送數據幀的第一個比特算起,到該幀的最后一個比特發送完畢所需的時間。
對于高速網絡鏈路,我們提高的僅僅是數據的發送速率而不是比特在鏈路上的傳播速率。 提高鏈路帶寬減小了數據的發送時延。
5.信道利用率
信道利用率指出某信道有百分之幾的時間是被利用的(有數據通過)。完全空閑的信道的利用率是零。
網絡利用率則是全網絡的信道利用率的加權平均值。
信道利用率并非越高越好。
計算機網絡體系結構
相互通信的兩個計算機系統必須高度協調工作才行,而這種“協調”是相當復雜的。 為了設計這樣的復雜的計算機網絡,早在最初的ARPANET設計時提出了分層的方法。“分層”可將龐大而復雜的問題,轉化為若干較小的局部問題,而這些較小的局部問題就比較易于研究和處理。
計算機網絡中的數據交換必須遵守事先約定好的規則。這些規則明確規定了所交換的數據的格式以及有關的同步問題。
網絡協議(network protocol),簡稱為協議,是為進行網絡中的數據交換而建立的規則、標準或約定。
計算機網絡的體系結構(architecture)是計算機網絡的各層及其協議的集合。
- 為了使不同體系結構的計算機網絡都能夠互連,國際標準組織于1977年成立了專門機構研究該問題,提出一個視圖使各種各種計算機在世界范圍內互連成網的標準框架,即著名的開放系統互連基本參考模型OSI,在1983年形成了開放系統互連基本參考模型的正式文件,即ISO 7498國際標準,也就是所謂的七層協議的體系結構。但是OSI只獲得了一些理論研究的成果,但在市場化方面OSI則事與愿違地失敗了。現在得到最廣泛應用的是非國際標準TCP/IP,能夠占領市場就是標準。
OSI的七層協議體系結構的概念清楚,理論也比較完整,但它復雜又不實用。TCP/IP是一個四層的體系結構。在介紹網絡的原理時往往采取折中的辦法,即綜合OSI和TCP/IP的優點采用一種只有五層協議的體系結構,這樣既簡潔又能將概念闡述清楚。
應用層
應用層是體系結構中的最高層,任務是通過應用進程間的交互來完成特定網絡應用,應用層協議定義的是應用進程間通信和交互的規則。這里的進程就是指主機中正在運行的程序。對于不同的網絡應用需要有不同的應用層協議。在因特網中的應用層協議很多,如支持萬維網應用的HTTP協議,支持電子郵件的SMTP協議,支持文件傳送的FTP協議,等等。
運輸層
運輸層的任務就是負責向兩個主機進程之間的通信提供通用的數據傳輸服務。應用進程利用該服務傳送應用層報文。
- 所謂通用,是指并不針對某個特定網絡應用,而是多種應用可以使用同一個運輸層服務。由于一臺主機可以同時運行多個進程,因此運輸層有復用和分用的功能。
1.復用就是多個應用層進程可同時使用下面運輸層的服務。
2.分用與復用相反,是運輸層把收到的信息分別交付上面應用層中的相應進程。
運輸層向它上面的應用層提供通信服務,它屬于面向通信部分的最高層,同時也是用戶功能中的最低層。
運輸層主要使用一下兩種協議:
傳輸控制協議TCP(Transmission Control Protocol),提供面向連接的、可靠的數據傳輸服務,其數據傳輸的單位是報文段。TCP 提供面向連接的服務。TCP 不提供廣播或多播服務。由于 TCP 要提供可靠的、面向連接的傳輸服務,因此不可避免地增加了許多的開銷。這不僅使協議數據單元的首部增大很多,還要占用許多的處理機資源。
用戶數據包協議UDP(User Datagram Protocol),提供無連接的、盡最大努力的數據傳輸服務(不保證數據傳輸的可靠性),其數據傳輸的單位是用戶數據報。UDP在傳送數據之前不需要先建立連接。對方的傳輸層在收到UDP報文后,不需要給出任何確認。雖然 UDP 不提供可靠交付,但在某些情況下 UDP 是一種最有效的工作方式。
網絡層
網絡層負責為分組交換網上的不同主機提供通信服務。在發送數據時,網絡層把運輸層產生的報文段或用戶數據報封裝成分組或包(packet)進行傳送。
在TCP/IP體系中,由于網絡層使用IP協議,因此分組也叫作IP數據報,簡稱數據報(datagram)。
網絡層的另一個任務就是要選擇合適的路由,使源主機運輸層所傳下來的分組能夠通過網絡中路由器找到目的主機。因特網是一個很大的互聯網,它由大量的異構網絡通過路由器相互連接起來。因特網主要的網絡層協議是無連接的網絡協議IP(Internet Protocol)和許多路由選擇協議,因此因特網的網絡層也叫作網際層或IP層。
網絡層向上只提供簡單靈活的、無連接的、盡最大努力交付的數據報服務。網絡在發送分組時不需要先建立連接。每一個分組(即 IP 數據報)獨立發送,與其前后的分組無關(不進行編號)。
網絡層不提供服務質量的承諾。即所傳送的分組可能出錯、丟失、重復和失序(不按序到達終點),當然也不保證分組傳送的時限。
網際協議 IP 是 TCP/IP 體系中兩個最主要的協議之一。與 IP 協議配套使用的還有三個協議:
1.地址解析協議 ARP (Address Resolution Protocol)
2.網際控制報文協議 ICMP (Internet Control Message Protocol)
3.網際組管理協議 IGMP (Internet Group Management Protocol)
想要在全世界范圍內把網絡都互連起來,并且能夠互相通信,會遇到許多問題需要解決。TCP/IP提示在網絡互連上采用的做法是在網絡層(即IP層)采用了標準化協議,但相互連接的網絡則可以是異構的,計算機網絡通過一些路由器進行互連,擦于互連的計算機網絡都使用相同的網際協議IP(Internet Protocol),因此可以把互連以后的計算機網絡看成一個虛擬互連網絡。
虛擬互連網絡也就是邏輯互連網絡,它的意思就是互連起來的各種物理網絡的異構性本來是客觀存在的,但是我們利用 IP 協議就可以使這些性能各異的網絡從用戶看起來好像是一個統一的網絡。使用 IP 協議的虛擬互連網絡可簡稱為 IP 網。
使用虛擬互連網絡的好處是:當互聯網上的主機進行通信時,就好像在一個網絡上通信一樣,而看不見互連的各具體的網絡異構細節。
我們把整個因特網看成為一個單一的、抽象的網絡。IP 地址就是給每個連接在因特網上的主機(或路由器)分配一個在全世界范圍是唯一的標識符。IP地址是一種分等級的地址結構。IP地址管理機構在分配IP地址時只分配網絡號,而主機號則由得到該網絡號的單位自行分配。路由器僅根據目的主機所連接的網絡號來轉發分組。
IPv4是在20世紀70年代末期設計的,因特網經過幾十年的飛速發展,到2011年 IPv4的地址已經耗盡。為解決IP地址耗盡就采用了更大地址空間的新版本的IP,即IPv6。IPv6把地址從IPv4的32位增大到128位。這樣大的地址空間在可預見的將來是不會用完的。
數據鏈路層
數據鏈路層常簡稱為鏈路層。兩臺主機間的數據傳輸,總是在一段段的鏈路上傳送的,這就需要使用專門的鏈路層的協議。
在兩個相鄰結點之間傳送數據時,數據鏈路層將網絡層交下來的IP數據報組裝成幀,在兩個相鄰結點之間的鏈路上傳送幀。每一幀包括數據和必要的控制信息,如同步信息、地址信息、差錯控制等。
在接受數據時,控制信息使接收端能夠知道一個幀從哪個比特開始和到哪個比特結束。這樣,數據鏈路層在收到一個幀后,就可從中提取數據部分,上交給網絡層。
控制信息還使解說段能夠監測到所收到的幀中有無差錯。如發現差錯數據鏈路層就簡單地丟棄這個出了差錯的幀,以免繼續在網絡中傳送下去白白浪費網絡資源。如果需要改正數據在數據鏈路層傳輸時出現的差錯,那么就要采用可靠傳輸協議來糾正出現的差錯。
物理層
在物理層上所傳數據的單位是比特。因此物理層要考慮用多大的電壓代表1或0,以及接收方如何識別出發送方所發送的比特。物理層還要確定連接電纜的插頭應當有多少根引腳以及各條引腳應該如何連接。
在因特網所使用的各種協議中,最重要的和最著名的就是TCP/IP連個協議。現在人們經常提到的TCP/IP并不是一定單指TCP和IP這兩個具體的協議,而往往是表示因特網所使用的整個TCP/IP協議族。
圖中的是應用進程的數據在各層之間的傳遞過程中所經歷的變化。假定主機1的應用進程AP1向主機2的應用進程AP2傳送數據。AP1先將其數據交給主機的應用層,應用層加上必要的控制信息H5就變成了下一層的數據單元。運輸層收到這個數據單元后,加上本層的控制信息H4,再交給網絡層,成為網絡層的數據單元。以此類推,到數據鏈路層后控制信息被分為兩部分,分別加到本層數據單元的首部H2和尾部T2,而第1層物理層由于是比特流的傳送,所以不再加上控制信息。傳送比特流時從搜捕開始傳送。當這一串的比特流離開路由器到達目的站主機2時,就從主機2的第1層按照上面的方式,依次上升到第五層。最后把應用進程AP1發送的數據交給目的站的應用進程AP2。雖然要經過復雜過程才能送到終點的應用進程,但這些復雜的過程對用戶來說,卻都被屏蔽掉了,以至于應用進程AP1覺得好像是直接把數據交給了應用進程AP2.同理,任何兩個同樣的層次之間,也好像如同直接傳遞給對方一樣。這就是所謂的“對等層”之間通信。
總結
本文介紹了計算機網絡的發展、組成、性能指標等。簡單介紹了計算機網絡體系結構,由于篇幅有限只是簡單介紹了一些概念。網絡與我們的生活息息相關,掌握計算機網絡基礎知識、基本原理,能讓我們更明白地使用網絡,更重要的是能學會一些思考、解決一些問題的方法。