Virtual Network Computing
Virtual Network Computing - VNC | |
![]() VNC i KDE | |
Utvecklare | RealVNC |
---|---|
Senaste utgåva | 4.1.3 |
Operativsystem | Windows, Mac, GNU/Linux |
Licens | GPL |
Inom datorteknologin är Virtual Network Computing (VNC) en programvara för skärmdelning. Den använder RFB protokollet för att fjärrstyra en annan dator genom att överföra tangentbords och muskommandon från en dator till en annan. Skärmuppdateringar skickas tillbaka i den andra riktningen över nätverket.
VNC är plattformsoberoende - en VNC-klient på ett operativsystem kan koppla upp sig till en VNC-server som körs på ett annat operativsystem. Det finns klienter och servrar för många GUI-baserade operativsystem samt för Java. Multipla klienter kan koppla upp sig till en VNC-server på samma gång. Populära användningsområden för denna teknologi inkluderar fjärrstyrning av användares skrivbord vid datorsupport samt åtkomst av arbetsdator från hemmet eller vice versa.
Den ursprungliga källkoden för VNC och många moderna släktingar är öppen källkod under GNU General Public License.
Det finns ett antal varianter av VNC som erbjuder sin egen speciella funktionalitet; till exempel kan de vara optimerade för Microsoft Windows eller ha möjlighet till filöverföringar (vilket inte är en del av riktiga VNC). Många är kompatibla (förutom specialfunktioner) med riktig VNC på så sätt att klienten från en variant kan koppla upp sig till en annan; andra är baserade på VNC kod men är inkompatibla med standard VNC.
VNC är ett registrerat varumärke av RealVNC Ltd. i USA och i andra länder.[1]
Historia
VNC utvecklades ursprungligen vid Olivetti & Oracle Research Lab (ORL), vilket vid denna tidpunkt ägdes av Olivetti och Oracle. 1999 köptes labbet av AT&T som stängde det 2002.
Utvecklare som arbetade med VNC vid AT&T var:
- Tristan Richardson (uppfinnare)
- Andy Harter (projekt ledare)
- Quentin Stafford-Fraser
- James Weatherall
Efter stängningen av ORL 2002 så bildade flera medlemmar av utvecklingsteamet (inklusive Richardson, Harter, Weatherall och Hopper) företaget RealVNC för att kunna fortsätta arbeta på öppen källkodsprojekt och kommersiell VNC mjukvara under detta namn.
Flera andra versioner har utvecklats från den ursprungliga GPL:ade källkoden. Sådana här avknoppningar har inte lett till kompatibilitetsproblem då RFB-protokollet är utformat för att vara utbyggbart. VNC klienter och servrar informerar varandra om sina kapabiliteter genom handskakning vid uppkopplingen för att kunna använda de mest optimala inställningar som supportas i båda ändar.
Etymologi
Namnet 'Virtual Network Computer/Computing' kommer från ORL:s arbete med en tunn klient kallad Videotile som också använde RFB-protokollet. Detta var i huvudsak en en LCD med en penna för inmatning och snabb ATM-uppkoppling till nätet. Vid den här tidpunkten användes termen 'nätverksdator' synonymt med 'tunn klient'. VNC är väsentligen en mjukvaru (virtuell) version av denna nätverksdator.
Funktionalitet
Ett VNC system består av en klient, en server och ett kommunikationsprotokoll.
- VNC servern är programmet på maskinen som delar sin skärm. Servern tillåter passivt
att klienten tar kontroll över den.
- VNC klienten är programmet som tittar på, kontrollerar och interagerar med servern.
Klienten kontrollerar servern.
- VNC protokollet (RFB) är väldigt enkelt. Det är baserat på en grafisk primitiv från
server till klient ("Lägg en rektangel pixel data vid den specificerade X,Y positionen") samt händelsemeddelanden från från klient till server.
När det fungerar som vanligt så kopplar klienten upp sig mot en port (standard är 5900) på servern. Alternativt kan en browser koppla upp sig mot servern (standard är då 5800). En server kan också koppla upp sig mot klienten i 'lyssnarläge' på port 5500. En fördel med lyssnarläge är att servern inte är beroende av att kunna koppla upp sig mot port 5900 eller 5800; ansvaret ligger på klienten. Detta är användbart om den eller de som sitter vid servern har begränsad datorkompetens, klientanvändaren behöver dock större kompetens.
Servern skickar små rektanglar av framebuffern till klienten. I sin enklaste form kan protokollet förbruka mycket bandbredd, så olika metoder har utvecklas för att reducera förbrukningen. Till exempel så finns det olika kodningar (metoder för att bestämma de mest effektiva sättet att överföra rektanglarna). RFB-protokollet låter klienten och servern förhandla om vilken kodning som skall användas.
Referenser
Externa länkar
- AT&T VNC - Ursprungliga AT&T-Cambridge VNC webbplats
- RealVNC - RealVNC
- x11vnc - VNC programvara för att komma åt den fysiska X konsolen