聚精華於一身!華為資深專家歷時十年‘史詩鉅作’網路協議寶典

語言: CN / TW / HK

為什麼要學習網路協議

相信大家都聽過通天塔的故事,上帝為了阻止人類聯合起來,讓人類說不同的語言,人類沒法溝通,達不成“協議",通天塔的計劃就失敗了。

但是千年以後,有一-種叫“程式猿”的物種,“敲”著一種這個群體通用的語言,打造著網際網路世界的“通天塔”。如今的世界,正是因為網際網路,才連線在一起。

還記得當"Hello World!"在顯示器上出現的時候,你激動的心情嗎?

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

如果你是程式設計師,一定看得懂上面這一段文字。 這是每一個程式設計師向計算機世界說“你好,世界”的方式。但是,你不一定知道,這段文字也是一種協議,是人類和計算機溝通的協議,只有通過這種協議,計算機才知道我們想讓它做什麼。

為了深入理解‘網路協議’,下面就讓我們一起進入它的‘世界’吧

目錄

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第1章通訊協議概述

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

程式是如何工作的

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

揭祕層與層之間的關係

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

小結

總結一下本節的內容,理解網路協議的工作模式,有以下兩個小竅門。

  • 始終想象自己是一個處理網路包的程式:如何拿到網路包,如何根據規則進行處理,如何發出去。
  • 始終牢記一個原則:只要是在網路上跑的包,都是完整的。可以有下層沒上層,絕對不可能有上層沒下層。

 

第2章從二層到三層

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第一層:物理層

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第二層: MAC層

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

拓撲結構是怎麼形成的

我們常見到的辦公室內部結構大多是一排排的桌子, 每個桌子上都有一個網口, 一排十幾個座位就有十幾個網口,一個樓層就會有幾十個甚至上百個網口。如果算上所有樓層,這個場景自然比宿舍複雜多了。哪裡複雜呢?接下來會具體講解。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

如何解決常見的環路問題

這樣看起來,兩個交換機工作得非常好。隨著辦公室越來越大,交換機數目肯定越來越多。整個拓撲結構就會變得複雜,這麼多網線,繞來繞去,不可避免地會出現一些意料之 外的情況,比較常見的就是環路問題。

如圖2-7所示,當兩個交換機將兩個物理段同時連線起來時,你可能會覺得,這樣確保了拓撲結構的高可用性,但是卻不幸地出現了環路。出現了環路會有什麼結果呢?

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

STP中那些難以理解的概念

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

IP頭和MAC頭什麼時候變、什麼時候不變

對於伺服器傳送包時IP頭和MAC頭什麼時候變、什麼時候不變這個問題,可以分兩種型別進行討論。我把它們稱為“歐洲十國遊”和“玄奘西行”。

之前我說過,MAC地址是一個在區域網內才有效的地址。因而,MAC地址只要過閘道器,就必定會改變,因為已經換了區域網。“歐洲十國遊”和“玄奘西行”兩者主要的區別在於包的IP地址是否改變。不改變IP地址的閘道器,我們稱為轉發閘道器;改變IP 地址的閘道器,我們稱為NAT ( Network Address Translation )閘道器。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

動態路由的兩種分類

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

動態路由的兩個實現

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第3章最重要的傳輸層

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

TCP頭格式

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

TCP的三次握手

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

由於內容實在太多了,避免影響到大家的閱讀體驗,就不一一展示了,只提取部分內容以供大家參考..........................

TCP四次揮手

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

TCP狀態機

將連線建立和連線斷開的兩個時序狀態圖綜合起來,就是著名的TCP的狀態機,如圖3-5所示。學習時建議將這個狀態機和時序狀態機對照著看。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

流量控制問題

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

基於UDP的socket程式的函式呼叫過程

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第4章最常用的應用層

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

HTTP請求報文的構建

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

HTTP返回報文的構建

HTTP的返回報文是有一-定格式的,也是基於HTTP1.1的,結構如圖4-3所示。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

HTTP 2.0

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

HTTPS的工作模式

我們知道,非對稱加密在效能上不如對稱加密,那是否能將兩者結合起來呢?例如,使用非對稱加密傳輸對稱加密的金鑰,而雙方大部分的通訊都通過對稱加密進行。

這當然是可以的,即HTTPS的總體思路,如圖4-10所示。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

DHT

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第5章陌生的資料中心

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

示例:通過DNS伺服器訪問資料中心中物件儲存上的靜態資源

假設全國有多個數據中心,託管在多個運營商處,每個資料中心有三個可用區( AvailableZone )。物件儲存通過跨可用區部署實現高可用。在每個資料中心中,至少要部署兩個內部負載均衡器,內部負載均衡器後面對接多個物件儲存的前置伺服器( Proxy-server )。下面我們以通過DNS伺服器訪問資料中心中物件儲存上的靜態資源為例,看看DNS解析和負載均衡的整個過程。如圖5-3所示,各個步驟含義如下:

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

IPsec VPN的建立過程

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

2.5G網路

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

4G網路協議解析

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

異地上網問題

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第6章雲端計算中的網路

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

虛擬網絡卡的原理

那網路是如何“騙”應用的呢?如何將虛擬機器的網路和物理機的網路連線起來呢?

如圖6-1所示,首先,虛擬機器要有張網絡卡。 對於qemu-kvm 來說,這是通過Linux系統上的一種TUN/TAP技術來實現的。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

OpenFlow協議和Open vSwitch

SDN有很多種實現方式,我們來看一種開源的實現方式。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

如何在雲端計算中使用Open vSwitch

Open vSwitch 這麼牛,如何在雲端計算中使用呢?圖6-21是使用傳統的VLAN模式和使用Open vSwitch的一個對比圖。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

控制網路的QoS有哪些方式

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

雲中網路之隔離GRE、VXL AN:雖然住一個小區,也要保護隱私

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第7章容器技術中的網路

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

Calico網路模型的設計思路

我們看圖7-14中的兩臺物理機,它們的物理網絡卡在同一個二層網路裡面。由於兩臺物理機的容器網段不同,完全可以將兩臺物理機配置成為路由器,並按照容器的網段配置路由表。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

RPC概述:遠在天邊,近在眼前

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

服務發現問題

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第8章微服務相關協議

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

資料中心內部是如何相互呼叫的

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

傳輸協議問題

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

如何解決Dubbo的協議約定問題

服務發現問題已經通過註冊中心解決了。我們下面就來看一下Dubbo的協議約定問題。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

第9章網路協議知識串講

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

部署一個高可用高併發的電商平臺

首先,要有個電商平臺。假設我們已經有了一個特別大的電商平臺,這個平臺應該部署在哪裡呢?如果使用公有云,一般會部署在多個位置,比如華東、華北、華南。我們的電商是要服務全國的,所以部署範圍要廣。同時,我們把主站點放在華東,如圖9-1所示。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

大聲告訴全世界,可以到我這裡買東西

當電商應用搭建完畢之後,接下來需要將如何訪問到這個電商網站廣播給全網。

圖9-2畫的是一個可用區的情況。對於多個可用區,我們可以隱去計算節點的情況,將外網訪問區域放大,如圖9-3所示。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

看上寶貝點下單,雙方開始建連線

如果你瀏覽了很多圖片,發現實在喜歡某個商品,於是決定下單購買。

電商網站針對下單的情況提供了RESTful 的下單介面,而對於下單這種需要保密的操作,要通過HTTPS進行請求。

在進行所有這些操作之前,首先要做的事情是建立連線,過程如圖9-6所示。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

從資料中心進閘道器,公網NAT成私網

網路包從手機端經歷千難萬險,終於到了SLB的公網IP地址所在的公網網口。由於MAC地址和IP地址與之相匹配,因而網口將網路包收了進來。

如圖9-10所示,虛擬閘道器節點的公網網口上會有一個NAT規則,將公網IP地址轉換為VPC裡面的私網IP地址,這個私網IP地址就是SLB的HAProxy所在的虛擬機器的私網IP地址。

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

準備一個Docker的映象

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

Open vSwitch的實驗

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

 

筆記三大特點

第一,會從身邊經常見到的事情出發,用講故事的方式來講解各種協議,然後慢慢擴大到不熟悉的領域。

例如,每個人都會使用檢視IP地址的命令,我們就從這個命令開始,展開講解一些相關概念。每個人都在大學宿舍組過簡單的網路來打遊戲,我們就從宿舍網路涉及的最簡單的網路概念開始講,然後說到辦公室網路,再說到日常常用的與上網、購物、視訊下載等活動相關的網路協議,最後才說到最陌生的資料中心。說到這裡的時候,很多概念已經在前面的“宿舍”和“辦公室”的例子中都出現過,因此更容易接受和理解。

第二,講解網路協議時會更加貼近使用場景,將各個層次的關係串連起來,而非孤立地講解某個概念。

常見的計算機網路課程往往會按照網路分層,. 一層一層地講,卻很少講層與層之間的關係。例如,我們在學習路由協議的時候,在真實場景中,這麼多的演算法和二層是什麼關係呢?和四層又是什麼關係呢?再比如,我們在真實的網路通訊中訪問一個網站、進行一次支付, 那麼在TCP三次握手的時候,IP 層在幹什麼? MAC層在幹什麼?這些內容本書都會逐一講解。

第三,在講解完各個層次的協議之後,會講述如何在當前熱門領域(比如雲計算、容器和微服務)中使用這些協議。

通過學習本書,讀者一方面可以瞭解這些網路協議的真實應用場景,另一方面也可以通過上手使用雲端計算、容器、微服務來進一步 加深對於網路協議的理解。

這份【趣談網路協議】文件共有435頁,需要完整版的朋友,可以點贊此文關注小編,【見下圖】獲取!!

當然,單單有文件看是遠遠不夠的,還有視訊和相匹配的課件進行學習提升,努力把計算機網路這一塊兒給搞明白,相信一定會有不凡的人生!!

TCP/IP/網路IO學習視訊

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

TCP/IP網路協議

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

網路IO

還有課件分享

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

IO課件

華為出品,必屬精品!華為資深專家十年‘成神之作’網路協議寶典

TCP/IP課件

TCP/IP/IO網路通訊視訊和課件獲取,點贊關注小編,【見下圖】獲取!

好了,今天就分享到這裡了,希望大家能夠好好學習,把計算機網路這一塊兒給提升上來,也希望本文能夠得到大家的喜歡!!