主頁 >  其他 > 計算機網路自頂向下方法(一)——計算機網路和因特網

計算機網路自頂向下方法(一)——計算機網路和因特網

2021-09-06 07:18:12 其他

不要成為理想的巨人,行動的矮子

文章目錄

  • 寫在前面
  • 什么是Internet?
    • 具體構成及描述
    • 什么是Internet: 從服務角度
  • 網路邊緣
    • 網路邊緣:采用網路設施的面向連接服務
    • 網路邊緣:采用基礎設施的無連接服務
  • 網路核心
    • 網路核心:電路交換
      • 電路交換網路中的復用
    • 網路核心:分組交換
      • 分組交換:存盤-轉發
      • 分組交換:排隊延遲和丟失
      • 資料報網路和虛電路網路
    • 分組交換和電路交換的對比
  • 接入網和物理媒體
    • 物理媒體
      • 物理媒體:同軸電纜、光纖
      • 物理媒介:無線鏈路
  • Internet結構和ISP
    • 網路的網路
    • ISP之間的連接
  • 分組延時、丟失和吞吐量
    • 四種分組延時
    • 節點延時
    • 排隊延時
    • Internet的延時和路由
    • 分組丟失
    • 吞吐量
  • 協議層次及服務模型
    • 服務和服務訪問點
    • 服務和協議
    • 資料單元
    • Internet協議堆疊
  • 互聯網歷史

寫在前面

為了更好地學習和掌握《計算機網路》這門課程,打算把自己的學習筆記轉化為博客,以便于更好地復習,也便于大家一起學習與交流,

參考課程:中科大-鄭老師《計算機網路》
參考書籍:《計算機網路自頂向下方法》原書第七版

什么是Internet?

因特網是一個世界范圍的計算機網路,即它是一個互聯了遍及全世界數計算設備的網路,

具體構成及描述

計算設備 : 主機(端系統)、運行的網路應用程式

節點

  • 主機及其上運行的應用程式
  • 路由器、交換機等網路交換設備

例如:手機、平板、電視、游戲機… 這一些設備都稱為主機 ,也可以叫做端系統

: 通信鏈路

  • 接入網鏈路:主機連接到互聯網的鏈路
  • 主干鏈路:路由器間的鏈路

端系統通過通信鏈路(communication link)分組交換機(packet switch)連接到一起, 鏈路的傳輸速率以位元/秒(bit/s, bps)度量,

通信鏈路

  • 光纖、同軸電纜、無線電、衛星
  • 傳輸速率 = 帶寬(bps)

分組交換機 : 轉發分組(packets)

  • 路由器和交換機

端系統通過**因特網服務提供商(Internet Service Provider, ISP)**接入因特網,例如:本地住宅區ISP,公司ISP,大學ISP…

協議 :控制發送、接收訊息, 例如 TCP、IP、HTTP、FTP、PPP都是協議

  • 定義:協議(protocol)定義了在兩個或多個通信物體之間交換的報文的格式和順序,以及報文發送和/或接收一條報文或其他時間所采取的動作,
  • 網路協議
    • 類似人的協議 : “幾點了?”,“我有個問題?”, “你好”(若對面回應,則說明發送成功)
    • 機器之間的協議而非人與人之間的協議
    • Internet中所有的通信行為都受協議制約

什么是Internet: 從服務角度

使用通信設施進行通信的分布式應用:WEB、Voip、email、分布式游戲、電子商務、社交網路…

通信基礎設施為apps提供編程介面(通信服務)

  • 將發送和接收資料的apps與互聯網連接起來
  • 為app應用提供服務選擇,類似于郵政服務
    • 無連接不可靠服務
    • 面向連接的可靠服務

網路邊緣

端系統(主機):

  • 運行應用程式
  • 如Web、email
  • 在“網路的邊緣”

客戶/服務器模式

  • 客戶端向服務器請求、接收服務
  • 如Web瀏覽器/服務器:email客戶端/服務器

**對等(peer-peer)**模式

  • 很少(甚至沒有)專門的服務器
  • 如Gnutella、KnZaA、Emule

網路邊緣:采用網路設施的面向連接服務

目標:在端系統之間傳輸資料

  • 握手:在資料傳輸之前做好準備
    • 類似人類協議中:你好、你好
    • 兩個通信主機之間為連接建立狀態

TCP-傳輸控制協議(Transmission Control Protocol):TCP向它的應用程式提供了面向連接的服務,這種服務包括了應用層報文向目的地的確保傳遞和流量控制(即發送方/接收方速率匹配),TCP也將長報文劃分為短報文,并提供無連接服務,因此當網路擁塞時,源抑制其傳輸速率,

  • Internet上面向連接的服務
  • 可靠地、按順序地傳送資料
    • 確認和重傳
  • 流量控制
    • 發送方不會淹沒接收方
  • 擁塞控制
    • 當網路擁塞時,發送方降低發送速率

網路邊緣:采用基礎設施的無連接服務

目標:在端系統之間傳輸資料

  • 無連接服務

UDP-用戶資料報協議(User Datagram Protocol): UDP協議向它的應用程式提供無連接服務,這是一種不提供不必要服務的服務,沒有可靠性,沒有流量控制,也沒有擁塞控制,

  • 無連接
  • 不可靠資料傳輸
  • 無流量控制
  • 無擁塞控制

使用TCP的應用:HTTP(Web)、FTP(檔案傳送)、Telnet(遠程登錄)、SMTP(email)

使用UDP的應用:流媒體、遠程會議、DNS、Internet電話

網路核心

網路核心:路由器的網狀結構
基本問題:資料怎么通過網路進行傳輸?

  • 電路交換:為每個呼叫預留一條專有電路:如電話網
  • 分組交換:
    • 將要傳送的資料分為一個個單位:分組
    • 將分組從一個路由器傳到響鈴路由器(hop), 一段段最終從源端傳到目標端
    • 每段:采用鏈路的最大傳輸能力(帶寬)

網路核心:電路交換

在電路交換網路中,在端系統間通信會話期間,預留了端系統間沿路徑通信所需要的資源(快取,鏈路傳輸速率),在分組交換網路中,這些資源則不是預留的,

端到端的資源被分配給源端到目標端的呼叫(call)

如上圖中, 每段鏈路有4條線路:

  • 該呼叫采用了上面鏈路的第2個線路,右邊鏈路的第1個線路(piece)
  • 獨享資源:不同享
    • 每個呼叫一旦建立起來就能夠保證性能
  • 如果呼叫沒有資料發送,被分配的資源就會被浪費(no sharing)
  • 通常被傳統電話網路采用

如上圖,每臺主機(例如PC和作業站)都與一臺交換機直接相連,當兩臺主機要通信時,該網路在兩臺主機之間創建一條專用的端到端連接(end-to-end connection),因此,主機A為了向主機B發送報文,網路必須在兩條鏈路的每條上先預留一條電路,

為呼叫預留端-端資源

  • 鏈路帶寬、交換能力
  • 專用資源:不共享
  • 保證性能
  • 要求建立呼叫鏈接

電路交換網路中的復用

網路資源(如帶寬)被分成片

  • 為呼叫分配片

  • 如果某個呼叫沒有資料,則其資源片處于空閑狀態(不共享)

  • 將帶寬分成片

    • 頻分(Frequency-division multiplexing, FDM)
    • 時分(Time-division multiplexing, TDM)
    • 波分(Wave-division multiplexing)

電路交換:FDM與TDM

計算舉例

電路交換不適合計算機之間的通信

  • 連接建立時間長
  • 計算機之間的通信有突發性,如果使用線路交換,則浪費的片較多
    • 即使這個呼叫沒有資料傳遞,其所占據的片也不能夠被別的呼叫使用

網路核心:分組交換

在各種網路應用中,端系統彼此交換報文(message)

為了從源端系統向目的端系統發送一個報文,源將長報文劃分為較小的資料塊,稱之為分組(packet)

以分組為單位存盤-轉發方式

  • 網路帶寬資源不再分為一個個片,傳輸時使用全部帶寬
  • 主機之間傳輸的資料被分為一個個分組

資源共享,按需使用:

  • 存盤-轉發:分組每次移動一跳(hop)
    • 在轉發之前,節點必須收到整個分組
    • 延遲比線路交換要大
    • 排隊時間

分組交換:存盤-轉發

被傳輸到下一個鏈路之前,整個分組必須到達路由器:存盤-轉發

一個速率為R bps的鏈路,一個長度為L bits的分組的存盤轉發延時:L/R s

考慮一般的情況:通過由N條速率均為R的鏈路組成的路徑(所以,在源和目的地之間有N-1臺路由器),從源到目的地發送一個分組,那么端到端的時延是: d t e x t 端 到 端 = N L R d_text{端到端} = N\frac{L}{R} dt?ext=NRL?

Example

L = 7.5 Mbits R = 1.5 Mbps
3次存盤轉發的延時 = 15 s

分組交換:排隊延遲和丟失

排隊和延遲

  • 如果到達速率 > 鏈路的輸出速率
    • 分組將會排隊,等待傳輸
    • 如果路由器的快取用完了,分組將會被拋棄

資料報網路和虛電路網路

分組的存盤轉發一段一段從源端傳到目標端,按照有無網路層的連接,分成:
資料報網路虛電路網路

資料報網路

  • 分組的目的地址決定下一跳
  • 在不同的階段,路由可以改變
  • 類似:問路

資料報(datagram)的作業原理

  • 在通信之前,無須建立起一個連接,有資料就傳輸
  • 每一個分組都獨立路由(路徑不一樣,可能會失序)
  • 路由器根據分組的地址進行路由

虛電路網路

  • 每個分組都帶標簽(虛電路標識VCID), 標簽決定下一跳
  • 在呼叫建立時決定路徑,在整個呼叫中路徑保存不變
  • 路由器維持每個呼叫的狀態資訊

分組交換和電路交換的對比

同樣的網路資源,分組交換允許更多用戶使用網路!

Example:

假設多個用戶共享一條1Mbps鏈路,再假定每個用戶活躍周期是變化的,某用戶時而100kbps恒定速率產生資料,時而靜止——這時用戶不產生資料,假設該用戶僅有10%時間活躍,
對于電路交換,能支持10(=1Mbps/100kbps)個并發的用戶,
對于
分組交換
,假如有35個用戶,有>=10個用戶活動的概率為0.0004
計算公式: 1 ? ∑ n = 0 9 ( 35 a ) p n ( 1 ? p ) 35 ? n 1 - \sum\limits_{n = 0}^9 \begin{pmatrix} 35\\ a\end{pmatrix} p^n(1-p)^{35-n} 1?n=09?(35a?)pn(1?p)35?n

分組交換是“突發資料的勝利者”

  • 適合于突發式資料傳輸
    • 資源共享
    • 簡單,不必建立呼叫
  • 過度使用會造成網路擁塞:分組延時和丟失
    • 對可靠地資料傳輸需要協議來約束:擁塞控制
  • 怎樣提供類似電路交換的服務
    • 保證音頻/視頻應用需要的帶寬

接入網和物理媒體

Q:怎樣將端系統和邊緣路由器連接?

  • 住宅接入網路
  • 單位接入網路(學校、公司)
  • 無線接入網路

家庭接入:DSL、電纜、FTTH、撥號和衛星
寬帶住在接入有兩種最流行的型別:數字用戶線(Digital Subscriber Line, DSL)電纜,住宅通常從提供本地電話接入的本地電話公司處獲得DSL因特網接入,

modem

  • 將上網資料調制加載音頻信號上,在電話線上傳輸,在局端將其中的資料解調出來;反之亦然,
    • 調頻
    • 調幅
    • 調相位
    • 綜合調制
  • 撥號調制解調器
    • 56kbps的速率直接接入路由器(通常更低)
    • 不能同時上網和打電話:不能總是在線

DSL:

  • 采用現存的到交換局DSLAM的電話線
  • DSL線路上的資料被傳到互聯網
  • DSL線路上的語音被傳到電話網
  • < 2.5 Mbps上行傳輸速率(typically < 1 Mbps)
  • < 24 Mbps下行傳輸速率(typically < 10 Mbps)

線纜網路:

有線電視信號線纜雙向改造
FDM: 在不同頻段傳輸不同信道的資料,數字電視和上網資料(上下行)

  • HFC: hybrid fiber coax (混合光纖同軸系統)
  • 非對稱: 最高30Mbps的下行傳輸速率, 2 Mbps 上行傳輸
    速率
  • 線纜和光纖網路將個家庭用戶接入到ISP 路由器
  • 各用戶共享到線纜頭端的接入網路
    • 與DSL不同, DSL每個用戶一個專用線路到CO(central
      office)

企業接入網路(Ethernet)
以太網(Ethernet)是目前為止,公司、大學和家庭網路中最為流行的接入技術,

  • 經常被企業或者大學等機構采用
    • 10Mbps, 100Mbps, 1Gbps, 10Gbps傳輸率
    • 現在,端系統經常直接接到以太網路交換機上

無線接入網路

  • 各無線端系統共享無線接入網路(端系統到無線路由器)
    • 通過基站或者叫接入點

物理媒體

對于每個發射器-接收器對,通過跨越一種**物理媒體(physical medium)**傳播電磁波或光脈沖來發送該位元,

  • Bit: 在發送-接受對間傳播
  • 物理鏈路:連接每個發送-接收對之間的物理媒體
  • 引導型媒體:
    • 信號沿著固體媒介被導引:同軸電纜、光纖、雙絞線
  • 非導引型媒體:
    • 開放的空間傳播電磁波或者光信號,在電磁或者光信號中承載數字資料,
  • 雙絞線(TP)
    • 兩根絕緣銅導線擰合
      • 5類:100Mbps以太網Gbps千兆位以太網
      • 6類:10Gbps萬兆以太網

物理媒體:同軸電纜、光纖

同軸電纜

  • 兩根同軸的銅導線
  • 雙向
  • 基帶電纜:
    • 電纜上一個單個信道
    • Ethernet
  • 寬帶電纜:
    • 電纜上有多個信道
    • HFC

光纖和光纜

  • 光脈沖,每個脈沖表示一個
    bit,在玻璃纖維中傳輸
  • 高速:
    • 點到點的高速傳輸(如10 Gps-100Gbps傳輸速率)
  • 低誤碼率:在兩個中繼器之間可以有很長的距離,不受電磁噪聲的干擾
  • 安全

物理媒介:無線鏈路

  • 開放空間傳輸電磁波,攜帶要傳輸的資料
  • 無需物理“線纜”
  • 雙向
  • 傳播環境效應:
    • 反射
    • 吸收
    • 干擾

無線鏈路型別

  • 地面微波
    • e.g. up to 45 Mbps channels
  • LAN (e.g., WiFi)
    • 11Mbps, 54 Mbps,540Mbps…
  • wide-area (e.g., 蜂窩)
    • 3G cellular: ~ 幾Mbps
    • 4G 10Mbps
    • 5G 數Gbps
  • 衛星
    • 每個信道Kbps 到45Mbps (或者多個聚集信道)
    • 270 msec端到端延遲
    • 同步靜止衛星和低軌衛星

Internet結構和ISP

網路的網路

  • 端系統通過**接入ISP(Internet Service Providers)**連接到互聯網
    • 住宅,公司和大學的ISP
  • 接入ISP相應的必須是互聯的
    • 因此任何兩個端系統可相互發送分組到對方
  • 導致的“網路的網路”非常復雜
    • 發展和演化是通過經濟的國家的政策來驅動的
  • 采用漸進方法來描述當前互聯網的結構

如何建立“網路的網路”: 將每個接入ISP都連接到全域ISP(全域范圍內覆寫)?

  • 客戶ISPs和提供者ISPs有經濟合約

  • 但是,如果全域ISP是可行的業務,那會有競爭者有利可圖,一定會有競爭

  • 競爭:但如果全域ISP是有利可為的業務,那會有競爭者;合作:通過ISP之間的合作可以完成業務的擴展,肯定會有互聯,對等互聯的結算關系,

  • 然后業務會細分(全球接入和區域接入),區域網路將出現,用與將接入ISPs連接到全域ISPs,

  • 然后內容**提供商網路(Internet Content Providers,e.g., Google,Microsoft, Akamai)**可能會構建它們自己的網路,將它們的服務、內容更加靠近端用戶,向用戶提供更好的服務,減少自己的運營支出,

  • 在網路的最中心,一些為數不多的充分連接的大范圍網路(分布廣、節點有限、
    但是之間有著多重連接)

    • “tier-1” commercial ISPs (e.g., Level 3, Sprint, AT&T, NTT), 國家或者國際范圍的覆寫,
    • provider network (e.g., Google): 將它們的資料中心接入ISP,方便周邊用戶的訪問;通常私有網路之間用專網繞過第一層ISP和區域ISPs.

總結

  • 松散的層次模型
  • 中心:第一層ISP(如UUNet, BBN/Genuity, Sprint,AT&T)國家/國際覆寫,速率極高,
    • 直接與其他第一層ISP相連
    • 與大量的第二層ISP和其他客戶網路相連
      在這里插入圖片描述

在這里插入圖片描述

  • 第二層ISP: 更小些的(通常是區域性的) ISP

    • 與一個或多個第一層ISPs,也可能與其他第二層ISP
  • 第三層ISP與其他本地ISP

    • 接入網(與端系統最近)
  • 一個分組要經過許多網路
    在這里插入圖片描述

ISP之間的連接

  • POP: 高層ISP面向客戶網路的接入點,涉及費用結算
    • 如一個低層ISP接入多個高層ISP,多宿(multi home)
  • 對等接入:2個ISP對等互接,不涉及費用結算
  • IXP:多個對等ISP互聯互通之處,通常不涉及費用結算
    • 對等接入
  • ICP自己部署專用網路,同時和各級ISP連接

分組延時、丟失和吞吐量

分組丟失和延時是怎樣發生的?
在路由器緩沖區的分組佇列

  • 分組到達鏈路的速率超過了鏈路輸出的能力
  • 分組等待排到隊頭、被傳輸

四種分組延時

節點處理延時:

  • 檢查bit級差錯
  • 檢查分組首部和決定將分組導向何處

排隊延時:

  • 在輸出鏈路上等待傳輸的時間
  • 依賴于路由器的擁塞程度

傳輸延時:

  • R = 鏈路帶寬(bps)
  • L = 分組長度(bits)
  • 將分組發送到鏈路上的時間 = L/R
  • 存盤轉發延時

傳播延時:

  • d = 物理鏈路的長度
  • s = 在媒體上的傳播速度(~ 2 × 1 0 8 m / s e c 2\times 10 ^8 m/sec 2×108m/sec
  • 傳播延時 = d / s

傳輸時延和傳播時延的比較
傳輸時延是路由器推出分組所需要的時間,它是分組長度和鏈路傳輸速率的函式,而與兩臺路由器之間的距離無關,

傳播時延是一個位元從一臺路由器傳播到另一臺路由器所需要的時間,它是兩臺路由器之間距離的函式,

節點延時

d n o d a l = d p r o c + d q u e u e + d t r a n s + d p r o p d_{nodal} = d_{proc} + d_{queue} + d_{trans} + d_{prop} dnodal?=dproc?+dqueue?+dtrans?+dprop?

  • d p r o c d_{proc} dproc? = 處理延時
    • 通常是微妙數量級或更少
  • d q u e u e d_{queue} dqueue? = 排隊延時
    • 取決于擁塞程度
  • d t r a n s d_{trans} dtrans? = 傳輸延時
    • = L/ R, 對低速率的鏈路而言很大(如撥號), 通常為微秒級到毫秒級
  • d p r o p d_{prop} dprop? = 傳播延時
    • 幾毫秒到幾百毫秒

排隊延時

  • R = 鏈路帶寬(bps)
  • L = 分組長度(bits)
  • a = 分組到達對列的平均速率
    流量強度 = La/R
  • La / R ~ 0: 平均排隊延時很少
  • La / R -> 1: 延時變得很大
  • La / R > 1:位元到達佇列的速率超過了從該佇列輸出的速率,平均排隊延時將趨向無窮大!

Internet的延時和路由

Traceroute 診斷程式: 提供從源端,經過路由器,到目的的延時測量,

  • For all i:
  • 沿著目的的路徑,向每個路由器發送3個探測分組
  • 路由器i 將向發送方回傳一個分組
  • 發送方對發送和回復之間間隔計時


分組丟失

  • 鏈路的佇列緩沖區容量有限
  • 當分組到達一個滿的佇列時,該分組將會丟失
  • 丟失的分組可能會被前一個節點或源端系統重
    傳,或根本不重傳

吞吐量

吞吐量: 在源端和目標端之間傳輸的速率(資料量/單位時間)

  • 瞬間吞吐量: 在一個時間點的速率
  • **平均吞吐量: ** 在一個長時間內平均值
    R s R_s Rs?:表示服務器于路由器之間的鏈路速率
    R c R_c Rc?: 表示路由器于客戶端之間的鏈路速率

例如上圖,對于兩鏈路網路,其吞吐量為: min ? R s , R c \min{R_s, R_c} minRs?,Rc?.

瓶頸鏈路: 端到端路徑上,限制端到端吞吐的鏈路,

對于N條鏈路的網路,其吞吐量為 min ? R 1 , R 2 , ? ? , R N \min{R_1, R_2, \cdots, R_N} minR1?,R2?,?,RN?

互聯網場景
對于10個連接(公平地)共享Rbps的瓶頸鏈路

其每個連接上的端到端的吞吐量為 min ? R c , R s , R / 10 \min{R_c, R_s, R/10} minRc?,Rs?,R/10

協議層次及服務模型

網路是一個復雜的系統!

  • 網路功能繁雜:數字信號的物理信號承載、點到點、路由、rdt、進
    程區分、應用等
  • 現實來看,網路的許多構成元素和設備:
    • 主機
    • 路由器
    • 各種媒體的鏈路
    • 應用
    • 協議
    • 硬體, 軟體

Q:如何組織和實作這個復雜的網路功能

層次化方式時延復雜網路功能:

  • 將網路復雜的功能分層功能明確的層次,每一層實作了其中一個或一組功能,功能中有其上層可以使用的功能:服務
  • 本層協議物體相互互動執行本層的協議動作,目的是實作本層功能,通過介面為上層提供更好的服務
  • 在實作本層協議的時候,直接利用了下層所提供的服務
  • 本層的服務:借助下層服務實作的本層協議物體之間互動帶來的新功能(上層可以利用的)+更下層所提供的服務

服務和服務訪問點

服務( Service):低層物體向上層物體提供它們之間的通信的能力

  • 服務用戶(service user)
  • 服務提供者(service provider )
    原語(primitive):上層使用下層服務的的形式,高層使用低層提供的服務,以及低層向高層提供服務都是通過服務訪問原語來進行互動的—形式,

服務訪問點SAP (Services Access Point):上層使用下層提供的服務通過層間的介面—地點;

  • 例子:郵箱
  • 地址(address):下層的一個物體支撐著上層的多個物體,SAP有標志不同上層物體的作用
  • 可以有不同的實作,佇列
  • 例子:傳輸層的SAP: 埠(port)

服務的型別:

面向連接的服務無連接的服務 方式

面向連接的服務( Connection-oriented Service)

  • 連接(Connection):兩個通信物體為進行通信而建立的一種結合
  • 面向連接的服務通信的程序:建立連接,通信,拆除連接
  • 面向連接的服務的例子:網路層的連接被成為虛電路
  • 適用范圍:對于大的資料塊要傳輸; 不適合小的零星報文
  • 特點:保序
  • 服務型別:
    • 可靠的資訊流傳送頁面(可靠的獲得,通過接收方的確認)
    • 可靠的位元組流遠程登錄
    • 不可靠的連接數字化聲音

無連接的服務(Connectionless Service)

  • 無連接服務:兩個對等層物體在通信前不需要建立一個連接,不預留資源;不需要通信雙方都是活躍;(例:寄信)
    • 特點:不可靠、可能重復、可能失序
    • IP分組,資料包;
    • 適用范圍:適合傳送零星資料;
    • 服務型別:
      • 不可靠的資料報電子方式的函件
      • 有確認的資料報掛號信
      • 請求回答資訊查詢

服務和協議

服務與協議的區別

  • 服務(Service):低層物體向上層物體提供它們之間的通信的能力,是通過原語(primitive)來操作的,垂直
  • 協議(protocol) :對等層物體(peer entity)之間在相互通信的程序中,需要遵循的規則的集合,水平

服務與協議的聯系

  • 本層協議的實作要靠下層提供的服務來實作
  • 本層物體通過協議為上層提供更高級的服務

資料單元

PDU:協議資料單元

PDU包含來自上層的資訊和當前層的物體附加的資訊,這個PDU會被傳送到下一較低的層,

Internet協議堆疊

協議堆疊有5個層次組成:物理層、鏈路層、網路層、運輸層、應用層

  • 應用層: 網路應用 (應用層的資訊分組稱為報文)
  • 為人類用戶或者其他應用行程提供網路應用服務
  • FTP, SMTP, HTTP,DNS
  • 運輸層: 主機之間的資料傳輸 (運輸層的分組稱為報文段)
    • 在網路層提供的端到端通信基礎上,細分為行程到行程,將不可靠的通信變成可靠地通信
    • TCP, UDP
  • 網路層: 為資料報從源到目的選擇路由 (網路層的分組稱為資料報(無連接))
    • 主機主機之間的通信,端到端通信,不可靠
    • IP, 路由協議
  • 鏈路層: 相鄰網路節點間的資料傳輸 (鏈路層的分組稱為幀指)
    • 2個相鄰2點的通信,點到點通信,可靠或不可靠
    • 點對對協議PPP, 802.11(wifi), Ethernet
  • 物理層: 在線路上傳送bit

ISO/OSI 參考模型:物理層、鏈路層、網路層、運輸層、會話層、表示層、應用層

  • 表示層: 允許應用解釋傳輸的資料, e.g., 加密,壓縮,機器相關的表示轉換
  • 會話層: 資料交換的同步,檢查點,恢復

封裝和解封裝

互聯網歷史

早期(1960以前)計算機網路

  • 線路交換網路
  • 線路交換的特性使得其不適合計算機之間的通信
    • 線路建立時間過長
    • 獨享方式占用通信資源,不適合突發性很強的計算機之間的通信
    • 可靠性不高:非常不適合軍事通信
  • 三個小組獨立地開展分組交換的研究
    • 1961: Kleinrock(MIT),排隊論,展現了分組交換的有效性
    • 1964: Baran(美國蘭德公司) – 軍用網路上的分組交換
    • 1964:Donald(英國)等,NPL

1961-1972: 早期的分組交換概念

  • 1967: 美國高級研究計劃研究局考慮ARPAnet
    • Kleinrock在MIT的同事
  • 1969: 第一個ARPAnet節點開始作業,UCLA
    • IMP:介面報文處理機
  • 1969年底: 4個節點
  • 1972:
    • ARPAnet 公眾演示
    • 網路控制協議是第一個端系統直接的主機-主機協議
      • NCP協議:相當于傳輸層和網路層在一起,支持應用開發
  • 第一個e-mail 程式(BBN)
  • ARPAnet有15個節點

1972-1980: 專用網路和網路互聯

  • 出現了很多對以后來說重要的網路形式,雨后春筍
    • 1970: ALOHAnet,夏威夷上的微波網路
    • 1973: Metcalfe在博士論文中提出了Ethernet
    • ATM網路
    • ALOHAnet,Telenet,Cyclades法國等
  • 1970后期,網路體系結構的必要性
    • 專用的體系結構: DECnet, SNA, XNA
    • 標準化的體系結構
  • 1974: 網際互聯的Cerf and Kahn 體系結構
  • 1979: ARPAnet的規模在持續增加,體系結構也在醞釀著變化,以支持網路互聯和其他目的(性能)需求
    • 節點數目增加,有200個節點

1980-1990: 體系結構變化, 網路數量激增,應用豐富

  • 1983: TCP/IP部署,標記日
  • NCP分化成2個層次,TCP/IP,從而出現UDP
  • 覆寫式IP解決網路互聯問題
  • 主機設備和網路交換設備分開
  • 1982: smtp e-mail協議定義
  • 1983: DNS 定義,完成域名到IP地址的轉換
  • 1985: ftp 協議定義
  • 1988: TCP擁塞控制
  • 其他網路形式的發展
  • 新的國家級網路: Csnet,BITnet, NSFnet, Minitel
  • 1985年:ISO/OSI提出,時機不對且太繁瑣,
  • 100,000主機連接到網路聯邦

1990, 2000’s: 商業化, Web, 新的應用

  • 1990年代初: NSF對ARPAnet 的訪問網,雙主干,ARPAnet退役
  • 1991: NSF放寬了對NSFnet用于商業目的的限制(1995退役),ASFNET非盈利性機構維護,后面叫Internet
  • UNIX 中TCP/IP的免費捆綁
  • 1990年代初: Web
    • hypertext [Bush 1945, Nelson 1960’s]
    • HTML, HTTP: Berners-Lee
    • 1994: Mosaic (Netscape,and reesen)
    • 1990年代后期: Web的商業化
  • 1990后期– 21世紀:
    • TCP/IP體系結構的包容性,在其上部署應用便捷,出現非常多的應用
    • 新一代殺手級應用(即時訊息,P2P 檔案共享,社交網路等)更進一步促進互聯網的發展
    • 安全問題不斷出現和修訂(互聯網的補丁對策)
    • 2001網路泡沫,使得一些好公司沉淀下來(谷歌,微軟,蘋果,Yahoo,思科)
    • 主干網的速率達到Gbps

2005-現在

  • ~50+億主機:包括智能手機和平板
  • 寬帶接入的快速部署
  • 高速無線接入無處不在:移動互聯時代
    • 4G部署,5G蓄勢待發
    • 帶寬大,終端性能高,價格便宜,應用不斷增多
  • 在線社交網路等新型應用的出現:
    • Facebook: 10億用戶
    • 微信,qq:數十億用戶
  • 內容提供商(Google, Microsoft)創建他們自己的網路
    • 通過自己的專用網路提供對搜索、視頻內容和電子郵件的即刻訪問
  • 電子商務,大學,企業在云中運行他們的服務(eg, Amazon EC2)
  • 體系結構醞釀著大的變化,未來網路蠢蠢欲動

結尾: 這篇博客整理了好久,大概花了接近一天的時間,這篇博客是計算機網路第一章,打算每周學習一章的進度,并記入學習筆記,轉化博客,目前本人已經大四,希望自己能沉浸下來,認認真真學點東西,Fighting,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297764.html

標籤:其他

上一篇:網路安全-埠掃描神器Nmap使用詳解與引數指導

下一篇:漏洞利用一:MSF 漏洞驗證專題

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more