JensMuellerRestricted: Difference between revisions
m (→Enigineering) |
|||
Line 90: | Line 90: | ||
=Embed Click into JiST= |
=Embed Click into JiST= |
||
Planned to be done via JNI. |
|||
= Nsclick = |
= Nsclick = |
Revision as of 14:45, 13 February 2006
Routing in Wireless Multi Hop Networks
Routing in wireless Networks Things to consider
- Negative effects
- self interference
- Postive effects
- Broadcast nature
Optimizing problems:
- Minimizing transmissions (via Network Coding and ExOR)
- Minimizing collisions (difficult: extended RTS/CTS? and using 802.11 non overlapping channels)
Engineering
Routingprotokolle aus Nachrichtensicht Layer 3 - Flooding - Multicast - Unicast
Layer 2 - Broadcast (lokal) - Multicast - Unicast
Die Idee ist, dass alle Routingprotokolle Nachrichten versenden müssen. In diese Nachrichten-Elemente steckt man dann nur noch den Payload.
Cruise Control
Need to added further project with dependencies to CruiseControl. E.g.:
- click (i386, mips)
- madwifi (-"-)
IvyCruise - dependencies with Cruise Control
Gateway
This is about the implementation of self-configuring internet access for BRN using Click mainly. (Need to explain design and implementation here (from the official gateway wiki site).)
Planned versions:
- GatewayTester:
- ICMP ping based
- User traffic based
- DNS query based
- Challenge response based (with other mesh nodes)
- Handling of TCP:
- A GatewaySelector, which respects open TCP connections
- A centralized "master" gateway (mesh gateways tunnel packets to)
- Maybe handing TCP connections over to other mesh node?
ToDO
- Recognize and handle NATed gateways
- Is the GatewaySelector able to determine, if a mesh node is a gateway?
- User feedback via LEDs
Further and dependent issues:
- Connecting mesh nodes via ip tunnels
- Connection mesh nodes via ethernet
- Difficult to recognize, if an attached node is a client or a mesh node?
Known problems
- Tried to implement an element by inheritance (a diamond), which is possible in C++. But it did not worked in Click. Maybe somebody has a working example. I tried virtual and so on, but it did not compile. In Click's configure method, you can only get an element. I wanted to convert an element of type A to type B without knowing the precise type of the given element.
E / \ / \ / \ A B \ / \ / \ / ?
This is not possible (my experience), since I don't know what ? is. I would need to cast the given element of type E to ? and then cast ? to A. You can use the delegation pattern to bypass the diamond.
WRAP and LEDs
- gpioclt in OpenBSD on WRAP
- Using the LEDs of wgt634u
Sentry5 - the netgear SoC (system on a chip)
Crpyto Acceleration in Linux
Embed Click into JiST
Planned to be done via JNI.
Nsclick
+-----------+ | | | MAC | | | +-----------+
| | wie FromHost () +------------------> +-----------+ | | | Click | ToDevice | | +------------ +-----------+ | ^ | | | | V | +-------------+ | | | | | PHY +--------------+ | | FromDevice +-------------+