pub enum SourceSelection {
EgressPort,
Port(PortId),
}Expand description
Which of the router’s addresses a request it originates names as its source.
Variants§
EgressPort
The router’s address on the port the request leaves by: no SNET or SADR, so the next router adds that port’s network and the router’s MAC there, as it does for any node on that network (Clause 6.5.4). A global broadcast leaves by every port, so each copy is from that port’s address. The default.
In a site with a loop of routers, each port’s bare copy is a
different origin to the routers that relay it, so another router
may deliver this router’s global broadcast to its own application
once per port, duplicate suppression or not
(Options::duplicates keys by
origin). Use SourceSelection::Port there: every copy then names
one origin.
Port(PortId)
The router’s address on this port’s network: SNET and SADR naming it, whichever port the request leaves by, or none when it leaves by this port, where the link source already says so. A global broadcast leaves by every port: with SNET and SADR on the others, and without them on this one. For an application that answers to one address.
Trait Implementations§
Source§impl Clone for SourceSelection
impl Clone for SourceSelection
Source§fn clone(&self) -> SourceSelection
fn clone(&self) -> SourceSelection
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more