Application Service Providers (ASPs) provide customers with a hosted application solution. Although many may have thought that the ASP market died in 2001, it has managed to hang in there and is surviving if not thriving in some cases. I have worked with three of them in the last year alone. Often, these folks have settled on a niche for servicing smaller companies. Their customers tend to be totally focused on a non-technical business that needs to use some computer technology. As a result, these customers tend to have less than one full time IP person and do not want to hire one. So the ASP makes an attractive solution to those kind of customers because they have IT professionals to ensure that the aspects of IT administration (picking the right software, applying best practices on IT administration, ensuring backups happen) are applied to their company. Ultimately, it is the sharing of the professional IT staff that makes the ASP attractive to the customer.
To be cost effective these ASPs today use Citrix and/or native Terminal Services (TS) so that the hardware and operating system can also be shared. The customer uses a PC on their site and remotely accesses their hosted desktop using the RDP or ICA protocols. The hosted site, in addition to the hosted desktop provides the applications as well as back-end file stores and databases. Microsoft also helps enable this market with attractive pricing (Server Provider Licensing Agreement) for things like hosted Office and exchange.
Complicating the setup is the need to ensure complete security to prevent any possible cross-customer data breech. Active Directory (AD) is used within the hosting site, even if not in use at the customer site. The tendency is for the ASP to build a single domain and create an Organizational Unit for each customer. The ASP often has to add in Application Virtualization to eliminate application conflict. These application conflicts may be due to application-TS issues (apps that are designed for the single user desktop), application interference (for example dll version conflicts between two applications), or, or Multi-tenancy issues.
That last one, multi-tenancy, means application issues that arise when you want to host more than one company on the same terminal server. For example, each customer might use Quick Books and each need to be able to see only their data. The same goes for SQL or Oracle based applications.
I am wondering if a Virtual Desktop Infrastructure (VDI) based approach might also emerge as a solution for this space. A VDI based solution would use Virtual Machine technology to host a virtual windows image for each user within the customer. To keep things simple and offer the customer a best quality user experience, I imagine that these these windows instances may be personalized by the end user, however they won't be administrators on the windows instance. The ASP is responsible for maintaining the image and applications so letting the user try to install whatever they want would be a really bad idea.
Using an approach of pooled standard images that are less customizable might be an option, but it wouldn't make much sense to me. To start with, the ASP would need to build a custom image per customer, with that customers installed applications and configured to the customers back-end resources. Starting with such an image and then cloning to private images per user within the customer would not be much more work, and yet would vastly improve the user experience.
I can imagine that the existing ASP could offer the customer either option. In offering both options to the customer, they would be offering either a shared hosted desktop experience, or an individual hosted desktop experience. The VDI desktop should probably be priced at a premium by the customer when compared to a Terminal Server based desktop due to the improved (perceived?) user experience.
From the ASP perspective providing both options , VDI has mostly increased costs for VDI. Each VDI instance needs a client OS, rather than sharing the TS OS. Scalability per the hardware will also be lower for VDI. I have heard other experts on this give factors for this scalability of anywhere from 2.5x1 to 10x1 (meaning that for the same hardware, or at least hardware dollars, you can host N users via Terminal Services for every one user that you could support using VDI). Additional options like OS streaming and disk differencing might seem attractive as well, but not if they add to the infrastructure costs or make things more complicated.
On the flip side, the ASP should have a much simpler infrastructure with VDI. For example, Application Virtualization may not be needed for these customers via VDI as all application-TS issues and multi-tenancy issues go away, and the likelihood of multi-application conflicts are greatly reduced. Even given the extra costs involved, VDI may look very attractive to the ASP because they can implement a considerably simpler solution. This simplification may lead to ASPs that offer only the VDI solution and dropping TS as an option.
A VDI based ASP solution might increase the potential customer base for ASPs, but probably not by much. Until ASPs create a compelling case for companies with IT staff to use their services the market will remain limited. VDI by itself probably does not make that compelling case.