Instability of bgp aspp
This presentation is the property of its rightful owner.
Sponsored Links
1 / 53

Instability of BGP ASPP PowerPoint PPT Presentation


  • 73 Views
  • Uploaded on
  • Presentation posted in: General

Instability of BGP ASPP. Supervised by Prof. Chiu and Prof. John Presented by Hui Wang. Outline. Introduction to Routing and BGP AS Relationship and Routing Policy Inbound Traffic Engineering and ASPP ASPP at Different Level (my work) Instability of BGP ASPP (my work) Future Work

Download Presentation

Instability of BGP ASPP

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Instability of bgp aspp

Instability of BGP ASPP

Supervised by Prof. Chiu and Prof. John

Presented by Hui Wang


Outline

Outline

  • Introduction to Routing and BGP

  • AS Relationship and Routing Policy

  • Inbound Traffic Engineering and ASPP

  • ASPP at Different Level (my work)

  • Instability of BGP ASPP (my work)

  • Future Work

  • Conclusion


Routing in internet

Routing In Internet

  • Intradomain vs. Interdomain Routing

    • Intradomain:

      • Router only knows the topology of its domain.

      • Three types of IGP (Interior Gateway Protocol)

        • Static routing: Only useful in very small domains

        • Distance vector routing : RIP (used in small domain)

        • Link-state routing:

          • OSPF (enterprise networks)

          • Intermediate System- Intermediate-System (IS-IS): (widely used by ISPs)


Routing in internet1

Routing In Internet

  • Intradomain vs. Interdomain Routing

    • Interdomain Routing (EGP)

      • Router knows the domain topology of Internet

      • But every domain is a blackbox for EGP

      • EGP should be scalable (13,000 AS, 120,000 routes)

      • Border Gateway protocol

        • Designed in early 1990s

        • Current version 4: 1995


Introduction bgp basics

Introduction: BGP Basics

  • The two variants of BGP

    • eBGP: between border routers of distinct AS

      Used to distribute the interdomain routes to all border routers over eBGP sessions.

    • iBGP: between BGP routers inside AS

      Used to distribute the interdomain routes to all routers in same AS over iBGP sessions. In small networks, these iBGP sessions are established in a fullmesh. In larger networks, this full-mesh is replaced by the utilization of route reflectors or confederations.


Introduction bgp basics1

Introduction: BGP Basics

  • An Example: eBGP vs. iBGP

eBGP

R1

R2

R6

R5

R3

R4

iBGP


Introduction bgp basics2

Introduction: BGP Basics

  • Autonomous Systems (AS)

    An AS is defined as

    a set of routers under a single technical administration. It means that an AS presents a consistent picture of what destinations are reachable through it.

    Each AS is identified by its AS number (16 bits)

    The private AS numbers (range 64512 through 65535) are reserved for private use and should not be advertised on the global Internet. (currently, more than 13000 ASes)

    A domain is often equivalent to an AS

    A domain may be composed of several ASes

    Many domains do not have an AS number


Introduction bgp principle

Introduction: BGP Principle

  • Based on TCP

  • Distance vector protocol

    - BGP router advertises its best route to each neighbor

    - Advertisements are only sent when their routes change (No periodic advertisement of routes as with RIP)

  • Five Types of Message

    - Update

    - Withdrawal

    - Control Message : Open, Notification and Keepalive


Introduction bgp message

Introduction: BGP Message

  • Some Fields in BGP Update Message

    • IP prefixes :List of reachable IP prefixes

    • AS-PATH: the list of AS through which the announcement passed

    • NEXT-HOP: the IP address of the router that advertised the route

    • LOCAL-PREF: can be used for traffic control purposes

    • MED (Multi-Exit-Discriminator): used for traffic control between neighbors

    • ORIGIN: how the route was learned (IGP, EGP, Incomplete)

    • ATOMIC AGGREGATE and AGGREGATOR


Introduction bgp message1

Introduction: BGP Message

  • An Example

AS4

AS2

AS1

If AS1 send Update Message to AS2:

12.0.0.0/16, AS1, (AS3,AS1)

It means AS1 says: I can reach this prefix

through AS3, if you have traffic to this prefix, you can send to AS1.

AS3

Prefix: 12.0.0.0/16


Introduction bgp feature

Introduction: BGP Feature

  • An important feature: BGP allows each AS to define its own routing policy...

But how does BGP support different policies?


Introduction bgp router organization

Introduction: BGP Router Organization

  • Three tables and two filters

best route to each destination

BGP RIB

Only send to some (not all) destination

Export

Filter

Import

Filter

All acceptable routes

BGP decision process selects the best route towards each destination

1.Prefer routes with highest local-pref

2. shortest ASPath

3. with the lowest ORIGIN attribute

3. smallest MED

4.Prefer routes learned via eBGP over via iBGP

5. closest next-hop

6. learned from router with lowest router id

Receive routes from neighbors

Import Policy

Export Policy

Determines which BGP Msgs

are acceptable from neighbors.

(maybe assign local-pref to each route)


Introduction bgp feature1

Introduction: BGP Feature

  • Why BGP want to support different routing policies?

It is because BGP is a routing protocol between ASes. Different ASes have different commercial interests. The routing policy is constrained by commercial agreements.

AS3

AS3

AS1 should announce AS2 the route to other ASes

AS2 can choose to not announce AS1 the route to AS3

Provider

AS1

AS1

Customer

Customer

AS2

AS2


Summary introduction to bgp

Summary: Introduction to BGP

  • Routing in Internet

    • Intradomain vs. Interdomain

  • BGP Basics

    • eBGP vs. iBGP

    • AS vs. Domain

  • BGP Principle

    • TCP

    • Distance Vector

  • BGP Message

    • Five types of Msgs

    • Some Fields (attribute)

  • BGP Feature

    • Support Different Routing Policy

  • BGP Router Organization

    • Three Tables


Instability of bgp aspp

  • I mentioned that BGP want to support different routing policies because there are different agreements between two ASes. Now:

How the agreements (AS relationship) affect the routing policy?


Outline1

Outline

  • Introduction to Routing and BGP

  • AS Relationship and Routing Policy

  • Inbound Traffic Engineering and ASPP

  • ASPP at Different Level (my work)

  • Instability of BGP ASPP (my work)

  • Future Work

  • Conclusion


As relationship

AS Relationship:

  • Agreement = Relationship

  • In practice: Classify AS relationship into

    • Provider to Customer

    • Peer to Peer

    • Provider to Customer: Customer c buys Internet connectivity from provider P.

    • Peer to Peer: AS x and y agree to exchange traffic between their customers free of charge.


Routing policy

Routing Policy

  • Two kinds of Routing Policy

    • Export Routing Policy vs. Import Routing Policy

    • Import filter

      -Specifies which routes can be accepted by the router among all the received routes from a given neighbor

    • Export filter

      -Specifies which routes can be advertised by the router to a given neighbor


Export routing policy

Export Routing Policy

  • It is a conclusion from real world

    • An AS does not provide transit service between its providers and peers.

Consider:

AS u

AS v is provider(u) or peer(u)

For each best route r of u

If first(r.as_path) is provider(u) or peer(u)

Then: export(v,u)[{r}] = {};

AS3

AS1

AS2

It’s Selective Export Rule!

AS4

customer


Export routing policy1

Export Routing Policy

  • It has import influence on Routing Table Entry Pattern

Look at some AS Paths in routes of a Routing Table

AS2

AS1

AS2

AS3

AS2

AS4

AS1

AS3

AS1

AS3

AS1,AS2,AS3

AS1,AS2,AS3

AS1,AS2,AS3,AS4

It will not appear in BGP routing table!

This one is OK!


Export routing policy2

Export Routing Policy

  • All AS Path should be Valley Free

    • After traversing a provider to customer edge or a peer to peer edge, the AS Path can not traverse a customer to provider or peer to peer edge.

AS Path in Routing Table

Reference will be given in the last part


Export routing policy3

Export Routing Policy

  • A example in a simulation Topology

    • See Simulation Tool


Import routing policy

Import Routing Policy

  • It is implemented by this attribute: local-preference

Then AS2-AS4 will be selected as the best route by AS4!

Prefix: 12.0.0.0/16

(12.0.0.0/16, AS2, (AS1,AS2))

AS2

If AS4 prefer link AS2-AS4,assign high local preference to this route! (for example: 100)

AS1

AS4

AS3

(12.0.0.0/16, AS3, (AS1,AS3))

If AS4 prefer link AS2-AS4,assign low local preference to this route! (for example: 80)


Import routing policy1

Import Routing Policy

  • In real world, how do the router assign local preference to affect routing?

In most case, the settings corresponds to the economical relationships between the ASes.

Typical Local Preference!

  • Customer Routes have higher local preference than other routes. (Since provider is paid to carry packets to customer. Also AS thinks customer is closer to the destination )

  • Peer Routes have higher local preference than Provider Routes. (Since he has to pay for the traffic to his provider)

  • Due to the utilization of the local preference attribute, some paths on the Internet are longer than their shortest length.


Import routing policy2

Import Routing Policy

  • A example in a simulation Topology

    • See Simulation Tool


Summary relationship and policy

Summary: Relationship and Policy

  • Relationship

    • Provider to Customer

    • Peer to Peer

  • Routing Policy

    • Export Routing Policy

      • Selective Export Rule

      • Valley Free Routing Table Entry Pattern

    • Import Routing Policy

      • Typical Local Preference


Outline2

Outline

  • Introduction to Routing and BGP

  • AS Relationship and Routing Policy

  • Inbound Traffic Engineering and ASPP

  • ASPP at Different Level (my work)

  • Instability of BGP ASPP (my work)

  • Future Work

  • Conclusion


Inbound traffic engineering mutihomed

Inbound Traffic Engineering: Mutihomed

  • With the development of Internet, many AS became multihomed, which means it has more than one physical links to its provider or has more than one providers.

  • So it will try to control the distribution of inbound traffic and outbound traffic on each link

  • Only talk Inbound Traffic Engineering in this presentation.

It has many ways to do inbound traffic engineering!


Inbound traffic engineering ways

Inbound Traffic Engineering: Ways

  • Obviously, in order to do inbound traffic engineering, AS needs to send different BGP messages on different links to influence the BGP decision process of routers in distant AS.

    • Selective announcements

    • Prefix splitting: announce a large prefix on all links for redundancy, but prefer some links for parts of this prefix

      Remember: When forwarding an IP packet, a router will always select the longest matchin its routing table

    • AS Path Prepending: artificially increase the length of AS-Path


Inbound traffic engineering ways1

Inbound Traffic Engineering: Ways

  • Advantages and drawbacks

    • Selective announcements

      always work, but if one prefix is advertised on a single link, it may become unreachable in case of failure

    • Prefix Splitting

      better than selective announcements in case of failure. but increases significantly the size of all BGP tables. some ISPs filter announcements for long prefixes

    • AS-Path prepending

      useful for backup link, but besides that, it is difficult to find the amount of prepending...


As path prepending

AS Path Prepending

  • AS Path Prepending: artificially increase the length of AS-Path

AS5

Here, the traffic from AS5 to AS4 will follow this Path AS5-AS2-AS4

If AS4 want to shift the traffic to link AS3-AS4, it will send route to AS2 in this way:

(Prefix, AS4, (AS4,AS4,AS4))

So AS5 will select other way because he thinks AS2-AS4-AS4-AS4 is longer than AS1-AS3-AS4

It is called “AS4 prepend link AS2-AS4 twice (or by two)”. (Note: prepending is directional, AS2 can prepend link AS4-AS2)

AS1

AS2

AS3

AS4


Community based aspp

Community-based ASPP

  • AS can ask its provider, to do prepending for it

BGP support the attribute ”community”. AS can attach special community value to request down stream router to perform a special action, for example, to ask the router prepend for him.

So it is called “Community-based AS-Path prepending”.

AS5

AS1

AS2

AS3

In this case, AS4 can ask AS2 to prepend AS-Path when announcing to AS5.

It is called “AS2 prepends AS5-AS2 for AS4”

AS4


Summary inbound traffic engineering and aspp

Summary: Inbound Traffic Engineering and ASPP

  • Multihomed

  • Three Way to Do Inbound Traffic Engineering

  • AS Path Prepending

  • Community-based ASPP


Instability of bgp aspp

  • Because BGP support “Community-based ASPP”, so we can do ASPP at different levels, for example, prepending at its parents or prepending at its grandfather.

How does ASPP affect the whole network?

How does ASPP at different levels affect the network?


Outline3

Outline

  • Introduction to Routing and BGP

  • AS Relationship and Routing Policy

  • Inbound Traffic Engineering and ASPP

  • ASPP at Different Level (my work)

  • Instability of BGP ASPP (my work)

  • Future Work

  • Conclusion


Aspp at different levels

ASPP at Different Levels

  • How to evaluate the influence of ASPP?

    • The change of total traffic in the network.

      Add up all the traffic on all links.

    • The number of affected AS pairs

      Affected AS pairs: the routing path between them changes because of ASPP.

  • Network traffic model

    • Uniform Distribution: means for any ASi and ASj, the traffic from ASi to ASj is 10 units.

  • See Simulation Tools


Aspp at different levels1

ASPP at Different Levels

  • Findings

    • ASPP will increase the total traffic of the network.

    • ASPP at high level has less influence on local traffic and the whole Internet.

Attention: These are simulation results of some random topology, not general conclusion. We need a good network topology model for real-world Internet!


Aspp at different levels2

ASPP at Different Levels

  • If it is true in real Internet

    • When we want to shift a little traffic to the other link, we can ask the parents to do ASPP for us. It has less influence on the whole Internet.


Outline4

Outline

  • Introduction to Routing and BGP

  • AS Relationship and Routing Policy

  • Inbound Traffic Engineering and ASPP

  • ASPP at Different Level (my work)

  • Instability of BGP ASPP (my work)

  • Future Work

  • Conclusion


Instability of bgp aspp1

Instability of BGP ASPP

  • My Network Model

    • Every AS obeys Exporting Routing Policy

      • AS does not provide transit service between any two of its providers or peers. So all AS paths in routing table should be valley-free.

    • Every AS obeys Importing Routing Policy

      • Customer route is preferred over peer route, and peer route over provider route.

    • Uniform Traffic Distribution


Instability of bgp aspp2

Instability of BGP ASPP

  • Network Model:

    • Every AS wants to do inbound traffic load balance through ASPP.

    • So he will try to prepend the most heavy-loaded link and predict what will happen. If the prepending helps him to balance his traffic, he will do it. Otherwise, he will give up and thinks he has got optimal result.


Instability of bgp aspp3

Instability of BGP ASPP

  • It is an abstract simple example:

At time1, Internet is stable. In time slot 1, AS1 find link1 has heavy traffic and prepending this link is helpful, he do it. This prepending affects the whole Internet. After some time, at time2, Internet become stable. But AS2 find his traffic is skewed, so he do prepending. AS2 also affects AS1, then in time slot 3, AS1 do prepending again…If every AS find he has had nothing to do to get better results, I call this process “converged”. Will this process converge after some time?

Internet

Link4

Link1

Link2

Link3

AS1

AS2

………

Time Slot 1

Time Slot 2

Time 1

Time 2

Time 3


Instability of bgp aspp4

Instability of BGP ASPP

  • Distributed Greedy ASPP Algorithm :

    • Does ASi have more than one providers?

      • If it doesn’t have, stop;

      • Otherwise, continue.

    • Find the heavy-loaded link

      • Predict if it will have better balance after prepend this link by one.

      • If it will have, then do it.

      • Otherwise, predict the result of prepending it by two. If it helps him, do it.

      • Otherwise, predict the result of prepending it by three. If it helps him, do it.

      • If all these prepending don’t help, it has got best results, it stops.

    • If all ASes stop, the process is converged.


Instability of bgp aspp5

Instability of BGP ASPP

  • How to evaluate the traffic balance?

    • Formula: (AS has n links to providers)

  • Balance coefficient =


Instability of bgp aspp6

Instability of BGP ASPP

  • See the simulation

    • Two cases which will never converge.

  • Analyze these cases

    • Do prepending in sequence will reduce the probability of non-convergence.


Outline5

Outline

  • Introduction to Routing and BGP

  • AS Relationship and Routing Policy

  • Inbound Traffic Engineering and ASPP

  • ASPP at Different Level (my work)

  • Instability of BGP ASPP (my work)

  • Future Work

  • Conclusion


Future work on aspp

Future Work on ASPP

  • Try to find a way to model the AS topology of real-world Internet, so I can draw some general conclusions.

  • Based on the model, try to conclude the reason and the pattern of ASPP cycle (or loop).

  • Based on it, try to find if there is a practical way to prevent ASPP cycle.

  • If there is no practical way, try to find all the AS that form the cycle. (John said maybe they could negotiate and find some solution:-)


My current question

My Current Question:

  • Some papers said ASPP is not a effective way to do inbound traffic engineering, so will my future work be useful in real world?

However, BGP is really an important research area. Any successful research results in this area will be significant for the development of Internet. In fact, it has been a hot topic in these three years.


Why bgp is hot growth in table size

Why BGP is “hot”: Growth in Table Size

The reasons for the recent growth

  • Fraction of IPv4 address space advertised

    • 24 % of total IPv4 space in 2000

    • 28 % of total IPv4 space in April 2003

  • Increase in number of ASes

    • About 3000 ASes in early 1998

    • More than 13000 ASes in April 2003

  • Increase in multi-homing

    • Less than 1000 multi-homed stub ASes in early 1998

    • More than 6000 multi-homed stub ASes April 2003

  • Increase in advertisement of small prefixes

    Number of IPv4 addresses advertised per prefix

    • In late 1999, 16k IPv4 addr. per prefix in BGP tables

    • In April 2003, 8k IPv4 addr. per prefix in BGP tables


Why bgp is hot issues and challenges

Why BGP is “hot”: Issues and Challenges

  • How to sustain the growth of the Internet?

  • In theory anyone can announce its routes with BGP, In practice, BGP routing tables cannot be infinite...

  • BGP should react quickly to link failures.

  • An ISP should be able to control the flow of its interdomain traffic.

  • Security of interdomain routing.

  • Path length was a good indicator only for 50% of the considered paths.


Conclusion

Conclusion

  • '' BGP is running on more than 100K routers (my estimate), making it one of the world's largest and most visible distributed system. Global dynamics and scaling principles are still not well understood...''

    Tim Griffin, AT&T Research


Reference

Reference

  • 1. Lixin Gao, On inferring autonomous system relationships in the internet, IEEE/ACM Transactions on Networking (TON), v.9 n.6, p.733-745, December 2001

  • 2. Feng Wang, Lixin Gao, On inferring and characterizing internet routing policies, Proceedings of the conference on Internet measurement conference, October 27-29, 2003, Miami Beach, FL, USA


Instability of bgp aspp

Thank You.


  • Login