BGP Analysis and Modeling

Introduction

Here is a course on BGP modeling that was given at the 1st International Summer School on Network and Service Management (ISSNSM 2007), organized by the EMANICS project in July 2007 at the Jacobs University, Bremen, Germany. This course was also given at the EuroFGI Summer School in August 2007.

Downloads

Slides
PDF emanics-summer-school-talk.pdf July 9th, 2007 1.85 M
Software
Sources cbgp-1.4.0-rc1.tar.gz July 5th, 2007 662.37 K
Sources libgds-1.4.0-rc1.tar.gz July 5th, 2007 425.31 K
Misc
Topology subra-2004.topo October 14th, 2008 474.17 K
Script abilene.cli July 10th, 2007 2.97 K
Solutions to exercises
Script emanics-ex1.cli (currently not available)
Script emanics-ex2.cli (currently not available)
Perl script emanics-ex2-compare September 23rd, 2008 1.02 K

Notes regarding the exercises

In exercice 1, it is required to build a topology composed of two distinct BGP domains. Though, the underlying routes (used to carry the BGP sessions) can be build using a single IGP domain. It is less realistic, but it eases the setup of the simulation. If you want to build two separate IGP domains, one per AS, you'll need to setup static routes to carry the external BGP sessions (between both ASes). You can use the CLI command net node route add for this purpose. In addition, although you can rely on the bgp domain full-mesh command to setup the full-mesh of iBGP sessions within AS2, you need to setup the eBGP session between AS1 and AS2 manually. You need to rely on the bgp router add peer command for this purpose.

In order to solve exercice 2, it is useful to know that each router in the AS-level topology loaded are identified with an IP address of the form ASh.ASl.0.0 where ASh (resp. ASl) is composed of the highest (resp. lowest) 8 bits of the ASN. For example, AS7018 will be modeled by router 27.106.0.0. In addition, it's good to know that the CLI command bgp topology record-route --output=routes.txt * allows to save the best BGP route of all the ASes.

Acknowledgments

Thanks to Juergen Schoenwaelder for inviting me to the summer school. Thanks to all the participants for their feedback.