Interdomain routing with BGP4
Advanced one-day course
Louvain-la-Neuve, May 22th, 2003

Olivier Bonaventure

Today's Internet is divided in about 14000 different domains interconnected in various ways. Two types of protocols are used to route IP packets across the global Internet. Inside a single domain, the intradomain routing protocol (RIP, OSPF, ISIS, ...) builds the routing tables inside the domain so that packets follow the shortest to reach their destination inside the domain. Between domains, the Border Gateway Protocol (BGP) is used to build the interdomain routing tables while taking into account the routing policy of each domain. Designed in the early 1990s, BGP has been improved several times. Introduced in 1995 to support CIDR prefixes, BGP-4, de current interdomain routing protocol, has also been significantly modified. Other improvements to BGP are currently being discussed within IETF in parallel with the finalization of a BGP-4 specification aligned with today's implementations.

This one day course is targeted at network engineers having already a good knowledge of the IP protocol suite but who needs to better understand BGP-4. The course assumes a basic knowledge of IP and intradomain routing protocols, but no prior knowledge of BGP4. The examples discussed are vendor-independent and no knowledge of router configuration languages is required.

Detailed description

The goal of the course is to clearly describe the behavior of BGP-4 and how it is currently used in today's Internet taking into account the recent BGP improvements. The course is divided in four main parts.

The global Internet

In the first part, we briefly discuss the current organization of the global Internet and notably the utilization of CIDR and the types of relations between domains. We also briefly summarize the behavior of the main intradomain routing protocols (RIP and OSPF/ISIS).

BGP4 basics

In the second part, we describe the basics of BGP4 by considering first the interconnection of several simple domains containing a single BGP router. This simple Internet allows us to explain the role of the various messages used by BGP and the architecture of a BGP router. We also discuss the most common routing policies used in the Internet and show how they can be supported by using the import/export filters and the decision process of a BGP router. We also briefly describe the Routing Policy Specification Language (RPSL), a vendor-independent language used to specify routing policy.

BGP-4 in large domains

In the third part, we analyze the behavior of BGP-4 in large domains containing between a few and several hundreds BGP routers. We describe the roles of the two BGP variants : iBGP and eBGP. We then discuss the two techniques used to scale iBGP in large domains, namely Route Reflectors and Confederations. We also discuss the interactions between the intradomain and the interdomain routing protocol and explain the dynamics of BGP4 as well as the mechanisms used to limit the number of BGP messages produced like BGP dampening and the route refresh capabilities. Finally, we show how the community attribute can be used to implement scalable routing policies in large domains and show a few configuration guidelines often used by ISPs.

Interdomain traffic engineering with BGP4

In the fourth part, we discuss the various techniques that can be used to engineer the flow of interdomain traffic by tuning BGP. We first describe how BGP can be configured to support hot potato or cold potato routing without and with the Multi-Exit Discriminator (MED) attribute. We also discuss the oscillation problems caused by the utilization of this attribute that were recently discovered. Then, we show how a network operator can control the flow of outgoing packets by using the local-pref attribute. After that, we discuss the techniques that can be used to control the flow of the incoming packets and show their advantages and limitations. A first solution is to utilize AS-Path prepending, but recent measurements show that its usefulness is limited in practice. A second solution is to rely on selective and more specific announcements. While this solution provides a better control of the incoming traffic, it also contributes to the growth of the BGP routing tables. We then show how the community attribute can be used to provide a finer control of the incoming traffic. Finally, we discuss the impact of those techniques on the growth of the BGP routing tables.

The presenter

Olivier Bonaventure is currently Professor in the Department of Computing Science and Engineering at the Université catholique de Louvain (UCL), Belgium where he leads the network research group. He graduated (in 1992) and received his PhD (in 1999) from the University of Liege (Belgium) and worked during five years as a research engineer in the Research Unit in Networking headed by Prof. Andre Danthine. He spent one year at the Alcatel Alsthom Corporate Research Center in Antwerp before becoming professor at the University of Namur where he lead the networking research group. He has been first involved in various research topics including Quality of Service (QoS), multicast and management protocols in the framework of European research projects. After that, he focused his work on the study of the performance of TCP/IP in ATM networks. His current research interests are the definition of new mechanisms and protocols to better support QoS, traffic engineering and fast restoration in heterogeneous IP networks like as the global Internet by using BGP and/or MPLS. He published more than twenty papers in international journals and conferences and several IETF contributions. He regularly gives advanced courses and tutorials for network engineers.

Olivier Bonaventure is the Belgian representative of the COST263 action on Quality of future Internet Services. He is a member of the programme committee for several conferences, on the editorial board of IEEE Network Magazine and a guest editor for a special issue of Computer Communications. He received the Alcatel Bell and the Wernaers prizes from the Belgian National Fund for Scientific Research (FNRS) in 2001 for respectively its research and Internet-based teaching activities.

Practical Information


Thursday May 22th, 2003 from 9.00 to 17.30


The advanced course will be given on the campus of the Université catholique de Louvain (UCL) in Louvain-la-Neuve. Participants will be informed about the exact location by email.

Louvain-la-Neuve is easily reached by public and private transportation. An access map is available here.


Several hotels are available on the campus. Please contact Monique Dethier ( if you need assistance to reserve a hotel room.

Welcome desk

The welcome desk will be open at 8.30am

Official language

The official language of the tutorial is English.

Registration fee

This fee includes the tutorial notes, the lunches and the refreshments during the breaks. Inscription is on a first-come first served basis and is only effective when the payment is received. Early registration is advised since the number of participants is limited.


The participant will receive a confirmation upon reception of the registration form. This confirmation will have to be presented at the Welcome desk to receive the course notes.


Responsible: Monique Dethier- Last update: April 2003 -
Contact: - Création: Monique Dethier


This document was translated from LATEX by HEVEA.