Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any...

21
Why use Quagga Anyway? Nick Hilliard [email protected]

Transcript of Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any...

Page 1: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Why use Quagga Anyway?

Nick Hilliard

[email protected]

Page 2: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

C

Y

Page 3: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

C

Y

ABCD route server clients

Page 4: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

Page 5: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Page 6: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

RS calculates best path as BX

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Page 7: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

RS calculates best path as BX

C

YB does not peer

with D (tag 0:D)

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Page 8: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

RS calculates best path as BX

C

YB does not peer

with D (tag 0:D)

D should see XYA path

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Page 9: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

RS calculates best path as BX

C

YB does not peer

with D (tag 0:D)

D should see XYA path

RS RIB has only one best path - BX

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Page 10: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

IXP Fabric

Single-RIB BGP policy problem

Single RIB

Route Server

A

X

B

D

RS calculates best path as BX

C

YB does not peer

with D (tag 0:D)

D should see XYA path

RS RIB has only one best path - BX

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BXD does not see X

Page 11: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

Page 12: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

Page 13: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

Page 14: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

Page 15: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

import rule filters on tag

Page 16: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

import rule filters on tag

RIB C sees BX and AYX

Page 17: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

import rule filters on tag

RIB C sees BX and AYX

RIB D only sees AYX

Page 18: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

import rule filters on tag

RIB C sees BX and AYX

RIB D only sees AYX

RIB C selects BX

BX

Page 19: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

How Per-Client Loc-RIBs Work

Multi-RIB

RouteServer

A

X

B D

C

Y

ABCD route server clients

X reaches IXP via transit A and B

AYX longer than BX

Loc-RIB A

Loc-RIB B

Loc-RIB D

Loc-RIB C

export

import

import rule filters on tag

RIB C sees BX and AYX

RIB D only sees AYX

RIB C selects BXRIB D selects AYX

BX

AYX

Page 20: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Copyright © INEX 2009All Rights Reserved

Multiple Loc-RIBs also mean:Memory consumption and CPU usage go from O(P) to:

... where N = number of clients, P = number of prefixes

Add a little if “soft-reconfiguration inbound” used

Quagga is single-threadedmultiple cores won’t help you for CPUbut 64 bit images might for memory

you can now run separate daemons for IPv4 and IPv6

All this is fine if you’re a small IXPNot so good if you have lots of prefixes and route-server clients.

Problems with Multiple Loc-RIBs

Page 21: Why use Quagga Anyway? - 4-8 May 2009€¦ · Thanks for listening! That's all folks.....any questions? Created Date: 5/7/2009 9:02:40 AM

Thanks for listening!

That's all folks...

...any questions?