應用層,了解一下

2021-09-13 20:12:40 字數 3102 閱讀 5026

改變的速度,即對學習來說,最重要的東西是學習的方法,在特定的技術中如何靈活地適應改變,當你在職業生涯中前行時,在新的機會和可能性方面如何保持開放的思想 --marc andreessen
研發網路應用程式的核心是寫出能夠執行在不同的端系統和通過網路彼此通訊的程式

web 快取器也叫**伺服器,它是能夠代表初始 web 伺服器來滿足 http 請求的網路實體

在 internet 上部署**伺服器的兩個原因:

http 協議有一種機制,允許**伺服器證實它的物件是最新的,這種機制就是條件get方法

條件get方法實現要求

**伺服器在儲存響應物件的同時,也對其響應報文的 last-modified 值進行儲存,當同一物件再次被請求時,**伺服器會在請求報文中新增 if-modified-since 字段,且其值等於之前儲存的 last-modified 的值,通過該條件get方法告訴伺服器,僅當自指定日期之後該物件被修改過,才傳送此物件

如果響應物件未被修改,則 web 伺服器還是會向**伺服器傳送響應報文,但是該響應報文中不包含所請求的物件,並且最後響應報文中,狀態行為 304 not modified

smtp 和 http 的區別

郵件報文格式需要由包含環境資訊的首部行,首部行和報文實體通過換行分隔,每個首部必須含有乙個 from: 首部行,乙個 to: 首部行

使用者**a ---> (smtp) ---> 郵件伺服器a ---> (smtp) ---> 郵件伺服器b ---> (pop3,imap,http) ---> 使用者**b

這這個過程中,使用者**a是 smtp客戶,郵件伺服器a即是 smtp伺服器也是 smtp客戶,郵件伺服器b是 smtp伺服器

實際上,smtp 被設計成將電子郵件從一台主機推到另一台主機

為什麼使用者**a要通過郵件伺服器a作為中繼,而不是直接將郵件推送給郵件伺服器b呢?

使用者**b從郵件伺服器b上取報文是乙個拉操作,而 smtp 協議是乙個推協議,因此需要引入郵件訪問協議來解決難題,包括 pop3(post office protocol-version 3)、imap(internet mail access protocol)以及 http

pop3 按照三個階段進行工作:特許,事務處理,更新

在使用者**與郵件伺服器之間的 pop3 會話期間,pop3伺服器會保留一些狀態資訊,特別是記錄被標記刪除的報文,然而,pop3伺服器並不在pop3會話過程中攜帶狀態資訊,這大大簡化了 pop3 服務的實現

imap伺服器將每個報文與資料夾聯絡起來,為使用者提供建立遠端資料夾並為報文指派資料夾的方法

imap協議為使用者提供在郵件伺服器新建資料夾,移動郵件,閱讀郵件,刪除郵件等命令

與 pop3 不同,imap伺服器維護了 imap會話的使用者狀態資訊

imap協議的另乙個重要特性就是它具有允許使用者**獲取獲取報文元件的命令

從使用者主機上呼叫應用程式的角度看,dns 是乙個提供簡單直接的轉換服務的黑盒子。實際上,dns 是由分布於全球的大量 dns 伺服器以及定義了 dns 伺服器與查詢主機通訊方式的應用成協議組成

dns 一種集中式設計是指,在 internet 中只使用乙個 dns 伺服器,它包含了所有的對映。儘管這種設計很簡單,但是它並不適用,原因如下:

為此,dns 採取了分布式的設計方案,在 internet 上實現分布式資料庫

為了處理擴充套件性問題,dns 使用了大量的 dns 伺服器,它們以層次方式組織,並且分布在全世界範圍內,並且沒有一台 dns 伺服器擁有 internet 的所有主機的對映

大致來說,有三種型別的 dns 伺服器:

此外,還有一類重要的 dns 伺服器,為本地dns伺服器(local dns server),本地dns伺服器嚴格來說並不屬於分布式dns伺服器的結構層次,但是其對於 dns 層次結構是重要的。當主機發出 dns 請求時,該請求被發往本地 dns 伺服器,它起著**的作用,並將該請求**到 dns 伺服器層次結構中

為了改善時延效能並減少在 internet 上傳輸的 dns 報文數量,大量使用了 dns快取(dns caching)。例如,本地dns伺服器能夠快取權威dns伺服器某主機/ip的對映,並且在一段時間將丟棄快取資訊

共同實現 dns 分布式資料庫的所有 dns 伺服器儲存了資源記錄(resource record,rr),rr 提供了主機名到 ip 位址的對映。而每個 dns 響應報文包含了若干條資源記錄

資源記錄是乙個4元組,包含 name, value, type, ttl 四個字段,ttl 是該資源記錄的生存時間,它決定了資源記錄應該從快取中刪除的時間。name 和 value 的值取決於 type

dns 只有兩種報文:dns查詢報文和dns回答報文,兩種報文格式相同,包含五個區域

通過本地主機向dns伺服器傳送 dns查詢報文,win-r-cmd操作後,控制台輸入nslookup,呼叫 nslookup 程式,然後輸入 web 站點即可

ddos 通過向每個 dns 伺服器傳送大量分組,使得大多數合法的 dns 請求得不到回答

中間人攻擊,攻擊者截獲來自主機的請求並返回偽造的回答

dns毒害攻擊,攻擊者向一台 dns 伺服器傳送偽造的回答,誘使伺服器在它的快取中接收偽造的記錄

應用層學習筆記一 應用層協議原理

研究網路應用程式的核心是寫出能夠執行在不同的端系統和通過網路彼此通訊的程式。客戶 伺服器體系 客戶與伺服器程序 程序與計算機網路之間的介面 程序定址 標識接收程序需要兩種資訊,主機的位址以及定義在目的主機中的接收程序的識別符號。主機由ip位址標識。目的地埠號用於標識目的主機的接收程序。從四個方面對應...

表示層 應用層

表示層 功能 為異種機通訊提供一種公共語言,以便能進行互操作。這種型別的服務之所以需要,是因為不同的計算機體系結構使用的資料表示法不同。例如,ibm主機使用ebcdic編碼,而大部分pc機使用的是ascii碼。在這種情況下,便需要表示層來完成這種轉換。應用層 包含了通常要使用的協議 http協議 超...

應用層協議 mysql 一些網路應用層協議

1 用於檔案共享的協議 nfs network file system 與cifs common internet file system 前者出現的早,用在linux系統上 後者主要用於windows系統,使用它很簡單,在要共享的資料夾上右鍵 屬性,勾選共享就可以了,目前cifs有3個版本 smb...