Download presentation
Presentation is loading. Please wait.
Published byKelly Pope Modified over 9 years ago
1
EGEE is a project funded by the European Union under contract IST-2003-508833 Data Management Data Access From WN Paolo Badino (paolo.badino@cern.ch) Ricardo Rocha (ricardo.rocha@cern.ch) JRA1 all-hands meeting, 29-June-2004 www.eu-egee.org
2
JRA1 all-hands meeting, 29-June-2004 - 2 glite I/O Goals Provides a library for accessing files stored on a remote a SE in a transparent way Release Plan First version foreseen for PM03 Two weeks late…
3
JRA1 all-hands meeting, 29-June-2004 - 3 Guiding Principles Based on existing libraries Aiod, gfal, rfio, dcap Stable Quickly deployable POSIX-like I/O API Remote open, read, write Minimum impact on existent code Extensible Plug-ins and callouts to support additional protocols and authorization models
4
JRA1 all-hands meeting, 29-June-2004 - 4 API POSIX-like I/O API glite_handle glite_open(char * name, int32 flags, int32 mode) int32 glite_read(glite_handle fh, void * buf, size_t count) int32 glite_write(glite_handle fh, void *buf, size_t count) int32 glite_lseek(glite_handle fh, int64 offset, int32 whence) int32 glite_close(glite_handle fh) int64 glite_size(glite_handle fh) Support both GUID and LFN name = “guid:2cd59291-7ae7-4778-af6d-b1f423719441” name = “lfn:egee/foo12345”
5
JRA1 all-hands meeting, 29-June-2004 - 5 Example int main(int argc, char **argv){ int i; glite_handle fh; char buf[BUFF_LEN]; int rc; if ((fh = glite_open (argv[1], O_RDONLY, 0)) == NULL){ return -1; } rc = glite_read (fh, buf, BUFF_LEN); if (rc < 0){ (void) glite_close (fh); return -1; } //... if ((rc = glite_close (fh)) < 0) { return -1; } return 0; }
6
JRA1 all-hands meeting, 29-June-2004 - 6 Flow glite-io client rfio glite-io daemon FAS SRM Authorization callout Protocol Plug-in Name Resolution callout GUID ACL SURL TURL RC GUID SURL LFN FC LFN GUID AlienIOclient aiod gfal LFN HANDLE SE
7
JRA1 all-hands meeting, 29-June-2004 - 7 Open Issues Is Read-Only access ok for now? Writes (later): updating is not a problem, synchronization with other replicas is. Depends on semantics of file update policy – single master, multi-master with reconciliation, etc. Creation of a new file through this interface? We think not.. Problems: glite_open (name, O_WRONLY | O_CREAT, mode) Is name a GUID/LFN? Should the file name already be registered or should it be inserted into the File Catalog later? When should the file be inserted in Replica Catalog? During open or close?
8
JRA1 all-hands meeting, 29-June-2004 - 8 File Access Service File Access Service (FAS) Authz Framework CLIENT SITE POLICYVO POLICY GUIDUSER (RWX)GROUP (RWX)OTHER (RWX) ACL PRINCIPAL (RWX) Storage Element VOMS CERTIFICATE GROUPS / ROLES Transfer FILE request GET PERMISSIONS SRM User Mapping File Transfer Service XFER Buffer Use protocol X
9
JRA1 all-hands meeting, 29-June-2004 - 9 Security Implementation Authentication GSI / Proxy Certificates Authorization VOMS – Attribute Certificates Authz Framework XACML compatible End of summer (alpha / beta before that) Toolkits Java – Java CoG C++ – gSOAP with GSI plugin Delegation JRA3 magic
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.