By ThinGuy on Oct 03, 2007
CLAIM: Only raw bitmap changes are sent, not drawing commands such as used by RDP, ICA and X Windows protocols. Like VNC, "SLIM" is a very simple protocol to implement on the client, however it typically uses far more bandwidth than protocols that use drawing primitives and is more prone to screen damage.
Windows-based terminals that the competition sell employ either the Citrix ICA protocol or the Microsoft RDP protocol to communicate with a server running Windows Terminal Server. These protocols are quite similar in nature to X but are tied to the Windows GUI API (ICA to a lesser extent than RDP). On the other hand, the low-level Sun Ray protocol has no such bias and can be used by a system with any rendering API. Another difference between them and the Sun Ray protocol is that they are highly optimized for low-bandwidth connections. This is accomplished via a variety of techniques, including Windows object-specific compression strategies (run-length coding of bitmaps), caching of Windows objects and state at the terminal, and maintaining backing store at the terminal. Because the resources included in the terminals directly determine the performance and bandwidth savings possible, these types of systems can have expensive terminals which constantly require upgrades to improve performance. Consider that last sentence for a moment. If it is not true, then why do the competition offer so many different models with varying amounts of RAM, CPU's, graphics cards, flash storage, and operating systems?
Sun Ray interprets the ALP rendering commands into a local frame buffer which drives the raster refresh to the display. Original ALP rendering commands were set pixel, fill rectangle with solid color, expand bitmap, expand transparent bitmap, copy screen area, and color space convert/scale YUV pixels to RGB pixels. Call me silly, but those seem like "drawing commands" to me. Since the release of SRSS 1.0, there have been a number of other rendering commands added such as LC and DWT for Low Bandwidth and Zero Width Line Fills/Fill List of Spans for local rendering (what the competition calls primitives). The Sun Ray protocol also has features for dropped and out of order packets, screen damage protection so these claims by competitors are not only unwarranted, they are plain wrong.
You can view an older blog entry comparing and contrasting ALP and ICA here. The beautiful thing is when they are used together, it's the best bandwidth scenario of all!