faucet.faucet module

RyuApp shim between Ryu and Valve.

class faucet.faucet.EventFaucetAdvertise[source]

Bases: ryu.controller.event.EventBase

Event used to trigger periodic network advertisements (eg IPv6 RAs).

class faucet.faucet.EventFaucetExperimentalAPIRegistered[source]

Bases: ryu.controller.event.EventBase

Event used to notify that the API is registered with Faucet.

class faucet.faucet.EventFaucetMetricUpdate[source]

Bases: ryu.controller.event.EventBase

Event used to trigger update of metrics.

class faucet.faucet.EventFaucetReconfigure[source]

Bases: ryu.controller.event.EventBase

Event used to trigger FAUCET reconfiguration.

class faucet.faucet.EventFaucetResolveGateways[source]

Bases: ryu.controller.event.EventBase

Event used to trigger gateway re/resolution.

class faucet.faucet.EventFaucetStateExpire[source]

Bases: ryu.controller.event.EventBase

Event used to trigger expiration of state in controller.

class faucet.faucet.Faucet(*args, **kwargs)[source]

Bases: ryu.base.app_manager.RyuApp

A RyuApp that implements an L2/L3 learning VLAN switch.

Valve provides the switch implementation; this is a shim for the Ryu event handling framework to interface with Valve.

OFP_VERSIONS = [4]
advertise(_)[source]

Handle a request to advertise services.

connect_or_disconnect_handler(ryu_event)[source]

Handle connection or disconnection of a datapath.

Parameters:ryu_event (ryu.controller.dpset.EventDP) – trigger.
desc_stats_reply_handler(ryu_event)[source]

Handle OFPDescStatsReply from datapath.

Parameters:ryu_event (ryu.controller.ofp_event.EventOFPDescStatsReply) – trigger.
error_handler(ryu_event)[source]

Handle an OFPError from a datapath.

Parameters:ryu_event (ryu.controller.ofp_event.EventOFPErrorMsg) – trigger
exc_logname = 'faucet.exception'
features_handler(ryu_event)[source]

Handle receiving a switch features message from a datapath.

Parameters:ryu_event (ryu.controller.ofp_event.EventOFPStateChange) – trigger.
flowremoved_handler(ryu_event)[source]

Handle a flow removed event.

Parameters:ryu_event (ryu.controller.ofp_event.EventOFPFlowRemoved) – trigger.
get_config()[source]

FAUCET experimental API: return config for all Valves.

get_tables(dp_id)[source]

FAUCET experimental API: return config tables for one Valve.

logname = 'faucet'
metric_update(_)[source]

Handle a request to update metrics in the controller.

packet_in_handler(ryu_event)[source]

Handle a packet in event from the dataplane.

Parameters:ryu_event (ryu.controller.event.EventReplyBase) – packet in message.
port_status_handler(ryu_event)[source]

Handle a port status change event.

Parameters:ryu_event (ryu.controller.ofp_event.EventOFPPortStatus) – trigger.
reconnect_handler(ryu_event)[source]

Handle reconnection of a datapath.

Parameters:ryu_event (ryu.controller.dpset.EventDPReconnected) – trigger.
reload_config(_)[source]

Handle a request to reload configuration.

resolve_gateways(_)[source]

Handle a request to re/resolve gateways.

start()[source]
state_expire(_)[source]

Handle a request expire host state in the controller.