Arrakis: The Operating System Is The Control Plane: Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Et Al
Arrakis: The Operating System Is The Control Plane: Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Et Al
Arrakis: The Operating System Is The Control Plane: Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Et Al
read 8.7 us
write 163 us
• Multiplexing:
• SR-IOV: split into virtual NICs, each w/ own queues, registers, etc.
• Protection:
• IOMMU (e.g. intel VT-d): devices use virtual memory of apps
• Packet Filter: control the I/O
• I/O Scheduling:
• Rate limiting, packet scheduling
Kernel
Libs
Kernel
Libs
Kernel
Apps
Control
libos
User Space
HW Space Data
Hardware
• Storage
• VSIC (Virtual Storage Interface Controller)
• each w/ queues etc.
• VSA (Virtual Storage Areas)
• mapped to physical devices
• associated with VSICs
• VSA & VSIC : many-to-many mapping
• filter creation
• e.g. create_filter(rx,*,tcp.port == 80)
• Resource limiting
• send commands to hardware I/O schedulers
• Naming
• VFS in kernel
• actual storage implemented in apps
• Cons:
• some features require hardware functionality that is no yet available
• require modification of applications
• not clear about storage abstractions
• not easy to track behaviors inside the hardware
• Security concerns
• Kernel-bypass
• U-Net, Infiniband, Netmap, Moneta-D
•…