HTTP 學習瞭解
- TCP/IP協議族各層
- 應用層
應用層決定了向使用者提供應用服務時通訊的活動
- 傳輸層
傳輸層對上層應用層,提供處於網路連結中的兩臺計算機之間的資料傳輸,傳輸層有兩種不同的協議,TCP(傳輸控制協議)和UDP(使用者資料包協議)
- 網路層(又可稱之為網路網際網路層)
網路層時用來處理網路上流動的資料包,資料包是網路傳輸的最小資料單位,該層規定了透過怎樣的路徑到達對方的計算機,並把資料包傳輸給對方
- 鏈路層(又名資料鏈路層,網路介面層)
用來處理連線網路的硬體部分。包括控制作業系統,硬體的驅動裝置,網路介面卡,網路卡,光纖
- TCP/IP通訊傳輸流
-
HTTP客戶端
-
TCP
-
IP
-
網路
-
網路
-
IP
-
TCP
-
HTTP服務端
說明:HTTP客戶端/服務端都屬於 應用層 ;TCP屬於 傳輸層 ;IP屬於 網路層 ;網路屬於 鏈路層
- 一個HTTP請求的大概流程
傳送端(每透過一層則增加首部)-》 HTTP資料(HTTP報文)-》 TCP首部(HTTP資料) -》 IP首部((TCP首部)HTTP資料)-》 乙太網首部(((IP首部)TCP首部)HTTP資料)
接收端(每透過一層則刪除首部)-》 乙太網首部(((IP首部)TCP首部)HTTP資料) -》 IP首部((TCP首部)HTTP資料)-》 TCP首部(HTTP資料)-》 HTTP資料(HTTP報文)
- 負責傳輸的的IP協議
按層次分,IP 網際協議是屬於網路層,IP 協議的作用是把各種資料包傳送給對方,想要準確傳輸到對方那裡,就必須知道IP地址和MAC地址,IP地址指明瞭節點
被分配到的地址,MAC地址是指網路卡所屬的固定地址,IP地址可以和MAC地址配對,IP地址一般可變,MAC地址一般是固定的
- 確保可靠性的TCP協議
按層次分,TCP協議屬於傳輸層,提供可靠的位元組流服務。 位元組流服務: 為了方便傳輸,將大塊的資料分割成以報文段為段位的資料包進行管理。
TCP協議的三次握手:
-
傳送端傳送帶有
SYN
的資料包給接收端 -
接收端收到資料包之後,會傳送一個帶有
SYN/ACK
的資料包給傳送端 -
傳送端接收到接受端傳送過來的訊息後,再次傳送一個帶有
ACK
的資料包給接收端
- 負責域名解析的DNS服務
DNS服務是和HTTP協議一樣位於應用層的協議,它提供域名到IP地址之間的解析服務
-
傳送端輸入一個域名
-
DNS服務負責解析,傳送給傳送端域名對應的IP地址
-
傳送端得到IP地址之後再次去請求對應的資料
- HTTP 請求中的幾種方法
-
GET 獲取資源
-
POST 傳輸實體主體
-
PUT 傳輸檔案
-
HEAD 獲得報文首部(不返回報文主體)
-
DELETE 刪除檔案
-
OPTIONS 詢問支援的方法
-
TRACE 追蹤路徑
-
CONNECT 要求用隧道協議連線代理
- HTTP持久化連線(HTTP Persistent Connections | HTTP Keep-alive | HTTP Connection reuse)
在HTTP/1.1中,所有的連線預設都是持久化連線,持久化連線使得多數請求以 管線化 的方式傳送成為可能
本作品採用《CC 協議》,轉載必須註明作者和本文連結