Introducere în tehnologia nx

Acest document descrie premisele dezvoltării tehnologiei NX și analizează, de asemenea, soluțiile de proiectare utilizate în cursul acestei dezvoltări. Diferența dintre NX și alte tehnologii similare este explicată, obiectivele urmărite de această tehnologie sunt descrise.







Un sistem de calcul în rețea este un termen vechi "inteligent", numit Internet. Această idee, concepută pentru a elibera utilizatorii de dependența de computerele personale și de sistemele de operare, și de a face un pas către utilizarea aplicațiilor software și a serverelor pentru prelucrarea datelor. Până în prezent, lipsa unui protocol universal universal recunoscut (cum ar fi HTML și XML pentru Web) îngreunează implementarea și sprijinirea procesării de date pe bază de date pe scară largă.

De ce sistemul X-Window?

Arhitectura distribuită de computere NX este un pachet de instrumente și tehnologii comerciale cu cod sursă deschis, creat pentru a face procesarea în rețea a datelor la fel de ușoară ca și călătoria pe Web. Se compune dintr-un strat subțire de software de servere care permite oricărui computer care rulează un sistem de operare Unix să funcționeze ca un server terminal, precum și clienți pentru o gamă largă de platforme și sisteme de operare. Pentru a implementa bazele arhitecturii de calcul distribuit NX «NoMachine» a făcut alegerea sa în favoarea bine cunoscute și sistem pe scară largă X-Window - sistemul de ferestre, care vine de interfață grafică de utilizator, sistemul de operare Linux și Unix.

Aparent, majoritatea soluțiilor din domeniul prelucrării datelor de rețea sunt destinate a fi folosite ca înlocuitori. Sa dovedit că dezvoltatorii atunci când proiectează aceste instrumente nu au oferit că pentru utilizatori ar fi principala cale de a accesa desktop-ul. Această problemă se referă, de exemplu, la VNC și RDP. Ambele protocoale sunt mult mai simple decât X (și, prin urmare, sunt foarte potrivite pentru clienții cu performanțe reduse), însă simplitatea lor nu compensează lipsa de performanță și lipsa anumitor funcții. De exemplu, aceste protocoale formează o imagine pe un ecran de la distanță, transferând cantități uriașe de informații grafice prin rețea. Chiar dacă protocolul RDP este un nivel mult mai ridicat și este un protocol mult mai eficient decât RFB, acesta nu a fost creat pentru utilizarea zilnică a resurselor de calcul, ci este o adăugare la sistemul de operare care stau la baza acestuia.

X-Window nu este o extensie a subsistemului sistemului de operare pe computerul principal, ci subsistemul său grafic. Aplicațiile software X comunică cu fereastra X utilizând protocolul X, astfel încât sistemul de operare nu are nevoie să adauge un strat la protocolul de rețea pentru a trimite actualizări pe ecran.

Dificultăți ale sistemului X-Window

Sistemul X-Window - un protocol client-server deschis, extensibil, conceput pentru a pune în aplicare stratul de separare între logica aplicației software-ului (care rulează pe serverul de aplicații) și prezentarea (care sunt tratate cu clienții). Cu alte cuvinte, a fost creat pentru prelucrarea datelor în rețea. Pentru o funcționare eficientă, protocolul autentic X necesită o lățime de bandă ridicată a rețelei și o latență redusă. Deși, timp de mai mulți ani, dezvoltarea interfețelor grafice ale utilizatorilor a crescut cerințele pentru resursele de rețea și de calcul. In loc de a crea straturi software pentru aplicații X pentru a adapta activitatea lor la resursele de rețea disponibile, dezvoltatorii client X și instrumente X s-au bazat pe respingerea utilizatorilor capacităților de rețea X-Window, pentru a facilita accesul la aplicațiile care rulează pe computerele proprii. De-a lungul ultimilor ani, sistemul X-Window și-a pierdut complet caracteristicile sale originale ale prelucrării de protocol de rețea, chiar și cei mai cunoștințe și experiență a început să-l perceapă ca un fel de driver de monitor.

De la început, obiectivul principal al proiectului a fost dezvoltarea tehnologiei de compresie NX X, care ar permite utilizatorului să ruleze versiuni nemodificate ale mass-media cele mai utilizate pe scară largă pentru punerea în aplicare a conceptului de desktop-X pe serverul X standard, utilizând o conexiune de rețea de orice fel. Acest lucru este necesar în primul rând pentru ca sistemul X-Window să-și recâștige funcția de protocol de rețea.

Tehnologia folosind protocolul de compresie de la X «NoMachine» «NoMachine» X a dezvoltat o tehnica speciala, folosind un protocol de compresie, precum și un set integrat de proxy-uri care vă permit să rulați o sesiune completă, cu utilizarea mediului de lucru la distanță, chiar și în modul ecran complet și în prezența unui internet de viteză redusă conectare - până la viteza care furnizează modemului cu banda de frecvență 9600.







Compresia NX funcționează pe trei nivele utilizând protocolul X:

Traficul de rețea este comprimat utilizând un set de instrumente, inclusiv algoritmi diferențiali pentru fiecare mesaj, metode avansate pentru cache, comprimarea imaginilor cu sau fără pierderi.

Transmisia ciclică a informațiilor este redusă la aproape zero, în timp ce lățimea de bandă este maximizată. Bandwidth este configurat în timp real, în funcție de condițiile din rețea.

Raportul de compresie pentru protocolul X variază de la 10 la 1 la 100 la 1 sau mai mult, în funcție de aplicația software care se execută. Un astfel de rezultat este realizat fără pierderi de performanță la rețelele LAN rapide, astfel încât sesiunile la distanță pot fi efectuate cu o viteză care nu se distinge pentru calculatorul local.

Ideea de bază este open source

Pentru a sprijini NX „NoMachine“ arhitectura de calcul distribuit și-a lansat toate bibliotecile de bază și componentele software de nivel scăzut, cu open „source.“ Aceasta include agenți X, proxy client și toate bibliotecile care implementează transferul de comprimat protocol de date X. «NoMachine» a făcut o alegere în favoarea licenței GNU - aceeași licență, pentru care există o dezvoltare a sistemului de operare Linux. "NoMachine" își propune să sprijine masele largi de dezvoltatori, lucrând împreună pentru a crea software interactiv pentru server și client, ceea ce va face posibilă o revoluție în domeniul procesării datelor în rețea.

Sistemul de operare Linux ca server și ca platformă pentru mediul de lucru

Aplicațiile serverului NX rulează în sistemul de operare Linux. Linux - un sistem de operare bazat pe Unix, și implică un nivel ridicat de scalabilitate, fiabilitate și performanțe bune, care sunt cerute de mediul corporativ modern. În același timp, flexibilitatea sistemului Linux îi permite să gestioneze o rețea dispersată, descentralizată care unește milioane de calculatoare, furnizând servicii și aplicații software pe care va fi construită rețeaua de calcul a viitorului.

Având o poziție fermă pe piața sistemelor de operare pentru servere, Linux acționează și ca mediu desktop realist. Medii care implementează conceptul de desktop, cum ar fi KDE sau GNOME, precum și StarOffice. utilizați protocolul X-Window. NX acceptă astfel de medii la cost zero și, în general, oferă cea mai mare performanță.

Protocoale externe RDP și RFB

Deși compresia NX oferă cea mai mare performanță la începutul programului „nativ“ aplicație X, PDR și sesiune RFB poate fi comprimat cu un factor de 2 la 10. protocoale externe Suport NX și oferă alte avantaje. În primul rând, în aria de acoperire este practic orice calculator, și în al doilea rând, NX oferă utilizatorului o prezentare generală a tuturor resurselor programului disponibile pe Internet.

Arhitectură de calcul distribuită NX

Distribuit de calcul arhitectura NX este proiectat „de la zero“ și servește pentru a distribui volumul de muncă între nodurile de rețea la scară largă. Serverele NX sunt concepute pentru a efectua funcții de control la nivel înalt în rețeaua NX. Acestea sunt responsabile, de exemplu, pentru autentificarea și activarea sesiunilor de utilizatori, precum și pentru faptul că nodurile transferă utilizatorilor propriul mediu de procesare a datelor (de exemplu, aceleași sisteme de fișiere și aceleași aplicații). Sesiunile sunt pornite pe nodul NX din grupul virtual. Sute de unități NX poate fi conectat la unul sau mai multe servere gestionate pentru a sprijini mii de sesiuni curente.

Încărcați distribuția între noduri

Nu numai serverele pot distribui sarcina în rețea distribuind sesiuni între noduri. Nodurile pot, de asemenea, distribui aplicații software care rulează în cadrul unei sesiuni între diferite servere de aplicații. Acest lucru se poate întâmpla dacă resursa sau aplicația nu este disponibilă pe nodul sursă sau dacă resursa este "mai aproape" de utilizator. O traiectorie mai scurtă a rețelei asigură o performanță mai bună.

O sesiune poate fi identificată de un agent care rulează pe nod. Agenții sunt disponibili pentru protocoalele de rețea X, RDP și RFB. Agenții sunt difuzați pe servere de aplicații și acceptă conexiuni de la clienți NX. Clienții conform regulilor de denumire NX - calculatoarele utilizatorilor, care se execută serverul X. Fiecare agent necesită doar o conexiune la serverul X prin soclu.

Cazul cu protocoale RDP și RFB este cel mai des întâlnit. Aceste protocoale imita imaginea completă pe ecran și nu necesită o interacțiune între diferite aplicații software conectate la același server. Un nod poate conecta orice sesiune prin protocoalele RDP și RFB la un alt computer cu un sistem Windows Terminal Server sau un alt server VNC, distribuind sarcina sesiunii între resursele de rețea disponibile. În cazul protocolului X oferă două moduri de funcționare: când un utilizator începe o sesiune pe noul desktop virtual, agentul în sine funcționează ca un server de X. Acesta combină conexiuni client X într-o singură conexiune la X. serverul real

Aplicațiile software X pot rula pe noduri diferite, acționând ca servere de aplicații. Interacțiunea dintre aplicațiile software X este efectuată la nivel local, pe partea de agent. Întrucât schimbul de informații în această interacțiune poate fi foarte intens, performanța generală este semnificativ crescută. În momentul în care aplicațiile X sunt lansate pe agentul X, ele "cuibăresc" în interiorul ferestrei de agenți. Un agent "independent", adică un agent care depășește această limitare, este în curs de dezvoltare. Atunci când un utilizator lansează o aplicație într-o sesiune X existentă, ferestre „float“ de pe desktop și pe deplin combinate cu aplicațiile software locale. În acest caz, funcțiile NX ca un proxy transparent, X și servicii de rețea suplimentare de comprimare de tunelare de trafic (de exemplu, protocolul SMB și mass-media), dar aceasta nu permite determinarea rețelei locale parcurgeri circulare protocolul X, care este posibil datorită agentului NX.

Dezvoltare pentru simplitate

În ciuda complexității evidente, capacitățile încorporate de rețea ale sistemului Unix și caracteristicile interne ale serviciilor de rețea ale sistemelor Unix și X-Window în ceea ce privește posibilitatea construirii modulelor conduc această dezvoltare la început. NX utilizează instrumente de pornire SSH la distanță pentru a obține acces la funcțiile gazdă. Toate informațiile transmise sunt criptate conform criptografiei standard SSL din industrie. Podurile nu au nevoie să instaleze servere de rețea noi, cu excepția daemonului serverului SSH, care funcționează ca standard pentru sistemele moderne Unix.







Articole similare

Trimiteți-le prietenilor: