引文:
-
HTTP協(xié)議
-
HTTPS與網(wǎng)絡(luò)安全
-
TCP/UDP
-
DNS解析
-
Session/Cookie
HTTP
: 超文本傳輸協(xié)議
請求/響應(yīng)報文
HTTP的請求方式:
GET / POST / HEAD / PUT / DELETE / OPTIONS
GET/POST
區(qū)別
一般角度
GET
請求參數(shù)拼在url后面,POST
參數(shù)放在body里面
GET參數(shù)長度限制2048個字符,
POST參數(shù)長度無限制
GET請求不安全,
POST`請求比較安全
語義角度
1. GET 是用來獲取資源的 (安全, 冪等的, 可緩存的)
2. POST是處理資源 (非安全, 非冪等的, 不可緩存的)
安全 --> 不應(yīng)該引起server端的任何狀態(tài)變化, 常用方式 get / head / options
冪等性 --> 同一個請求多次訪問的結(jié)果完全一致 常用方式 put / delete
可緩存 --> 請求是否可以緩存, 常用方式 post
連接建立流程
客戶端(C)與服務(wù)端(S)的通信機制
三次握手
- C 向S發(fā)送SYN請求報文
- S 向C返回SYN,ACK確認(rèn)響應(yīng)
- C向S發(fā)送ACK確認(rèn)報文 , 此時雙方握手成立
四次揮手
- C向S發(fā)送FIN請求報文
- S向C發(fā)送ACK響應(yīng) (此時客戶端與服務(wù)端斷開連接)
- S向C發(fā)送FIN,ACK請求,
- C向S發(fā)送ACK請求 (此時服務(wù)端與客戶端斷開連接)
HTTP的特點
無連接
HTTP的持久連接
HTTP協(xié)議
Charles抓包原理 (中間人攻擊)
無狀態(tài)
Cookis/Session
HTTPS與網(wǎng)絡(luò)安全
HTTPS和HTTP的區(qū)別
HTTPS = HTTP + SSL/TSL
HTTPS建立連接的時候使用非對稱加密, 非對稱加密是很耗時的.
后續(xù)通訊的時候使用對稱加密
非對稱加密: 公鑰加密 私鑰解密
對稱加密: 秘鑰加解密
TCP/UDP (傳輸層協(xié)議)
TCP: 傳輸控制協(xié)議
特點: 面向連接, 可靠傳輸(無差錯,不丟失,不重復(fù),按序到達(dá)), 面向字節(jié)流, 流量控制, 擁塞控制.
UDP: 用戶數(shù)據(jù)報協(xié)議
DNS解析
域名到IP地址的映射,DNS解析請求采用UDP數(shù)據(jù)報,且明文.
查詢方式: 遞歸查詢,迭代查詢
DNS解析常見的問題:
DNS劫持問題
DNS解析轉(zhuǎn)發(fā)問題
DNS劫持與HTTP沒有任何關(guān)系, DNS解析是發(fā)生在HTTP之前的,DNS解析是使用UDP數(shù)據(jù)報協(xié)議, 端口53.