sRDMA Efficient NICbased Authentication and Encryption for Remote - - PowerPoint PPT Presentation

srdma efficient nic based authentication and encryption
SMART_READER_LITE
LIVE PREVIEW

sRDMA Efficient NICbased Authentication and Encryption for Remote - - PowerPoint PPT Presentation

spcl.inf.ethz.ch @spcl_eth Konstantin Taranov, Benjamin Rothenberger, Adrian Perrig, Torsten Hoefler sRDMA Efficient NICbased Authentication and Encryption for Remote Direct Memory Access spcl.inf.ethz.ch @spcl_eth RDMA networking is


slide-1
SLIDE 1

spcl.inf.ethz.ch @spcl_eth

sRDMA – Efficient NIC‐based Authentication and Encryption for Remote Direct Memory Access

Konstantin Taranov, Benjamin Rothenberger, Adrian Perrig, Torsten Hoefler

slide-2
SLIDE 2

spcl.inf.ethz.ch @spcl_eth

2

RDMA networking is a new trend in cloud computing

slide-3
SLIDE 3

spcl.inf.ethz.ch @spcl_eth

3

RDMA security considerations

“The RDMA protocols must permit integration with Internet security standards, such as IPsec and TLS. ”

RFC4297 – Remote Direct Memory Access (RDMA) over IP Problem Statement: December 2005 March 2017 IPSec does not support RDMA July 2020

slide-4
SLIDE 4

spcl.inf.ethz.ch @spcl_eth

  • One‐sided RDMA requests are completely performed by the NIC
  • No CPU involvement on the destination machine
  • Two‐sided communication is also offloaded to the NIC
  • Packets cannot be discarded by the NIC
  • Received data consumes resources of the connection
  • CPU is responsible for verifying the received data negating RDMA advantages

4

Can application‐level security be used?

slide-5
SLIDE 5

spcl.inf.ethz.ch @spcl_eth

  • sRDMA is lightweight security extension to RDMA which uses symmetric key cryptography to provide
  • Header Authentication
  • Packet Authentication
  • Payload encryption
  • Memory protection
  • sRDMA effectively prevents:
  • Eavesdropping
  • Spoofing attacks
  • Replay attacks
  • Man in the middle attacks
  • sRDMA is back compatible with classical RDMA and can be easily adapted by
  • native InfiniBand
  • RoCEv1
  • RoCEv2

5

sRDMA – secure RDMA communication

slide-6
SLIDE 6

spcl.inf.ethz.ch @spcl_eth

  • sRDMA introduces a new Secure Reliably Connected Queue Pair
  • The application installs symmetric keys to a QP connection and required level of protection
  • Supported security codes:

6

sRDMA – secure QP connection

slide-7
SLIDE 7

spcl.inf.ethz.ch @spcl_eth

7

sRDMA Packet format

Routing Header (RH) Base Transport Header (BTH) Payload Checksums Base Transport Header (BTH) Payload Checksums IPSec Base Transport Header (BTH) Payload Checksums sRDMA header IPSec* RDMA sRDMA sRDMA packet format advantages:

  • Routing and checksums not affected
  • Secure header is processed after processing of BTH

Routing Header (RH) Routing Header (RH)

* It does not exist yet, but it is discussed

slide-8
SLIDE 8

spcl.inf.ethz.ch @spcl_eth

8

Base Transport Header (BTH)

Base Transport Header (BTH) Payload Checksums sRDMA header sRDMA

  • Changes to BTH
  • We use 3 out of 7 reserved bits from BTH to indicate the presence of the secure header

Routing Header (RH)

  • Secure header size
  • sRDMA supports 7 different MAC sizes
  • Value 0 is for back‐compatibility
slide-9
SLIDE 9

spcl.inf.ethz.ch @spcl_eth

  • IPSec uses nonce against replay attacks
  • Nonce must never be reused
  • Nonce can be predictable and be transmitted in clear
  • PSN is a part of BTH
  • PSN is only 24 bit which get reused after 80 ms on modern network devices
  • Mellanox ConnectX‐5 can send up to 200 million messages per second!
  • sRDMA extends InfiniBand PSN counters to 64 bits
  • Both sender and receiver maintain 64‐bit counters,
  • But they transmit 24 least significant bits (LSB).
  • As PSNs are ordered, the endpoints can recover 64 bit sequence number from 24 LSB using sliding window.

9

Nonce and Packet Sequence Number (PSN)

slide-10
SLIDE 10

spcl.inf.ethz.ch @spcl_eth

  • Header Authentication
  • Packet Authentication
  • Payload authenticated encryption
  • Nonce, RH, and BTH are passed as Additional Authenticated Data
  • Payload is encrypted and sent instead of plaintext
  • Overheads of AES‐128 for N secure QP connections

10

sRDMA ‐ Authentication and Secrecy

Key overhead Nonce counter Header IPSec 16B * N 16B * N 32B sRDMA 16B * N 10B * N 16B

slide-11
SLIDE 11

spcl.inf.ethz.ch @spcl_eth

  • In RDMA, QP connections are created inside PDs
  • PD groups IB resources such as QP connections and memory regions that can work together.
  • sRDMA proposes to install a key (KPD) to PD, and use this key to derive QP level keys
  • We propose to install a single key per PD, and derive QP‐level keys from the PD key.
  • The key is derived using pseudorandom function (PRF) based on adapter port addresses (APA) and

QPN identifiers of the endpoints.

  • Two endpoints derive the same symmetric key.
  • Overheads of AES‐128 for N secure QP connections

11

Improving memory overhead – Protection Domain (PD) level keys

Key overhead Nonce counter Header IPSec 16B * N 16B * N 32B sRDMA 16B * N 10B * N 16B sRDMA + PD keys 16B 10B* N 16B

slide-12
SLIDE 12

spcl.inf.ethz.ch @spcl_eth

  • Memory protection in IBA is based on rkey tags (32 bits)
  • Each one‐sided RDMA request must include rkey in its request.
  • Any endpoint with the rkey can access the memory

12

Extended memory protection

  • sRDMA proposes scalable crypto‐based memory protection
  • Access to sub‐region (SR) with addresses [START, END )
  • sRDMA does not introduce extra header and reuses the STH

Endpoint B Endpoint C Endpoint A

slide-13
SLIDE 13

spcl.inf.ethz.ch @spcl_eth

  • sRDMA is implemented on Broadcom Stingray PS225
  • Eight‐core ARM A72
  • DDR4 8 GB DRAM
  • Supports crypto‐acceleration

13

Implementation of sRDMA

slide-14
SLIDE 14

spcl.inf.ethz.ch @spcl_eth

14

Implementation of sRDMA

Endpoint A Endpoint B Host A SmartNIC A SmartNIC B Host B QP connection QP connection QP connection

slide-15
SLIDE 15

spcl.inf.ethz.ch @spcl_eth

15

Implementation of sRDMA – RDMA Write

Endpoint A Endpoint B Host A SmartNIC B Host B SmartNIC A

  • 1. Host A sends data to SmartNIC A.
  • 2. SmartNIC A protects the packet.
  • 3. SmartNIC A sends the protected packet

to SmartNIC B.

  • 4. SmartNIC B validates the packet.
  • 5. SmartNIC B performs RDMA Write to the

requested memory.

slide-16
SLIDE 16

spcl.inf.ethz.ch @spcl_eth

16

Evaluation – Source authentication latency

NO security baseline

slide-17
SLIDE 17

spcl.inf.ethz.ch @spcl_eth

17

NO security baseline

Evaluation – Source authentication latency

slide-18
SLIDE 18

spcl.inf.ethz.ch @spcl_eth

18

NO security baseline

Evaluation – Source authentication latency

slide-19
SLIDE 19

spcl.inf.ethz.ch @spcl_eth

19

Evaluation – Packet authentication latency

Read latency (RTT) Write latency (RTT/2) Payload size

slide-20
SLIDE 20

spcl.inf.ethz.ch @spcl_eth

20

Evaluation – AEAD latency

Payload size

slide-21
SLIDE 21

spcl.inf.ethz.ch @spcl_eth

21

Evaluation – Write Bandwidth

slide-22
SLIDE 22

spcl.inf.ethz.ch @spcl_eth

22

Evaluation – Write Bandwidth

slide-23
SLIDE 23

spcl.inf.ethz.ch @spcl_eth

23

Evaluation – Write Bandwidth

slide-24
SLIDE 24

spcl.inf.ethz.ch @spcl_eth

24

Evaluation – Write Bandwidth

slide-25
SLIDE 25

spcl.inf.ethz.ch @spcl_eth

25

Evaluation – Read Bandwidth

Read Bandwidth Write Bandwidth

slide-26
SLIDE 26

spcl.inf.ethz.ch @spcl_eth

26

Evaluation – Read Bandwidth

Read Bandwidth Write Bandwidth

slide-27
SLIDE 27

spcl.inf.ethz.ch @spcl_eth

27

Evaluation – Read Bandwidth

Read Bandwidth Write Bandwidth

slide-28
SLIDE 28

spcl.inf.ethz.ch @spcl_eth

28

Evaluation – Read Bandwidth

Read Bandwidth Write Bandwidth

slide-29
SLIDE 29

spcl.inf.ethz.ch @spcl_eth

  • Memory Sub‐delegation
  • Details on the implementation
  • Extra Experiments

29

sRDMA paper also includes

slide-30
SLIDE 30

spcl.inf.ethz.ch @spcl_eth

  • sRDMA is lightweight security extension to RDMA protocols
  • sRDMA is flexible and supports various protection modes
  • PD‐level protection minimizes memory consumption on the NIC
  • sRDMA extends memory protection of InfiniBand architecture
  • sRDMA can be easily adapted to hardware

30

Thank you for your attention!

sRDMA implementation: Contact information: Konstantin Taranov konstantin.taranov@inf.ethz.ch