[dtn-interest] Comments on the bundling draft
Manikantan Ramadas <mramadas@masaka.cs.ohiou.edu> Sun, 19 December 2004 22:07 UTC
Received: from masaka.cs.ohiou.edu (masaka.cs.ohiou.edu [132.235.3.154]) by webbie.berkeley.intel-research.net (8.11.6/8.11.6) with ESMTP id iBJM78114147 for <dtn-interest@mailman.dtnrg.org>; Sun, 19 Dec 2004 14:07:09 -0800
Received: from masaka.cs.ohiou.edu (localhost [127.0.0.1]) by masaka.cs.ohiou.edu (8.12.10+Sun/8.12.8) with ESMTP id iBJM73jO003486 for <dtn-interest@mailman.dtnrg.org>; Sun, 19 Dec 2004 17:07:03 -0500 (EST)
Received: (from mramadas@localhost) by masaka.cs.ohiou.edu (8.12.10+Sun/8.12.10/Submit) id iBJM6st3003485 for dtn-interest@mailman.dtnrg.org; Sun, 19 Dec 2004 17:06:54 -0500 (EST)
Date: Sun, 19 Dec 2004 17:06:54 -0500
From: Manikantan Ramadas <mramadas@masaka.cs.ohiou.edu>
To: DTNRG <dtn-interest@mailman.dtnrg.org>
Message-ID: <20041219220654.GD992@masaka.cs.ohiou.edu>
Mime-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha1"; protocol="application/pgp-signature"; boundary="lMM8JwqTlfDpEaS6"
Content-Disposition: inline
User-Agent: Mutt/1.4.1i
Subject: [dtn-interest] Comments on the bundling draft
Sender: dtn-interest-admin@mailman.dtnrg.org
Errors-To: dtn-interest-admin@mailman.dtnrg.org
X-BeenThere: dtn-interest@mailman.dtnrg.org
X-Mailman-Version: 2.0.13
Precedence: bulk
List-Help: <mailto:dtn-interest-request@mailman.dtnrg.org?subject=help>
List-Post: <mailto:dtn-interest@mailman.dtnrg.org>
List-Subscribe: <http://mailman.dtnrg.org/mailman/listinfo/dtn-interest>, <mailto:dtn-interest-request@mailman.dtnrg.org?subject=subscribe>
List-Id: Delay Tolerant Networking Interest List <dtn-interest.mailman.dtnrg.org>
List-Unsubscribe: <http://mailman.dtnrg.org/mailman/listinfo/dtn-interest>, <mailto:dtn-interest-request@mailman.dtnrg.org?subject=unsubscribe>
List-Archive: <http://mailman.dtnrg.org/pipermail/dtn-interest/>
Some thoughts/comments/suggestions on draft-irtf-dtnrg-bundle-spec-02.txt : * Sec 2.3.2 We might need a RegistrationError.indication primitive to serve the case (for example) if the default failure action requested of deferring bundle delivery until a period of passive or active reception by the application was unacceptable to the bundle agent (for storage or other administrative considerations). A bundle-agent may also choose to reject a request by the application to run a procedure provided by the application while deferring bundles for security reasons, say. Besides the Register.request, a Change_registration.request requesting changes as in the above examples, may also deserve a RegistrationError.indication. * Sec 2.5.2 II para, II line, may be you want to call this one CancelBundle.request to be in Sync. with the title as we have with all other request primitives? Just caught my eye, thats all. * Sec 2.5.10 SendError.indication : Since the bundling application uniquely refers to each Send request with a SendTokenBinding, isn't it enough if we just return the SendTokenBinding parameter instead of all those parameters we are returning? * Closing out Section 2, May be we need a table(s) of reason-codes to be sent back as a parameter along with SendError.indication and RegistrationError.indication primitives? Reason-codes for SendError.indication could include reasons like : o No route to host (ever) o Can't meet lifespan (if the bundle agent was aware of the link schedules) While RegistrationError.indication could include reason-codes for stuff like : o Can't defer delivery o Can't run user-specified procedure * This is just a curiosity question: Why have we left Reserved spaces for bundle header type values interspersed like 0x03, 0x04, 0x06 instead of having all the Reserved values towards the end? * Sec 3.3, ASCII diagrams illustrating bit allotment for Class of Service Flags and Payload Security would be nice! * Sec 3.7. This has been raised in a recent thread on DTN Security. But just for the sake of completeness : we need to clearly say what happens under reactive fragmentation when bundles authentication breaks at the receiver. Although reactive fragmentation is likely to be a rather corner case (at least for links with relatively long uptimes), we go thru' all this pain just to make sure NOT to lose bits that made all this way but were corrupted just because the link went down right in the middle of transmission, right? But this is all useless if the receiving bundle agent is going to throw such a fragmented bundle anyways since it was inauthentic. * Sec 4.2 Step 1, last-but-1 line : you mean the "sending bundle agent" here right? Or, I don't understand whats going on here. * Sec 4.4 Bundle Fowarding : Before beginning with Step 2, how do we handle cases such as o This bundle must have taken the wrong path to reach us because we have no route to the destination region (ever) o We have a route to the destination region, but the link is down now, and based on link schedules we know that we can't meet the TTL when the link would become available next. In such a case, it seems good not to bother saving the bundle, but rather send back an error message. * Sec 4.5.1 Bundle Fragmentation, towards the end when we discuss reactive fragmentation. All of this discussion seems to assume that reactive fragmentation happened while transmitting the final payload section of the bundle. May be a few lines on what to do when the link went down while transmitting say like the Dictionary Header could be useful? * Sec 5.1 Table 5. This one is rather a matter of style. The table only lists the value of status flag while the discussion below the table uses clauses like "if the bundle fragment bit is set..", "if the bundle-forwarded bit is set.." etc instead of saying "if the value was 0x80.." etc. While it is clear to me that the bundle fragment bit is the MSB and the bundle-forwarded bit is the third LSB, may be adding a "Bit" column by the side of the "Value" column or having a simple ASCII diagram instead of the table illustrating the flag assignment, would make me happy. But this is certainly a low priority objection/comment. * Sec 5.2 Table 7 The values 0x03 - 0x06 clearly don't go with a Status flag 0x01 (Custody Transfer Succeeded) (Table 6). May be we need a Status flag assignment in Table 6 that stands for Custody Transfer Failed (may be 0x00)? - Mani. -- "'Beauty is truth, truth beauty,'--that is all Ye know on earth, and all ye need to know." - John Keats ____________________________________________________________________ * Manikantan Ramadas * IRG, OU * http://irg.cs.ohiou.edu/~mramadas * ____________________________________________________________________
- Re: [dtn-interest] Comments on the bundling draft Scott Burleigh
- [dtn-interest] Comments on the bundling draft Manikantan Ramadas