Monday, March 23, 2015

Clone2Clone(C2C) : Peer-to-Peer Networking of Smartphones on the Cloud


Motivation:
A Wireless Peer to Peer network between smart phones is notably hard due to limited battery power and unreliable low bandwidth network connections. This is solved using Clone2Clone platform where the clones of the smartphones are always on in the cloud and are connected using high bandwidth reliable network. By this approach, not only the computation is offloaded but also the communication across mobiles is offloaded to the cloud.


Key Points
  • Smartphones has a clone running in the private or public cloud. This lets installation of applications which are in mobile to the clone.
  • To enable peer to peer networking among the smartphone clones, CloneDS directory service is maintained in a separate cloud. It contains the mapping of all the mobile deviceIDs of the smart phones and its clone’s locations.
  • When a clone wants to connect to other device’s clone, it queries the CloneDS passing the device ID and gets the address of the clone. This will be used for further communication to send any updates.
  • Clones in the cloud performs computation intensive tasks and keeps the data synchronized and pushes the updates to device.
  • CloneDoc, P2P collaborative document editing application is developed showing the clones in the cloud receiving updates from mobile devices and handle as many tasks(like authentication, encryption) as possible on the device’s behalf and keep the device up-to-date.


Positive Points:
  • This is a different and novel approach to enable peer to peer networking by saving battery and network bandwidth.
  • It seems to be a good architecture design for collaborative editing application as the clone can work on behalf of mobile and when the user connects back, the entire copy in the clone could be pushed to the device.


Trade Offs/Comments:

  • There will be additional complexity in keeping the clone and mobile device synchronized. It does not explained how the updates will be merged between clone and smart phone if there is a conflict.
  • This paper does not explain much use cases or scenarios where this kind of architecture where clones communicating among each other would be required.
  • Most of the mobile application is user event driven where the clone cannot perform any task when the user is disconnected.

1 comment:

  1. Very strong analysis -- all good points. Point #3 is well-taken: the application is user-facing yet this makes it vulnerable to disconnection as it is not clear what the clones could do w/o a user connection.

    ReplyDelete