It's not fundamental to keep per-flow state to have more control over reachability. Once you step back from the current Internet architecture, there are a whole host of possibilities. Here's are a couple of (rather old) papers for example:
http://www0.cs.ucl.ac.uk/staff/M.Handley/papers/dos-arch.pdf