Friday, September 26, 2008

Related work: Market Contact Protocol

An interesting Master's thesis called "Content Sharing for Mobile Devices" has an extremely comprehensive and complete look at the problem of finding and sharing content with other local mobile devices.

The thesis has excellent documentation comparing DHTs, overlay networks and other related work in this field.

The simulation and datasets in the thesis are also very comprehensive, and may be helpful if we ever do a simulation ourselves in this field.

The implementation itself, a protocol called "Market Contact Protocol" - at first glance - seems very similar to what we are doing with the BonAHA project, and related work such as LightPeers.

Thursday, September 25, 2008

Nokia n800, Python, Bonjour and mDNS

A project student has the task of developing useful 7DS-like applications on our lab's Nokia n800, so we went searching for how to develop applications on this platform.

It appears that Python is the Nokia n800's programming language of choice - tough luck for Java. So we would have to start working with Python and developing our framework in that language.

In order to use Bonjour on Python for the Nokia, we need the pyBonjour library.

We also need to install the Bonjour mDNSd daemon for handling mDNS packets - or Avahi, which is more supported on Linux. A look around reveals that Avahi is available on the Nokia n800 through the Canola project.

But for pyBonjour to work with Avahi, the binary-compatibility layer with Bonjour need to be installed [libdnssd1 and libdnssd-dev].

There are existing demo applications (one and two) on Nokia using Bonjour. Both seem to relate to web servers.

Some more info about Python and mDNS from razorvine.

Thursday, September 18, 2008

Data-object vs communication P2P applications

It appears that there are two sets of applications that BonAHA (or any ad-hoc network framework) will have to cover and address:
  • Data-object and file-oriented: In this sort of application, the most important topic are the files and the data themselves, not necessarily the location of these. E.g.: file sharing, file synchronization, chat
  • Person-to-person communication: In this sort of app, the focus is on the person to communicate with (not even the node itself, which is an abstraction, but the person). For example: drag-and-drop file sharing, instant message
So, BonAHA will have to address which of these two models it will be targetting - and if it can, and will, target both classes of applications.

DHTs actually handle the data-object model very well, expect that their setting up of an overlay network and additional network traffic in networks with heavy churn leaves much to be desired for MANET applications.

mDNS and DHT-related work

This was a very productive week in looking forward to working more on the BonAHA framework and our architecture for disconnected ad-hoc networks.
  • mDNS and DNS-SD: Reading the specifications again, particularly focusing on their handling of:
    • Packet size: How does it deal with large packets? What is the maximum packet size?
    • iChat TXT record data: iChat exchanges its avatars using DNS-SD. But how large is it? What are the tradeoffs?
In terms of related work, here are some items I looked at this week that seem related to 7DS and the BonAHA framework:

Tuesday, September 02, 2008

Updated website + Fall courses

As Fall semester rolls around, I decided to start it off by updating my website to use a new template - Concrete on (PS: has some great, simple and totally free CSS templates for your website.)

I will end up taking "Analysis of Algorithms, I" this semester and may end up auditing the "Artificial Intelligence" course if possible...