On Nov 15, 2014, at 7:40 AM, Juliusz Chroboczek 
<j...@pps.univ-paris-diderot.fr> wrote:
> Mark, please scratch my previous offer to implement a stub-only variant of
> Babel.  Please let me know how much flash and RAM you give me, and I'll
> do my best to fit Babel into that amount.

In the impromptu meeting on Thursday, I believe that James Woodyatt said that 
his nodes have 64K of ram and that code executes-in-place out of ROM.  He 
didn't say how much of that 64K is currently used for data for other parts of 
the system.

You have said that the Babel implementations have a sole requirement for libc, 
but I don't know if they also require Linux?  

My understanding is that the Nest boxes have their own mechanisms for routing 
between themselves, and that Nest does not plan to change that protocol for 
home deployments.  They are hoping that one or more of their units within a 
home deployment will be able to connect to a homenet network, providing access 
to the homenet without running a homenet routing protocol on all of their nodes 
or serving as a transit network for other traffic within the home.

I think you may see a similar requirement for SEP (Smart Energy Profile) nodes 
that run RPL for routing within a IEEE 802.15.4 low-power wireless network.  
They will continue to route among themselves, but may want a way to attach 
their stub network to a homenet network.  Some of these nodes have similar 
capabilities to the Nest nodes that James has described.

>> I mean, babel, for example, is like, 61k, on mips with the sole
>> dependency on libc.
> 
> I'm seeing 90kB on AMD64.  That includes three extensions to the core
> protocol (source-specific routing, diversity routing, support for overlay
> networks), but not the cryptographic MAC extension.

Are the current Babel implementations designed to execute-in-place out of ROM?
> 
> Memory usage is less than 100kB in typical deployments.  A (pessimistic)
> upper bound on memory usage (not counting malloc overhead) in is given by
> 
>   (88 * neighbours + 48 * total_routers) * redistributed_prefixes
> 
> where a redistributed prefix is counted once per redistributing router
> (e.g. two distinct edge routers redistributing the default route counts as
> two).  This means that if you have a network with 100 routers advertising
> 400 prefixes, a router with 5 neighbours needs at most 200 kB of RAM.

I don't know what numbers we are using to consider scaling for homenet 
networks.  Mark, are there back-of-the-envelope numbers for what we consider "a 
typical homenet" and a "largest possible homenet" that we could use to 
determine how much RAM Babel would be likely to use in those cases?

Margaret

_______________________________________________
homenet mailing list
homenet@ietf.org
https://www.ietf.org/mailman/listinfo/homenet

Reply via email to