網路傳輸之網路協議

2021-08-10 14:05:46 字數 2069 閱讀 8888

之所以說神奇的網路協議,是因為網路本身就覺得很神奇。當我想要給乙個小夥伴傳輸檔案時,我們兩個人看到的都是一樣的介面,就像通過qq,今目標傳送檔案時,檔案傳輸速度,傳到了多少,都是一樣的,但是我們實際上卻隔著千山萬水。

這篇文章就來說一說,是如何實現傳輸的。這篇文章,是郭凱師哥點燃了自己對這方面的興趣,所以研究不深入,只是粗談。

網路傳輸需要知道幾個概念

-應用層

-傳輸層

-網路層

-鏈路層

-物理層

在這個層次上,用到的協議有http(hyper text transfer protocol,超文字傳輸協議,用於web瀏覽器),ftp(file transfer protocol,用於檔案傳輸),imap(internet mail access protocol,用於郵件傳送),telnet(telecom munication net work protocol,電信網路協議,用於遠端控制)/dns(domain name system,網域名稱命名系統)

這一層主要就是,比如說我要傳乙個檔案給乙個小夥伴,那麼就要用到ftp,這個檔案就是乙個資料報,然後再在裡面加入ftp協議的一些內容在裡面,形成乙個新的資料報,再往下一層傳輸

資料報從應用層傳輸過來之後,就到了傳輸層。傳輸層的協議就是tcp/udp,如果是http,ftp,imap,telnet協議,那麼傳輸層用到的協議就是tcp協議,因為它們都是以tcp協議為前提的。如果用到的是dns協議,那麼傳輸層用到的協議就是udp協議,同樣,dns協議也是以udp協議為前提。

那麼傳輸層起到了乙個什麼樣的作用呢?是埠–埠的作用。

舉個例子,咱們在用電腦的時候,會有很多訊息過來,有qq的訊息,有foxmail的訊息,有網頁的訊息,那麼電腦是如何識別的呢?就是通過傳輸層的相關協議來識別的。

資料報從應用層傳輸過來之後,將相關協議加在資料報裡面,重新形成乙個新的資料報,往下傳輸

對於網路層的協議,大家應該有所熟悉。ip協議,arp協議,rarp協議,還有乙個協議,我想不起來了,就暫時說這三個協議。

我想要傳輸東西給別人,那麼如何才能確保那個人就是我想要傳給的人呢?利用ip和mac位址。咱們都知道ip和mac位址都是唯一的,所以這樣就可以確定乙個唯一的物件。

所以當資料報來到網路層的時候,就將ip協議一些內容加到裡面,形成乙個新的資料報,繼續向下傳遞。

但是有時候,我們只知道ip位址,不知道對方的mac位址,這怎麼辦呢?arp協議就是來解決這個問題的。arp協議和閘道器共同起作用,可以通過ip位址,知道mac位址。

那麼如果我知道對方mac位址,不知道ip位址呢?rarp協議就來解決這個問題。

網路層的資料報往下傳遞就到了鏈路層。這一層主要的協議就是ethernet(乙太網)協議。就是乙太網,聽到乙太網,大家是不是都很清楚?沒錯,就是乙太網協議。

乙太網協議,在這裡的作用,我個人覺得,就是快遞的作用,快遞員知道每乙個人的位址,每個人都可以把快遞(資料報,注:說資料報不太準確,因為在鏈路層是以幀為單位傳遞資料的,這樣說是為了和上面說法一致)給他,他呢,就把快遞送到了你的手中。

這就是鏈路層的作用。你只知道你要傳輸的ip和mac位址,但是不知道具體位置,乙太網協議告訴你!

資料報裡面再加上乙太網協議的一些內容在裡面,形成新的資料報,繼續往下一層傳輸。

物理層。這一層大家都應該比較容易理解。一說物理,那肯定都是落實到了實體。物理層協議主要有rs-232,rs-449,ieee802.3等

資料報裡面的資料以0和1的形式,轉換為電訊號,告訴電腦,有資料過來了。然後電腦接收到電訊號,開始根據各種協議進行解析,將最初的檔案資料報解析出來。

到這裡,檔案就算是傳到對方那裡了。

為什麼要有協議呢?個人覺得是為了資料的安全。

但是其實是因為計算機網路本身就很複雜,如果想要實現聯通全世界的話,就讓本來複雜的事情,變得更加複雜。那麼怎麼辦呢?就採用分層的辦法,把複雜度慢慢降低,分成好幾個不同的層次,這樣就會變得簡單了。

網路傳輸協議

transmission control protocol 傳輸控制協議 amf action message format 是flash與服務端通訊的一種常見的二進位制編碼模式,其傳輸效率高,可以在http層面上傳輸。現在很多flash webgame都採用這樣的訊息格式。amf協議是基於http...

網路傳輸協議

伺服器和客戶端間進行通訊時的約束和規範,客戶端與服務端的資料互動並不是雜亂無章的,需要遵照 基於 一定的規範進行,這個規範就是http協議。http協議主要由請求和響應構成。常用請求方法 post get put delete。請求由客戶端發起,其規範格式為 請求行 請求頭 請求主體。響應由伺服器發...

linux網路傳輸協議之TCP IP

1 為了滿足兩個不同主機 包括能聯網的linux裝置 pc機等 程序間通訊,這個時候就需要用網路 有線或無線 1 低階應用層 直接基於作業系統原始socket介面程式設計,難度最大,所有的流程自己編寫,但是能滿足自己所有的需要,比如自己想做一些不一樣的功能 2 高階應用層 基於網路通訊應用框架庫,比...