OSI七層協議
一、首先從下往上看第一層物理層
1:說一下自己第一眼看到物理層的理解吧,因為正在學習資料庫,用資料庫的三層模式二級映像說明一下,資料庫的底層也是體現了物理性,比如模式/內模式映像就是體現了物理獨立性,物理是底層的,

那么這里的物理層,網上說物理層是通過網路通信媒介將位元流資料從發送源設備物理層傳輸到接收設備的物理層,那么我讀完問題來了:什么是位元流資料?
2:什么是位元流
位元流是一種內容分發協議,由布拉姆·科恩自主開發,它采用高效的軟體分發系統和點對點技術共享大體積檔案(如一部電影或電視節目),并使每個用戶像網路重新分配結點那樣提供上傳服務,一般的下載服務器為每一個發出下載請求的用戶提供下載服務,而BitTorrent的作業方式與之不同,分配器或檔案的持有者將檔案發送給其中一名用戶,再由這名用戶轉發給其它用戶,用戶之間相互轉發自己所擁有的檔案部分,直到每個用戶的下載都全部完成,這種方法可以使下載服務器同時處理多個大體積檔案的下載請求,而無須占用大量帶寬,
也就是說,位元流是一種類似于多人協同下載的內容發布協議,分為檔案持有者和接收者,這里對應的物理層,那么物理層的作用就是將檔案通過這種快速高效的協議方法從發送層(持有者)傳到接受層(接收者)
二、資料聯路層:
這一層的理解其實和它的字面意思很接近,起到了資料間的橋梁,它的作用:
第一:它可以將資料封裝成幀,也就是在物理層拿到資料以后,它會為資料添加頭部和尾部,封裝成一個幀,接收端那邊收到了物理層的位元流資料以后,便可以根據資料的頭部和尾部的標記(識別幀),從而判斷資料的開始和結束,


第二:它可以做到透明傳輸,也就是所謂的完全一模一樣的傳輸,他之所以可以做到是因為它為資料添加了特定的專門指明的控制字符,而且傳輸的資料中任何的位元組合一定是不可以和劃分邊界的幀的控制字符的位元編碼一樣,否則幀的分界點就會出現錯誤!所以既然有了上面的編碼控制保證,那么他就可以保證不管鍵盤里面輸入什么字符都可以包裹在這樣的幀里面完整的傳輸!
三:網路層:
網路層其實就是一種端到端的資料透明傳輸,網路層需要為傳輸層(下一層)提供服務,為了給傳輸層提供服務它就必須使用網路鏈路層提供的服務,我們前面講到資料鏈路層負責的是直接的資料頭和尾也就是解決了兩個相鄰點之間的通信,并不負責解決資料通過子網中多個轉節點時的通信問題,所以說網路層說白了其實是資料鏈路層的補充和拓展,它讓源端的資料可以以最佳的路徑透明地通過通信子網中的多個轉接節點到達目的端,使得傳輸層不必關心網路的拓撲構型以及所使用的通信介質和交換技術,
傳輸層:
通過字面意思,傳輸層就是傳輸,什么是傳輸呢?我們通過QQ微信給別人發訊息,對方收到了,這就是傳輸,我們前面說到網路層將資訊發送到了接收方那里,那么接收方怎樣去接受這個資訊,用什么樣的協議來接受就是傳輸層的作用,所以傳輸層實作的是行程到行程間的連接,
再次回到一開始我們說的資料庫三級模式二級映像,我們知道外模式/模式就是體現了邏輯獨立性的特點,在這里,傳輸層,其實它所提供的的資料之間的通信也是邏輯通信,也就是說它向更高層(應用層)屏蔽了下面網路層的細節,使應用程式看起來好像是在傳輸層之間沿著水平方向傳輸資料,但事實上兩者之間并沒有這樣一條實際的物理連接,
會話層:
會話層就已經靠上面了,我們知道越往上就越接近我們的生活與日常,會話層說白了就是發送方與接收方的對話,只不過這個對話有很多形式,比如有些對話是需要加密的,假設我是A要向B共享一個檔案,這就是一個會話,B的電腦會有一個彈窗需要輸入我電腦的賬號密碼才可以訪問這個檔案,也就是windows里面的SMB協議,會話層的一個協議,他起到了身份鑒定,權限鑒定,類似這樣的一次會話,很多我們生活中與人通信所會面臨的很多事情都是會話層的作用,還有像我們要給對方發送很多檔案,我們設定這個會話持續60分鐘,對方十分鐘就接受到了第一個檔案然后關掉了視窗,其實B只是關閉了它的行程而并不是關閉了我與他之間的會話,當我再次給他傳送第二個檔案的時候他就不需要在彈窗中輸入我的賬號密碼來驗證身份了,這就是會話層的作用保持通話,等等等等,所以簡單理解就是用戶與用戶的連同了
表示層:
表示層的作用在于資料編碼,正如前面說的一樣,從會話層我們就發現開始接近了我們用戶的真實世界了,哈哈不在像什么幀,什么子網節點,什么位元流那么抽象了,他更加接近了我們,你想想看,我們什么時候用到了資料編碼?我們買了電腦,作為程式員我們第一步是什么?是不是配置各種各樣的環境?因為沒有環境我們的很多程式跑不起來,這個表示層也一樣,字面理解一下就是為了表示,比如你在電腦上要看一個圖片網站,這個圖片網站上有一個gif,但是你的電腦沒有gif,那么你的電腦就會顯示xx,或者一些亂碼,再比如說你的電腦沒有下載壓縮軟體沒有下載.mp3音樂的解碼器,那么你的電腦就無法看這些聽這些,所以表示層的作用相信就很清楚啦,就是為了可以讓一些東西表示出來
應用層:
作為最后一層(第七層)的大哥,應用層當然會有很多介面,它直接向應用行程行程提供服務,用于處理業務,分為兩種元素:公共應用服務元素CASE和特定應用服務元素SASE,那什么是CASE什么是SASE呢?
CASE提供最基本的服務,它成為應用層中任何用戶和任何服務元素的用戶,主要為應用行程通信,分布系統實作提供基本的控制機制;特定服務SASE則要滿足一些特定服務,如文卷傳送,訪問管理,作業傳送,銀行事務,訂單輸入等,這些將涉及到虛擬終端,作業傳送與操作,文卷傳送及訪問管理,遠程資料庫訪問,圖形核心系統,開放系統互連管理等等,
總結一下:
七層協議,每一層各司其事的同時又相互聯系,就像資料聯絡層就在網路層和物理層直接起到了很大的作用,承上啟下,沒有資料聯絡層的資料封裝就沒有網路層的節點交通,只有物數網傳四大層完整的封裝好了資訊,往上的應用層(五六七層一起統稱應用層)才可以發揮提現在用戶與用戶之間真實的效果,下面放幾張我感覺很有用的圖

TCP/IP五層模型各層常用協議(把應用層和會話層、表示層合并層應用層)
應用層#
TFTP、HTTP、SNMP、FTP、SMTP、DNS、Telnet......
傳輸層#
TCP、UDP
網路層#
IP、ICMP、OSPF、EIGRP、IGMP
資料鏈路層#
SLIP、CSLIP、PPP、MTU
物理層#
ISO2110、IEEE802、IEEE802.2


轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/339109.html
標籤:其他
上一篇:nginx
下一篇:TCP三次握手四次揮手
