Nwlapcug.com


Protocolli di Microsoft RPC

Protocolli di Microsoft RPC


La tecnologia client/server di Microsoft Remote Procedure Call (RPC) consente ai programmatori di collegare computer diversi ed eseguire il loro software separato insieme come se si trattasse di un unico programma. Le istruzioni di esecuzione di codice sono trasportate attraverso una rete utilizzando protocolli RPC che depongono le regole di base per il processo. Senza protocolli Microsoft RPC e RPC, molte informazioni aggiuntive avrebbe dovuto essere codificate manualmente in ogni programma software distribuito. A partire da giugno 2010, Microsoft supporta tre protocolli RPC.

Network Computing Architecture protocollo orientato alla connessione (NCACN)

Il protocollo orientato alla connessione di Network Computing Architecture (NCACN) viene utilizzato per l'invio di codice istruzioni di esecuzione tra le applicazioni in esecuzione su due o più sistemi di computer remoti. Utilizzando una sessione di comunicazione orientato alla connessione, il client e il server accetta le norme che disciplinano il percorso di trasporto di rete e dati "checkpoint" prima che sia trasferite tutte le informazioni. Il server fornisce i riconoscimenti al sistema client richiedente che conferma che il server sia in esecuzione e che ha ricevuto la richiesta. Inoltre, i controlli vengono disposti sul flusso di dati tra i sistemi per rendere il trasferimento più uniforme e affidabile.

Protocolli di comunicazione diversi vengono combinati per creare una "sequenza di protocollo", un linguaggio utilizzato dai sistemi operativi di rete di comunicare ad altri computer sulla rete. La sequenza di protocollo determina come le richieste di esecuzione di codice vengono trasmessi da un computer a altro.

Quando le richieste di dati RPC remote vengono inviate tramite il protocollo NCACN la rete TCP/IP standard, viene utilizzata la sequenza di protocollo ncacn_ip_tcp.

Quando le richieste RPC vengono inviate tramite una porzione di memoria di sistema chiamato una "named pipe," che agisce come un canale di informazioni, viene utilizzata la sequenza del protocollo ncacn_np.

Se le richieste RPC remote vengono trasportate su TCP/IP utilizzando un Microsoft Internet Information Server (IIS) come proxy Hypertext Transfer Protocol (HTTP), viene utilizzata la sequenza di protocollo ncacn_http.

Network Computing Architecture Datagram Protocol (NCADG)

Le richieste RPC di Microsoft possono essere inviate anche attraverso una rete utilizzando un metodo di trasporto senza connessione. Questo tipo di protocollo RPC è chiamato Network Computing Architecture datagram protocol (NCADG). Offre trasporto di dati più veloce rispetto protocollo NCACN ma è molto meno affidabile.

Il protocollo NCADG Invia le richieste RPC a un server remoto in un datagramma, o un pacchetto. Tuttavia, utilizzando un metodo di trasporto senza connessione in rete è paragonabile all'invio di un messaggio in una bottiglia in un oceano, come non c'è nessun riconoscimento positivo server della richiesta RPC, nessuna autenticazione e nessuna garanzia di consegna dei dati. Come del luglio 2010, le sequenze di protocollo associato sono considerate "obsoleta e non deve essere usato nelle nuove applicazioni", secondo la libreria MSDN di Microsoft.

Network Computing protocollo di architettura locale Remote Procedure Call (NCALRPC)

Ci sono momenti in cui un programmatore ha bisogno di utilizzare RPC per inviare codice le richieste di esecuzione tra programmi separati in esecuzione su un sistema singolo host. In tali casi, il protocollo di chiamata di procedura remota locale Network Computing Architecture o NCALRPC, viene utilizzato. NCALRPC, indicato anche come un locale RPC o chiamata di procedura locale (LPC), è una funzione predefinita del sistema operativo del sistema host. Pertanto, ulteriori protocolli o sequenze di protocollo non devono inviare le richieste RPC tra il client e il server.