Hi Erik: > > The challenge is that the RPLInstanceId is 8 bits and Rank is 16 bits. This much of the challenge can be absorbed by RPL. In most reasonable cases, we could can make the floor(Rank) 8 or less bits, and that's all we need to accomplish the purpose of this header.
> I realize that taking 48 bytes to carry 3 bytes of content (IP-in-IP plus a min size > option is 48 bytes) seems a bit silly. Most certainly. Some people will say that we can live without IP in IP. Other that we can make sure we always emit the compressed form which hopefully would not be a lot more than the original bits. > Has anybody discussed adding a header with just the 3 bytes you need > *before* the IP header? We've discussed using forms of tag switching from the beginning of the WG but there must be an IP based reference model before we start doing the tricks. As it goes, RPL till v07 was using the flow label, using a mutable but recoverable model. Let's see whether 6MAN allows us to make the field mutable in the first place. Pascal > -----Original Message----- > From: Erik Nordmark [mailto:[email protected]] > Sent: Wednesday, September 15, 2010 4:36 AM > To: Philip Levis > Cc: Pascal Thubert (pthubert); Carsten Bormann; [email protected]; [email protected]; > [email protected]; Brian E Carpenter > Subject: Re: [Roll] Flow Label: 12 bits mutable and 8 bits immutable > > On 08/11/10 04:41 PM, Philip Levis wrote: > > > Basically, RPL puts up to two pieces information in packets that it > > routes. The first is which routing topology this packet should be > > routed on: RPL supports multiple parallel topologies, e.g., one > > optimized for low latency and a second optimized for low energy. This > > information is called the RPLInstanceId. > > > > The second is information about the "cost" of the forwarder's route to > > the destination. This hop-by-hop "cost" information is called Rank. > > Rank is needed to detect routing loops: if a router receives a packet > > whose prior router's Rank is less than or equal to its own, Rank is > > not strictly decreasing and there may be a routing loop. > > > > Being able to embed this information in the flow label, rather than > > requiring additional headers and IP-in-IP, would greatly reduce header > > overhead. In RPL, we're often concerned about very short, such as 10 > > byte, packets, so this could be a big savings. > > > > The challenge is that the RPLInstanceId is 8 bits and Rank is 16 bits. > > I realize that taking 48 bytes to carry 3 bytes of content (IP-in-IP plus a min size > option is 48 bytes) seems a bit silly. > > Has anybody discussed adding a header with just the 3 bytes you need > *before* the IP header? > That avoids the overhead. The downside is that you need a new code point (for > demux) in the different layer2s that you want to run this on. > But it seems a lot simpler than trying to overload some existing IPv6 header > field. > > Erik -------------------------------------------------------------------- IETF IPv6 working group mailing list [email protected] Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6 --------------------------------------------------------------------
