Information Technology Reference
In-Depth Information
seeks for adaptor implementations on startup, and registers adaptors in the Adaptor
Registry . Adaptors are associated with the protocols they can handle; one adaptor
can support more than one protocol or storage resource, respectively.
Web service operation requests sent to the Blacktop use Uniform Resource
Identi
(files or folders). These resources are
of the form: protocol://host/path, where protocol speci
ers (URIs) to refer to storage resources (
es the protocol
used to communicate with the storage resource, host speci
es the location of the
storage, and path speci
file or a folder resides on the
storage. For example: gsiftp://gridftp.host.net/home/user/file.
dat refers to a
es the location where the
file.dat, in the subdirectory /home/user/ on host
gridftp.host.net accessible over GridFTP protocol. Based on the protocol
(scheme) part of the URI, the Blacktop can choose the appropriate adaptor in the
Adaptor registry, and dispatch the operation request. This is performed by the
Operation dispatcher component.
Connecting to a storage resource for the
file named
first time can be expensive due to a
number of required initial activities (e.g., creating clients, opening ports, creating
VOMS proxies, etc.). This cost can be avoided in subsequent accesses using ses-
sions . Blacktop creates a session container for each
to be passed to
the adaptor, which can store any objects related to the current session, to be reused
in subsequent calls. The Blacktop ensures that the same session container is passed
to the adaptor on subsequent requests from the same client, and also ensures that
objects within the container are properly closed on session timeout before being
discarded. These tasks are performed by the Session manager component.
In contrast to synchronous operations (such as list , mkdir , rmdir , delete ,
rename ), which are known to be completed when the operation response is
returned, the execution of copy and move operations may take a longer time (even
hours, which likely exceeds client sessions). Such asynchronous transfers are
performed simultaneously, and for this reason, copy/move operations return a
reference ( id ) of the related transfer just started. This id can be used to poll ( get-
State ) progress (bytes transferred) or state details information (transferring, done,
failed) about the task, or abort it ( cancel ), respectively. The Blacktop maintains,
creates, and passes a so-called transfer monitor object ( listener ) for each transfer to
the corresponding adaptor, through which progress and status information can be
updated by the related adaptors. Transfer monitors are managed by the Transfer
manager component.
An adaptor may declare to support copy operations itself between the handled
storage resources (e.g., an adaptor can exploit third-party transfer between GridFTP
servers or S3 regions). In this case, such a copy task is entirely delegated by the
Blacktop to the adaptor for optimum performance. In other cases, however,
Blacktop performs copy or move operations via streaming, by reading and writing
resource input and output streams (e.g., copy between storage resources managed
by different adaptors).
File uploads and downloads are performed via so-called aliases . Aliases are
unique, temporary HTTP URLs created on the Blacktop host, which can be read
(HTTP GET) or written (HTTP PUT or POST) over HTTP protocol. This interface
client session
Search WWH ::




Custom Search