先宣告本文摘自是一片非常易懂的文章,以下做了壓縮的摘要!!
物理層:它的主要作用是傳輸位元流(就是由1、0轉化為電流強弱來進行傳輸,到達目的地後在轉化為1、0,也就是我們常說的數模轉換與模數轉換)。這一層的資料叫做位元。
資料鏈路層:為網路層提供服務,其最基本的服務是將源自網路層來的資料可靠地傳輸到相鄰節點的目標機網路層。如何將資料組合成資料塊,在資料鏈路層中稱這種資料塊為幀(frame),幀是資料鏈路層的傳送單位;如何控制幀在物理通道上的傳輸,包括如何處理傳輸差錯,如何調節傳送速率以使與接收方相匹配;以及在兩個網路實體之間提供資料鏈路通路的建立、維持和釋放的管理。
傳輸層:
例如udp,是用於傳送少量資料的。我發20個包出去,一般不會丟包,所以,我不管你收到多少個。在多人互動遊戲,也經常用udp協議,因為一般都是簡單的資訊,而且有廣播的需求。如果用tcp,效率就很低,因為它會不停地告訴主機我收到了20個包,或者我收到了18個包,再發我兩個!如果同時有1萬台計算機都這樣做,那麼用tcp反而會降低效率,還不如用udp,主機發出去就算了,丟幾個包你就卡一下,算了,下次再發包你再更新。
網路層:為了定址!傳輸層只是解決了打包的問題。但是如果我有多台計算機,怎麼找到我要發的那台?或者,a要給f發資訊,中間要經過b,c,d,e,但是中間還有好多節點如k.j.z.y。我怎麼選擇最佳路徑?這就是路由要做的事。
會話層:會話層的作用就是建立和管理應用程式之間的通訊,即可以自動去呼叫tcp 協議發包ip協議去定址
表示層:解決不同系統之間的通訊語法問題,如linux 系統與windows系統不一樣的語法
socket:
這不是乙個協議,而是乙個通訊模型。其實它最初是伯克利加州分校軟體研究所,簡稱bsd發明的,主要用來一台電腦的兩個程序間通訊,然後把它用到了兩台電腦的程序間通訊。所以,可以把它簡單理解為程序間通訊,不是什麼高階的東西。主要做的事情不就是:
a發包:發請求包給某個已經繫結的埠(所以我們經常會訪問這樣的位址182.13.15.16:1235,1235就是埠);收到b的允許;然後正式傳送;傳送完了,告訴b要斷開鏈結;收到斷開允許,馬上斷開,然後傳送已經斷開資訊給b。
b收包:繫結埠和ip;然後在這個埠監聽;接收到a的請求,發允許給a,並做好接收準備,主要就是清理快取等待接收新資料;然後正式接收;接受到斷開請求,允許斷開;確認斷開後,繼續監聽其它請求。
可見,socket其實就是i/o操作。socket並不僅限於網路通訊。在網路通訊中,它涵蓋了網路層、傳輸層、會話層、表示層、應用層——其實這都不需要記,因為socket通訊時候用到了ip和埠,僅這兩個就表明了它用到了網路層和傳輸層;而且它無視多台電腦通訊的系統差別,所以它涉及了表示層;一般socket都是基於乙個應用程式的,所以會涉及到會話層和應用層。
OSI七層模型簡介
1.物理層 該層為上層協議提供乙個傳輸資料的可靠物理 裝置 中繼器 放大器 集線器 2.資料鏈路層 為網路層提供可靠的資料傳輸 基本單位 幀 主要協議 乙太網協議,ppp 點到點 協議,arp協議,rarp協議 裝置 網橋,交換機 3.網路層 負責對子網間的資料報進行路由選擇。此外,網路層還可以實現...
OSI七層模型簡介
osi簡介 osi是定義良好的協議規範,並由許多可選部分完成類似的任務,它定義了開放系統的層次結構,層次之間的相互關係以及各層包括的可能的任務,是作為乙個框架協調和組織各層所提供的服務,但是osi參考模型並沒有提供乙個可實現的方法,而是描述了一些概念,用來協調程序間通訊標準的指定,osi參考模型並不...
網路 OSI七層網路模型
ip資料鏈路層 物理層osi七層模型中,每一層的資料報都是誰生成和解包的?wireshark 抓包 例項分析tcp三次握手過程 tcp 半連線佇列和全連線佇列滿了會發生什麼?又該如何應對?自己電腦上的 tcp ip pdf ipv6原理 應用與實踐 疑問 鏈路本地位址 唯一本地位址 ra route...