前言
在一段時間里,都很想知道一台電腦怎么跟另一台電腦通信的,我發送一個qq給女朋友,怎么准確的發送過去的,又是怎么接受消息的。
接下來一段時間給大家慢慢分享關於計算機網絡的相關知識。
一、局域網、廣域網和Internet
1.1、局域網
1)概述
局域網(Local Area Network,LAN)是指在某一區域內由多台計算機互聯成的計算機組。一般是方圓幾千米以內。局域網可以實現
文件管理、應用軟件共享、打印機共享、工作組內的日程安排、電子郵件和傳真通信服務等功能。局域網是封閉型的,可以由辦公室內的兩台計算機組成,也可以由一個公司內的上千台計算機組成。
局域網(Local Area Network,LAN)是在一個局部的地理范圍內(如一個學校、工廠和機關內),一般是方圓幾千米以內,將各種計算機,外部設備和數據庫等互相聯接起來組成的計算機通信網。
它可以通過數據通信網或專用數據電路,與遠方的局域網、數據庫或處理中心相連接,構成一個較大范圍的信息處理系統。局域網可以實現文件管理、應用軟件共享、打印機共享、
掃描儀共享、工作組內的日程安排、電子郵件和傳真通信服務等功能。
局域網嚴格意義上是封閉型的。它可以由辦公室內幾台甚至上千上萬台計算機組成。決定局域網的主要技術要素為:網絡拓撲,傳輸介質與介質訪問控制方法。
2)特點
覆蓋范圍較小、自己花錢買設備來組件小型網絡,寬帶固定,自己維護
覆蓋范圍小:相比於整個internet來講,局域網肯定很小了,例如,校園網、企業網,覆蓋范圍也就那么一點
寬帶固定:因為是局域網,范圍小,網絡部擁堵,幾乎就是有多少帶寬,趨於穩定
自己花錢買設備維護:比如以下的是校園網, 三個教室,每個教室都有電腦,每台電腦都連自己教室里的交換機,接入交換機又連到學校里一個更大的匯聚交換機,匯聚交換機連接外面的網絡,
校園內每間教室或者每個用網的地方都是如此來上網的,這樣學校自己花錢買的交換機, 自己來維護自己學校里面的網絡。
1.2、廣域網
1)概述
廣域網(WAN,Wide Area Network)也稱遠程網(long haul network )。通常跨接很大的物理范圍,所覆蓋的范圍從幾十公里到幾千公里,
它能連接多個城市或國家,或橫跨幾個洲並能提供遠距離通信,形成國際性的遠程網絡。
覆蓋的范圍比局域網(LAN)和城域網(MAN)都廣。廣域網的通信子網主要使用分組交換技術。廣域網的通信子網可以利用公用分組交換網、衛星通信網和無線分組交換網,
它將分布在不同地區的局域網或計算機系統互連起來,達到資源共享的目的。如因特網(Internet)是世界范圍內最大的廣域網。
廣域網是由許多交換機組成的,交換機之間采用點到點線路連接,幾乎所有的點到點通信方式都可以用來建立廣域網,
包括租用線路、光纖、微波、衛星信道。而廣域網交換機實際上就是一台計算機,有處理器和輸入/輸出設備進行數據包的收發處理。
2)舉例生活:距離遠 花錢租帶寬
看下圖,我們不管哪個地方上網,都必須聯網,上網能訪問一些網站,跟別人聊天,為什么呢?
因為有一些ISP在幫我們做牽線工作。ISP(Internet Service Provider)因特網服務提供商,電信、聯通、移動等,它們在各個地方埋網線,有自己的主機、 然后我們出錢連入他們的網絡,
就能訪問上網了。有一些網站站點放在電信機房中,我們電信網去訪問,就會比較快,因為通往主機那邊的地址的方式很多,如果電信網訪問放在聯通主機房中的網址,則相對會受到影響。
1.3、Internet
Internet,中文正式譯名為因特網,又叫做國際互聯網。它是由那些使用公用語言互相通信的計算機連接而成的全球網絡。一旦你連接到它的任何一個節點上,就意味着您的計算機已經連入Internet網上了。
Internet目前的用戶已經遍及全球,有超過幾億人在使用Internet,並且它的用戶數還在以等比級數上升。
二、計算機數據之間通信的過程
2.1、路由器的功能(轉發收到的分組)
1)什么是分組?
發送一段數據,將該段數據進行分組發送,而不是一次性全發送完。
2)什么是分組交換?
在網路中,路由器跟路由器之間有一定的距離, 我們計算機要發送一段數據出去,首先將數據分成n個分組,在每個分組前特定的頭部,就成了數據包。
然后將數據包發送到路由器,通過路由器來接受這些數據包,然后一部分一部分的發送,接受,在發送其中一個數據包的過程中,占用了其中的道路,發送完這一個,
就釋放,並不是一直占用該資源,直到傳輸結束,在其接受或發送數據時,也可以接受或發送別的數據,看先接受誰,就先發送誰,其實就是一個隊列。
3)分組交換、電路交換、報文交換的區別?
電路交換:就是電話線, A打給B ,AB之間的電話線就接通了,那么不管他兩說沒說話,說多久,直到掛斷之前,該線都是在占用之中。
報文交換:一次性發送完整的數據,那么該段路就被占用,傳完就釋放,然后接下一步的傳送。直到到達目的地
分組交換:高效、靈活、迅速、可靠。
4)圖解
情景: 1號計算機和2號計算機組成局域網, 主機1、主機2、主機3就相當於電信的主機,網頁都存在在主機中
4.1)ip地址跟MAC地址:
每個計算機都有自己獨特的ip地址,全球獨一無二,跟電話一樣,有些電話是 031-開頭 有些地區是079開頭, 這是分地區的,ip地址也是一樣,
mac地址:每台計算機上都有一個物理地址,也是獨有的。在網卡上面,路由器也有mac地址。
4.2)號計算機如何通過www.baidu.com來訪問到百度的主頁:
每台計算機上都有DNS解析器, 通過DNS將域名解析成對應地址,
路由器每次識別目標ip地址,以此來更改原mac地址和下一步目標的mac地址
4.3)主機如何將網頁數據發回請求的計算機:
第一步:將要返回的數據分成N份
第二步:每次將發送幾份到緩存中,緩存就相當於隊列,先進先出,緩存中發一份發回請求的計算機
第三步:計算機接到第一份,返回一個數據,讓主機發送下一份,然后將緩存中剛才發送的那一份刪除
第四步;如果中途數據丟包,則從緩存中繼續發送剛才不成功那一份,直到接收到請求的計算機發回的確認數據。
三、OSI參考模型
3.1、OSI參考模型概述
OSI(Open Systems Interconnection Reference Model)OSI/RM 簡稱 OSI 開放系統互連參考模型,通俗的將就是我們說的7層協議的體系結構
OSI七層模型的划分:
OSI定義了網絡互連的七層框架(物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層),即ISO開放互連系統參考模型。
每一層實現各自的功能和協議,並完成與相鄰層的接口通信。OSI的服務定義詳細說明了各層所提供的服務。某一層的服務就是該層及其下各層的一種能力,它通過接口提供給更高一層。各層所提供的服務與這些服務是怎么實現的無關。
3.2、各層功能概述
在這里我們簡單描述一下各層的功能,不詳細深究,因為每一層實際都是一個復雜的層。整個過程以公司A和公司B的一次商業報價單發送為例子進行講解。
注意:這七層是在發送數據到網線之前,在計算機中內部就已經經過了這7層,不是在傳輸過程中才慢慢經過這7層的。
1)應用層
將比特組合成字節,再將字節組合成幀,使用鏈路層地址 (以太網使用MAC地址)來訪問介質,並進行差錯檢測。
數據鏈路層又分為2個子層:邏輯鏈路控制子層(LLC)和媒體訪問控制子層(MAC)。
MAC子層處理CSMA/CD算法、數據出錯校驗、成幀等;LLC子層定義了一些字段使上次協議能共享數據鏈路層。 在實際使用中,LLC子層並非必需的。
7)物理層
實際最終信號的傳輸是通過物理層實現的。通過物理介質傳輸比特流。規定了電平、速度和電纜針腳。
常用設備有(各種物理設備)集線器、中繼器、調制解調器、網線、雙絞線、同軸電纜。這些都是物理層的傳輸介質。
例子: 快遞寄送過程中的交通工具,就相當於我們的物理層,例如汽車,火車,飛機,船。
3.3、各層通信的特點
通信特點:對等通信
對等通信,為了使數據分組從源傳送到目的地,源端OSI模型的每一層都必須與目的端的對等層進行通信,這種通信方式稱為對等層通信。在每一層通信過程中,使用本層自己協議進行通信。
四、TCP/IP五層模型
TCP/IP五層協議和OSI的七層協議對應關系如下
在每一層都工作着不同的設備,比如我們常用的交換機就工作在數據鏈路層的,一般的路由器是工作在網絡層的。
在每一層實現的協議也各不同,即每一層的服務也不同.下圖列出了每層主要的協議。其中每層中具體的協議。
五、OSI參考模型和TCP/IP協議
1)OSI參考模型和TCP/IP協議圖
2)發送數據:數據的封裝,各個層次都做了什么事情
3)數據封裝后的樣子
4)接受數據,解封裝
六、計算機上的各種性能指標解釋
速率、帶寬、吞吐量、時延、時延帶寬積、往返時間、利用率
6.1、速率
在計算機與計算機之間通信時傳輸數據位數的速率 單位 bit/s 1 bit也就是 1 位
byte 與 bit 的區別和換算
byte:字節 bit:位
1byte = 8bit
按字節換算
1 k = 1024byte M與byte之間的換算是1024
1M = 1024K
按位換算
1kb = 1000bit
1Mb = 1000Kb
1Gb = 1000Mb
問題一:我們人們常說的我的網絡是8M 為什么下載速度只有1M/S呢?
這里的8M,單位是Mb,也就是按位來算的, 而下載速度是按字節算的 8M = 8000Kb = 8000,000bit = 1000,000 byte ≈1000kb ≈1M
所以一般都市直接除以8,8M的網絡下載速度就是1M/s 100M的網下載速度也就10M/s
6.2、帶寬
接口支持最高的傳輸速率, 也就是我們的帶寬是8M, 帶寬是100M. 就是最高支持一次傳輸8M,自己換算一下,能傳多個位。
6.3、吞吐量
單位時間內通過某個網絡的數據量
簡單的說,就是通過一根網線一次性傳輸的多少個位,最高位就是帶寬,但不是每次傳輸都達到了帶寬值,有可能通過的只有3M,5M,都不一定,通過的量就是我們說的吞吐量
6.4、時延
發送時延、傳播時延、處理時延、排隊時延
發送時延 = 數據塊長度(bit)/信道寬度(bit/s)
過一個特定情景來講解
A----------------路由器---------------------B
A發送0101010101(10bit)數據到B 帶寬是10bit/s A距離B 100米 信號在信道上的傳播速率 10米/s
當從開始發送1到最后一個0從A的網卡中出來結束,發送時延 = 10bit/10bit/s = 1s
傳播時延 = 信道長度(米)/信號在信道上傳播速率(米/秒)
傳播時延:從A發送1開始,到路由器,接受最后一個0結束,這一段也算是傳播時延,路由器到B之間也是 100/10 = 10秒。 在電線上花費的時間是10秒
排隊時延:路由器接受數據,有一個緩沖區,相當於隊列,數據到路由器,先到緩沖區排隊等待路由器一個個接受數據,直到路由器開始接受第一個位,這就是排隊時延,從路由器出來也需要排隊時延
處理時延:路由器開始接受第一個位,這就開始處理數據了,到最后一個位接受完,這之間就是處理時延
6.5、時延帶寬積
其實也就是在信道中有多少位數據在其中,用的是帶寬,也就是最高的數據。
傳播時延 * 帶寬
6.6、往返時間
從A到B,在B返回數據到A,之間用了多少時間
使用命令 ping www.baidu.com 從我們瀏覽器到存放百度地址的主機,然后返回數據到我們計算機需要的時間
覺得不錯的伙伴:點個“推薦”哦!