
For English version, Click this link: https://medium.com/@ysakturk/is-is-protocol-27e706a43878
IS-IS aslında OSPF gibi bir link-state yani bir Interior Gateway Protocol (IGP)' dür. Link-state dediğimiz aslında bir Autonomus System içerisinde yer alan routerların, topoloji bilgilerini birbirlerine dağıtırken en kısa yolu hesaplayıp kullanmayı sağlar. Buradaki temel terimleri özetlemek gerekirse;
- IGP: OSPF gibi aynı AS(Autonomus System) içerisinde çalışır.
- Link State: Her router, bulunduğu ağın topolojisini bir database olarak öğrenir.
- SPF: Bu databaseler üzerinden en kısa pathler hesaplanır.
IS-IS aslında IP için değil, başlangıçta OSI CLNS için tasarlanmıştır. IP desteği daha sonra eklenmiştir. Bu yüzden bazı terimlere OSPF' den farklıdır.
Peki klasik sorumuz neden static route değil de ISIS tercih edilir? Static Route; küçük ve basit yapılarda tak çalıştır kolaylığı sağlasada ağın kapsamı büyüdükçe ve karmaşıklaştıkça yönetilemez bir hal alır. Her bir router içerisinde her bir prefix için static route yazmak hem çok güç hem de yönetilemez bir durumdur. Bunun yerine dynamic routing protocolleri tercih edilir.
Neden ISIS? Çok ölçeklenebilir bir yapıya sahiptir ve stabildir. Ayrıca IP bağımsızdır yani Layer2 üzerine de ölçeklenebilir. MPLS ya da Segment Routing gibi yapılarda çok yaygındır ve operatörler IS-IS kullanmayı çok sever :)
IS-IS çalışma mantığı kısaca şu şekildedir:
IS-IS' en kritik konularından biri Level' lardır. Level yapısı aslında bir ağı yönetilebilir parçalara bölerek scability sağlamaktır. Eğer bir ISP ağında binlerce router olsaydı ve hepsi tek bir alanda bulunsaydı en ufak bir link kopmasında bile tüm routerlar, aynı anda SPF algoritmasını çalıştırmak zorunda kalırdı ve bu da CPU' nun tavan yapmasına sebep olurdu.Bu level' lar nedir?
Aynı area içindeki routing için kullanılan Level' dir. L1' de router sadece kendi area'sında yer alan topolojiyi bilir.
Arealar arası backbone routing için kullanılır. L2 de yer alan routerlar birbirine bağlanalarak backbone area oluşturur.
Hem L1 hem de L2 çalışır. Kendi areası içerisinde L1 komşuluk kurar. Backbone tarafında ise L2 komşuluk kurar. Area'lar border gibi davranır.
OSPF' de herkes backbone area 0 a bağlı olma mantığı ile çalışırdı. IS-IS' te ise backbone mantığı L2 domain ile sağlanır.
IS-IS' de router' ı tanımlamak için NET dediğimiz Network Entity Title kullanılır. Bir NET için genelde Area ID, System ID ve NSEL kullanılır. Örnek vermek gerekirse:
49.0001.0000.0000.0001.00 adresi için 49.001 kısmı area ID, 0000.0000.0001 kısmı system ID ve 00 kısmı da NSEL' dir. System ID genelde 6 byte' dır. Aynı domain içerisinde System ID unique olmalıdır.
OSPF' de Router-ID çok önemlidir. IS-IS' de ise ID/NET çok kritiktir. OSPF ile IS-IS' in en büyük farkı nedir diye soracak olursak; OSPF IP bağımlı çalışır, fakat IS-IS ise IP bağımsız çalışır ve NET ID' leri bulunur.
Komşuluk kurmak için kullanılır. LAN IIH ve ve P2P IIH şeklindedir. LAN IHH; brodcast özellikli ağlarda kullanılır. (Örneğin Ethernet LAN) P2P IHH ise doğrudan birbirine bağlı iki router arasındaki komşuluk ilişkisini kurmak ve sürdürmek için kullanılır. LAN IHH' den en büyük farkı ise ortamda sadece iki tane cihazın olduğunun varsayılmasıdır.
Router' ın topoloji bilgisini taşır. Router ID/System ID, komşuluk bilgileri, metricler, prefixler ve çeşitli feauture bilgilerini barındırır. OSPF'deki LSA mantığına benzer ama IS-IS' de temel nesne LSP' dir.
Kısaca özetlemek gerekirse LSP bir kimlik kartı gibidir ve tüm bilgileri içerisinde barındırır.
LSDB özetini topluca taşır. Envanter listesi ya da veritabanı özeti gibidir. Asıl görevi ağ içerisinde yer alan tüm routerların LSDB dediğimiz harita bilgilerinin birbiriyle tamamen aynı yani senkronize olmasını sağlar.
IS-IS protokolünün eksik parça tamamlama veya onay mekanizmasıdır. Sadece belirli LSP' leri kapsar. Ağın tipine göre brodcast ya da P2P çalışır.
Komşuluk nasıl kurulur? Komşuluğun kurulabilmesi için başı şartların sağlanması gerekmektedir. Bunlar nelerdir diye soracak olursanız:
Peki daha önce bahsettiğimiz P2P ve Brodcast tipleri vardı. Bunların farkı nedir? Point-to-Point yapıda doğrudan komşuluk kurulur ve cihazlar birbirlerine doğrudan bağlıdır gibi düşünebiliriz. Broadcast yapıda ise, DIS seçimi yapılır. (OSPFdeki DR7BDR seçimine benzer)
DIS Nedir? Açılımı Designated Intermediate Systemdir. Broadcast ağ yapılarında IS-IS, bir DIS seçer. DIS' ın görevi:
Pseudonode LSP; IS-IS protokolünde brodcast ağlarda kullanılan, fiziksel olarak var olmayan sanal bir router adına yayınlanan özel bir LSP tipidir. Bir toplantı odasındaki (LAN) 10 kişi düşün. Herkesin birbirine "merhaba" deyip kartvizit vermesi yerine (Full Mesh), odadaki bir kişinin (DIS) herkesin adını bir kağıda yazıp duvara asmasıdır (Pseudonode LSP).
OSPF DR' den farkı IS-IS' de BDR yoktur. DIS seçimi farklı kriterler ile yapılır. (priority + SNPA/MAC gibi) DIS premption davranışı OSPFden farklı olabilir.
IS-IS' de her router şu bilgileri tutar:
SPF; yeni bir LSP geldiğinde, LSP değiştiğinde ya da ilgili link ya da portlar up/down olduğunda, metric değeri değiştiğinde ve prefix advertisement değiştiğinde çalışır. Büyük ölçekli ağlarda CPU tavan yapmaması için SPF timers kullanılır.
IS-IS' in güzel yönü; taşıyıcı protokol olarak IP adresine bağımlı olmamasıdır. IP bilgileri TLV'lerle eklenir.
Bu sayede tek bir IS-IS proccess içerisinde hem IPv4 hem de IPv6 taşınabilir. Dual-Stack ağlarda bu durum çok kullanışlıdır.
TLV aslında IS-IS' in kalbi gibidir.
Bu yapı sayesinde protokole yeni özellikler eklemek çok kolaydır. Örnek kullanım alanları: IP Prefixler, Router Capability, TE Metric/Bandwidht, Segment Routing SID' leri, Authentication, IPv6 Reachablity...
Bu esneklik, IS-IS' in operatör ağlarında uzun ömürlü olmasının en büyük sebebidir.
Vendor CLI' ye göre değişir ama route' lar şu şekilde görünür: L1 route, L2 route ya da L1L2 learned behavior şeklinde.
Aynı area içinde trafik L1 şeklinde görünür. Farklı area yapısında, L2 router paketi L1/L2 router' a yollar. Paket L2 omurgada taşınır ve hedef area' da L1' e iner.
IS-IS’de komşuluk ve LSP güvenliği için auth kullanılabilir:
Bu sayede rogue router’ın adjacency kurması / fake LSP basması zorlaşır.
IS-IS özellikle şu senaryolarda çok yaygın:
Çünkü IS-IS' in TLV yapısı, yeni capabilityleri ilan etmeyi kolaylaştırır.
IS-IS
OSPF
Sık görülen IS-IS arıza noktalarından bahsetmek istiyorum...
1.Adjacency Gelmiyor... Neleri kontrol etmeliyim?
2. Adjacency var ama route yok...
3. LSDB sync problemi...
4. Trafik suboptimal gidiyor...
Önemli operasyonel bilgiler:
1.Overload Bit: Bir router, overload bit set ederse genelde transit olarak kullanılmak istemediğini belirtir (ör. boot sırasında database tam dolmadan trafik almasın diye).
Kullanım senaryoları:
Yanlışlıkla açık kalırsa:
2.IS-IS Timerlar ve Convergence
Convergence hızını etkileyen başlıca şeyler:
Yani sadece “IS-IS hızlı mı?” değil, timer tuning + fiziksel katman + BFD beraber düşünülür.
Basit topoloji örneği (mantık)
Diyelim ki:
Trafik: R1 → R4
Bu yapı OSPF ABR/backbone’a benzer düşünülür ama birebir aynı mekanik değildir.
Konfigürasyon mantığı (vendor bağımsız, kavramsal)
Genelde 3 adım vardır:
Örn. mantık olarak:
IS-IS show/debug tarafında bakılan kritik çıktılar:
Vendor fark eder ama genelde şu tip komutlar olur:
Kısaca IS-IS:
Uygulama videosu çok yakında gelecek....
Web sitesi trafiğini analiz etmek ve web sitesi deneyiminizi optimize etmek amacıyla çerezler kullanıyoruz. Çerez kullanımımızı kabul ettiğinizde, verileriniz tüm diğer kullanıcı verileriyle birlikte derlenir.
