Hello All,

I was trying SW Vlan implementation today. There is a problem i am facing.
There are some issues with respect to
protocol type field in the ethernet  packet.

following are the obervations:
1.  When the client receives a packet from the server, the Vlan id is
stripped by hardware.
     The ProtocolType = 0x8000 instead of 0x8100 (VLAN tagged packet type).

    The MNP first checks the protocol type in vlan is configured. Since it
does not match Vlan
    tagged packet type, it drops the frames.

    if (ProtocolType != ETHER_TYPE_VLAN) {
      //
      // Not a VLAN tagged frame
      //
      return FALSE;
    }

    This code snippet is present in MnpRemoveVlanTag function.

2. Modified the packet type to 0x8100, the MNP successfully finds the vlan
tag. There is a
    default config data for each configured mnp instance. This config is
driven by IP. This config
    data has protocol type = 0x8000. Since we have modified the protocol
type to 0x8100, the enqueueing
    of the packet to IP layer fails.

     In MnpMatchPacket fucntion, the code snippet copied below is dropping
frames, since
     ConfigData->ProtocolTypeFilter = 0x8000  and  . RxData->ProtocolType =
0x8100.
     if ((ConfigData->ProtocolTypeFilter != 0) &&
(ConfigData->ProtocolTypeFilter != RxData->ProtocolType)) {
        return FALSE;
     }

Please let me know if my understanding is correct. all sugessions are
appreciated.

Thanks,
Sajeesh.
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to