網(wǎng)絡(luò)底層原理之HTTP

HTTP

  • URI 和 URL的關(guān)系:URI包括了URL。
  1. html/login.html,這是個URI,它 不能在網(wǎng)唯一標(biāo)識。
  2. http://localhost:8080/hello/html/login.html 這個URI 可以在全網(wǎng)唯一標(biāo)識贺喝,稱為 URL。
  • HTTP(Hyper Text Transfer Protocol)宗兼,超文本傳輸協(xié)議
  1. 是互聯(lián)網(wǎng)中應(yīng)用最廣泛的應(yīng)用層協(xié)議之一
  2. 設(shè)計HTTP最初的目的是:提供一種發(fā)布和接收HTML頁面的方法躏鱼,由URI來標(biāo)識具體的資源
  3. 后面用HTTP來傳遞的數(shù)據(jù)格式不僅僅是HTML,應(yīng)用非常廣泛
  4. HTML(Hyper Text Markup Language) 超文本標(biāo)記語言 用以編寫網(wǎng)頁

HTTP版本

  • 1991年殷绍,HTTP/0.9
  1. 只支持GET請求方法獲取文本數(shù)據(jù)(比如HTML文檔)染苛,且不支持請求頭、響應(yīng)頭等主到,無法向服務(wù)器傳遞太多信息
  • 1996年茶行,HTTP/1.0
  1. 支持POST、HEAD等請求方法登钥,支持請求頭畔师、響應(yīng)頭等,支持更多種數(shù)據(jù)類型(不再局限于文本數(shù)據(jù))
  2. 瀏覽器的每次請求都需要與服務(wù)器建立一個TCP連接牧牢,請求處理完成后立即斷開TCP連接
  • 1997年看锉,HTTP/1.1(最經(jīng)典、使用最廣泛的版本)
  1. 支持PUT结执、DELETE等請求方法
  2. 采用 持久連接(Connection: keep-alive)度陆,多個請求可以共用同一個TCP連接
  • 2015年,HTTP/2.0
  • 2018年献幔,HTTP/3.0

HTTP的標(biāo)準(zhǔn)

  • 由萬維網(wǎng)協(xié)會(W3C)、互聯(lián)網(wǎng)工程任務(wù)組(IETF)協(xié)調(diào)制定趾诗,最終發(fā)布了一系列的RFC
  • RFC(Request For Comments蜡感,可以譯為:請求意見稿)
  1. HTTP/1.1最早是在1997年的 RFC 2068 中記錄的
    該規(guī)范在1999年的 RFC 2616 中已作廢
    2014年又由 RFC 7230 系列的RFC取代
  2. HTTP/2標(biāo)準(zhǔn)于2015年5月以 RFC 7540 正式發(fā)表蹬蚁,取代HTTP/1.1成為HTTP的實現(xiàn)標(biāo)準(zhǔn)

HTTP報文格式(簡)

HTTP報文格式.png

請求方法

  • GET、HEAD郑兴、POST犀斋、PUT、DELETE情连、CONNECT叽粹、OPTIONS、TRACE
  1. GET 常用于讀取的操作却舀,請求參數(shù)直接拼接在URL的后面(瀏覽器對URL是有長度限制的)
  2. POST 常用于添加虫几、修改、刪除的操作挽拔,請求參數(shù)可以放到請求體中(沒有大小限制)
  3. HEAD 請求得到與GET請求相同的響應(yīng)辆脸,但沒有響應(yīng)體
    使用場景:在下載一個大文件前,先獲取其大小(HEAD)螃诅,再決定是否要下載(GET)啡氢。以此可以節(jié)約帶寬資源
  4. OPTIONS 用于獲取目的資源所支持的通信選項,比如 服務(wù)器支持的請求方法
  5. PUT 用于對已存在的資源進行整體覆蓋
  6. PATCH 用于對資源進行部分修改(資源不存在术裸,會創(chuàng)建新的資源)
  7. DELETE 用于刪除指定的資源
  8. TRACE 請求服務(wù)器回顯其收到的請求信息倘是,主要用于HTTP請求的測試或診斷
  9. CONNECT 可以開啟一個客戶端與所請求資源之間的雙向溝通的通道,它可以用來創(chuàng)建隧道(tunnel)

請求頭字段

1.png
2.png
  • 注意:q 值越大袭艺,表示優(yōu)先級越高搀崭,如果不指定q值,默認是1.0(1.0是最大值)


    3.png

響應(yīng)頭字段

4.png
5.png
6.png

代理服務(wù)器

  • 本身不生產(chǎn)內(nèi)容
  • 處于中間位置轉(zhuǎn)發(fā)上下游的請求和響應(yīng)
    面向下游的客戶端:它是服務(wù)器
    面向上游的服務(wù)器:它是客戶端
正向代理匹表、反向代理
  • 正向代理:代理的對象是 客戶端
  • 反向代理:代理的對象是 服務(wù)器


    正向代理與反向代理.png
正向代理的作用
  • 隱藏客戶端身份
  • 繞過防火墻(突破訪問限制)
  • Internet訪問控制
  • 數(shù)據(jù)過濾

  • 正向代理.png
反向代理的作用
  • 隱藏服務(wù)器身份
  • 安全防護
  • 負載均衡


    反向代理.png

CDN (內(nèi)容分發(fā)網(wǎng)絡(luò))

  • 利用最靠近每位用戶的服務(wù)器

  • 更快更可靠地將音樂门坷、圖片、視頻等資源文件(一般是靜態(tài)資源)傳遞給用戶


    CDN.png
  • CDN運營商在全國袍镀、乃至全球的各個大樞紐城市都建立了機房

  • 部署了大量擁有高存儲高帶寬的節(jié)點默蚌,構(gòu)建了一個跨運營商、跨地域的專用網(wǎng)絡(luò)

  • 內(nèi)容所有者向CDN運營商支付費用苇羡,CDN將其內(nèi)容交付給最終用戶


    CDN1.png
  • CDN使用前


    CDN使用前.png
  • CDN使用后


    CDN使用后.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绸吸,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子设江,更是在濱河造成了極大的恐慌锦茁,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叉存,死亡現(xiàn)場離奇詭異码俩,居然都是意外死亡,警方通過查閱死者的電腦和手機歼捏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門稿存,熙熙樓的掌柜王于貴愁眉苦臉地迎上來笨篷,“玉大人,你說我怎么就攤上這事瓣履÷食幔” “怎么了?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵袖迎,是天一觀的道長冕臭。 經(jīng)常有香客問我,道長燕锥,這世上最難降的妖魔是什么溺健? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任缎除,我火速辦了婚禮褂痰,結(jié)果婚禮上兼搏,老公的妹妹穿的比我還像新娘。我一直安慰自己连霉,他們只是感情好榴芳,可當(dāng)我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著跺撼,像睡著了一般窟感。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上歉井,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天柿祈,我揣著相機與錄音,去河邊找鬼哩至。 笑死躏嚎,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的菩貌。 我是一名探鬼主播卢佣,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼箭阶!你這毒婦竟也來了虚茶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤仇参,失蹤者是張志新(化名)和其女友劉穎嘹叫,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體诈乒,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡罩扇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了怕磨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片暮蹂。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡寞缝,死狀恐怖癌压,靈堂內(nèi)的尸體忽然破棺而出仰泻,到底是詐尸還是另有隱情,我是刑警寧澤滩届,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布集侯,位于F島的核電站,受9級特大地震影響帜消,放射性物質(zhì)發(fā)生泄漏棠枉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一泡挺、第九天 我趴在偏房一處隱蔽的房頂上張望辈讶。 院中可真熱鬧,春花似錦娄猫、人聲如沸贱除。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽月幌。三九已至,卻和暖如春悬蔽,著一層夾襖步出監(jiān)牢的瞬間扯躺,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工蝎困, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留录语,地道東北人。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓禾乘,卻偏偏與公主長得像澎埠,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子盖袭,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容