Portlar ve İletişim

İletişim ve Portlar TCP/IP protokoller grubu uyarınca, yazılımlar birbirleriyle portlar kanalıyla iletişim kurarlar. İster aynı aygıttaki (bilgisayar, yazıcı vb) iki farklı yazılım olsun, ister dünyanın iki ucundaki iki bilgisayar olsun, bu kural geçerlidir. İletişim netice itibariyle, bir kablo veya anakart üzerindeki veriyolu üzerinden vb yapılacağından, hangi yazılımın hangi yazılıma ulaşmaya çalıştığını, hangi yazılımın hangi hizmeti vermekte olduğunu anlamak için mantıksal portların numaralarından yararlanılır. Yazılım dışarıya bilgi/talep gönderirken, çıkış portlarından biri kanalıyla gönderir. Alıcı yazılım ise, içeriye giriş portlarından biri kanalıyla bilgiyi/talebi alır. Aşağıdaki görüntü, meseleyi canlandırmaya çalışmaktadır: Ağ üzerindeki iki bilgisayarın birbirleriyle iletişim kurma serüveni değerlendirilecek olursa... İletişim iki bilgisayardaki yazılımın, kurulu oldukları bilgisayardaki belirli portları kendi kullanımlarına ayırmaları ile başlar. Bağlantı kurmak isteyen yazılım, dışarı çıkış portlarından biri kanalıyla, bağlantı isteğini gönderir. Bağlantı isteğinin, alıcı bilgisayardaki hangi IP adresli yazılıma ve hangi numaralı porta ulaştırılacağı bilgisi, bu mesaj (TCP/IP paketi) içerisinde yer almaktadır. TCP/IP protokolleri, mesajı hedef bilgisayardaki porta ulaştırır. Alıcı bilgisayarda kurulu durumda olan yazılım, kurulu olduğu bilgisayardaki ilgili portları kullanım amacıyla kendisine tahsis etmiş durumdadır. O portları sürekli olarak "dinlemektedir". Mesaj, hedef porta dolayısıyla alıcı yazılıma ulaşmış olur. Alıcı bilgisayardaki portun numarasının "80" olduğu farzedilirse... O portu başka bir yazılım dinlemeyeceğinden dolayı, mesaj ilgili yazılıma ulaştırılmış olur. Bilindiği üzere, her bilgisayar en az bir IP adresine sahiptir. Bir bilgisayara birden fazla ağ kartı (Ethernet Card) takılabildiği gibi, TCP/IP kuralları uyarınca, bir bilgisayar birden fazla IP adresine sahip olabilmektedir. Aşağıdaki görüntü, Windows kurulu bir bilgisayara atanmış olan IP adreslerini göstermektedir. Gerçekte, bir port, birden fazla yazılım tarafından dinlenebilmektedir. Fakat, portu dinlemekte olan yazılımların IP adresleri birbirinden faklı olmak zorundadır. Anlaşılacağı üzere, her yazılım da bir IP numarasına sahiptir. Yazılımlar, bilgisayarın IP adreslerinden birini seçmek zorundadırlar. Port dinleyecek olan yazılım, hiçbir IP adresini seçmezse bile Windows"ta "127.0.0.1" IP adresini seçmek zorundadır. Bu IP adresi, her Windows makinede otomatik olarak ayarlanır ve değiştirmek/kaldırmak mümkün değildir. İki farklı yazılımın, aynı portu dinlemesinin mümkün olduğu ifade edilmişti. Bu esneklik şöyle durumlarda kullanılmaktadır; örneğin, 80 portu üzerinden web yayını yapmakta olan bir bilgisayar düşünelim... Bilgisayarda hem IIS hem de Apache web sunucusu kurulu olabilir. Yukarıdaki örnekte görülmekte olan üç IP adresinden "192.168.21.2" IP adresini IIS kullanırsa Apache ise "192.168.1.250" IP adresini kullanırsa, 80 portunun iki web sunucusu tarafından da dinlenmesi mümkün olmuş olur. Yazılımlar, bilgisayara atanmış olan tüm IP adreslerini kullanmak üzere yapılandırılabilirler. Aşağıdaki resimde, IIS"e IP adresi ataması görüntülenmektedir. Bir bilgisayardaki hangi portların, hangi IP adresi ile ve hangi yazılım tarafından o anda dinlenilmekte olduğunu görmek için, Windows"ta netstat komutu kullanılabilir:

Döküman Arama

Başlık :

Kapat