IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas...
-
Upload
alexandra-barnett -
Category
Documents
-
view
217 -
download
2
Transcript of IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas...
![Page 1: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/1.jpg)
IOFlow: a Software-Defined Storage Architecture
Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis,
Antony Rowstron, Tom Talpey, Richard Black, Timothy Zhu
Microsoft ResearchYou may re-use these slides freely, but please cite them appropriately:“IOFlow: A Software-Defined Storage Architecture. Eno Thereska, Hitesh Ballani, Greg O'Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, and Timothy Zhu. In SOSP'13, Farmington, PA, USA. November 3-6, 2013. “
![Page 2: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/2.jpg)
Background: Enterprise data centers
• General purpose applications• Application runs on several VMs
• Separate network for VM-to-VM traffic and VM-to-Storage traffic
• Storage is virtualized
• Resources are shared
Hypervisor
Switch Switch Switch
Storage
server
Storage
server
S-NIC S-NIC
S-NIC NIC S-NIC NIC
VMVMVMVirtual
MachinevDis
k
VMVMVMVirtual
MachinevDis
k
2
![Page 3: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/3.jpg)
3
Motivation
It is hard to provide such SLAs today
Want: predictable application behaviour and performance
Need system to provide end-to-end SLAs, e.g., • Guaranteed storage bandwidth B• Guaranteed high IOPS and priority• Per-application control over decisions along IOs’ path
![Page 4: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/4.jpg)
4
Hypervisor
Switch Switch Switch
Storage
server
Storage
server
S-NIC S-NIC
S-NIC NIC S-NIC NIC
VMVirtual
MachinevDis
k
VMVirtual
MachinevDis
k
Example: guarantee aggregate bandwidth B for Red tenant
AppOS
Hypervisor
CachingScheduling
IO ManagerDrivers
AppOS
Malware scan
File system…
Compression
File system…
CachingScheduling
Storage server
CachingSchedulingDrivers
File systemDeduplication
…
Deep IO path with 18+ different layers that are configured and operate independently and do not understand SLAs
![Page 5: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/5.jpg)
5
Challenges in enforcing end-to-end SLAs
• No storage control plane • No enforcing mechanism along storage data plane• Aggregate performance SLAs - Across VMs, files and storage operations
• Want non-performance SLAs: control over IOs’ path• Want to support unmodified applications and VMs
![Page 6: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/6.jpg)
6
…
IOFlow architecture
AppOS
Hypervisor
File systemScheduling
IO ManagerDrivers
Storage server
CachingSchedulingDrivers
File systemDeduplication
AppOS
Malware scan
File system
Scheduling
Compression
Controller
Client-side IO stackServer-side IO stack
High-level SLA
IOFlow API
Decouples the data plane (enforcement) from the control plane (policy logic) IO Packets
...
Queue nQueue 1
![Page 7: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/7.jpg)
7
Contributions
• Defined and built storage control plane• Controllable queues in data plane• Interface between control and data plane (IOFlow API)
• Built centralized control applications that demonstrate power of architecture
![Page 8: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/8.jpg)
8
Storage flowsStorage “Flow” refers to all IO requests to which an SLA applies
<{VMs}, {File Operations}, {Files}, {Shares}> ---> SLA
• Aggregate, per-operation and per-file SLAs, e.g., <{VM 1-100}, write, *, \\share\db-log}>---> high priority
<{VM 1-100}, *, *, \\share\db-data}> ---> min 100,000 IOPS
• Non-performance SLAs, e.g., path routing <VM 1, *, *, \\share\dataset>---> bypass malware scanner
source set destination sets
![Page 9: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/9.jpg)
9
IOFlow API: programming data plane queues
1. Classification [IO Header -> Queue]2. Queue servicing [Queue -> <token rate, priority, queue size>]3. Routing [Queue -> Next-hop]
…
IO Header …… Malware
scanner
![Page 10: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/10.jpg)
10
Lack of common IO Header for storage traffic
SLA: <VM 4, *, *, \\share\dataset> --> Bandwidth B
VM1
VM2
VM3
Application
VM4
SMBc
Physical NIC
Network driver
Physical NIC
SMBs
Filesystem
Network driver
Diskdriver
Compute Server Storage Server
GuestOS
Hypervisor
Filesystem
Blockdevice
VHDScanner
Block deviceZ: (/device/scsi1)
Server and VHD\\serverX\AB79.vhd
Volume and fileH:\AB79.vhd
Block device/device/ssd5
![Page 11: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/11.jpg)
11
VM1
VM2
VM3
Application
VM4
SMBc
Physical NIC
Network driver
Physical NIC
SMBs
Filesystem
Network driver
Diskdriver
Compute Server Storage Server
GuestOS
Hypervisor
Filesystem
Blockdevice
VHDScanner
Flow name resolution through controllerSLA: {VM 4, *, *, //share/dataset} --> Bandwidth B
ControllerSMBc exposes IO Header it understands:
<VM_SID, //server/file.vhd>
Queuing rule (per-file handle):<VM4_SID, //serverX/AB79.vhd> --> Q1 Q1.token rate --> B
![Page 12: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/12.jpg)
12
Rate limiting for congestion controlQueue servicing [Queue -> <token rate, priority, queue size>]
• Important for performance SLAs• Today: no storage congestion control
Challenging for storage: e.g., how to rate limit two VMs, one reading, one writing to get equal storage bandwidth?
IOs
tokens
![Page 13: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/13.jpg)
13
Rate limiting on payload bytes does not work
Storage
server
VM VM
8KB Writes8KB Reads
![Page 14: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/14.jpg)
14
Rate limiting on bytes does not work
Storage
server
VM VM
8KB Writes8KB Reads
![Page 15: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/15.jpg)
15
Rate limiting on IOPS does not work
Storage
server
VM VM
8KB Writes64KB Reads
Need to rate limit based on cost
![Page 16: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/16.jpg)
16
Rate limiting based on cost Controller constructs empirical cost models based on
device type and workload characteristics RAM, SSDs, disks: read/write ratio, request size
Cost models assigned to each queue ConfigureTokenBucket [Queue -> cost model]
Large request sizes split for pre-emption
![Page 17: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/17.jpg)
17
Recap: Programmable queues on data plane Classification [IO Header -> Queue]
Per-layer metadata exposed to controller Controller out of critical path
Queue servicing [Queue -> <token rate, priority, queue size>] Congestion control based on operation cost
Routing [Queue -> Next-hop]
How does controller enforce SLA?
![Page 18: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/18.jpg)
18
Distributed, dynamic enforcement
• SLA needs per-VM enforcement• Need to control the aggregate rate of
VMs 1-4 that reside on different physical machines
• Static partitioning of bandwidth is sub-optimal
<{Red VMs 1-4}, *, * //share/dataset> --> Bandwidth 40 Gbps
VMVM
Hypervisor
Storage
server
VMVM
Hypervisor
VMVMVM VM
40Gbps
![Page 19: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/19.jpg)
19
Work-conserving solution
• VMs with traffic demand should be able to send it as long as the aggregate rate does not exceed 40 Gbps
• Solution: Max-min fair sharing
VMVM
Hypervisor
Storage
server
VMVM
Hypervisor
VMVMVM VM
![Page 20: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/20.jpg)
20
Max-min fair sharingWell studied problem in networks Existing solutions are distributed
Each VM varies its rate based on congestion Converge to max-min sharing
Drawbacks: complex and requires congestion signal
But we have a centralized controller Converts to simple algorithm at controller
![Page 21: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/21.jpg)
21
Controller-based max-min fair sharing
What does controller do?• Infers VM demands• Uses centralized max-min within
a tenant and across tenants• Sets VM token rates• Chooses best place to enforce
Controller
INPUT: per-VM demands
OUTPUT: per-VM allocated token rate
ts
t = control intervals = stats sampling interval
![Page 22: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/22.jpg)
22
Controller decides where to enforce
SLA constraints Queues where resources shared Bandwidth enforced close to source Priority enforced end-to-end
Efficiency considerations Overhead in data plane ~ # queues Important at 40+ Gbps
Minimize # times IO is queued and distribute rate limiting load
VMVM
Hypervisor
Storage
server
VMVM
Hypervisor
VMVMVM VM
![Page 23: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/23.jpg)
23
Centralized vs. decentralized control
Centralized controller in SDS allows for simple algorithms that focus on SLA enforcement and not
on distributed system challengesAnalogous to benefits of centralized control in software-
defined networking (SDN)
![Page 24: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/24.jpg)
24
IOFlow implementationVM
1
VM2
VM3
Application
VM4
SMBc
Physical NIC
Network driver
Physical NIC
SMBs
Filesystem
Network driver
Diskdriver
Compute Server Storage Server
GuestOS
Hypervisor
Filesystem
Blockdevice
VHDScanner
Controller
2 key layers forVM-to-Storage performance SLAs
4 other layers. Scanner driver (routing). User-level (routing)
. Network driver
. Guest OS file system
Implemented as filter drivers on top of layers
![Page 25: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/25.jpg)
25
Evaluation map
IOFlow’s ability to enforce end-to-end SLAsAggregate bandwidth SLAsPriority SLAs and routing application in paper
Performance of data and control planes
![Page 26: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/26.jpg)
26
Evaluation setupVMVM
Hypervisor
Storage
server
VMVM
Switch
Hypervisor
VMVMVM VM
…
Clients:10 hypervisor servers, 12 VMs each4 tenants (Red, Green, Yellow, Blue)30 VMs/tenant, 3 VMs/tenant/serverStorage network:Mellanox 40Gbps RDMA RoCE full-duplex1 storage server: 16 CPUs, 2.4GHz (Dell R720)SMB 3.0 file server protocol3 types of backend: RAM, SSDs, Disks
Controller: 1 separate server1 sec control interval (configurable)
![Page 27: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/27.jpg)
27
Workloads• 4 Hotmail tenants {Index, Data, Message, Log}
Used for trace replay on SSDs (see paper)• IoMeter is parametrized with Hotmail tenant
characteristics (read/write ratio, request size)
![Page 28: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/28.jpg)
28
Enforcing bandwidth SLAs4 tenants with different storage bandwidth SLAs
Tenants have different workloads Red tenant is aggressive: generates more requests/second
Tenant SLARed {VM1 – 30} -> Min 800 MB/sGreen {VM31 – 60} -> Min 800 MB/sYellow {VM61 – 90} -> Min 2500 MB/sBlue {VM91 – 120} -> Min 1500 MB/s
![Page 29: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/29.jpg)
29
Things to look forDistributed enforcement across 4 competing tenants Aggressive tenant(s) under control
Dynamic inter-tenant work conservation Bandwidth released by idle tenant given to active tenants
Dynamic intra-tenant work conservation Bandwidth of tenant’s idle VMs given to its active VMs
![Page 30: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/30.jpg)
30
ResultsController notices red
tenant’s performanceTenants’ SLAs
enforced. 120 queues cfg.
Inter-tenant work
conservation
Intra-tenant work
conservation
![Page 31: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/31.jpg)
31
Data plane overheads at 40Gbps RDMA
Negligible in previous experiment. To bring out worst case varied IO sizes from 512Bytes to 64KB
Reasonable overheads for enforcing SLAs
![Page 32: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/32.jpg)
32
Control plane overheads: network and CPUO
verh
eads
(MB) <0.3% CPU
overhead at controller
Controller configures queue rules, receives statistics and updates token rates every interval
![Page 33: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/33.jpg)
33
Summary of contributions
• Defined and built storage control plane• Controllable queues in data plane• Interface between control and data plane (IOFlow API)
• Built centralized control applications that demonstrate power of architecture
• Ongoing work: applying to public cloud scenarios
![Page 34: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/34.jpg)
34
Backup slides
![Page 35: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/35.jpg)
Related work (1) Software-defined Networking (SDN)
[Casado et al. SIGCOMM’07], [Yan et al. NSDI’07], [Koponen et al. OSDI’10], [Qazi et al. SIGCOMM’13], and more in associated workshops.
OpenFlow [McKeown et al. SIGCOMM Comp. Comm.Review’08]
Languages and compilers [Ferguson et al. SIGCOMM’13], [Monsanto et al. NSDI’13]
SEDA [Welsh et al. SOSP’01] and Click [Kohler et al. ACM ToCS’00]
35
![Page 36: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/36.jpg)
Related work (2) Flow name resolution
Label IOs [Sambasivan et al. NSDI’11], [Mesnier et al. SOSP’11], etc
Tenant performance isolation For storage [Wachs et al. FAST’07], [Gulati et al. OSDI’10],
[Shue et al. OSDI’12], etc. For networks [Ballani et al. SIGCOMM’11], [Popa et al.
SIGCOMM’12] Distributed rate limiting [Raghavan et al. SIGCOMM’07]
36
![Page 37: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/37.jpg)
IOFlow APIreturns kind of IO header layer uses for queuing, the queue properties that are configurable, and possible next hopsgetQueueInfo ()
returns queue statisticsgetQueueStats (Queue-id q)
creates or removes queuing rule i -> qcreateQueueRule (IO Header i, Queue-id q)removeQueueRule (IO Header i, Queue-id q)
sets queue service propertiesconfigureQueueService (Queue-id q, <token rate,priority, queue size>)
sets queue routing propertiesconfigureQueueRouting (Queue-id q, Next-hop stage s)
sets storage-specific parametersconfigureTokenBucket (Queue-id q, <benchmark-results>)
![Page 38: IOFlow: a Software-Defined Storage Architecture Eno Thereska, Hitesh Ballani, Greg O’Shea, Thomas Karagiannis, Antony Rowstron, Tom Talpey, Richard Black,](https://reader030.fdocuments.us/reader030/viewer/2022032705/56649d945503460f94a7c9f2/html5/thumbnails/38.jpg)
SDS: Storage-specific challengesLow-level primitives
Old networks
SDN Storage today
SDS
End-to-end identifier
Data plane queues
Control plane