Top

RPC (Remote Procedure Call) mimarisi nedir , nasıl çalışır?

Eylül 11, 2007 tarihinde admin tarafından eklenmiştir  

RPC temel anlamda client ve server arasında yapılan işlemlerin iletişimi için dizayn edildi.Bir işlemin gerçekleşmesi için bir gönderici (server) ve birde alıcı (client ) vardır.Örneğin Microsoft Outlook ve Exchange server ikilisi gibi.Aynı şekilde server üzerindeki bir çok serviste bu mimariyi kullanarak birbirleriyle haberleşirler.İşte bu haberleştirmeyi güvenli kılan ve kolaylaştıran şey RPC’dir.

Rpc Mimarisi

rpc-mimarisi_1.gif

Resim:Technet

Yukarıdaki mimaride gördüğümüz componentlerden bahsedicek olursak;

Client or server process:
Bir RCP isteğini başlatan yada yanıt veren program yada servis

RPC stubs:
RPC isteğini başlatmak için client yada server tarafından kullanılan program

Marshalling engine(NDR20 or NDR64):
RPC client ve server ları arasında ortak bir RPC interface’i oluşturur.NDR20 32 bit mimarisi için, NDR64 ise 64 mimarisi için tasarlanmıştır.Client ve server bu marshalling engine sayesinde iletişim için karşılıklı anlaşmayı sağlarlar.

Runtime application programming interface (API):
Server yada client’a RPC için direk bir arayüz oluşturur.RPC client ve serverları RPC’yi başlatmak içnin runtime API yi çağırırlar.

Connection RPC protocol engine:
RPC bir connection–oriented protocol isteğinde bulunduğunda kullanılır.Burada RPC nin dışarıya doğru bir bağlantıdamı yoksa dışarıdan içeriye doğru bir bağlantıdamı olduğu dizayn edilir.

Local RPC protocol engine:
Server ve client aynı host içerisinde barınıyorsa kullanılır.

Registry:
RPC servisinin ilk yüklemesinde erişim sağlanır.Buradaki registry anahtarları, RPC kullanıdığı ip port aralıklarını yada network aygıtlarının isimlerini barındırır.

Win32 APIs(kernel32.dll, advapi32.dll, ntdll.dll):
Kernel32.dll , sistem servislerinin hafıza yada kaynak yönetimlerini sağlayan Windows NT tabanlı bir API client dynamic-link library (DLL) dosyasıdır.
Advapi32.dll , gelişmiş bir Windows 32 base API DLL dosyasıdır.Güvenliği destekler.
Ntdll.dll , Windows NT nin sistem fonksiyonlarını kontrol eder.

SSPI(secur32.dll):
RPC için bir güvenlik arayüzü oluşturur.Kerberos, NTLM, ve Secure Sockets Layer (SSL) ın authentication ve encryption için kullanımını sağlar.

RPC için kullanılan network portları aşağıdadır.

rpc-ports.PNG

Desteklenen network protokolleri:

rpc-protocols.PNG

Benzer Yazılar:

Yorumlar

Feel free to leave a comment...
and oh, if you want a pic to show with your comment, go get a gravatar!

You must be logged in to post a comment.

Bottom