Dan

David Steere and Trevor Robinson: How Live Mesh P2P Syncing Works

Download this episode

Download Video

Description

Live Mesh is built around a relationship directory to let the machines in your mesh communicate with one another on your behalf.  Any two devices can use the directory and the mesh communication services to set up an encrypted channel for sharing data or synchronizing. 

In this interview, we’ll whiteboard out exactly how a Live Mesh peer-to-peer session is established, along with the newly added support for synching files with only your device, and not with the Live Desktop cloud storage service.

Embed

Format

Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image
      CKurt

      Love it !

      Bye Bye FolderShare (at least when this P2P will be activated) because I still cann't select 'don't sync with this device' with live desktop)

    • User profile image
      aL_
      sound great Smiley
      mesh is firmly fixed im my everyday activites now Smiley
      it used to be sucha pain working from home on stuff at work (we dont allow non company computers on to our vpn) but now it just works Smiley  i havent had a single sync problem and it just works great Smiley

      lmrd save my butt the other day when production went down and i hadnt brought my computer home.
      i just logged in to the work computer and sorted it out Smiley

      any news on the skydrive (and other) integration btw?
      great stuff guys Smiley
    • User profile image
      jjesse
      Question I have is on the speed of the sync.... It seems to trickle so slowly to other machines.... I added a 1.5 Gig zip file to my mesh on Monday and still waiting for it to finish uploading to my mesh folder.  Any way to increase the speed?
    • User profile image
      CKurt
      Man that's a biggg upload, that's 10% of my quota per month
    • User profile image
      hampycapper
      Yeah, we definately have some perf issues in the current release. The upcoming release should be better.

      When you say "upload to my mesh folder", do you mean to the LivePC view? Or uploading to other devices?
    • User profile image
      jmazner
      Just FYI, the new release is propping to servers now and should be live later today.  A few more details on the Mesh blog, http://blogs.msdn.com/livemesh/archive/2008/07/11/service-update-new-build-new-features-coming-today-0-9-3103-2.aspx.

      @aL_ : Nothing new to say on integration with other MS propertise/apps yet, but we are definitely contiuing to work on this.
    • User profile image
      aL_
      alright Smiley

      also, i've hears macs are planned as mesh clients, are there also plans for something like a playstation 3? that would be cool Smiley
    • User profile image
      jamiet
      Jeremy,
      If you could have a word with the Zune team and ask them to build Zune upon Mesh so that I can associate a Zune device with my Mesh rather than one of my computers then I would be very grateful. Wink

      cheers
      Jamie
    • User profile image
      Bas
      Alright, being able to sync across devices only sounds perfect.

      How well does Mesh play with WHS, by the way? On the WHS, you're supposed to access your folders through their network name instead of just the local path, because apparently you're going to mess up the whole RAID-like file system thing. It'd be pretty sweet if you could, for instance, keep all your media shared on the WHS so your PC's at home can use them, but at the same time sync the entire folder to your laptop using mesh for when you're on the road. Pick up something along the way, drop it in the mesh folder on your laptop, and it's on your WHS when you get back.
    • User profile image
      CKurt
      Integration with other Microsoft Products is still going on....

      For now I would be happy with selecting "Don't sync to live desktop" op the client ! They forgot to put it in....
    • User profile image
      Verdant
      i'm still dying to try mesh out, but no luck getting into the beta
    • User profile image
      Bas
      That's in the update that came out yesterday?
    • User profile image
      aaronjohn
      I have WHS, and the Mesh integration is something that's still in process, I believe.  Currently, the Mesh client does not install on WHS, and there is not really any way to get them to talk.  It is very unfortunate, actually, and I've already requested this on the Connect site.  I did receive a response from Microsoft that they are working on it, and to stay tuned.
    • User profile image
      aaronjohn
      Verdant,

      Mesh is great, you should really try it!  I believe I have one Mesh invite left - If you want to send me your email address (send to aaronjohnseldon@gmail.com), I'll see what I can do.
    • User profile image
      jmazner
      We demo'd the Mac client at Web 2.0 and that work is coming along nicely (we're also working on the win mobile client we showed.)  We haven't talked about any platforms beyond those for now.
    • User profile image
      jmazner
      They are indeed one of the teams we've been talking with internally.  Can't say any more than that for now.
    • User profile image
      staceyw
      I am still confused on the push-v-pull notification question.  They slip push into doco, but it still seems like pull to me as the client is polling for notifications (I ~think) every 25 seconds or so.  Apple seems to be making a big deal out of "push" email now - like that is something new.  SMTP has been a push protocol for years.  The last mile (i.e. pop3) is pull.  I don't have a major preference as pull works for most.  However for "twitter" like notifications, 25 seconds could be too long and a polling loop wastes bandwidth.  So a clean push may be best.  That said, things like PointCast collapsed under heavy "push" traffic, so I understand some balance is needed and it is not a clear solution.  Any clear direction on push/poll client protocol direction for mesh yet or still in development?  tia
    • User profile image
      intrepid
      If I have two networked clients sharing files (but not to the cloud),will Mesh use my LAN to synch the two machines, or will it still send all the data over the internet?
    • User profile image
      daSmirnov

      From my testing here with the new bits, it is not sending directly over the LAN yet.

    • User profile image
      aL_
      ok Smiley

      are there any plans to expose apis for people to make their own mesh clients? (although that does seem hard given security and stuff, but it would be cool)
    • User profile image
      jmazner

      Live Mesh's pub/sub model is conceptually a push model -- each device has a notification queue, the device can create subscriptions, and when a subscription generates an event (or another device or part of the Mesh needs to reach the device), that event is posted to the queue and the device gets it.

      Because Live Mesh is designed to work across any network topology, we can't always ensure that the cloud will be able to push a notification down to an arbitrary client -- it might be behind a firewall, or NAT, or who knows what.  So instead, we have each client open up a single long-lived HTTP connection to the server.  If there are no new notifications, the request times out after 60 seconds, and then the client opens a new one.  When a new notification comes in, the cloud sends down in response to that open request from the client.  You might have heard this technique referred to as Comet or full-duplex AJAX.

    • User profile image
      jmazner
      I think David mentioned this in the video...we use the cloud to store all the metadata about a Live Folder (the filenames, change history, etc).  Each client synchs metadata with the cloud, which produces a list of files that are out of date on the client.  Then the client can fetch those files from anyone else who has them.  In your case, if the cloud doesn't have the files, we will fetch them from another client.  For now, we don't have a lot of client location and optimization in place, so the client is equally happy to fetch the file from the cloud (if it's there), from a client somewhere outside your LAN, or a client on the LAN.  We are working on putting more intelligence in here.
    • User profile image
      jmazner
      we are certainly thinking about this, yes.  There are a lot of scenario in which the easiest path is for client developers to write against the APIs that our platform will provide (see http://channel9.msdn.com/posts/Dan/Ori-Amiga-Programming-the-Mesh/ ). 
    • User profile image
      jjesse
      Upload to the live mesh folder, or syncronize with other users and other systems.   When I added the file to the folder that is synced with Live Mesh I see a status of uploading and see very very little progress over the course of 3 days it only got through 25% before I deleted the upload and synced it via USB or a UNC share on this which was way faster
    • User profile image
      meteor
      Not bad

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.