Mitigation of Breaking Connections. (a.k.a. OLSRd v1 Multi-Gateway & BRDP)



Similar documents
Tomás P. de Miguel DIT-UPM. dit UPM

Border Gateway Protocol (BGP)

Charter Text Network Design and Configuration

Exterior Gateway Protocols (BGP)

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Understanding Route Redistribution & Filtering

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

LAN TCP/IP and DHCP Setup

Multihoming and Multi-path Routing. CS 7260 Nick Feamster January

IPv6 Associated Protocols

An Architecture View of Softbank

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to:

Load Balancing. Final Network Exam LSNAT. Sommaire. How works a "traditional" NAT? Un article de Le wiki des TPs RSM.

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1

Network Level Multihoming and BGP Challenges

IPv6 for AT&T Broadband

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING

Mobility on IPv6 Networks

IPv6 First Hop Security Protecting Your IPv6 Access Network

About the Technical Reviewers

The Case for Source Address Routing in Multihoming Sites

Border Gateway Protocol BGP4 (2)

IPv6 in Axis Video Products

IPv6 over IPv4/MPLS Networks: The 6PE approach

How To Make A Network Plan Based On Bg, Qos, And Autonomous System (As)

IPv6 mobility and ad hoc network mobility overview report

Use Domain Name System and IP Version 6

PT Activity 8.1.2: Network Discovery and Documentation Topology Diagram

Instructor Notes for Lab 3

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

How To Understand Bg

How To Make A Network Secure

Route Discovery Protocols

BGP Terminology, Concepts, and Operation. Chapter , Cisco Systems, Inc. All rights reserved. Cisco Public

HP Networking BGP and MPLS technology training

Classful IP Addressing (cont.)

Bell Aliant. Business Internet Border Gateway Protocol Policy and Features Guidelines

Chapter 3 LAN Configuration

SBSCET, Firozpur (Punjab), India

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

IPV6 DEPLOYMENT GUIDELINES FOR. ARRIS Group, Inc.

Multihoming: An Overview

1 Basic Configuration of Cisco 2600 Router. Basic Configuration Cisco 2600 Router

WHITE PAPER. Understanding IP Addressing: Everything You Ever Wanted To Know

Transitioning to BGP. ISP Workshops. Last updated 24 April 2013

IPv6 Hardening Guide for Windows Servers

IPv6 Fundamentals: A Straightforward Approach

A Framework for Scalable Global IP-Anycast (GIA)

Document ID: Introduction

Using the Border Gateway Protocol for Interdomain Routing

MPLS VPN over mgre. Finding Feature Information. Prerequisites for MPLS VPN over mgre

Neighbour Discovery in IPv6

Communications and Networking

Unicast Reverse Path Forwarding

How To Understand and Configure Your Network for IntraVUE

LISP Functional Overview

Reverse DNS considerations for IPv6

Internet inter-as routing: BGP

Performance Evaluation of AODV, OLSR Routing Protocol in VOIP Over Ad Hoc

Routing Protocols (RIP, OSPF, BGP)

How Subnets Work in Practice. Fred Marshall Coastal Computers & Networks

BGP. 1. Internet Routing

Module 2: Assigning IP Addresses in a Multiple Subnet Network

Windows 7 Resource Kit

6 Mobility Management

S ITGuru Exercise (3: Building the MPLS BGP VPN) Spring 2006

Vulnerabili3es and A7acks

IP Routing Configuring Static Routes

IP(v6) security. Matěj Grégr. Brno University of Technology, Faculty of Information Technology. Slides adapted from Ing.

ExamPDF. Higher Quality,Better service!

Basic IPv6 WAN and LAN Configuration

BGP: Border Gateway Protocol

LAB THREE STATIC ROUTING

Interconnecting Cisco Networking Devices Part 2

How to connect your new virtual machine to the Internet

Introduction to MPLS-based VPNs

Interconnecting Cisco Network Devices 1 Course, Class Outline

Step-by-Step Guide for Setting Up IPv6 in a Test Lab

Using Cisco UC320W with Windows Small Business Server

Internet Engineering Task Force (IETF) Category: Standards Track. T. Reddy Cisco March 2015

LinkProof DNS Quick Start Guide

Cisco Configuring Basic MPLS Using OSPF

Fast Re-Route in IP/MPLS networks using Ericsson s IP Operating System

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

Firewalls und IPv6 worauf Sie achten müssen!

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing

Mobile IP. Bheemarjuna Reddy Tamma IIT Hyderabad. Source: Slides of Charlie Perkins and Geert Heijenk on Mobile IP

Load Balancing Using PCC & RouterOS

Chapter 10 Link-State Routing Protocols

IP and Mobility. Requirements to a Mobile IP. Terminology in Mobile IP

Using IPM to Measure Network Performance

Transcription:

Mitigation of Breaking Connections (a.k.a. OLSRd v1 Multi-Gateway & BRDP)

About Me Ferry Huberts Self-Employed Open Source Entrepreneur Lead Committer for OLSRd v1 Committer in several other projects Mainly OSGi projects

Smart Gateway

Smart Gateway Dafuq?

Smart Gateway Internet Internet Mesh Network

Smart Gateway Original Behaviour: Choose fattest exit link Only select when chosen 6 times in a row Only select once Even if it's a uni-directional link Even if it's (or has become) unreachable No so smart...

Smart Gateway Internet Internet IPIP Tunnels Mesh Network

Smart Gateway Fixed Ignore gateways with uni-directional links Ignore unreachable gateways Many more small fixes Modified Choose nearest fattest exit link Only select when chosen <configurable> times in a row Allow continuous selection Added Optionally use a threshold when choosing Optionally use link weighing A bit smarter...

Smart Gateway Internet Internet Mesh Network

Smart Gateway Multi-Gateway Allow <configurable> gateways in parallel Continuously select a new (best) gateway Do not take down existing tunnels Use policy routing for connection pinning

Smart Gateway Internet Newly selected gateway tunnels Previously selected gateway tunnels Internet Mesh Network

Much smarter :-) Smart Gateway

Smart Gateway Issue: Tunnels not preemptively taken down (yet) (Edit: fixed in 0.6.6 release) Summary: Mitigates the 'breaking connections' problem Does not solve it

Smart Gateway So how do we solve the 'breaking connections' problem?

BRDP Border Router Discovery Protocol

BRDP IETF HomeNet RFC https://datatracker.ietf.org/doc/draft-boot-homenet-brdp/ BRDP enables multi-homing for small to medium sites, including Homenets, using Provider Aggregatable IPv6 addresses.

Let s bind existing stuff together Perimeter detection Ingress filtering Neighbor discovery Address Configuration SLAAC, DHCP Routing Prefix delegation Address selection Multipath transport

With BRDP, Border Router address and ISP delegated prefix is disseminated in the edge network Border Routers start sending Border Router Information Options (BRIO), for each prefix. Routers cache and forward the BRIOs downstream. Hosts may use the BRIO; Neighbor Discovery (ND) is used. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Prefix Length D reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sequence Number Hopcount reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Uniform Path Metric +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ( Border Router prefix ) + + Border Router Address + + ( remainder of Border Router Address ) + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Border Router acts as DHCP server when D-flag is set Nodes can get IP configuration options for each prefix. Routers can get (/64) prefixes for each subnet with DHCP-PD. Maybe similar approach for name resolving, with N-flag, for BR as DNS server. Or use DNS server address provided by DHCP. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Prefix Length D reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sequence Number Hopcount reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Uniform Path Metric +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ( Border Router prefix ) + + Border Router Address + + ( remainder of Border Router Address ) + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Other fields: for BRIO forwarding and hints for costs to Internet DFZ BRIOs are distributed downstream, like distance vector. Uniform Path Metric field can be used for address selection. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Prefix Length D reserverd +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sequence Number Hopcount reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Uniform Path Metric +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ( Border Router prefix ) + + Border Router Address + + ( remainder of Border Router Address ) + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

BRDP based routing Forwarding heuristic slightly updated (related to RFC 1812): 0) Removal of ::/0 route 1) Forward based on destination address (as normal) 2a) If no next-hop found, forward based on source address, with lookup in BRIO-cache 2b) If BR found, forward to next-hop for that BR (rule 1) This eliminates ingress filter problems, packets are directed to topologically correct Border Router. It also provides distributed ingress filtering. Now, hosts and routers cooperate for multi-path support.

Basics: 3.2.2.1. A: Single ISP, Single CER, Internal routers BRDP operation explained using Network topology model A (Home Networking Architecture for IPv6) Assume Customer Edge Router has discovered Customer Internet Connection, and has assigned a prefix.

1) Customer Edge Router configures subnets on its interfaces Prefix Customer Edge Router has three Homenet interfaces, it configures subnets on these and send out ND RA PIO. Subnet A Subnet F Subnet B Subnet B Nodes on subnets A, B and F can get IP addresses and use the Customer Internet Connection. Nothing special here

2) Customer Edge Router starts sending BRIO Prefix BRIO_1 Customer Edge Router sends out its assigned prefix with ND RA BRIO. Customer Interior Router learns how to get prefixes for its attached interfaces that do not have a subnet already. Assume D-flag is set and Customer Edge Router acts as DHCP server, including DHCP-PD.

3) Customer Interior Router configures subnets on its interfaces Prefix Customer Interior Router has two interfaces, which do not have a subnet configured already. It configures subnets on it and sends out ND RA PIO Subnet A Subnet C Subnet F Subnet B Subnet E Subnet E Subnet B Subnet D Nodes on subnets C and D can get IP addresses and use Customer Internet Connection. There is no need to configure subnet E on interface with subnet B, because both subnets B and E would be in same BRIO prefix. For the example, subnet E is configured. To be discussed.

4) Customer Interior Router starts sending BRIO Prefix BRIO_1 IPv6 Customer Interior Router sends BRIO information with its ND RA. Hop-count and Uniform Path Metric fields are adjusted. Option for forwarding back on same interface (needed on MANET interfaces)

5) Interior nodes select IP addresses as source address Prefix In this example, source selection for globally unique addresses is straightforward, there is only one provider prefix. Subnet A Subnet C Subnet F Subnet B Subnet E Subnet E Subnet B Subnet D For nodes with addresses in subnet B and E, the BRIO cache provides information that subnet B has a lower cost than subnet E. Assume hosts send packets with source E to Interior Router, source B to Edge Router. How to deal with this is a MIF subject.

6a) Customer Routers run a routing protocol Prefix The two Customer Routers have adjacency, using two links. Routing uses link local addresses for adjacency. Reachability to prefixes is exchanged. BRDP works with any routing protocol.

6b) Forwarding for destinations inside the Homenet Prefix Routing for interior nodes is based on destination address. Example: H8 send a packet to H1, via Interior Router. Red: hosts default router list Orange: forwarding on DA

6c) Forwarding for destinations outside the Homenet Prefix For destinations outside the Homenet, a lookup takes place based on source address. This prepares for multi-homing. Source addresses that matches the prefix are send to the Border Router, the Customer Edge Router. Example: H8 send a packet to Internet node, via Interior Router. Red: hosts default router list Green: forwarding on SA

Multi-homing: 3.2.2.2. B: Two ISPs, Two CERs, Shared subnet More fun: BRDP multi-homing operation explained using Network topology model B (Home Networking Architecture for IPv6) Again, the Customer Edge Routers has discovered the Customer Internet Connections, and has been assigned prefixes. Assume providers have ingress filters. In the example, links to Service providers have different capacity, to point out capabilities of BRDP.

1) BRDP Basics are applied Routers send ND RA with PIO and BRIO. Router adjacency is formed. BRIO_1 Subnet A BRIO_2 Subnet B Nodes have configured addresses, optionally for both Service Providers. The following slides describe BRDPs advanced address configuration, address selection and routing.

2) BRDP based address configuration Hosts that configure only one address could pick such at random; a fat pipe (blue) or the narrow band alternative path (red). Legacy host H2 has bad luck. BRIO_1 A1 BRIO_2 B2 A3 B3 A4 Hosts can benefit from information on path costs to the Service Providers. BRDP provides such, multiple hops away (not shown in this scenario). This is not supported by RFC 4191. Hosts H1 and H4 opt for the high capacity blue fat pipe, with luck or by using BRDP provided information. Host H3 has multipath support. It will check both paths.

2) BRDP based address selection Only host H3 has to select an address out of the candidates, because it has two. Again, it can take randomly. It could use happy eyeballs. BRIO_1 BRIO_2 It can do better, using the BRIO provided information. Why not try the route with the best metric first? In this case, this is address A3. A3 B3 For best performance, it uses both addresses with a multipath transport protocol, e.g. MPTCP.

3a) BRDP based routing, redirecting packets Host H2 had bad luck with selecting the source address. Murphy is with him, it sends the packet to the less optimal router (red). BRIO_1 B2 BRIO_2 With BRDP based routing, Router 1 redirects the packet to Router 2 (green). This because the destination is not within the Homenet and the source belongs to the prefix, advertized by Router 2. Router 2 forwards the packet to the Service Provider, and the packet is delivered to the final destination.

3b) BRDP based routing, multipath Host H3 has two addresses, one for each Service Provider. It sends the packets the the next hop based on information received with BRIOs. BRIO_1 BRIO_2 Forwarding to the correct Customer Edge Router is supported in multihop networks also. It does not depend on a routing protocol. B2 A3 B3

BRDP Let's implement BRDP!

Contact OLSR Development List <olsr-dev@lists.olsr.org> Ferry Huberts <ferry.huberts@pelagic.nl>

Mitigation of Breaking Connections (a.k.a. OLSRd v1 Multi-Gateway & BRDP) A recurring problem of highly dynamic ad-hoc networks is the fact that connections break all the time. Some application can handle this, some cannot. In either case the load on the network is higher than it really needs to be because of the continuous connection re-establishments. Multi- Gateway enhancements, as implemented in OLSR v1, can mitigate a part of this problem. BRDP and MPTCP can be employed to further enhance the experience on such highly dynamic networks. This talk aims to discuss (at least) the multi-gateway enhancements and BRDP. You'll see a LOT of similarities between SGW and BRDP...

About Me Ferry Huberts Self-Employed Open Source Entrepreneur Lead Committer for OLSRd v1 Committer in several other projects Mainly OSGi projects

Smart Gateway

Smart Gateway Dafuq?

Smart Gateway Internet Internet Mesh Network

Smart Gateway Original Behaviour: Choose fattest exit link Only select when chosen 6 times in a row Only select once Even if it's a uni-directional link Even if it's (or has become) unreachable No so smart...

Smart Gateway Internet IPIP Tunnels Internet Mesh Network Picture stays the same even when the non-chosen exit link moves into range and/or the chose one moves out of range Original sgw was made for static situations Which kind of sucks, why deploy a mesh network if things are static?

Smart Gateway Fixed Ignore gateways with uni-directional links Ignore unreachable gateways Many more small fixes Modified Choose nearest fattest exit link Only select when chosen <configurable> times in a row Allow continuous selection Added Optionally use a threshold when choosing Optionally use link weighing A bit smarter...

Smart Gateway Internet Internet Mesh Network

Smart Gateway Multi-Gateway Allow <configurable> gateways in parallel Continuously select a new (best) gateway Do not take down existing tunnels Use policy routing for connection pinning

Smart Gateway Internet Newly selected gateway tunnels Previously selected gateway tunnels Internet Mesh Network

Much smarter :-) Smart Gateway

Smart Gateway Issue: Tunnels not preemptively taken down (yet) (Edit: fixed in 0.6.6 release) Summary: Mitigates the 'breaking connections' problem Does not solve it

Smart Gateway So how do we solve the 'breaking connections' problem?

BRDP Border Router Discovery Protocol

BRDP IETF HomeNet RFC https://datatracker.ietf.org/doc/draft-boot-homenet-brdp/ BRDP enables multi-homing for small to medium sites, including Homenets, using Provider Aggregatable IPv6 addresses. BRDP provides autoconfiguration for multihomed multi-hop edge networks and routing without ingress filter problems, with support for multi-path. BRDP has its roots in former Autoconf working group. It was published in a set of drafts. Basics implemented in Opnet. Parked for couple of years. Now proposed for Homenets. Today, the basic functions are presented.

Let s bind existing stuff together Perimeter detection Ingress filtering Neighbor discovery Address Configuration SLAAC, DHCP Routing Prefix delegation Address selection Multipath transport

With BRDP, Border Router address and ISP delegated prefix is disseminated in the edge network Border Routers start sending Border Router Information Options (BRIO), for each prefix. Routers cache and forward the BRIOs downstream. Hosts may use the BRIO; Neighbor Discovery (ND) is used. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Prefix Length D reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sequence Number Hopcount reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Uniform Path Metric +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ( Border Router prefix ) + + Border Router Address + + ( remainder of Border Router Address ) + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ND = Neighbor Discovery

Border Router acts as DHCP server when D-flag is set Nodes can get IP configuration options for each prefix. Routers can get (/64) prefixes for each subnet with DHCP-PD. Maybe similar approach for name resolving, with N-flag, for BR as DNS server. Or use DNS server address provided by DHCP. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Prefix Length D reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sequence Number Hopcount reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Uniform Path Metric +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ( Border Router prefix ) + + Border Router Address + + ( remainder of Border Router Address ) + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ DHCP-PD = prefix delegation

Other fields: for BRIO forwarding and hints for costs to Internet DFZ BRIOs are distributed downstream, like distance vector. Uniform Path Metric field can be used for address selection. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type Length Prefix Length D reserverd +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sequence Number Hopcount reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Uniform Path Metric +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ reserved +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + ( Border Router prefix ) + + Border Router Address + + ( remainder of Border Router Address ) + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

BRDP based routing Forwarding heuristic slightly updated (related to RFC 1812): 0) Removal of ::/0 route 1) Forward based on destination address (as normal) 2a) If no next-hop found, forward based on source address, with lookup in BRIO-cache 2b) If BR found, forward to next-hop for that BR (rule 1) This eliminates ingress filter problems, packets are directed to topologically correct Border Router. It also provides distributed ingress filtering. Now, hosts and routers cooperate for multi-path support.

Basics: 3.2.2.1. A: Single ISP, Single CER, Internal routers BRDP operation explained using Network topology model A (Home Networking Architecture for IPv6) Assume Customer Edge Router has discovered Customer Internet Connection, and has assigned a prefix.

1) Customer Edge Router configures subnets on its interfaces Prefix Customer Edge Router has three Homenet interfaces, it configures subnets on these and send out ND RA PIO. Subnet A Subnet F Subnet B Subnet B Nodes on subnets A, B and F can get IP addresses and use the Customer Internet Connection. Nothing special here

2) Customer Edge Router starts sending BRIO Prefix BRIO_1 Customer Edge Router sends out its assigned prefix with ND RA BRIO. Customer Interior Router learns how to get prefixes for its attached interfaces that do not have a subnet already. Assume D-flag is set and Customer Edge Router acts as DHCP server, including DHCP-PD.

3) Customer Interior Router configures subnets on its interfaces Prefix Customer Interior Router has two interfaces, which do not have a subnet configured already. It configures subnets on it and sends out ND RA PIO Subnet A Subnet C Subnet F Subnet B Subnet E Subnet E Subnet B Subnet D Nodes on subnets C and D can get IP addresses and use Customer Internet Connection. There is no need to configure subnet E on interface with subnet B, because both subnets B and E would be in same BRIO prefix. For the example, subnet E is configured. To be discussed.

4) Customer Interior Router starts sending BRIO Prefix BRIO_1 IPv6 Customer Interior Router sends BRIO information with its ND RA. Hop-count and Uniform Path Metric fields are adjusted. Option for forwarding back on same interface (needed on MANET interfaces)

5) Interior nodes select IP addresses as source address Prefix In this example, source selection for globally unique addresses is straightforward, there is only one provider prefix. Subnet A Subnet C Subnet F Subnet B Subnet E Subnet E Subnet B Subnet D For nodes with addresses in subnet B and E, the BRIO cache provides information that subnet B has a lower cost than subnet E. Assume hosts send packets with source E to Interior Router, source B to Edge Router. How to deal with this is a MIF subject. MIF = Multiple InterFaces

6a) Customer Routers run a routing protocol Prefix The two Customer Routers have adjacency, using two links. Routing uses link local addresses for adjacency. Reachability to prefixes is exchanged. BRDP works with any routing protocol.

6b) Forwarding for destinations inside the Homenet Prefix Routing for interior nodes is based on destination address. Example: H8 send a packet to H1, via Interior Router. Red: hosts default router list Orange: forwarding on DA

6c) Forwarding for destinations outside the Homenet Prefix For destinations outside the Homenet, a lookup takes place based on source address. This prepares for multi-homing. Source addresses that matches the prefix are send to the Border Router, the Customer Edge Router. Example: H8 send a packet to Internet node, via Interior Router. Red: hosts default router list Green: forwarding on SA

Multi-homing: 3.2.2.2. B: Two ISPs, Two CERs, Shared subnet More fun: BRDP multi-homing operation explained using Network topology model B (Home Networking Architecture for IPv6) Again, the Customer Edge Routers has discovered the Customer Internet Connections, and has been assigned prefixes. Assume providers have ingress filters. In the example, links to Service providers have different capacity, to point out capabilities of BRDP.

1) BRDP Basics are applied Routers send ND RA with PIO and BRIO. Router adjacency is formed. BRIO_1 Subnet A BRIO_2 Subnet B Nodes have configured addresses, optionally for both Service Providers. The following slides describe BRDPs advanced address configuration, address selection and routing.

2) BRDP based address configuration Hosts that configure only one address could pick such at random; a fat pipe (blue) or the narrow band alternative path (red). Legacy host H2 has bad luck. BRIO_1 A1 BRIO_2 B2 A3 B3 A4 Hosts can benefit from information on path costs to the Service Providers. BRDP provides such, multiple hops away (not shown in this scenario). This is not supported by RFC 4191. Hosts H1 and H4 opt for the high capacity blue fat pipe, with luck or by using BRDP provided information. Host H3 has multipath support. It will check both paths.

2) BRDP based address selection Only host H3 has to select an address out of the candidates, because it has two. Again, it can take randomly. It could use happy eyeballs. BRIO_1 BRIO_2 It can do better, using the BRIO provided information. Why not try the route with the best metric first? In this case, this is address A3. A3 B3 For best performance, it uses both addresses with a multipath transport protocol, e.g. MPTCP.

3a) BRDP based routing, redirecting packets Host H2 had bad luck with selecting the source address. Murphy is with him, it sends the packet to the less optimal router (red). BRIO_1 B2 BRIO_2 With BRDP based routing, Router 1 redirects the packet to Router 2 (green). This because the destination is not within the Homenet and the source belongs to the prefix, advertized by Router 2. Router 2 forwards the packet to the Service Provider, and the packet is delivered to the final destination.

3b) BRDP based routing, multipath Host H3 has two addresses, one for each Service Provider. It sends the packets the the next hop based on information received with BRIOs. BRIO_1 BRIO_2 Forwarding to the correct Customer Edge Router is supported in multihop networks also. It does not depend on a routing protocol. B2 A3 B3

BRDP Let's implement BRDP! In dnsmasq

Contact OLSR Development List <olsr-dev@lists.olsr.org> Ferry Huberts <ferry.huberts@pelagic.nl>