ISCSI mi, bir daha düsünün
ISCSI nedir?
ISCSI basit anlamda, TCP/IP üzerinden SCSI (Small Computer System Interface) paketlerinin taşınması amacı ile design edilmiş bir protokolüdür. Günümüzde IP=internet olduğu için protokol iSCSI (Internet Small Computer Systems Interface) olarak adlandırılmıştır.
Başlangıçta başarısından oldukça şüphe edildiği gerçeğini göz ardı edilmez. Ancak hala alternatif teknolojiler,güvenlik ve performans kriterleri göz önüne alındığında tamamen olnunlaşmış bir protokol olduğunu da söylemek pek doğru değildir.
ISCSI performans
Performans söz konusu olduğunda iSCSI ‘nin FC protokolü kadar performans gösteremeyeceği şüphe götürmez bir gerçektir ancak maliyet söz konusu olduğunda iSCSI nin daha avantajlı olduğu söylenebilir. Elinizdeki storage kutunuz iSCSI destekliyorsa network e bağlı üzerinde iSCSI initiator yüklü olan herhangi bir sunucuya kolaylıkla bir disk alanı verebilirsiniz. Ancak bu işlem öncesinde düşünülmesi gereken noktalar şunlardır ;
– Sunucu üzerindeki uygulama tipi nedir?
– Uygulamanın disk kullanım karakteristiği nedir?
– Yoğun çalışma durumunda CPU yükü nedir?
TCP/IP protokolü blok I/O için tasarlanmış bir protokol değildir. Normal bir ethernet networkünde frame size ı 1512 byte ‘dır dolayısı ile ortalama 1,5 Kb bir blok I/O yapabilirsiniz.
Son yıllarda ethernet networkünde “Jumbo Frame” adında bir kavramdan ve yapılandırmadan söz edilmektedir. Nedir Jumbo Frame? Az da olsa adından da anlaşılacağı gibi “Jumbo Frame” kapasite olarak büyütülmüş ethernet frame leridir. Bir Jumbo Frame ‘in max. büyüklüğü teoride ortalama 12000 byte olabilir çünkü 32 bit lik CRC ‘nin 12000 byte ve sonrasında efektif olarak çalışamadığı söylenmektedir. Dolayısı ile 9172 byte lık bir frame TCP paket header overhead i ile efektif olarak kullanılabilmektedir.
Sunucu ve storage sisteminde iSCSI kullanıldığı bir CPU yükü ortaya çıkacaktır. Bu yük SCSI paketlerini IP üzerine bindirilirken yapılan assemble ve deassemble işleminden kaynaklanmaktadır. Dolayısı ile CPU kullanımı fazla olan bir sistemde mevcut ethernet kart üzerinden iSCSI kullanmak yerine ,bu işlem için design edilmiş olan içerisinde TOE barındıran iSCSI HBA ‘ler kullanmak doğru olacaktır.
Mevcut network switchlerinin çoğu Jumbo Frame ‘leri desteklemektedir. iSCSI network ü normal “messaging network” den ayırmakta oldukça faydalı olacaktır. Bu işlem için ayrı bir network tasarlanması ya da VLAN yapısna gidilmesi kaanatimce daha uygun olacaktır. Performanslı bir iSCSI ortamı elde etmek için ;
– iSCSI destekli ethernet kartı (iSCSI HBA) kullanmak
– Ayrı bir network design etmek
– Jumbo Frame kullanımını aktif hale getirmek
bunları yapmıyorsanız iSCSI`den uzak durmanızı tavsiye ederim, sonra basiniz cok agrıyabilir.
Güzel bir yazı olmuş, performans için gereksinimler tam olmalı.
Teşekkürler.