xrootd update andrew hanushevsky stanford linear accelerator center 15-feb-05

24
xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05 http://xrootd.slac.stanford.edu

Upload: leo-parker

Post on 13-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

xrootdUpdate

Andrew HanushevskyStanford Linear Accelerator Center

15-Feb-05

http://xrootd.slac.stanford.edu

Page 2: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 2: xrootd

Goals

High Performance File-Based Access Scalable, extensible, usable

Fault tolerance Servers may be dynamically added and removed

Flexible Security Allowing use of almost any protocol

Simplicity Can run xrootd out of the box

No config file needed for non-complicated/small installationsGenerality Can configure xrootd for ultimate performance

Meant for intermediate to large-scale sitesRootd Compatibility

Page 3: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 3: xrootd

How Is high performance achieved?

Rich but efficient server protocol Combines file serving with P2P elements Allows client hints for improved performance

Pre-read, prepare, client access & processing hints, Multiplexed request stream

Multiple parallel requests allowed per client

An extensible base architecture Heavily multi-threaded

Clients are dedicated threads whenever possible Extensive use of OS I/O features

Async I/O, memory mapped I/O, device polling, etc. Load adaptive reconfiguration.

Page 4: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 4: xrootd

How performant is it?

Can deliver data at disk speeds (streaming mode) Assuming good network, proper TCP buffer size, and

asynchronous I/O

Low CPU overhead 75% less CPU than NFS for same data load

General requirements Middling speed machine NIC matched

Rule of thumb: 1MHz/1Mb + 20% (minimum) The more CPU’s the better

1GB of RAM

Page 5: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 5: xrootd

Measured performance

Page 6: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 6: xrootd

Xrootd vs. NFS (2/9/2005 - Gregory Schott, DESY)

Page 7: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 7: xrootd

xrootd Server Architecture

Protocol LayerProtocol Layer

Filesystem Logical LayerFilesystem Logical Layer

Filesystem Physical LayerFilesystem Physical Layer

Filesystem ImplementationFilesystem Implementation

Protocol & Thread ManagerProtocol & Thread Manager

(included in distribution)

p2p heart

Page 8: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 8: xrootd

Acronyms, Entities & Relationships

datadataxrootd

olbdxrootd

olbd

Data Clients

Redirectors

Data Servers

MM

SS

ctlctl

olbdolbd Control Network

Managers & Servers(resource info, file location)

xrootdxrootd Data Network

(redirectors steer clients to dataData servers provide data)

Page 9: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 9: xrootd

Closer Look Into Now & The Future

Adaptive Reconfiguration

Load Balancing

Fault Tolerance

Proxy Services

Security & Privacy

Monitoring & Client Tuning

File Services (MSS, SRM, & Grid)

Page 10: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 10: xrootd

Adaptive Reconfiguration

Server dynamically adjusts configuration Number of threads Count and sizes of buffers and objects

Finally got the algorithms right 400 Clients can be accommodated in about 80MB RAM

High latency connection rescheduling Affects how async I/O is done

Future:Future: Make algorithms CPU-speed sensitive Appropriate time/space trade-off

Page 11: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 11: xrootd

Load Balancing

xrootd scales in multiple dimensions Can run multiple load balanced xrootd’s

Architected as self-configuring structured peer-to-peer (SP2) data servers

Servers can be added & removed at any time Client (XTNetFile) understands SP2 configurations

xrootd informs client when running in this mode Client has more recovery options in the event of failure

Page 12: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 12: xrootd

Example: SLAC Configuration

client machinesclient machines

kan01 kan02 kan03 kan04 kanxx

bbr-olb03 bbr-olb04 kanolb-a

Page 13: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 13: xrootd

Next Load Balancing Step

Fully deploy scalable p216p architecture

Accommodate swarms of up to 64,000 servers Perhaps more….

Self-organizing (no config file changes needed) Servers self-organize into cells of 64 Cells cluster into a minimum spanning tree

Testing alpha code now Some message semantics still need work

Page 14: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 14: xrootd

Fault Tolerance

Server and resources may come and go Uses load balancing to effect recovery

New servers can be added at any time for any reason Files can be moved around in real-time

Client simply adjust to the new configuration XTNetFile object handles recovery protocol

Future:Future: Provide Protocol UnResp interface Can be used to perform reactive client scheduling

Page 15: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 15: xrootd

Bottom Heavy System

The olbd/xrootd architecture is bottom heavy Allows super-rapid client dispersal Ideal scaling characteristics

Page 16: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 16: xrootd

Current Proxy Support

client machinesclient machines

data01 data02 data03 data04

proxy xrootd

IN2P3

INDRA22

3322

FirewallFirewall

olbd

Page 17: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 17: xrootd

Future:Future: Comprehensive Proxies

Current support addresses external access Need solution when clients also behind firewall

Allow proxy/proxy connections Will need direct connections for performance

Local Proxy xrootd

Remote Proxy xrootd

client

data02

data03

data04

Page 18: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 18: xrootd

Flexible SecurityNegotiated Security Protocol Allows client/server to agree on protocol

Can be easily extended Multi-protocol authentication support

Protocols implemented as dynamic plug-insFuture:Future: Add GSI and encryption interfaces Foundation for distributed proxy security Accommodates data encryption for privacy

Geri Ganis, CERN, working on this

Page 19: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 19: xrootd

Scalable Proxy Security

SLAC PROXY RAL PROXY

3

2 2

1

11 Authenticate & develop session key22 Distribute session key to authenticated subscribers

33 Data servers can log into each other using session key

Data ServersData Servers

Page 20: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 20: xrootd

Monitoring

Today xrootd can provide event traces Login, file open, close, disconnect Application markers and client information All read/write requests

Highly scalable architecture usedFuture:Future: Complete toolkit for utilizing data Critical for tuning applications

Jacek Becla, SLAC, working on this

Page 21: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 21: xrootd

MSS SupportLightweight agnostic interfaces provided oss.mssgwcmd command

Invoked for each create, dirlist, mv, rm, stat oss.stagecmd |command

Long running command, request stream protocol Used to populate disk cache (i.e., “stage-in”)

xrootd(oss layer)

mssgwcmd

MSSstagecmd

Page 22: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 22: xrootd

SRM DirectionMSS Interface ideal spot for SRM hook Can simply use existing hooks

mssgwcmd & stagecmd Define new long running hook

oss.srm |command Process all external disk cache management requests

xrootd(oss layer)

srm

MSS

Page 23: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 23: xrootd

Future:Future: SRM

Great interest in SRM Provides external data management interface

MSS and Grid Unfortunately, SRM interface in flux

Heavy vs light protocol Two sites looking at providing SRM layer

BNL IN2P3

Will work with LLNL team to speed effort

Page 24: Xrootd Update Andrew Hanushevsky Stanford Linear Accelerator Center 15-Feb-05

15-Feb-05 24: xrootd

Conclusion

xrootd provides high performance file access It appears to be one of the best in it’s class

Unique performance, usability, scalability, security, compatibility, and recoverability characteristics

One server can easily support over 600 parallel clients New software architecture

Challenges Maintain scaling while interfacing to external systems

Opportunities Ability to provide data access at the LHC scale.