I have read through the current draft of the specification.  My big concern after reading this is the way in which a DMI factory is going to get its job done.

Consider what a factory has to do.  It is given a source, S0, and a sink, S1, to move data between, as well as other important information.  But let's concentrate on the source and sink aspects at this point. The factory also support doing transfers using one or more transfer mechanisms/protocols, call them P0...PN.  The fundamental problem facing the factory is to find which of the Pi are supported by both S0 and S1 and which will meet the QoS goals of the transfer.  I am struggling to understand how the factory can find which of the Pi are mutually supported.  The current specification provides no architected mechanism for making this determination.

With no architected mechanism, the factory must have a means, presumably specific to each Pi, of asking S0 and S1 if they support Pi.  I suppose that this is a solution but doesn't it then place a requirement on the specification of each possible transfer mechanism to provide such an interface?  Do all transfer mechanisms have this, especially those already with approved specifications or, even, de facto specifications?

Another approach would be for the factory to run through the Pi trying to create a transfer using that Pi.  Possible, does not add additional requirements on the specifications of transfer protocols but it sure seems inefficient to me.

Is there some other way of doing this without placing something in the DMI spec?

In the Data Architecture document (http://forge.ogf.org/sf/go/doc14053?nav=1) we explicitly attacked this problem. We proposed a simple interface provided by each data service that allows the DMI factory to get a list of the transfer protocols supported by that service.  This seemed to us to be simple to specify, effective in solving the problem and easy to implement in a data service.  I suggest that DMI take this approach and architect such an inquiry interface between DMI factories and sources/sinks.

Comments?  Suggestions?


Allen Luniewski
IBM Cross Brand Services
IBM Silicon Valley Laboratory
555 Bailey Ave.
San Jose, CA 95141

408-463-2255
408-930-1844 (mobile)