傳輸層TCP協定
HTTP伺服器是工作在傳輸層和應用層的 TCP的主要特點
- TCP協定可靠傳輸,保證資料準确無誤到達
- TCP協定流量控制,感覺對方壓力并控制流量
- TCP擁塞控制,感覺對方網絡壓力并控制發送速度
TCP是面向位元組流的協定 常用網絡服務端口 端口标記程序,标記程序,标記程序
應用層HTTP協定
HTTP伺服器工作流程
HTTP協定的請求封包詳解
主要由三個部分:請求行、請求頭、請求内容 請求行不管由多少内容,都隻有1行 請求行
現在主流是1.1
請求行資訊舉例:
GET /class/355.html HTTP/1.1
每個部分之間通過空格隔開
請求頭
主要是通信的附加資訊
<key>:<value> 格式
一對key-value構成請求頭的一行
Accept是目前浏覽器可以接受哪些類型的資訊
Accept-Encoding 目前浏覽器支援哪些壓縮格式
Host 訓示要通路的主機
User-Agent 目前浏覽器的類型和版本
比如我的請求是來自電腦還是手機,就是在請求頭裡帶着的 請求内容
請求内容用于發送資料,用于使用者對網站内容的操作
請求内容不是必須要有的
請求内容沒有格式要求
一個實際的請求封包
請求頭和請求内容之間是有一個空行的 HTTP協定應答封包詳解
分為三部分:狀态行、應答頭、應答内容 狀态行
不同狀态碼表示不同的應答 狀态行的例子
HTTP/1.1 200 OK
應答頭
一般将請求頭和應答頭統稱為消息頭
key:value的形式
一個應答封包的例子