博主是搞是個FPGA的,一直沒有真正的研究過以太網相關的技術,現在終於能靜下心學習一下,希望自己能更深入的掌握這項最基本的通信接口技術。下面就開始搞了。
一、OSI參考模型
今天我們先學習一下以太網最基本也是重要的知識——OSI參考模型。
1、OSI的來源
ISO為了更好的使網絡應用更為普及,推出了OSI參考模型。其含義就是推薦所有公司使用這個規范來控制網絡。這樣所有公司都有相同的規范,就能互聯了。
2、OSI七層模型的划分
每一層實現各自的功能和協議,並完成與相鄰層的接口通信。
OSI的服務定義詳細說明了各層所提供的服務。某一層的服務就是該層及其下各層的一種能力,它通過接口
提供給更高一層。各層所提供的服務與這些服務是怎么實現的無關。

3、各層功能定義
這里我們只對OSI各層進行功能上的大概闡述,不詳細深究,因為每一層實際都是一個復雜的層。后面我也會根據個人方向展開部分層的深入學習。這里我們就大概了解一下。我們從最頂層——應用層 開始介紹。
整個過程以公司A和公司B的一次商業報價單發送為例子進行講解。
<1>
應用層
OSI參考模型中最靠近用戶的一層,是為計算機用戶提供應用接口,也為用戶直接提供各種網絡服務。我們常見應用層的網絡服務協議有:HTTP,HTTPS,FTP,POP3、SMTP等。
實際公司A的老板就是我們所述的用戶,而他要發送的商業報價單,就是應用層提供的一種網絡服務,當然,老板也可以選擇其他服務,比如說,發一份商業合同,發一份詢價單,等等。
<2>
表示層
由於公司A和公司B是不同國家的公司,他們之間的商定統一用英語作為交流的語言,所以此時表示層(公司的文秘),就是將應用層的傳遞信息轉翻譯成英語。同時為了防止別的公司看到,公司A的人也會對這份報價單做一些加密的處理。這就是表示的作用,將應用層的數據轉換翻譯等。
<3>
會話層
會話層就是
負責建立、管理和終止表示層實體之間的通信會話。該層的通信由不同設備中的應用程序之間的服務請求和響應組成。
會話層的同事拿到表示層的同事轉換后資料,(會話層的同事類似公司的外聯部),會話層的同事那里可能會掌握本公司與其他好多公司的聯系方式,這里公司就是實際傳遞過程中的實體。他們要管理本公司與外界好多公司的聯系會話。當接收到表示層的數據后,會話層將會建立並記錄本次會話,他首先要找到公司B的地址信息,然后將整份資料放進信封,並寫上地址和聯系方式。准備將資料寄出。等到確定公司B接收到此份報價單后,此次會話就算結束了,外聯部的同事就會終止此次會話。
<4>
傳輸層
傳輸層建立了主機端到端的鏈接,
傳輸層的作用是為上層協議提供端到端的可靠和透明的數據傳輸服務,包括處理差錯控制和流量控制等問題。該層向高層屏蔽了下層數據通信的細節,使高層用戶看到的只是在兩個傳輸實體間的一條主機到主機的、可由用戶控制和設定的、可靠的數據通路
。我們通常說的,TCP UDP就是在這一層。端口號既是這里的“端”。
傳輸層就相當於公司中的負責快遞郵件收發的人,公司自己的投遞員,他們負責將上一層的要寄出的資料投遞到快遞公司或郵局。
<5>
網絡層
本層通過IP尋址
來建立兩個節點之間的連接,為源端的運輸層
送來的分組,選擇合適的路由和交換節點,正確無誤地按照地址傳送給目的端的運輸層。就是通常說的IP層。這一層就是我們經常說的IP協議層。IP協議是Internet的基礎。
網絡層就相當於快遞公司龐大的快遞網絡,全國不同的集散中心,比如說,從深圳發往北京的順豐快遞(陸運為例啊,空運好像直接就飛到北京了),首先要到順豐的深圳集散中心,從深圳集散中心再送到武漢集散中心,從武漢集散中心再寄到北京順義集散中心。這個每個集散中心,就相當於網絡中的一個IP節點。
<6>
數據鏈路層
將比特組合成字節,再將字節組合成幀,使用鏈路層地址 (以太網使用MAC地址)來訪問介質,並進行差錯檢測。
數據鏈路層又分為2個子層:邏輯鏈路控制子層(LLC)和媒體訪問控制子層(MAC)。
MAC子層處理CSMA/CD算法、數據出錯校驗、成幀等;LLC子層定義了一些字段使上次協議能共享數據鏈路層。 在實際使用中,LLC子層並非必需的。
這個沒找到合適的例子
<7> 物理層
實際最終信號的傳輸是通過物理層實現的。通過物理介質傳輸比特流。
規定了電平、速度和電纜針腳。
常用設備有(各種物理設備)集線器、中繼器、調制解調器、網線、雙絞線、同軸電纜。這些都是物理層的傳輸介質。
快遞寄送過程中的交通工具,就相當於我們的物理層,例如汽車,火車,飛機,船。
4、通信特點:對等通信
對等通信,為了使數據分組從源傳送到目的地,源端OSI模型的每一層都必須與目的端的對等層進行通信,這種通信方式稱為對等層通信。在每一層通信過程中,使用本層自己協議進行通信。

二、TCP/IP五層模型
TCP/IP五層協議和OSI的七層協議對應關系如下。

在每一層都工作着不同的設備,比如我們常用的交換機就工作在數據鏈路層的,一般的路由器是工作在網絡層的。

在每一層實現的協議也各不同,即每一層的服務也不同.下圖列出了每層主要的協議。其中每層中具體的協議,我會在后面的逐一學習。

參考文獻:
1.百度百科:
OSI參考模型