Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [paho-dev] M3DA opensource java server

Hi Dave,
Yes think using the M3DA serialization (called Bysant) and the DeltaVector and QuasiPeriodicVector structures for constructing MQTT payload could be interesting to try. We already had this kind of reflexion. I'm not sure you can apply M3DA security directly because you will need to sign (and perhaps cipher?) the MQTT header because you will need to secure the topic (both integrity and confidentiality) and perhaps some other fields.

M3DA is addressing the transport too, in a different way, probably because IBM and Sierra Wireless had different experiences in the M2M field. We are mainly a "wireless" company, we the airtime is an expensive good.

M3DA specification could be splitted in three :
 * the transport which can use TCP, HTTP (on filtered network) and SMS (if you don't have a public IP on your client or if it's disconnected of the cellular data network). We are still under discution for an UDP based transport. The M3DA transport structure called M3DA::Envelope can contain any byte buffer as payload (a bit like MQTT).
 * the security which is mean to light-weight near TLS/DTLS : no heavy negotiation phase with heavy certificates (the TLS nego cna use 12 TCP messages): an algorithm is already choosen offline and works the same way over TCP/HTTP/SMS
 * the data representation and compression, which is adapted to our M2M business : compression of capture log of correlated data (e.g.: at time X, latitude X and longitude X the car temperature was T) but captured every X minutes compressed and sent once in a day.

Taking the last data representation part and putting it in a MQTT TLS secured stream would be an interresting beast :)

Julien

On Fri, Mar 15, 2013 at 04:27:45AM -0700, Dave Locke wrote:
> sounds interesting.   Currently Paho hosts a set of client libraries for the MQTT protocol. At the high level MQTT has a similar set of goals to M3DA i.e. connecting the M2M world to a more traditional server.  I had a quick look at the M3DA presentation and it appears that M3DA concentrates on what is transported i.e. the content of the payload and how it is secured...  whereas MQTT is payload agnostic and concentrates on how to move a payload efficiently from device to server.  The immediate thought that struck me and an interesting angle to follow up is that of  using MQTT as a transport layer for M3DA.   If this is possible and more importantly makes sense, there would be a great deal of synergy in the Eclipse M2M projects.
> 
> 
> All the best
> Dave
> 
> 
> 
> 
> 
> From:        Julien Vermillard <jvermillar@xxxxxxxxxxxxxxxxxx>
> To:        General development discussions for paho project <paho-dev@xxxxxxxxxxx>,
> Date:        15/03/2013 10:59
> Subject:        Re: [paho-dev] M3DA opensource java server
> Sent by:        paho-dev-bounces@xxxxxxxxxxx
> ________________________________
> 
> 
> 
> Hi Andy
> Thanks for the warm welcome.
> 
> We have a Java client implementation, but it's quite raw. It's mainly used for
> automatic server testing and exposing a lot of the underlying M3DA complexity.
> But I'm sure we could wrap around it a fancy API and contribute it.
> 
> The C/lua M3DA client in Mihini as far as I know is not easly extractible as an
> autonomous way. I'm sure some Mihini developer can give more details.
> 
> I would be happy to join you for the call but I'm out-of-office next week.
> I suggest that Benjamin join you, he knows well the subject.
> 
> Julien
> 
> On Fri, Mar 15, 2013 at 02:50:07AM -0700, andypiperuk@xxxxxxxxx wrote:
> > Hi Julien
> >
> > This is great background information, thank you!
> >
> > The Paho project definition states:
> > "The scope of the Paho project is to provide open source implementations of open and standard messaging protocols that support current and emerging requirements of M2M integration with Web and Enterprise middleware and applications."
> >
> > It sounds like M3DA broadly fits into that scope from the perspective of Paho being the "protocols" container for the M2M initiative.
> >
> > You mention the Java server contribution, are there client libraries as well and would you see them living in Mihini or in Paho?
> >
> > We have a bi-weekly Paho team call, the next one being on Tuesday 19th March at 1330 UTC. I will ask Scott the project lead to invite you so that we can discuss. It might actually make sense to make the call a longer one so that we can cover your topic in enough detail and include our regular progress agenda.
> >
> > Andy
> >
> >
> > On Fri, Mar 15, 2013 at 9:27 AM, Julien Vermillard <jvermillar@xxxxxxxxxxxxxxxxxx<mailto:jvermillar@xxxxxxxxxxxxxxxxxx>> wrote:
> > Hi,
> >
> > I'm Julien Vermillard from Sierra Wireless, I'm a software guy working mainly
> > on the server side communication stack. On a side side note I'm also a member
> > of the Apache Software foundation (mainly working on Apache MINA).
> >
> > We started opensourcing our M3DA (Micro M2M Data Access) software stack.
> >
> > The M3DA is a secure, structured and bandwidth-efficient protocol for exchanging
> > data between a M2M device and a server over the air.
> >
> > M3DA is the protocol actually mainly used by Mihini for pushing captured data to
> > a M2M server.
> >
> > General introduction to M3DA :
> > http://wiki.eclipse.org/images/1/16/M3DAPresentation.pdf
> >
> > The full specification :
> > http://wiki.eclipse.org/Mihini/M3DA_Specification
> >
> > The reference embedded client code is in the Eclipse incubating Mihini project
> > http://www.eclipse.org/mihini and the java server software is there:
> > https://github.com/SierraWireless/m3da-server
> >
> > This M3DA server implementation is working, we plan to use it for the
> > EclipseCon Mihini tutorial.
> >
> > We tried to keep the dependencies minimal and IP clean (in the Eclipse way) as
> > much as possible.
> >
> > Some features are yet to be opened : HTTP transport and security mainly for IP
> > cleaning issues (we need to get rid of some dependencies) but we hope to
> > contribute them soon.
> >
> > Since Mihini scope is more embedded M2M application framework I don't feel this
> > contribution could fit in.
> >
> > From what I understand of the Paho project scope, it's not tied to only MQTT as
> > protocol and we wonder if it would make sense for the Paho project to accept
> > this M3DA java server as a contribution ?
> >
> > Julien
> > _______________________________________________
> > paho-dev mailing list
> > paho-dev@xxxxxxxxxxx<mailto:paho-dev@xxxxxxxxxxx>
> > http://dev.eclipse.org/mailman/listinfo/paho-dev
> >
> >
> >
> > --
> > Andy Piper | Farnborough, Hampshire (UK)
> > blog: http://andypiper.co.uk<http://andypiper.co.uk/>   |   skype: andypiperuk
> > twitter: @andypiper  |  images: http://www.flickr.com/photos/andypiper
> 
> > _______________________________________________
> > paho-dev mailing list
> > paho-dev@xxxxxxxxxxx
> > http://dev.eclipse.org/mailman/listinfo/paho-dev
> 
> _______________________________________________
> paho-dev mailing list
> paho-dev@xxxxxxxxxxx
> http://dev.eclipse.org/mailman/listinfo/paho-dev
> 
> 
> 
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU

> _______________________________________________
> paho-dev mailing list
> paho-dev@xxxxxxxxxxx
> http://dev.eclipse.org/mailman/listinfo/paho-dev



Back to the top