os_ken.lib.packet.gre.
gre
(version=0, protocol=2048, checksum=None, key=None, vsid=None, flow_id=None, seq_number=None)¶GRE (RFC2784,RFC2890) 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 |
---|---|
version | Version. |
protocol | Protocol Type field. The Protocol Type is defined as "ETHER TYPES". |
checksum | Checksum field(optional). When you set a value other than None, this field will be automatically calculated. |
key | Key field(optional) This field is intended to be used for identifying an individual traffic flow within a tunnel. |
vsid | Virtual Subnet ID field(optional) This field is a 24-bit value that is used to identify the NVGRE-based Virtual Layer 2 Network. |
flow_id | FlowID field(optional) This field is an 8-bit value that is used to provide per-flow entropy for flows in the same VSID. |
seq_number | Sequence Number field(optional) |
parser
(buf)¶Decode a protocol header.
This method is used only when decoding a packet.
Decode a protocol header at offset 0 in bytearray buf. Returns the following three objects.
serialize
(payload=None, prev=None)¶Encode a protocol header.
This method is used only when encoding a packet.
Encode a protocol header. Returns a bytearray which contains the header.
payload is the rest of the packet which will immediately follow this header.
prev is a packet_base.PacketBase subclass for the outer protocol header. prev is None if the current header is the outer-most. For example, prev is ipv4 or ipv6 for tcp.serialize.
os_ken.lib.packet.gre.
nvgre
(version=0, vsid=0, flow_id=0)¶Generate instance of GRE class with information for NVGRE (RFC7637).
Parameters: |
|
---|---|
Returns: | Instance of GRE class with information for NVGRE. |
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.