Adding IEEE 802.1Q support

The proposed pull request introduces support for IEEE 802.1Q as a new protocol.
The code is derived from the Ethernet protocol.