假設小明須要傳遞一部電影給小花。這個電影有1G。
很顯然,不可能一次就把1G的內容一下傳遞給小花,由於不管是網卡仍是他們各自的電腦,都沒法一次性處理這麼大的內容,只能是切割成10份或者更多,這樣,小明的機器和小花的機器纔可以承載這些流量。
那麼就有一層將專門數據既然被分紅了一塊一塊的傳輸,而且給每一塊數據加上一個序號,這樣就能保證傳送到接收端實體的包的也是按序接收,這一層就是傳輸層(TCP層)。
在分紅一個個包之後那麼必須給每個加上一個頭,讓每一塊數據包知道小花的地址。那麼這就是IP層,IP層還負責尋找最合適的路徑。
在IP層將包分好之後由網卡來傳輸。網卡再將傳輸層切割之後的包加上一些頭和尾(好比目的地mac地址,源mac地址)。而且根據IP找到下一臺機器的地址(ARP(地址解析協議):MAC地址的得到從本機的ARP緩存表中來;ARP緩存表中的MAC地址從ARP廣播中得到。若是沒有獲得目標主機的MAC,該數據包以廣播形式提交給交換機,交換機經過一輪廣播包後得到目標MAC,在下次傳遞時使用。若是目標主機不在本網絡,將數鏈層協議部分的目的地mac地址封裝成網關MAC地址,提交給網關設備處理)。
在到達小花的電腦之後,又通過層層分解,到達了小花的電腦的TCP層(傳輸層)。小花的電腦TCP層發現,拿到數據之後,要確認是否收到,收到的包是否損壞,是否按順序收到等。固然包被tcp層處理之後,再拿給應用層,應用層再根據本身的協議給用戶展示行爲和動做。好比小花就能夠看電影。
咱們能夠把應用層比做一個富家少爺。而TCP層就是管家。富家少爺只是告訴管家,把這個東西發到女神那裏。
管家首先得給女神的管家通氣兒,問人家女神願不肯意收咱們家少爺的的禮物。要是人家女神家不肯意,本身還瞎送個啥。
待女神還贊成後,管家就開始着手發貨了,如今的科技不發達,都是馬車拉貨,鏢局一次性拉不了這麼多,因此管家必須先將這些東西分紅一個個包,讓鏢局一次次拉。可是管家並不關心鏢局怎麼送貨。只是告訴我要你把這一個個包裹送到XXX鎮XX村,要是有東西丟了或者壞了,大家鏢局就能夠關門了。而後對方收到一個包裹的時候就給我來個信,我好清理掉已經發出去的包裹。
鏢局說,「你放心,咱們有一套嚴格的協議,保證您的包裹又快又完整的送到對方手裏」。
這鏢局的人拿到一個個包裹之後,先會由最熟悉路徑的工做人員規劃出最短路徑。這樣用戶體驗確定是最好的,並且路徑越短,也越安全。
路徑已經規劃好,如今該由鏢師送貨了。鏢師送貨不會直接把貨送到對方手裏,而是隻會送到本身熟悉幾個熟悉的分鏢局中的一個。畢竟是本身熟悉的地方,路熟,人熟。可是遠一點的就不必定。人生地不熟,容易出大問題。鏢師押鏢的時候一看編號就知道本身要把包裹送到哪個分鏢局。至於目的地是哪,鏢師並不關心。
鏢師的職責就是在本身送貨這段時間必定要保證貨物的安全。畢竟不管是走官道仍是抄小路仍是會碰到無恥的山賊。一旦被劫鏢,鏢師又得回到鏢局從新取貨再送一次。
貨物最終達到女神的管家手裏,首先管家肯定每一個包裹是否是完整,是否是包裹的順序不對,等等。等到全部的手續檢查完之後再交給自家小姐。而後給對方管家說這個包裹我已經收到了。固然有可能小姐家院子比較小,而鏢局的送貨效率又挺高,這得告訴對方管家,貨慢點送,我家院子堆不下。或者我想要某個某個包裹,剛纔好像沒送過來,你趕快再送一下。
這裏的鏢局其實就是扮演了IP層,鏈路層和物理層的角色。這篇文檔只是爲了快速理解TCP/IP的五層模型,心中有一個大概的印象。相信你們再去學習計算機網絡相關的知識的時候會好理解的多。緩存
協議名稱 | 對應的協議說明 | OSI |
---|---|---|
應用層 | 少爺,小姐 | 應用層 表示層 會話層 |
傳輸層 (TCP層) | 管家 | 傳輸層 (TCP層) |
網際層,又叫網絡層(IP層) | 鏢局中的「軍師」屬於IP層。軍師要選擇最短路徑,提供邏輯地址到物理地址的轉換。流量控制和擁塞控制。 軍師決定鏢師該往哪一個地方送貨 | 網絡層 |
網絡接口層(又稱鏈路層) | 鏢師只會在一個分鏢局到另一個分鏢局之間傳遞貨物。鏢師屬於網絡接口層(又稱鏈路層)層 |
物理層數據鏈路層 |