Talk (ppt, converted)
Download
Report
Transcript Talk (ppt, converted)
Participatory
Networking:
An API for Application
Control of SDNs
Andrew Ferguson, Arjun Guha, Chen Liang,
Rodrigo Fonseca, and Shriram Krishnamurthi
Cornell
1
Participatory
Networking
2
1.
SSHGuar
d
2.
3. Ekiga
ZooKeep
4.
er
Hadoop
Motivation
3
1.
SSHGuar
d
2.
3. Ekiga
ZooKeep
4.
er
Hadoop
blocks hosts in response to
login attempts
uses knowledge from host OS
prefers to deny traffic close to
source
SSHGuar
d
SSHGuar
d
SSHGuar
d
SSHGuar
d
SSHGuar
d
SSHGuar
d
SSHGuar
d
4
1.
SSHGuar
d
2.
3. Ekiga
ZooKeep
4.
er
Hadoop
open source VOIP client
network needs dictated by
end-user
prefers to reserve bandwidth
Ekiga
Ekiga
5
1.
SSHGuar
d
2.
3. Ekiga
ZooKeep
4.
er
Hadoop
Paxos-like coordination
service
network needs dictated by
placement
prefers high-priority switch
queues
ZooKeeper
ZooKeeper
ZooKeeper
6
1.
SSHGuar
d
2.
3. Ekiga
ZooKeep
4.
er
Hadoop
Hadoop
Hadoop
Hadoop
open source data processing
platform
network weights known by
scheduler
prefers to reserve bandwidth
Hadoop
Hadoop
Hadoop
Hadoop
Hadoop
Hadoop
Hadoop
Hadoop
Hadoop
7
SDN Controllers
SSHGuar
SSHGuar
SSHGuard
dd
Ekiga
Ekiga
ZooKeeper
Hadoop
8
9
1. decompose control and
visibility
2. resolve conflicts
between requests
Challenges
10
Participatory
Networking
11
Participatory
Networking
1. Requests
2. Hints
3. Queries
PA
NE
12
Participatory
Networking
• End-user API for SDNs
• Exposes existing mechan
• No effect on unmodified
applications
13
Decomposing Control
14
Hadoop
Shares
15
root
root adf
bandwidth
100Mbps
bandwidth
50Mbps
Share Tree
16
OK
PA
NE
17
Current:
Current:80
0 Mbps
Mbps
Share
A
bandwidth
100Mbps
bandwidth
100Mbps
Current: 080Mbps
Mbps
ShareB
bandwidth
100Mbps
Current: 0 Mbps
PA
NE
18
Resolving Conflicts
19
root
root adf
bandwidth
100Mbps
bandwidth
50Mbps
Share Tree
20
(dstPort = 22, Deny)
(dstIP=10.0.0.2, GMB=30)
(srcIP=10.0.0.2, GMB=20)
(dstPort=80, GMB=10)
(srcIP=10.0.0.1, Allow)
Policy Trees
21
(dstPort = 22, Deny)
(dstIP=10.0.0.2, GMB=30)
(srcIP=10.0.0.2, GMB=20)
(dstPort=80, GMB=10)
(srcIP=10.0.0.1, Allow)
Policy Trees
22
al
Flow
Tables
GMB=30
(dstPort = 22, Deny)
GMB=30
+D (dstIP=10.0.0.2, GMB=30)
(srcIP=10.0.0.1, GMB=20)
GMB=10
?
GMB=10
0 +S
+P
(dstPort=80, GMB=10)
Allow
(srcIP=10.0.0.1, Allow)
Packet
Evaluation
23
al
Flow
Tables
GMB=30
+P
GMB=10
GMB=30
+D
+S
GMB=10
(dstIP=10.0.0.2, GMB=30)
(srcIP=10.0.0.1, GMB=20)
Allow
(dstPort=80, GMB=10) (srcIP=10.0.0.1, Allow)
Only Requirements:
Associative, 0identity
Conflict Resolution
24
+D In node
+S Sibling
D and S identical.
Deny overrides Allow.
GMB combines as max
Rate-limit combines as min
Child overrides Parent
+P Parent-Sibling
for Access Control
GMB combines as max
Rate-limit combines as min
PANE’s Conflict
Resolution Operators
25
Implementation
26
PA
NE
(d
(dsst
(ds
(sr
Po
tIP
tP
cIP
(d
rt
=1
ort
=1
st
(ds
=
0.0 (ds (sr
=8
0.0
Po
tIP
22
.0. tP cIP
0,
.0.
rt
=1
,
2, ort =1
G
1,
=
0.0
De
GM =8 0.0
M
All
22
.0.
ny
B= 0, .0.
B=
ow
,
2,
)
30) G 1,
10)
GMDe)
M
All
ny
B=
B=
ow
)
30)
10) )
(d
(dsst
(ds
(sr
Po
tIP
(d=1tP
rt cIP
ort
(dsst0.0
= =1
(ds
(sr 0.0
=8
Po
tIP .0.22
(d
tP
cIP .0.
0,
rt
=1 2, ,
st
(ds
ort
=1 1, (ds
G
=
0.0 GMDe
Po
tIP
=8
0.0 All tP
M
22
.0. B=ny
rt
=1
0,, B=
.0. ow ort
2, 30) )
=
0.0
G 10)
1, ) =8
De
GM
22
.0.
M
All
0,,
ny
B=
2,
B=
ow
G
30) )
De
GM
10) )
M
B=ny
B=
30) )
10)
(sr
cIP
=1
0.0
.0.
1,
All
ow
)
27
(dstPort = 22, Deny)
(dstIP=10.0.0.2, GMB=30)
(srcIP=10.0.0.2, GMB=20)
(dstPort=80, GMB=10)
(srcIP=10.0.0.1, Allow)
28
PA
NE
29
PA
NE
30
PA
NE
31
PA
NE
32
24Mbps
5Mbps
8Mbps
PA
33
24Mbps
PA
34
0.6
PA
NE
35
Evaluation
36
37
1.
SSHGuar
d
2.
3. Ekiga
ZooKeep
4.
er
Hadoop
access
control
bandwidth
reservations
queues for low la
centralized traffic
weights
Evaluation
38
Three equal-sized sort jobs:
•Two Low Priority with 25% weight
•One High Priority with 50%
weight
2
2
PA
NE
Hos
Dynamically
apply QoS to
ts
High Priority flows using
PANE.
39
2
2
PA
NE
Hos
ts
Hadoop’s OpenFlow
rules
40
1. For applications that know
what they want from the
network
• Allows these applications to
co-exist
Conclusion
41
pane.cs.brown.edu
Andrew Ferguson
[email protected]
42
• Arjun Guha
Coauthors
•Brown
Chen
Liang
↦ Cornell ↦ UMass
Amherst
• Rodrigo
Brown ↦ Duke
Fonseca
Brown
•Brown
Shriram
Krishnamurthi
pane.cs.brown.edu
Andrew Ferguson
[email protected]
43
Backup
Slides
44
Proof of Correctness
45
GMB=30
(dstPort = 22, Deny)
GMB=30
GMB=10
(dstIP=10.0.0.2, GMB=30)
+S
+P
GMB=10
(dstPort=80, GMB=10)
Allow
(srcIP=10.0.0.1, Allow)
Hierarchical Flow
46
Compiler Correctness
47
Coq Proof Assistant
48
compile
Theorem
GMB 30
49
Protocol
50
OK
Grant aBW to Alice.
Root
NewShare aBW for
(user=Alice) [reserve <=
10Mb]
on rootShare.
OK
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
Alice
PA
NE
51
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
PA
NE
52
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
PA
NE
53
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
PA
NE
54
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
PA
NE
55
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from +20min to +30min.
Alice
NO
PA
NE
56
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from +20min to +30min.
PA
NE
57
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from +20min to +30min.
PA
NE
58
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from +20min to +30min.
PA
NE
59
NO
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from +20min to +30min.
Alice
reserve(user=Alice,
dstPort=80) = 5Mb on aBW
from now to +10min.
OK
PA
NE
60
Alice
OK
Grant aAC to Alice.
Root
NewShare aAC for
(dstHost=10.0.0.2) [deny =
True]
on rootShare.
OK
10.0.0.2
PA
NE
61
deny(dstHost=10.0.0.2,
srcHost=10.0.0.3) on aAC
from now to +5min.
OK
Alice
10.0.0.2
10.0.0.3
Eve
PA
NE
62
Netflix
63
64
65
66
67
68
Datacenter
69
Boot
Servi
ce
Production
Platform
Based on “Delusional Boot: Securing Cloud Hypervisors without Massive Re-Engineering”
(EuroSys 2012)
70
Boot
Servi
ce
Production
Platform
Based on “Delusional Boot: Securing Cloud Hypervisors without Massive Re-Engineering”
(EuroSys 2012)
71
Boot
Servi
ce
Production
Platform
Based on “Delusional Boot: Securing Cloud Hypervisors without Massive Re-Engineering”
(EuroSys 2012)
72
Boot
Servi
ce
Production
Platform
Based on “Delusional Boot: Securing Cloud Hypervisors without Massive Re-Engineering”
(EuroSys 2012)
73
Enterprise
74
75
76
77
78
A problem in the
datacenter
79
80
81
Participatory
Networking
82
Ken Thompson & Dennis Ritchie
83
Jon
Postel
85
Participatory
Networking
Secure?
Fair?
Safe?
Black
Loop
holes?
freedom?
86