Brian Madden Logo
Your independent source for application and desktop virtualization.
Marketplace

advertisement
Brian Madden's Blog

A Technical Analysis of Citrix's Application Streaming Announcement

Written on Oct 11 2005 18,291 views, 60 comments


by Brian Madden

Citrix announced at iForum today that they are developing application streaming technologies to make centrally managed desktop applications available offline to client machines. From a marketing standpoint, this is exactly what Softricity does.

To be fair, Softricity has nothing to worry about. I spent some time in the Tech Lab looking at Citrix’s application streaming project (codenamed “Tarpon”), and trust me, this ain’t Softricity. So while Citrix may targeting Softricity head on in this case, the two companies’ technologies are very different. (Just for the record, the Citrix lab guys never mentioned the word “Softricity,” and they sort of nervously laughed and looked at each other when I mentioned it.)

Citrix Application Streaming (Project Tarpon): What it is and isn’t

Project Tarpon is a set of technologies that are used to package and “stream” applications from a central server to individual client machines. The applications are then executed locally on the client. The cool thing is that the applications are not “technically” installed on the client; instead, their files, DLLs, and registry settings are packaged up and sent down to the client where they’re executed in a Citrix Application Isolation Environment (AIE). This is the same AIE technology that Citrix uses in Presentation Server 4. In fact, this whole Project Tarpon / application streaming thing is really nothing more than “AIE for desktops” with a few management bits written to glue everything together.

The key reason for creating Project Tarpon is that users with laptops can run Tarpon applications even when they’re offline. This has always been a weakness for traditional server-based computing solutions like Presentation Server, so now Citrix can offer a good story for both client/server and desktop Windows applications.

How does Project Tarpon work?

First of all, it’s important to say that at this point, Project Tarpon is just a very early prototype / proof of concept. It is not even beta code yet. I’m going to talk about where Tarpon is today, but it’s important to note that the challenges I outline here may not be representative of the final product. (By the way, with regards to the final product, Citrix has not yet chosen how Project Tarpon will be released. Stand alone? Presentation Server 5? Feature Release? Something completely different?)

Tarpon works by making applications available to users in the same way that current published applications or published content is available (via Program Neighborhood Agent, etc.). The first step is that an administrator must create a Citrix Tarpon application package. This is done by running a special packager utility on a standard computer. The utility watches an application’s installation procedure and makes a list of everything the installation process did (which files were installed, registry keys that were modified, etc.). Once the installation process is complete, the Tarpon packager gathers up all of the bits needed to install the application and creates a package file that sits out on a network share. The package file is then advertised to users or groups like any other Citrix published application.

The next step is for the user to run the application. Project Tarpon requires a client-side agent installation where it basically adds the application isolation environment capability to the client device. Presumably this capability will be incorporated into the standard ICA client when Tarpon is released.

Once the Tarpon application is published, the user clicks on the application icon in PN Agent (or the start menu or wherever). The client retrieves the application’s information from the server. The client sets up an isolation environment and copies the application’s main executable into it. Then the executable is launched.

There are some file system and registry filter drivers as part of the isolation environment that watch for resources the application calls for. If the app needs a specific DLL, the filter driver intercepts that call, copies the needed DLL down from the Tarpon share to the client and then makes that DLL available to the executable within the isolation environment. This process is repeated for every file that’s part of the application package.

What ultimately ends up happening is that the entire application gets cached on the client device within the isolation environment. The idea is that a laptop user could use their laptop without a network connection and the application could be executed from the cache—the user wouldn’t even know it wasn’t a “normally” installed application (except for the fact that it wouldn’t show up in the Add/Remove Programs list).

Other random tidbits about how Project Tarpon works:

  • If you need to update a particular file or apply a hotfix to a Tarpon application, you can simply update an existing package. This update will increment an internal version counter in the package, and the new file(s) will be copied to the user’s client the next time they launch the application while connected to the network.
  • The prototype that we saw at iForum only supported SMB (via UNC shares) as the method of copying packages from the server to the client. Hopefully Citrix will add HTTP/S support, although they may force you to buy an Access Gateway to do this.
  • The transfer of package files from the UNC source to the client device is not compressed at this time, even though the files actually live on the server as part of a compressed CAB file.
  • Even when executing out of the cache, the individual files that make up an application are checked against their source and replaced if they’ve been deleted or tampered with.
  • Project Tarpon applications definitely start up and initially run more slowly than applications that are actually installed locally the old-fashioned way. How much of an impact this will be depends on (a) the size of the application, and (b) the network speed between the UNC share and the client workstation.
  • Applications running within Isolation Environments can communicate with applications are that locally installed on a client device outside of the isolation environment. However, this is one-way and the reverse is not true. For example, Microsoft Word running in an AIE will be able to use the File | Send As Email function to open a new mail message in Outlook locally installed on a client device. However, Word installed locally on a client device would not be able to create a new message within Outlook running in a local AIE.

Why didn’t Citrix just buy Softricity?

Since this sounds a lot like what Softricity does, why didn’t Citrix just buy Softricity? Citrix did try to buy Softricity a few years ago, but a deal could never be completed. No one is really talking about what exactly happened (because these discussions never “really” happened <wink>), but the general consensus is that Citrix wanted to buy the Softricity sequencing and streaming environment right as Softricity was entering the desktop market, and the two companies couldn’t really agree on which components would be bought and for how much.

So instead, Citrix just decided to write their own Application Isolation Environment product for their servers (which was released last April in PS4). Citrix didn’t initially plan on taking this product to the desktop, although one developer tried to see if he could get AIE to work on Windows XP so he could isolate his crazy IE plug-ins, and in doing so a new product was born.

What does this mean for Softricity?

When I first heard the keynote speech that included a description of Project Tarpon, I thought Softricity was dead. However, now that I know more about how Tarpon works I think that Softricity doesn’t have anything to worry about. There are several reasons for this:

First of all (I want to be 100% clear on this), Citrix’s Application Isolation Environments (both in PS4 and Project Tarpon) are NOT application virtualization. Softricity has application virtualization capabilities. Citrix’s AIE are simply file system and registry redirection.

Second, Citrix’s “Application Streaming” is NOT “real” application streaming. Softricity offers streaming capabilities where individual function calls from individual files are cut apart and sent down to the client on an as-needed basis. Citrix’s Project Tarpon, on the other hand, simply copies complete files down to the client one-by-one as they are needed. So yeah, I can see how some could say this is “streamed,” but I think the de facto conventions of the word in this industry suggest that this is not an appropriate description for what Citrix is doing.

Third, Softricity is now on Version 3 of their product, and this Tarpon stuff will be Version 1, so Citrix definitely has some catching up to do.

What does Project Tarpon mean for Citrix?

In many ways, Citrix doesn’t necessarily have to compete directly with Softricity with Project Tarpon. Citrix is focusing on managing all applications—client/server, web, and desktop. If Citrix can integrate their application streaming with Presentation Server in a really cool way then they won’t have to worry about outside competition like Softricity.

For example, Citrix could make it so that you could publish two versions of an application—a traditional ICA-based Presentation Server version, and a desktop streaming Project Tarpon version. A user would be only be presented with a single icon for the application. When the user double-clicked the icon, the system would make a runtime determination as to whether that user should get the ICA version or the locally streamed version of the application. This could even be based on Citrix’s Smart Access technology that’s tied into their Access Gateways. Is the user connecting from a corporate laptop? Stream the app locally. Are they connecting from a personal computer at home? Give them access to the app via ICA.

How will Microsoft fit into all of this?

The dark horse in this whole application streaming race is Microsoft. Even though Citrix never mentioned Microsoft (or Softricity for that matter), it’s no surprise that Microsoft is looking at streaming technology and that this capability will play some role in some future version of Windows. Of course this will be a while from now, but it’s still worth thinking about. (Future Article: “Is Microsoft Windows Server 2010 a Citrix Streaming Killer?”) But of course that’s the dance that Citrix and Microsoft dance, and I don’t see it changing anytime soon.



Comments

Mitch Beaumont wrote Citricity
on 10-11-2005 8:58 AM
All sounds pretty good and I do like your suggestion about inegrating this technology with smart access - Is there any talk of building license management functionality into this product?

BTW - Do you have any electronic copies of the presentations etc from Iforum that you could post on the site for those of us too poor to afford a ticket to vegas!
Mitch Beaumont wrote Citricity Part II
on 10-11-2005 9:40 AM
1) Will there be a tarpon agent which runs on a server, similar to the Softricity Terminal Server Client?

2) I know Appsense have been working with Softricity to allow integration between their new management suite and the Softgrid Client so that isolated (Virtualised) apps can be managed? Is this something Citrix will be looking into .... ?
Guest wrote Softricity ZeroTouch already doing Smart Access
on 10-11-2005 9:50 AM
Good overview. BTW, your point about smart access is already in Softricity's ZeroTouch product. It can determine, in real time, the best way to deliver an application (direct or via screen-scraping) based on the bandwidth, ip range, time of day and device the end-user is on.
Jonathan Merrill wrote Softricity Can't Be Surprised. . .
on 10-11-2005 10:21 AM
I actually made this prediction at the North East Ohio Citrix User Group meeting when Softricity made their presentation. As stated before, Citrix has lost their focus on what put them on the map to begin with. Citrix has no where to go but to build these services into their product to keep their client base. It's no surprise that they will be running to catchup with features as time goes on.

My concern with Citrix is they continue to price themselves out of the SMB space, offering solutions that only marginally meet the need. Sure, additional functionality is great (i.e. application streaming), but pricing of the product is still the number one detractor.

That, and Softricity does do it better. We'll have to see. . .
Guest wrote Crazy Keynote claims at iForum
on 10-11-2005 11:30 AM
I was sitting in the iForum keynote yesterday when I heard Citrix try to redefine the term Virtualization. They claimed they had been doing "virtualization" from day one. Myself and several others around me just shook our heads, we're not that gulible. Funny way to try to hop on the bandwagon a few years late.
Josh Holst wrote Softricity
on 10-11-2005 11:43 AM
I asked the guys in the tech lab if this product is why Softricity is not here also, and they just looked at each other and kind of laughed. Depending on pricing I could see this as a low cost answer for smaller orgs. who can't afford Softricity.
Brian Madden wrote Re: Crazy Keynote claims at iForum
on 10-11-2005 11:47 AM
Yeah that was a surprise to me too. I asked Mark Templeton about this in the press conference after the keynote, and his response was something to the affect that Citrix is NOT one of those companies that tries to co-opt a term for their own use!?! I was going to do a writeup on this last night, but I was like, "ugh! I don't have the energy.."

I'll share all this stuff in an article tonight.

Brian
Brian Madden wrote Re: Citricity Part II
on 10-11-2005 11:55 AM
Yes, they want to make this an option for sending apps to servers that could potentially replace IMS. (I don't mean that this will replace IMS, I mean it would be an alternative to using IMS.)

As for management, the prototype had a snap-in to the MMC-based Access Suite Console, and you essentially "publish" these Tarpon apps, so yeah, you could say these apps were managed too.
Guest wrote Ketchup verses Catchup / App steaming = Softricity
on 10-11-2005 12:56 PM
Ketchup verses Catchup,
Brian, thanks for shedding light on project RAID, which we where lead to believe was streaming technology. Citrix has a long history of crafting vocabulary to fit their marketing needs, although this form of "hacking" only fools inverters, customers and the channel allowing the folks in the ivory towers to continue to milk the machine.

How unfortunate that after all this time and after all the promise we will wind up with yet an other bottom of the barrel technology from Citrix. History has shown us time and time again (Vertigo, Extranet, Conferencing and Password Manager, NFE, MSAM, Net6 /AG, and I must add where is Smart Access?) that outside of Citrix core, i.e. now defunct MetaFrame, Citrix is unable to deliver a market leading technology.

In today's world only some are lucky enough to inherit something of value. Yet a smaller subset of folks can take that inheritance, work hard and turn it in to something bigger. In the end most trustfarians just take the cash and act like rock stars and live fat off the hard work of others.

I don't care what Citrix says, App steaming = Softricity.
Guest wrote Re: Citricity
on 10-11-2005 12:59 PM
Keynote presentation video is available on http: Jim K
Guest wrote Re: Ketchup verses Catchup / App steaming = Softricity
on 10-11-2005 2:00 PM
Softricity is not about App Streaming... Basically, I (and many others) could care less about app streaming for Citrix/TS Servers.. I can easily script and deploy apps.. What softricity is really about is virtualizing applications... Sure Citrix AIE can do file/registry isolation and redirectly, but that's about it.
Garry Sharpe wrote Re: Ketchup verses Catchup / App steaming = Softricity
on 10-11-2005 3:17 PM
hmmmm......... a little harsh perhaps?
Josef Zeiler wrote APP STREAMING SEEMS TO BE NICE, BUT WHAT`S ABOUT DOCUMENTS AND FILES?
on 10-11-2005 3:46 PM
I just wonder how I will be able to get hold of all my documents on my file server in the office, when I have streamed my office application to my laptop and when I am out on the road without any network connection.
And who /what is going to take care of the syncronisation of my PST-File when using a streamed version of Outlook? Is it streamed to my laptop too?
But when I have to care that much about management and I have to care that much about syncing documents and so on, what is the advantage compared to a locall installation and technologies like Offline Files?

Guest wrote RE: Citricity Part II
on 10-11-2005 4:03 PM
Hi Mitchy,

Specifically, AppSense worked closely with Softricity to ensure that AppSense Performance Manager can hook into and optimize virtualized applications, thus enabling server consolidation on softricity servers.

All the best,

Stephen Voisey

Channel Manager, AppSense
Guest wrote Re: Re: Ketchup verses Catchup / App steaming = Softricity
on 10-11-2005 10:27 PM
Please help me understand.

As far as I can tell the Softricity and Citrix isolation technologies are functionally very similar. That is they both seem to isolate file, registry and objects. One difference is that the Softricity isolated applications are turned into a single file, whereas AIE applications are not. Another is that Softricity has done a great job of marketing their product as something new and unique.

Can someone help me understand the difference at a technical level? Without using marketing fuzz?
Guest wrote Re: APP STREAMING SEEMS TO BE NICE, BUT WHAT`S ABOUT DOCUMENTS AND FILES?
on 10-11-2005 11:13 PM
Come on. You can't be serious. If you are offline you obviously can't get your documents off of a server that is in your office. You would have to pull them over to your laptop before you disconnect from your network.

Guest wrote Re: Re: Crazy Keynote claims at iForum
on 10-11-2005 11:46 PM
No, Mark. Citrix doesn't just try to co-opt a term. They just co-opt a whole product strategy, marketing message and product demonstration :-) Seriously, you could see the slime coming off of Templeton and Brian Mason when they were presenting Softricity's whole solution and trying to make a case that it was a "new" Citrix idea and product. Very funny stuff.
Guest wrote Re: Re: Re: Ketchup verses Catchup / App steaming = Softricity
on 10-12-2005 12:25 AM
If you want a good in-depth view of the differences - without the marketing distractions - check out Doug Brown's "To Install or Not Install" (or some title like that) white paper. You can find it somewhere on www.dabcc.com It is a good overview of ESD, AIE and Softricity's Application Virtualization technolgies - what the differences are, etc.
swordofjustice@gmail.com wrote Re: Re: Re: Crazy Keynote claims at iForum
on 10-12-2005 12:51 AM
I think what everyone is forgetting is that Virtualization technology has been around since the late 1960's. All of this stuff is not new.

And if I can somehow dig up some old WinFrame material from the mid-1990s I bet I will find the term "virtualization" used to describe what ICA is doing.

To be completely fair Citrix is now the 6th player on the market with an "application streaming" technology. Softricity by no means corners the market with their solution.
Guest wrote Re: Re: APP STREAMING SEEMS TO BE NICE, BUT WHAT`S ABOUT DOCUMENTS AND FILES?
on 10-12-2005 3:40 AM
I believe he was trying to mean that with Citrix you would have all your applications AND documents available compared to what you get with only app streaming. Ofcourse this is only half the truth, if you go with app streaming it is a must that you have offline documents.
While I appreciate the idea of Softricity, I don't get it why you would need Softricity. The need for an application conflict solution is not that great, especially in environments with under 500 users. Application installations could be done with some other tool with much cheaper price.
I don't feel that it is easy to have a good ROI with softricity versus what you get with server based solutions.