public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
* [B.A.T.M.A.N.] [RFCv2 0/6] add network wide multi interface optimization
@ 2013-09-04 16:27 Simon Wunderlich
  2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 1/6] batman-adv: remove bonding and interface alternating Simon Wunderlich
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Simon Wunderlich @ 2013-09-04 16:27 UTC (permalink / raw)
  To: b.a.t.m.a.n; +Cc: Simon Wunderlich

This patchset adds the network wide multi interface optimization as
proposed in our wiki [1] for BATMAN IV. The main purpose is to do
interface alternating and bonding by considering multi interface
capabilities globally and not just for the (next) link, otherwise
non-optimal links may be chosen.

This patchset needs to change a lot of core data structures and
routing, please review it carefully. A local development branch
exists on the public git repo [2].

Changes from RFCv1 in May are:
 * rebase on current master including routing abstraction
 * use routing abstraction and change some of the API calls for the
   new multi interface usage
 * check bonding candidates using the new API
 * changed wifi penalty to use the double hop penalty, default hop
   penalty changed to 15 to make no effective change in single station
   networks
 * fixed seqno protection window troubles (changed to protection window
   per interface for OGMs)
 * various smaller changes, including locking and NULL checking

I've tested the patchset in my VMs to confirm that bonding and alternating
works as expected.

As always, any comments are appreciated!

Thanks,
	Simon

[1] http://www.open-mesh.org/projects/batman-adv/wiki/network-wide-multi-link-optimization
[2] http://git.open-mesh.org/batman-adv.git/shortlog/refs/heads/simon/network-wide-multiif

Simon Wunderlich (6):
  batman-adv: remove bonding and interface alternating
  batman-adv: split tq information in neigh_node struct
  batman-adv: split out router from orig_node
  batman-adv: add WiFi penalty
  batman-adv: consider outgoing interface in OGM sending
  batman-adv: add bonding again

 bat_iv_ogm.c            |  732 +++++++++++++++++++++++++++++++----------------
 distributed-arp-table.c |    3 +-
 gateway_client.c        |   79 ++++-
 hard-interface.c        |    2 +-
 hard-interface.h        |    1 +
 icmp_socket.c           |    2 +-
 main.c                  |    2 +-
 network-coding.c        |    9 +-
 originator.c            |  304 +++++++++++++++++---
 originator.h            |   14 +-
 routing.c               |  432 +++++++++-------------------
 routing.h               |   12 +-
 send.c                  |   13 +-
 soft-interface.c        |    2 +-
 translation-table.c     |    5 +-
 types.h                 |  110 ++++---
 16 files changed, 1073 insertions(+), 649 deletions(-)

-- 
1.7.10.4


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2013-10-03 22:53 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-04 16:27 [B.A.T.M.A.N.] [RFCv2 0/6] add network wide multi interface optimization Simon Wunderlich
2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 1/6] batman-adv: remove bonding and interface alternating Simon Wunderlich
2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 2/6] batman-adv: split tq information in neigh_node struct Simon Wunderlich
2013-09-13 13:23   ` Antonio Quartulli
2013-10-03 20:39     ` Simon Wunderlich
2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 3/6] batman-adv: split out router from orig_node Simon Wunderlich
2013-09-22 20:47   ` Antonio Quartulli
2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 4/6] batman-adv: add WiFi penalty Simon Wunderlich
2013-09-25 20:18   ` Antonio Quartulli
2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 5/6] batman-adv: consider outgoing interface in OGM sending Simon Wunderlich
2013-10-01  9:00   ` Antonio Quartulli
2013-10-03 22:11     ` Simon Wunderlich
2013-09-04 16:27 ` [B.A.T.M.A.N.] [RFCv2 6/6] batman-adv: add bonding again Simon Wunderlich
2013-10-01  9:24   ` Antonio Quartulli
2013-10-03 22:53     ` Simon Wunderlich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox