De stijgende behoefte om PC’s op afstand te gebruiken heeft geleid tot een aanzienlijk produktaanbod. Al die produkten moeten leven met de beperkte capaciteit van de communicatieverbindingen (28.8 tot 64 Kbps) in vergelijking met lan’s (10 tot 16 Mbps). Daarnaast is de verbindingstijd langer en de kwaliteit van de verbinding slechter. Veel applicaties die goed in een lan-omgeving werken, blijken bij gebruik op afstand niet acceptabel te zijn. Ze werken wel, maar presteren slecht.
Om hier iets aan te doen moeten de applicaties opnieuw worden ontworpen volgens een robuuste client/server-architectuur. Goed ontworpen slanke clients voeren hierbij een remote procedure call over het netwerk uit en krijgen als resultaat code of gegevens terug. Dit kan een kleine hoeveelheid gegevens zijn, zodat de transmissietijd kort is vergeleken met andere verwerkingstaken, bestandstoegang enzovoort. Daardoor zouden de prestaties van lokale en remote clients minimaal moeten verschillen.
Het probleem is dat maar weinig client/server-applicaties goed ontworpen zijn. Er bestaan veel applicaties die bestandsservers gebruiken, en de belangrijkste reden voor slechte prestaties is de bestandstoegang via een seriële verbinding. Andere problemen ontstaan door slechte PC-ontwikkeltools. Sommige 4GL’s halen tijdens de executietijd pagina’s met code van een server af, ondanks de geheugencapaciteit van PC’s tegenwoordig. Het meest deprimerend is dat zelfs nieuwe toepassingen van befaamde applicatieleveranciers met die amateuristische tools gebouwd zijn. Zij zouden de voordelen van Cobol, TP-monitors en ‘slanke client’-modellen moeten kennen, al zijn die bij interne ontwikkelaars onbekend. Hun toekomst hangt immers evenzeer af van onderhoud als van initiële ontwikkeling.
Bij de bestaande produkten voor ondersteuning op afstand zijn twee categorieën te onderscheiden: remote node en remote control. Bij een remote node zit de applicatie grotendeels in de PC. Remote control biedt de gebruikers de mogelijkheid om programma’s op het centrale systeem uit te voeren. Er bestaan schemergebieden, bijvoorbeeld de vele remote control-produkten met een optie voor bestandsoverdracht, terwijl die alleen relevant is voor een remote node.
Domme terminal-emulatie is de eenvoudigste vorm van remote control. Het is simpel, veilig en snel. De belangrijkste terminals zijn echter alfanumeriek en ondersteunen geen graphics. Kunstmatige gui-front-ends gebaseerd op terminal-emulatie zijn in sommige gevallen acceptabel, maar gebruikers denken dat ze echte gui-interfaces moeten eisen, of die nu zin hebben of niet. X-terminals domineren de echte gui-terminals, maar er zijn te weinig algemene applicaties om X een aantrekkelijke optie voor remote control bij PC’s te maken. De aantrekkelijkste remote control-produkten zijn hybride. Aan de centrale kant draaien ze op een aan het lan gekoppelde PC die is verbonden met de PC op afstand. Veranderingen op het scherm en invoer via muis en toetsenbord worden doorgegeven via het netwerk, zodat de PC op afstand de lan-PC ‘weerspiegelt’. Citrix Winframe doet hetzelfde, maar gebruikt één host om meerdere Windows-versies te draaien, één virtuele PC per gebruiker op afstand. Hoewel dit minder efficiënt is dan client/server voor wat betreft het netwerkverkeer, is het concept veel beter dan het draaien van algemene applicaties op een remote node. Dat zou niet zo moeten zijn, maar het is wel zo.
Remote nodes zijn er in allerlei soorten. Online remote nodes geven het lan-interface door over de seriële link (Pstn of Isdn) om een transparant beeld van het lan te creëren. De PC op afstand heeft dezelfde driver als de lokale PC (Ndis of Odi) met wat extra functies om te kunnen inbellen en dergelijke. Voor Isdn zijn vergelijkbare api’s voorgesteld, bijvoorbeeld Capi. Door transparante lan-bruggen zijn alle lokale PC-applicaties ongewijzigd uit te voeren, van Netware file-sharing tot middleware-produkten als Oracle SQL*net. Het lijnprotocol is transparant (tegenwoordig wordt PPP veel gebruikt). Daardoor zijn de remote nodes ook offline te gebruiken, omdat het ‘kopieer bestand’-commando tevens bruikbaar is om bestanden van de netwerkdrive naar de lokale drive van de PC op afstand te kopiëren. Als alle gegevens zijn overgestuurd, kan de verbinding worden verbroken.
Andere produkten zijn speciaal ontworpen om tijdelijk te verbinden met de centrale machine voor het aanpassen van bestanden en vervolgens los te koppelen voor verdere verwerking. Bestandsoverdracht komt veel voor. De applicaties van de gebruiker moeten wel de specifieke bestandsformaten kunnen herkennen. Omdat communicatieverbindingen wel eens wegvallen, is foutherstel bij bestandsoverdracht een cruciale functie van de gespecialiseerde produkten, die niet bij transparante lan-functies voorkomt. Replicatie op het niveau van de geformatteerde gegevens in plaats van een heel bestand kopiëren is effectiever, vooral omdat het opnieuw opzetten van een weggevallen verbinding onafgemaakte replicaties automatisch herstart. Lotus Notes is het belangrijkste voorbeeld in de PC-wereld. Verder is de ontwikkeling van agent-software die de relatieve instabiliteit van cellulaire mobiele verbindingen kan hanteren van belang.