色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

以太網基礎:為什么要為節點分配VLAN呢?

jf_EksNQtU6 ? 來源:開心果 Need Car ? 2023-12-12 09:39 ? 次閱讀

以太網的開發中,有時需要為節點分配VLAN(Virtual Local Area Network,虛擬局域網)。但是,為什么要為節點分配VLAN呢?本文針對這個話題展開討論。除此之外,文末給出Lwip(Light weight IP)+TC3xx VLAN實現的源碼及注意事項。

劃分VLAN場景

事物的出現,總有其合理性(即:存在即合理),所以,VLAN也有其出現的原因。先看這樣一個工程場景:某個控制器(eg:ECU1)啟動時,向交換機(Switch)發送ARP Broadcast,以便于獲取目標節點MAC(Media Access Control)地址。由于是廣播幀,交換機收到該幀后,轉發給所有Port(不包括接收Port),也就是我們常說的泛洪(Flooding),如下所示:

5693423e-9812-11ee-8b88-92fbcf53809c.png

如果網絡范圍進一步擴大,即:多個Switch連接時,該幀ARP傳播的范圍會進一步擴大,如下所示:

56a56f04-9812-11ee-8b88-92fbcf53809c.png

節點發送ARP的目的是為了獲取目標節點的MAC地址,以便于通信。但是,這樣的動作卻要把信息傳遍整個網絡,如此,將增加網絡負擔。如上,只是討論ARP廣播的例子,實際工程中,類似場景還有很多:SOME/IP中的服務發現、未知單播幀的轉發等。

所以,面對這些工程場景,應該如何降低網絡帶寬負載呢?答:可以通過VLAN技術,分割廣播域,將信息的傳播限定到一定范圍。

VLAN劃分原理

(一)VLAN格式

相比沒有VLAN的以太網幀,包含VLAN的以太網幀多4 Byte(VLAN Tag),具體位置如下所示:

56aa0cc6-9812-11ee-8b88-92fbcf53809c.png56aa0cc6-9812-11ee-8b88-92fbcf53809c.png

VLAN Tag包含TPID(Tag Protocol Identifier,標簽協議標識符)和TCI(Tag Control Information,數據幀控制信息)兩個部分,如下所示:

56c4d6f0-9812-11ee-8b88-92fbcf53809c.png

參數解釋如下:

TPID:表示數據幀類型,0x8100 表示 IEEE 802.1Q 幀(C-VLAN),0x88A8表示S-VLAN;

PCP:Priority Code Point(3 bits),表示數據幀優先級,數值越大,優先級越高;

DEI:Drop eligible indicator(1 bit),丟棄資格標識符,表示 MAC 地址封裝是否符合規范格式;

CFI:Canonical Format Indicator(1 bit),標準格式標識符;

VID:VLAN identifier(12 bits),表示幀所屬的VLAN。取值范圍:0~4095。

(二)VLAN分割廣播域原理

根據項目的實際情況,可以劃分不同ECU組,之后,為每組ECU分配一個VID。比如:ECU1、ECU2劃分到VID = 0x0A組,ECU2、ECU3劃分到VID = 0x0B組,如下所示:

56d8031a-9812-11ee-8b88-92fbcf53809c.png

當某個節點(eg:ECU1)發送ARP Broadcast報文時,該廣播幀只能在相同VID(eg:VID=0x0A)的域內傳播,非相關的VID組則不受影響,如下所示:

56eba8ac-9812-11ee-8b88-92fbcf53809c.png

如此,即限定了消息傳播的范圍,同時,也降低了總線帶寬的消耗。

VLAN分組方式有多種:基于端口(Port)劃分、基于協議(Protocol)劃分、基于MAC地址劃分、基于IP地址劃分等。

Lwip+TC3xx的VLAN實現細節

開源的Lwip雖然是不錯的Ethernet學習資料,但是,這并不意味著使用Lwip會一帆風順。利用Lwip實現VLAN過程中,需要注意以下幾點:

(一)netif.c修改

在netif.c的ifx_netif_input()接口中,需要添加ETHTYPE_VLAN,即:接收含有VLAN的以太網幀,修改如下所示:

err_t ifx_netif_input(netif_t *netif)
{
    ......


    switch (htons(ethhdr->type))
    {
    /* IP or ARP packet? */
    case ETHTYPE_IP:
    case ETHTYPE_ARP:
    case ETHTYPE_VLAN:
    ......

(二)發送VLAN設置

IfxGeth_Eth.c中,本文在接口IfxGeth_Eth_configureMacCore()中添加如下代碼,設置VID=0x0A,如下所示:

void IfxGeth_Eth_configureMacCore(IfxGeth_Eth *geth, IfxGeth_Eth_MacConfig *macConfig)
{
   ...
    /* Set Send Vlan */
IfxGeth_mac_writeQueueVlanTag(geth->gethSFR,IfxGeth_MtlQueue_0,0x0A);
   ...
}

IfxGeth_Eth_configureMacCore()接口的具體實現如下所示:

boolean IfxGeth_mac_writeQueueVlanTag(Ifx_GETH *gethSFR, IfxGeth_MtlQueue queueId, uint16 vLanTag)
{
    Ifx_GETH_MAC_VLAN_INCL vlan_incl;


    if (gethSFR->MAC_VLAN_INCL.B.BUSY)
    {
        return FALSE;
    }
    /* VLAN Tag Control in Transmit Packets */
    vlan_incl.B.VLC          = 2;


    vlan_incl.B.RDWR         = 1;
    vlan_incl.B.CSVL         = 0;
    vlan_incl.B.VLT          = vLanTag;
    vlan_incl.B.ADDR         = queueId;


    gethSFR->MAC_VLAN_INCL.U = vlan_incl.U;


    // Wait until operation is finished
    while (gethSFR->MAC_VLAN_INCL.B.BUSY)
    {}


    return TRUE;
}

(三)含VLAN通信數據流

包含VLAN(VID = 0x0A)的通信數據流如下所示:

5703c360-9812-11ee-8b88-92fbcf53809c.png








審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 以太網
    +關注

    關注

    40

    文章

    5419

    瀏覽量

    171598
  • VLAN
    +關注

    關注

    1

    文章

    277

    瀏覽量

    35636
  • LwIP協議棧
    +關注

    關注

    0

    文章

    19

    瀏覽量

    7347

原文標題:以太網基礎:為什么需要VLAN?

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    以太網交換技術講解

    當前園區網大多使用交換機組網,使用交換機組建的網絡管理非常靈活,可以根據同一部門或者具有相同管理要求的需要創建虛擬局域Vlan)。那么園區內的交換機是如何進行數據包交換的?不同部門之間是如何進行隔離的?今天這篇文章,將通過對以太網
    的頭像 發表于 12-11 10:30 ?978次閱讀
    <b class='flag-5'>以太網</b>交換技術講解

    以太網是什么鬼?以太網基礎知識詳解

    以太網
    電子學習
    發布于 :2023年02月07日 21:05:57

    車載以太網快速入門#車載以太網

    車載以太網
    北匯信息POLELINK
    發布于 :2023年09月01日 17:54:31

    車載以太網基礎培訓——車載以太網的鏈路層#車載以太網

    車載以太網
    北匯信息POLELINK
    發布于 :2023年09月19日 16:25:21

    ATM上的以太網服務介紹

    ATM上的以太網服務介紹ATM電路擴展技術使服務提供商可以將多條VLAN映射到一條虛擬電路上,或將多條虛擬電路映射到一條VLAN上。利用這項技術作為一個構件,服務提供商可以在ATM和以太網
    發表于 05-25 12:14

    以太網城域MSTP應用發展趨勢

    一個共享傳輸媒介上提供多點接入方式,因此點對點連接服務并沒有充分發揮以太網技術的特點?;?b class='flag-5'>VLAN技術的城域以太網的組網是通過二層以太網交換機完成的,當網絡規模擴大時,網絡轉發時延、V
    發表于 11-13 22:21

    如何在S32DS中設置以太網VLAN ID?

    我想在 S32K324 上設置以太網 VLAN ID,但在LWIP 示例和 S32DS 外設 UI中找不到任何信息。是否有關于如何設置以太網 VLAN ID 的示例或文檔?
    發表于 03-20 06:49

    以太網交換機基礎

    3.1 培訓目標. 123.1.1 傳統的共享式以太網. 123.1.2 以太網沖突域 123.1.3 廣播 123.1.4 以太網分段 133.1.5 以太網交換機 133.2 虛擬
    發表于 06-09 23:21 ?19次下載

    以太網與工業以太網的區別

    以太網相較工業以太網有以下四大缺陷,要使以太網符合工藝上的要求,還必須克服這4大缺陷
    發表于 12-12 15:16 ?3777次閱讀

    以太網是什么_以太網怎么連接寬帶

    本文首先介紹了以太網的概念,其次介紹了以太網連接寬帶的方法,最后闡述了以太網與寬帶區別。
    發表于 03-20 10:02 ?8.6w次閱讀
    <b class='flag-5'>以太網</b>是什么_<b class='flag-5'>以太網</b>怎么連接寬帶

    以太網的傳播速率_以太網的傳輸介質

    本文首先介紹了以太網的傳播速率,其次介紹了千兆以太網的傳輸速度,最后介紹了以太網的傳輸介質。
    發表于 03-20 10:12 ?7334次閱讀

    工業以太網和普通以太網區別

    工業以太網和普通以太網的主要區別在哪?
    的頭像 發表于 07-29 14:24 ?1.2w次閱讀

    如何快速分辨以太網與千兆以太網

    本文解釋并比較了兩種類型的以太網:快速以太網與千兆以太網??焖?b class='flag-5'>以太網和千兆以太網之間的最大區別在于速度。
    的頭像 發表于 05-06 16:35 ?4492次閱讀
    如何快速分辨<b class='flag-5'>以太網</b>與千兆<b class='flag-5'>以太網</b>

    傳統以太網是如何工作的?傳統以太網和時間敏感網絡TSN的區別

    傳統以太網是如何工作的?傳統以太網和時間敏感網絡TSN的區別? 傳統以太網是一種局域網技術,它在20世紀70年代開始普及,主要用于連接個人電腦和其他設備,提供高速、可靠的數據傳輸。它
    的頭像 發表于 11-17 14:23 ?1416次閱讀

    科普科普以太網的定義、種類以及晶振在以太網上的應用

    科普科普以太網的定義、種類以及晶振在以太網上的應用? 以太網是一種用于局域網通信的傳輸技術,它是一種在計算機網絡中常用的傳輸協議,用于將數據包從一個節點傳輸到另一個
    的頭像 發表于 01-24 16:11 ?1109次閱讀
    主站蜘蛛池模板: 秋霞久久久久久一区二区| 毛片999| 精品国产99久久久久久麻豆| 国内精品久久久久影院老司| 极品网红液液酱粉嫩福利照子凌酱| 久久艹综合| 欧美成人猛片aaaaaaa| 日日噜噜噜夜夜爽爽狠狠| 武侠艳妇屈辱的张开双腿| 亚洲欧美一区二区久久| 2018年免费三级av观看| yellow片在线观看免费观看动漫| 国产成人在线视频| 狠狠色狠狠色综合日日92| 美女一级毛片免费不卡视频| 欧美精品XXXXBBBB| 无限好资源免费观看| 浴室里强摁做开腿呻吟的漫画| 99re热有精品国产| 国产精品免费观看视频| 久久国产主播福利在线| 琪琪午夜福利免费院| 午夜视频无码国产在线观看| 在线观看国产精选免费| 成激人情在线影院920| 黑人巨摘花破女处| 欧美精品高潮呻吟AV久久| 香蕉久久一区二区三区啪啪| 永久adc视频| 成年人国产视频| 精品国产自在天天线2019 | 不戴套挺进人妻怀孕| 国产久久re6免费热在线| 久久伊人久久| 少妇内射兰兰久久| 中文字幕AV亚洲精品影视| 岛国在线无码免费观| 久久久擼擼擼麻豆| 色欲精品久久人妻AV中文字幕| 永久adc视频| 国产精品一区二区AV97|