話說歷史巨輪滾滾向前,時至今日,已經進入移動互聯網時代。
行之道路,舉目望去,不管男女老幼,均手捧一個屏幕,手指縱橫其上,有手舞足蹈,有黯然神傷,有會心一笑等。
這個屏幕的終點在哪?如何到達?這就是咱們須要追尋的方向,去探索的道路。
衆所周知,在咱們人類社會,發展至今日,得到如此的成就,離不開溝通協做,畢竟人力有時盡,惟有衆人齊力,方可填海移山。而溝通的基礎就是咱們的語言、文字,由於只有相同的語言、文字或者是可以讀懂的語言、文字才能相互理解,共同合力。
別看如今的互聯網是多麼的蓬勃,多麼的絢爛,可是它是人類發明的,既然是人類發明的,確定也就借用了人類的行爲準則來創造。
咱們既然踏上了尋訪互聯網的道路,天然也要明白瞭解互聯網的準則,它就是網絡協議。
在一樣的網絡協議的基礎之下,全球的開發人員,編寫基於這個協議的代碼,打造着風靡全球的互聯網大廈。
既然咱們要探訪屏幕的另外一邊,那就來一次幾乎人人都體驗過的網購之旅吧。
提及網購,咱們如今一般有兩種方式:一是,經過手機的購物APP;二是,經過電腦的瀏覽器輸入對應的購物網址。兩者雖然形式上有所不一樣,可是本質都同樣的,使用的相同的網絡協議。
來吧,讓咱們踏上旅途吧!
既然是旅途,目的地是購物店。這條路該怎麼去呢?
首先,咱們確定會問身邊的人(搜索瀏覽器自身的緩存、搜索操做系統的緩存及操做系統的本地 Hosts文件),身邊的人可以回答,天然是最好的,若是不能回答,就要問當地有權威的人(本地域名服務器)了。
其次,當地代理人若是知道,就會回答具體地址,若是不知道,就會查閱他的檔案簿,可以查詢到,也會回答,不過由於是經過檔案簿知道的,天然不是代理人直接回答的了。
再次,當地代理人在他的檔案簿也沒有查詢到,就會直接向總部(根域名服務器)詢問,代理人爲了維護他的代理地位,會很是負責任的一直查下去,知道查到地址爲止,這就是遞歸查詢。
最後,總部(根域名服務器)收到當地代理人查詢請求時,要麼直接告知店的具體地址,要麼就是告訴當地代理人去詢問一級代理(頂級域名服務器),重複剛剛的流程,要麼直接告知店的具體地址,要麼就是告訴當地代理人去詢問二級代理(權威域名服務器),最後當地代理人獲得了店的地址,就會告訴咱們,這個過程就是迭代查詢。
既然知道了店的地址,咱們就按圖索驥,尋路而去。
咱們到了店裏面,天然是瀏覽商品或者是已經有了目標商品,能夠想象這個龐大的購物商店一線營業員(應用層)都很是智能,只要你找到了本身想要的商品還有數量(HTTP & HTTPS),就會第一時間告知與你。
咱們能夠假設購買了一個大件商品,咱們本身確定是運不回去的,下面就交給了商店的運輸部門(傳輸層),而運輸部門將物品打包好以後,就會放到運輸工具裏面。
這裏就會有兩種狀況,既然是購物,固然咱們就但願商品可以安全的送回家裏面,而不是損壞更甚至於丟失。購物店天然也知道咱們的述求,天然不會把本身的名聲毀掉,這時候就會派專人監控商品的運輸軌跡,嚴格保障商品可以安全無誤的送到客戶的手中(TCP)。
另一種狀況就是,商家知道了客戶的住址,就會發一些促銷傳單或者手冊之類的,只要發出去就好了,確定不會派專人監督的,由於這樣太耗費人力了(UDP)。
好,我們接着說運送大件商品的事情,當物品已經裝入運輸工具以後,就會進入了道路上(網絡層),就會根據客戶留下的家庭地址爲目標進發(IP),天然得嚴格遵照交通規則。
這個時候購物店的調度中心,就會判斷目標地址是在當地,仍是在遠方,在當地的話,就會直接送過去,若是在遠方的話,就要通過當地交通樞紐(網關),那麼怎麼才能到達當地交通樞紐呢,就會廣而告之(ARP)。
能夠想象當地交通樞紐有兩個路口,一個是鏈接當地的入口(MAC),另外一個是鏈接遠方的出口。
這個時候運輸車就會進入交通樞紐鏈接當地入口的路上(數據鏈路層),當地交通樞紐(路由器),會根據目標地址來判斷接下來改怎麼走?(路由表)
交通樞紐之間是相互鏈接的,都有鏈接當地的入口和鏈接遠方的出口。
在每一個對應的交通樞紐的當地,能夠直接到達,但是一旦要去遠方,就得查看運輸車的來的地址(源IP)和去的地址(目標IP)。
交通樞紐之間是可以往來的,天然知道路線圖(路由協議),交通樞紐之間就是區域,當運輸車知道了下一個交通樞紐,就得去往這個交通樞紐對應的入口地址,經過了下一個交通樞紐的出口,就會找到下一個交通樞紐的入口,再經過它的出口,一直走到目的地的交通樞紐。
目的地的交通樞紐在其對應的區域內廣而告之,客戶的家就會告知家的地址的入口,運輸車天然就能到達客戶的家裏。
客戶發現運輸車正是從他指定的入口進來的,查驗了運輸車的來的地址(源IP)和去的地址(目標IP),都是準確的。
別忘了,爲了保障商品的準確送達,運輸車安裝了監控系統,這個監控系統會一直報告運輸車的軌跡,若是運輸車中間出了問題,可讓購物店及時知道,這樣能夠從容應對。若是在規定的時間內,運輸車沒有到達,購物店就會再發一次貨,爲了維持它的品牌,提升用戶的購物體驗。
當用戶收到貨以後,就會予以支付,購物店就會造成一次完整的交易訂單。瀏覽器