[Olsr-dev] [PATCH v1 00/23] Add multi-gateway mode to smart gateway system
Ferry Huberts
(spam-protected)
Tue Dec 4 16:17:07 CET 2012
From: Ferry Huberts <(spam-protected)>
Review and comments are requested.
The advantage of having multiple gateways active at the same time is that we
avoid breaking connections because active connections via gateway 1 will not
be terminated when we pick gateway 2 as the new default gateway (as long as
gateway 1 doesn't disappear).
@Henning: you already reviewed the first 7 patches, here they're just rebased.
@Hans : you might want to take a look at patch 8
Ferry Huberts (23):
gateway: store current gateway(s) in a struct
gateway: lazily allocate the current gateway structs
gateway: add path_cost to 'set gateway' interface
gateway: add interface to get the gateway costs
gateway: simplify by using the new costs interface
gateway: add gateway_list.{c,h}
gateway: keep track of the active gateways in a list
json_info: only output smart gateway info on Linux
kernel_route: olsr_os_inetgw_tunnel_route can now take the table
gateway: let the gateway code determine the tunnel name
gateway: remove the worst gateway before adding new one
gateway: add SmartGatewayUseCount configuration parameter
gateway: use SmartGatewayUseCount setting the the gateway lists
gateway: add SmartGatewayEgressInterfaces configuration parameter
gateway: add SmartGatewayMarkOffset{Egress,Tunnels} configuration
parameters
gateway: add SmartGatewayPolicyRoutingScript configuration parameter
gateway: initialise a set of fixed tunnel names in/for multi-gateway
mode
gateway: initialise the egress interface names in/for multi-gateway
mode
gateway: use fixed tunnel names in/for multi-gateway mode
gateway: setup and clear table specific default routes in/for
multi-gateway mode
gateway: setup/cleanup multi-gateway mode during startup/shutdown of
olsrd
gateway: introduce and use MULTI_GW_MODE define
gateway: enable multi-gateway mode
Makefile | 6 +
Makefile.inc | 1 +
README-Olsr-Extensions | 31 +-
files/olsrd.conf.default.full | 38 +++
files/olsrd.conf.default.lq | 38 +++
files/olsrd.conf.default.lq-fisheye | 38 +++
files/sgw_policy_routing_setup.sh | 174 ++++++++++
lib/jsoninfo/src/olsrd_jsoninfo.c | 21 ++
src/bsd/dummy.c | 5 +-
src/cfgparser/cfgfile_gen.c | 60 ++++
src/cfgparser/olsrd_conf.c | 124 +++++++
src/cfgparser/oparse.y | 112 +++++++
src/cfgparser/oscan.lex | 25 ++
src/gateway.c | 630 ++++++++++++++++++++++++++++++++----
src/gateway.h | 12 +-
src/gateway_default_handler.c | 77 ++---
src/gateway_list.c | 187 +++++++++++
src/gateway_list.h | 152 +++++++++
src/kernel_routes.h | 2 +-
src/kernel_tunnel.h | 2 +-
src/linux/kernel_routes_nl.c | 4 +-
src/linux/kernel_tunnel.c | 20 +-
src/main.c | 10 +
src/olsr_cfg.h | 20 ++
src/win32/dummy.c | 5 +-
25 files changed, 1666 insertions(+), 128 deletions(-)
create mode 100755 files/sgw_policy_routing_setup.sh
create mode 100644 src/gateway_list.c
create mode 100644 src/gateway_list.h
--
1.7.11.7
More information about the Olsr-dev
mailing list