batman-adv scalability



Similar documents
IPv6 Associated Protocols

Networking 4 Voice and Video over IP (VVoIP)

SSVVP SIP School VVoIP Professional Certification

IPv6 associated protocols. Piers O Hanlon

IPv6 SECURITY. May The Government of the Hong Kong Special Administrative Region

What is VLAN Routing?

IPv6 Fundamentals, Design, and Deployment

Internetworking. Problem: There is more than one network (heterogeneity & scale)

Telematics. 9th Tutorial - IP Model, IPv6, Routing

Personal Firewall Default Rules and Components

Rohde & Schwarz R&S SITLine ETH VLAN Encryption Device Functionality & Performance Tests

VXLAN: Scaling Data Center Capacity. White Paper

Internet Packets. Forwarding Datagrams

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

TECHNICAL NOTE. GoFree WIFI-1 web interface settings. Revision Comment Author Date 0.0a First release James Zhang 10/09/2012

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

Accelerating Service Discovery in Ad-hoc Zero Configuration Networking

Definition. A Historical Example

Computer Networks. Lecture 3: IP Protocol. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

How To Learn Cisco Cisco Ios And Cisco Vlan

MPLS Implementation MPLS VPN

Building scalable IPSec infrastructure with MikroTik. IPSec, L2TP/IPSec, OSPF

Internet Working 5 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2004

Interconnecting Cisco Networking Devices: Accelerated (CCNAX) 2.0(80 Hs) 1-Interconnecting Cisco Networking Devices Part 1 (40 Hs)

Inter-Flow Network Coding. Wireless Mesh Networks

Introduction to IP v6

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

Lecture 02b Cloud Computing II

"Charting the Course...

SOME/IP SERVICE DISCOVERY THE NEED FOR SERVICE DISCOVERY IN THE VEHICLE

Interconnecting Cisco Network Devices 1 Course, Class Outline

Security of IPv6 and DNSSEC for penetration testers

VoIP in Mika Nupponen. S Postgraduate Course in Radio Communications 06/04/2004 1

Top-Down Network Design

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

: Interconnecting Cisco Networking Devices Part 1 v2.0 (ICND1)

Cisco Certified Network Associate Exam. Operation of IP Data Networks. LAN Switching Technologies. IP addressing (IPv4 / IPv6)

ITL BULLETIN FOR JANUARY 2011

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

IT 3202 Internet Working (New)

ProCurve Networking IPv6 The Next Generation of Networking

Router and Routing Basics

Virtual Private Network VPN IPSec Testing: Functionality Interoperability and Performance

Firewalls und IPv6 worauf Sie achten müssen!

Internetworking and Internet-1. Global Addresses

Mobility on IPv6 Networks

Lecture 17 - Network Security

SSVP SIP School VoIP Professional Certification

Experimental evaluation of two open source solutions for wireless mesh routing at layer two

Chapter 9A. Network Definition. The Uses of a Network. Network Basics

Final for ECE374 05/06/13 Solution!!

How do I get to

About the Technical Reviewers

Virtual Private Networks

VPN taxonomy. János Mohácsi NIIF/HUNGARNET tf-ngn meeting April 2005

Bridgewalling - Using Netfilter in Bridge Mode

6LoWPAN: An Open IoT Networking Protocol

IPv6 Trace Analysis using Wireshark Nalini Elkins, CEO Inside Products, Inc.

Introducing Basic MPLS Concepts

TCP for Wireless Networks

CMA5000 SPECIFICATIONS Gigabit Ethernet Module

J ai pas de TUN et je m en TAP

6LoWPAN Technical Overview

DYNAMIC MULTIPOINT VPN HUB AND SPOKE INTRODUCTION

Application Note How To Determine Bandwidth Requirements

Network Security TCP/IP Refresher

Quick Note 20. Configuring a GRE tunnel over an IPSec tunnel and using BGP to propagate routing information. (GRE over IPSec with BGP)

Introduction to IPv6 and Benefits of IPv6

Performance Evaluation of Linux Bridge

Host Configuration (Linux)

Protocols. Packets. What's in an IP packet

IP Anycast: Point to (Any) Point Communications. Draft 0.3. Chris Metz, Introduction

Dedication Preface 1. The Age of IPv6 1.1 INTRODUCTION 1.2 PROTOCOL STACK 1.3 CONCLUSIONS 2. Protocol Architecture 2.1 INTRODUCTION 2.

Objectives. Remote Connection Options. Teleworking. Connecting Teleworkers to the Corporate WAN. Providing Teleworker Services

Ethernet-based Software Defined Network (SDN) Cloud Computing Research Center for Mobile Applications (CCMA), ITRI 雲 端 運 算 行 動 應 用 研 究 中 心

APPLICATION NOTE 211 MPLS BASICS AND TESTING NEEDS. Label Switching vs. Traditional Routing

RESILIENT NETWORK DESIGN

IP Addressing Introductory material.

Load Balancing Barracuda Web Filter. Deployment Guide

Deploying Cisco Basic Wireless LANs WDBWL v1.1; 3 days, Instructor-led

50. DFN Betriebstagung

Network layer: Overview. Network layer functions IP Routing and forwarding

Performance of Software Switching

Protecting and controlling Virtual LANs by Linux router-firewall

Master Course Computer Networks IN2097

Demystifying Wireless for Real-World Measurement Applications

Getting started with IPv6 on Linux

Introduction to LAN/WAN. Network Layer (part II)

Achieving a High-Performance Virtual Network Infrastructure with PLUMgrid IO Visor & Mellanox ConnectX -3 Pro

Load Balancing Sophos Web Gateway. Deployment Guide

vsphere Networking vsphere 6.0 ESXi 6.0 vcenter Server 6.0 EN

Extending Networking to Fit the Cloud

SERVICE DISCOVERY AND MOBILITY MANAGEMENT

Internet Protocol: IP packet headers. vendredi 18 octobre 13

MPLS: Key Factors to Consider When Selecting Your MPLS Provider Whitepaper

Transcription:

batman-adv scalability Layer 2 Mesh Networks - Myths and Risks Linus Lüssing Freifunk Hamburg Geekend02, Sep. 2013

Outline Introduction 1 Introduction Layer 2 Mesh Networks 2 Experiences From Lübeck 3 Statistics From Hamburg 4 Features in Development

Outline Introduction Layer 2 Mesh Networks 1 Introduction Layer 2 Mesh Networks 2 Experiences From Lübeck 3 Statistics From Hamburg 4 Features in Development

batman-adv: Big, Virtual Switch Layer 2 Mesh Networks

batman-adv: Big, Virtual Switch Layer 2 Mesh Networks

batman-adv: Encapsulation Layer 2 Mesh Networks Encapsulates ethernet frames In own batman-adv header

Advantages Introduction Layer 2 Mesh Networks Supports IPv4, IPv6, probably IPv42,... Your non-ip / link-layer protocol? More flexible than Linux IP routing table: Interface bonding Network coding... Simple configuration MAC addresses are unique No IP subnet coordination Fast Roaming...

Disadvantage: Overhead Layer 2 Mesh Networks Layer 3 mesh routing protocol: Mesh protocol overhead Layer 2 mesh routing protocol: Mesh protocol overhead + Layer 2 specific overhead

Disadvantage: Overhead Layer 2 Mesh Networks IEEE 802.11s: Designed for 32 nodes

Disadvantage: Overhead Layer 2 Mesh Networks Layer 2 Mesh Networks? Don t Scale!

Outline Introduction Experiences From Lübeck 1 Introduction Layer 2 Mesh Networks 2 Experiences From Lübeck 3 Statistics From Hamburg 4 Features in Development

Experiences From Lübeck Experiences from Freifunk Lübeck

1 Node: Kernel panics Introduction Experiences From Lübeck 2009, pre 0.1 firmware Did not boot: batman-adv crashing

1 Node: Kernel panics Introduction Experiences From Lübeck 2009, pre 0.1 firmware Did not boot: batman-adv crashing

Experiences From Lübeck 10 Nodes: Too Large Neighbourhood on VPN Trying out batman-adv over VPN, using tinc: tinc does meshing, too: Large neighbourhood on VPN: many rebroadcasts Overhead on DSL got close to 1MBit/s

Changes in 0.2 Introduction Experiences From Lübeck October 2011 Added tinc OGM (= route update + link quality) interval: 1s -> 3s Should scale to 30 nodes then, right?

Experiences From Lübeck 15-20 Nodes: Again, Too Large Neighborhood on VPN Wrong assumption about OGM scalability: Linear to number of nodes in line topology But squared to number of local neighbour nodes

Changes in 0.3 Introduction Experiences From Lübeck August 2012: fastd Decreased neighbourhood size on VPN Peer-Groups: Connection to two of n gateway nodes

80 Nodes: Multicast Overhead Experiences From Lübeck Two wifi neighbours Measured on adhoc wifi interface Result: Losing about 25% airspace

Experiences From Lübeck 80 Nodes: Multicast Overhead - Types Service Announcements: SSDP, LLMNR, MDNS Address Resolution: ARP+ICMPv6

Changes in 0.3.2.1 Introduction Experiences From Lübeck April, 2013 batman-adv 2013.0.0: Distributed ARP Table Multicast Rate: 1MBit/s 12MBit/s Rebroadcasts on VPN: 3 1 Filter for non-essential multicast packets

Outline Introduction Statistics From Hamburg 1 Introduction Layer 2 Mesh Networks 2 Experiences From Lübeck 3 Statistics From Hamburg 4 Features in Development

Test Setup Introduction Statistics From Hamburg tcpdump on fastd VPN tunnel interface Thu Sep 19 00:00:00 2013 - Thu Sep 19 23:59:59 2013

Statistics From Hamburg RX by batman-adv type, average Bits/s fastd: +66Bytes headers 94KBit/s average 1.5% of ADSL, 6MBit/s

Statistics From Hamburg TX by batman-adv type, average Bits/s 80KBit/s average 14% of ADSL, 576KBit/s

Statistics From Hamburg RX by batman-adv type, Packets/180s OGM #clients BCAST #clients

Statistics From Hamburg RX by multicast type, average Bits/s Bandwidth hog: ICMPv6 Many nodes with old firmware: DAT not running ideal Still much: SSDP+MDNS+ NBNS+LLMNR Size vs. Rate

Statistics From Hamburg RX by ICMPv6 type, average Bits/s Most: Neighbor Discovery

Statistics: s Introduction Statistics From Hamburg OGM and layer 2 specific multicast overhead about the same IPv6 ND is currently the largest layer 2 specific overhead Getting close to the ADSL upload limit

Outline Introduction Features in Development Villains 1 Introduction Layer 2 Mesh Networks 2 Experiences From Lübeck 3 Statistics From Hamburg 4 Features in Development

Features in Development Villains Split horizon for multicast payload frames No rebroadcasts for packets on/from VPN interface

Features in Development Villains Split horizon for multicast payload frames Thu Sep 26 21:14:08 UTC 2013 eth1 / traffic statistics rx tx --------------------------------------+------------------ bytes 19.83 MiB 10.39 MiB --------------------------------------+------------------ max 572 kbit/s 340 kbit/s average 90.25 kbit/s 47.31 kbit/s min 32 kbit/s 16 kbit/s --------------------------------------+------------------ packets 223391 102620 --------------------------------------+------------------ max 758 p/s 395 p/s average 124 p/s 57 p/s min 38 p/s 16 p/s --------------------------------------+------------------ time 30.00 minutes Thu Sep 26 21:44:08 UTC 2013

Features in Development Villains Split horizon for multicast payload frames Thu Sep 26 21:14:06 UTC 2013 eth2 / traffic statistics rx tx --------------------------------------+------------------ bytes 19.59 MiB 3.24 MiB --------------------------------------+------------------ max 488 kbit/s 56 kbit/s average 89.16 kbit/s 14.73 kbit/s min 32 kbit/s 4 kbit/s --------------------------------------+------------------ packets 222931 28916 --------------------------------------+------------------ max 635 p/s 57 p/s average 123 p/s 16 p/s min 45 p/s 7 p/s --------------------------------------+------------------ time 30.00 minutes Thu Sep 26 21:44:06 UTC 2013

Features in Development Villains Split horizon for multicast payload frames Here: 47.31KBit/s vs. 14.73KBit/s Eliminates next bottleneck: ADSL upload

Distributed Address Table Features in Development Villains Distributed Hash Table for IPv6 Neighbor Discovery Like current DAT (Distributed ARP Table), but for IPv6, too Eliminates current largest ICMPv6 overhead: IPv6 Neighbor Discovery Status: Patchset submitted, not upstream yet

Multicast Awareness Introduction Features in Development Villains Send multicast packets to interested nodes only Removes most ICMPv6 overhead: Neighbor Solicitations, MLD Reports,... Status: First basic patchset submitted

Features in Development Villains B.A.T.M.A.N. IV - Echo Location Protocol Image Source: Petteri Aimonen, Wikimedia Commons, CC-BY-SA Perform link quality measurements with own packet type: ELP Reduced overhead through different intervals for OGMs and ELP Easier to optimize OGM propagation

Script-Kiddie: Mallory Introduction Features in Development Villains Playing with physical or virtual link layer Local disaster (mostly?)

Super Villain: Joker Introduction Features in Development Villains Knows batman well Global disaster

Introduction Current batman-adv algorithm is optimized for sparse networks Keep node neighbourhood small Common LL-Service-Announcement protocols: Don t scale... :( With this flat and VPN architecture, batman-adv / layer 2 meshing works with: 80 nodes: without multicast filters 300+ nodes: with multicast filters Eliminating Layer 2 specific overhead: Is on the horizon