PATHLET ROUTING
Amit Srivastava
Gauri Pulekar
Introducing, ‘Pathlet Routing’
 ACM SIGCOMM Computer Communication Review 2009
 Proposed by research team from UC Berkeley and UI Urbana Champaign
 Addresses two main problems with BGP
 Scalability
 Multipath Routing
 Allows protocol emulation, it can mimic BGP
BGP : It runs the internet!
 Current de-facto inter AS routing protocol
 BGP uses destination based forwarding i.e. IP address in the header
 Uses TCP connection to peers for sending information
 Only shares a portion of the routing table
 No periodic update to routing information
 Routers in the same AS are internal peers, others are external peers
BGP : Messages
 KEEPALIVE message sent for checking connectivity
 NOTIFICATION are for failure or before closing connections
 UPDATE messages carry routing information
 Routes are stored in Routing Information Bases (RIB):
 Adj-RIB-In contains information from inbound UPDATE messages, mostly
unprocessed information
 Loc-RIB contains local routing formation by applying local policies on the data in
Adj-RIB-In
 Adj-RIB-Out contains the routing info the router has selected to share with its
peers via UPDATE
Building Blocks
 Vnodes:
 Virtual node
 For a given router, it can have n vnodes for n interfaces
 This allows traffic shaping for traffic coming from an interface
 Routers learn about vnodes in the AS by exchanging information with peers
 Pathlets:
 A sequence of vnodes leading to a destination identified by a IP prefix
 Forwarding Identifier – FID (f)
 Vnode + Pathlet = Virtual topology
Let’s understand..
 Constructing pathlets between peer routers
A B
C
2
Let’s understand..
 Two pathlets used to send data from A to C
3
A B C
2
2, 3 3
Let’s understand..
 Three autonomous systems
3
A B C
2
4
4 3
Let’s understand..
 Three autonomous systems
A
B
C
y v
qr
s
Let’s understand..
 Ingress and egress points can be chosen from many available options
A
B
C
x v
qr
s
Let’s understand..
 Multiple pathlets to suit local transit policies
A
B
C
x v
qr
s
Pathlet Routing - Working
 Pathlet originates at a router R1 (with vnode v1)
 The sending vnode refers to its table for possible pathlets to reach
destination
 Creates a list of vnodes and calls it a pathlet ( and can advertise it) puts
the pathlet in the header and send the packet out to a peer
 Peer removes its own vnode in the packet header and sends along to the
next vnode
 This path selection is dependent on local policies of the AS
Route Selection
 Using shortest path algorithm
Path for packet forwarding based on result of shortest path algorithm run on a
graph created by using routing information at vnodes
Pathlet Dissemination
 Path vector algorithm (just like BGP)
 Announces pathlet’s FID and sequence of vnodes
 Scalability: Propagate arbitrary subset of known pathlets
 Path vector used for sending routing info not routing data
Components Of Pathlet Routing
Components Of Pathlet Routing
 Controller: Processes the routing information
 Vnode Manager: Manages all vnodes(tables) on a single device
 Disseminator: Sends out routing information to peers
 Router : Router running at least 1 pathlet routing instance
 Vnode: A small routing table
 Pathlet: A sequence of vnodes
Implementation: Router
 The router can have max 5 interfaces
 It can connect to other routers using TCP
 The topology is created using a config file
 There are 2 kinds of messages
 Data messages with dummy data
 Routing messages contain routing information in the following format
{AS-id, RouterId, VnodeId} and {PathletId (FID), IP Prefix}
 Routers collect stats like size of table in Vnodes and total control
messages sent and received
 Allow commands on each router
Implementation: Vnode & Vnode
Manager
 Vnode Manager is a container for Vnodes
 All VNodes have vnode-id, router-id, AS-id to uniquely identify it
 Controller logic is still being decided but it only decides on installing paths
from peers on Vnodes
 The shortest path algorithm is implemented on the Vnode
 The shortest path algorithm implemented separately but buggy
Implementation: Deciding Topology
 Using BGP RIB and Update messages to create update messages
 A simple 3 and 6 node topology being used to achieve basic goal of
routers exchanging data
 Currently tables are static
Scope
 Implement the software router in Python using Twisted and NetworkX.
 Allow exchange of messages on routers arranged in real-world like
scenario
 Save the logs for comparison with data from RouteViews
 Simulate loss of links
Timeline
Activity Completed Time
Find internet-based topology data or a
random graph which can be scaled from 10
to 300 nodes
20 October
Learn and implement the shortest path and
Path Vector algorithms
20 October
Learn basic Erlang. We are using Python
with NetworkX and Twisted
27 October
Explore possible packet structure for Pathlet
routing
27 October
Finalize the details to be implemented or
BGP and Pathlet routing
3 November
 Activities completed so far
Timeline
Ongoing Activities Time
Run the algorithms for Pathlet and BGP on a
large 100+ node graph. And verify the result
10 November
Simulate of a 3 node graph running BGP and
Pathlets capable of exchanging information.
Created a graph of 6 nodes to implement
Pathlet only not BGP
17 November
Verify the above system for discrepancies 24 November
Add provision for emulating Local policies for
implementing Local Transit policies
1 December
Run comparison studies on the system 8 December
 Ongoing activities and future plan
References
 http://dl.acm.org/citation.cfm?id=1592583
 https://www.ietf.org/rfc/rfc1771.txt
 http://jad-reads.blogspot.com/2009/04/thoughts-on-pathlet-
routing.html
 ftp://espectrocrom.com/pub/manuales/bgp/cisco%20-%20bgp%20-
%20internet%20routing%20architectures%202ed%20(press%201-
57870-233-x).pdf
 http://web.engr.illinois.edu/~pbg/pathlets/
Questions
Thank You

More Related Content

PPTX
Pathlet routing_Demo2
PPTX
Week14 lec2
PPTX
Week16 lec1
PPTX
Week13 lec1
PPTX
Week13 lec2
PPTX
Week15 lec1
PDF
PPT
Network layer
Pathlet routing_Demo2
Week14 lec2
Week16 lec1
Week13 lec1
Week13 lec2
Week15 lec1
Network layer

What's hot (20)

DOCX
How packet data travel over network
PDF
Routing
PPTX
Transport layer
PDF
IP Routing
PPT
IPV4 Frame Format
PPT
OSI Transport Layer
PPT
Routing, Different types of forwarding technique
PPT
rip, ospf 13-14
PPTX
Ch 19 Network-layer protocols - section 2
PPT
Link State Protocol
PPTX
Internet protocols Report Slides
PPT
PPT
Routing table and routing algorithms
PDF
Network layer ip address assignment and routing
PPTX
Network layer
PPTX
Link state routing protocol
PDF
Ipv4 packet structure
PPTX
Introduction to IP
DOCX
Link state routing protocol
How packet data travel over network
Routing
Transport layer
IP Routing
IPV4 Frame Format
OSI Transport Layer
Routing, Different types of forwarding technique
rip, ospf 13-14
Ch 19 Network-layer protocols - section 2
Link State Protocol
Internet protocols Report Slides
Routing table and routing algorithms
Network layer ip address assignment and routing
Network layer
Link state routing protocol
Ipv4 packet structure
Introduction to IP
Link state routing protocol
Ad

Similar to Pathlet routing CS513 (20)

PPTX
NETWORK LAYER PRESENTATION IP ADDRESSING UNIT-3.pptx
PPT
Routing
PPT
Network layer tanenbaum
PPT
BGP.ppt
PPT
Routing protocols-network-layer
PPTX
Module 3 Part B - computer networks module 2 ppt
PPT
module10-rip (1).ppt
PPT
Routing.pptbbbbbbbbbbbbbbbbbbbbbnbbnbbbbnbb
PPTX
computer communications
PPT
HowTheInternetWorks.ppt
PPTX
IP Routing.pptx
PPT
Day 8 1 introducing routing n
PPTX
PPTX
Network Layer
PPTX
Computer networks for cse Unit-3 (1).pptx
PPT
Network layer
PPTX
Computer Networks-Network layer Concepts
PDF
4af46e43-4dc7-4b54-ba8b-3a2594bb5269 j.pdf
PPT
routing-Network182912222222222918298181.ppt
PPTX
Gohil-Network layer & Address Resolution Protocol.pptx
NETWORK LAYER PRESENTATION IP ADDRESSING UNIT-3.pptx
Routing
Network layer tanenbaum
BGP.ppt
Routing protocols-network-layer
Module 3 Part B - computer networks module 2 ppt
module10-rip (1).ppt
Routing.pptbbbbbbbbbbbbbbbbbbbbbnbbnbbbbnbb
computer communications
HowTheInternetWorks.ppt
IP Routing.pptx
Day 8 1 introducing routing n
Network Layer
Computer networks for cse Unit-3 (1).pptx
Network layer
Computer Networks-Network layer Concepts
4af46e43-4dc7-4b54-ba8b-3a2594bb5269 j.pdf
routing-Network182912222222222918298181.ppt
Gohil-Network layer & Address Resolution Protocol.pptx
Ad

More from Gauri Pulekar (8)

PPTX
Socialoscope GRIE Finals Poster
PPTX
Socialoscope PEDS talk
PPTX
IBM Christmas card attach: CS571
PPT
Techniquest Rules
PPTX
HCI Project: Master Mind
PPTX
Skill Set Assessment System
PDF
Socialoscope
PDF
Automatically Characterizing Places with Opportunistic CrowdSensing using Sma...
Socialoscope GRIE Finals Poster
Socialoscope PEDS talk
IBM Christmas card attach: CS571
Techniquest Rules
HCI Project: Master Mind
Skill Set Assessment System
Socialoscope
Automatically Characterizing Places with Opportunistic CrowdSensing using Sma...

Recently uploaded (20)

PDF
Top 10 Project Management Software for Small Teams in 2025.pdf
PPTX
Presentation - Summer Internship at Samatrix.io_template_2.pptx
PPTX
Human-Computer Interaction for Lecture 1
PDF
IT Consulting Services to Secure Future Growth
PDF
MAGIX Sound Forge Pro CrackSerial Key Keygen
PDF
PDF-XChange Editor Plus 10.7.0.398.0 Crack Free Download Latest 2025
PPTX
Viber For Windows 25.7.1 Crack + Serial Keygen
PDF
AI-Powered Fuzz Testing: The Future of QA
PPTX
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
PDF
Internet Download Manager IDM Crack powerful download accelerator New Version...
PPTX
Chapter 1 - Transaction Processing and Mgt.pptx
PDF
What Makes a Great Data Visualization Consulting Service.pdf
PPTX
Chapter_05_System Modeling for software engineering
PPTX
UNIT II: Software design, software .pptx
PPTX
Plex Media Server 1.28.2.6151 With Crac5 2022 Free .
PPTX
Beige and Black Minimalist Project Deck Presentation (1).pptx
PDF
infoteam HELLAS company profile 2025 presentation
PPTX
Bandicam Screen Recorder 8.2.1 Build 2529 Crack
PDF
CapCut PRO for PC Crack New Download (Fully Activated 2025)
PDF
Bright VPN Crack Free Download (Latest 2025)
Top 10 Project Management Software for Small Teams in 2025.pdf
Presentation - Summer Internship at Samatrix.io_template_2.pptx
Human-Computer Interaction for Lecture 1
IT Consulting Services to Secure Future Growth
MAGIX Sound Forge Pro CrackSerial Key Keygen
PDF-XChange Editor Plus 10.7.0.398.0 Crack Free Download Latest 2025
Viber For Windows 25.7.1 Crack + Serial Keygen
AI-Powered Fuzz Testing: The Future of QA
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
Internet Download Manager IDM Crack powerful download accelerator New Version...
Chapter 1 - Transaction Processing and Mgt.pptx
What Makes a Great Data Visualization Consulting Service.pdf
Chapter_05_System Modeling for software engineering
UNIT II: Software design, software .pptx
Plex Media Server 1.28.2.6151 With Crac5 2022 Free .
Beige and Black Minimalist Project Deck Presentation (1).pptx
infoteam HELLAS company profile 2025 presentation
Bandicam Screen Recorder 8.2.1 Build 2529 Crack
CapCut PRO for PC Crack New Download (Fully Activated 2025)
Bright VPN Crack Free Download (Latest 2025)

Pathlet routing CS513

  • 2. Introducing, ‘Pathlet Routing’  ACM SIGCOMM Computer Communication Review 2009  Proposed by research team from UC Berkeley and UI Urbana Champaign  Addresses two main problems with BGP  Scalability  Multipath Routing  Allows protocol emulation, it can mimic BGP
  • 3. BGP : It runs the internet!  Current de-facto inter AS routing protocol  BGP uses destination based forwarding i.e. IP address in the header  Uses TCP connection to peers for sending information  Only shares a portion of the routing table  No periodic update to routing information  Routers in the same AS are internal peers, others are external peers
  • 4. BGP : Messages  KEEPALIVE message sent for checking connectivity  NOTIFICATION are for failure or before closing connections  UPDATE messages carry routing information  Routes are stored in Routing Information Bases (RIB):  Adj-RIB-In contains information from inbound UPDATE messages, mostly unprocessed information  Loc-RIB contains local routing formation by applying local policies on the data in Adj-RIB-In  Adj-RIB-Out contains the routing info the router has selected to share with its peers via UPDATE
  • 5. Building Blocks  Vnodes:  Virtual node  For a given router, it can have n vnodes for n interfaces  This allows traffic shaping for traffic coming from an interface  Routers learn about vnodes in the AS by exchanging information with peers  Pathlets:  A sequence of vnodes leading to a destination identified by a IP prefix  Forwarding Identifier – FID (f)  Vnode + Pathlet = Virtual topology
  • 6. Let’s understand..  Constructing pathlets between peer routers A B C 2
  • 7. Let’s understand..  Two pathlets used to send data from A to C 3 A B C 2 2, 3 3
  • 8. Let’s understand..  Three autonomous systems 3 A B C 2 4 4 3
  • 9. Let’s understand..  Three autonomous systems A B C y v qr s
  • 10. Let’s understand..  Ingress and egress points can be chosen from many available options A B C x v qr s
  • 11. Let’s understand..  Multiple pathlets to suit local transit policies A B C x v qr s
  • 12. Pathlet Routing - Working  Pathlet originates at a router R1 (with vnode v1)  The sending vnode refers to its table for possible pathlets to reach destination  Creates a list of vnodes and calls it a pathlet ( and can advertise it) puts the pathlet in the header and send the packet out to a peer  Peer removes its own vnode in the packet header and sends along to the next vnode  This path selection is dependent on local policies of the AS
  • 13. Route Selection  Using shortest path algorithm Path for packet forwarding based on result of shortest path algorithm run on a graph created by using routing information at vnodes
  • 14. Pathlet Dissemination  Path vector algorithm (just like BGP)  Announces pathlet’s FID and sequence of vnodes  Scalability: Propagate arbitrary subset of known pathlets  Path vector used for sending routing info not routing data
  • 16. Components Of Pathlet Routing  Controller: Processes the routing information  Vnode Manager: Manages all vnodes(tables) on a single device  Disseminator: Sends out routing information to peers  Router : Router running at least 1 pathlet routing instance  Vnode: A small routing table  Pathlet: A sequence of vnodes
  • 17. Implementation: Router  The router can have max 5 interfaces  It can connect to other routers using TCP  The topology is created using a config file  There are 2 kinds of messages  Data messages with dummy data  Routing messages contain routing information in the following format {AS-id, RouterId, VnodeId} and {PathletId (FID), IP Prefix}  Routers collect stats like size of table in Vnodes and total control messages sent and received  Allow commands on each router
  • 18. Implementation: Vnode & Vnode Manager  Vnode Manager is a container for Vnodes  All VNodes have vnode-id, router-id, AS-id to uniquely identify it  Controller logic is still being decided but it only decides on installing paths from peers on Vnodes  The shortest path algorithm is implemented on the Vnode  The shortest path algorithm implemented separately but buggy
  • 19. Implementation: Deciding Topology  Using BGP RIB and Update messages to create update messages  A simple 3 and 6 node topology being used to achieve basic goal of routers exchanging data  Currently tables are static
  • 20. Scope  Implement the software router in Python using Twisted and NetworkX.  Allow exchange of messages on routers arranged in real-world like scenario  Save the logs for comparison with data from RouteViews  Simulate loss of links
  • 21. Timeline Activity Completed Time Find internet-based topology data or a random graph which can be scaled from 10 to 300 nodes 20 October Learn and implement the shortest path and Path Vector algorithms 20 October Learn basic Erlang. We are using Python with NetworkX and Twisted 27 October Explore possible packet structure for Pathlet routing 27 October Finalize the details to be implemented or BGP and Pathlet routing 3 November  Activities completed so far
  • 22. Timeline Ongoing Activities Time Run the algorithms for Pathlet and BGP on a large 100+ node graph. And verify the result 10 November Simulate of a 3 node graph running BGP and Pathlets capable of exchanging information. Created a graph of 6 nodes to implement Pathlet only not BGP 17 November Verify the above system for discrepancies 24 November Add provision for emulating Local policies for implementing Local Transit policies 1 December Run comparison studies on the system 8 December  Ongoing activities and future plan
  • 23. References  http://dl.acm.org/citation.cfm?id=1592583  https://www.ietf.org/rfc/rfc1771.txt  http://jad-reads.blogspot.com/2009/04/thoughts-on-pathlet- routing.html  ftp://espectrocrom.com/pub/manuales/bgp/cisco%20-%20bgp%20- %20internet%20routing%20architectures%202ed%20(press%201- 57870-233-x).pdf  http://web.engr.illinois.edu/~pbg/pathlets/