Here, There, Everywhere...
Whooooo boy, today is a big day for Live Mesh. We are about to begin rolling have finished rolling out an update which brings our service and PC software to beta with significant new features, and includes the first technology previews of the Mac and Windows Mobile clients. Details below. We blogged on Tuesday about how the combination of this platform experience beta, the additional devices, and the CTP of Live Services and the Live Framework are significant milestones on the path to bringing our software + services vision to life.
As we noted previously, users of the Technology Preview version will find that their clients must update to this latest version in order to continue participating in Live Mesh . We will update the blog here when the rollout of services is complete and the new client software is available. The new client software is now available!
· New devices supported. We are delighted to release our client software for Mac OS X (10.5 or higher, Intel processesor) and Windows Mobile (6.0 and 6.1). Because these are both significant new software investments for us, we’re going to only provide them on a limited basis for now (and mobile is restricted to only US or UK to start.) If you get a message saying that we’re at full capacity for these clients, keep an eye on the blog here. We’ll post updates as we increase availability over the coming months.
· To get access to the Mac client, sign in to www.mesh.com, click Add Device, and then click the “Limited Mac Tech Preview now available” link underneath the Install button. If we haven’t exceeded the limit for Mac clients, you’ll get a confirmation dialog, and then Mac will show up under the available list of devices when you choose Add Device from the ring.
· To get access to the Windows Mobile 6.x client, click on one of the following links (US residents, UK residents). Sign in with your LiveID, and you’ll be redirected to the device ring where you’ll see a link to “Use Live Mesh for mobile devices.” Alternately, once you’ve signed in this way, the mobile client should be available for download by pointing your phone’s browser to http://m.mesh.com
· Worldwide availability. We’ve removed the limits on what countries are able to sign up to use Live Mesh. We previously had limitations in place so that we could complete our testing with various language and locale settings, and now that work is indeed complete (with the caveat of course that for now the mobile client, as mentioned above, is not actually available worldwide).
· WAP access. Some of you already discovered that browsing http://m.mesh.com from your WAP-enabled phone gives you a lightweight way to view Mesh content (and, on phones that support it, upload new files.) We’re now making WAP an officially supported feature.
· Folder roles/permissions. Members of a folder can now be assigned one of the following roles to control their access rights: creator, owner, contributor, and reader. Previously, the only permission level (aka “role”) you could set for a member was “owner,” which meant that all members had the same control over the contents of a folder (adding, changing, deleting) as you did. Now, you can assign specific permissions for each member in a Live Mesh folder. Want members to be able to read what’s in a folder, but not change any content? Make them readers. Want them to be able to add to the folder, but not invite other users? Make them contributors.
· Automatic update is now available for the Live Mesh software. This has been a common user request, and we’re taking a first step towards making it possible for your Mesh client software to update itself automatically, without you having to click on any links. In this Beta release, automatic update works like magic if you chose not to install the extra enhancements that required administrator rights. If you did install them, we still have to prompt you to update so that you can click through the UAC elevation prompt and give us permission to update administrative components. We will continue to work on streamlining this process for you in future releases.
· P2P sync can be managed from your computer. When we first enabled P2P sync, you had to go to the Live Desktop to change the sync settings for a folder so that it would no longer synchronize with your Live Desktop and eat up your 5 GB storage limit. We heard from many customers that this was not very intuitive (and we agree: it wasn’t). Now you can change this sync setting from the Live Mesh software on your computer, without having to visit the Live Desktop at all.
· You can drag and drop files to folders on your Live Desktop. One of the most frequently requested features since we opened Live Mesh as a technology preview in April has been the ability to drag and drop files and folders to and from your Live Desktop. We’re extremely happy to be able to say: You can do this now! This makes the Live Desktop experience much more intuitive and even more aligned with Windows. Note that the drag-and-drop feature currently only works with a Windows PC and Internet Explorer 6 or later.
· You can select multiple files for upload or download. In addition to drag-and-drop, you can now use SHIFT and CTRL to select multiple files/folders when uploading them to your Live Desktop.
· Added new synchronization status indicators. If you’ve been using Live Mesh to sync a lot of data, you’ve probably found yourself wondering at some point how far along the synchronization process was. We’ve added an icon to the notification area of the taskbar and a progress bar so that you can tell at a glance how your folder sync is coming.
· “Get started” feature added for new users. Quick tips on how to start using Live Mesh appear on the Live Desktop and when new users install the Live Mesh software. Great for friends and family you invite!
· Improved peer-to-peer (P2P) reliability and performance. P2P synchronization is an integral part of how Live Mesh keeps your data current across all your devices. Most of the time, P2P sync happens in the background without you having to worry about it. When Live Mesh tries to update a file on one of your devices, it will leverage whatever connections it can, sometimes pulling from your Live Desktop (the “cloud”), other times pulling from your other devices. You can also choose to have some folders only sync P2P by choosing to never synchronize those folders with your Live Desktop. We have made numerous improvements to P2P sync with this release of Live Mesh. We’re now regularly testing synchronization of folders as large as 60GB, and we’ve also had success synching a single file as large as 20GB.
· Hidden remote screen is now the default for Live Mesh Remote Desktop. We heard feedback from many customers that they’d like to see this feature turned on by default to help ensure the privacy of their remote desktop feature.
· Improved conflict resolution. The user interface (UI) for resolving conflicts has been updated to be easier to use. You’ll also now see the same conflict resolution UI between the Live Mesh software on your device and the Live Desktop on the web. And, when resolving a conflict, you’ll be able to choose keep either version of a file or all versions.
· The Live Mesh bar appears minimized by default, and remembers its previous state. When you create a new Live Mesh folder, the mesh bar (appears when you open a Live Mesh folder) will now appear minimized by default. The mesh bar will also remember the last state it was in (minimized or maximized) for each Live Mesh folder, and show that state the next time you open the folder.
· Better support for large display configurations using Live Mesh Remote Desktop. We’ve added a new “superpan” feature to improve support for large desktop display configurations (e.g., high-resolution displays or multiple monitors).
· Added support for two-factor authentication for Live Mesh Remote Desktop. Enterprise customers can now require two-factor authentication (both domain password and smartcard) for Live Mesh Remote Desktop on networks, or choose to disable the Live Mesh Remote Desktop functionality altogether. (Update: the ability to disable the Live Mesh Remote Desktop functionality was going to be part of this update, but wasn't quite ready. We apologize for the confusion.)
· Install Live Mesh with roaming profiles. The Live Mesh client now supports installing to a user account with roaming profiles. Previously users may have noticed an inability to sync or remotely access devices that use roaming profiles.
Windows Vista User Account Control (UAC) reminder
While we no longer require that UAC be turned on when running Live Mesh on Vista SP1, if you initially installed Live Mesh with UAC turned on, and then turned it off, you might have some issues upgrading. Please see “NOTICE: Updating Live Mesh and User Account Control (UAC)” in the Known Issues sticky on the Live Mesh forums for further information.
Thank you for helping us test Live Mesh!
Technorati Tags: LiveMesh
Thank you for using the Live Mesh for Mobile client! For users who saw a failure to add their mobile phone to their mesh, we have deployed an updated build of Live Mesh for Mobile. You will need to download the Mobile Installer from http://m.mesh.com/install/wm6/LiveMesh.cab again. Once you have the new installer on your phone, run it and the installed client will be upgraded to the new version. The new Mobile Live Mesh Client is version number 0.9.3424.6 (check this through Menu -> About). Now you can start Live Mesh, sign in, and you should be good to go.
Currently Live Mesh for mobile devices is provided only on a limited basis in the US and UK. (UPDATE 2: Live Mesh for Mobile in the UK is currently full, in both the US and the UK. We know many of you are excited about trying Live Mesh with your mobile devices, so we'll be adding more spots very soon - stay tuned!) If you have a Windows Mobile 6.x client, click on one of the following links (US residents, UK residents). Sign in with your LiveID, and you’ll be redirected to the device ring where you’ll see a link to “Use Live Mesh for mobile devices.” Alternately, once you’ve signed in this way, the mobile client should be available for download by pointing your phone’s browser to http://m.mesh.com.
Thank you for your patience.
The Live Mesh Team
Now that we are out of our holiday blackout period for releases, we’re happy to announce that the next Live Mesh for Windows client update will (at long last!) be available later today is now available. Thank you for your patience, and please see below for the details. By default your Live Mesh software will automatically update itself within 24 hours of the new build being posted, but you can always right-click the Notifier icon in the system tray and choose to force an immediate update.
Update: Doh! We are embarrassed to say that the new version is going to be delayed just a little bit longer. For your safety and enjoyment, the Live Mesh client verifies the SSL certificate of the update server before downloading new code. It turns out that one of the other things we didn't get to do during the holiday blackout was update our SSL cert, which expired at end of 2008. As soon as we can get the new valid cert up there, the update will be available.
Update 2: For those of you who have recently received the error below while trying to update or install Live Mesh, the issue has now been resolved. Please try upgrading or installing Live Mesh again. If you continue to encounter problems, please visit our forums and let us know.
"Live Mesh Service is unavailable. Please retry your installation later. [80072F78] The server returned an invalid or unrecognized response."
This update will bring your Windows Live Mesh client up to version 0.9.3424.14
While we no longer require that UAC be turned on when running Live Mesh on Vista SP1, if you initially installed Live Mesh with UAC turned on, and then turned it off, you might have some issues upgrading. Please see “NOTICE: Updating Live Mesh and User Account Control (UAC)” in the Known Issues sticky on the Live Mesh forums for further information.
I've been undercover for two years. After helping to get XNA off the ground, I took an opportunity to learn some new things from some very good people. The pain of working on version 1s fades after a few years, so I decided to try another one. The pain is again fresh in my mind. But that’s not what this post is about – it’s about the excitement of launching version 1.
This project requires deep domain experts on distributed systems, scale data centers, web, Windows, Mac, mobile, networking, app protocols, file systems, databases, synchronization, peer to peer, security and more. We not only had to find these people and convince them that it would be cool to pull heavy Gs on a version 1 “for a year”, we had to establish a common vocabulary and then all agree on some things. One of the very cool things about Live Mesh is that is has a broad scope, but is at the same time respectful of the specialization needed to succeed on the web, Windows, Mac and mobile. We couldn’t have achieved this without a team with deep but different experience, knowledge, practices, jargon and opinions – and that still managed to cooperate even when it got hard.
We introduced Live Mesh at the Web 2.0 conference in San Francisco this evening. We are shipping working code to a community size that we think we can support while still working on the product. I look forward to the feedback.
We operate at such a scale at Microsoft that we have developed an instinct to specialize and focus. One of the typical early conversations in a new project is the target audience: consumers or enterprise? Large or small organizations? Web, Windows, Mac or mobile? What mobile targets? We rejected this early and focused us on adding value to individuals: people who may work in enterprises and belong to multiple organizations, but who also make choices as consumers, and use multiple technologies (and who are probably frustrated with the productivity barriers that exist as a side effect of the seams the industry imposes on them). We’ve thought a lot about adding value to enterprises too, primarily by empowering individuals while keeping in mind the confidentiality expected by organizations.
Our goal was to build a platform that spanned individuals, organizations and technologies. But we didn’t want to fall into the trap of assuming that we could get it right without using and proving it ourselves. And we also believed that the easiest way to express the fundamental potential of a platform is with an experience that delights and generates even more ideas.
To that end, we built both a platform and a set of basic horizontal experiences on multiple endpoints in parallel. As someone primarily concerned with the platform, the opportunity to “see it in action” as we build it has been very valuable and made the process more fun. I like them because they blend the web, Windows and other computing endpoints in a way that preserves the “it just works” feel of the web with seamless integration into my common workflows. The coolest thing about Live Mesh is how it smashes the abrupt mental switch that I have to make today as I move between being “on the web” and “in an application”.
This post is about the Live Mesh platform. We are not yet ready to release the Live Mesh platform, but I would like to share some of the core metaphors and building blocks we’ve been working on.
The focus for Live Mesh version 1 is to establish a Software + Services platform and ecosystem that enables unique new customer value, is unexpected by our competitors and will support broad innovation across multiple future releases. The core philosophy is to make it easy to manage information in a world where people have multiple computing experiences (i.e. PCs and applications, web sites, phones, video games, music and video devices) that they use in the context of different communities (i.e. myself, family, work, organizations).
My favorite example of a Software + Services application is Live Messenger (iTunes is another good example). The customer experience combines the best of local applications: always running, integrated with the shell and other applications, able to do background work and access local peripherals with the easy access to information that the web provides. Mesh is a Software + Services platform.
At the core of Mesh is concept of a customer’s mesh, or collection of devices, applications and data that an individual owns or regularly uses. The Mesh Account Service persists the relationship among these resources and authorizes access to them. The mesh is the foundation for a model where customers will ultimately license applications to their mesh, as opposed to an instantiation of Windows, Mac or a mobile account or a web site. Such applications will be seamlessly installed and run from their mesh and application settings persisted across their mesh. The device ring inside of the Live Desktop is a simple visualization of the mesh, and provides a view of all devices and current device availability. The Live Mesh platform provides the ability for applications to connect to any other device, regardless of network topology (network transparency), within the mesh. This infrastructure enables the Live Mesh Remote Desktop experience today.
A key design goal of the Live Mesh data synchronization platform is to allow customers to retain the ownership of their data that is implicit with local storage while improving on the anywhere access appeal of the web. The evolution of the web as a combined experience and storage platform is increasingly forcing customers to choose between the advantages of local storage (privacy, price, performance and applications) and the browser’s implicit promise of data durability, anywhere access and in many cases, easy sharing. A side effect of the competition to store customer data in the cloud and display it in a web browser is the fragmentation of that data and subsequent loss of ownership. Individual sites like Spaces, Flickr and Facebook make sharing easy, provided the people you are sharing with also use the same site. It is in fact very difficult to share across sites and equally difficult to work on the same data across the PC, mobile and web tiers.
The fundamental unit of synchronization in Live Mesh is a mesh object. Access to mesh objects is via the common web metaphor of a feed. These building blocks provide low barriers to adoption in addition to enabling appropriate customer experience metaphors in different technology, organization and business domains. As an example, one instantiation of a mesh object is as a local (shared, aka Live) folder on a PC. This same mesh object might be instantiated as a slideshow on a web site, and as preview and upload UX on a mobile device with a built-in camera. A Live Folder is but one specialization of a mesh object. A mesh object could also represent a range of cells in Excel or a To Do list that can be accessed from anywhere. You’ll see more on this in an upcoming Channel 9 interview with our storage and synch team.
Live Mesh has been designed with the goal of enabling explicit control over the location and custody of data even in a sharing environment. Mesh objects (i.e. files, lists, etc. and associated information) are physically stored in a Live Mesh Storage Server and exposed as authenticated feeds. The Live Mesh cloud implementation of a storage server is intended to be a peer to large number of Mesh Enterprise Storage Servers that can be offered in subsequent releases. This storage and feed architecture supports a completely enterprise scoped sharing across all tiers: PC, intranet browser, and mobile in addition to home - home and home - work scenarios.
Live Mesh provides the building blocks to support the notion of groups, or communities (member lists) of people associated with a mesh object. These lists are managed via the simple email-web confirmation exchange that is popular on the web. Member lists provide both a simple permission model and a natural scoping for the collaboration features of Mesh. The basic group mechanism can be trivially extended to add entities such as organizations to participate (in an assigned “role”). Similarly, you might invite a SpellChecker bot into a group.
Every layer of the mesh is built on top of APIs in the form of feeds. These layers enable:
The ability to add / remove devices (and someday applications) to a mesh and manage groups (by initiating invitations).
The ability to open a mutually authenticated raw communications channel, to any device in a group, regardless of current location or network topology. This channel always works, by way of cloud relay if necessary, but will automatically and transparently take the cheapest and fastest possible network path.
The ability to subscribe (“tell me when it has changed”) to resources and publish (“I changed it”) notifications against resources. The pub/sub infrastructure eliminates polling the cloud to become aware of changes. The sync engine itself uses pub/sub for sync change triggering.
An extensible “awareness” infrastructure which is scoped to the group and the information being shared. The first Live Mesh experiences provide a very simple notion of awareness – who is “using” a Live Folder now, but the infrastructure is designed to support much richer notions. The programmer sees a “durable for a login session” extensible XML document (unique per mesh object/group) that can be queried/updated at a very high rate and scale. Like everything in Live Mesh that needs to be queried, the programmer uses the pub/sub engine to signal interest in changes, and waits for notification of such changes.
A durable news event stream. Unlike awareness, which is level triggered against a schema, news is message based. The goal of news and awareness are to create a very real time intimacy around the collaboration experience.
A FeedSync based sync infrastructure that enables any device that is capable of web protocols to participate in bidirectional sync, again in the context of (fully authenticated) groups. One of the “devices” that can participate in this experience is a 3rd party web site. While the version 1 experience is primarily around syncing folders of files, FeedSync and the Live Mesh infrastructure is far more flexible. It could sync lists, tables, photo galleries, playlists, calendars, etc.
A scale blob store that can be referenced (as an enclosure) in the sync feed.
Because this is all built on feeds, all of this functionality is accessible from every endpoint that can run a browser (i.e. darn near everything). The Live Desktop, Windows Live Folders, Mac and mobile experiences are the first examples of the potential of this platform.
It’s just the beginning.
Product Unit Manager, Mesh and Storage Platform
We are delighted to announce the release of our next major update, which will be available later today is live as of now. We’ve added some new features by popular demand, as well as tuned up our performance. We’ve got the juicy details further below. By default your Live Mesh client will automatically update itself within 24 hours of the new build being posted, but you can always right click the Notifier icon in the system tray and choose to force an immediate update. We'll update this blog post once the update is available.
The team has also been hard at work on our developer platform. We are on track to share that work with the world at PDC ’08 (Oct 27-30 in Los Angeles.) You can see a few of our sessions on the agenda page, including “Live Platform: New Developer Services and APIs”, “Live Platform: Building Mesh Applications” and “Live Platform: Mesh Services Architecture Deep Dive”. We’ve seen a lot of interest in our platform experience – the “app” that is the face of Live Mesh today. But Live Mesh is fundamentally a developer platform, and our goal is to enable a wide range of applications that build on our relationship directory and communications and synchronization infrastructure. If you haven’t seen Ori’s Channel 9 video on the platform, take a look to see what we’re getting at.
· Sync Live Mesh folders peer-to-peer only, excluding your Live Desktop. This will make it possible to synch files across your devices (or with devices of other members of a Live Folder) without consuming any storage space or quota in the Live Mesh cloud storage service. For completeness sake, though, we should mention that it’s not a 100% P2P synch – to optimize the synch experience we still use the cloud to store the authoritative metadata for the folder (for example, the file list and change history) and to broker encrypted P2P connections between clients. But the files themselves will not be stored in the cloud. Also, note that only the creator of a Live Mesh folder will have permission to change the cloud synch settings, since all the contents of a Live Mesh folder (no matter which user uploaded them) get charged against the quota of the folder’s creator. We've got some details on how peer communications and synch work up today on Channel 9.
· File conflicts management on the Live Desktop. Pretty much speaks for itself. The same ability to view and resolve conflicting edits to a file that you’ve had in the Windows client is now available on the Live Desktop. Actually, we think it’s an even better experience, since we took the opportunity to streamline the UX when we implemented it for Live Desktop (we’ll bring the same improvements to the client in the future.)
· Added news events for New Live Mesh folder and Delete Live Mesh folder. We’re continuing to tune the news feed to provide the right set of information you need to keep track of what’s happening across your mesh.
· Improved performance when syncing files peer-to-peer. David and Trevor get into some of the details of where we found room for improvement in today's video.
· Better coalescing for news events. In non-geek speak, that means we’ll do a better job showing you only one news event when a user makes a bunch of changes in quick succession.
· News performance and scale improvements. Faster and better, new and improved, it slices and dices!
Windows Vista User Account Control (UAC) Update
In our last client release, we removed the requirement for UAC to be enabled when running on Vista SP1. If you originally installed the Live Mesh software with UAC enabled, then got this update and disabled UAC, you might have some issues upgrading. We'll have an announcement on the forum shortly with details of how to fix.
Last, a technicality for those keeping score at home -- the version number referenced in the title, 0.9.3103.2, is what you'll see in the client software. The version number in Live Desktop will be 0.9.3103.3, since we did a little extra work there after the client release was finalized. Don't worry about the mismatch, this is expected and is the configuration we tested and validated before releasing.
2008-07-14 Update: Excluding Live Desktop from synching a folder is only possible from the Live Desktop itself in this release, we're working on making it an option you can control from any device in your mesh. But for now, the steps to exclude your Live Mesh Folder from synching with Live Desktop are:
As mentioned above, keep in mind that only the creator of the folder can do this, and once the folder creator disables Live Desktop synch the files will not be available via Live Desktop for any other members of the folder.
We are pleased to announce the release of our next update, which will be is now available later today. We’re making Live Mesh available to even more people, and removing the limit on the number of invites that you have. We’ve also greatly streamlined the sign-up process. And of course we’ve made a number of general performance improvements as well. There are more details below. By default your Live Mesh client will automatically update itself within 24 hours of the new build being posted, but you can always right-click the Notifier icon in the system tray and choose to force an immediate update.
While we no longer require that UAC be enabled when running Live Mesh on Vista SP1, if you initially installed Live Mesh with UAC enabled, and then disabled it, you might have some issues upgrading. Please see the “NOTICE: Updating Lie Mesh and User Account Control (UAC)” Announcement on the Live Mesh forums for further information.
As always, we are continuing to improve Live Mesh with all the great feedback we’ve been receiving from our customers. Keep it coming!
The Live Mesh team is pleased to announce that our next update for Live Mesh for Mac will be available later today is now available. We will also be updating have also updated the Live Desktop. This release contains numerous bug fixes, as well as a few new features. Please see below for details, and thank you for using Live Mesh.
For those of you keeping track, the new version numbers are:
Thank you for being one of the first to use Live Mesh!
The recent service update to Live Mesh addresses many of the issues users reported since we opened the Mobile CTP on Oct 30.
With the release of the updated Live Mesh for Mobile version 0.9.3424.9, we are expanding the CTP to more users. We are also lifting the country restrictions on access to the CTP – it is now open to all countries. [Access through a 3G network is recommended for a great experience.]
Since there is limited room in the expanded CTP, hurry on to https://www.mesh.com/Web/Promo.aspx?pcode=Mob_FCFS1 to add your Windows Mobile 6.x phone to your mesh. [Clicking this link will grant access to your Live ID for adding a WM phone to the mesh and redirect you to the device ring, where you can click “+” to see how to “Use Live Mesh for mobile devices”.]
If you already have the Live Mesh client on your WM6 phone, you should see an update notification the next time you login to Live Mesh from your phone. You can also navigate through Menu -> About -> Software Update, to install the latest client.
Thank you for using Live Mesh, and sharing your feedback!
The Live Mesh team is pleased to announce that our next update for Live Mesh for Windows is now available. This release contains numerous bug fixes, as well as a few new features. Please see below for details, and thank you for using Live Mesh.
For those of you keeping track, the new version number is:
The Live Mesh team is pleased to announce that our next update to Live Mesh for Mac and Windows Mobile will be available later today is now available. We will also be updating have also updated the Live Desktop. This release continues to tune performance and brings a few tweaks to the user experience, see details below. Our next update to the Windows software will be coming in the next few weeks.
Mesh for Mac and Live Desktop are 0.9.4014.3. Mesh for Mobile is 0.9.4014.2
Thank you for your continued support of Live Mesh!
Live Mesh for Windows 0.9.4014.4 has been released. No action is required on your part, Live Mesh will automatically update on its own. This release contains numerous bug fixes. Please see below for details, and thank you for using Live Mesh.
· Live Mesh for Windows: 0.9.4014.4
· Updated date/time stamp UI for news events
· Added news events for permission level changes to folders
· Fixed UI for folder permissions in Firefox 3.0, IE8, and Safari
· Fixed general IE8 compatibility issues
· Improved performance and functionality for large file uploads
Thank you for using Live Mesh. We’re working hard to create the best experience and appreciate any comments you have. Please send your feedback on how Live Mesh can be improved, or send anonymous feedback here. Also, if you have a moment, please rate Live Mesh.
Thank you,The Live Mesh team
We are pleased to announce that our next update will be available later today is now available. The new build contains a number of reliability and performance improvements; we've highlighted the key fixes below. By default your Live Mesh software will automatically update itself within 24 hours of the new build being posted, but you can always right-click the Notifier icon in the system tray and choose to force an immediate update.
While we no longer require that UAC be enabled when running Live Mesh on Vista SP1, if you initially installed Live Mesh with UAC enabled, and then disabled it, you might have some issues upgrading. Please see the “NOTICE: Updating Live Mesh and User Account Control (UAC)” Announcement on the Live Mesh forums for further information.
And as always, thank you for all the great feedback!
Amit Mital here – I run the Live Mesh & Developer Platform team. At Web 2.0 in April we announced Live Mesh and opened it up for people to try out our platform experience -- the first evidence of what scenarios our platform is capable of enabling.
We said we’d tell you more about Live Mesh and give you access to the platform in the future, allowing you to build your own experiences on top of Live Mesh. En route to opening up the developer platform we’ve been systematically updating and expanding the tech preview to help us scale out the underlying technology (see behind the mesh). We’ve enjoyed watching our service handling the load, and we want more!
Today we are again increasing the number of available slots in the Live Mesh Technology Preview, and expanding the list of countries that will allow sign-up without a wait list to include Canada, India and Ireland! (although you still need to run with an English locale for now.) This is in addition to the availability we’ve previously announced for USA, UK, Australia and New Zealand (see coverage map).
The experience you see today is just tip of the iceberg! To see what the Live Mesh platform is capable of, check out the Channel 9 videos, and try out the user experience. We’re eager for you help to keep pushing our scale, and your feedback!
We do still have a maximum limit on the number of users we’ll allow into the Technology Preview, but as long as we’re below the limit, anyone in the countries above can sign-up today with no delays or wait list.
We're pleased to announce that our next update will be available later today. This update affects the Live Desktop, Live Mesh for Mac, and Live Mesh for Mobile. We will release an update for the Live Mesh for Windows software next week. See below for details.
For those of you keeping track, the latest version numbers with this update are:
As always, thank you for helping us test Live Mesh!
The Live Mesh team is constantly seeking feedback from our customers to help improve Live Mesh. Today we do this primarily through our forums, our blog, and Microsoft Connect, but there are other, often more useful, ways to collect feedback about Live Mesh.
Would you like to help improve the Live Mesh experience? Below are two ways that you can help.
Complete a survey
We now have an online Customer Satisfaction Survey. Please take a few minutes to let us know how your Live Mesh experience has been.
Enable anonymous data collection
Live Mesh also has a tool that anonymously collects usage data on how the software is (or isn’t) working on customers’ devices. With this tool, we can monitor a variety of data points—such as the frequency of errors, typical network settings, and the reliability of sync—and then aggregate the results to get a picture of how Live Mesh is performing for customers who choose to participate. Learn more about this tool.
This tool is disabled by default because it sends some data about your devices to Microsoft, but you can help us continue to improve Live Mesh by enabling the tool.
To enable this tool, click the Live Mesh icon in the notification area of your Windows taskbar and click your user name. Then click Options, select the checkbox next to “Help us improve Live Mesh…,” and click OK.
Thank you for being one of the first to use Live Mesh. We’re working hard to create the best experience possible, and your help is greatly appreciated!
…but today’s implementation is not ;) Our underlying platform is designed to enable a wide range of scenarios, at broad Internet scale. We closely watch the feedback from our Technology Preview users along with the health and performance of the service, using it to continually improve the system and ramp up our scale.
As we go through this process, we’re hearing your questions about how many folders and files users can put in Live Mesh today. Here’s a quick summary of the upper bounds we’re testing against ourselves at the moment – we’ll expect these numbers to keep going up with subsequent service updates. [UPDATE: these are not limits that are hard coded into the system. They are boundary guidelines we've established based on internal and external feedback, and we're confident that anything under these boundaries will work well for all users. Because they are not hard coded limits, you can exceed these boundaries, and at that point your mileage may vary. Feel free to certify and share your own success stories...and stay tuned as we will definitely increase these boundaries/guidelines as we complete further tuning and testing.]
I’m John Macintyre, the Group Program Manager for Live Mesh Client Platform & Runtime (it fits on a business card if you use 6 point type). I wanted to talk about how Live Mesh client install works, and address the questions we’ve seen about why User Account Control (UAC) must be enabled on Windows Vista in order for Live Mesh to work.
The design challenge we faced with Live Mesh client deployment was to make it simple to install, while providing rich client experiences that are deeply integrated with the device experience i.e. today your Windows Shell, tomorrow your Mac, Mobile device etc.
It’s worth taking a quick look at the client footprint before we cover how it is deployed. The Live Mesh client can be separated into two distinct components:
There is a further subcomponent breakdown but at a conceptual level you can think of the client as a runtime engine with an experience layered on top of it. Today the client is deployed as a single unit but in subsequent refreshes we will enable other configuration and distribution scenarios.
We’ve tried to keep the client deployment model as seamless and simple as possible. It can be broken into three separate stages …
1) Add Device …
The Live Mesh client is deployed through the Devices page of www.mesh.com. Clicking on “Add Device” will initiate the download of the Live Mesh installer. The first thing that you may notice is the installer is relatively small. The initial install of the Live Mesh client is actually just a bootstrap component that reaches out to a server and retrieves the latest version of the client. This provides the benefit of small download from the browser and an always up-to-date client footprint.
2) Run LiveMesh.exe …
Why does Live Mesh require UAC?
At this point it’s worth talking about UAC and why the Live Mesh client requires that UAC be turned on. If you’ve tried to install Live Mesh on a system with UAC disabled you’ll have found that the installer blocks on this configuration. There’s a technical reason why we impose this restriction: In Vista RTM with UAC off, COM does not read the per-user hive, meaning COM objects registered per-user do not work. Since Live Mesh installs per-user without elevation it is subject to this restriction. To prevent users from installing on unsupported configurations we added a block in our installer when UAC is off. Fortunately there’s light at the end of the tunnel for users that run with UAC disabled. Windows Vista SP1 has a change that allows per-user COM when UAC is disabled. With the release of SP1, we have begun validating that Live Mesh fully functions with UAC disabled, but haven't yet finished our testing. Expect this configuration to be supported in a subsequent refresh. As you can probably guess, this also means that even after you install, UAC must remain enabled for Live Mesh to work correctly. If you turn UAC off, we won’t be able to find any of our COM objects.
3) Add Device …
After installing the Live Mesh client, users are prompted to sign-in with their Live ID. This Live ID is used to link the device to your personal mesh. By “device” we generally mean Windows user account. Multiple Live IDs can independently use the same Windows account (similar to Messenger). Once the device is part of your mesh you can initiate sharing (or synchronization) with your other devices, the cloud or other users. Vista users will see an additional option on the Add Device dialog. This option is to enable features that require administrator privileges including system level Live Mesh Remote Desktop (accessing the system while it is locked or an account is not logged in) and peer to peer file transfer. By default this option is selected and users will be asked to elevate to proceed with the device claim. If the user is not an administrator they can disable this option.
Once the user goes through this client deployment flow they are up and running with their mesh-enabled device. The runtime and experience components will continue to update themselves as new versions are available. As much as possible we try to do this without affecting the overall experience or disturbing the user.
Howdy! This is Richard Chung, a client developer for Live Mesh. You can find me blogging sporadically as DevDuck over on red hot place. I was one of the first developers on the Live Mesh team—I’ve been working on this stuff for over 2 years now and have been itching to talk about it!
By now, you’ve read all about Live Mesh. Hopefully, some of it makes sense to you—you might even be able to envision how it can dramatically change the way you manage data across your devices, share and interact with your friends and family, and collaborate with peers or partners! If not, that’s ok. The whole concept of Live Mesh will become clearer in the months ahead, especially as more applications and experiences are created on top of the platform.
Software + Services
When you were first introduced to Live Mesh, you probably played with the Live Desktop. It’s pretty snazzy. Maybe you even uploaded a few files too. Hey, it’s a cool service! You can store stuff in a cloud somewhere and access it anywhere using a webpage. Great!
As I look at the statistics on the service though, I notice that a significant portion of our users have stopped here. This pains me, as there’s a whole lot more you can do with Live Mesh. Didn’t you hear all the hoopla about Software + Services? Ever wonder, “Where’s the software?”
You might have noticed that on the device ring there’s a big orange button with a white ‘+’ sign. The magic happens when you click that big orange button and opt to “add a device” to your mesh. Click “Install” and you’ll download and install a very small program onto your machine. Once set up, you may notice a process called MOE.exe running on your computer. What exactly is MOE?
MOE: Mesh Operating Environment
MOE is an acronym for the “Mesh Operating Environment.” MOE is a service composition runtime that provides a unified view of all Live Mesh services and a simple way for applications to interact with Live Mesh. MOE is everywhere—it’s on all devices in your mesh (as “client MOE”), and it’s in the cloud (“cloud MOE”). The two are quite similar; they provide a symmetrical and consistent programming model between client and cloud. If you’re a developer, you’ll be able to take advantage of these flexible points of entry to Live Mesh in the way that’s most natural for you.
That’s a lot to digest. I won’t go into the developer story today; you’ll see more of that in the months ahead. For the purposes of this post, I’ll only focus on client MOE. Client MOE is at the heart of every device connected to your mesh, be it your PC or Mac or mobile.
The goals for client MOE are simple. Here are some of them:
· To allow seamless access to a user’s mesh and all the data in it;
· To abstract away common functionality, like synchronization protocols;
· To allow existing applications to participate in a user’s mesh, by optionally leveraging the local file system;
· To provide a seamless online/offline experience (also known as “occasionally connected”) by synchronizing and caching metadata from the cloud;
· To update seamlessly, providing new features and fixes in the platform; and
· To use minimal system resources, running in the background all the time.
You’ll notice that the idea of “seamlessness” really runs through these tenets. Obviously, since what we just released is a “Tech Preview,” we have only just started towards achieving these goals today. Rest assured that we will get better!
Let me elaborate on a couple of these points.
Online vs. Offline
In today’s world, many applications just don’t work if they’re not connected to the Internet. It’s much easier to write programs that assume connectivity to a service, than not. But why should it be so hard? MOE abstracts all this behavior for you. It caches the metadata that’s in your mesh and automatically synchronizes it, so that talking to MOE is essentially like talking to the cloud. And talking to MOE will always work, regardless of whether or not you have Internet connectivity. MOE will do the heavy lifting for you by synchronizing changes you’ve made locally, whether you are online or offline, with your mesh (when you have internet connectivity).
As high as our hopes are for Live Mesh, we realize that there isn’t anything today that fully showcases the true power and potential of the mesh yet. This is one of the reasons we’ve built simple file synchronization capability as a rich experience on top of MOE. This way, any existing application that writes files to disk (virtually all applications) will suddenly be able to leverage Live Mesh, without *any* changes to the application.
For example, say you use Windows Live Writer to collaboratively write blog posts, but it often takes several iterations before posting. You can now save your blog drafts into a Live Mesh folder, and suddenly those drafts are everywhere—on each of your devices and those with whom you share the folder. An idea for a post pops into your head on the bus ride to work? Start a post on the bus, add content to it at work, have others read it over and revise it on their own devices, add your final touches, and post at home that very evening! All without even thinking about e-mailing attachments back and forth.
Working on Live Mesh
I’ve been working on Live Mesh for over two years now. Prior to this I was a developer on the Windows Live Messenger service. When I first started on Live Mesh, I thought it would be a piece of cake. After working on huge scalable services that support millions of users, how hard could writing a little lightweight client be? It turns out that it’s quite hard. Synchronization may appear to be an easy problem (and in fact, there are a ton of apps out there that do simple file sync already), but it’s actually really tough to solve it in a *generic* fashion so that other applications can be built on top of it. That’s what we’ve strived for. (We’ll have a future post on how Live Mesh uses FeedSync underneath the covers, and what types of extensibility and other advantages that provides. Stay tuned!)
Here, There, Everywhere
Live Mesh is about to become your new best friend. The one you can’t live without and is always in the background to take care of things for you.
So what are you waiting for? Download and install Live Mesh on all your devices today! You’re missing out if you don’t. And be sure to give us feedback and report any issues you see!
We've been listening to your feedback here and on the forum, and made a number of bug fixes and changes to better suit you. The update will be published later today. You may notice a slowdown in service or some display issues (missing icons, folders slow or not synchronizing) while the servers update. If you are still seeing these problems after the 20th, please report them!
To install the new version
· Use Live Mesh! New updates will automatically apply when you log in.
Tell us what you think
· Read and participate in the forums for current discussions about fixes, problems, and ways people are incorporating Live Mesh into their daily routines.
Invite your friends and family
· Share a folder with your family or friends so they can experience Live Mesh, too.
What we fixed
· News not appearing until a second person has logged in.
· Fixed date format and removed region requirement. You still need to set your OS language to English.
· User names with non-US-ASCIIcharacters are now supported.
· Fixed device appearing offline in the notifier but showing online on your Live Desktop.
· Fixed synchronization failure when the network is unavailable.
· Fixed the Windows Explorer crash when folders were closed
· Fixed the Windows XP “Roaming Desktop Icons” issue with Live Mesh Remote Desktop.
· Fixed the mesh bar not always opening when you open a Live Mesh folder
· Fixed the “I’m interested in” in your Windows Live ID profile to be correctly viewed. No longer will you be “searching for love and romance” when you really wanted “Enterprise Networking.”
· Fixed logs not being collected when your Windows XP login name has a space in it
· Fixed SilverLight version error with the Beta release
· Fixed SilverLight Play and Pause buttons being swapped around
· Fixed login names with a single character domain (livemesh @ m.com) not working correctly
Thank you for your time and participation!
Hi, I am Nikolai Smolyanskiy, a developer on the Accounts team. I work on the Account service that takes care of account management, and user/device authentication and authorization in Live Mesh.
There were many questions asked by early adopters about how their data is transmitted and stored in Live Mesh, and how access is controlled. In this post I’ll talk about the security and authorization architecture behind Live Mesh, so that you understand the amount of care we take and feel better about trusting your data to the Mesh. This post can also be found here.
Here is the diagram that illustrates all communications between user devices and Live Mesh cloud services and encryption/security mechanisms used in these communication channels:
Live Mesh security is rooted at the authentication provider (Windows Live ID, aka Microsoft Passport is our provider today) which is used for initial user and device authentication. Once a user or a device is authenticated and a corresponding authentication token is obtained, the Live Mesh client passes this token to the Live Mesh Account service to access the root of the user’s mesh and to get the initial set of Live Mesh tickets. These tickets are used for further Mesh operations on other resources that this root is pointing to. All communications with the Live Mesh cloud services are done via HTTPS / SSL, so 3rd parties cannot intercept and read client-server communication.
All user (or device) related resources in Live Mesh are organized in a RESTful manner, i.e. they form a graph where each node is identified by a unique URL and represents a given resource. Nodes contain resource metadata and links to other resources. Mesh operations are essentially CRUD operations on the nodes of the user tree or nodes of other user trees if those users shared any data. Live Mesh cloud services check access rights in each operation by inspecting passed tickets and authorizing access only if a correct set of tickets is passed. Tickets can be obtained from the Account service or from responses to previous cloud operations.
Live Mesh authorization tickets are standard SAML tickets. They are digitally signed with the Live Mesh private key to prevent spoofing and they expire after a limited lifetime. Some tickets are used to just authenticate users or devices, other tickets contain authorization information about user/device rights. Cloud services inspect each resource request and authorize access only if it contains valid tickets (correctly signed and not expired) and these tickets specify that the requestor indeed has access to the requested resource. For example, a device X can initiate P2P data synchronization with device Y only if it presents a ticket that is correctly signed by Live Mesh and contains a record saying that both device X and Y are claimed by the same user OR if it contains a record saying that X and Y have the same Live Mesh Folder mapped on them (in the case that the devices are claimed by different users that are members of this Live Mesh Folder). Tickets are passed to the cloud services in the Authorization header using HTTPS to prevent replay attacks.
Each device in Live Mesh (computers, PDAs, mobile phones) has a unique private key that is generated during Live Mesh installation and used to authenticate the device in P2P communications with other devices. When a P2P communication is being established between two devices, they first use asymmetric encryption (RSA algorithm) to exchange encryption keys and then use symmetric encryption (AES with 128 bit key) to transfer data/files over TCP/IP. The RSA exchange guards against leaking symmetric encryption keys. AES encryption protects actual data from prying eyes. Live Mesh also uses a keyed message authentication code (HMAC) to verify the integrity of the data exchanged on a P2P channel.
If there is no direct connection between two devices (for example, if one device is behind a firewall), then the cloud communication relay located in the Microsoft data center is used to forward data packets from one device to another. All the traffic is encrypted in the same way as in the case with direct P2P link, i.e. first keys are exchanged with RSA and then traffic is encrypted with AES. The cloud relay cannot decrypt/read user data, since encryption keys are exchanged with the use of asymmetric encryption (RSA).
Live Mesh cloud services help devices find each other and establish communications. They cannot read synchronized user data/files relayed through the cloud, except for the case when user files are synchronized with the cloud storage (i.e. Live Desktop). At the moment, the limited Tech Preview of Live Mesh synchronizes your files not only between your devices, but also with your cloud storage (which you can access via Live Desktop) until you reach your storage quota (5GB as of today). So your files and metadata that describes them are stored in the Microsoft datacenter. They are protected by strong access control mechanisms, but the data is not stored in encrypted form. After the storage quota has been reached, all files are synchronized only P2P and not stored in the cloud (only metadata is stored in the datacenter). In the future, Live Mesh will allow users to selectively choose which files or Live Mesh Folders they want to synchronize with the cloud. If you choose to synchronize your data/files between your devices only, Live Mesh will not store your files in the cloud and will only store metadata that lets the service to operate.
We're continually working to fix bugs reported by our Tech Preview users, as well as implement popular feature requests (hello UAC ;). We pushed a new update out last night (version 0.9.2815.17) that includes some key fixes noted below. You'll be automatically notified of the update by your Live Mesh client software, or you can right click the Notifier icon in the system tray and choose "Update Live Mesh" to force an immediate upgrade.
Thank you for all your great feedback, and keep it coming! You can submit (and view others’) feedback and bugs here on the Microsoft Connect website. Read and participate in the forums for current discussions about fixes, problems, and ways people are incorporating Live Mesh into their daily routines. Send us private feedback using our online contact form.
With PDC just around the corner, we will be releasing the next update to Live Mesh, and it’s a major one. In fact, this is the most significant update to Live Mesh since we opened as a technology preview back in April. We know that many of you are going to be excited to see all the new features and fixes this release will bring (and there are a lot of them, many in response to your requests.) In the spirit of openness with you, our technology preview customers, we’d like to take a little time today to talk about what the update experience is going to be like—and why.
For all the previous updates to Live Mesh that we’ve released since the tech preview began in April, customers were notified (via a little pop up above the Live Mesh notifier) that updates were available. When you were ready to update the Live Mesh software on your device, you clicked on that notification and the process began. If you chose not to update right away, though, that was okay—Live Mesh continued to work uninterrupted. With this update, however, things are going to be a little different. Specifically, all Live Mesh users will have to update their Live Mesh software to continue using the product. This time, you won’t be able to wait to update Live Mesh—in order to keep using it, you’ll have to update the software, and until you do that synchronization and Live Remote Desktop will not be available. There is a fairly straightforward reason for this: we are upgrading our software and services to support an open beta, and to handle that scale we need to get all of our existing users onto these new systems quickly. For this particular release, we are forgoing backwards compatibility in favor of making the new set of features as broadly available as possible. Once you see how much Live Mesh has grown, we think you’ll agree that this was the right tradeoff!
We hope the advance warning reduces the amount of interruption this upgrade might cause. We will, of course, let you know before we begin to actually deploy the new update—we just wanted to make sure all our valued early adopters were “in the know” right from the start.
Stay tuned for lots of Live Mesh and Live Services news from PDC over the next week, and thank you to all of you for the great feedback you’ve provided over the last six months. Live Mesh wouldn’t be where it is today without all of you!
NOTICE: Unfortunately, the update mentioned below has been slightly delayed (see the Update below), and will not be available today. We will let everyone know later this week when the update is ready. In the meantime, consider this a preview of what's coming! [We do apologize for the delay, and thank you for your patience. We want to make sure that everyone has the best possible experience once the update is released, and we need a little more time to ensure that is the case.]
UPDATE: In the world of services, we have blackout periods where no updates are allowed. This is to ensure stability during, e.g., the holiday season when use of a product goes up and the availability of employees to fix issues goes down. The Live Mesh team entered this blackout period before the final testing of our next Live Mesh client for Windows was completed. Thus, we're holding this update until after the holidays - look for more news in early January.
While we updated the clients for Mobile and Mac last week, as well as the Live Desktop, those of you with Live Mesh on Windows computers had to wait a little for your update - but we're happy to say that it's coming later today! Thank you for your patience. See below for the details.
This update will bring your Windows Live Mesh client up to version 0.9.3424.11
Our forum announcement from yesterday got a lot of people talking (more). We just updated the forum post to clarify exactly what's going on, but I want to explain here as well. This week we did two things:
We'll continue to listen to your feedback (keep it coming!), add features, and open up for more Live Mesh users over time. And we'll have plenty to say to developers about the platform at PDC.
Abhay Parasnis here, General Manager for Live Mesh. Today is a big day for Live Mesh, but before going into details, I want to thank all the existing users of our Live Mesh technology preview. We REALLY appreciate the great suggestions and enthusiasm so many of you have provided. Hopefully you have seen how your input has influenced the evolution of the offering. Our announcement today should provide another example…
We are delighted to announce that Live Mesh is going into open Beta over the course of this week and includes several new features (see below) that enhance the experience by giving users more control, increased reliability, and improved performance. With all the PDC news it’s also worth restating what exactly Live Mesh is. Live Mesh is an experience that is natively integrated with the Live Services component of the Azure Services Platform – it makes the core functionality of Live Services available to end users.
Our efforts with Live Mesh arise from the two dominant trends in the industry today where the web is more and more central to our digital lives, and where we are adopting a wider diversity of increasingly powerful devices. As we take advantage of this new digital world, our experiences often become fractured and complex. We create and accumulate massive amounts of data, and the information and applications we care about reside on different devices and are spread across the web. We also interact with a broader array of people, struggling to stay connected with them and informed of the latest happenings. Users want, and increasingly, demand a seamless “just works” computing experience that brings together their devices, their data, their applications, and the people they interact with.
Live Mesh provides downloadable software for PC’s and a service on the Web that extends the Windows experience for seamless synchronization of files (photos, documents, etc) and apps, across devices, and enables easy sharing with people – concepts we focus on in our mantra of ‘data, devices, people, and applications’.
Back in April when we did the initial tech preview release of Live Mesh we emphasized a vision for how the offering would bring together your world of devices – a starting point to deliver on the data, devices, and people aspects of our vision. With this beta release we are making another significant step toward this goal. In particular… with this Beta we are providing limited availability of our new Mac and Windows Mobile 6 clients – providing users with a wider range of devices that can participate in their mesh. Later this week as the beta rolls out, access to the Mac client will be provided from the device ring experience at www.mesh.com. Instructions for accessing the Windows Mobile client will be made available at this blog later in the week.
When we did the initial tech preview release we also emphasized how the underlying platform would be made available to developers later in the year. We delivered on this promise with the announcement today that the Live Framework – a uniform way for utilizing all the Live Services including the mesh platform technologies – is now available as a Community Technology Preview. This CTP includes several applications we have built that are enhanced and run in the mesh. With this developer release, we are starting to realize the “applications” portion of the Mesh vision. This means that in the near future our full ecosystem of developer partners will be able to enhance their applications with mesh technologies providing even more value to our Live Mesh users. Also with our Live Services announcements, we are delivering in a bigger way against the people element by enabling developers to build applications that integrate with the more than 460 million Windows Live users. To learn more about our Live Framework CTP, please check out www.azure.com.
After this year, Live Mesh will be utilized in the next major release of Windows Live. This is the first planned integration and ship vehicle for Live Mesh, and there will be others as we continue to deliver on our overall Software-plus-Services strategy.
We hope you are as excited as we are about this milestone – thank you again for helping us evolve Live Mesh!
Live Mesh New Features include…
· Additional Live Mesh folder member roles have been enabled: Creator, Owner, Contributor, and Reader
· The option to drag and drop files to folders on Live Desktop
· The option to sync Live Mesh folders P2P only, excluding your Live Desktop, can now be enabled from the local device
· Improved Peer to Peer synchronization performance and reliability
And many more…
For more details on Live Services, check out David Treadwell's interview with Channel 9: