中韩高清无专码区2021曰网站_亚洲黄色成人网站_久久久久精品国产_国产区视频在线观看

×

大型網(wǎng)站https實(shí)踐(下)

  • 作者:新網(wǎng)
  • 來(lái)源:新網(wǎng)
  • 瀏覽:100
  • 2018-05-04 11:04:23

當(dāng)然不是每個(gè)請(qǐng)求都需要增加 7 個(gè) RTT 才能完成 HTTPS 首次請(qǐng)求交互。大概只有不到 0.01% 的請(qǐng)求才有可能需要經(jīng)歷上述步驟,它們需要滿足如下條件。

 用戶只需要完成 TCP 三次握手建立 TCP 連接就能夠直接發(fā)送 HTTP 請(qǐng)求獲取應(yīng)用層數(shù)據(jù),此外在整個(gè)訪問(wèn)過(guò)程中也沒(méi)有需要消耗計(jì)算資源的地方。

 
接下來(lái)看 HTTPS 的訪問(wèn)過(guò)程,相比 HTTP 要復(fù)雜很多,在部分場(chǎng)景下,使用 HTTPS 訪問(wèn)有可能增加 7 個(gè) RTT。
 
HTTPS 首次請(qǐng)求需要的網(wǎng)絡(luò)耗時(shí)解釋如下:
 
1, 三次握手建立 TCP 連接。耗時(shí)一個(gè) RTT。
 
2, 使用 HTTP 發(fā)起 GET 請(qǐng)求,服務(wù)端返回 302 跳轉(zhuǎn)到 https://www.baidu.com。需要一個(gè) RTT 以及 302 跳轉(zhuǎn)延時(shí)。
 
a) 大部分情況下用戶不會(huì)手動(dòng)輸入 https://www.baidu.com 來(lái)訪問(wèn) HTTPS,服務(wù)端只能返回 302 強(qiáng)制瀏覽器跳轉(zhuǎn)到 https。
 
b) 瀏覽器處理 302 跳轉(zhuǎn)也需要耗時(shí)。
 
3, 三次握手重新建立 TCP 連接。耗時(shí)一個(gè) RTT。
 
a) 302 跳轉(zhuǎn)到 HTTPS 服務(wù)器之后,由于端口和服務(wù)器不同,需要重新完成三次握手,建立 TCP 連接。
 
4, TLS 完全握手階段一。耗時(shí)至少一個(gè) RTT。
 
a) 這個(gè)階段主要是完成加密套件的協(xié)商和證書的身份認(rèn)證。
 
b) 服務(wù)端和瀏覽器會(huì)協(xié)商出相同的密鑰交換算法、對(duì)稱加密算法、內(nèi)容一致性校驗(yàn)算法、證書簽名算法、橢圓曲線(非 ECC 算法不需要)等。
 
c) 瀏覽器獲取到證書后需要校驗(yàn)證書的有效性,比如是否過(guò)期,是否撤銷。
 
5, 解析 CA 站點(diǎn)的 DNS。耗時(shí)一個(gè) RTT。
 
a) 瀏覽器獲取到證書后,有可能需要發(fā)起 OCSP 或者 CRL 請(qǐng)求,查詢證書狀態(tài)。
 
b) 瀏覽器首先獲取證書里的 CA 域名。
 
c) 如果沒(méi)有命中緩存,瀏覽器需要解析 CA 域名的 DNS。
 
6, 三次握手建立 CA 站點(diǎn)的 TCP 連接。耗時(shí)一個(gè) RTT。
 
a) DNS 解析到 IP 后,需要完成三次握手建立 TCP 連接。
 
7, 發(fā)起 OCSP 請(qǐng)求,獲取響應(yīng)。耗時(shí)一個(gè) RTT。
 
8, 完全握手階段二,耗時(shí)一個(gè) RTT 及計(jì)算時(shí)間。
 
a) 完全握手階段二主要是密鑰協(xié)商。
 
9, 完全握手結(jié)束后,瀏覽器和服務(wù)器之間進(jìn)行應(yīng)用層(也就是 HTTP)數(shù)據(jù)傳輸。
 
當(dāng)然不是每個(gè)請(qǐng)求都需要增加 7 個(gè) RTT 才能完成 HTTPS 首次請(qǐng)求交互。大概只有不到 0.01% 的請(qǐng)求才有可能需要經(jīng)歷上述步驟,它們需要滿足如下條件:
9043653.jpg
 
1, 必須是首次請(qǐng)求。即建立 TCP 連接后發(fā)起的第一個(gè)請(qǐng)求,該連接上的后續(xù)請(qǐng)求都不需要再發(fā)生上述行為。
 
2, 必須要發(fā)生完全握手,而正常情況下 80% 的請(qǐng)求能實(shí)現(xiàn)簡(jiǎn)化握手。
 
3, 瀏覽器需要開啟 OCSP 或者 CRL 功能。Chrome 默認(rèn)關(guān)閉了 ocsp 功能,firefox 和 IE 都默認(rèn)開啟。
 
4, 瀏覽器沒(méi)有命中 OCSP 緩存。Ocsp 一般的更新周期是 7 天,firefox 的查詢周期也是 7 天,也就說(shuō)是 7 天中才會(huì)發(fā)生一次 ocsp 的查詢。
 
5, 瀏覽器沒(méi)有命中 CA 站點(diǎn)的 DNS 緩存。只有沒(méi)命中 DNS 緩存的情況下才會(huì)解析 CA 的 DNS。
 
以上就是小編對(duì)大型網(wǎng)站https實(shí)踐的解析。
 

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費(fèi)咨詢獲取折扣

Loading