[En-Nut-Discussion] A few network related feature polls

Bernd Walter enut at cicely.de
Tue Nov 24 02:54:58 CET 2009


On Mon, Nov 23, 2009 at 04:21:56PM +0100, Harald Kipp wrote:
> Bernd Walter wrote:
> > My target is to get 6LoWPAN including forwarding from Ethernet running.
> > Hardware is a AT91SAM7X256/512 with CC2420 Module.
> 
> Interestingly we at egnite plan something similar. Our first idea was to
> implement ZigBee, but license issues makes this far less attractive.

That was the same reason why I never used ZigBee, but the ZigBee
modules always had been quite atractive.
About half a year ago I first heared about 6LoWPAN and was very excited,
because it was IP and I work with IPv6 since about 10 years.

> > So far I have two options available.
> > - Run a uIP thread on Nut/OS and catch all IPv6 packet.
> > - extend Ethernut to every required feature
> 
> Adam's license fits well and we can probably steal a lot from his code
> to extend the Nut/OS stack.

At least the MAC code should be able to port without problems and I
hope a lot of the header compression code can be taken as well.

> > The second is a lot more work, but more attractive in the long run.
> > Basicly it is a list of many features, which I'm unsure about current
> > development status.
> > The main points are:
> > - running multiple interfaces with multiple IPs
> 
> A little bit tricky, but not too difficult. At least routing is already
> prepared for more interfaces.

Well IPv6 is a bit more tricky if done completely.
Additoonal to the 128bit address you have a scope, which is a local
interface number.
Every packet parsed locally has to take the scope into account because
the scope tells on which interface to send the answer back.
The scope is technically nothing more than an index to the local
interface extending the addresses within the OS.
An interface have multiple addresses by design.
You always have a link-local address in the fe80::/64 range.
You usually want a routable IP address as well.
You should handle multicast address for everyhost and 6LoWPAN routers
also need to handle neighbor discovery related multicast addresses.

I think I will start adding a uIP thread to Ethernut.
Having a working reference would be good I asume.
Then start with adding hosts running native stack, which neither require
routing nor multiple interfaces.

> > - forwarding packet between networks
> 
> dito.
> 
> 
> > - IPv6 packet format in general
> > 
> > I know that IPv6 is not available, but it was often discussed and what
> > about the other points?
> 
> Exactly.
> 
> I'm only unsure about the release. We have 4.9 beta available for some
> time now. Actually I'd prefer to have 4.10 (or 5.0?) out first, before
> starting to add such a modification like IPv6. There is still some
> clean-up work to be done (mainly the docs) for the next stable version.
> I'd also like to have the qt based configurator and stable AVR32 builds
> as well.

Well for me that's a different thing :)

-- 
B.Walter <bernd at bwct.de> http://www.bwct.de
Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.



More information about the En-Nut-Discussion mailing list