# VLAN

class `ryu.lib.packet.vlan.``svlan`(pcp=0, cfi=0, vid=0, ethertype=33024)

  S-VLAN (IEEE 802.1ad) header encoder/decoder class.

  An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.

  Attribute | Description
  --- | ---
  pcp | Priority Code Point
  cfi | Canonical Format Indicator. In a case to be used as B-TAG, this field means DEI(Drop Eligible Indication).
  vid | VLAN Identifier
  ethertype | EtherType

  classmethod `get_packet_type`(type_)

    Per-protocol dict-like get method.

    Provided for convenience of protocol implementers. Internal use only.

class `ryu.lib.packet.vlan.``vlan`(pcp=0, cfi=0, vid=0, ethertype=2048)

  VLAN (IEEE 802.1Q) header encoder/decoder class.

  An instance has the following attributes at least. Most of them are same to the on-wire counterparts but in host byte order. __init__ takes the corresponding args in this order.

  Attribute | Description
  --- | ---
  pcp | Priority Code Point
  cfi | Canonical Format Indicator
  vid | VLAN Identifier
  ethertype | EtherType

  classmethod `get_packet_type`(type_)

    Override method for the Length/Type field (self.ethertype). The Length/Type field means Length or Type interpretation, same as ethernet IEEE802.3. If the value of Length/Type field is less than or equal to 1500 decimal(05DC hexadecimal), it means Length interpretation and be passed to the LLC sublayer.