Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Interledger Routing

640 views

Published on

A crash course in Interledger routing as presented by Stefan at the community summit.

Published in: Technology
  • Be the first to comment

Interledger Routing

  1. 1. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 1 Interledger Routing Crash Course Interledger Community Summit #2 • April 13, 2018
  2. 2. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 2 Agenda 2 1. Connector Relationships 2. Connector-to-Connector Protocol 3. Routing Log 4. Connector Configuration 5. Demo
  3. 3. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 3 Connector Relationships
  4. 4. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 4 Two Styles of Relationship
  5. 5. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 5 Gao-Rexford Model Routing Preference • Customer - They pay me • Peer - Free • Provider - I have to pay :(
  6. 6. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 6 Valley-Free Routing As a customer, I never want to route from provider to provider. This is because I pay for it. Twice!
  7. 7. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 7 Connector-to-Connector Protocol Interledger Routing Protocol
  8. 8. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 8 Routing Terminology Routes are an advertisement by a connector, stating they can reach a destination. Prefixes are ILP address prefixes covering a portion of the address space. The Origin of a route is the connector who first advertised the route. A Routing Table is a lookup table of routes, indexed by prefix.
  9. 9. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 9 Routing Advertisements
  10. 10. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 10 Routing Advertisements g.a → ""
  11. 11. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 11 Routing Advertisements g.a → g.ag.a → ""
  12. 12. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 12 Routing Advertisements g.a → g.bg.a → g.ag.a → ""
  13. 13. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 13 Routing Advertisements g.a → g.bg.a → g.a g.b → "" g.a → ""
  14. 14. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 14 Routing Advertisements g.a → g.b g.b → g.b g.a → g.a g.b → "" g.a → "" g.b → g.b
  15. 15. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 15 Routing Advertisements g.a → g.b g.b → g.b g.c → "" g.a → g.a g.b → "" g.a → "" g.b → g.b
  16. 16. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 16 Routing Advertisements g.a → g.b g.b → g.b g.c → "" g.a → g.a g.b → "" g.c → g.c g.a → "" g.b → g.b
  17. 17. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 17 Routing Advertisements g.a → g.b g.b → g.b g.c → "" g.a → g.a g.b → "" g.c → g.c g.a → "" g.b → g.b g.c → g.b
  18. 18. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 18 Routing Log
  19. 19. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 19 Route Updates Form a Log 1 2 3 4 5
  20. 20. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 20 Each Log Has a Unique ID UUID a83f1 1 2 3 4 5
  21. 21. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 21 Routes Can Be Withdrawn UUID a83f1 1 2 3 4 5 update g.u1update g.u2update g.u1w ithdraw g.u1 update g.u2
  22. 22. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 22 Routes Can Be Withdrawn UUID a83f1 4 5 update g.u1update g.u2update g.u1w ithdraw g.u1 update g.u2
  23. 23. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 23 Connector Configuration
  24. 24. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 24 Connectors Have Plugins Configure Relation: • relation: "parent" • relation: "peer" • relation: "child" Configure Plugin Type: • plugin: "ilp-plugin-xrp-asym-client"
  25. 25. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 25 Example Routing Topology
  26. 26. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 26 Example Routing Topology We are .
  27. 27. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 27 Example Routing Topology We are . Our customers are u3 and u4.
  28. 28. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 28 Example Routing Topology We are . Our customers are u3 and u4. Our peer is u1.
  29. 29. WKEGKJJD6ITW3SPXJHE PMKFEX6ANMB7U 29 Example Routing Topology We are . Our customers are u3 and u4. Our peer is u1. We have routes for u5 and u4.u6.

×