互聯網中的數據是如何傳輸到個人電腦的?

carleo


根據所學計算機網絡知識,這裡我主要講因特網,因特網是全球最大最廣的互聯網。在因特網中,用戶之間傳輸數據共享資源要遵循TCP/IP協議族,TCP/IP協議又分為五層分別為物理層,鏈路層,網絡層,運輸層以及應用層。想要詳細講述數據傳輸根據TCP/IP協議在這裡並不合理,所以只能簡單敘述一下各個分層的原理以及協議。



物理層

首先,每個分層各自管理自己,屬於對等體,不參與理解上下層數據。物理層提供具有機械的,電子的,功能的和規範的特性,傳輸的數據是二進制代碼(比特流),傳輸的形式(信號)有數字信號和模擬信號,數字信號為高低點位,模擬信號為波。信號由於傳輸的距離為了避免出現數據錯誤還要調製信號。傳輸介質有同軸電纜,光纜,雙絞線等,在傳輸信道上,還實行信道複用,將信號按波的頻率或者時間或者編碼分給不同用戶。物理層實現的是最底層的數據傳輸。


鏈路層

鏈路層,數據鏈路層傳送的是幀,數據鏈路是一條物理線路遵循協議傳輸,首先描述數據幀,從網絡層發來的數據包封裝成幀,添加首部和尾部,作為幀定界(區分不同數據包)。數據幀傳送需要透明傳輸,也就是對於數據中存在開始符或結束符以及其他字段,需要進行字節填充或字符填充達到區分。同時需要差錯控制,通過crc循環冗餘檢驗是否數據出錯,出現錯便丟棄數據幀。鏈路層的地址根據MAC地址傳送,MAC地址存在於網卡中。




網絡層

網絡層最主要的功能是路由,尋找目的主機的線路,發送的數據完整的ip數據報。網絡層的協議為ip,我能通常說的ip地址其實是主機在網絡上的名字(地址),現在採用ipv4。網絡層發送數據包採取無連接分組傳送,不用在意數據包先後到達順序。路由器是網絡層最核心的部分,傳輸線路由路由器實現,由於太過複雜,同時ip地址部分也太過複雜所以不詳細描述。



運輸層

上面的網絡層是主機與主機間的通訊,運輸層是應用進程間的通訊,數據傳輸還是應用間進行而並非主機間。運輸層的地址是端口號,也就是進程對應的編號(可變),協議有tcp和udp,udp是不面向連接,也就是不檢查發送數據是否正確完整,tcp則是面向連接,這也表明tcp更加安全但是耗費資源。

下面是tcp的流水線傳輸,提高傳輸效率。ack是確認數據。




應用層

應用層對應我們的應用程序,如QQ或者瀏覽器,由於記住主機的ip地址(32位)並不現實,採用域名系統dns將ip地址變成英文格式方便記憶使用。應用層的協議有ftp,http等文件傳輸協議。著名的萬維網(www)便是在應用層。


以上是我對互聯網傳輸數據的理解,如果我錯誤請評論指出或者私信,喜歡可以轉發評論,謝謝。


小黑didi


互聯網中數據傳輸到個人電腦,用通俗的語言來講,大概是這樣一個過程:

假設個人電腦A在訪問互聯網上的數據所在設備B,那麼在路由尋路過程中是這樣的:

A要訪問B,在發送數據包請求時,攜帶一些必要信息(數據包源地址A,數據包目標地址B);第一步將此信息發送給自己的網關設備a,a接收到信息後,發現是要發給B,在路由表中進行查詢,找到適配的路由是要通過b走才能訪問,於是將此信息轉發到b,b在路由表中查詢,發現有兩條路可以通往B,於是按照設定的路由方式(或是一主一備,或是負載均衡)發送到c或d,然後由c或d轉發到B,B收到請求信息後,進行回應,將A所需要的數據回送,先是回送到c或者d,由c或者d發往b,b由轉發到a,最後a轉發回給A,A接收到所需要的數據,整個傳輸過程完成。


上述過程說明了數據在傳輸過程的路由尋路方式,實際說明這樣一個傳輸過程比較複雜,比如數據包傳輸用的協議,安全,加密,壓縮等各種過程,這裡沒有提及,各個路由器中間有大量的傳輸設備,光纖線纜,交換設備等, 兩個設備之間可能只有幾米遠,也可能有幾百公里遠等。


分享到:


相關文章: