VNC за управление на отдалечен работен плот, SavePearlHarbor
Още едно копие на хабора
Главно меню
След навигация
Тази статия разглежда основите на VNC за управление на отдалечени настолни компютри на други компютри [1]. Следващата статия предоставя преглед на софтуера за различни операционни системи, които прилагат тази технология. В допълнение, аутсорсингът, техническата поддръжка, хакерите, най-големите технологични компании [2], важността на компютърните технологии в съвременния свят се споменават мимоходом.
Въведение
********
Персоналният компютър е способен да изпълнява предварително определени, добре дефинирани последователности от операции, чиито описания се наричат програми [3]. Неспециалистът обаче не знае какви последователности от операции извършва компютърът при стартиране на определена програма. Тези, които разбират тънкостите на компютърните програми, обикновено се наричат хакери [4]. Те често говорят за хакерската субкултура, която се различава от доминиращата култура по собствена ценностна система, а понякога и по език, поведение, облекло и други аспекти [5]. За системните администратори това не е абстрактна стойност, а необходимо условие за професионална дейност, познаване на основите на изграждането и архитектурата на компютрите. Добрият системен администратор е запознат и с основните стандарти в областта на инфокомуникационните системи и технологии [6].
Работата по поддръжката, поддръжката и модернизацията на ИТ инфраструктурата може да бъде прехвърлена в ръцете на компания, за която изпълнението на такава работа е основен бизнес [7]. Най-често срещаният вид частичен или пълен трансфер на такива произведения е абонаментната услуга на компютри. За това една аутсорсинг компания винаги разполага с персонал от специалисти с различна квалификация. Обикновено абонатната услуга включва предлагане на клиента на цялостен набор от услуги. Предлаганият набор от услуги позволява на клиента да се справи без собствения си системен администратор или значително да намали натоварването си [8].
Използването на програми за отдалечено администриране е само един от многото начини за взаимодействие на компютрите в мрежа. Освен това, във всички случаи има връзка и обмен на данни между две или повече устройства, свързани към мрежата. Изпълнението на последната задача дава възможност за извършване на различни набори от правила и действия (последователност от действия) [10]. Такъв набор от правила и действия (последователност от действия) е мрежовият протокол RFB. Той е този, който се използва в системи за отдалечен достъп до компютърния десктоп, използвайки технологията Virtual Network Computing (VNC). С негова помощ взаимодействието се осъществява чрез компютърна мрежа от VNC клиенти и VNC сървъри. Въпреки че обикновено VNC клиентите и VNC сървърите се намират на различни компютри, понякога те могат да работят на една и съща машина [11].
Протокол за трансфер на данни от отдалечен кадър
**********************************************
RFB (отдалечен кадър на буфер) е прост мрежов протокол от ниво клиент-сървър, използван във VNC. Проектиран за отдалечен достъп до графичен работен плот на компютъра. Той работи на ниво буфер на кадрите, така че може да се приложи към различни графични системи за прозорци. Те включват X11, Windows и Macintosh [12].
VNC има две части: клиент и сървър. Сървърът е програма, която осигурява достъп до екрана на компютъра, на който се изпълнява. Клиент (или преглед) е програма, която получава екранно изображение от сървъра. Клиентът взаимодейства със сървъра, използвайки RFB протокола [13].
RFB е относително прост протокол. Сървърът изпраща малки правоъгълници до клиента, кодирани по един или друг начин. В същото време те се допълват с информация за това къде клиентът трябва да ги начертае. Контролът се осъществява чрез предаване на натискания на клавиши върху клавиатурата. Също толкова важно е предаването на движенията на мишката от един компютър на друг.
Има три етапа на взаимодействие между VNC клиент и VNC сървър през компютърна мрежа. И в трите етапа това се случва чрез мрежовия протокол RFB. Първият етап се нарича „етап на ръкостискане“. Целта му е да се съгласи за протоколна версия. Има три от тях - RFB 3.3, 3.7 или 3.8. На този етап се определя и вида на използваната сигурност. Пример за възможни типове защита: 1 - Няма, 2 - VNC удостоверяване, 18 - TLS. Вторият етап е етап на инициализация. На него клиентът и сървърът обменят съобщения ClientInit и ServerInit. Последният етап е нормално взаимодействие съгласно правилата, определени в протокола. На последния етап клиентът изпраща всички съобщения, които иска. В отговор той получава съобщения от сървъра. Всички съобщения започват с байт тип съобщение. Байтът на типа съобщение е последван от съответните данни.
Следните типове съобщения са дефинирани от клиент към сървър: 0 - SetPixelFormat, 1 - SetEncodings, 3 - FramebufferUpdateRequest. Още три типа се присъединяват към тях: 4 - KeyEvent, 5 - PointEvent, 6 - ClientCutText. SetPixelFormat ви позволява да зададете формата на пикселите, изпратени от съобщения FramebufferUpdate. SetEncodings определя вида на кодирането, използвано за предаване на пиксели от сървъра. FramebufferRequest информира сървъра, че клиентът изисква съдържанието на някаква област на framebuffer. KeyEvent изпраща информация за натискане или пускане на клавиш на клавиатурата към сървъра, а PointEvent изпраща информация за преместване на курсора на мишката или натискане на бутон на мишката. Съобщенията от последния тип информират сървъра за наличието на текст Latin-1 в текстовия буфер на клиента.