İçeriğe atla

İstemci-sunucu

İstemci ve Sunucu ve bir diğer hosting

İstemci-sunucu, istemciyi (genellikle bir grafik kullanıcı arayüzü-GUI) sunucudan ayıran bir mimarisidir. Her bir istemci yazılımı, sunucuya ya da uygulama sunucusuna isteklerini (request) gönderir.

Bu fikrin pek çok çeşitli uygulaması olmasına karşın, en güzel örneği İnternet üzerindeki Web sayfalarıdır. Bir web sayfası incelenirken, bilgisayar ve web tarayıcısı istemci olarak adlandırılır. Web sayfasını oluşturan gelişmiş bilgisayarlar, veritabanları ve uygulamalar da sunucu olarak adlandırılır. Web tarayıcısı, web sitesinden bir istekte bulunur ve sunucu istenen bilgileri toplar ve onu bir web sitesi şekline getirerek web tarayıcısına geri yollar, kullanıcılar da ekranda web sitesini görmüş olur.

Bir istemci/sunucu mimarisi, ölçeklenebilir bir mimari sunmayı amaçlar. Böylece ağdaki her bir bilgisayar bir istemci ya da sunucu rolünü üstlenir. Sunucu yazılımı genelde, fakat her zaman değil, bir iş yazılımı için adanmış güçlü bir bilgisayarda çalışır. İstemci yazılımı ise genelde sıradan bir PC veya işistasyonunda çalışır. İstemciler gerek duydukları verinin pek çoğunu ya da tamamını uygulama sunucusundan isterlerler. Mesela; ayar dosyaları, stok verileri, iş uygulama yazılımları gibi.

Sunucu'nun özellikleri:

  • Pasif (köle)
  • İstekleri bekler
  • İstek olduğunda bilgiyi sunar ve cevap yollar

İstemcinin özellikleri:

  • Aktif (efendi)
  • İstekleri gönderir
  • Cevap dönene kadar bekler

Sunucular durumsuz (stateless) veya durumlu (stateful) olabilir. Durumsuz bir sunucu, istekler arasında bilgi tutmaz. Mesela statik HTML sayfalarını sunan bir HTTP sunucusu gibi. Fakat durumlu bir sunucu, kendisine gelen istekler arasında bilgi tutar. Bu bilgi küresel (global) veya oturum (session) bazlı olabilir. Örneğin Apache Tomcat sunucusu gibi.

İstemci ve sunucu arasındaki ilişki genelde ardışık diyagramlar (sequence diagram) ile belirlenir ve bu diyagramlar UML standardına uygun yapılır.

Bir diğer ağ mimarisi ise peer-to-peer yapılar olarak karşımıza çıkar. Burada her bir düğüm, hem istemci hem de sunucudur ve hepsi de aynı sorumluluğa sahiptirler. Hem istemci/sunucu mimarisi hem de peer-to-peer mimarisi günümüzde çok fazla kullanılmaktadır. Her ikisinin de avantaj ve dezavantajları vardır.

Genel bir istemci/sunucu mimarisinde iki adet düğüm vardır ve bu yüzden iki-katmanlı mimari olarak adlandırılır. Bazı ağlarda üç düğümlü bir yapı olabilir. Mesela islemci, uygulama sunucusu ve veritabanı sunucusundan müteşekkil bir ağda üç adet düğüm vardır ve bu yapı üç-katmanlı mimari olarak adlandırılır.

Genelde n-katmanlı ya da çok-katmanlı mimarilerde iş mantığının farklı fonksiyonları için her bir hizmetle sorumlu ayrı bir sunucu görevlendirilir. Çok-katmanlı mimarinin iki-katmanlı mimariye göre avantajı daha iyi yük dengeleme sunması ve daha çok ölçeklenebilir olmasıdır. Dezavantajları ise ağa daha fazla yük getirmesi ve programlama ve test aşamalarının daha zor gerçekleştirilmesidir.

İstemci/sunucu mimarilerde adresleme çeşitli yöntemler ile gerçekleştirilir:

  • Makine proses adreslemesi (machine process adressing): adresler şu şekilde bölümlenir: proses@makine. Yani 56@453 ifadesi, 453 nolu bilgisayardaki 56 nolu proses'i işaret eder.
  • İsim sunucusu (name server): İlgili alandaki (domain) sunucuların isimlerini ve adreslerini indeksler.
  • Hedefbulma paketleri (Localization packets): Bir dağıtık sistemteki tüm bilgisayarlara gönderilen broadcast mesajlarıyla hedef bilgisayarların adreslerinin öğrenilmesidir.
  • Tüccar (trader): Bir dağıtık sistemdeki hizmetleri indeksleyen bir sistemdir.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Sunucu (bilişim)</span> bilgisayar ağlarında, diğer ağ bileşenlerinin (kullanıcıların) erişebileceği, kullanımına ve/veya paylaşımına açık kaynakları barındıran bilgisayar birimi

Sunucu, bilişim alanında "istemci" denilen diğer program ve cihazlara çeşitli işlevler sunan bilgisayar donanımları veya yazılımlarıdır. Bu mimariye istemci-sunucu modeli denir. Sunucular, istemciler arasında veri veya kaynak paylaşımı, bir istemci için hesaplama yapma gibi çeşitli işlevleri yerine getirebilirler. Bu işlevlere genellikle "servis" veya "hizmet" denir. Tek bir sunucu çok sayıda istemciye hizmet verebilir, tek bir istemci de çok sayıda sunucudan hizmet alabilir. İstemci ve sunucu aynı cihaz üzerinde çalışabileceği gibi, istemci ağ üzerinden farklı bir cihazdaki sunucuya da bağlanabilir. Tipik sunucular arasında veritabanı sunucuları, dosya sunucuları, e-posta sunucuları, yazdırma sunucuları, web sunucuları, oyun sunucuları ve uygulama sunucuları sayılabilir.

İstemci, Bir ağ üzerinde, sunucu bilgisayarlardan hizmet alan kullanıcı bilgisayarlarıdır. Bilgiye erişim yetkileri sunucu tarafından belirlenir.

<span class="mw-page-title-main">DNS</span>

DNS, internet uzayını bölümlemeye, bölümleri adlandırmaya ve bölümler arası iletişimi organize etmeye yarayan, bilgisayar, servis, internet veya özel bir ağa bağlı herhangi bir kaynak için hiyerarşik dağıtılmış bir adlandırma sistemidir.

Ağ Dosya Sistemi, Network file system, yani ağ dosya sistemi diğer bilgisayarlardaki dosyalara erişilebilmesini sağlayan bir yerel ağ işletim sisteminin parçasıdır. Bilgisayarlarda kullanılan programların network makinalarında kullanılmasını sağlar. Sun Microsystems tarafından 1984 yılında geliştirilmiş, ağdaki bilgisayarların ortak bir dosya sistemine, yerel diskleri kadar kolay ulaşmasını sağlayan, RPC temelli dağıtık dosya sistemi yapısıdır.

<span class="mw-page-title-main">Web sayfası</span> World Wide Web ve web tarayıcıları aracılığıyla doğrudan görüntülenebilen tek belge

Web sayfası, World Wide Web için hazırlanan ve web tarayıcısı kullanılarak görüntülenebilen dokümanlardır. Web sayfaları çoğunlukla HTML formatında kodlanır, CSS, betik, görsel ve diğer yardımcı kaynaklardan yararlanılarak son görünümüne sahip olur ve işlevsellik kazanır. Birden fazla web sayfasının bir araya gelmesi ile ortaya çıkan web sitesi ile karıştırılmamalıdır. Günlük konuşma dilinde internet sayfası terimi de çoğunlukla web sitesi anlamında kullanılmaktadır.

Network Address Translation (NAT), TCP/IP ağındaki bir bilgisayarın yönlendirme cihazı ile başka bir ağa çıkarken adres uzayındaki bir IP ile yeniden haritalandırma yaparak IP paket başlığındaki ağ adres bilgisini değiştirme sürecidir.

<span class="mw-page-title-main">DHCP</span>

DHCP, ağda bulunan her bir bilgisayarın IP adresi, alt ağ maskesi, varsayılan ağ geçidi ve DNS sunucuları gibi ağ bağlantısı ayarlarının otomatik olarak atamasını sağlar. Bu sayede ağ yöneticileri, ağdaki her bir bilgisayarın IP adresi ve diğer ağ bağlantısı ayarlarını elle girerek zaman kaybetmek yerine, DHCP sunucusu üzerinden bu bilgileri otomatik olarak atayarak daha verimli ve güvenilir bir ağ yönetimi yapabilirler. Bu sayede sistem yönetim işlemi de kolaylaşmış olur. Ayrıca UDP, TCP'ye dayalı herhangi bir iletişim protokolünün ve DNS, NTP gibi ağ hizmetlerinin kullanımına olanak sağlar.

<span class="mw-page-title-main">Vekil sunucu</span>

Vekil sunucu veya yetkili sunucu, İnternet'e erişim sırasında kullanılan bir ara sunucudur. Bu durumda, örneğin bir ağ sayfasına erişim sırasında doğrudan bağlantı yerine:

<span class="mw-page-title-main">Peer-to-peer</span> Yazılım

Peer-to-peer ya da P2P olarak tanımlanır. Peer eş, denk demektir. İki veya daha fazla istemci arasında veri paylaşmak için kullanılan bir ağ protokolüdür.

<span class="mw-page-title-main">World Wide Web</span> internet kullanarak ulaşılan, birbirine bağlı belgelerden oluşan küresel sistem

World Wide Web, Dünya Çapında Ağ (kısaca WWW veya Web), İnternet üzerinde yayınlanan birbirleriyle bağlantılı hiper-metin dokümanlarından oluşan bir bilgi sistemidir. Bu dokümanların her birine Web sayfası adı verilir ve Web sayfalarına İnternet kullanıcısının bilgisayarında çalışan Web tarayıcısı adı verilen bilgisayar programları aracılığıyla erişilir. Web sayfalarında metin, imaj, video ve diğer multimedya ögeleri bulunabilir ve diğer bağlantı ya da link adı verilen hiper-bağlantılar ile başka Web sayfalarına geçiş yapılabilir.

Bilgisayar güvenliği'nde, bir DMZ veya sivil bölge ya da dizginleme bölgesi bir kuruluşun dış servislerini içeren ve bu servisleri daha büyük güvensiz bir ağa maruz bırakan fiziksel veya mantıksal bir alt ağdır. Genellikle BT profesyonelleri tarafından DMZ olarak adlandırılır. Bazen de Çevre Ağı olarak adlandırılır. Bir DMZ'nin amacı bir kuruluşun Yerel Alan Ağı (LAN)'a ek bir güvenlik katmanı eklemektir; dışarıdaki bir saldırganın ağın herhangi başka bir bölümünden ziyade yalnızca DMZ içindeki ekipmana erişimi vardır.

Bilgisayar ağları konusunda geçen Önyükleme Protokolü veya BOOTP, bir yapılandırma sunucusundan bir IP adresi almak için bir ağ istemcisi tarafından kullanılan bir ağ protokolüdür. BOOTP protokolü ilk olarak RFC 951 içerisinde tanımlanmıştı.

Uzak yordam çağrısı (ya da uzak prosedür çağrısı; İngilizce: Remote Procedure Call , bir diğer adres uzayı üzerinde programcı açıkça bu uzaktan etkileşim detayları kodlama olmadan çalıştırmak için bir alt yordam veya prosedürü sağlayan bilgisayar programına izin veren süreçler arası iletişim teknolojisidir. Sunucu üzerindeki servisleri kontrol ettiğimizde karşımıza çıkan RPC, arka plânda birçok şeyi gerçekleştiren bir servistir. RPC, temelde istemci ve sunucu arasında yapılan işlemlerin iletişimi için tasarlandı. Bir işlemin gerçekleşmesi için bir gönderici ve bir de istemci vardır.. Yani programcı, alt prosedür ister çalışan programın yerelinde ister uzağında olsun, temelde aynı kodu yazar. Bu bir tür istemci-sunucu etkileşimidir ve tipik olarak bir istek-yanıt mesaj geçirme sistemi aracılığıyla uygulanır. Nesne yönelimli programlama modelinde, RPC'ler uzaktan yöntem çağırma ile temsil edilir. RPC modeli bir konum şeffaflığı seviyesini ifade eder, yani çağrı prosedürleri yerel ya da uzak olsun büyük ölçüde aynıdır, ancak genellikle aynı değildirler, bu nedenle yerel çağrılar uzak çağrılardan ayırt edilebilir. Uzak çağrılar genellikle yerel çağrılardan çok daha yavaş ve daha az güvenilirdir, bu nedenle bunları ayırt etmek önemlidir.

Hareket işlem sistemi bir işletmede meydana gelen yapılandırılmış ve sürekli yinelenen olguları kaydetmek, izlemek, saklamak, işlemek ve yayımlamak için kullanılan bir bilgisayar tabanlı bilişim sistemidir. Bu olgulara örnek olarak arasında sipariş almak, fatura ve irsaliye hazırlamak, mal ve hizmet teslim almak ya da etmek, bordro hazırlamak gösterilebilir. Bir işletmede kullanılan kaynakların, işletme içinde ve dışındaki çıkar ve ilgi gruplarının her biri açısından anlamlı olan ve zamanla meydana gelen her bir değişimine hareket denir. Hareketler bir kurumun işleyişi sırasında meydana gelen olgulardır. Bu olgular fiziksel, parasal ya da kavramsal kaynakların özelliklerinden birinin, bir bölümünün ya da tümünün değişimini içerir. Kimi zaman bir hareket başka hareketlerin meydana gelmesine neden olur.

Diyaloguer (ingilizce) olarak da bilinen, ağ işletim sistemi, bir sunucu üzerinde çalışan ve verileri, kullanıcıları,grupları, güvenliği, uygulamaları ve ağ üzerinde koşan diğer çoğu ağ işlevlerinin yönetilmesine olanak sağlayan bir yazılımdır. Ağ işletim sistemleri, bir ağ içerisinde bulunan bilgisayarların ağ içerisindeki diğer bilgisayarlarla yazıcı paylaşımı, ortak dosya sisteminin ve veritabanının paylaşımı, uygulama paylaşımı gibi işlevleri yerine getirmek için tasarlanmıştır. En popüler olanları Novell NetWare, Linux, Windows Server 2003, Mac OS X tir.

<span class="mw-page-title-main">Ters Vekil Sunucusu</span>

Ters vekil sunucusu, bilgisayar ağlarında bir veya daha fazla sunucudan istemci adına kaynakları alan bir vekil sunucu türüdür. Kaynakları daha sonra istemciye geri döndürür.

HTTP tünelleme, kapsüllenmiş http protokolünü kullanan çeşitli ağ protokollerini çalıştırarak bağlantı gerçekleştiren bir tekniktir. Ağ protokolleri genelde TCP/IP ailesine ait olan protokollerdir. HTTP protokolü dolayısıyla, ağ protokolü tünnellenmiş olan kanal için kılıf (wrapper) olarak davranır.

REST, Web protokolleri ve teknolojilerini kullanan bir dağıtık sistemdir. REST prensiplerini sağlayan sistemler, RESTful olarak sıfatlandırılır. Temsilî Durum Aktarımı ismindeki temsilî, verinin temsilini kastetmekte olup onunla ilgili durumun aktarılması olarak düşünülebilir.

<span class="mw-page-title-main">Açık vekil</span> Kullanıcıların İnternete bağlanırken kullandıkları aracı sunucu

Açık proxy, herhangi bir İnternet kullanıcısı tarafından erişilebilen bir proxy sunucusudur. Genel olarak, bir proxy sunucusu yalnızca bir ağ grubundaki kullanıcıların, grup tarafından kullanılan bant genişliğini azaltmak ve denetlemek için DNS veya web sayfaları gibi Internet hizmetlerini önbelleğe almasına ve iletmesine izin verir. Bununla birlikte, açık bir proxy ile, İnternet'teki herhangi bir kullanıcı bu yönlendirme hizmetini kullanabilir.

Bilgisayar ağlarında bağlantı noktası (port) veya bağlantı noktası numarası, bir bağlantı uç noktasını benzersiz bir şekilde tanımlamak ve verileri belirli bir hizmete yönlendirmek için atanan sanal bir numaradır. Yazılım düzeyinde, bir işletim sistemi içinde, bir bağlantı noktası belirli bir işlem veya bir ağ hizmeti türünü tanımlayan mantıksal bir yapıdır. Yazılım düzeyindeki bir bağlantı noktası, her taşıma katmanı protokolü ve adres kombinasyonu için kendisine atanan bağlantı noktası numarasıyla tanımlanır. Port numaralarını kullanan en yaygın taşıma protokolleri TCP ve UDP 'dir; bu port numaraları 16 bitlik işaretsiz sayılardır.