❝網上已經有不少不錯 有關HTTP 文章, 此文爲記錄學習
HTTP
web最近在項目開發中,對於HTTP 這塊比較懵,來補補基礎吧!安全
學習HTTP的同時,有必要了解下
TCP/IP
協議族。網絡一般使用的網絡都是在
❞TCP / IP
協議族的基礎上運做,並且HTTP 屬於TCP/IP
的一個子集。編輯器
❝不一樣硬件與操做系統之間通訊有須要有必定規則來約束,這樣能夠統一溝通的條件。T學習
TCP / IP
是互聯網相關各協議族的總稱,它不僅是 單純的 指TCP
和IP
協議,url它有
❞FTP
,SNMP
,HTTP
,PPPoE
........ 組成的 協議族。spa
❝❞
TCP / IP
協議族 按層次分爲 4 層:應用層
,傳輸層
,網絡層
,數據鏈路層
操作系統
❝
做用
: 應用層決定了向用戶提供應用服務時通訊的活動。3dTCP / IP 協議族內預存了各種通用的應用服務。code
例如: FTP(文件傳輸協議) DNS(域名系統)HTTP
❞
❝
做用
: 兩臺計算機之間的數據傳輸,服務於應用層。在傳輸層有兩個性質不一樣的協議: TCP(傳輸控制協議) UDP(用戶數據協議)
❞
❝
做用
: 用來處理在網絡上流動的數據包,以何種方式傳遞給對方。數據包是網絡傳輸的最小數據單位。
網絡層 決定了 經過什麼樣的方式把數據包傳遞給對方。
網絡層 最重要的功能是: 路由數據包。它會根據網絡上路由IP, 網絡擁塞狀況,選擇一條最合適的路由路線,以最快的速度將數據包傳遞給對方。
❞
❝
做用
: 用來處理鏈接網絡的硬件部分。硬件上的範疇均在鏈路層的做用範圍以內
❞
❝採用
TCP / IP
協議進行網絡通訊時, 客戶端(發送端) 會從應用層 往下走, 一層 一層的傳輸, 每進入一層,被被打上標記序號以及端口號, 當客戶端 走完 本身的 4 層時, 會進入 服務端(接收端) ,它是按 鏈路層 而後 一層一層 往上走, 每進入一層, 取消一個 標記序號, 直到頂層(應用層),這時, 服務端才接收到了客戶端
向服務端
發送的請求。
服務端
向客戶端
發送請求,和以前的順序相反。服務端(應用層----------> 數據鏈路層)
客戶端(數據鏈路層 ---------------> 應用層)
❞
❝
IP
: 它是網際協議,它位於網絡層。
做用
: 把各類數據包傳遞給對方。要保證能夠 把數據包準確的傳遞給對方,有兩個條件:
IP
地址: 它標明瞭要傳遞到對方的 ip 地址。
MAC
地址: 它是指網卡的固定地址。
IP 和 MAC 是驗證 一個身份的 關鍵
IP 地址 能夠 和 MAC 地址 進行匹配,IP 地址能夠更換,但MAC 地址基本不會更換。
計算機於計算機之間通訊時,它不會直接查找到對方IP的,中間過程會經歷 設備中轉,在進行中轉的同時,它 會 採用 ARP 協議 來 推出 IP 地址的 MAC 地址,通過屢次中轉最終找到對方的 MAC 地址, MAC 地址 於 IP 地址匹配, 成功的創建了鏈接。
❞
ARP
: 它是一用來解析地址的協議。根據對方IP地址能夠反查出對應的MAC 地址
❝
TCP
位於傳輸層, 提供可靠的字節流服務。
字節流服務
: 爲了方便傳輸,它會將大塊數據分割成 以報文段爲單位的數據進行管理。爲了
可靠的安全
的能夠傳遞給對方數據,TCP 採用 三次握手策略
,
SYN 同步序列編號
ACK 確認字符
第一次握手
: 發送端會發送一個帶有 SYN 標誌的數據包給對方。
第二次握手
: 對方(接收端)收到發送端 發送過來的 SYN 包, 回傳一個帶有 SYN / ACK 標誌的包 來標識接收成功。❞
第三次握手
: 發送端 回傳一個 ACK 包 表示握手接收
❝
第一次握手
: 客戶端 向 服務端 發送請求
第二次握手
: 服務端 接收 客戶端發來的請求,進行處理。前 兩次握手 已經實現 請求處理過程,那麼爲何仍是須要 創建第三次握手呢?
若是不進行
第三次握手
, 假如,第一次握手
, 客戶端因爲網絡緣由,請求延遲發送, 你覺得 這樣就結束了請求,但網絡節點正常後,它還會發送這個請求,這是一個早已失效的報文;第二次握手
,服務端 接收到 客戶端發送過來的 延遲請求,但此時客戶端沒有發送任何數據,而服務端還在等候 客戶端, 形成了資源浪費。
❞
第三次握手是爲了防止已經失效的鏈接請求報文段忽然又傳到服務端,於是產生錯誤。
❝在戀愛關係中,就是 肯定 一下, A 是否 爲
單相思
,若是不三次握手, B 早已和別的男友........ 而 A 還在 苦苦 等待 B 的接受。
幹嗎不三次握手嘛
A 向 B 表白了;
B 收到 A 的 表白了, B 要回應 A ,
我不喜歡你
A 收到 了 B 迴應, 讓他 脫離了
❞單相思
❝
DNS
服務 和HTTP 協議 都位於應用層協議。
做用
: 提供域名
到IP
地址解析服務。❞
DNS 協議提供經過域名查找IP 地址, 也能夠經過IP 地址反查 域名
❝HTTP 與上面各個協議之間 串聯起來 理解各個協議個做用。
❞
❝
URI
統一資源標識符。
URI 是 Uniform Resource Identifier 的縮寫
Uniform 統一格式
Resource 可標識資源
Idetifier 可標識對象,標識符
URI 用字符串 標識 互聯網資源, 而URL 表示資源地點。
❞
URL
統一資源定位符, 這個相信你們已經很瞭解了。
❝ 到如今,咱們瞭解了
TCP / IP
協議族 的組成以及分層,還有最重要的三次握手
,作一個再也不單相思
的小男孩;還有有關HTTP 相關知識。這只是剛開始,
路漫漫其修遠兮吾將上下而求索
.寫此文,爲記錄學習
❞HTTP
, 大手請手下留情。