nettle-openflow-0.2.0: OpenFlow protocol messages, binary formats, and servers.

Nettle.OpenFlow.Messages

Description

This module provides a logical representation of OpenFlow switches and protocol messages. An OpenFlow message is either a switch-to-controller message or controller-to-switch message. In either case, each message is tagged with a unique message identifier.

Synopsis

Documentation

type TransactionID = Word32Source

Every OpenFlow message is tagged with a MessageID value.

data SCMessage Source

The Switch can send the following messages to the controller.

Constructors

SCHello

Sent after a switch establishes a TCP connection to the controller

SCEchoRequest ![Word8]

Switch requests an echo reply

SCEchoReply ![Word8]

Switch responds to an echo request

Features !SwitchFeatures

Switch reports its features

PacketIn !PacketInfo

Switch sends a packet to the controller

PortStatus !PortStatus

Switch sends port status

FlowRemoved !FlowRemoved

Switch reports that a flow has been removed

StatsReply !StatsReply

Switch reports statistics

Error !SwitchError

Switch reports an error

BarrierReply

Switch responds that a barrier has been processed

QueueConfigReply !QueueConfigReply 

data CSMessage Source

The controller can send these messages to the switch.

Constructors

CSHello

Controller must send hello before sending any other messages

CSEchoRequest ![Word8]

Controller requests a switch echo

CSEchoReply ![Word8]

Controller responds to a switch echo request

FeaturesRequest

Controller requests features information

PacketOut !PacketOut

Controller commands switch to send a packet

FlowMod !FlowMod

Controller modifies a switch flow table

PortMod !PortMod

Controller configures a switch port

StatsRequest !StatsRequest

Controller requests statistics

BarrierRequest

Controller requests a barrier

SetConfig 
Vendor 
GetQueueConfig !QueueConfigRequest