Mushroom Networks Documentation

What is the difference between “Connection Routes” and “Advanced Routes” and when should I use each?

Connection routes are per connection rather than Advanced routes which are per packet.  Connection routes track flows as connections and routes based on those connections.  So changing a Connection route will break existing flows (conntrack data is removed) whereas changing an Advanced route would allow routing packets of existing flows to different destinations.

Advanced routes thus act similar to “normal” manual routes (but with more options) that people are familiar with on any device. 

Connection routes require conntrack and only work on conntrackable flows.  Also, “Sticky” routes
are only possible on Connection routes as they require conntrack.

Under what scenario would I use an “Advanced Route” instead of a “Connection Route”?

  • When the purpose of the route has nothing to do with load-balancing but needs to have more matching power than normal routing provides, like creating a route based on DSCP.
  • Anytime you do not need the functionality of “Connection Routes”, which are limited by conntrack status, and can’t identify various protocols, has table size limits, is more computationally intensive.
  • The rule of thumb is: Use an Advanced route unless you specifically need the connection tracking provided by the Connection routes  If what you’re trying to do works with an Advanced route, use that, otherwise go to Connection routes.

© 2004 – 2024 Mushroom Networks Inc. All rights reserved.

Let’s chat. Call us at +1 (858) 452-1031 or fill the form: