A rövidítésben „SLR”-ként szereplő szócska a Citrix által már régebben kifejlesztett eljárást takar. A legtöbb ember azonban nincsen teljesen tisztában ezzel az eljárással illetve azzal, hogy pontosan mit is takar vagy hogy hogyan működik.
Ez egy nagyszerű „találmány” és ráadásul más terminál szerveres környezetet támogató vendor egyetlen terméke sem tartalmazza. Nézzük meg, hogy miről is szól ez az unikum lehetőség! Ha olyan Citrix-es környezetet használ, amelyben az ICA kliens és a szerver között 150ms környékén van a látencia, akkor ez a cikk egyenesen Önnek szól.
Az SLR a Citrix Szerver és az ICA kliens „közé” beépülő technológia, amely lehetővé teszi a felhasználó részére, hogy a gépelés közben ne csökkenjen a felhasználói élmény a billentyűk leütése és a képernyőn való késleltetett megjelenés miatt. Bármilyen hihetetlen még akár 1000ms-os látencia esetében is működik a dolog példának okáért egy Microsoft Word dokumentum gépelése közben.
Az SLR tulajdonképpen két dolgot csinál. Lássuk, hogy mit.
Local Text Echo
Az első és legfontosabb, az amit igazán nehéz magyarul leírni, az a „local text echo”-nak nevezett eljárás, amelynek a keretében a karakterek a felhasználó monitorán azonnal megjelennek, amint a billentyűt leüti.
Képzeljünk el egy SLR nélküli 400ms-os látenciával működő kliens-szerver kapcsolatot. Amikor a felhasználó leüti a billentyűt, akkor a Citrix ICA kliens elküldi a „lenyomtam egy gombot” parancsot a szerver részére. A szerver megkapja, feldolgozza, berakja a karaktert a képernyő pufferbe, és elküldi az új képernyő frissítést az ICA kliens részére. Igen ám, csakhogy mindez idő alatt legalább fél másodperc „csúszás” van a leütés és a megjelenés között. Ez egy fél másodperces „lag”.
Olyan ez, mint a műholdas közvetítések, ahol sokszor a hang „lekési” a képet. Roppant idegesítő tud lenni, pláne nagyon látenciák esetében mindkettő.
A „local text echo” miatt az ICA kliensek kicsit másképpen működnek. Itt is elküldi a szerver részére az ICA kliens a karaktert és ugyanaz a folyamat megy végbe, mint azt fent írtuk. Apró, ám annál szívderítőbb különbség, hogy a kliens a küldéssel párhuzamosan azonnal „kidobja” a karaktert a képernyőre, míg a „másik karakter” a látencia mocsarába süllyedve várja, hogy valaki kimentse és visszaküldje frissítve a kliensnek.
Ha a kliens megkapta az új képernyő frissítést, akkor már nem is kell frissíteni a saját képernyőjét, mivel azon már kint van a leütött karakter. A local text echo-t tehát nyugodt szívvel hívhatjuk “pre-caching” eljárásnak. Minden font típussal és font mérettel működik. Megbízható és tényleg megkönnyíti a munkát.
Mouse Click Feedback
A második SLR szolgáltatás a “Mouse Click Feedback”, amelyet magyarra az „Egér Klikk Visszacsatolás”-nak fordíthatunk le. Maradjunk azonban az MCF rövidítésnél, már csak a gépelés rövidítése miatt is.
Ismerik ugye? Katt a gombra. Semmi. Megint katt. Megint semmi. Borzalmas, az emberfia megőszül a várakozásban. Aztán jön, hogy az alkalmazás vagy valami ötször nyílik meg. Na ezért találták ki az MCF-et.
Egyébiránt arról van szó, hogy a kurzor mellé egy, a Windows-os világból híres/hírhedt, homokóra kerül, amely technikailag nem akadályozza meg Önt a többszöri lenyomásban, de legalább látja, hogy ne nyomkodjon, mert egyrészt nincsen értelme, másrészt pedig nyugalomra int.
A legtöbb környezetben mindkét szolgáltatást bekapcsolva találjuk. Célszerű.
Mégis, hogyan működik az SLR?
A két szolgáltatás tulajdonképpen egymástól teljesen független és teljesen eltérő a működésük is. Kezdjük most a Mouse Click Feedback szolgáltatással a változatosság kedvéért. Az MCF egy ICA kliens oldali konfiguráció. Nem érdekes a szerver beállítása, ezt a kliensen kell konfigurálnia. Ha ez be van kapcsolva, akkor a lokális kliens standard egér ikonja mellé, ha egy gombot lenyom, megjelenik a fentebb említett homokórás kurzor. A Local Text Echo ennél fényévekkel bonyolultabb eljárás. Ha ezt használjuk, győződjünk meg arról, hogy a szerver fontkészlete legyen feltelepítve a kliens részére is. Hogyan is tudná a kliens megjeleníteni a saját fontkészletében nem meglevő fontokat másképpen? Sehogy.
Éppen ezért minden ICA munkafolyamat elindításakor a szerver és a kliens összehasonlítja a saját font állományát, megbeszélik, hogy ebből ne legyen probléma. Figyelem! Itt nincsen fájl transzfer! Fontos ezt kiemelni, tehát a szerver nem fogja automatikusan letölteni a kliensre a nála meglevő, de a kliens font állományában nem megtalálható fontokat. Csak egy listát készítenek.
Ha egy alkalmazást elindítunk, a szerver a látható ablakban elkezdi „nézegetni” a különböző text mezőket. Olyan Windows-os mezők után keres, amelyeket tipikusan „Edit” vagy “RichEdit” mezőknek hívunk. Az „Edit” mező tipikusan felhasználó név, jelszó páros, HTML form tag, notepad, kalkulátor stb.
Ezeknél nem tudunk stílust használni. A “RichEdit” mezők tipikusan a Microsoft Word, WordPad alkalmazások, amelyekben stílussal formázhatjuk a szöveget.
A két különböző mezőbe a LTE csúnyán fogalmazva „bele-rendereli” a karaktereket, amint a felhasználó azokat leüti. Ha engedélyezve van, az SLR képes a Citrix ICA protokoll egy viruális csatornáját használni arra, hogy az SLR adatokat oda-vissza küldözgesse a kliens és a szerver között.
Az LTE nem működik csak karakterek egymás után gyors begépelésekor, értsd például olyan komplex dolgokat, mint szövegek kiemelése, nagyobb text részek törlése. Ekkor a látenciához tartozó lag megmutatkozik.
Az SLR automatikusan működik 150 és 500ms-os látenciák mellett.