260 likes | 365 Vues
This paper presents a comprehensive analysis of LDAP (Lightweight Directory Access Protocol) performance, focusing on experimental setup, methodology, and results. The study evaluates various performance metrics including latencies, server throughput, and the impact of system components on overall performance. Key findings reveal how directory size, entry size, and connection management affect performance and scalability. The results indicate that optimizing system configurations can lead to significant improvements, highlighting best practices for LDAP management aimed at enhancing service efficiency.
E N D
Measurement and Analysis of LDAP Performance Xin Wang(xwang@ctr.columbia.edu), Henning Schulzrinne, Dilip Kandlur, Dinesh Verma
Outline • Background • Experimental Setup • Test Methodology • Result Analysis • Related Work • Conclusion
Background • What is LDAP? • A directory service is a simplified database, primarily for high volume read • LDAP: Lightweight Directory Access Protocols. • A client-server model, over TCP/IP • Tree structure: entry, attributes, values • Operations: add, delete, modify, compare, and search.
Background (cont’d.) • LDAP for SLS Administration • Service level specification: type of service provided, traffic constraints, etc. • LDAP directory contains: SLS, policy rules, network provisioning information. • Decision entities download classification rules, service specifications, and poll service periodically. • Enforcement entities query rules from the decision entities and enforce them
Experimental Setup • Hardware: • Server: dual processor Ultra-2, 200 MHz CPUs, 256 MB main memory • Clients: Ultra1, 170 MHz CPU, 128 MB main memory • 10 Mb/s Ethernet • LDAP server: • OpenLDAP 1.2 • LDBM backend: A high performance disk-based database • Berkeley DB 2.4.14, dbcachesize: 10 MB cachesize: vary
Experimental Setup (cont’d) • LDAP Client
Test Methodology • Search for downloading policy rules • Search filter: interface address, policy object. • Default size: 10,000 entries, entry size 488 bytes • Search operation: • ldap_search, ldap_bind, ldap_search, ldap_unbind.
Performance Measures • Latencies: • Connect: ldap_open + ldap_bind • Processing: ldap_search + data transmitting • Response: ldap_open -> ldap_unbind • Server throughput
Performance Measures (cont’d) • Use latencies and throughput to evaluate: • Overall LDAP performance • Steps to improve system performance • How individual system components affect performance • System scalability and performance limits • Performance under update load
Components of LDAP Search Latency Client Server
Related Work • Mindcraft • Netscape Directory Server 3.0 (NSD3) Netscape Directory Server 1.0 (NSD1) Novell LDAP services (NDS) • 10,000 entry personnel DB • Pentium Pro 200 MHz, 512 MB RAM • All experiments are in memory • Throughput • NSD3: 183 requests/second • NSD1: 38.4 requests/second • NDS: 0.8 requests/second • CPU is found to be the bottleneck
Conclusion • General Results: • response latency 8 ms up to 105 requests/second • Maximum throughput 140 requests/second • 5 ms processing latency - 36% from backend, 64% from front end • Connect time dominates at high load, and limits the throughput • Disabling Nagle Algorithm reduces latency about 50 ms • Entry Caching: • for 10,000 entry directory caching all entries gives 40% improvement in processing time, 25% improvement in throughput
Conclusion (cont’d) • Scaling of Directory Size: • In memory operation, 10,000 -> 50,000: processing time increases 60%, throughput reduces 21%. • Out-of-memory, 50,000 ->100,000: processing time increases another 87%, and throughput reduces 23%. • Scaling of Entry Size (488 ->4880 bytes): • In-memory, mainly increase in front-end processing, i.e., time for ASN.1 encoding . Processing time increases 8 ms, 88% due to ASN.1 encoding, and throughput reduces 30%. • Out-of-memory, throughput reduces 70%, mainly due to increased data transfer time.
Conclusion (cont’d) • CPU: • During in-memory operation, dual processors improve performance by 40%. • Connection Re-use: • 60% performance gain when connection left open.