- Katılım
- 1 Aralık 2004
- Mesajlar
- 550
- Reaction score
- 0
Internet Protokolü (IP) [1], insanlığı bilgi çağına taşıyan Internet ağının temel yapı taşıdır. Internet'e bağlı herhangi iki bilgisayar arasındaki iletişim bu protokol aracılığıyla sağlanır. Bu açıdan IP'yi Internet'in ortak lisanı olarak da nitelendirebiliriz.
IP, ağ katmanlarına baktığımızda TCP ve UDP gibi taşıma katmanı protokollerinin altında, Ethernet ve ATM gibi bağ katmanı protokollerinin de üzerinde yer alır. Temel görevi, Internet'e bağlı bilgisayarların iletişim amacıyla adreslenebilmesi ve gönderilen veri paketlerinin ağ içerisinde yönlendirilmesidir.
Yeni Internet'in Doğuşu
IP bundan yaklaşık 20 yılı aşkın bir süre önce geliştirilmiş bir teknoloji. İlk amacı çok daha kısıtlı bir boyutta (askeri iletişim amaçlı) kullanım olmasına rağmen, geçtiğimiz 10 yıl zarfında bu teknoloji dünya çapında kullanıma açılmıştır. Özel sektörün bu altyapıyı bir toplu iletişim aracı olarak kullanmaya başlaması ve WWW'in gelişmesi IP'nin hızla yaygınlaşmasını sağlayan faktörler olmuştur. Ama ne yazık ki, bu popülerliğin bir yan etkisi de bu eski protokolün limitlerine ulaşması ve böylesine ağır bir yükün altından kalkamayacak duruma gelmesidir.
Günümüz Internet'i IP protokolünün 4. sürümü (IPv4) üzerine kurulmuştur. Bilgisayarların iletişim sırasında uçtan uca adreslenebilmesini sağlayan IPv4 adresleri sadece 32 bitten ibarettir. 32 bitlik adres alanı teoride 4,294,967,296 tane adres yaratabilse de, verimsiz adres atama mekanizmalarından dolayı etkin adres sayısı bu noktaya hiçbir zaman ulaşamaz. WWW'in patlarcasına gelişmesinin yanı sıra son zamanlarda kablosuz erişimin de yaygınlaşmasıyla 32 bitlik adres alanı varolan ihtiyacı karşılamakta yetersiz kalmaya başlamıştır.
Bu problem karşısında IPv4 adres havuzunun etkin kullanımı için çeşitli yöntemler geliştirildi. IPv4 adres bloklarının değişken boyutlarda olmasına izin veren CIDR (Classless Inter-Domain Routing) [2], aynı adresin farklı zamanlarda değişik bilgisayarlarca kullanımına (devre mülk) olanak tanıyan PPP (Point-to-point Protocol) [3] ve DHCP (Dynamic Host Configuration Protocol) [4] bunların başlıcalarıdır. Bu teknikler de yetersiz kalmaya başlayınca bazı kurumları kullanmadıkları büyük adres bloklarını geri vermelerine iknaya bile başvuruldu (Örnek: Stanford Üniversitesi'nin 036/8 adres bloğunu IANA'ya iadesi). Ne yazık ki sonunda anlaşıldı ki, varolan IPv4 mimarisiyle Internet'e bağlı tüm düğümlere birbirleriyle çakışmayan adres vermek mümkün değil, aynı anda aynı adresin paylaşımı kaçınılmaz. Sonunda ağ adres çeviricisi (NAT - Network Address Translator) Internet mimarisine girdi.
NAT'in amacı, üzerinde barındırdığı bir IPv4 adresini birden çok bilgisayarın Internet'e bağlanırken paylaşımına sunmaktır. Bu bilgisayarlarla Internet arasında bir geçit görevi yapan NAT [5], Internet mimarisinin en temel prensiplerinden olan uçtan uca adresleme ve paket bütünlüğünü yokeden yegane etkendir. IPv4 adres kıtlığı için ancak bir yama niteliğinde kullanılan NAT teknolojisinin Internet'e faydasından çok zararının olduğu kabul görmüş bir gerçektir. NAT üzerinden istemci-sunucu iletişiminin sadece tek yönlü işleyebilmesi, IPsec bağlantılarının sağlanamaması, ağların sınırlı ölçeklenirliği ve yönetim zorlukları başlıca problemler arasındadır.
Internet'in hızla büyüyen adres kıtlığı problemi ve NAT yüzünden girmiş olduğu sağlıksız gelişimin engellenmesi için, Internet protokollerinden sorumlu Internet Engineering Task Force (IETF) 1990 yıllarının başında yeni bir çalışma grubu kurdu. O zamanki adıyla IPng (Internet Protocol, next generation) Çalışma Grubu, yeni IP protokolünün geliştirilmesi görevini üstlendi. Internet mimarisinin temel prensiplerinin korunarak sağlıklı gelişiminin sağlanması ve yeni uygulamaların önünün açılabilmesi için IP protokolünün yeni bir sürümünün geliştirilmesi öngörüldü. Yaklaşık 10 yılı aşkın bir süredir endüstri, akademi, hükümetler ve çeşitli organizayonların ortak çalışması sonucu IPv6 protokolü doğmuş oldu. ("v5", IPv4'ün uzantısı olarak geliştirilen ve deneysel kullanımın ötesine geçememiş ST protokolüne [6] ayrılmış.)
IPv6'nın Teknik Özellikleri
IPv6 protokolü, IETF'in yayınlamış olduğu bir seri RFC dökümanı vasıtasıyla tanımlanmıştır. Bu RFC'lerin en temel olanlarına IETF IPv6 Çalışma Grubu sayfasından [7] ulaşılabilinir.
IPv6'yı IPv4'ten ayıran en önemli özelliği 128 bitlik genişletilmiş adres alanıdır. Bu genişlemenin sağlamış olduğu teorik adreslenebilir düğüm sayısı 340,282,366,920,938,463,463,374,607,431,768,211,45 6'dır. Böylesine geniş bir adres alanının şu an yaşadığımız adres sıkıntısını çözmenin yanında Internet uygulamalarında yeniliklere de yol açması bekleniyor. Öte yandan, IP üzerinde yapılan değişiklikler sadece bununla da kalmayıp, protokolün tam anlamıyla tekrar gözden geçirilmesi ve yenilenmesi de söz konusu olmuştur. Bunlar arasında basitleştirilmiş ve 64 bitlik işlemcilere göre düzenlenmiş paket başlığı, paket bölünmesinin sadece uç noktalarda yapılacak olması yönlendiricilerin veri trafiğini daha seri bir şekilde işleyebilmesi için yapılan değişikliklerdir. Temel IP başlığının yanı sıra ihtiyaca göre eklenebilir uzantı başlıkların tanımlanabilmesi protokolün eskenliğini arttıran bir faktör olmuştur. Güvenlik için IPsec (IP security protocol [8]) şartı da IPv6 ile gelen özellikler arasında yer alır.
128 bitten oluşan IPv6 adreslerinin ilk 64 bitlik kısmı alt ağı adreslemek için kullanılan adres blok bilgisini içerir. Adres bloğu, bir paketin varacağı son bağa kadar olan yolda yönlendirilmesini sağlar. Geriye kalan 64 bit ise bu bağa vardığında paketin son alıcısının tespitinde kullanılır. IPv6 adresleri 16lık düzende ifade edilir. 2045:ab28::6cef:85a1:331e:a66f:cdd1 örneğinde olduğu gibi 16 bitlik gruplar birbirlerinden ':' ile ayrılır. Ardarda gelen iki ':' sadece bir kereye mahsus kullanılabilir ve aralarında kalan bütün hanelerin sıfır değerini taşıdığını ifade ederler.
IPv6 adresleri bağ içi (link-local) ve evrensel (global) olmak üzere iki çeşittir. Bunlara ek olarak site içi adresler de tanımlanmış olmasına rağmen, bu makalenin yazıldığı sıralarda IPv6 Çalışma Grubu bu çeşit adresleri mimariden çıkarma kararı almıştır. Bağ içi adresler sadece özel amaçlarla kullanılır ve bu adresleri taşıyan paketler yönlendiriciler tarafından asla diğer bağlara iletilmezler. IPv4'te sıkça kullanılan herkese gönderim (broadcast) adresleri, görevleri çoklu gönderim (multicast) adresleri tarafından üstlenildiği için IPv6 mimarisinde yer almaz. Herhangi birine gönderim adresleri (anycast) IPv6'nın getirmiş olduğu yenilikler arasındadır. Bu tip adreslere gönderilen paketler, bu adresi kullanan birden çok düğümden sadece birine varacak şekilde yönlendirilir. Kullanımda birden çok düğümün aynı adresi paylaşması açısından çoklu gönderim adresinlerine benzemekle birlikte, paketin sonunda sadece tek bir düğüme ulaşması açısından tekil gönderimi andırırlar.
Otomatik adres konfigurasyonu IPv6'nın getirmiş olduğu önemli yeniliklerdendir. Ağ üzerindeki adres atama görevini üstlenmiş bir DHCP ya da PPP sunucusu olmaksızın ağa bağlı düğümlerin kendilerince adres edinmelerine olanak tanır. Temelinde ağdaki yönlendiricilerin gerekli adres bloğunu anons etmeleri ve düğümlerin de bu bloğa kendilerinden 64 bitlik bir değer eklemeleriyle adres oluşturmaları yatar. Bu şekilde oluşturulan adreslerin kullanılmadan önce tekillik testinden geçirilmesi gerekir. Düğümler başkaları tarafından kullanılmadığına kanaat getirdikleri adresi kullanıma alabilir.
IP protokol başlığında ise büyük değişiklikler olmuştur. IPv4'te varolan protokol başlık büyüklüğü, kimlik bilgisi, paket parçası bilgisi, başlık sağlama toplamı kaldırılmış, IPv6 başlığına yeni olarak akış bilgisi eklenmiş. Tipik 20 bayt genişliğindeki IPv4 başlığının yerini 40 baytlık IPv6 başlığı almış. Temel IPv6 başlığına ek olarak, kendince özel amaçlara yönelik yönlendirme, paket bölmesi, şifreleme ve mobil uzantı başlıkları tanımlanmış. Zaman içerisinde ihtiyaç oldukça bunlara yenilerinin eklenmesi de mümkün kılınmış.
Yönlendirme alanında temel prensiplerde bir değişiklik olmamakla birlikte varolan RIP, OSPF, IS-IS, MP-BGP, PIM-SM, PIM-SSM gibi protokoller IPv6 adreslerini işleyebilecek şekilde güncellenmiş. Çoklu gönderim için kullanılan IGMP'nin yerini yeni geliştirilen MLD almış.
Alan adlarının kaydından sorumlu DNS, artık IPv4 adreslerin yanı sıra IPv6 adreslerini de barındıracak şekilde düzenlenmiş. IPv4 adresleri A tipi kayıtlarda saklanırken, AAAA tipi kayıtlar IPv6 adreslerine tahsis edilmiş. IPv6'yı destekleyen bir DNS sunucusu üzerinde bir alan adı aynı zamanda hem IPv4 hem de IPv6 adreslerine atanabilir.
IPv4'ün hareketlilik protokolü Mobil IPv4'e karşılık olarak Mobil IPv6 geliştirilmiş. Aralarında uygulamada öne çıkan faklılıklar olmasına rağmen bu iki protokol ana hatlarıyla birbirlerine benzerler.
Yeni Protokolün Internet'e Getirileri
Önceki bölümde bahsedilen özelliklere bakıldığında, bunların arasında en geniş etkiyi yaratacak olanın IPv6'nın geniş adresleme olanağı olduğu gözlemlenir. Bu sayede Internet'e bağlanmak isteyen her tür aracın (bilgisayar, telefon, araba, buzdolabı, vs.) her an her yerden bunu gerçekleştirmesi mümkün olacaktır. Uçtan uca bağlantıların sağlanabilmesi sayesinde IPsec'in getirmiş olduğu yüksek güvenlik seviyesine erişilebilecek ve yeni eşler arası (peer-to-peer) iletişim uygulamalarının önü açılabilecek. En önemlisi de artık NAT'lere ihtiyaç kalmayacak.
Herhangi birine gönderim adresleri servis keşfini kolaylaştırıcı bir araç olarak karşımıza çıkıyor. Otomatik adres konfigurasyonu ise hem ağa erişen düğümlerin hem de ağ birimlerinin üzerindeki konfigurasyon yükünü azaltıcı bir faktördür. Internet'in gelişimini hızlandıran tak-kullan (plug-and-play) tarzı uygulamaların artması bu özelliklerle mümkün olacaktır. Otomatik adreslemenin bir başka faydası da ağların ISS değiştirme işlemlerini daha kolayca yapmasına olanak tanımasıdır.
IP, ağ katmanlarına baktığımızda TCP ve UDP gibi taşıma katmanı protokollerinin altında, Ethernet ve ATM gibi bağ katmanı protokollerinin de üzerinde yer alır. Temel görevi, Internet'e bağlı bilgisayarların iletişim amacıyla adreslenebilmesi ve gönderilen veri paketlerinin ağ içerisinde yönlendirilmesidir.
Yeni Internet'in Doğuşu
IP bundan yaklaşık 20 yılı aşkın bir süre önce geliştirilmiş bir teknoloji. İlk amacı çok daha kısıtlı bir boyutta (askeri iletişim amaçlı) kullanım olmasına rağmen, geçtiğimiz 10 yıl zarfında bu teknoloji dünya çapında kullanıma açılmıştır. Özel sektörün bu altyapıyı bir toplu iletişim aracı olarak kullanmaya başlaması ve WWW'in gelişmesi IP'nin hızla yaygınlaşmasını sağlayan faktörler olmuştur. Ama ne yazık ki, bu popülerliğin bir yan etkisi de bu eski protokolün limitlerine ulaşması ve böylesine ağır bir yükün altından kalkamayacak duruma gelmesidir.
Günümüz Internet'i IP protokolünün 4. sürümü (IPv4) üzerine kurulmuştur. Bilgisayarların iletişim sırasında uçtan uca adreslenebilmesini sağlayan IPv4 adresleri sadece 32 bitten ibarettir. 32 bitlik adres alanı teoride 4,294,967,296 tane adres yaratabilse de, verimsiz adres atama mekanizmalarından dolayı etkin adres sayısı bu noktaya hiçbir zaman ulaşamaz. WWW'in patlarcasına gelişmesinin yanı sıra son zamanlarda kablosuz erişimin de yaygınlaşmasıyla 32 bitlik adres alanı varolan ihtiyacı karşılamakta yetersiz kalmaya başlamıştır.
Bu problem karşısında IPv4 adres havuzunun etkin kullanımı için çeşitli yöntemler geliştirildi. IPv4 adres bloklarının değişken boyutlarda olmasına izin veren CIDR (Classless Inter-Domain Routing) [2], aynı adresin farklı zamanlarda değişik bilgisayarlarca kullanımına (devre mülk) olanak tanıyan PPP (Point-to-point Protocol) [3] ve DHCP (Dynamic Host Configuration Protocol) [4] bunların başlıcalarıdır. Bu teknikler de yetersiz kalmaya başlayınca bazı kurumları kullanmadıkları büyük adres bloklarını geri vermelerine iknaya bile başvuruldu (Örnek: Stanford Üniversitesi'nin 036/8 adres bloğunu IANA'ya iadesi). Ne yazık ki sonunda anlaşıldı ki, varolan IPv4 mimarisiyle Internet'e bağlı tüm düğümlere birbirleriyle çakışmayan adres vermek mümkün değil, aynı anda aynı adresin paylaşımı kaçınılmaz. Sonunda ağ adres çeviricisi (NAT - Network Address Translator) Internet mimarisine girdi.
NAT'in amacı, üzerinde barındırdığı bir IPv4 adresini birden çok bilgisayarın Internet'e bağlanırken paylaşımına sunmaktır. Bu bilgisayarlarla Internet arasında bir geçit görevi yapan NAT [5], Internet mimarisinin en temel prensiplerinden olan uçtan uca adresleme ve paket bütünlüğünü yokeden yegane etkendir. IPv4 adres kıtlığı için ancak bir yama niteliğinde kullanılan NAT teknolojisinin Internet'e faydasından çok zararının olduğu kabul görmüş bir gerçektir. NAT üzerinden istemci-sunucu iletişiminin sadece tek yönlü işleyebilmesi, IPsec bağlantılarının sağlanamaması, ağların sınırlı ölçeklenirliği ve yönetim zorlukları başlıca problemler arasındadır.
Internet'in hızla büyüyen adres kıtlığı problemi ve NAT yüzünden girmiş olduğu sağlıksız gelişimin engellenmesi için, Internet protokollerinden sorumlu Internet Engineering Task Force (IETF) 1990 yıllarının başında yeni bir çalışma grubu kurdu. O zamanki adıyla IPng (Internet Protocol, next generation) Çalışma Grubu, yeni IP protokolünün geliştirilmesi görevini üstlendi. Internet mimarisinin temel prensiplerinin korunarak sağlıklı gelişiminin sağlanması ve yeni uygulamaların önünün açılabilmesi için IP protokolünün yeni bir sürümünün geliştirilmesi öngörüldü. Yaklaşık 10 yılı aşkın bir süredir endüstri, akademi, hükümetler ve çeşitli organizayonların ortak çalışması sonucu IPv6 protokolü doğmuş oldu. ("v5", IPv4'ün uzantısı olarak geliştirilen ve deneysel kullanımın ötesine geçememiş ST protokolüne [6] ayrılmış.)
IPv6'nın Teknik Özellikleri
IPv6 protokolü, IETF'in yayınlamış olduğu bir seri RFC dökümanı vasıtasıyla tanımlanmıştır. Bu RFC'lerin en temel olanlarına IETF IPv6 Çalışma Grubu sayfasından [7] ulaşılabilinir.
IPv6'yı IPv4'ten ayıran en önemli özelliği 128 bitlik genişletilmiş adres alanıdır. Bu genişlemenin sağlamış olduğu teorik adreslenebilir düğüm sayısı 340,282,366,920,938,463,463,374,607,431,768,211,45 6'dır. Böylesine geniş bir adres alanının şu an yaşadığımız adres sıkıntısını çözmenin yanında Internet uygulamalarında yeniliklere de yol açması bekleniyor. Öte yandan, IP üzerinde yapılan değişiklikler sadece bununla da kalmayıp, protokolün tam anlamıyla tekrar gözden geçirilmesi ve yenilenmesi de söz konusu olmuştur. Bunlar arasında basitleştirilmiş ve 64 bitlik işlemcilere göre düzenlenmiş paket başlığı, paket bölünmesinin sadece uç noktalarda yapılacak olması yönlendiricilerin veri trafiğini daha seri bir şekilde işleyebilmesi için yapılan değişikliklerdir. Temel IP başlığının yanı sıra ihtiyaca göre eklenebilir uzantı başlıkların tanımlanabilmesi protokolün eskenliğini arttıran bir faktör olmuştur. Güvenlik için IPsec (IP security protocol [8]) şartı da IPv6 ile gelen özellikler arasında yer alır.
128 bitten oluşan IPv6 adreslerinin ilk 64 bitlik kısmı alt ağı adreslemek için kullanılan adres blok bilgisini içerir. Adres bloğu, bir paketin varacağı son bağa kadar olan yolda yönlendirilmesini sağlar. Geriye kalan 64 bit ise bu bağa vardığında paketin son alıcısının tespitinde kullanılır. IPv6 adresleri 16lık düzende ifade edilir. 2045:ab28::6cef:85a1:331e:a66f:cdd1 örneğinde olduğu gibi 16 bitlik gruplar birbirlerinden ':' ile ayrılır. Ardarda gelen iki ':' sadece bir kereye mahsus kullanılabilir ve aralarında kalan bütün hanelerin sıfır değerini taşıdığını ifade ederler.
IPv6 adresleri bağ içi (link-local) ve evrensel (global) olmak üzere iki çeşittir. Bunlara ek olarak site içi adresler de tanımlanmış olmasına rağmen, bu makalenin yazıldığı sıralarda IPv6 Çalışma Grubu bu çeşit adresleri mimariden çıkarma kararı almıştır. Bağ içi adresler sadece özel amaçlarla kullanılır ve bu adresleri taşıyan paketler yönlendiriciler tarafından asla diğer bağlara iletilmezler. IPv4'te sıkça kullanılan herkese gönderim (broadcast) adresleri, görevleri çoklu gönderim (multicast) adresleri tarafından üstlenildiği için IPv6 mimarisinde yer almaz. Herhangi birine gönderim adresleri (anycast) IPv6'nın getirmiş olduğu yenilikler arasındadır. Bu tip adreslere gönderilen paketler, bu adresi kullanan birden çok düğümden sadece birine varacak şekilde yönlendirilir. Kullanımda birden çok düğümün aynı adresi paylaşması açısından çoklu gönderim adresinlerine benzemekle birlikte, paketin sonunda sadece tek bir düğüme ulaşması açısından tekil gönderimi andırırlar.
Otomatik adres konfigurasyonu IPv6'nın getirmiş olduğu önemli yeniliklerdendir. Ağ üzerindeki adres atama görevini üstlenmiş bir DHCP ya da PPP sunucusu olmaksızın ağa bağlı düğümlerin kendilerince adres edinmelerine olanak tanır. Temelinde ağdaki yönlendiricilerin gerekli adres bloğunu anons etmeleri ve düğümlerin de bu bloğa kendilerinden 64 bitlik bir değer eklemeleriyle adres oluşturmaları yatar. Bu şekilde oluşturulan adreslerin kullanılmadan önce tekillik testinden geçirilmesi gerekir. Düğümler başkaları tarafından kullanılmadığına kanaat getirdikleri adresi kullanıma alabilir.
IP protokol başlığında ise büyük değişiklikler olmuştur. IPv4'te varolan protokol başlık büyüklüğü, kimlik bilgisi, paket parçası bilgisi, başlık sağlama toplamı kaldırılmış, IPv6 başlığına yeni olarak akış bilgisi eklenmiş. Tipik 20 bayt genişliğindeki IPv4 başlığının yerini 40 baytlık IPv6 başlığı almış. Temel IPv6 başlığına ek olarak, kendince özel amaçlara yönelik yönlendirme, paket bölmesi, şifreleme ve mobil uzantı başlıkları tanımlanmış. Zaman içerisinde ihtiyaç oldukça bunlara yenilerinin eklenmesi de mümkün kılınmış.
Yönlendirme alanında temel prensiplerde bir değişiklik olmamakla birlikte varolan RIP, OSPF, IS-IS, MP-BGP, PIM-SM, PIM-SSM gibi protokoller IPv6 adreslerini işleyebilecek şekilde güncellenmiş. Çoklu gönderim için kullanılan IGMP'nin yerini yeni geliştirilen MLD almış.
Alan adlarının kaydından sorumlu DNS, artık IPv4 adreslerin yanı sıra IPv6 adreslerini de barındıracak şekilde düzenlenmiş. IPv4 adresleri A tipi kayıtlarda saklanırken, AAAA tipi kayıtlar IPv6 adreslerine tahsis edilmiş. IPv6'yı destekleyen bir DNS sunucusu üzerinde bir alan adı aynı zamanda hem IPv4 hem de IPv6 adreslerine atanabilir.
IPv4'ün hareketlilik protokolü Mobil IPv4'e karşılık olarak Mobil IPv6 geliştirilmiş. Aralarında uygulamada öne çıkan faklılıklar olmasına rağmen bu iki protokol ana hatlarıyla birbirlerine benzerler.
Yeni Protokolün Internet'e Getirileri
Önceki bölümde bahsedilen özelliklere bakıldığında, bunların arasında en geniş etkiyi yaratacak olanın IPv6'nın geniş adresleme olanağı olduğu gözlemlenir. Bu sayede Internet'e bağlanmak isteyen her tür aracın (bilgisayar, telefon, araba, buzdolabı, vs.) her an her yerden bunu gerçekleştirmesi mümkün olacaktır. Uçtan uca bağlantıların sağlanabilmesi sayesinde IPsec'in getirmiş olduğu yüksek güvenlik seviyesine erişilebilecek ve yeni eşler arası (peer-to-peer) iletişim uygulamalarının önü açılabilecek. En önemlisi de artık NAT'lere ihtiyaç kalmayacak.
Herhangi birine gönderim adresleri servis keşfini kolaylaştırıcı bir araç olarak karşımıza çıkıyor. Otomatik adres konfigurasyonu ise hem ağa erişen düğümlerin hem de ağ birimlerinin üzerindeki konfigurasyon yükünü azaltıcı bir faktördür. Internet'in gelişimini hızlandıran tak-kullan (plug-and-play) tarzı uygulamaların artması bu özelliklerle mümkün olacaktır. Otomatik adreslemenin bir başka faydası da ağların ISS değiştirme işlemlerini daha kolayca yapmasına olanak tanımasıdır.