Handle VLAN?

Home Forums Discussions Support Portal Handle VLAN?

This topic contains 8 replies, has 2 voices, and was last updated by  Vadim Smirnov 11 years, 10 months ago.

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • #4948

    ByTE
    Participant

    Can WinPKFilter to handle tagged VLAN frames? In any words can I send and receive long length frames (within 4 bytes extra-header)?

    #5815

    Vadim Smirnov
    Moderator

    I assume you mean VLAN tagging (inserting 4 additional bytes into the ethernet header). Well, current version of WinpkFilter limits the size of Ethernet frame to 1514 bytes but there is no problem to extend it to 1518 (or even to 1522) bytes if network card supports such a frame size (does it?).

    However, does Windows TCP/IP stack supports VLAN? I just suspect that even if VLAN used the tags are stripped before packet reaches the TCP/IP stack…

    #5816

    Vadim Smirnov
    Moderator

    Just found here http://support.intel.com/support/network/sb/cs-005897.htm that

    By default, Intel adapters strip the VLAN tag before passing it up the stack.

    In this case WinpkFilter receives 802.3 frame without VLAN tag and there is no way to access it without additional efforts. Even if you do the modifications mentioned on that page to turn off stripping tag then I’m not sure that TCP/IP stack will be able to process these packets with extended header normally.

    #5817

    ByTE
    Participant

    But in Linux available vlan handling on low cost adapters!
    Yes, vlan handling in linux provided by kernel module…
    I want to handle vlan tags and redirect needed frames to needed adapter or add/remove vlan additional header and send to stack or adapter. It is possible in future versions of driver?

    #5818

    Vadim Smirnov
    Moderator

    I had looked through the realization of VLAN in Linux and yes it can be implemented even on low cost adapters because all drivers are available in source code and you can easily increase the ethernet frame size in the NIC driver. But in Windows you can’t modify the source code of the driver for your network card and all packets will be truncated to 1514 bytes. You still can create VLAN for the cost of MTU (packets on the network will be still 1514 bytes but MTU will be decreased from 1500 to 1496 bytes). MUX sample driver from the DDK implements VLAN by this way. However, this implemetation won’t be compatible with Linux VLAN (which uses larger MTU), without additional tricks like decreasing MTU because any incoming packet over 1514 bytes will be truncated. So complete realization of VLAN in Windows is hardly possible without special NIC/drivers…

    #5819

    ByTE
    Participant

    Ok, thank you for replies.

    #5820

    ByTE
    Participant
    #5821

    ByTE
    Participant

    If network card driver supports VLAN I cant to handle VLANs with WinPkFilter 🙁
    It’s bad 🙁

    #5822

    Vadim Smirnov
    Moderator

    Thats right, VLAN is implemented inside NIC NDIS miniport driver, the only way to handle VLAN tags for this type of cards is NIC driver modification, since they are not visible (striped) above it.

Viewing 9 posts - 1 through 9 (of 9 total)

You must be logged in to reply to this topic.