nanog mailing list archives
Route Programming (was Re: bgp route-map)
From: Leo Bicknell <bicknell () ufp org>
Date: Mon, 25 Aug 2003 16:02:22 -0400
This reminds me of something I've wanted to bring up to the community for a long time. I'd like to see a "route programming language" that gets implemented in a multi-vendor way. No, I'm not talking about like RPSL, but rather, let me give some examples: 1) Pull out session details via "variables": route-statement foo { if ($route has community(1234:$session{'asn'})) { set_asprepend($route, "1234 1234") } } 2) Check for the route in other routing tables: route-statement bar { if ($route in ospf) { set_localpref($route, 10) } if ($route in bgp && $route has communty(1234:666)) drop($route) } set_localpref($route, 100) } 3) Scan other route tables: route-statement baz { if ($route supernet-in bgp) { drop($route); } } 4) Other weird stuff: route-statement hack { if ($route = "1.2.3.0/24") { announce_route("1.2.3.10/32", "192.168.1.1") } } Basically all the data on the box would be made available via global variables (eg, session IP, session ASN, bgp version, etc), and all dynamic data would have interfaces (eg scan other routing tables, acl's, etc). You'd write a "function" which would get passed a route object, and act on it. Functions could further pass that route on calling other functions (allowing you to create common policy). Sadly, while I can think of many cool things you could do, I know little about how to really design a languge. I also have no idea how bad other people want this, how hard it would be to get vendors to implement, etc. Feel free to add your support, or call me a crackpot. -- Leo Bicknell - bicknell () ufp org - CCIE 3440 PGP keys at http://www.ufp.org/~bicknell/ Read TMBG List - tmbg-list-request () tmbg org, www.tmbg.org
Attachment:
_bin
Description:
Current thread:
- bgp route-map Haesu (Aug 25)
- Re: bgp route-map ww (Aug 25)
- Re: bgp route-map Haesu (Aug 25)
- Re: bgp route-map Matt Levine (Aug 25)
- Re: bgp route-map Haesu (Aug 25)
- Re: bgp route-map E.B. Dreger (Aug 25)
- Re: bgp route-map Cliff Albert (Aug 25)
- Re: bgp route-map Haesu (Aug 25)
- Re: bgp route-map ww (Aug 25)
- Route Programming (was Re: bgp route-map) Leo Bicknell (Aug 25)
- Re: Route Programming (was Re: bgp route-map) Haesu (Aug 25)
- Lazy Engineers and Viable Excuses Danny McPherson (Aug 25)
- Re: Lazy Engineers and Viable Excuses Rob Thomas (Aug 25)
- Re: Lazy Engineers and Viable Excuses Haesu (Aug 25)
- Re: Lazy Engineers and Viable Excuses Joe Abley (Aug 25)
- Re: Lazy Engineers and Viable Excuses Jared Mauch (Aug 25)
- Re: Lazy Engineers and Viable Excuses Danny McPherson (Aug 25)
- Re: Lazy Engineers and Viable Excuses Ian Mason (Aug 25)
- Re: Lazy Engineers and Viable Excuses Leo Bicknell (Aug 26)
- Re: Lazy Engineers and Viable Excuses Valdis . Kletnieks (Aug 26)
- Re: Route Programming (was Re: bgp route-map) Haesu (Aug 25)