Github連接地址,是我大三上考試前和朋友一塊兒作的一些筆記,固然還有其餘的學習內容,以後還會加入一些其餘課程的學習內容。git
上一篇文章中咱們已經介紹過了網絡的體系結構模型中的TCP
層,這一次咱們要講的就是應用層,他給咱們帶來的用途到底有哪些呢?我想若是沒作過了解的朋友們除了http
也就可能只知道https
了。github
其實這是一個基層,爲何說是基層,由於他是一個專門爲咱們的開發而準備的一個平臺,http
、https
、DNS
、SMTP
等一系列的協議都是在這一層創建的。面試
http
其實分爲不少的版本,version1.0
,1.1
以及2
。vim
2
存在。1.1
、2
存在。第一個問題:什麼叫作流水線?瀏覽器
圖的意思就是爲了說明,數據傳輸只能發送一條,仍是一次性可以發送多條數據的不一樣。這種方案須要思考的問題,就是一個數據包的分類,每一個返回的數據包對應是什麼數據。安全
第一個問題:什麼叫作持久化鏈接?服務器
圖的意思就是爲了說明,一次TCP
鏈接只進行一次的數據傳輸,仍是一次TCP
鏈接可以進行屢次數據傳輸。這種方案須要思考的問題,就是服務器的壓力,由於過多的TCP
鏈接進行了保持的話,那麼形成的問題就是服務器崩潰。網絡
其實二者大體內容上來講是相同,做出的升級實際上是一個安全性方面。負載均衡
爲何要作安全性的升級呢? 看圖說話好了,下圖是經過wireshark
軟件對數據的一個抓包。分佈式
加密後 | 加密前 |
---|---|
這仍是通常的數據,若是咱們數據裏摻雜了咱們的我的信息,好比說帳號密碼等等,被抓去以後,形成的結果就是災難性的。而這就是https
作了安全性處理帶來的好處。害處天然也是存在的,就是須要加密和解密的時間,可是這個削弱程度已經徹底的被現代社會的高速處理能力給弱化了。
在DNS
這個模塊上,考察的點通常都是工做流程的問題,因此重點作一個講解。
首先要知道DNS
是幹什麼的,官方語言是將域名地址轉化爲IP
地址。那俗話講就是講www.baidu.com
轉化爲14.215.177.39
。玩過雲服務器的朋友應該知道,不論是哪家公司給你的公網地址都是一個IP
地址。
那爲何不直接用IP
地址來訪問呢?
這個問題其實有挺多緣由的:
IP
地址和域名地址,你會記住哪一個?這顯然是域名地址。IP
是惟一的,可是和域名關聯後,一個域名地址能夠對應多個IP
地址,你又是經過域名方式請求,也就作到了負載均衡。通常來講這種事件的發起人是咱們的本地客戶機,咱們經過瀏覽器輸入了www.baidu.com
,那麼這個時候他的探索歷程開始了。
IP
地址對應的域名地址 (命令爲:sudo vim /etc/hosts)
IP
地址存在哪些的。存在則直接返回,不存在,那咱們只好繼續往上找了。DNS
服務器發出請求的,若是根DNS
服務器中,咱們一樣的仍是找不到,那咱們纔有開始下面的步驟,向下級服務器發出查找請求。
IP
地址後,就將咱們的數據進行一個返回,自此咱們就獲得了咱們咱們須要的IP
地址。其實應用層還有不少不少的協議好比FTP
(文件傳輸協議)這種專門用於文件傳輸的協議,SMTP
(簡單郵件協議)這種用於郵件發送的協議。這一類的協議他們基於的都是TCP
層給出的協議做爲基礎的。
像DNS
基於的就是UDP
協議完成,SMTP
則是基於TCP
的協議,這是由於他們對應用場景的思考,若是郵件沒發到,那麼跟沒發沒有區別,而DNS
這種若是每次都要經過請求創建服務,徹底比不上UDP
直接發數據快的。
以上就是個人學習成果,若是有什麼我沒有思考到的地方或是文章內存在錯誤,歡迎與我分享。
相關文章推薦: