Articole puternic server de fișiere pentru ferestre - erori și exploatează

Un server de fișiere puternic pentru Windows

Partea nr - gândire fără amintiri.

Fără a introducerilor ulterioare începe cu ideea că un astfel de server de fișiere, cum funcționează și ce trebuie să facem ca un server de fișiere poate fi mai agil, de exemplu, pentru a face cât mai eficient posibil a rețelei gigabit noastre. La prima vedere, totul este simplu. Clientul a venit, a cerut un dosar, a alunecat pe disc pentru fișier și la dat clientului. Mult mai ușor. Pe cel de-al doilea și cel mai avansat punct de vedere - totul este mult mai complicat. Un server de fișiere este mai mult decât o interfață de rețea la un hard disk. Desigur, viteza de citire de la hard disk-urile moderne nu este mică, dar ce se întâmplă atunci când nu vine un singur client, dar câteva zeci? În plus, că este necesar să se împartă această lectură între clienți, este necesar să se sară, și să se citească date din diferite locuri ale unui disc. Și timpul de acces este deja destul de decent: Mecanică, clătită, fără performanță. Că totul a funcționat rapid, iar clienții care lucrau cu serverul de fișiere aveau aceeași impresie ca și cei care lucrau cu un disc local, această mecanică ar fi trebuit înlocuită cumva cu electronica. Ie clienții ar trebui să primească date nu din hard disk, ci din RAM, ceea ce ar trebui să fie suficient. Mecanismul standard al serverului de fișiere -

Drive -> memorie -> rețea

Urmează toate acestea, desigur, procesorul.

Deci, să luăm ca originalul ceea ce ar trebui:

  1. O mulțime de lucru cu memorie, mutarea datelor de pe hard disk în memorie și din memorie - la adaptorul de rețea.
  2. Faceți totul în același timp.

Pentru a face transferul oricăror date mai rapid în două și jumătate - pentru a crește rata de transmisie (de exemplu, frecvența bus) sau pentru a paraleli transmisia.

Remarcarea unei jumătăți foarte eficiente este de a evita, în general, transferul de date ori de câte ori este posibil.

Mai presus de toate, funcționarea serverului de fișiere seamănă cu activitatea sistemului cardiovascular cu două cercuri de circulație a sângelui. Și, așa cum vom vedea, este greu să salvăm pe ea.

Partea întâi - alegeți platforma.

Chip și se îndreaptă spre salvare.

Diferențele sunt vizibile dacă privești diagramele chipset-urilor:

Fig. 1 - o diagramă a chipset-ului stației de lucru de înaltă performanță Intel 995X.

Fig. 2 Diagrama chipset a serverului entry-level al Intel E7230

Întrebarea este, unde vom arunca zarurile, în sensul lipirii echipamentului. În 955x, magistrala PCI Express x16 de mare viteză 8-Gigabit este utilizată pentru grafică. Pentru a conecta adaptoarele de disc și de rețea, putem folosi PCI sau PCI-X prin intermediul podului de sud (ICH7R). Dar performanța autobuzului DMI între podul de la sud și nord este de 2GB / s, care va fi împărțită între disc și rețea. Autobuzul este sincron, și aici gigabytes, și nu gigabit, adică viteza este destul de decentă, dar încă. Platforma Server are un hub PCI suplimentar, care oferă o conexiune la porturi PCI-X, prin intermediul PCI Express link-ul x8 și porturi PCI Express x8 și x4, permițând utilizarea completă a chiar 10 Gigabit Ethernet, precum și pentru toate că subsistemul de disc poate utiliza un autobuz diferit. Platforma, autobuzul periferice de viteză sunt amplasate și mai mult a acestor anvelope este conectat direct la podul de nord, permițând date cu latență redusă deplasarea de la dispozitivele externe de memorie și procesor.

Cu memoria totul este clar. Această resursă este cea mai importantă pentru noi, așa că memoria ar trebui să fie cât mai rapidă posibil.

Procesorul? Ce procesor?

Pe de o parte procesorul în serverul de fișiere este întotdeauna un pic pe partea laterală a fluxului principal de date, în cazul în care adaptorul de rețea acceptă date hardware de calcul de control și de segmentare, și, desigur, dacă suntem de a păcăli, nu a decis, de exemplu, cripta tot traficul. Pe de altă parte - nu este de prisos, pentru că fiecare pachet pe care le trimite la rețea ar trebui să fie format: Un pachet care nu este mare, deci nu va fi o mulțime, mai ales în cazul în care rețeaua este, Doamne ferește, este foarte productiv, și să lucreze pentru procesorul . În plus, procesorul nostru gestionează și primește mesaje de la diverse dispozitive - adaptoare de rețea, controlere de discuri. Cu cât procesează mai repede aceste mesaje, cu atât mai bine. Mai bine, dacă mesajele de la diferite dispozitive sunt procesate în paralel pe diferite procesoare. Deci, atunci când alegeți un procesor, ar trebui să aveți în vedere:

  1. Oricât de ciudat ar suna pentru experți de calcul paralel, procesor de preferință două mai lent decât cel mai rapid unul, iar cele mai diferite controlerele și adaptoarele pe care le avem, cu atat mai mare beneficiile multiprocesare pe care le primim.
  2. Cu cât mai multe accesări în memoria paralelă (mai mult cache de sistem), cu atât este mai mare dimensiunea cache-ului procesorului. Și cache-urile a două procesoare diferite nu sunt însumate.
  3. Mulți procesoare puternice vor fi necesare atunci când ajungem la rețeaua multi-gigabit.
  4. Frecvența magistralei procesorului poate afecta frecvența busului de memorie. Prin urmare, este necesar să alegeți un procesor care lucrează cu o frecvență a magistralei care să nu încetinească funcționarea memoriei.

Așa cum am calculat deja, 1 Gb / s (gigabiți pe secundă), și 1GB / s (gigabiți pe secundă) - nu este același lucru. Dacă ne uităm la Gigabit Ethernet, rata de transfer efectiv al perioadei mai mult sau mai puțin lungă de timp, nu vor exista mai mult de 90 MB / s pe un port de autobuz asincron. Și, pentru a servi un număr mare de clienți, este posibil ca gigabitul Ethernet să nu fie suficient. Prima alternativă este trecerea la 10 Gigabit Ethernet, care este scump și nu foarte standard. Acest lucru este valabil mai ales pentru adaptoarele care pot funcționa pe versiunile de mare viteză ale PCI-X sau PCI Express x4 / x8. O astfel de soluție poate fi plătită pe serverele corporative. Ca o alternativă mai ieftină și mai puțin rapidă, puteți avea mai mulți adaptori gigabit. Driverele mai multor adaptoare vă permit să le combinați într-o singură aplicație virtuală pentru a îmbunătăți performanța. Dar rețineți că acest mod de funcționare poate provoca confuzie pentru unele comutatoare (switch-uri) și necesită în mod necesar testarea atentă. Performanța magistrala PCI nu este suficient chiar și pentru adaptorul Gigabit, ținând cont de duplex, mai bine, desigur, utilizați un adaptor PCI Express sau PCI-X. Nu se recomandă utilizarea adaptoarelor duale. Pentru Ethernet 10 Gb / s, trebuie să utilizați porturile PCI-X 266/533 sau PCI Express x4 / x8. PCI-X - bus sincron și aproape performanțele sale reale la maximum 1 GB / s pentru PCI-X, 2 GB / s pentru PCI-X 266 și 4 GB / s pentru PCI-X 533. PCI Express - bus asincron și viteza reală transmisie sub maximul teoretic. Dar ideologic, Ethernet este mai aproape de PCI Express.

În majoritatea adaptoarelor moderne, sunt acceptate capabilitățile "TCP Offload". transferul sarcinilor de calcul asociate cu organizarea unei conexiuni de rețea de la procesor la cardul de rețea. susținut de obicei prin punerea în aplicare a cel puțin două probleme: calcularea pachetului checksum (Checksum Offload) și segmentarea pachetelor mari (TCP Segmentarea offload, unele drivere Realtek și HP se numește TCP mare Trimitere Offload). Pentru un server de înaltă performanță la viteze gigabit, aceste sarcini sunt critice, deoarece reprezintă până la 30% din toate sarcinile de computere server, deoarece întregul flux de date va merge la procesor pentru a calcula sumele de control. Prin urmare, este foarte important ca adaptorul de rețea să efectueze aceste activități și să funcționeze corect. În cazul în care traficul este criptat, adaptorul de rețea trebuie să suporte descărcarea IPSec. Adaptorii cu suport pentru IPSec sunt semnificativ mai scumpi, dar chiar și pe ei performanța câtorva gigabiți va rămâne un vis.

Prima întrebare este SCSI sau SATA.

Dacă nu conducem în direcția sutelor de megaocteți pe secundă, atunci SATA va coborî. Pentru sisteme de înaltă performanță, desigur, la urma urmei, SCSI. Lipsa de soluții pe magistrala SCSI este volumele mici și costul ridicat pe unitate de volum. Dar este mai rapid. 320 MB / s în Ultra320 SCSI este cu 10% mai rapid decât 3 Gb / s în SATA II, din nou datorită focarelor cu autobuz serial, care este SATA. Viteza constantă de citire / scriere a modelelor avansate de discuri SCSI este de aproximativ 1,5 ori mai mare decât cea a unităților SATA-II, apropiindu-se de 100 MB / s. Un alt avantaj al unităților SCSI este că ele sunt mult mai ușor de completat. Cu cât umplem mai mult discurile, cu atât este mai mare performanța subsistemului disc; accesul la discuri se poate face în paralel. Desigur, având la dispoziție aproape SATA, este păcat să nu le folosiți cel puțin cumva, de exemplu, pentru a pune pe el un sistem sau chiar o bucată de date.

Pe baza acestor cifre, vă recomandăm cu insistență utilizarea controlerelor SCSI cu două canale sau cu patru canale și nu agățați mai mult de 2-3x unități pe canalul SCSI. Dacă aveți nevoie de mai mult de 6 discuri, trebuie să aveți un controler cu patru canale, să folosiți mai multe controlere SCSI sau să căutați interfețe de viteză mai mare, cum ar fi Fibre Channel. Până în prezent, există deja un număr suficient de controale SCSI productive, de exemplu, MegaRAID de la LSI cu suport PCI Express până la x8. Avem suficient PCI-X sau PCI Express x4 pentru un controler bine-ambulant, dar PCI Express obișnuit nu va fi de ajuns. Ideologic, adaptorul SCSI este mai aproape de PCI-X.

A doua întrebare: care ar trebui să utilizez RAID?

Întrebarea, dacă se utilizează RAID pentru servere de fișiere, nu merită. În acest caz, sarcinile pentru RAID sunt două - pentru a asigura toleranța la erori a discurilor și a maximiza performanța subsistemului disc prin paralelizarea înregistrării și citirea discurilor. Desigur, cel mai rapid RAID este RAID 0. Cu toate acestea, nu are toleranță la erori. RAID 5, din păcate, încetinește operația de scriere, mai ales atunci când scriem mici fragmente de date, dar rămâne foarte rapid la citire. Aceasta este o consecință a necesității de recalculare și suprascriere a sumelor de control în timpul înregistrării blocului incomplet. Performanța echilibrată de citire și scriere are RAID 10 (un zero), dar pierdem jumătate din capacitatea discurilor. Prin urmare, putem recomanda RAID 10 pentru stocarea datelor, care este în mod constant de lucru, de exemplu, documentul curent, RAID 5 pentru diferite arhive și de stocare și RAID 0 pentru date temporare, cum ar fi optimizarea proxy cache. Firește, pentru o paralelizare mai bună, este mai bine să utilizați numărul maxim de discuri în RAID și preferabil de la diferite canale.

Ei bine, și cum credeți, ce fel de corp trebuie să aveți în toate acestea:

Din cele spuse mai sus, două tipuri de servere de fișiere sunt desenate imediat. În primul rând - serverul de fișiere la nivel de intrare, cu o capacitate de până la un gigabit pe secundă, pentru care nu există practic nici cerințe privind echipamentele (cu condiția ca acesta să fie suficient de avansat) - de fapt, puteți utiliza un hardware pentru desktop bun cu SATA integrat RAID 1-0. Într-un server de fișiere multi-gigabit, nu veți putea economisi bani pe nimic, acesta va fi mai scump cu ordine de mărime.

Partea a doua - alegeți și reglați sistemul.

Alegeți un sistem

Este mai bine să utilizați versiunea în limba engleză a sistemului pe servere - în caz de probleme este mai ușor să găsiți articolul corespunzător din Baza de cunoștințe Microsoft.

Configurați sistemul

De fapt, configurația standard a sistemului pentru un server de fișiere este minimă. În proprietățile conexiunii la rețea, deschideți proprietățile Microsoft Networks pentru partajarea fișierelor și a imprimantei și puneți un punct alăturat pentru a maximiza transferul de date pentru partajarea de fișiere.

Articole puternic server de fișiere pentru ferestre - erori și exploatează

Pic.3 optimizarea selecției Microsoft File Sharing

Cum funcționează cache-ul sistemului?

Optimizarea și overclockarea serverului de fișiere.

Acum o să dezamăgesc pe toți. Optimizarea reală a serverului de fișiere are loc la nivelul hardware, despre care am discutat deja. Asta. despre care vom vorbi, vom da o victorie de peste 10% numai pe echipamentul slab echilibrat. Eliminarea blocajului din echipament (de exemplu, înlocuirea procesorului) în acest caz va oferi rezultate mult mai bune. După cum vedem, funcționarea serverului de fișiere este destul de simplă. Tot ce putem face este să reducem orice întârziere - timpul necesar pentru deschiderea / închiderea unui fișier, o interogare simplă în coadă, etc. Totul altceva este doar o chestiune de echipament.

Având în vedere caracteristicile cache și procesarea coada de cerere, un server de fișiere nu va arăta performanța de minuni, în cazul în care se rotește orice aplicație care utilizează memoria-intensivă (eliberare în special susținută și de eliberare) sau sarcină neuniformă pe CPU. Nu este necesar pentru a da un server de fișiere orice rol suplimentar în rețea, cu excepția, poate, ca un controler de domeniu și un server de Active Directory, cu condiția ca un număr foarte mic (de ordinul zecilor) utilizatori de server.

Optimizarea muncii cu echipament

Microsoft recomandă ca în sistemele multiprocesor (cu adevărat multiprocesor, nu este vorba despre tehnologia de hipertidare), întreruperile de la același adaptor de rețea sunt procesate de același procesor. În mod prestabilit, întreruperea poate fi efectuată de orice procesor. Poate fi folosit IntFiltr (ftp://ftp.microsoft.com/bussys/winnt/winnt-public/tools/affinity/) pentru a lega anumite dispozitiv întrerupe la un singur procesor.

HKLM \ System \ CurrentControlSet \ Manager de sesiuni \ Sistem I / O \ CountOperations

Cu o valoare de 0, dezactivează diferite contoare pentru hard disk, ceea ce poate accelera operațiile de I / O.

Un controler RAID hardware poate efectua mai multe cereri SRB prin paralelizare. Se recomandă ridicarea acestei valori în intervalul de la 32 la 96.

HKLM \ SYSTEM \ CurrentControlSet \ Control \ Manager de sesiuni \ Managementul memoriei \ IoPageLockLimit

Câtă memorie (în kilobyte) poate bloca sistemul pentru o operație I / O. Valoarea implicită este de 512 KB. Creșterea acestui parametru va duce la o creștere a cantității de date care pot fi transferate într-o singură operație. Puteți întâlni recomandări pentru a mări această valoare până la 128 MB, însă este puțin probabil ca o creștere cu mai mult de câteva megabyte (de exemplu, în intervalul 8-16) să fie eficientă.

Optimizarea setărilor sistemului de fișiere

HKLM \ SYSTEM \ CurrentControlSet \ Control \ Manager de sesiuni \ Managementul memoriei \ PagedPoolSize

Panoul de pagini și cache-ul de fișiere partajează aceeași zonă de memorie. Pachetul de pagini este necesar pentru a lucra cu fișierul de swap, de care nu avem nevoie dacă avem suficientă memorie pe serverul de fișiere. Putem ușor să mărim memoria disponibilă pentru cache-ul de fișiere prin scăderea dimensiunii piscinei pager (indicată în octeți). Puteți lua valori de aproximativ 128 MB sau chiar mai puțin.

Împiedică crearea de aliasuri scurte pentru numele de fișiere. Această caracteristică este necesară dacă discul va stoca date procesate de aplicațiile MS-DOS sau Windows 3.x (trebuie avut în vedere că mulți sunt instalatorii). Dezactivarea (valoarea 1) accelerează ușor procedura de creare a fișierelor.

Când este setat la 1, interzice modificarea timpului de acces la accesarea fișierului pentru citire. Ultimul timp de acces este folosit foarte rar (spre deosebire de momentul creării și modificării). Interzicerea actualizării acestuia vă permite să accelerați procedura de deschidere a unui fișier pentru citire.

Optimizarea setărilor de rețea

Nu ar fi o idee proastă de a începe prin a dezactiva toate conexiunile de rețea nefolosite (pentru a minimiza masa de rutare), protocoale și clienți. Poți să te uiți aici:

Dimensiunea ferestrei TCP. Dimensiunea ferestrei ar trebui să crească în rețele cu lățime de bandă ridicată și întârzieri lungi. Acestea pot include: performanța rețelei de mai multe gigabiti pe secunda, foarte mult rețelele de la distanță (prin satelit sau mai multe routere), încărcarea rețelei, în care numărul de coliziune care poate fi evitată este suficient de mare, rețeaua cu clienții slabi, cum ar fi calculatoarele vechi. Atunci când creșterea ferestre (TcpWindowSize) peste 65535 (aproape de această valoare este utilizată pentru interfețele menționate mai sus sau Gigabit) trebuie să fie pus într-o 1 TCP1323Opts valoare.

Indică dimensiunea tabelului hash pentru conexiunile TCP (implicit 128). Valoarea maximă este 65535. Valoarea optimă nu este mai mică decât numărul conexiunilor simultane așteptate. Puteți să o ridicați la valoarea maximă.

Indică câte pachete TCP (în mod prestabilit 2) este trimis ACK. Microsoft recomandă creșterea acestei valori la 13 pentru a reduce numărul de pachete transmise prin rețea.

Pe asta - toate. Scrie. Distribuiți impresiile. Observații. Sovieticii.

Retipărirea acestui articol este imposibilă fără permisiunea editurii Gameland