server side performance evaluation of ndn
play

Server-side performance evaluation of NDN Xavier MARCHAL, Thibault - PowerPoint PPT Presentation

Server-side performance evaluation of NDN Xavier MARCHAL, Thibault CHOLEZ, Olivier FESTOR LORIA, UMR 7503 (University of Lorraine, CNRS, INRIA) Vandoeuvre-les-Nancy, F-54506, France ACM ICN 2016, Kyoto, Japan Introduction Experimental


  1. Server-side performance evaluation of NDN Xavier MARCHAL, Thibault CHOLEZ, Olivier FESTOR LORIA, UMR 7503 (University of Lorraine, CNRS, INRIA) Vandoeuvre-les-Nancy, F-54506, France ACM ICN 2016, Kyoto, Japan

  2. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Outline 1 Introduction 2 Experimental environment 3 Server-side performance evaluation 4 Reduce the signature impact 5 Conclusion ACM ICN 2016 Server-side performance evaluation of NDN 2 / 18

  3. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Outline 1 Introduction 2 Experimental environment 3 Server-side performance evaluation 4 Reduce the signature impact 5 Conclusion ACM ICN 2016 Server-side performance evaluation of NDN 3 / 18

  4. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Context Named-Data networking Optimized for massive content diffusion: In-network cache and Interest concatenation Rely on digital signature for content authentication: Each Data packet must be signed Compute SHA-256 then sign with a cryptographic algorithm Problem statement Actual cost when a content provider generates Data packets? Can be critical for real-time applications that must deal with unpredictable flows of data (ex: video live streaming, ...) ACM ICN 2016 Server-side performance evaluation of NDN 4 / 18

  5. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Outline 1 Introduction 2 Experimental environment Ndnperf Testbed 3 Server-side performance evaluation 4 Reduce the signature impact 5 Conclusion ACM ICN 2016 Server-side performance evaluation of NDN 5 / 18

  6. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Ndnperf We developed ndnperf A performance evaluation tool Available in C++ and Java Features: Report throughput, latency and packet processing time Multi-threaded application Generate Data packets from random data or real files Can generate asymmetric keys thanks to the NDN library http://madynes.loria.fr/software/ndnperf_cpp.zip ACM ICN 2016 Server-side performance evaluation of NDN 6 / 18

  7. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Testbed Server 1 Server 2 10GBASE-T NDNperf NDNperf NFD NFD Client Server Unix Unix TCP socket socket Specifications 2 servers: CPU: 2x8 cores E5-2630v3 RAM: 64GB DDR4 NIC: Intel X540 OS: Ubuntu 15.04 (3.19) Network Physical layer: 10GBASE-T (ad-hoc network) NDN network: 2 nodes, 1 NFD (0.4.0) per server ACM ICN 2016 Server-side performance evaluation of NDN 7 / 18

  8. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Outline 1 Introduction 2 Experimental environment 3 Server-side performance evaluation Single-Thread environment Cache performance Multi-Thread server 4 Reduce the signature impact 5 Conclusion ACM ICN 2016 Server-side performance evaluation of NDN 8 / 18

  9. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Single-Thread environment SHA-256 hash Throughput (packet/s) 10000 100 Signing process 8000 80 %CPU 6000 60 Like the available NDN tools 4000 40 2000 20 0 0 1024 2048 4096 8192 Interpretations Payload (octet) Throughput %CPU NFD server NFD limits SHA-256 throughput: %CPU client %CPU server %CPU NFD client Decent performance: SignatureSha256WithRsa Throughput (packet/s) 600 100 500Mbps with 8K payload 500 80 400 %CPU 60 300 40 But no authentication 200 20 100 0 0 The server limits RSA throughput: 1024 2048 4096 8192 Payload (octet) 34Mbps with 8K payload Throughput %CPU NFD server %CPU client %CPU server %CPU NFD client ACM ICN 2016 Server-side performance evaluation of NDN 9 / 18

  10. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Cache performance Local cache Throughput (packet/s) 35000 100 Pre-condition 30000 80 25000 %CPU 60 20000 Caches are preloaded with Data 15000 40 10000 20 5000 0 0 Results 1024 2048 4096 8192 Payload (octet) Cache throughput is much faster: Throughput %CPU NFD client %CPU client Up to 1.8Gbps for local cache Distant cache Throughput (packet/s) 12000 100 But 670Mbps for distant cache 10000 80 8000 %CPU 60 6000 When local node forwards packets: 40 4000 20 2000 Additional PIT/FIB lookup 0 0 1024 2048 4096 8192 Payload (octet) Forwarding has a high cost Throughput %CPU NFD client %CPU client %CPU NFD server ACM ICN 2016 Server-side performance evaluation of NDN 10 / 18

  11. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Multi-Threaded producer 450000 400000 Observations 1000 %CPU x nb logical cores (log scale) 350000 Adding threads increases throughput: 300000 Throughput (Kbps) x6,7 with 8 signing threads 250000 x11,6 with all logical cores 200000 100 150000 Can saturate NFD with 25 threads: 100000 400Mbps with 8K payload 50000 Heavy load for Data generation 0 10 2 4 8 16 32 ⇒ Problem for real-time applications # signing thread ⇒ Possible improvements ? Throughput %CPU NFD server %CPU client %CPU server %CPU NFD client ACM ICN 2016 Server-side performance evaluation of NDN 11 / 18

  12. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Outline 1 Introduction 2 Experimental environment 3 Server-side performance evaluation 4 Reduce the signature impact Improve signing function Change default signing algorithm Increase packet size Improvements vs default 5 Conclusion ACM ICN 2016 Server-side performance evaluation of NDN 12 / 18

  13. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Improve signing function SignatureSha256WithRsa processing time (1000 samples, 4 Threads) Frequency (in percents) 20 Statement Original function 18 Custom function 16 14 For each Data packet: 12 10 8 Find key pair 6 4 2 Compute SignatureInfo 0 1700 1800 1900 2000 2100 2200 2300 2400 processing time (in us) 2 hashs computations SignatureSha256WithEcdsa processing time (1000 samples, 4 Threads) Load public and private keys 60 Frequency (in percents) Original function 50 Custom function ⇒ Can be done once and for all 40 30 20 Speed up 10 0 13% for RSA or 20% for ECDSA 800 850 900 950 1000 1050 1100 1150 1200 1250 1300 processing time (in us) ACM ICN 2016 Server-side performance evaluation of NDN 13 / 18

  14. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Change default signing algorithm 480000 1600 420000 1400 %CPU x nb physical cores Available asymmetric algorithms Throughput (Kbps) 360000 1200 300000 1000 1 RSA (1024, 2048 ) 240000 800 180000 600 2 ECDSA(256, 384) 120000 400 60000 200 0 0 RSA-1024 RSA-2048 ECDSA-256ECDSA-384 Throughput %CPU Interpretations Lowering the key size can help tiny servers to serve more users ECDSA-256 seems to be a better solution for servers since it has comparable security lvl (but is harder to verify for clients) ACM ICN 2016 Server-side performance evaluation of NDN 14 / 18

  15. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Increase packet size Hypothesis Current limit size: 8800 Bytes 1 × 10 6 7000 900000 Throughput (packet/s) 6000 Throughput (Kbps) 800000 Fewer signatures per content: 5000 700000 600000 4000 Reduce computation cost 500000 3000 400000 300000 2000 Interesting for big contents 200000 1000 100000 0 0 8192 16384 32768 Consequence payload (octet) Throughput (packet/s) Throughput (kbps) Speed up NDN throughput 900Mbps with 32k payload ACM ICN 2016 Server-side performance evaluation of NDN 15 / 18

  16. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Improvements vs default 1 × 10 6 900000 Throughput (Kbps) 800000 700000 600000 500000 400000 300000 200000 100000 0 0 200 400 600 800 1000 1200 1400 1600 CPU core usage (percents) (RSA-2048, 8192, default sign function) (ECDSA-256, 32768, custom sign function) Great throughput increase per core: From 30 to 200 Mbps/core (x6,7) Need less cores to saturate NFD: Only 5 cores against 14 for default RSA (9 for ECDSA-256) ACM ICN 2016 Server-side performance evaluation of NDN 16 / 18

  17. Introduction Experimental environment Evaluation Reduce the signature impact Conclusion Outline 1 Introduction 2 Experimental environment 3 Server-side performance evaluation 4 Reduce the signature impact 5 Conclusion ACM ICN 2016 Server-side performance evaluation of NDN 17 / 18

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend