+----------+ | AS4(ISP4)| +----------+ /\ /\ / \ P1[AS3 AS1] P1 and P2 not / \ P2[AS3 AS1] propagated / \ (C2P) (C2P) / \ +----------+ +----------+ | AS2(ISP2)| | AS3(ISP3)| +----------+ +----------+ /\ /\ \ / P1[AS1] P1[AS1] NO_EXPORT \ / P2[AS1] P2[AS1] NO_EXPORT \ / (C2P) (C2P) \ / +----------------+ | AS1(customer) | +----------------+ P1, P2 (prefixes originated) Consider that data packets (sourced from AS1) may be received at AS4 with a source address in P1 or P2 via AS2: * Feasible-path uRPF fails * Loose uRPF works (but not desirable) * Enhanced feasible-path uRPF with Algorithm A fails * Enhanced feasible-path uRPF with Algorithm B works best