Daljinski postupci: poziv udaljenim postupcima, definicijama i značajkama

Mnogi korisnici računalnih sustava čuli su za takve pojmove kao što su udaljeni postupci, poziv na daljinsku proceduru ili RPC. Evo samo ne svi zamisliti što je tehnologija, kako oni rade i što im je potrebno. No, mnogi od onih koji isključuju ovu uslugu na Windows sustavima često mogu dobiti kritične propuste. O ovoj i drugim stvarima će se dalje raspravljati.

Poziv na udaljenu proceduru: Što je to?

Vrijedi početi s nekim teorijskim informacijama. Vjeruje se da je daljinski postupak (daljinski postupak postupak) je mehanizam koji vam omogućuje da pokrenete ili koristiti bilo koju funkciju računalnih sustava u različitim od terminala u adresnom prostoru. Jednostavno rečeno, to je način pristupa udaljenom računalu, na primjer, putem lokalne mreže ili internetske veze.

Međutim, udaljeni postupci (pozivanje udaljenih postupaka), označeni kao RPC (engl. Remote Procedure Call), mogu se pripisati ne samo udaljenim računalima. Na lokalnoj razini takve se tehnologije također koriste. Kao jednostavan primjer, možete pozvati određenu funkciju jedne aplikacije iz drugog programa interakcijom kroz posebne knjižnice. Osim toga, postoji takva usluga u svim verzijama sustava Windows, a kada je onemogućena ili onemogućena, izmjena XP-a uopće ne radi.

Načelo djelovanja

Tipično, RPC usluga udaljenog poziva u proceduri radi u načinu radaKlijent-poslužitelj zahtijeva najmanje dvije glavne komponente: mrežni protokol za razmjenu podataka i jezik za serijalizaciju (prijevod procesne ili podatkovne strukture u bitni slijed).
Arhitekture mogu biti potpuno različite i razlikuju se po svojim sposobnostima. No za razmjenu podataka na tzv. Transportnom sloju najčešće se koriste UDP i TCP protokoli, rjeđe HTTP
.
Kako ne bi išli u tehničke aspekte, sljedeći primjer može biti najjednostavnije objašnjenje načela takvih tehnologija: klijentski proces kreira zahtjev poslužitelja s opisom odabrane procedure s navedenim parametrima i šalje ga, nakon čega poslužitelj izvršava potrebnu direktivu i šalje klijentu odgovor koji je prikazan na klijentskom računalu. Međutim, sam procesor poslužitelja je, da tako kažem, u stanju čekanja i aktivira se samo u trenucima primanja zahtjeva klijenta. Istodobno, nije nužno da se provedba sheme "zahtjev-odgovor" provodi odmah.

U tom slučaju, maksimalni učinak izvedbe postiže se razmjenom relativno malih količina podataka i malim vremenom odgovora komponenti, između kojih je uspostavljena interaktivna veza.

Daljinski postupci (poziv udaljenih postupaka): karakteristike i provedba

Stoga se mogu razlikovati dvije glavne značajke ovih tehnologija:
  • asimetrija (pokretanje udaljenog izvršenja postupka samo od jedne strane);
  • sinkronizacija (uzrok suspenzije)postupaka od trenutka kada se zahtjev i obnova pokrenu nakon slanja odgovora).
  • Što se tiče implementacija, daljinski postupci (pozivi s udaljenih procedura) danas koriste nekoliko osnovnih tehnologija, među kojima su najčešće korištene sljedeće:
  • DCE /RPC - binarni protokol baziran na TCP /IP, SMB /SIFC itd. .
  • DCOM - objektno orijentirana aplikacija s mogućnošću prijenosa referenci na objekte i pozivanja njihovih metoda obrade;
  • JSON-RPC - HTTP protokol teksta;
  • .NET Remoting - binarni protokol baziran na UDP, HTTP i TCP;
  • JAVA RMI;
  • SOAP;
  • XML-RPC;
  • SUN RPC;
  • ZeroC ICE;
  • Routix.RPC et al.

    Problemi i zadaci

    Sada nekoliko riječi o nedostacima. Najvažniji problem, a samim tim i problem implementacije, je da se isti postupak udaljenog postupka poziva preko čvora usluge "Remote Procedure Call" mora istovremeno izvoditi na različitim strojevima, često s različitim operativnim sustavima, adresnim prostorima i arhitekturom. U tom se procesu ti parametri moraju kopirati iz jednog terminala u drugi. U tu svrhu, ne samo transportni protokol, nego i serijalizacija, omogućuje pretvaranje različitih vrsta podataka u bajtni slijed. Druga stvar je da udaljeni postupci (pozivanje udaljenih postupaka) koriste više od jednog procesa, i na lokalnoj razini, i dva (na klijentskom stroju i na poslužitelju). Stoga, sudar na jednom od terminala može uzrokovati istu reakciju na drugoj.
    Konačno, jedan odglavni problem naziva se kompatibilnost zbog heterogenosti nekih programskih jezika, unatoč čak i uspostavljenim zajedničkim standardima.

    Vrste glavnih podsustava

    Udaljeni postupak poziva za Windows 10 ili bilo koji drugi sustav nižeg ranga uključuje korištenje posebnih podsustava:
  • transportni podsustav dizajniran za kontrolu odlaznih i dolaznih veza uz zajamčenu isporuku paketa podataka;
  • bazni protokoli - koncept izvršenja postupka na pozvanom terminalu;
  • serijalizacija (marshaling) - pretvaranje tokova podataka u standardne bajtneove kodove neovisno o arhitekturi;
  • šifriranje poslanih i primljenih paketa s uvođenjem digitalnog potpisa na njih;
  • Sustav autorizacije i autorizacije.

    Koje vrste programa zahtijevaju provedbu RPO-a?

    Ako govorimo o tome koji moduli operacijskog sustava zahtijevaju da RPC usluga bude omogućena, jednostavno ih nije moguće popisati.
    Među dobro poznatim komponentama Windows sustava, postoje usluge faksiranja, usluge kriptografije, izvješćivanje o pogreškama, pomoć i podrška, HID uređaji, usluge glasnika, disk i logička administracija, upravljanje promjenjivim pogonom, audio sustav, instalater. Windows i još uvijek znate što.

    Čini se da je ovaj popis dovoljan za razumijevanje koliko komponenti sustava i sam korisnik ovise o toj usluzi.

    Na što utječe RPO

    Općenito, na temelju prethodnog opisa, može se procijenitiutjecaj RPC. Na primjer, znamo da mnoge slučajeve kada je isključenje usluge potpuno je izgubio zvuk, činilo se nemoguće vratiti sustav nakon kritičnih kvarova ili pokrenut od strane korisnika „odletio” na bežičnu mrežu. No, najtužnije je da ako isključite daljinski RPC procedura poziva, ponekad ne mogu ni dobiti pristup ključnim postavkama sustava, bilo koji administrator korisnik najmanje tri puta na svom terminalu.

    možete onemogućiti tu uslugu

    Uglavnom, mnogi su pokušali (i pokušali) servis "Remote Procedure Call" osobe s invaliditetom. Da biste to učinili strogo je zabranjeno. Općenito, sustav sam te u provedbi takvih pokušaja ne daju, izdavanje poruku.
    No, nisu svi znaju da su u službi (services.msc) postoji takva stvar kao „Locator Remote Procedure Call (RPC». Evo to je samo nešto što sigurno može isključiti sustav. Aplikacije koje mogu koristiti njihov rad, samostalno izazvati uslugu ako je potrebno.

    u slučaju problema i pogrešaka

    na kraju, vidi što možeš učiniti ako pogreška u daljinsko pozivanje procedura. u najjednostavnijem slučaju, možete pokušati ponovno (omogući uslugu, osim ako, naravno, neće ),
    U tom smislu, u dijelu u kojem se željena usluga uzrokovane dvostrukim klikom na gumb uredi opcije izbornika je uključena, a tip je postavljen na automatsko uključivanje. Ako izvoditi ovaj postupakSa standardnim pokretanjem sustava nije moguće, možete pokušati napraviti slične akcije u sigurnom načinu rada. Neki stručnjaci istodobno savjetuju da radnje samo onemoguće antivirusni softver.
    ​​Ako to ne radi, ali postoji instalacija sustava ili vraćanje diska pri ruci, možete pokrenuti naredbenu konzolu s administratorskim pravima (nije potrebno pokretanje s diska) i upisati u nju sljedeće naredbe:
  • cd z: i386 (Z je slovo optički pogon);
  • expand explorer.ex_% TEMP% explorer.exe;
  • proširiti svchost.ex_% TEMP% svchost.exe.
  • Nakon toga pokrećemo Task Manager (Ctrl + Del + Alt ili taskmgr u izborniku Run) i dovršimo proces Explorer.exe. Zatim u naredbenu konzolu napišite sljedeće: copy% TEMP% explorer.exe% SYSTEMROOT% /y. U "Dispečeru" zaustavljamo sve procese svhost.exe, nakon čega u roku od 60 sekundi morate imati naredbeni redak upišite liniju kopija% TEMP% svchost.exe% systemroot% system32 /y. Konačno, ako je vraćeni uređivač sistemskog registra (regedit), morate proći kroz ogranak HKCC kroz sekcije SYSTEM CurrentControlSet i doći do parametra CSConfigFlags promjenom njegove vrijednosti na nulu. To je daleko od svih metoda za popravljanje pogrešaka povezanih s RPC-om. Činjenica je da, ako je ova služba prouzročila povredu u radu drugih službi, možda ćete prvo morati otkloniti probleme s njihovom radnom sposobnošću, a zatim poduzeti samo neke radnje u RPC-u. I nije uvijek moguće dobiti potpuni pristup gore navedenim postavkama i postavkama. Ako apsolutno ništa neće ispasti, jer zvuči tužno, morat će u potpunosti ponovno instalirati operativni sustav,iako bih se želio nadati da to neće biti slučaj.

    Zaključak

    Slijedi kratak pregled svega što se odnosi na RPC tehnologiju i uslugu. Zapravo, sve ovo izgleda mnogo kompliciranije nego što je prikazano u ovom opisu, a za potpuno razumijevanje problema morate imati barem osnovno znanje. No, da bismo imali opću ideju o RPC-u, ona je još uvijek dovoljna. Što se tiče isključenja, nemojte razmišljati o tome da radite slične stvari, inače će cijeli sustav odbiti. Ti popravci prilikom rušenja obično pomažu, ali se još uvijek ne može dati puno jamstvo, jer bi deaktivacija usluge također mogla uzrokovati padove u drugim komponentama.

    Povezane publikacije