netcore-1.0.0: The NetCore compiler and runtime system for OpenFlow networks.

Safe HaskellSafe-Infered

Frenetic.Compat

Contents

Synopsis

Documentation

data Packet Source

Packets' headers.

Constructors

Packet 

Fields

pktDlSrc :: Word48

source ethernet address

pktDlDst :: Word48

destination ethernet address

pktDlTyp :: Word16

ethernet type code (e.g., 0x800 for IP packets)

pktDlVlan :: Maybe Vlan

VLAN tag

pktDlVlanPcp :: Word8

VLAN priority code

pktNwSrc :: Maybe Word32

source IP address for IP packets

pktNwDst :: Maybe Word32

destination IP address for IP packets

pktNwProto :: Word8

IP protocol number (e.g., 6 for TCP segments)

pktNwTos :: Word8

IP TOS field

pktTpSrc :: Maybe Word16

source port for IP packets

pktTpDst :: Maybe Word16

destination port for IP packets

pktInPort :: Port

ingress port on the switch where the packet was received

Instances

data Transmission ptrn pkt Source

Data that was sent.

Constructors

Transmission 

Fields

trPattern :: ptrn
 
trSwitch :: Switch
 
trPkt :: pkt
 

Instances

(Eq ptrn, Eq pkt) => Eq (Transmission ptrn pkt) 

Implementation

class (Show (PatternImpl a), Show (ActionImpl a), Matchable (PatternImpl a), Eq (PacketImpl a), Eq (ActionImpl a), Eq (PatternImpl a)) => FreneticImpl a whereSource

'FreneticImpl a' is a family of related abstract types that define a back-end for Frenetic.

Associated Types

data PacketImpl a Source

data PatternImpl a Source

'PatternImpl a' represents switch-level patterns, which may not be as expressive as Frenetic's pattern language.

patOverapprox and patUnderapprox must follow the laws in the Approx class. If the pattern is not a real underapproximation, patUnderapprox must return Nothing.

data ActionImpl a Source

'ActionImpl a' represents switch-level actions. All Frenetic actions (Action) may not be realizable on switches.

Instances

FreneticImpl () 
FreneticImpl OpenFlow