Research Agenda on Efficient and Robust Datapath

Download Report

Transcript Research Agenda on Efficient and Robust Datapath

Research Agenda on Efficient and
Robust Datapath
Yingping Lu
OSD Data Transmission
Requirements

Direct delivery from object device
–
–

Secure delivery
–
–

No security channel is assumed, encryption of transmitted
object is necessary
Object device exposed to network access
QoS requirement
–

Direct transmission between initiator and target device
This is the critical data path
Object may have specific QoS requirement (bw, latency)
Mobile client
–
–
Client may be intermittent
Error can occur during transmission
Approaches

Robust Secure RDMA in End System (LAN)
–
–
–

Adaptive Transport QoS Control
–

RDMA / OSD in OSD device
Incorporate security in RDMA mechanism
Incorporate robustness in RDMA mechanism
Tailor the data transmission based on the underlying network
behavior
Proper data delivery of wireless communication
–
radio resource management
OSD/Secure RDMA

This is a ULP-based RDMA
–

Leverage RDMA over TCP/IP
–


Extend the communication to IP network
OSD device initiate RDMA requests
Security-enabled RDMA
–

The RDMA is tightly integrated with OSD protocol
The underlying transport support security
QoS support
–
Virtual Lane-type mechanism to provide QoS support
OSD/Secure RDMA Architecture
OSD Client
OSD Device
OSD controller
Application
Buffers
Buffers
OSD
VIPL
OSD
VIPL
Object
Manager
VI NIC
driver
VI NIC
driver
NIC
NIC
IP network
Disk
Driver
Protocol Stacks




OSD/RDMA maps
Consumer
OSD to RDMA
OSD
DDP provide the
direct data placement VIPL
The underlying
transport can be
either SCTP or MPA Intelligent
NIC
with TCP.
IPSec is used as
security protocol
(object encryption)
OSD Consumer
OSD Protocol
OSD/RDMA
DDP
MPA
SCTP
TCP
IP/IPSec
Research Issues

Functionality distribution among regional
manager and intelligent device
–
–
–
What are the reasonable assumptions about two
components?
Under such assumption, what is the best way to
partition the functions? Statically or dynamically?
What’s the implications of the partition to the
network, storage device, supporting software?
Research Issues

RDMA over OSD
–
Characterize main operations and requirements of
OSD protocol


–
–
Common operations
Customized operations by the object creator
Characterize the capability of OSD device or OSD
subsystem
Study the implication of these requirements to
RDMA design in OSD device
RDMA/OSD Issues

System Architecture of OSD Device
–
–
–
–
The role of individual object
The role of supporting system
The interaction between the supporting system and
user object
Two existing types, what’s our position?


Passive data (normal file system)
Active objects (COM objects, EJB objects)
RDMA/OSD

Multiple Protocol processing in RDMA
–
ULP



–
LLP (TOE)



–
Application
OSD
iSCSI
TCP or SCTP?
IP
Ethernet
Different level has different header and message size, how to
adding/removing the header, segmentation/desegmentation
without incurring multiple data copies?
RDMA/OSD

Data sharing in RDMA
–
–
–
Different clients may access the same object, thus
has the data sharing requirement.
Who provide data sharing? Object itself or device
subsystem?
How to provide data sharing in RDMA/OSD?



RDMA is a one-to-one communication between server and
client
How to manage the registered buffer?
How to incorporate the flow control?
RDMA/OSD

Security implication
–
–
How to prevent malicious attack?
How to incorporate the security measure with
RDMA?



IP level (IPSec)?
Upper level?
Object level?
RDMA / OSD

QoS for OSD session
–
–
–
–
QoS attributes?
QoS mechanism at the OSD device
QoS hint exploitation?
QoS functionality partition:


–
Object
Device?
How to collect proper information for each stream and adjust
the transmission based on underlying network behavior
Failure recovery

Failure:
–
–
–
Disk device failure
A TCP connection break
Client crash
Research Focus

Get familiar with two projects and its code:
–
–

Intel iSCSI/OSD
Lustre
Focus:
–
–
–
OSD System Architecture
Upper level OSD protocol design issues
Lower level protocol design issues (TOE)