ppt

197
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
197
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ppt

  1. 1. Reliable File Transfer: Lessons Learned Bill Allcock, ANL Ravi Madduri, ANL
  2. 2. Overview <ul><li>Quick Overview of the Service </li></ul><ul><li>Design Issues </li></ul><ul><ul><li>Lifetime Management </li></ul></ul><ul><ul><li>Virtualization </li></ul></ul><ul><ul><li>Service Data Elements </li></ul></ul><ul><li>Implementation Issues </li></ul><ul><ul><li>SOAP Processing Issues </li></ul></ul><ul><ul><li>Standardization </li></ul></ul><ul><ul><li>Avoid Language specific Types </li></ul></ul><ul><ul><li>Anyhelper API </li></ul></ul><ul><ul><li>Fault Tolerance </li></ul></ul>
  3. 3. RFT in Action Registry * The scenarios in this presentation are offered as examples and are not prescriptive 1. A Grid Service Container is started up; It contains an RFT Factory service; The RFT Factory service registers itself RFT Factory Grid Service Container
  4. 4. RFT in Action Client Registry * The scenarios in this presentation are offered as examples and are not prescriptive 2. From a known registry, the client discovers a factory by querying the Service data of the registry RFT Factory Grid Service Container
  5. 5. RFT in Action Client 3. The client calls the createService operation on the factory and passes in a TransferRequest RFT Factory Grid Service Container * The scenarios in this presentation are offered as examples and are not prescriptive
  6. 6. RFT in Action Client RFT Factory Grid Service Container RFT Service Instance - Start the Instance - Deserialize XML to Java - Write Request via JDBC - Persist Service State 4. The instance is started, and the factory returns a locater * The scenarios in this presentation are offered as examples and are not prescriptive
  7. 7. RFT in Action Client RFT Factory Grid Service Container RFT Service Instance - Start the Instance - Deserialize XML to Java - Write Request via JDBC - Persist Service State 5. Client calls Start(), subscribes to notificaitons, etc. * The scenarios in this presentation are offered as examples and are not prescriptive
  8. 8. RFT in Action <ul><li>Service is OGSI compliant </li></ul><ul><li>Uses existing GridFTP (non-OGSI) protocols and tools to execute 3 rd Party Transfer for the user </li></ul><ul><li>Provides extensive state transition notification </li></ul>GridFTP Server GridFTP Server RFT Service Instance * The scenarios in this presentation are offered as examples and are not prescriptive
  9. 9. Lifetime Management <ul><li>Lifetime management is a key aspect of OGSI </li></ul><ul><li>Was not intuitively clear how to handle this for “disconnected” services </li></ul><ul><li>Our (perhaps not optimal) solution is to give it an indefinite lifetime </li></ul><ul><li>Should there be an activity monitor? </li></ul><ul><ul><li>Does that really solve the problem? </li></ul></ul><ul><ul><li>Any other ideas? </li></ul></ul>
  10. 10. Virtualization <ul><li>Another Key Design Issue in services </li></ul><ul><li>We virtualize data movement </li></ul><ul><ul><li>It works, LBL and ANL have interoperable implementation </li></ul></ul><ul><ul><li>Need to standardize… </li></ul></ul><ul><li>Data Services Virtualization from DAIS </li></ul><ul><ul><li>Should we pass around GSHs of file services rather than URLs? </li></ul></ul><ul><li>Granularity </li></ul><ul><ul><li>Single file .vs. Multi-file .vs. service composition </li></ul></ul>
  11. 11. Service Data Elements <ul><li>A huge improvement over the non-OGSI services </li></ul><ul><li>Information Services are (should be) baked in to the services </li></ul><ul><li>Defined both push (event notification) and pull (full transfer status) SDEs </li></ul><ul><li>Need to be cognizant of size, frequency, and performance of notifications </li></ul><ul><li>Lots of interesting possibilities: bandwidth, errors, network status, etc.. </li></ul>
  12. 12. Implementation Issues <ul><li>SOAP Deserialization </li></ul><ul><ul><li>Deserialization can be a HUGE issue. Our original (very simple) XML could take up to 30 minutes to process. </li></ul></ul><ul><ul><li>A straight forward change reduced that drastically. </li></ul></ul><ul><ul><li>SOAP engine also needs to be looked at. </li></ul></ul><ul><li>Standardization </li></ul><ul><ul><li>Critical for success </li></ul></ul><ul><ul><li>Will be moving to the OGSI-Agreement interface </li></ul></ul>
  13. 13. Implementation Issues (cont.) <ul><li>Language Specific Data Types </li></ul><ul><ul><li>Avoid them (I.e. Java vector type) </li></ul></ul><ul><ul><li>A python based service would not be able to deserialize that. </li></ul></ul><ul><li>AnyHelper API </li></ul><ul><ul><li>Will deserialize any general XML blob that utilizes basic types. </li></ul></ul>
  14. 14. Implementation Issues (cont.) <ul><li>Fault Tolerance </li></ul><ul><ul><li>Multiple levels of Fault tolerance </li></ul></ul><ul><ul><li>GridFTP will handle remote failures </li></ul></ul><ul><ul><li>RFT provides fault tolerance of request via JDBC compliant database </li></ul></ul><ul><ul><li>Service container provides instance fault tolerance </li></ul></ul><ul><ul><li>We write only the primary key into the wsdd file to avoid slowing down container restart. </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×