The L2 Packet Forwarding pipeline (name: L2fwd
) models a simple Ethernet
switch using a static MAC lookup table. Note that this pipeline is rather
basic and it will not perform MAC learning or L3 routing. (Contributions
are welcome!)
Upstream the L2fwd pipeline will receive packets from the downlink port,
perform a lookup for the destination MAC address in a static MAC table, and
if a match is found the packet will be forwarded to the uplink port or
otherwise dropped (or likewise forwarded upstream if the fakedrop
parameter is set to true
). The downstream pipeline is just the other way
around, but note that the upstream and downstream pipelines use separate
MAC tables.
The L2fwd pipeline defines a single dynamic scenario:
table-update
: models a L2 MAC table update, whereby a MAC table entry is added to/removed from the upstream and downstream MAC tables
A sample TIPSY configuration for the L2fwd pipeline is shown below:
{
"pipeline": {
"name": "L2fwd",
"upstream-table-size": 100000,
"downstream-table-size": 20,
"fluct-table": 30,
"fakedrop": false
}
}
The parameters specific to the L2fwd pipeline are as follows:
name
: name of the pipeline, must be set tol2fwd
for the L2fwd pipelineupstream-table-size
: number of entries in the upstream MAC tabledownstream-table-size
: number of entries in the downstream MAC tablefluct-table
: number of MAC table entry update events (table-update
) per secfakedrop
: whether to actually drop unmatched packets (false
) or send them immediately to the output port (false
) for correct rate measurements