16
P4P Implementation Yale LANS

P4P Implementation

  • Upload
    annora

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

P4P Implementation. Yale LANS. P4P Portal Services. Location Portal Service pDistance Portal Service Two services because Different functionalities Different update time-scales location large but more stable. Location Portal Service. - PowerPoint PPT Presentation

Citation preview

Page 1: P4P Implementation

P4P Implementation

Yale LANS

Page 2: P4P Implementation

P4P Portal Services

Location Portal Service

pDistance Portal Service

Two services because Different functionalities Different update time-scales

location large but more stable

Page 3: P4P Implementation

Location Portal Service

Allows an ISP to aggregate the Internet address space to define its own “my-Internet” view Highly preferred by ISPs during our field tests

The “my-Internet” view of an ISP consists of a set of PIDs (partition IDs)

Page 4: P4P Implementation

PID

A PID denotes a set of network locations A generalization of network aggregation

concepts such as autonomous system (AS) or intradomain routing area

Can denote aggregation such as a subnet, a point of presence (PoP), a type of customers (dsl

vs fiber), an AS, or a set of ASes

May define hierarchical PIDs, but focus on one level so far

Page 5: P4P Implementation

“My-Internet” View of isp1: an Example

pid1.intra.isp1

pid2.intra.isp1

pid3.intra.isp1

pid4.intra.isp1 pid5.exter.isp1

pid6.exter.isp1

pid7.exter.isp1

Page 6: P4P Implementation

Implementation: Interfaces Defined in the Location Portal Service GetPID (MUST)

IP address → PID A list of IP addresses → their corresponding PIDs

GetPIDMap (SHOULD)

PID → list of IP prefixes/ASNs belonging to the PID A list of PIDs → their corresponding PID Maps Null → PID Maps for all PIDs

Page 7: P4P Implementation

pDistance Portal Service

The pDistance Portal Service allows an ISP to define the pDistance for any given pair of network locations network location: IP address/PID

If input is a pair of IP addresses, the ISP may either return more precise metric, or internally map IP addresses to PIDs and then return metric

pDistance: path metric distance, provider distance

Page 8: P4P Implementation

pDistance

Semantics of pDistance depends on

Ordinal or numerical (default) pDistance

Type of pDistance, e.g., Routing Hop-Count pDistance Routing Air-Mile pDistance Routing Cost pDistance (default if not indicated)

Page 9: P4P Implementation

Example: Routing Cost pDistance of isp1

pid1

pid2

pid3

pid4 pid5

pid6

pid7

OSPF path cost;TE dual variables

f(BGP local pref., AS_PATH, …)Multihoming cost opt. dual

Page 10: P4P Implementation

Implementation: Interface Defined in the pDistance Portal Service GetpDistance (MUST)

[a pair of network locations, and optionally type of pDistance] → pDistance value

[A set of pairs of network locations and optionally type of pDistance] → pDistance values

Page 11: P4P Implementation

How May a P2P Application Use these P4P Portal Services? This depends on the applications

It is a place for application innovation

Page 12: P4P Implementation

Example: Tracker-Based

The tracker resolves the PIDs of clients By using PID Maps

The tracker uses a peering weight matrix to select initial peers for a new client

Peering weight matrix computed according to channel state and pDistance matrix

Page 13: P4P Implementation

Tracker ISP Data Structures

ISP 1 ISP M

ISPPIDMapPIDMap

PIDMapPortalAPI

ISPPDistanceMapPDistanceMap

PDistanceMapPortalAPI

Page 14: P4P Implementation

Per Channel Data Structures A list of ISPs maintained for the channel

An ISPView for each maintained ISP

An ISP view partitions the peers in the channel according into peer groups

A PeeringGuidance matrix guides how to select peers from the peer groups, e.g., for a peer in peer group 1, how many peers to

select from group 1, from group 2, …

Page 15: P4P Implementation

Per Channel Data Structures

isp1 ispK

Peer Group1

PeerGroup2

Peer Group 3

Peer Group 4

Page 16: P4P Implementation

Per Channel Data Structures: Peer Group by PID

pid1

pid7

list of clients in pid1

list of clients in pid7

total intra ISP

pid1

pid2

pid3

pid4

pid5

pid6

pid7

pid1

pid2

pid3

pid4

peering weight matrix