Dağıtılmış Sistemde Uzaktan Yordam Çağrısı (RPC) Protokolü
RPC nedir?
Uzaktan Yordam Çağrısı (RPC) bir işlem içi iletişim tekniğidir. RPC'nin tam biçimi Uzaktan Prosedür Çağrısıdır. İstemci-sunucu uygulamaları için kullanılır. Bir bilgisayar programı, bir prosedürün veya alt rutinin farklı bir adres alanında yürütülmesine neden olduğunda, programcının uzaktan etkileşim için ayrıntıları özel olarak kodlamadan normal bir prosedür çağrısı olarak kodlandığında RPC mekanizmaları kullanılır.
Bu prosedür çağrısı aynı zamanda Kullanıcı Datagram Protokolü gibi düşük seviyeli aktarım protokolünü de yönetir. Transmission Kontrol Protokolü/İnternet Protokolü vb. Programlar arasında mesaj verilerinin taşınmasında kullanılır.
RPC Türleri
Üç tür RPC şunlardır:
- Geri arama RPC'si
- Yayın RPC'si
- Toplu mod RPC
Geri arama RPC'si
Bu tür RPC, katılan süreçler arasında bir P2P paradigmasına olanak tanır. Bir sürecin hem istemci hem de sunucu hizmetleri olmasına yardımcı olur.
Geri Arama RPC'nin İşlevleri:
- Uzaktan işlenen etkileşimli uygulama sorunları
- İstemcilerin tanıtıcısı olan sunucu sunar
- Geri arama, istemci sürecini bekletir
- Geri arama çıkmazlarını yönetin
- Katılımcı süreçler arasında eşler arası paradigmayı kolaylaştırır.
Yayın RPC'si
Yayın RPC'si, ağ üzerinde yayınlanan ve bu isteği işleme yöntemine sahip tüm sunucular tarafından işlenen bir istemcinin isteğidir.
Yayın RPC'nin İşlevleri:
- İstemcinin istek mesajının yayınlanması gerektiğini belirtmenize olanak sağlar.
- Yayın bağlantı noktalarını bildirebilirsiniz.
- Fiziksel ağdaki yükün azaltılmasına yardımcı olur
Toplu mod RPC
Toplu mod RPC, RPC isteklerini istemci tarafında bir iletim tamponunda sıraya koymaya, ayırmaya ve daha sonra bunları bir ağ üzerinden tek bir toplu halde sunucuya göndermeye yardımcı olur.
Toplu mod RPC'nin işlevleri:
- Bir isteği ağ üzerinden tek bir toplu iş halinde sunucuya gönderdiğinden, istek göndermeyle ilgili yükü en aza indirir.
- Bu tür RPC protokolü yalnızca daha düşük çağrı hızlarına ihtiyaç duyan uygulama için etkilidir.
- Güvenilir bir iletim protokolüne ihtiyaç var.
RPC Archidoku
RPC mimarisi programın temel olarak beş bileşeninden oluşur:
- Müşteri
- Müşteri Saplaması
- RPC Çalışma Zamanı
- Sunucu Saplaması
- sunucu
RPC Nasıl Çalışır?
RPC sürecinde aşağıdaki adımlar gerçekleşir:
) 1 Adım İstemci, istemci saplaması ve RPC çalışma zamanının bir örneği istemci makinede yürütülür.
) 2 Adım Bir istemci, parametreleri her zamanki gibi ileterek bir istemci saplama işlemini başlatır. İstemci saplaması, istemcinin kendi adres alanında depolanır. Ayrıca yerel RPC Çalışma Zamanı'ndan sunucu saplamasına geri göndermesini ister.
) 3 Adım Bu aşamada, kullanıcı tarafından düzenli Yerel Prosedürel Cal. RPC Runtime'ı yapılarak erişilen RPC, istemci ve sunucu arasında ağ arasındaki mesajların iletimini yönetir. Ayrıca yeniden iletim, onaylama, yönlendirme ve şifreleme işini de gerçekleştirir.
) 4 Adım Sunucu prosedürünü tamamladıktan sonra, dönüş değerlerini bir mesaja paketleyen (düzenleyen) sunucu saplamasına geri döner. Sunucu saplaması daha sonra taşıma katmanına bir mesaj gönderir.
) 5 Adım Bu adımda, taşıma katmanı sonuç mesajını istemci taşıma katmanına geri gönderir, bu da istemci saplamasına bir mesaj geri gönderir.
) 6 Adım Bu aşamada, istemci saplaması, sonuçta ortaya çıkan paketteki dönüş parametrelerini ayırır (paketten çıkarır) ve yürütme işlemi arayana geri döner.
RPC'nin özellikleri
RPC'nin temel özellikleri şunlardır:
- Çağrılan prosedür, muhtemelen başka bir makinede bulunan başka bir süreçtedir.
- İşlemler adres alanını paylaşmaz.
- Parametreler yalnızca değerlerle iletilir.
- RPC, sunucu işleminin ortamında yürütülür.
- Çağrı prosedürünün ortamına erişim sunmaz.
RPC'nin özellikleri
RPC'nin önemli özellikleri şunlardır:
- Basit çağrı sözdizimi
- Bilinen anlambilim sunar
- İyi tanımlanmış bir arayüz sağlayın
- Aynı veya farklı makinelerdeki işlemler arasında iletişim kurabilir
RPC'nin Avantajları
İşte RPC'nin Artıları/avantajları:
- RPC yöntemi, istemcilerin, üst düzey dillerdeki prosedür çağrılarının geleneksel kullanımı yoluyla sunucularla iletişim kurmasına yardımcı olur.
- RPC yöntemi yerel prosedür çağrısına göre modellenmiştir, ancak çağrılan prosedürün büyük olasılıkla farklı bir süreçte ve genellikle farklı bir bilgisayarda yürütülmesi muhtemeldir.
- RPC, süreç ve iş parçacığı odaklı modelleri destekler.
- RPC, dahili mesaj aktarma mekanizmasını kullanıcıdan gizler.
- Kodun yeniden yazılması ve yeniden geliştirilmesi için gereken çaba minimumdur.
- Uzaktan prosedür çağrıları dağıtılmış ve yerel ortam amacıyla kullanılabilir.
- Performansı artırmak için birçok protokol katmanını kullanır.
- RPC soyutlama sağlar. Örneğin, ağ iletişiminin mesaj aktarma doğası kullanıcıdan gizli kalır.
- RPC, uygulamaların yalnızca yerel ortamda değil, dağıtılmış bir ortamda da kullanılmasına olanak tanır.
- RPC kodu ile yeniden yazma ve yeniden geliştirme çabası en aza indirilir.
- RPC tarafından süreç odaklı ve iş parçacığı odaklı modeller desteği.
RPC'nin dezavantajları
RPC kullanmanın eksileri/dezavantajları şunlardır:
- Uzaktan Prosedür Çağrısı, Parametreleri yalnızca değerlere ve işaretçi değerlerine göre Geçirir; buna izin verilmez.
- Uzaktan prosedür çağırma (ve dönüş) süresi (yani genel giderler), yerel prosedüre göre önemli ölçüde daha düşük olabilir.
- Bu mekanizma bir iletişim sistemini, başka bir makineyi ve başka bir süreci içerdiğinden dolayı hataya karşı oldukça hassastır.
- RPC konsepti standart olamayacak şekilde farklı şekillerde uygulanabilmektedir.
- Donanım mimarisi için RPC'de herhangi bir esneklik sunmaz çünkü çoğunlukla etkileşim tabanlıdır.
- Uzaktan prosedür çağrısı nedeniyle sürecin maliyeti artar.
ÖZET
- Uzaktan prosedür çağrısı bir arası iletişim tekniği.
- Üç tür RPC vardır: 1) Geri Arama RPC'si 2) Yayın RPC'si ve 3) Toplu mod RPC'si
- RPC mimarisi programın esas olarak beş bileşeninden oluşur: 1) İstemci 2) İstemci Saplaması 3) RPC Çalışma Zamanı 4) Sunucu Saplaması ve 5) Sunucu
- RPC yönteminde işlemler adres alanını paylaşmaz
- RPC, basit çağrı sözdizimi ve bilinen anlambilim sunar
- RPC yöntemi, istemcilerin, üst düzey dillerdeki prosedür çağrılarının geleneksel kullanımı yoluyla sunucularla iletişim kurmasına yardımcı olur.
- RPC yönteminin en büyük dezavantajı, bir iletişim sistemi, başka bir makine ve başka bir süreç içermesi nedeniyle hataya karşı oldukça savunmasız olmasıdır.