• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • 以太網幀結構

    以太網幀結構(重點)
    2019年10月13日
    0:36

    以太網幀結構(重點)
    可以類比于現實中的郵局與郵件(信封,內容,地址 )
    網絡通信協議:OSI TCP/IP IPX SNA
    二層:局域網 IEEE802 以太網
    廣域網:幀中繼 PPP HDLC
    OSI是一種標準,這也就是OSI的作用所在,一般我們常使用的是TCP/IP
    分層模型-0SI
    應用層:人機交互接口,面向應用程序,集成于應用程序內 APDU
    表示層:翻譯 (將邏輯語言轉換為計算機語言) 、加密 PPDU
    會話層:針對需要傳遞的流量定義一條端到端的會話鏈接 (該鏈接為虛鏈接) SPDU
    為什么是虛連接,只有源端,沒有目的端,傳輸層為實連接
    傳輸層:1.定義數據的傳輸方式,可靠傳輸、不可靠傳輸
    (1.大流量 2.實時性較高 3. 對數據丟失不敏感 )
    2.使用MTU進行分片:MTU默認1500字節 ;MTU—最大傳輸單元
    傳輸層要區分不同的流量: 使用端口號,十進制數值,一個端口號代表一種流量。
    1-65535個 靜態端口號:1-1023 動態端口號:1024-65535
    Http----80 HTTPS—443 Telnet----23 SSH----22 FTP—20/21
    TCP:傳輸控制協議,是一種面向連接的可靠的傳輸協議
    UDP:用戶數據報協議,是一種非面向連接的不可靠的傳輸協議
    UDP既然保證不了可靠,但是語音流量等就是UDP傳輸,為了確保可靠,需要加上RTP實時傳輸協議,比如VOIP流量:
    Layer2 | IP | UDP | RTP | VOIP|FCS
    TCP三次握手機制保證TCP傳輸時面向連接的,面向連接是可靠的.
    面向連接:防止亂序,丟包,擁塞,檢查數據完整性,重傳,只適合 點對點
    可靠性保證: 1.確認機制(發送每一份TCP數據必須收到一 個獨立的ACK進行確認) 2. 重傳輸 3.重排序
    PDU : 協議數據單元,數據在不同層的表現形式
    四層PDU : segment 分片
    在這里插入圖片描述
    TCP的流控機制(流量控制)
    在這里插入圖片描述

               TCP滑動窗口技術通過動態改變窗口大小來實現對端到端設備之間的數據傳輸進行流量控制。 
                TCP的四次揮手
            ![在這里插入圖片描述](https://img-blog.csdnimg.cn/20191105022940644.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FpbnNoYW5nd3k=,size_16,color_FFFFFF,t_70)
    
            TCP報文頭中的ACK標志位用于目的端對已收到數據的確認。目的端成功收到***為x的 字節及之前         
            的所有字節后,會以***x+1進行確認。 l 
            在TCP的三次握手過程中,要使用SYN和ACK標志位來請求建立連接和確認建立連接。            
    

    網絡層:編址 尋址,在四層報頭前面添加新的報頭,成為數據包packet
    編址協議 : IPV4 IPV6 APPLE TALK NOVELL NSAP
    IPV4: 使用32bit二進制構成,地址空間2^32
    書寫方法:點分十進制
    1100 0011.0001 1100.0000 1111.0011 1100
    195.28.15.60
    128 64 32 16 8 4 2 1
    IP地址 192.168.1.1
    網絡掩碼 255.255.255.0
    A類地址:0XXX XXXX 1-126 網絡掩碼為255.0.0.0 2^24-2
    B類地址:10XX XXXX 128-191 網絡掩碼為 255.255.0.0 2^16-2
    C類地址:110X XXXX 192-223 網絡掩碼為 255.255.255.0 2^8-2
    D類地址:1110 XXXX 224-239 組播地址 無掩碼
    E類地址:1111 XXXX 240-255 用于科研
    特殊地址:
    1.0.X.X.X 無效地址 被保留
    2.127.X.X.X 本地鏈路測試地址 127.0.0.1
    3.169.254.X.X 255.255.0.0 本地鏈路地址 (僅僅針對window 主機)
    4.廣播地址(受限) 255.255.255.255
    5.直接廣播地址: 網絡位不變 主機位全為1
    192.168.1.1 255.255.255.0
    192.168.1.255 255.255.255.0
    6.網絡號:網絡位不變 主機位全為0
    192.168.1.1 255.255.255.0
    192.168.1.0 255.255.255.0

    公有地址:具備全球唯一性
    私有地址:
    10.0.0.0 255.0.0.0
    172.16-31.0.0 255.255.0.0
    192.168.X.0 255.255.255.0
    三層PDU: Packet 數據包

    數據鏈路層:DL , 廣域網 局域網(ethernet 2)
    LLC:邏輯鏈路控制子層,用于描述上層協議
    MAC:介質訪問控制子層,用于二層用戶的表示
    MAC地址:物理地址、硬件地址、燒錄地址
    地址使用48bit二進制構成,書寫減分十六進制 (差分十六 進制)
    30-85-a9-18-51-7d
    3085.A918.517D(點分十六進制)
    0c-d2-92-c1-4b-61
    前24bit :OUI —統一資源標示符,廠商ID
    后24bit :interface ID----接口標示符,產品ID
    二層PDU: frame 數據幀
    物理層: 關注傳輸介質 有線 無線
    同軸電纜 光纖 雙絞線
    雙絞線: RJ45線
    568A:綠白、綠、橙白、藍、藍白、橙、棕白、棕
    568B:橙白、橙、綠白、藍、藍白、綠、棕白、棕
    按照屏蔽性分類: 非屏蔽線(UTP) 屏蔽線(STP)
    按照擰度分類: 3類 、4類、5類、超5類、6類、超6類、7 類
    按照用途分類:
    平行線:線序相同,也稱為直通線
    交叉線:線序不同
    全反線:線序相反,console線 配置線
    路由器與主機----交叉線
    交換機與集線器----交叉線
    一層PDU: bit
    下層為上層服務
    封裝 解封裝
    TCP/IP:
    應用層 (應用層,表示層,會話層)
    主機到主機層 (傳輸層)
    互聯網層 (網絡層)
    網絡接口層 (數據鏈路層,物理層)
    OSI的封裝機制:逐層封裝
    TCP/IP的封裝機制:跨層封裝

    數據封裝與解封裝
    終端之間的通信
    Header Data Traile
    本質:數據鏈路層控制數據幀在物理鏈路上傳輸
    數據包在以太網物理介質上傳播之前必須封裝頭部和尾部信息,封裝后的數據包稱為數據 幀,數據幀中封裝的信息決定了數據如何傳輸。以太網上傳輸的數據幀有兩種格式,選擇哪種格式由TCP/IP協議簇中的網絡層決定。

    幀格式:
    在這里插入圖片描述
    6+6+2+數據+4
    6+6+2+1+1+數據+4
    主要區別在于Ethernet II格式中包 含一個Type字段,標識以太幀處理完成之后將被發送到哪個上層協議進行處理,IEEE 802.3格式中,同樣的位置是長度字段。長度表示的是三層報頭加數據(去掉二層封裝后的大小)
    以太網中大多數的數據幀使用的是 Ethernet II格式。
    具體情況:
    數據層面的真實流量采取Ethernet 2協議,比如http流量,QQ流量等
    針對控制層面的流量采取IEEE 802.3,比如生成樹協議,CDP(cisco),LLDP(華為)協議
    Ethernet_II 幀格式
    在這里插入圖片描述
    數據字段(Data)是網絡層數據,最小長度必須為46字節以保證幀長至少為64字節,數據 字段的最大長度為1500字節。
    IEEE802.3幀格式
    在這里插入圖片描述
    Ethernet_II幀的Type域被802.3幀的Length 域取代,并且占用了Data字段的8個字節作為LLC和SNAP字段。
    Length字段定義了Data字段包含的字節數。 l
    邏輯鏈路控制LLC(Logical Link Control)由目的服務訪問點DSAP(Destination Service Access Point)、源服務訪問點SSAP(Source Service Access Point)和 Control字段組成。
    DSAP 與 SSAP 為特定的值代表不同的幀類型 l
    SNAP(Sub-network Access Protocol)由機構代碼(Org Code)和類型(Type)字段組成。Org Code三個字節都為0。Type字段的含義與Ethernet_II幀中的Type字段相同。

    數據幀傳輸
    在這里插入圖片描述
    數據鏈路層基于MAC地址進行幀的傳輸。
    以太網在數據鏈路層是通過MAC地址來標識唯一的網絡設備,并且實現彼此之間的通信。
    發送端使用接收端的MAC地址作為目的地址。以太幀封裝完成后會通過物理層轉換成比特流在物理介質上傳輸。

    單播,廣播,組播
    在這里插入圖片描述
    單播:單一源端發送到單一的目的端,在沖突域中,所有主機能收到源主機發送的單播幀,但是其他設備收到后若是發現目的MAC地址不是自己的MAC地址就會丟棄收到的幀,只有匹配目的MAC地址的主機才會接收并處理收到的幀

    在這里插入圖片描述

    廣播:幀從單一的源發送到以太網上所有主機,廣播幀的目的MAC地址是全F,所有主機收到廣播幀并處理。
    組播
    在這里插入圖片描述
    組播比廣播更加高效。組播轉發可以理解為選擇性的廣播,主機 偵聽特定組播地址,接收并處理目的MAC地址為該組播MAC地址的幀。
    數據幀的發送和接收
    幀從主機的物理接口發送出來后,通過傳輸介質傳輸到目的端。共享網絡中,這個幀可能到達多個主機。主機檢查幀頭中的目的MAC地址,如果目的MAC地址不是本機MAC地址, 也不是本機偵聽的組播或廣播MAC地址,則主機會丟棄收到的幀。 l
    如果目的MAC地址是本機MAC地址,則接收該幀,檢查幀校驗序列(FCS)字段,并與本 機計算的值對比來確定幀在傳輸過程中是否保持了完整性。如果幀的FCS值與本機計算的 值不同,主機會認為幀已被破壞,并會丟棄該幀。如果該幀通過了FCS校驗,則主機會根 據幀頭部中的Type字段來確定將幀發送給上層哪個協議處理。
    FCS:幀校驗序列,散列,HASH算法
    CRC校驗+header=FCS

    版權聲明:本文為qinshangwy原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/qinshangwy/article/details/102908604

    智能推薦

    以太網傳輸圖片實驗

    (以下內容是在學習完正點原子視頻后的總結,代碼均是來自正點原子) 1.實驗內容 本節的實驗任務是網口接收上位機傳輸的圖片(分辨率為640*480),然后將圖片存儲在SDRAM中并通過VGA接口在顯示器屏幕上顯示。 2.實驗系統框圖 3.代碼部分 頂層模塊; module eth_sdram_vga( input clk, //FPGA外部時鐘,50MHz input rst_n, //按鍵復位,低...

    以太網PHY接口總結

    以太網PHY和MAC之間一般有如下接口,具體的接口描述可以在PHY芯片數據手冊查看到: MII:參考:DP83640 Precision PHYTER - IEEE 1588 Precision Time Protocol Transceiver   MDIO接口時序: RMII: GMII:88E1119R   RGMII:88E1116R  注意RGMII的時序有...

    數組刪除其中某個對象的方法

    數組刪除其中的對象或元素,在前端是比較常見的需求。 我現在比較常用的方法如下: 這種方法只適合刪除具有唯一標識的對象。 有沒有想要脫單的小伙伴,加入我們的脫單星球,認識更多優秀的小哥哥小姐姐 特此聲明,星球是免費的,但是創建星球的時候說是必須輸入金額,所以只能先私聊,我再加你免費加入!...

    圖床搭建以及圖床工具的使用

    為什么要用圖床和圖床工具? 比較下面三種md中的圖片url地址(均免費),你會使用哪一種? 選1?由于是本地路徑,文檔分享后給其他人打開后很可能顯示圖片加載失敗。 選2?雖然分享后可以顯示圖片,但能保證加載速度? 選3?我肯定選這種,即兼容2的瀏覽器訪問,又能保證訪問速度。 這樣就可以回答上面的問題了!保證瀏覽器訪問要用圖床,保證加載速度要用圖床工具,又不花錢想想就開心。 除此之外本篇博客還會講解...

    并發編程理論篇

    一、必備知識回顧 計算機又叫電腦,即通電的大腦,發明計算機是為了讓他通電之后能夠像人一樣去工作,并且它比人的工作效率更高,因為可以24小時不間斷 計算機五大組成部分 控制器 運算器 存儲器 輸入設備 輸出設備 計算機的核心真正干活的是CPU(控制器+運算器=中央處理器) 程序要想被計算機運行,它的代碼必須要先由硬盤讀到內存,之后cpu取指再執行 并發 看起來像同時運行的就可以稱之為并發 并行 真正...

    猜你喜歡

    Java LinkedHashMap

    Java LinkedHashMap 前言 Map是我們在實際使用過程中常用的集合,HashMap在Java的實際開發中出鏡率很高,它通過hash算法實現了高效的非線程安全的集合,它有一個缺點就是,用戶插入集合的數據時無序,在我們需要一些有序的map的時候,我們就需要引入另外一個集合:LinkedHashMap。 LinkedHashMap是一個有序的非線程安全的集合,它是HashMap的子類,基...

    Spark Streaming處理文件(本地文件以及hdfs上面的文件)

    標題介紹文件流之前先介紹一下Dstream 下面是來自官網一段的說明,Discretized Streams或DStream是Spark Streaming提供的基本抽象。它表示連續的數據流,可以是從源接收的輸入數據流,也可以是通過轉換輸入流生成的已處理數據流。在內部,DStream由一系列連續的RDD表示,這是Spark對不可變的分布式數據集的抽象(有關更多詳細信息,請參見Spark編程指南)。...

    《痞子衡嵌入式半月刊》 第 8 期

    痞子衡嵌入式半月刊: 第 8 期 這里分享嵌入式領域有用有趣的項目/工具以及一些熱點新聞,農歷年分二十四節氣,希望在每個交節之日準時發布一期。 本期刊是開源項目(GitHub: JayHeng/pzh-mcu-bi-weekly),歡迎提交 issue,投稿或推薦你知道的嵌入式那些事兒。 上期回顧 :《痞子衡嵌入式半月刊: 第 7 期》 嘮兩句 今天是小滿,小滿節氣意味著進入了大幅降水的雨季。痞子...

    (C++)二叉樹的線索化 / 線索二叉樹

    好久不見,朋友們!雖然我知道沒人看我的博客,但我還是想叨逼叨一下。啊,好久沒編程了(其實也就一周沒編),但你們知道,程序員一天不編程那能叫程序員么???雖然我不是程序員哈哈哈哈哈,但還是要有基本素養嘛。 繼續寫二叉樹,給自己立一個flag,就是這幾天要寫完之前沒做完的幾道題,和二叉樹紅黑樹各種樹之類的~~雖然有這個flag,但我還是很實誠地遵從自己的內心,買了一張明天的電影票,等我回來告訴你們好不...

    Linux內存管理:分頁機制

    《Linux內存管理:內存描述之內存節點node》 《Linux內存管理:內存描述之內存區域zone》 《Linux內存管理:內存描述之內存頁面page》 《Linux內存管理:內存描述之高端內存》 《Linux內存管理:分頁機制》 《內存管理:Linux Memory Management:MMU、段、分頁、PAE、Cache、TLB》 目錄 1 分頁機制 1.1 為什么使用多級頁表來完成映射 ...

    精品国产乱码久久久久久蜜桃不卡