Subject: Re: [mobile-ip] Editorial comments on Draft 16 - Sections 1-5

From: Samita Chakrabarti <[email-masked]>
Date: Wed, 24 Apr 2002 14:02:51 -0700 (PDT)

Hello  Jari,

> > C5.1.5:
> > The home cookie is a 128-bit field aligned on a 32-bit boundary.  I do
> > believe it should be on a 64-bit boundary.
> 
> 
> There's a tradeoff on making the cookie aligned on a 64 bit boundary
> vs. spending 8 reserved bytes vs. not saving any bits for flags (though
> flags can be simulated with options). I'm thinking we should spend the 8
> bytes. Comments?
> 

I am not sure if I understand your point. Could you please clrify ?

The home cookie 128 bit field aligned on a 32-bit boundary seems correct
to me. 

> 
> > C5.2.1P8:
> > An odd question - if all parameters must start on 8-byte boundaries,
> > why don't we make all message end on 8-byte boundaries.  Is is to
> > simply make those message without a parameter take up minimum space.
> > When considering those that require a parameter, though, does it make
> > any since to 'require' padding.  Wouldn't that space be better spent
> > as reserved space.
> 
> Yes. If we do this, it might make sense to mandate that all parameters
> are also multiple of 8 bytes, making pad1 and padn unnecessary. Comments?

The draft 16 specifies that the MH + messages would have to be multiple of
8 bytes or octets. Thus, if there is no parameter value, then only we need
to pad it with 4 bytes to make it multiple of 8 bytes.

Most of the cases, MH message will use parameter values (HOT[I]/COT[I],
 BR, BU, BACK),
so hardly we need to use padding in MH messages. Will the newly proposed
Binding error messages  use any parameters, such as authenticator ?

In that case, I find the current alignment requirement is good for minimum
usage of space (i,e 'MH + messages' are of multiple of 8 bytes).

Thanks,
-Samita

---

From: Robert Chalmers <[email-masked]>
Date: Wed, 24 Apr 2002 16:34:06 -0700

Samita and Jari,

> The home cookie 128 bit field aligned on a 32-bit boundary seems correct
According to RFC 2460, Section 4: 'fields of width n octects are placed
at an integer multiple of n octects from the start of the header, for n
= 1, 2, 4, or 8'

A 128-bit value would be n=16. Alignment is only 'mandated' up to n=8.
So in my mind, any value of n > 8 should be aligned as if n = 8 (a
64-bit boundary). I think if you look at any IPv6 address (128-bit)
that's used in standard headers, they are all aligned on 64-bit
boundaries. I'm not absolutely sure about any of this, of course.

> to pad it with 4 bytes to make it multiple of 8 bytes.
It also states in Section 5.2.1 that parameters must start and end on
8-byte boundaries. That's what I was talking about here. Should the text
be changed to read that that 'set' of parameters must start and end on
8-byte boundaries? Now it reads as each parameter must do so.

So, take the BACK as an example. It ends on a 32-bit boundary (n=4), but
requires that the Authentcation Param be present which must start on a
64-bit boundary (n=8). This absolutely requires 4 bytes of padding in
every BACK message.

> usage of space (i,e 'MH + messages' are of multiple of 8 bytes).

ttyl,
Bob

-- 
/****************************************************************

 Robert Chalmers
 UCSB Computer Science Doctoral Candidate
 Network and Multimedia Systems Lab (NMSL)

 "My heart is in the code, but my soul lies in the process"
 
 | [email-masked] || http://www.cs.ucsb.edu/~robertc/ |

*****************************************************************/