[serval-project-dev] Architecture questions

Paul Gardner-Stephen paul at servalproject.org
Mon Nov 28 18:38:24 PST 2011


Hello,

On Tue, Nov 29, 2011 at 1:31 AM, WenZhan Song <wenzhan.song at gmail.com> wrote:
> We are new to Android and thank Paul help us to make Serval work on
> our Android device LG GT540.

It has been my pleasure to help.

> We decide to try serval as a starting point to extend BATMAN mesh
> network for 4D volcano tomography:
> http://sensorweb.cs.gsu.edu/?q=VolcanoSRI. We do not necessarily need
> VOIP functionality, but utilize Android device's computation and mesh
> networking capability for collaborative sensing and computing.
>
> We are also looking for (1) documentation of Serval software
> architecture - core serval team, please consider documentation as a
> very important part to attract more people to particpate, as it has
> significant impact on learning curve;

Increasing the documentation is something that we are critically aware
that we need to do, and we are working on this, but our available
resources are limited. We would certainly welcome any assistance that
people may be inclined to provide on this.  For example, it would be
great for people to choose a particular aspect of the Serval
technology, e.g., DNA, and begin documenting it by examining the code,
asking lots of questions and grabbing material from the wiki (which we
apologise is being reinstalled this week).

> (2) low-cost customized android
> devices - replacing with high-gain wifi radio and accelerometer.

So the Huawei IDEOS U8150/U8180 phones do have an accelerometer as I
recall, and are certainly cheap, being as cheap as AUD$60.

That just leaves the antenna gain, or more precisely, the maximum
range between devices as the issue.

Increasing the gain will only work to a limited extent, as that gain
comes at the expense of omnidirectionality, and given that volcanoes
are not generally flat (I forget which type of cone your volcano has),
will present some difficulties to very directional links.  My estimate
is that you need about 9db gain if using ordinary wifi gear.

As I recall, you are looking for ~500m range between nodes.  WiFi
typically does ~200m fine, but it can certainly do 500m in ideal
conditions, such as when the Fresnel zones are clear, which can be
achieved by mounting antennas on ~8m poles.  Of course that is a
problem if the antenna is in the phone and also is supposed to be
measuring ground movement... So no immediate solution there using off
the shelf equipment.

It may be worth trying a few different models of phones to see if any
have better wifi antennas than others.

Otherwise, I guess you will have no choice but to make custom hardware
of some sort, whether phone based, Arduino based or otherwise.

Paul.

> We
> also look for MS/PhD research assistants or POSTDOC research
> associates to work on VolcanoSRI project, if anyone in serval
> community is interested to participate, we warmly welcome.
>
> If anyone has those related information, please provide and/or forward
> to someone who might be interested. Thanks!
>
> WenZhan
> http://sensorweb.cs.gsu.edu/~song/
>
> On Mon, Nov 28, 2011 at 12:44 AM, Paul Gardner-Stephen
> <paul at servalproject.org> wrote:
>> Hello Ben,
>>
>> On Mon, Nov 28, 2011 at 12:30 PM, Ben Hughes <ben at benrhughes.com> wrote:
>>> So getting DNA working on a non-mesh network would still be a useful
>>> starting point?
>>
>> Absolutely that would be valuable.  While you wait for a handset, you
>> can try it out on windows machines, which will also be useful.
>>
>>>  I should be able to keep DNA coupled loosely to the
>>> routing layer, so we can swap other routing logic in in the future. I
>>> haven't looked closely at the java source yet to see exactly how much
>>> DNA relies on batman, but I'll keep messing around and see how I go.
>>
>> DNA doesn't depend on BATMAN at all -- it makes use of it if it is
>> running to get a list of peers, but that is all.
>>
>>> I'm happy to document things as I find them, but it looks like the
>>> wiki is in some sort of error state:
>>> http://developer.servalproject.org/twiki/
>>
>> Sorry about that, the wiki is getting re-installed while I type.
>> Hopefully it should be back up in a day or two.
>>
>>> As an aside - I'm yet to get my hands on a WP7 handset - I'm keeping
>>> an eye on ebay but if anyone sees one available relatively cheaply
>>> please let me know.
>>
>> Will do.  Sign up as a Nokia developer and you can get one of theirs
>> half price, I think.
>>
>> Paul.
>>
>>> Cheers,
>>>
>>> Ben
>>>
>>> On Sun, Nov 27, 2011 at 10:40 PM, Paul Gardner-Stephen
>>> <paul at servalproject.org> wrote:
>>>> Hi Ben,
>>>>
>>>> A WP7 port is actually very useful.  As Jeremy mentions, we can still
>>>> do a pile of stuff, just sub-optimally in some cases.  It also gives
>>>> us greater traction, e.g., for partnering with a handset vendor to
>>>> make a patched firmware that provides full support.
>>>>
>>>> Paul.
>>>>
>>>> On Sun, Nov 27, 2011 at 8:40 PM, Ben Hughes <ben at benrhughes.com> wrote:
>>>>> Thanks Jeremy, that's helpful.
>>>>>
>>>>> I had just assumed that WP7 could connect to ad-hoc networks, but from
>>>>> what I've been reading it looks like support is somewhere between very
>>>>> flakey and non-existent. So that kinda kills the idea of any sort of
>>>>> useful port, at least until MS fix it.
>>>>>
>>>>> I'm still interested in contributing to the project though so I guess
>>>>> I'll take a look at the big tracker and see if there's anything I can
>>>>> wrap my head around :)
>>>>>
>>>>> Ben
>>>>>
>>>>> On 27/11/2011, at 8:11 PM, Jeremy Lakeman <jeremy at servalproject.org> wrote:
>>>>>
>>>>>> Yes we currently default to using BATMAN to generate the route's
>>>>>> between nodes on the network. We also support olsr as the underlying
>>>>>> mesh routing protocol. And we can run our software with a network of
>>>>>> just an access point and its clients, mainly to support clients that
>>>>>> don't allow the right wifi modes for mesh networking. And longer term
>>>>>> we intend to replace the mesh routing layer with our own protocol
>>>>>> layer.
>>>>>>
>>>>>> Our long term goals also include removing the need for running a full
>>>>>> blown asterisk installation, and SIP client, on a phone with
>>>>>> effectively only one extension. This would also drastically reduce our
>>>>>> installation size.
>>>>>>
>>>>>> The main pieces of work that will need to be done for any port as I see them;
>>>>>> - see if we can connect to, or start, an adhoc wifi network. May be impossible.
>>>>>> - compile and run dna for number -> network address resolution.
>>>>>> - minimal VOIP server, perhaps with simplified network protocol, to
>>>>>> handle in/out call state. Porting asterisk might work, but is
>>>>>> overkill.
>>>>>> - UI layer for user interaction, dialing, answering and configuration.
>>>>>>
>>>>>> On Sun, Nov 27, 2011 at 6:21 PM, Ben Hughes <ben at benrhughes.com> wrote:
>>>>>>> This is my basic understanding of the Serval architecture, please let me
>>>>>>> know if it's misguided:
>>>>>>>
>>>>>>> - BATMAN is the underlying protocol that is used to connect nodes on the
>>>>>>> mesh
>>>>>>> - DNA is a layer on top of batman that lets you use claimed numbers (and a
>>>>>>> public/private key pair) to identify nodes on the batman mesh
>>>>>>> - when you make a mesh call, DNA resolves the number to a batman ip, and
>>>>>>> then attempts to establish a SIP connection (via asterix) to that address
>>>>>>>
>>>>>>> I know that there's more to it than that (social verification of claimed
>>>>>>> numbers, bridging networks, DID etc) but is that basically correct?
>>>>>>>
>>>>>>> If so, batman seems as though it's a vital (and complex) component in the
>>>>>>> stack. And from what I can tell, it seems pretty tied to *nix.
>>>>>>>
>>>>>>> If I'm looking to port DNA to WP7, do I first need to port batman? Or put
>>>>>>> another way: is there any value in a batman-less DNA?
>>>>>>>
>>>>>>> Cheers,
>>>>>>>
>>>>>>> Ben
>>>>>>>
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google Groups
>>>>>>> "Serval Project Developers" group.
>>>>>>> To post to this group, send email to
>>>>>>> serval-project-developers at googlegroups.com.
>>>>>>> To unsubscribe from this group, send email to
>>>>>>> serval-project-developers+unsubscribe at googlegroups.com.
>>>>>>> For more options, visit this group at
>>>>>>> http://groups.google.com/group/serval-project-developers?hl=en.
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
>>>>>> To post to this group, send email to serval-project-developers at googlegroups.com.
>>>>>> To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
>>>>>> For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.
>>>>>>
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
>>>>> To post to this group, send email to serval-project-developers at googlegroups.com.
>>>>> To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
>>>>> For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.
>>>>>
>>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
>>>> To post to this group, send email to serval-project-developers at googlegroups.com.
>>>> To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
>>>> For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.
>>>>
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
>>> To post to this group, send email to serval-project-developers at googlegroups.com.
>>> To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
>>> For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.
>>>
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
>> To post to this group, send email to serval-project-developers at googlegroups.com.
>> To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
>> For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.
>>
>>
>
> --
> You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
> To post to this group, send email to serval-project-developers at googlegroups.com.
> To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups "Serval Project Developers" group.
To post to this group, send email to serval-project-developers at googlegroups.com.
To unsubscribe from this group, send email to serval-project-developers+unsubscribe at googlegroups.com.
For more options, visit this group at http://groups.google.com/group/serval-project-developers?hl=en.

----- End forwarded message -----
-- 
Eugen* Leitl <a href="http://leitl.org">leitl</a> http://leitl.org
______________________________________________________________
ICBM: 48.07100, 11.36820 http://www.ativel.com http://postbiota.org
8B29F6BE: 099D 78BA 2FD3 B014 B08A  7779 75B0 2443 8B29 F6BE





More information about the cypherpunks-legacy mailing list