file system access xrootd n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
File System Access (XRootd) PowerPoint Presentation
Download Presentation
File System Access (XRootd)

Loading in 2 Seconds...

play fullscreen
1 / 20

File System Access (XRootd) - PowerPoint PPT Presentation


  • 83 Views
  • Uploaded on

File System Access (XRootd). Andrew Hanushevsky Stanford Linear Accelerator Center 13-Jan-03. Goals. High Performance File-Based Access Scalable Extensible Mass Storage integration Flexible Security Dynamically Configurable Rootd Compatable. Achieving High Performance.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'File System Access (XRootd)' - sumi


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
file system access xrootd

File System Access(XRootd)

Andrew Hanushevsky

Stanford Linear Accelerator Center

13-Jan-03

goals
Goals
  • High Performance File-Based Access
  • Scalable
  • Extensible
  • Mass Storage integration
  • Flexible Security
  • Dynamically Configurable
  • Rootd Compatable

2: XRootd

achieving high performance
Achieving High Performance
  • Multi-threaded server
    • Ability to run multiple servers on one host
  • MRU polling
    • Last active connections serviced first
  • Sticky sockets
    • Socket/thread bound for “active” connections
  • Using high-performance oofs layer
    • Unlocked I/O, sync reduction, file descriptor partitioning

3: XRootd

achieving scalability
Achieving Scalability
  • Socket multiplexing
    • One connection per client/host
      • Requires stream id protocol extensions
  • Dynamic Load Balancing
    • Requires client redirection protocol extensions
  • Using scalable oofs layer
    • File reuse, idle closeouts, cached file system

4: XRootd

achieving extensibility
Achieving Extensibility
  • Opaque Information Protocol
    • Protocol extension allows client to relay outboard information to server
      • Messaging interface
      • Cache group
      • Request priority
      • Other things we haven’t thought of yet…

5: XRootd

achieving mss integration
Achieving MSS Integration
  • Using oofs layer
    • Already integrates with almost any MSS
      • No brainer

6: XRootd

achieving flexible security
Achieving Flexible Security
  • Negotiated Security Protocol Extensions
    • Allows client/server to agree on protocol
      • E.g., Kerberos, GSI, AFS Kerberos, etc.
  • Using oofs layer
    • Multi-protocol authentication support
    • Scalable authorization

7: XRootd

achieving configurability
Achieving Configurability
  • Servers must come up/down without harm
    • Part of dynamic load balancing
      • Requires client retry extension

8: XRootd

achieving compatability
Achieving Compatability
  • Client sensitive to server version number
    • Rootd servers default to base TNetFile class
    • XRootd servers use derived TNetFile class
  • Server requires client to turn on extensions
    • Base TNetFile class restricted to rootd ops
    • Derived TNetFile enables extensions
      • Multi-streaming, Redirection, Request Deferral, Generic Security, Opaque Information

9: XRootd

xrootd architecture

security

xrootd Architecture

application

Database Protocol Layer

xrootd

Filesystem Logical Layer

oofs

Filesystem Physical Layer

ooss

Filesystem Implementation

xfs

mss

10: XRootd

some details
Some Details
  • Compatible Protocol
    • Allows transparent use of rootd & xrootd
  • Multi-Streaming
    • Allows multiple files per connection
  • Cache File System
  • Dynamic Load Balancing
    • Client directed to “appropriate” server
  • Configurability & Recoverability

11: XRootd

compatible protocol
Compatible Protocol

Application

xrootd

XTNetFile

xrootd

rootd compability

TNetFile

rootd

12: XRootd

multi streaming
Multi-Streaming
  • Each open() assigned a stream number
    • Four character id that starts with 0-9
    • All requests/responses identify relevant stream
  • Non-open file requests use arbitrary id
    • Any four characters not starting with 0-9
    • E.g., stat(), mv(), unlink(), etc.
  • Parallel Multi-Streaming allowed
    • Client must explicitly enable it

13: XRootd

cache file system
Cache File System

Index Area

Optional data cache

Default data area

/databases/mydbfile

symlink

Naming convention

allows for

audit and index recovery

Multiple

Independent

Filesystems

/cache1/databases:mydbfile

Data Area

Any number

Any Size

Chosen based on free

space in LRU order

/cache2

/cache3

14: XRootd

dynamic load balancing

ufs

ufs

ufs

Dynamic Load Balancing

xrootd

Dynamic

Selection

xrootd

mss

client

xrootd

15: XRootd

dlb implementation

xrootd

xrootd

xrootd

(any number)

dlbd

dlbd

dlbd

dlbd

(any number)

xrootd

DLB Implementation

I do

subscribe

who has the file?

open again

open

Client

wait

try host:port

16: XRootd

configurability recoverability
Configurability & Recoverability
  • Go hand in hand
    • Configuration changes may be disruptive
    • Must be able to recover from dynamic configuration changes
  • Dynamic Load Balancing essential part

17: XRootd

recoverability
Recoverability
  • Whenever client looses r/o connection
    • Back to distinguished xrootd(s) for reselection
  • Whenever client looses r/w connection
    • Limited wait/retry loop on the same server
      • We will be working to improve this next year!
  • All handled in the XTNetFile class
    • Disruptions merely delay the client

18: XRootd

configurability
Configurability
  • Since we have recoverability…
    • Servers may come and go
      • New servers can be added at any time
      • Servers may be brought down for maintenance
      • Files can be moved around in real-time
  • Client will recover and adjust to the new configuration

19: XRootd

conclusion
Conclusion
  • Goals for rootd file access can be met
    • Most of this work relies on leveraging work done for the AMS
  • Compatability allows us to lobby the community for xrootd to become the default “rootd”

20: XRootd