計算機網絡 基礎學習筆記(應用層) 夜車星繁的博客

 

 

 

1.什麼是應用層?

答:運輸層爲應用進程提供了端到端的通信服務,但不同的網絡應用的應用進程之間,還需要有不同的通信規則。而應用層就定義了位於不同主機中的多個應用進程之間通信的協議。應用層的許多協議都是基於客戶-服務器模式,客戶是服務的請求方,服務器是服務提供方。

2.域名系統DNS

域名系統DNS(Domain Name System)是因特網使用的命名系統,用來將人們使用的機器名字轉換爲IP地址。域名到iP地址的解析是有分佈在因特網上的許多域名服務器程序完成的。

  1.因特網的域名結構

      如:  mail.cctv.com    三級域名。二級域名。頂級域名

  現在頂級域名TLD(Top Level Domain)共分爲三大類:

    1.國家頂級域名nTLD:如cn表示中國,us爲美國

    2.通用頂級域名gTLD:如com(公司企業)、net(網絡服務機構)、int(國際組織)

    3.基礎結構域名:只有一個,即arpa,用於反向域名解析

  2.域名服務器

  完成域名到IP地址的解析工作。包括:

    1.根域名服務器(root name server):最高層次的域名服務器,知道所有頂級域名服務器的域名和IP地址。

    2.頂級域名服務器:負責管理在該頂級域名服務器註冊的所有二級域名。

    3.權限域名服務器:負責一個區的域名服務器。

    4.本地域名服務器:是自己可以設置的服務器,用於管理自己分發的域名。

  例:m.xyz.com 的主機想要知道 域名爲 y.abc.com的IP地址  (迭代查詢方式):

    1.主機m.xyz.com先向其本地域名服務器dns.xyz.com進行遞歸查詢

    2.本地域名服務器採用迭代查詢。它先向一個根域名服務器查詢

    3.根域名服務器告訴本地域名服務器,下一次應查詢的頂級域名服務器dns.com的IP地址

    4.本地域名服務器向頂級域名服務器dns.com進行查詢

    5.頂級域名服務器dns.com告訴本地服務器dns.com,下一次應查詢的權限域名服務器dns.abc.com的IP地址

    6.本地域名服務器向權限域名服務器dns.abc.com進行查詢

    7.權限域名服務器告訴本地服務器,所查詢主機的IP地址

    8.本地域名服務器最後將結果告訴主機m.xyz.com

    遞歸的查詢方式是本地--根---頂級----權限---頂級----根----本地的查詢

  3.文件傳輸協議

      文件傳輸協議FTP(File Transfer Protocol)是因特網使用最廣泛的文件傳輸協議。

      FTP使用TCP可靠的運輸服務,使用客戶服務器模式。一個FTP文件服務器可以爲多個用戶進程提供服務。在進行文件傳輸時,FTP的客戶和服務器之間要建立兩個並行的TCP連接:控制連接和數據連接。

3.萬維網WWW

  萬維網WWW(World Wide Web)是一個大規模、聯機式的信息儲藏所,可以方便由因特網的一個站點連接到另一個站點。

  1.統一資源定位符URL

    URL是用來表示從因特網上得到的資源位置和訪問這些資源的方法。、

    格式:<協議>://<主機>:<端口>/<路徑>

  2.使用HTTP的URL

    對於萬維網的網點的服務要使用HTTP協議。HTTP的URL的一般形式:

    http://<主機>:<端口>/<路徑>

  如:http://www.tsinghua.edu.cn

  3.超文本傳輸協議HTTP

  Http協議定義了瀏覽器怎樣向萬維網服務器請求萬維網文檔,以及服務器怎樣把文檔傳送給服務器。

  如,用戶點擊了鏈接指向”清華大學院系設置“的頁面,其URL爲http://www.tsinghua.edu.cn/chn/yxsz/index.htm.下面是點擊後發生的事件:

    1.瀏覽器分析連接指向界面的URL

    2.瀏覽器向DNS請求解析www.tsinghua.edu.cn的IP地址

    3.域名系統DNS解析出清華大學服務器的IP地址爲166.11.4.100

    4.瀏覽器與服務器建立TCP連接

    5.瀏覽器發出取文件命令:GET/chn/yxsz/index.htm

    6.服務器www.tsinghua.edu.cn給出響應,把文件index.htm發送給瀏覽器

    7.釋放TCP

    8.瀏覽器顯示”清華大學院系設置“文件index.html文件

  4.萬維網的文檔

    萬維網使用超文本標記語言HTML(HyperText MakeUp Language)來顯示各種萬維網頁面。

    靜態文檔:指在文檔創作完畢後就存放在萬維網服務器中,在被用戶瀏覽的過程中,內容不會改變。

    動態文檔:指文檔的內容是在瀏覽器訪問萬維網服務器是才由應用程序創建的

    活動文檔技術:可以使瀏覽器屏幕連續更新。活動文檔程序可與用戶直接交互,並可以連續第改變屏幕顯示

  5.萬維網的信息檢索系統

    1.全文檢索搜索和分類目錄搜索

    2.google搜索技術

4.電子郵件

  一個郵件系統應該具有三個構件:用戶代理、郵件服務器以及郵件發送協議(如SMTP)和郵件讀取協議(如POP3)。

  簡單郵件傳送協議SMTP(Simple Mail Transfer Protocol)

  通用因特網郵件擴充MIME(Multipurpose Internet Mail Extension)

  郵局協議POP3(Post Office Protocol)

5.動態主機配置協議DHCP

  動態主機配置協議DHCP(Dynamic Host Configuration Protocol)給運行服務器軟件而位置固定的計算機指派一個永久地址,而當這計算機重啓時其地址不會改變。

6.簡單網絡管理協議SNMP

  網絡管理包括對硬件、軟件和人力的使用、綜合、與協調,以便對網絡資源進行監視、測試、配置、分析、評價和控制,這樣就能以合理的介個滿足網絡的一些需求,如實時運行性能、服務質量等。

  簡單網絡管理協議SNMP(Simple Network Management Protocol)由三部分組成,即:

    1.SNMP本身,負責讀取和改變個代理中的對象名和其狀態數值。

    2.管理信息結構SMI,定義命名對象和定義對象類型(包括長度和範圍)的通用規則,以及把對象和對象的字進行編碼的基本編碼規則BER

    3.管理信息庫MIB,在被管理的實體中創建了命名對象,並規定了其類型

 

 

在通信之前,TCP 會先通過三次握手的機制來確認兩端口之間的連接是否可用。而UDP不需要確認是否可用,直接傳。

三次握手機制:

一開始客戶端和服務端都市關閉狀態,但是在某個時刻,客戶端需要和服務端進行通信,此時雙方都會各自準備好端口,服務器段的端口會處於監聽狀態,等待客戶端的連接。客戶端可會知道自己的端口號,和目的進程的端口號,這樣才能發起請求。

第一次握手:客戶端想與服務器進行連接了,所以狀態變爲主動打開,同時發送一個連接請求報文給服務器段SYN=1,並且會攜帶x個字節過去。發送完請求連接報文後,客戶端的狀態就變爲了SYN_SENT,可以說這個狀態是等待發送確認(爲了發送第三次握手時的確認包)

第二次握手:服務端接收到連接請求報文後,從LSTTEN狀態變爲被動打開狀態,然後給客戶端返回一個報文。這個報文有兩層意思,一是確認報文,而可以達到告訴客戶端,我也打開連接了。發完後,變爲SYN_RCVD狀態(也可以說是等待接受確認狀態,接受客戶端發過來的確認包)

第三次握手:客戶端得到服務器端的確認和知道服務器端也已經準備好了連接後,還會發一個確認報文到服務器端,告訴服務器端,我接到了你發送的報文,接下來就讓我們兩個進行連接了。客戶端發送完確認報文後,進入ESTABLISHED,而服務器接到了,也變爲ESTABLISHED

TCP釋放連接時的四次揮手

通信完成後,連接就會被釋放,通過四次揮手機制來完成這個事情。

TCP斷開鏈接的過程和建立鏈接的過程比較類似,只不過中間的兩部並不總是會合成一步走,所以它分成了4個動作,張三揮手(fin)——李四傷感地微笑(ack)——李四揮手(fin)——張三傷感地微笑(ack)。之所以中間的兩個動作沒有合併,是因爲tcp存在「半關閉」狀態,也就是單向關閉。

 

有兩張很好的動圖傳不上去。。。

 

盜圖:

 

姑且做一篇博客。

 

 

 

發佈了55 篇原創文章 · 獲贊 39 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章