faucet.valve_flood module¶
Manage flooding to ports on VLANs.
-
class
faucet.valve_flood.
ValveFloodManager
(logger, flood_table, pipeline, use_group_table, groups, combinatorial_port_flood)[source]¶ Bases:
faucet.valve_manager_base.ValveManagerBase
Implement dataplane based flooding for standalone dataplanes.
-
EXT_PORT_FLAG
= 1¶
-
FLOOD_DSTS
= ((True, None, None), (False, '01:80:c2:00:00:00', 'ff:ff:ff:00:00:00'), (False, '01:00:5E:00:00:00', 'ff:ff:ff:00:00:00'), (False, '33:33:00:00:00:00', 'ff:ff:00:00:00:00'), (False, 'ff:ff:ff:ff:ff:ff', 'ff:ff:ff:ff:ff:ff'))¶
-
NONEXT_PORT_FLAG
= 0¶
-
build_flood_rules
(vlan, modify=False)[source]¶ Add flows to flood packets to unknown destinations on a VLAN.
-
static
edge_learn_port
(_other_valves, pkt_meta)[source]¶ Possibly learn a host on a port.
- Parameters
other_valves (list) – All Valves other than this one.
pkt_meta (PacketMeta) – PacketMeta instance for packet received.
- Returns
port to learn host on.
-
-
class
faucet.valve_flood.
ValveFloodStackManager
(logger, flood_table, pipeline, use_group_table, groups, combinatorial_port_flood, stack, stack_ports, dp_shortest_path_to_root, shortest_path_port)[source]¶ Bases:
faucet.valve_flood.ValveFloodManager
Implement dataplane based flooding for stacked dataplanes.
-
edge_learn_port
(other_valves, pkt_meta)[source]¶ Possibly learn a host on a port.
- Parameters
other_valves (list) – All Valves other than this one.
pkt_meta (PacketMeta) – PacketMeta instance for packet received.
- Returns
port to learn host on, or None.
-