Emulated interfaces

Classes

class  senf::emu::EmulatedInterface
 Emulated interface base-class. More...
 
class  senf::emu::EmulatedReceiver
 Emulated interface base-class for receive capable interfaces. More...
 
class  senf::emu::EmulatedTransmitter
 Emulated interface base-class for transmit capable interfaces. More...
 
class  senf::emu::EmulatedWiredInterface
 Emulated interface base-class for wired interfaces. More...
 
class  senf::emu::EmulatedWiredReceiver
 Emulated interface base-class for receive capable wired interfaces. More...
 
class  senf::emu::EmulatedWiredTransmitter
 Emulated interface base-class for transmit capable wired interfaces. More...
 
class  senf::emu::EmulatedFrequencyRegistry
 Wireless spectrum management. More...
 
class  senf::emu::EmulatedWirelessInterface
 Emulated wireless interface base-class. More...
 
class  senf::emu::EmulatedWirelessReceiver
 Emulated wireless receiver base-class. More...
 
class  senf::emu::EmulatedWirelessTransmitter
 Emulated wireless transmitter base-class. More...
 
struct  senf::emu::PacketHeaderParser
 Emulated network packet header parser. More...
 
struct  senf::emu::InterfaceTypes
 Emulated interface header type packet registry. More...
 
struct  senf::emu::PacketHeaderType
 Emulated interface packet header. More...
 
struct  senf::emu::dumpPacketInfo
 Helper to log all emulated packet information. More...
 

Detailed Description

An emulated interface is an implementation of the Interface API which does not send or receive packets using real interface hardware but exchanges packets with other emulated interfaces in the same collision/broadcast domain.

Emulated interfaces send and receive packets using a UDP Network socket on a collision domain specific multicast group.

See also
senf::emu::InterfaceAPIBase for information on how to implement new emulated interfaces
Todo:
Should we add a source interface field to the PacketHeader so that self-loop suppression (and later things like drop calculations) do not depend on a correct EthernetPacket header?