Loading user information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading user information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

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

33 minutes, 18 seconds


Right click “Save as…”

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.

Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
  • CKurtCKurt while( ( !​succeed=try​() ) ) { }

    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)

  • Allan LindqvistaL_ Kinect ftw
    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
  • 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?
  • CKurtCKurt while( ( !​succeed=try​() ) ) { }
    Man that's a biggg upload, that's 10% of my quota per month
  • 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?
  • 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.
  • Allan LindqvistaL_ Kinect ftw
    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
  • 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

  • BasBas It finds lightbulbs.
    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.
  • CKurtCKurt while( ( !​succeed=try​() ) ) { }
    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....
  • i'm still dying to try mesh out, but no luck getting into the beta
  • BasBas It finds lightbulbs.
    That's in the update that came out yesterday?
  • 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.
  • 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.
  • 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.
  • They are indeed one of the teams we've been talking with internally.  Can't say any more than that for now.
  • William Staceystaceyw Before C# there was darkness...
    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
  • 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?
  • From my testing here with the new bits, it is not sending directly over the LAN yet.

  • Allan LindqvistaL_ Kinect ftw
    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)
  • 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.

  • 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.
  • 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/ ). 
  • 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
  • Not bad

Remove this comment

Remove this thread


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.