1. Trang chủ
  2. » Công Nghệ Thông Tin

Chuyên đề mạng thế hệ mới mạng 6b bgp interdomain

22 227 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 1,43 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chuyên đề mạng thế hệ mới mạng thế hệ mớimạng thế hệ mới ngnmang the he moigiáo trình mạng thế hệ mớitài liệu mạng thế hệ mới ngngiáo trình mạng thế hệ mới ngnmạng thế hệ mới ngn là gìtổng quan về mạng thế hệ mới ngncấu trúc mạng thế hệ mới ngncông nghệ mạng thế hệ mới ngn

Trang 1

– Support for Classless Interdomain Routing (CIDR)

Border Gateway Protocol

Components of BGP

• BGP protocol

– Definition of how two BGP neighbors communicate

– Message formats, state machine, route attributes, etc

– Standardized by the IETF

• Policy specification

– Flexible language for filtering and manipulating routes

– Indirectly affects the selection of the best route

– Varies across vendors, though constructs are similar

• BGP decision process

– Complex sequence of rules for selecting the best route

– De facto standard applied by router vendors

– Being codified in a new RFC for BGP coming soon

BGP Operations

Establish session on TCP port 179

Exchange all active routes

Exchange incremental updates

AS1

AS2

While connection

is ALIVE exchange route UPDATE messages

BGP session

Trang 2

Four Basic Messages

Inform neighbor of new routes that become active

Inform neighbor of old routes that become inactive

• Incremental updates– Announcement

 Upon selecting a new active route, add node id to path

… and (optionally) advertise to each neighbor– Withdrawal

 If the active route is no longer available

… send a withdrawal message to the neighbors

• Update messages

– Advertisement

 New route for the prefix (e.g., 12.34.158.0/24)

Attributes such as the AS path (e.g., “2 1”)

• When a router advertises a prefix to one of its BGP neighbors:

– information is valid until first router explicitly advertises that the inf ormation is no longer valid

– BGP does not require routing information to be refreshed – if node A advertises a path for a prefix to node B, then node B can be sure node A is using that path itself to reach the destination

Trang 3

AS 7018

AT&T

AS 12654

RIPE NCC RIS project

192.0.2.1

128.112.0.0/16

AS path = 7018 88 Next Hop = 12.127.0.121

12.127.0.121

• Destination prefix (e.g, 128.112.0.0/16)

• Route attributes, including

– AS path (e.g., “7018 88”)

– Next-hop IP address (e.g., 12.127.0.121)

BGP at AS YYY will never accept a route with ASPATH containing YYY

AS 7018

12.22.0.0/16 ASPATH = 1 333 7018 877 Don’t Accept!

AS 1

Interdomain Loop Prevention

Forwarding Table Forwarding Table

Joining BGP and IGP Information

AS1

AS2

eBGP

iBGP

Trang 4

Internal BGP (I-BGP)

• Used to distribute routes learned via EBGP to all the routers within an

AS

• I-BGP and E-BGP are same protocol in that

– same message types used

– same attributes used

– same state machine

– BUT use different rules for readvertising prefixes

• Rule #1: prefixes learned from an E-BGP neighbor can be

readvertised to an I-BGP neighbor, and vice versa

• Rule #2: prefixes learned from an I-BGP neighbor cannot be

readvertised to another I-BGP neighbor

AS Path = 7018 88

128.112.0.0/16

AS Path = 3549 7018 88

AS 88 128.112.0.0/16

Princeton

Prefix Originated

AS 12654

RIPE NCC RIS project

192.0.2.0/24

pick me!

Given multiple routes to the same prefix, a BGP speaker must pick at most one best route (Note: it could reject them all!)

BGP Path Selection

• Simplest case – Shortest AS path – Arbitrary tie break

• Example – Four-hop AS path preferred over

a three-hop AS path – AS 12654 prefers path through Global Crossing

• But, BGP is not limited to path routing

AS 1129

Global Access

128.112.0.0/16

AS Path = 1129 1755 1239 7018 88

Trang 5

135.207.0.0/16 ASPATH = 3 2 1

IP Packet Dest = 135.207.44.66Traffic Often Follows ASPATH

… But It Might Not

IP Packet Dest = 135.207.44.66

AS 5

135.207.44.0/25 ASPATH = 5

135.207.44.0/25

AS 2 filters all subnets w ith masks longer than /24 135.207.0.0/16

ASPATH = 1

From AS 4, it may look like this packet will take path 3 2 1, but it actually takes path 3 2 5

Not all attributes need to be present in every announcement

Trang 6

BGP Policy: Influencing Decisions

Best Route Selection Apply Import

Policies

Best Route Table

Apply Export Policies

Install forwarding Entries for best Routes

Receive

BGP

Updates

Best Routes

Transmit BGP Updates

Apply Policy =

filter routes &

tweak attributes

Based on Attribute Values

IP Forwarding Table

Apply Policy = filter routes &

tweak attributes

Open ended programming.

Constrained only by vendor configuration language

• Routing Information Base– Store all BGP routes for each destination prefix– Withdrawal message: remove the route entry– Advertisement message: update the route entry

• Selecting the best route– Consider all BGP routes for the prefix– Apply rules for comparing the routes– Select the one best route

 Use this route in the forwarding table

 Send this route to neighbors

BGP Decision Process: Path Selection on a Router

Highest Local Preference

Throw up hands and break ties

• Highest local preference

Set by import policies upon receiving advertisement

• Shortest AS path

– Included in the route advertisement

• Lowest origin type– Included in advertisement or reset by import policy

• Smallest multiple exit discriminator– Included in the advertisement or reset by import policy

• Smallest internal path cost to the next hop

– Based on intradomain routing protocol (e.g., OSPF)

• Smallest next-hop router id– Final tie-break

Trang 7

• Import policy

– Filter unwanted routes from neighbor

 E.g prefix that your customer doesn’t own

– Manipulate attributes to influence path selection

 E.g., assign local preference to favored routes

• Export policy

– Filter routes you don’t want to tell your neighbor

 E.g., don’t tell a peer a route learned from other peer

– Manipulate attributes to control what they see

 E.g., make a path look artificially longer than it is

Customer pays provider for access to the Internet

provider

customer

IP traffic provider customer

traffic

allowed traffic NOT allowed

Peering also allows connectivity between the customers of “Tier 1” providers.

customer provider

Trang 8

Import Policy: Local Preference

• Favor one path over another

– Override the influence of AS path length

– Apply local policies to prefer a path

• Example: prefer customer over peer

Yale Tier-2

Tier-3 Local-pref = 100

Local-pref = 90

Internal BGP and Local Preference

• Example– Both routers prefer the path through AS 100 on the left– … even though the right router learns an external path

Import Policy: Filtering

• Discard some route announcements

– Detect configuration mistakes and attacks

• Examples on session to a customer

– Discard route if prefix not owned by the customer

– Discard route that contains other large ISP in AS path

AT&T

Princeton

USLEC

128.112.0.0/16

Export Policy: Filtering

• Discard some route announcements– Limit propagation of routing information

• Examples– Don’t announce routes from one peer to another– Don’t announce routes for network-management hosts

AT&T

Princeton

Sprint UUNET

network operator

Trang 9

• Modify attributes of the active route

– To influence the way other ASes behave

• Example: AS prepending

– Artificially inflate the AS path length seen by others

– To convince some ASes to send traffic another way

• Multiple connections to neighboring ASes – Multiple border routers may learn good routes – … with the same local-pref and AS path length

1 2

3

4

5

6 7

Multiple links

Multiple Exit Discriminator Attribute (MED)

• when AS’s interconnected via 2 or more links

• AS announcing prefix sets MED

• enables AS(3) to indicate its preference

• AS(1) receiving prefix uses MED to select link

• a way to specify how close a prefix is to the link it is

announced on

• Tell your neighbor what you want– MED attribute to indicate receiver preference– Decision process picks route with smallest MED – Can use MED for “cold potato” routing

– But, have to get your neighbor to accept MEDs

Trang 10

BGP Policy Configuration

• Routing policy languages are vendor-specific

– Not part of the BGP protocol specification

– Different languages for Cisco, Juniper, etc

• Still, all languages have some key features

– Policy as a list of clauses

– Each clause matches on route attributes

– … and either discards or modifies the matching routes

• Configuration done by human operators

– Implementing the policies of their AS

– Business relationships, traffic engineering, security, …

• Common relationships– Customer-provider– Peer-peer– Backup, sibling, …

• Implementing in BGP– Import policy

 Ranking customer routes over peer routes– Export policy

 Export only customer routes to peers and providers

Policies in Practice : Business Relationships

Customer-Provider Relationship

• Customer pays provider for access to Internet

– Customer needs to be reachable from everyone

– Provider exports customer’s routes to everybody

– Customer exports provider’s routes to customers

• Customer does not want to provide transit service

– Customer does not export from one provider to another

d

d

AT&T

Princeton Princeton

• Peers exchange traffic between customers

– AS exports only customer routes to a peer – AS exports a peer’s routes only to its customers

Sprint AT&T

Traffic to/from the peer and its customers

d

advertisementstraffic

Princeton UBC

Trang 11

How Peering Decisions are Made?

• Reduces upstream transit costs

• Can increase end-to-end

performance

• May be the only way to connect

your customers to some part of

the Internet (“Tier 1”)

• You would rather have customers

• Peers are usually your competition

• Peering relationships may require periodic renegotiation

Customer-provider

Peer-peer

two peer edges

transit through a customer

• AS relationships limit the kinds of valid paths– Uphill portion: customer-provider relationships– Plateau: zero or one peer-peer edge– Downhill portion: provider-customer relationships

Trang 12

• Enforce transit relationships

– Outbound route filtering

• Enforce order of route preference

– provider < peer < customer

Two parts:

Implementing Customer/Provider and

Peer/Peer relationships

From peer

From peer

From provider

From provider

From customer customer From

provider route peer route customer route ISP routeImport Routes

To peer

To

peer

To customer

To customer

To provider provider From provider route peer route customer route ISP route

filters block

an interpretation

community number

Very powerful BECAUSE it has no (predefined) meaning

Community Attribute = a list of community values (So one route can belong to multiple communities)

RFC 1997 (August 1996)

Used for signally within and between ASes

Two reserved communities no_export = 0xFFFFFF01: don’t export out of AS

Trang 13

customer provider

For inbound traffic

Filter outbound routes

Tweak attributes on outbound routes in the hope of influencing your neighbor’s best route selection

For outbound traffic

Filter inbound routes

Tweak attributes on inbound routes to influence best route selection

outbound routes

inbound routes

inbound traffic

outbound traffic

In general, an AS has more control over outbound traffic

Trang 14

Forces outbound traffic to take primary link, unless link is down.

AS 1

Set Local Pref = 100

for all routes from AS 1 AS 65000

Set Local Pref = 50 for all routes from AS 1

Implementing Backup Links with Local

Preference (Outbound Traffic)

139

Forces outbound traffic to take primary link, unless link is down.

AS 1

Set Local Pref = 100 for all routes from AS 1

Padding will (usually) force inbound traffic from AS 1

to take primary link

AS 1

192.0.2.0/24 ASPATH = 2 2 2

192.0.2.0/24

ASPATH = 2

Shedding Inbound Traffic with ASPATH

Padding Yes, this is a Glorious Hack …

AS 1

192.0.2.0/24 ASPATH = 2 2 2 2 2 2 2 2 2 2 2 2 2 2

AS 3

provider

AS 3 will send traffic on “backup” link because it prefers customer routes and local preference is considered before ASPATH length! Padding in this way is often used as a form of load balancing

backup primary

… But Padding Does Not Always Work

Trang 15

192.0.2.0/24 ASPATH = 2 COMMUNITY = 3:70

Customer import policy at AS 3:

If 3:90 in COMMUNITY then set local preference to 90

If 3:80 in COMMUNITY then set local preference to 80

If 3:70 in COMMUNITY then set local preference to 70

AS 3: normal customer local pref is 100, peer local pref is 90

COMMUNITY Attribute to the Rescue!

Hot Potato Routing: Go for the Closest Egress Point

17 2865

Many customers want

192.44.78.0/24

192.44.78.0/24 MED = 15

192.44.78.0/24 MED = 56

This means that MEDs must be considered BEFORE

IGP distance!

Prefer low er MED values

Note1 : some providers will not listen to MEDs Note2 : MEDs need not be tied to IGP distanceCold Potato Routing with MEDs (Multi-Exit Discriminator Attribute)

Trang 16

Disaster strikes primary link

and the backup takes over Primary link is restored but some traffic remains pinned to backup

Install backup link using community

customer

Policies Can Interact Strangely

• BGP is not guaranteed to converge on a stable routing Policy interactions could lead to

“livelock” protocol oscillations

• Corollary: BGP is not guaranteed to recover from network failures

What Problem is BGP Solving?

Underlying problem

Shortest Paths

Distributed means of computing a solution.

X?

RIP, OSPF, IS-IS BGP

• Load balancing– Making good use of network resources– Alleviating network congestion

• End-to-end performance– Avoiding paths with downstream congestion– By moving traffic to alternate paths

• Mechanisms– Preferring some paths over other paths– E.g., by setting local-preference attribute– Among routes within the same business class

Traffic Engineering

Trang 17

Route Stability

• Routing instability: rapid fluctuation of network reachability information

• route flapping: when a route is withdrawn and

re-announced repeatedly in a short period of time

– happens via UPDATE messages

• because messages propagate to global Internet, route flapping

behavior can cascade and deteriorate routing performance in many

places

• Effects: increased packet loss, increased network latency, CPU

overhead, loss of connectivity

Causes of BGP Routing Changes

• Topology changes– Equipment going up or down– Deployment of new routers or sessions

• BGP session failures– Due to equipment failures, maintenance, etc

– Or, due to congestion on the physical path

• Changes in routing policy– Reconfiguration of preferences– Reconfiguration of route filters

• Persistent protocol oscillation– Conflicts between policies in different ASes

• BGP runs over TCP

– BGP only sends updates

when changes occur

– TCP doesn’t detect lost

connectivity on its own

• Detecting a failure

– Keep-alive: 60 seconds

– Hold timer: 180 seconds

• Reacting to a failure

– Discard all routes learned

from the neighbor

– Send new updates for any

routes that change

(3,2,0)

Routing Change: Before and After

Trang 18

• AS 1

– Delete the route (1,0)

– Switch to next route (1,2,0)

(3,2,0)

Routing Change: Path Exploration

• Initial situation– Destination 0 is alive– All ASes use direct path

• When destination dies– All ASes lose direct path– All switch to longer paths– Eventually withdrawn

• E.g., AS 2– (2,0)  (2,1,0) – (2,1,0)  (2,3,0) – (2,3,0)  (2,1,3,0)– (2,1,3,0)  null

3 0

(1,0) (1,2,0) (1,3,0)

(2,0) (2,1,0) (2,3,0) (2,1,3,0)

(3,0) (3,1,0) (3,2,0)

Routing Change: Path Exploration

• Minimum route advertisement interval (MRAI)

– Minimum spacing between announcements

– For a particular (prefix, peer) pair

• Advantages

– Provides a rate limit on BGP updates

– Allows grouping of updates within the interval

• Disadvantages

– Adds delay to the convergence process

– E.g., 30 seconds for each step

• Path vector avoids count-to-infinity– But, ASes still must explore many alternate paths– … to find the highest-ranked path that is still available

• Fortunately, in practice– Most popular destinations have very stable BGP routes– And most instability lies in a few unpopular destinations

• Still, lower BGP convergence delay is a goal– Can be tens of seconds to tens of minutes– High for important interactive applications– … or even conventional application, like Web browsing

Ngày đăng: 14/04/2015, 15:43

TỪ KHÓA LIÊN QUAN

w