網(wǎng)絡(luò)協(xié)議底層原理(八):應(yīng)用層

一、應(yīng)用層
    1. 應(yīng)用層位于五層模型中的第一層,應(yīng)用層的作用就是遵守各種應(yīng)用層協(xié)議,從而產(chǎn)生數(shù)據(jù),然后向下發(fā)送給傳輸層,例如:訪問http://www.baidu.com,就是遵守HTTP協(xié)議構(gòu)造了一個應(yīng)用層的請求的數(shù)據(jù),然后向下傳遞給了傳輸層,最終傳遞給了百度的服務(wù)器
      image.png
  • 2.應(yīng)用層常見的協(xié)議如下所示:

    ? 超文本傳輸: HTTP、HTTPS

    ? 文件傳輸: FTP

    ? 電子郵件: SMTP、POP3、IMAP

    ? 動態(tài)主機(jī)配置: DHCP

    ? 域名系統(tǒng): DNS

二、應(yīng)用層協(xié)議之DNS協(xié)議
  • 1.DNS的全稱是:Domain Name System,譯為:域名系統(tǒng), 利用DNS協(xié)議,可以將域名(比如baidu.com)解析成對應(yīng)的IP地址(比如220.181.38.148) ,DNS可以基于UDP協(xié)議,也可以基于TCP協(xié)議,服務(wù)器占用53端口

  • 2.DNS的解析IP的流程如下圖所示:

    ? (1). 客戶端首先會訪問最近的一臺DNS服務(wù)器(也就是客戶端自己配置的DNS服務(wù)器) ,去請求某個域名的IP地址

    ? (2). 如果最近的DNS服務(wù)器沒有此域名的IP,那么就會返回根名稱服務(wù)器的IP地址,讓本地服務(wù)器去詢問根服務(wù)器(上級DNS服務(wù)器記錄了下一級DNS服務(wù)器的IP地址)

    ? (3). 如果根服務(wù)器仍然沒有,就會返回頂級服務(wù)器的地址,讓本地服務(wù)器去詢問頂級服務(wù)器,就這么一級一級向下詢問,最終拿到此域名的IP地址,如果所有服務(wù)器都沒有就會報錯

    ? (4). 全球一共13臺IPv4的DNS根域名服務(wù)器、25臺IPv6的DNS根域名服務(wù)器, 所有的DNS服務(wù)器都記錄了DNS根域名服務(wù)器的IP地址

    image.png

  • 3.DNS的常用命令
    ?ipconfig /displaydns:查看DNS緩存記錄

    ?ipconfig /flushdns:清空DNS緩存記錄

    ?ping 域名

    ?nslookup 域名

三、應(yīng)用層協(xié)議之DHCP協(xié)議
  • 1.我們都知道網(wǎng)絡(luò)層傳輸?shù)臄?shù)據(jù)包需要源IP地址目標(biāo)IP地址,才能將數(shù)據(jù)傳送給對方,那么IP地址是怎么得到的呢,這就需要我們這里的DHCP協(xié)議

  • 2.其實IP地址是分為兩類:靜態(tài)IP和動態(tài)IP

    ?靜態(tài)IP地址是手動設(shè)置的,適用于不怎么挪動的臺式機(jī)(比如學(xué)校機(jī)房中的臺式機(jī))、服務(wù)器等

    ?動態(tài)IP地址是從DHCP服務(wù)器自動獲取的IP地址,適用于移動設(shè)備、無線設(shè)備等

  • 3.DHCP(Dynamic Host Configuration Protocol),譯為:動態(tài)主機(jī)配置協(xié)議DHCP協(xié)議基于UDP協(xié)議,客戶端是68端口,服務(wù)器是67端口

    1. DHCP服務(wù)器會從IP地址池中,挑選一個IP地址“出租“給客戶端一段時間,時間到期就回收它們,平時家里上網(wǎng)的路由器就可以充當(dāng)DHCP服務(wù)器
    1. DHCP協(xié)議分配IP地址的四個階段,如下圖所示:

    ? (1). DISCOVER:發(fā)現(xiàn)服務(wù)器,通過發(fā)送廣播包來發(fā)現(xiàn)服務(wù)器,廣播包的格式是:源IP是0.0.0.0,目標(biāo)IP是255.255.255.255,目標(biāo)MAC是FF:FF:FF:FF:FF:FF

    ? (2). OFFER:提供租約, 服務(wù)器返回可以租用的IP地址,以及租用期限、子網(wǎng)掩碼、網(wǎng)關(guān)、DNS等信息,注意:這里可能會有多個服務(wù)器提供租約

    ? (3). REQUEST:選擇IP地址 ,客戶端選擇一個OFFER,發(fā)送廣播包進(jìn)行回應(yīng)

    ? (4). ACKNOWLEDGE:確認(rèn) ,被選中的服務(wù)器發(fā)送ACK數(shù)據(jù)包給客戶端,至此,IP地址分配完畢

image.png
    1. DHCP的常用命令

    ?ipconfig /all:可以看到DHCP相關(guān)的詳細(xì)信息,比如租約過期時間、DHCP服務(wù)器地址等

    ?ipconfig /release:釋放租約

    ?ipconfig /renew:重新申請IP地址、申請續(xù)約(延長租期)

    1. DHCP的一些細(xì)節(jié)

    ?(1). DHCP服務(wù)器可以跨網(wǎng)段分配IP地址么? (DHCP服務(wù)器、客戶端不在同一個網(wǎng)段)
    ? 答:可以借助DHCP中繼代理(DHCP Relay Agent)實現(xiàn)跨網(wǎng)段分配IP地址

    ?(2).租期不足怎么辦?
    ? 答:客戶端會在租期不足的時候,自動向DHCP服務(wù)器發(fā)送REQUEST信息申請續(xù)約

四、應(yīng)用層協(xié)議之FTP協(xié)議
    1. FTP(File Transport Protocol),譯為:文件傳輸協(xié)議,RFC 959定義了此規(guī)范,是基于TCP應(yīng)用層協(xié)議,FTPURL格式為:ftp://[user[:password]@]host[:port]/url-path
      image.png
    1. FTP有兩種工作模式:

      ?主動模式(PORT):服務(wù)器主動向客戶端發(fā)起連接請求

      ?被動模式(PAVS)FTP服務(wù)器等待客戶端發(fā)起連接請求(FTP的默認(rèn)工作模式)

    1. FTP協(xié)議需要用到兩個TCP連接,如下所示,無論是主動模式還是被動模式,想要進(jìn)行文件傳輸都必須依次建立這兩個連接

      ?命令連接:用來在FTP客戶端與服務(wù)器之間傳遞命令

      ?數(shù)據(jù)連接:用來在服務(wù)器和客戶端進(jìn)行文件傳輸

  • 4.我們知道FTP是專門的下載協(xié)議,但是為什么現(xiàn)在下載用FTP比較少,而HTTP的下載卻很多呢?

因為FTP存在很多缺點,如下所示:

?`缺乏加密` - 原始形式的 FTP 不支持加密。 客戶端代理和 FTP 服務(wù)器之間的數(shù)據(jù)通信采用明文格式。
?`防火墻問題` - 現(xiàn)代企業(yè)防火墻默認(rèn)阻止非 HTTPS 流量。 到其他端口的流量需要添加到防火墻規(guī)則中。
?`字符編碼` - FTP 客戶端和 FTP 服務(wù)器不協(xié)商字符編碼。 客戶端和服務(wù)器都使用英語作為語言環(huán)境是可以的。 但是,對于具有國際業(yè)務(wù)關(guān)系的公司以及需要在國際業(yè)務(wù)合作伙伴之間進(jìn)行文件傳輸?shù)墓緛碚f,字符編碼成為 FTP 服務(wù)的一個問題。
?`傳輸模式` - FTP 協(xié)議定義了文件傳輸?shù)?ASCII 模式和二進(jìn)制模式。 該文件有可能在 Windows 系統(tǒng)和 UNIX/Linux 系統(tǒng)之間以 ASCII 模式重寫。
?`文件元數(shù)據(jù)` - FTP 協(xié)議忽略文件元數(shù)據(jù),例如文件創(chuàng)建日期、文件修改日期。 如果以 ASCII 模式傳輸文件,文件長度也可能不同。 依賴文件日期信息對文件進(jìn)行排序的遠(yuǎn)程工作人員遇到了問題。 元數(shù)據(jù)的變化也會給那些提供重復(fù)數(shù)據(jù)刪除功能的服務(wù)帶來麻煩。

而HTTP解決了這些問題,并且具備更強的擴(kuò)展性,HTTP的優(yōu)勢如下:

?安全性 - HTTPS 是建立在 SSL 協(xié)議之上的 HTTP 協(xié)議。 SSL 協(xié)議從 SSL 3.0 到 TLS 1.3 一直在不斷自我完善。 由于HTTPS用于保護(hù)網(wǎng)站,使用HTTPS協(xié)議傳輸文件更安全,因為它的安全性更順應(yīng)時代。
?靈活性和可擴(kuò)展性 - 默認(rèn)情況下,HTTPS 用于共享網(wǎng)頁和電子商務(wù)信息。 但是,協(xié)議本身包括上傳和下載功能。 對于專門從事文件傳輸?shù)墓?yīng)商來說,它是靈活和可擴(kuò)展的。 您可以看到許多添加到通過 HTTPS 協(xié)議傳輸文件的功能。
?可互操作 - 由于 HTTPS 是一種網(wǎng)絡(luò)協(xié)議,不限于文件傳輸,因此它可以與 SAML 等身份驗證協(xié)議進(jìn)行互操作。 因此,可以將文件傳輸與單點登錄服務(wù)集成在一起。 HTTPS 協(xié)議還提供來自客戶端代理(如 Web 瀏覽器之外的 iOS 和 Android 應(yīng)用程序)的連接
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,401評論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,011評論 3 413
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,263評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,543評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 71,323評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 54,874評論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,968評論 3 439
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,095評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,605評論 1 331
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 40,551評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,720評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,242評論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 43,961評論 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,358評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,612評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,330評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 47,690評論 2 370

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