極客時間 透視http筆記 破冰 01

2021-10-05 08:11:29 字數 1686 閱讀 3207

①http 協議始於三十年前蒂姆·伯納斯 - 李的一篇**;

②http/0.9 是個簡單的文字協議,只能獲取文字資源;

③http/1.0 確立了大部分現在使用的技術,但它不是正式標準;

④http/1.1 是目前網際網路上使用最廣泛的協議,功能也非常完善;

⑥http/2 基於 google 的 spdy 協議,注重效能改善,但還未普及;

⑦http/3 基於 google 的 quic 協議,是將來的發展方向。

①http 是乙個用在計算機世界裡的協議,它確立了一種計算機之間交流通訊的規範,以及相關的各種控制和錯誤處理方式。

②http 專門用來在兩點之間傳輸資料,不能用於廣播、定址或路由。

④http 是構建網際網路的重要基礎技術,它沒有實體,依賴許多其他的技術來實現,但同時許多技術也都依賴於它。

網際網路上絕大部分資源都使用 http 協議傳輸;

瀏覽器是 http 協議裡的請求方,即 user agent;

伺服器是 http 協議裡的應答方,常用的有 apache 和 nginx;

cdn 位於瀏覽器和伺服器之間,主要起到快取加速的作用;

爬蟲是另一類 user agent,是自動訪問網路資源的程式。

tcp/ip 是網路世界最常用的協議,http 通常執行在 tcp/ip 提供的可靠傳輸基礎上;

dns 網域名稱是 ip 位址的等價替代,需要用網域名稱解析實現到 ip 位址的對映;

uri 是用來標記網際網路上資源的乙個名字,由「協議名 + 主機名 + 路徑」構成,俗稱 url;

https 相當於「http+ssl/tls+tcp/ip」,為 http 套了乙個安全的外殼;

**是 http 傳輸過程中的「中轉站」,可以實現快取加速、負載均衡等功能;

tcp/ip 分為四層,核心是二層的 ip 和三層的 tcp,http 在第四層;

osi 分為七層,基本對應 tcp/ip,tcp 在第四層,http 在第七層;

osi 可以對映到 tcp/ip,但這期間

一、五、六層消失了;

日常交流的時候我們通常使用 osi 模型,用四層、七層等術語;

http 利用 tcp/ip 協議棧逐層打包再拆包,實現了資料傳輸,但下面的細節並不可見。

有乙個辨別四層和七層比較好的(但不是絕對的)小竅門,「兩個凡是」:凡是由作業系統負責處理的就是四層或四層以下,否則,凡是需要由應用程式(也就是你自己寫**)負責處理的就是七層。

dns 就像是我們現實世界裡的**本、查號台,統管著網際網路世界裡的所有**,是乙個「超級大管家」;

dns 是乙個樹狀的分布式查詢系統,但為了提高查詢效率,外圍有多級的快取;

使用 dns 可以實現基於網域名稱的負載均衡,既可以在內網,也可以在外網。

現實的網路環境太複雜,有很多干擾因素,搭建「最小化」的環境可以快速抓住重點,掌握 http 的本質;

我們選擇 wireshark 作為抓包工具,捕獲在 tcp/ip 協議棧中傳輸的所有流量;

我們選擇 chrome 或 firefox 瀏覽器作為 http 協議中的 user agent;

我們選擇 openresty 作為 web 伺服器,它是乙個 nginx 的「強化包」,功能非常豐富;

telnet 是乙個命令列工具,可用來登入主機模擬瀏覽器操作;

極客時間 應用層 HTTP 學習筆記

是個 url,叫作統一資源定位符。之所以叫統一,是因為它是有格式的。http 稱為協議,www.163.com 是乙個網域名稱,表示網際網路上的乙個位置。有的 url 會有更詳細的位置標識,例如 index.html 正是因為這個東西是統一的,所以當你把這樣乙個字串輸入到瀏覽器的框裡的時候,瀏覽器才...

極客時間 透析http 基礎篇 筆記 02

http 協議基於底層的 tcp ip 協議,所以必須要用 ip 位址建立連線 如果不知道 ip 位址,就要用 dns 協議去解析得到 ip 位址,否則就會連線失敗 建立 tcp 連線後會順序收發資料,請求方和應答方都必須依據 http 規範構建和解析報文 為了減少響應時間,整個過程中的每乙個環節都...

極客時間《趣談網路》學習筆記

1.網路程式是如何工作的 從上面的圖中我們可以看出,當我們在電腦上瀏覽網頁的時候,我們的瀏覽器會解析遠端伺服器發來的頁面資訊,解析流程大致是這樣的 4 應用層 瀏覽器取下http頭,然後將網頁內容進行展示。由此我們完成,從網路中獲取報文到網頁內容展示的過程。當我們需要操作頁面時,該流程正好是接受報文...