天天看點

《圖解HTTP》學習總結----第一章

吐槽

最近也不能光學一樣東西啊,網絡的知識自己也提前學下,是以先把學長給我的《圖解HTTP》這本書看完,每天抽出時間看下這個,然後總結下,相信以後會有用的哈。

什麼叫HTTP

HTTP是個協定,是個規範,是個約定

那協定是什麼

什麼叫協定

在我的了解,協定就是一個規則,按照雙方之前約定好的東西,就想你在C語言編譯器上寫個下面的代碼

int main(void)
{
    printf("hello world");
    return ;
}
           

然後輸出結果就是hello world,計算機又聽不懂你說的話,有不認識你寫的字,但是就是按照之前的協定可以輸出出來這個東西,人類的語言和文字也是個協定,電腦就隻認識0和1,就是個機器罷了。

協定的三要素

文法:就是你說的話要有一定的規律,符合一定的規則,不能随便說,比如括号啊,空格啊,主謂賓這種東西。

語意:就是這句話代表的意思,比如中文說“我愛你”,英文就是“i love you ”,雖然這兩個句子長的不像,但是表達都是同一種人類感情。

順序:就是先幹嘛後幹嘛,後幹嘛,要按一定的順序來。

是以用戶端和服務端互相發資料的時候采用的是HTTP協定

用戶端——就是發送請求伺服器資源的東西就叫用戶端

網頁是用戶端,app是用戶端等待

HTTP咋來的

一群大佬,在網際網路的上古時代//1989年,他們想弄個傳遞文檔,共享知識的東西,當時隻是光想弄個超文本那種,後來慢慢進化了成這個樣子的。

但是

HTTP在1990年産生,慢慢被人們接收,直到1997年HTTP/1.1版本問世,到目前還是主流。。。

個人感覺計算機的發展什麼的,其實還是那一套規則,隻有将舊的規則打破了,才可能計算機有質的改變哈

TCP/IP的家族

計算機網絡體系結構分為3種:

OSI體系結構、TCP / IP體系結構、五層體系結構

OSI體系結構:概念清楚 & 理念完整,但複雜 & 不實用

TCP / IP體系結構:含了一系列構成網際網路基礎的網絡協定,是Internet的核心協定 & 被廣泛應用于區域網路 和 廣域網

五層體系結構:融合了OSI 與 TCP / IP的體系結構,目的是為了學習 和計算機原理

是以,,,,HTTP隻是TCP/IP的兒子唉,,但這個兒子很實用哈

TCP/IP的分層管理

分層管理是個很有效率的方案哈 在TCP/IP 裡面按照層次分為4層

應用層:決定了向使用者提供應用服務時候通信的活動//HTTP也處于該層

傳輸層:傳輸層對上層應用層,提供處于網絡連結的兩台電腦之間的資料傳輸

網絡層:處理網絡上流動的資料包,該層規定了通過什麼路徑到達對方電腦,就是選擇路線的

資料鍊路層:硬體的部分

分層雖然說處理起來很麻煩,但是好處有很多,如果某個地方有問題的時候,就把該層 的東西替換掉就好了,個個層之間接口規劃好就行了

TCP/IP的通信傳輸流

TCP/IP四層模型

《圖解HTTP》學習總結----第一章

分層與對方進行通信

發送端從應用層往下走,接收端則往應用層走

拿一個Web頁面發送HTTP請求舉例

1先發送一個HTTP請求

2在傳輸層(TCP)協定把從應用層接收到的資料(HTTP請求封包)進行分割,并在各個封包上面打上标記序号和端口号,然後發給網絡層。

3在網絡層裡面(IP協定)。增加作為通信目的地的MAC位址後,轉發給鍊路層。

4接收到的伺服器在鍊路層接收到資料,按照序列,一層一層往上發,然後當傳到應用層的時候,才能算是真正接收到了

《圖解HTTP》學習總結----第一章

發送端在一層一層發東西時候,感覺就是和過海關一樣,一層一層加上印記

接收端就是一層一層解開印記,去掉東西

可靠的TCP協定

http是一種應用層協定,它通過tcp實作了可靠的資料傳輸。詳細的互動流程如下:

1用戶端執行網絡請求,從url裡面解析出來伺服器的主機名

2将伺服器的主機名轉換成伺服器的ip位址

3将端口号從url解析出來

4建立一條用戶端和伺服器端的tcp連結

5用戶端通過輸入流向伺服器發送一條http請求

6伺服器向用戶端回送一條http響應封包

7用戶端從輸入流擷取封包

8解析封包,關閉連接配接

為了能確定正确的到達目标——–三次握手

這裡之前寫過三次握手的

負責域名的解析和DNS服務

DNS服務和HTTP一樣的,都是處于應用層的協定

作用:提供域名到IP位址之間的解析服務

計算機既可以被賦予IP位址,也可以被賦予主機名字和域名

使用者通常使用主機名字或者域名來通路對方計算機,而不是通過IP位址通路

但是計算機又不好了解這個,因為計算機隻能看懂0和1,就是數字對他友善一點

是以,為了解決這個問題,就産生了DNS服務,DNS協定提供通過域名來查找IP位址,或者反過來解析

《圖解HTTP》學習總結----第一章

個個協定和HTTP協定的關系

《圖解HTTP》學習總結----第一章