Toward Programmable Interdomain Routing Qiao Xiang 1 , J. Jensen - - PowerPoint PPT Presentation

toward programmable interdomain routing
SMART_READER_LITE
LIVE PREVIEW

Toward Programmable Interdomain Routing Qiao Xiang 1 , J. Jensen - - PowerPoint PPT Presentation

Toward Programmable Interdomain Routing Qiao Xiang 1 , J. Jensen Zhang 1, 2 , Franck Le 3 , Y. Richard Yang 4, 1 1 Yale University, 2 Tongji University, 3 IBM T.J. Watson Research Center, 4 Peng Cheng Laboratory, 07/30/2020, ACM/IRTF ANRW'20


slide-1
SLIDE 1

Toward Programmable Interdomain Routing

Qiao Xiang1, J. Jensen Zhang1, 2, Franck Le3, Y. Richard Yang4, 1

1 Yale University, 2 Tongji University, 3 IBM T.J. Watson Research Center, 4 Peng Cheng Laboratory,

07/30/2020, ACM/IRTF ANRW'20

slide-2
SLIDE 2

Background: What is Interdomain Routing

  • Determine routes for source-destination pairs that span multiple ASes
  • Ideally, allow policy-routing, flexible traffic engineering and etc.
  • De facto interdomain routing protocol: Border Gateway Protocol (BGP)

2

slide-3
SLIDE 3

Background: What is Interdomain Routing

  • Determine routes for source-destination pairs that span multiple ASes
  • Ideally, allow policy-routing, flexible traffic engineering and etc.
  • De facto interdomain routing protocol: Border Gateway Protocol (BGP)
  • BGP in a nutshell: Each AS makes and executes its own policy to select routes and export the

selected routes in terms of path vectors (i.e., AS path), to its neighbor ASes

3

slide-4
SLIDE 4

Background: What is Interdomain Routing

  • Determine routes for source-destination pairs that span multiple ASes
  • Ideally, allow policy-routing, flexible traffic engineering and etc.
  • De facto interdomain routing protocol: Border Gateway Protocol (BGP)
  • BGP in a nutshell: Each AS makes and executes its own policy to select routes and export the

selected routes in terms of path vectors (i.e., AS path), to its neighbor ASes

4

A B C E F G I H D S

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D] [S, A, B, E, G, I, D] IP prefix p

slide-5
SLIDE 5

Background: What is Interdomain Routing

  • Determine routes for source-destination pairs that span multiple ASes
  • Ideally, allow policy-routing, flexible traffic engineering and etc.
  • De facto interdomain routing protocol: Border Gateway Protocol (BGP)
  • BGP in a nutshell: Each AS makes and executes its own policy to select routes and export the

selected routes in terms of path vectors (i.e., AS path), to its neighbor ASes

  • BGP can implement policy-routing, but not other use cases such as flexible traffic engineering

5

A B C E F G I H D S

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D] [S, A, B, E, G, I, D] IP prefix p

slide-6
SLIDE 6

Limitation of BGP: Lacking Mechanisms for Flexible End-to-End Interdomain Route Control

6

A B C E F G I H D S

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D] [S, A, B, E, G, I, D] IP prefix p

slide-7
SLIDE 7

Limitation of BGP: Lacking Mechanisms for Flexible End-to-End Interdomain Route Control

  • Example: Shorter AS-paths can be achieved, but S cannot select them

7

A B C E F G I H D S

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D] [S, A, B, E, G, I, D] IP prefix p

slide-8
SLIDE 8

Limitation of BGP: Lacking Mechanisms for Flexible End-to-End Interdomain Route Control

  • Example: Shorter AS-paths can be achieved, but S cannot select them
  • BGP does not provide mechanisms for S to control E's route selection

8

A B C E F G I H D S

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D] [S, A, B, E, G, I, D] IP prefix p

slide-9
SLIDE 9

Goal of This Paper

9

slide-10
SLIDE 10

Goal of This Paper

  • A systematic formulation of the software-defined internetworking (SDI) model,

extending intradomain SDN to generic interdomain SDN to support flexible, end- to-end interdomain route control

10

slide-11
SLIDE 11

Goal of This Paper

  • A systematic formulation of the software-defined internetworking (SDI) model,

extending intradomain SDN to generic interdomain SDN to support flexible, end- to-end interdomain route control

  • Conceptually program every single packet end-to-end in an interdomain network
  • Save users from the trouble of configuring and reasoning low-level details of interdomain

routing (e.g., AS-path prepending, offline negotiation with different ASes and tunnel management)

11

slide-12
SLIDE 12

Outline

  • Introduction
  • SDI network control model

12

slide-13
SLIDE 13

Control Model: Abstract AS as Virtual Switch

  • Single domain SDN is very well understood, SDI aims to achieve similar things in interdomain setting

13

Single domain SDN

Port 1 Port 2 packet

Match Action

slide-14
SLIDE 14

Control Model: Abstract AS as Virtual Switch

  • Single domain SDN is very well understood, SDI aims to achieve similar things in interdomain setting

14

Single domain SDN

Port 1 Port 2 packet

Match Action

S A B D Interdomain Network

slide-15
SLIDE 15

Control Model: Abstract AS as Virtual Switch

  • Single domain SDN is very well understood, SDI aims to achieve similar things in interdomain setting
  • Each AS abstracted as a virtual switch with a pipeline of match-action tables and path-ports (i.e.,

AS paths), and exposed through north-bound protocol (e.g., ALTO)

15

Single domain SDN

Port 1 Port 2 packet

Match Action

S A B D Interdomain Network

slide-16
SLIDE 16

Control Model: Abstract AS as Virtual Switch

  • Single domain SDN is very well understood, SDI aims to achieve similar things in interdomain setting
  • Each AS abstracted as a virtual switch with a pipeline of match-action tables and path-ports (i.e.,

AS paths), and exposed through north-bound protocol (e.g., ALTO)

16

Single domain SDN

Port 1 Port 2 packet

Match Action

[A, B, D] [B, D] packet

Match Action

Pipeline of match-action tables Flexible forwarding

Port 1 Port 2

S A B D Interdomain Network S A B D

Each AS becomes an SDI-net

slide-17
SLIDE 17

Control Model: Control SDI Network

  • A client connects to SDI-nets to control paths in interdomain network

17

A B C D E F H G T S

S A B C E F G I H D

slide-18
SLIDE 18

Control Model: Control SDI Network

  • A client connects to SDI-nets to control paths in interdomain network
  • A client may select to control a subset of SDI-nets to simplify management and

business arrangements

18

A B C D E F H G T S

S A B C E F G I H D

slide-19
SLIDE 19

SDI vs. SDN: Key Difference

  • Dynamic and dependent path-ports in SDI-nets
  • Upstream path-ports depend on downstream path-ports

19

slide-20
SLIDE 20

SDI vs. SDN: Key Difference

  • Dynamic and dependent path-ports in SDI-nets
  • Upstream path-ports depend on downstream path-ports

20

A B C D E F H G T S

S A B C E F G I H D

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D]

slide-21
SLIDE 21

SDI vs. SDN: Key Difference

  • Dynamic and dependent path-ports in SDI-nets
  • Upstream path-ports depend on downstream path-ports
  • Example: When E selects [E, F, D] and does not export to B, A's path-port would

become [A, C, E, F, D]

21

A B C D E F H G T S

S A B C E F G I H D

[E, G, I, D] [E, F, D] [E, H, D] [A, B, E, G, I, D] [A, C, E, G, I, D] [E, G, I, D] [E, F, D] [E, H, D]

slide-22
SLIDE 22

SDI vs. SDN: Key Difference

  • Dynamic and dependent path-ports in SDI-nets
  • Upstream path-ports depend on downstream path-ports
  • Example: When E selects [E, F, D] and does not export to B, A's path-port would

become [A, C, E, F, D]

22

A B C D E F H G T S

S A B C E F G I H D

[E, G, I, D] [E, F, D] [E, H, D] [E, G, I, D] [E, F, D] [E, H, D] [A, C, E, F, D]

slide-23
SLIDE 23

SDI vs. SDN: Key Difference

  • Dynamic and dependent path-ports in SDI-nets
  • Upstream path-ports depend on downstream path-ports
  • Example: When E selects [E, F, D] and does not export to B, A's path-port would

become [A, C, E, F, D]

23

A B C D E F H G T S

S A B C E F G I H D

[E, G, I, D] [E, F, D] [E, H, D]

Path selections at SDI-nets must be consistent

[E, G, I, D] [E, F, D] [E, H, D] [A, C, E, F, D]

slide-24
SLIDE 24

Select Consistent Paths

  • Issue: when a client selects a different path-port at downstream, path ports at upstream may

change, causing churns and disruption

24

slide-25
SLIDE 25

Select Consistent Paths

  • Issue: when a client selects a different path-port at downstream, path ports at upstream may

change, causing churns and disruption

  • Solution: (1) Three-layer design of SDI-net, (2) Two-phase-commit path selection

25

Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition) Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition data link Interdomain routing protocol

slide-26
SLIDE 26

Select Consistent Paths

  • Issue: when a client selects a different path-port at downstream, path ports at upstream may

change, causing churns and disruption

  • Solution: (1) Three-layer design of SDI-net, (2) Two-phase-commit path selection

26

Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition) Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition data link Interdomain routing protocol

Phase 1: select paths and test consistency in shadow CP

slide-27
SLIDE 27

Interdomain routing protocol

Select Consistent Paths

  • Issue: when a client selects a different path-port at downstream, path ports at upstream may

change, causing churns and disruption

  • Solution: (1) Three-layer design of SDI-net, (2) Two-phase-commit path selection

27

Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition) Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition data link Interdomain routing protocol

Phase 1: select paths and test consistency in shadow CP

slide-28
SLIDE 28

Interdomain routing protocol

Select Consistent Paths

  • Issue: when a client selects a different path-port at downstream, path ports at upstream may

change, causing churns and disruption

  • Solution: (1) Three-layer design of SDI-net, (2) Two-phase-commit path selection

28

Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition) Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition data link Interdomain routing protocol

Phase 1: select paths and test consistency in shadow CP Phase 2: commit consistent paths to data plane

slide-29
SLIDE 29

Interdomain routing protocol

Select Consistent Paths

  • Issue: when a client selects a different path-port at downstream, path ports at upstream may

change, causing churns and disruption

  • Solution: (1) Three-layer design of SDI-net, (2) Two-phase-commit path selection

29

Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition) Data plane (FIB) Control plane (RIB) Shadow control plane (RIB / FIB in transition data link Interdomain routing protocol

Phase 1: select paths and test consistency in shadow CP Phase 2: commit consistent paths to data plane

slide-30
SLIDE 30

Outline

  • Introduction
  • SDI network control model
  • Client SDI control optimization

30

slide-31
SLIDE 31

Client SDI Control Optimization Problem

31

slide-32
SLIDE 32

Client SDI Control Optimization Problem

32

slide-33
SLIDE 33

Client SDI Control Optimization Problem

33

s1 v11 v12 v13 v21 v22 v23 s2 sn t1 t2 tn vn1 vn2 vn3

slide-34
SLIDE 34

A Blackbox Optimization Reformulation: Lift Path Consistency from Constraint to Objective Function

34

Binary variable to indicate path consistency

slide-35
SLIDE 35

A Blackbox Optimization Reformulation: Lift Path Consistency from Constraint to Objective Function

  • Basic idea: uses the prior belief to direct the search, and uses the posterior to

update the belief

35

Binary variable to indicate path consistency

slide-36
SLIDE 36

A Blackbox Optimization Reformulation: Lift Path Consistency from Constraint to Objective Function

  • Basic idea: uses the prior belief to direct the search, and uses the posterior to

update the belief

  • Improving search efficiency: (1) one path inconsistency can prune a large search

space; (2) one consistent path can avoid many repeated tests in future search

36

Binary variable to indicate path consistency

slide-37
SLIDE 37

Outline

  • Introduction
  • SDI network control model
  • Client SDI control optimization
  • Evaluation

37

slide-38
SLIDE 38

Performance Evaluation: Settings

  • Topology: CAIDA Internet topology dataset with 63361 ASes and 320978 AS-level

links.

  • AS export policies: (1) C/P relationship, (2) blacklist ASes, (3) forbidden segments.
  • Client objective: find shortest AS path for top 2000 AS-pairs in terms of traffic

volume, based on CAIDA Internet traffic dataset

38

slide-39
SLIDE 39

Results: Efficacy and Efficiency of SDI Control

  • In all experiments, the SDI optimization algorithm finds the optimal policy-

compliant shortest AS path

  • In 95% cases, it finds the optimal solution by sampling no more than 35 paths.

39

slide-40
SLIDE 40

Outline

  • Introduction
  • SDI network control model
  • Client SDI control optimization
  • Evaluation
  • Operational Implication: Privacy Study

40

slide-41
SLIDE 41

Can BGP Policies Be Inferred from Exposed RIBs and Selected Route?

  • Perception: BGP is usually good at hiding policies, and BGP looking glass / ALTO

servers are deployed

  • Preliminary finding: BGP selection policy can be inferred by solving a

classification problem

  • Simulation setting: 3-20 neighbor ASes, next-hop-based local preference

assignment, standard route selection procedure (i.e., RFC 4271), 200-20k (RIB, selected route) samples per dataset

  • Result: When the # of neighbor ASes is small (i.e., <=8), 160 samples in a feed-

forward neural network provides a minimal of 95% accuracy

41

slide-42
SLIDE 42

Conclusion and Future Work

  • Propose the simple, novel software-defined internetworking (SDI) model,

extending intradomain SDN to generic interdomain SDN

  • Design an efficient optimization algorithm to solve the client SDI control
  • ptimization problem
  • Demonstrate the feasibility, benefits and potential privacy concern of SDI via

evaluation results Future work

  • Extend from coarse-grained (i.e., destination IP based) SDI to fine-grained (i.e.,

TCP/IP 5-tuple) SDI

  • Accurate BGP policy inference with few-shot learning

42