計算機網路 應用層

2021-09-20 10:39:01 字數 4927 閱讀 9791

程序通過乙個套接字(應用程式程式設計介面)的軟體介面向網路傳送報文和從網路接收報文

ip位址

目的地埠號

安全套接字層(secure sockets layer)希望乙個web站點能夠識別使用者,希望把內容與使用者身份聯絡起來

位於web站點乙個後端資料庫

允許該伺服器在使用者與應用程式會話的過程中標識該使用者

web快取器也叫**伺服器

同時是伺服器又是客戶

在接受客戶的請求的時候,檢視本地有無該物件的副本,如果有直接傳送,沒有則向初級伺服器進行請求

部署web快取器的原因:

大大減少對客戶請求的響應時間

大大減少乙個機構的接入鏈路到網際網路的通訊量

使用條件get方法來檢查和更新在web快取器中的副本是否是最新的以及是否被修改過

dns 是乙個分布式資料庫,提供了主機名和 ip 位址之間相互轉換的服務。這裡的分布式資料庫是指,每個站點只保留它自己的那部分資料

網域名稱具有層次結構,從上到下依次為:根網域名稱頂級網域名稱二級網域名稱

dns 可以使用 udp 或者 tcp 進行傳輸,使用的埠號都為 53。大多數情況下 dns 使用 udp 進行傳輸,這就要求網域名稱解析器和網域名稱伺服器都必須自己處理超時和重傳從而保證可靠性。

在兩種情況下會使用 tcp 進行傳輸:

• 如果返回的響應超過的 512 位元組(udp 最大只支援 512 位元組的資料)。

• 區域傳送(區域傳送是主網域名稱伺服器向輔助網域名稱伺服器傳送變化的那部分資料)。

類似於web快取

dns是乙個在網際網路上實現分布式資料庫的精彩範例

ftp 使用 tcp 進行連線,它需要兩個連線來傳送乙個檔案:

• 控制連線:伺服器開啟埠號 21 等待客戶端的連線,客戶端主動建立連線後,使用這個連線將客戶端的命令傳送給伺服器,並傳回伺服器的應答。

• 資料連線:用來傳送乙個檔案資料。

根據資料連線是否是伺服器端主動建立,ftp 有主動和被動兩種模式:

○ 主動模式:伺服器端主動建立資料連線,其中伺服器端的埠號為 20,客戶端的埠號隨機,但是必須大於 1024,因為 0~1023 是熟知埠號。

○ 被動模式:客戶端主動建立資料連線,其中客戶端的埠號由客戶端自己指定,伺服器端的埠號隨機。

服務必須在整個會話期間保留使用者的狀態。

dhcp (dynamic host configuration protocol) 提供了即插即用的連網方式,使用者不再需要手動配置 ip 位址等資訊。

dhcp 配置的內容不僅是 ip 位址,還包括子網掩碼、閘道器 ip 位址。

dhcp 工作過程如下:

1. 客戶端傳送 discover 報文,該報文的目的位址為 255.255.255.255:67,源位址為 0.0.0.0:68,被放入 udp 中,該報文被廣播到同乙個子網的所有主機上。如果客戶端和 dhcp 伺服器不在同乙個子網,就需要使用中繼**。

2. dhcp 伺服器收到 discover 報文之後,傳送 offer 報文給客戶端,該報文包含了客戶端所需要的資訊。因為客戶端可能收到多個 dhcp 伺服器提供的資訊,因此客戶端需要進行選擇。

3. 如果客戶端選擇了某個 dhcp 伺服器提供的資訊,那麼就傳送 request 報文給該 dhcp 伺服器。

4. dhcp 伺服器傳送 ack 報文,表示客戶端此時可以使用提供給它的資訊。

telnet 用於登入到遠端主機上,並且遠端主機上的輸出也會返回。

telnet 可以適應許多計算機和作業系統的差異,例如不同作業系統系統的換行符定義。

乙個電子郵件系統由三部分組成:使用者**郵件伺服器以及郵件協議

郵件協議包含傳送協議和讀取協議,傳送協議常用 smtp,讀取協議常用 pop3 和 imap。

smtp

smtp 只能傳送 ascii 碼,而網際網路郵件擴充 mime 可以傳送二進位制檔案。mime 並沒有改動或者取代 smtp,而是增加郵件主體的結構,定義了非 ascii 碼的編碼規則。

pop3

pop3 的特點是只要使用者從伺服器上讀取了郵件,就把該郵件刪除。

imap

imap 協議中客戶端和伺服器上的郵件保持同步,如果不手動刪除郵件,那麼伺服器上的郵件也不會被刪除。imap 這種做法可以讓使用者隨時隨地去訪問伺服器上的郵件。

應用應用層協議

埠號傳輸層協議

備註網域名稱解析

dns53

udp/tcp

長度超過 512 位元組時使用 tcp

動態主機配置協議

dhcp

67/68

udp簡單網路管理協議

snmp

161/162

udp檔案傳送協議

ftp20/21

tcp控制連線 21,資料連線 20

遠端終端協議

telnet

23tcp

超文字傳送協議

簡單郵件傳送協議

smtp

25tcp

郵件讀取協議

pop3

110tcp

網際報文訪問協議

imap

143tcp

- 假設主機最開始沒有 ip 位址以及其它資訊,那麼就需要先使用 dhcp 來獲取。

- 主機生成乙個 dhcp 請求報文,並將這個報文放入具有目的埠 67 和源埠 68 的 udp 報文段中。

- 該報文段則被放入在乙個具有廣播 ip 目的位址(255.255.255.255) 和源 ip 位址(0.0.0.0)的 ip 資料報中。

- 該資料報則被放置在 mac 幀中,該幀具有目的位址 ff:ff:ff:ff:ff:ff,將廣播到與交換機連線的所有裝置。

- 連線在交換機的 dhcp 伺服器收到廣播幀之後,不斷地向上分解得到 ip 資料報、udp 報文段、dhcp 請求報文,之後生成 dhcp ack 報文, 該報文包含以下資訊:ip 位址、dns 伺服器的 ip 位址、預設閘道器路由器的 ip 位址和子網掩碼。該報文被放入 udp 報文段中,udp 報文段有被放入 ip 資料報中,最後放入 mac 幀中。

- 該幀的目的位址是請求主機的 mac 位址,因為交換機具有自學習能力,之前主機傳送了廣播幀之後就記錄了 mac 位址到其**介面的交換表項,因此現在交換機就可以直接知道應該向哪個介面傳送該幀。

- 主機收到該幀後,不斷分解得到 dhcp 報文。之後就配置它的 ip 位址、子網掩碼和 dns 伺服器的 ip 位址,並在其 ip **表中安裝預設閘道器。

- 主機生成乙個 dns 查詢報文,該報文具有 53 號埠,因為 dns 伺服器的埠號是 53。

- 該 dns 查詢報文被放入目的位址為 dns 伺服器 ip 位址的 ip 資料報中。

- 該 ip 資料報被放入乙個乙太網幀中,該幀將傳送到閘道器路由器。

- dhcp 過程只知道閘道器路由器的 ip 位址,為了獲取閘道器路由器的 mac 位址,需要使用 arp 協議。

- 主機生成乙個包含目的位址為閘道器路由器 ip 位址的 arp 查詢報文,將該 arp 查詢報文放入乙個具有廣播目的位址(ff:ff:ff:ff:ff:ff)的乙太網幀中,並向交換機傳送該乙太網幀,交換機將該幀**給所有的連線裝置,包括閘道器路由器。

- 閘道器路由器接收到該幀後,不斷向上分解得到 arp 報文,發現其中的 ip 位址與其介面的 ip 位址匹配,因此就傳送乙個 arp 回答報文,包含了它的 mac 位址,發回給主機。

- 知道了閘道器路由器的 mac 位址之後,就可以繼續 dns 的解析過程了。

- 閘道器路由器接收到包含 dns 查詢報文的乙太網幀後,抽取出 ip 資料報,並根據**表決定該 ip 資料報應該**的路由器。

- 因為路由器具有內部閘道器協議(rip、ospf)和外部閘道器協議(bgp)這兩種路由選擇協議,因此路由表中已經配置了閘道器路由器到達 dns 伺服器的路由表項。

- 到達 dns 伺服器之後,dns 伺服器抽取出 dns 查詢報文,並在 dns 資料庫中查詢待解析的網域名稱。

- 找到 dns 記錄之後,傳送 dns 回答報文,將該回答報文放入 udp 報文段中,然後放入 ip 資料報中,通過路由器反向**回閘道器路由器,並經過乙太網交換機到達主機。

- 超文字傳輸協議(hypertext transfer protocol)

- url位址(主機名+路徑名)

- 有了 http 伺服器的 ip 位址之後,主機就能夠生成 tcp 套接字,該套接字將用於向 web 伺服器傳送 http get 報文。

- 在生成 tcp 套接字之前,必須先與 http 伺服器進行三次握手來建立連線。生成乙個具有目的埠 80 的 tcp syn 報文段,並向 http 伺服器傳送該報文段。

- http 伺服器收到該報文段之後,生成 tcp syn ack 報文段,發回給主機。

- 連線建立之後,瀏覽器生成 http get 報文,並交付給 http 伺服器。

- http 伺服器從 tcp 套接字讀取 http get 報文,生成乙個 http 響應報文,將 web 頁面內容放入報文主體中,發回給主機。

- 瀏覽器收到 http 響應報文後,抽取出 web 頁面內容,之後進行渲染,顯示 web 頁面。

1.採用非持續連線的http

總的時間為兩個rtt+傳輸html檔案的時間

2.採用非持續連線的http

必須為每乙個請求物件建立和維護乙個全新的連線

在客戶和伺服器中都要分配tcp的緩衝區和保持tcp變數

p2p體系結構的自擴充套件性

bittorrent

最稀缺優先技術

(鍵、值)對

計算機網路 應用層

運輸層為應用程序提供了端到端的通訊服務。但不同的網路應用程序之間,還需要有不同的通訊規則。因此在運輸層協議之上,還需要有應用層協議。應用程序之間的通訊必須遵守嚴格的規則。應用層的協議應當定義 1 網域名稱系統dns 網域名稱到ip位址的解析是由分布在網際網路上的許多網域名稱伺服器程式共同完成的。網域...

計算機網路 應用層

計算機網路分層 應用層是網路應用程式和及應用層協議存留的地方。應用層協議分布在多個端系統上,乙個端系統中的應用程式使用協議與另乙個端系統中的應用程式交換資訊的分組。該層資訊被稱為報文。常用的應用層協議有 http,smtp,ftp,dns 1.基本概念 執行在不同端系統的程式的通訊是通過程序完成的。...

計算機網路 應用層

我們現在已經了解了運輸層為應用程式提供了端到端的通訊服務,但是不同的應用程序之間,還需要不同的通訊協議,因此在運輸層協議上方還有應用層協議,這是因為每個應用層協議都是為了解決一類問題,而問題的解決又要通過不同主機的多個應用程序之間通訊和協同工作來完成,應用程序之間的通訊需要遵守嚴格的規則,應用層的具...