萬物互聯——TCP、HTTP原理及相關協議(大工程,未完結)

按照計劃是應該開應用層的知識點的。
但是講應用層必不可少的就得有HTTP這個關鍵性知識點,而HTTP由於TCP緊密相連的,兩個知識點分別處於兩個層。
爲了更好的理解整體框架,所以把重點撿了出來,先難後易,更利於讀者建立更好的知識網絡,儘可能減少知識孤島。
我爭取簡明有趣的講解TCP、HTTP,如若還有理解難度的話,那就等以後的文章吧。

一、預覽知識網

在這裏插入圖片描述    上圖僅是一個重點知識體系,但本文講的知識點可能有點多,所以爲了有更多的收穫,讀者可以自己畫一張思維導圖,以便形成一個知識網而不是知識孤島。

二、你會是一個合格的地下工作者嗎?

    之前有看過一部電影,名稱不太記得了,但是電影情節還是印象頗深。

    有一個祥和的村子進了一幫馬匪,進了村子就燒殺搶淫,霸佔村子不走。村民一面應付馬匪,一面私下商量,如何聯繫官軍,趕走這羣馬匪。村民合議,派出兩個小夥子,離開村子,去聯繫官軍。
    話說,兩位小夥走了好幾天,發現了一大批人馬。他們誤以爲是官軍,於是就上前呼救。其實這批人馬並不是官軍,而是村子裏面那些馬匪的大部隊,換言之,村子裏面的馬匪是這一大批馬匪的小部隊。二人上前訴說種種遭遇,而馬匪頭子心裏明白這兩個小夥子將自己這些人當成了官軍,於是讓二人引路,去往他們村子…

    當時我看到這裏,就被迫讓家長趕回去睡覺,並不知道後續的情節。但是我想,對於村民來講,他們的命運只會更加的不堪。那麼如果我們有朝一日又機緣巧合做了一名地下工作者,那麼我們會勝任嗎?

    在網絡傳輸中,有一個協議描繪了數據如何進行可靠傳輸,那就是TCP協議。

三、數據傳遞方式

    在說TCP協議之前,首先要說一下數據是如何傳遞的。
    我們要進行數據首先要在物理上形成通路,也就是說通過網絡設備和通信電纜把進行兩臺設備連接起來。
在這裏插入圖片描述
    那麼這一步相當於就是修建好公路。那我們傳輸數據,實際上是我們的比特流轉成的某種信號在線路上跑(在上篇文章已經介紹過了),那麼如何高效的傳輸就形成了一個問題,那麼有幾種數據傳輸方式呢?

1. 電路交換

在這裏插入圖片描述                                             尚未進行數據交換的網絡圖

    首先我們看到在沒進行網絡交換的時候,在現實世界中已經構建好了通信基礎。那麼我們想如果數據傳輸的時候,就必須有一條路線能供我們傳輸。那麼可能就會想到這樣一種辦法:在傳輸數據的時候,我們先形成一條邏輯路線能供兩個主機相連,如下圖:
在這裏插入圖片描述
    紅色路線就是基於我們這種理念形成的邏輯通路(邏輯通路就是在實際的物理線路上,我們通過某種方式選擇的一條從一端到另一端的路線)。那麼這種數據交換方式叫做電路交換,這條通路就稱爲虛電路(虛=假=不真實,也就是不真實的電路,就是我們講的邏輯電路)。
    電路交換有三個過程:①虛電路的建立②數據交換③虛電路的拆除。
    從這裏我們也可以從某種角度發現爲什麼要稱爲虛電路,因爲一次虛電路的生命週期短且不固定,當然更主要的是因爲不是真實的電路這個原因。
    電路交換是我們數據交換唯一方式嗎?當然不是啦,不然爲什麼電路交換的標題序號是1。除此之外還有報文交換,分組交換等形式。
    有別的形式就意味着電路交換的數據交換方式有某種弊端,那麼電路交換的優缺點是什麼呢?
    (1)帶寬浪費,信道利用率低
    根據上圖我們也可知,虛電路的建立也是通過結點一個個建立起來的。那麼在建立虛電路的時候,路線上的各個節點會爲虛電路保留信道(信道劃分策略有時分、頻分、波分等等,以後有機會的話物理層會講),虛電路會獨佔信道。當雙方連接建立而無數據傳輸的時候,會造成信道資源浪費。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章