Kurumsal veri merkezlerinde Fibre Channel (FC) altyapısı yüksek hızlı ve güvenilir veri aktarımı için kritik rol oynar. Ancak yoğun iş yükleri topoloji uyumsuzlukları ya da donanım sorunları nedeniyle zaman zaman performans darboğazları oluşabilir.

VMware ESXi gibi platformlarda bu tür durumlar genellikle şu şekilde bir uyarı mesajıyla karşımıza çıkar:

2025-08-24T20:08:20.289Z In(14) vobd[2097955]:  [HardwareCorrelator] 1393784213369us: [vob.hardware.fpin.fc.peercongestion.creditstall] FPIN FC credit stall peer congestion: Host WWPN 10005cba2cfc3fe4, target WWPN 21420002ac02b239. 

Bu uyarı Fabric Performance Impact Notification (FPIN) mekanizmasının devreye girdiğini ve buffer-to-buffer (B2B) kredi tıkanması yaşandığını gösterir.

Bu makalemde olayın teknik arka planını tipik nedenlerini ve çözüm yollarını ayrıntılı şekilde açıklayacağım.

FPIN Nedir?

FPIN (Fabric Performance Impact Notification) modern FC switch’lerin ağ üzerindeki performans sorunlarını tespit edip ilgili hostlara bildirmesini sağlayan bir mekanizmadır.

Bu sayede yavaş tepki veren cihazlar (slow-drain devices) veya aşırı trafik yükü gibi durumlar proaktif olarak saptanabilir.

Buffer-to-Buffer (B2B) Krediler

Fibre Channel iletişimi “kredi” kavramı üzerine kuruludur.

  • Her port belirli sayıda buffer ile gelir.
  • Karşı taraftan onay alınmadan yeni çerçeve gönderilemez.
  • Eğer karşı port, çerçeveleri zamanında boşaltamazsa krediler tükenir ve “stall” yani duraksama başlar.

Bu mekanizma FC’nin güvenilirliğini artırırken aynı zamanda tüm ağın yavaşlamasına yol açabilecek zincirleme tıkanıklıkların da kaynağı olabilir.

Credit Stall Peer Congestion’ın Temel Nedenleri

Slow-Drain Aygıtlar

  • Tanım: Bir host veya storage portu, gelen çerçeveleri zamanında işleyemez.
  • Sonuç: Switch üzerindeki buffer’lar dolar, B2B krediler tükenir.
  • Etkisi: Aynı ISL veya aynı switch’i paylaşan tüm diğer portlar da bu tıkanıklıktan etkilenir.

Oversubscription (Aşırı Abonelik)

  • Durum: 1:N trafik desenlerinde veya yoğun I/O altında, ISL bağlantıları tam kapasiteye ulaşabilir.
  • Örnek: Çok sayıda host aynı anda aynı storage pool’a büyük boyutlu read işlemleri yapıyorsa, dönüş paketleri linki doyurur.
  • Etkisi: Krediler hızla tükenir, “credit stall” tetiklenir.

Lost Credits (Kredi Kaybı)

  • Sebep: Bozuk SFP modülleri, hatalı ya da düşük kaliteli kablolar, CRC hataları veya fiziksel katman problemleri.
  • Sonuç: Krediler kaybolur ve iletişim akışı sağlıklı çalışmaz.
  • Teşhis: Switch port sayaçlarında CRC errors, Loss of Sync, Loss of Signal gibi metrikler yükselir.

Hız Uyumsuzluğu

  • Örnek: 64G FC ile 32G FC portun eşleştirilmesi.
  • Sorun: Farklı hızlarda buffer yönetimi tutarsız olabilir.
  • Sonuç: Yüksek hız tarafı sürekli beklemeye girer ve kredi tıkanması oluşur.

Yanlış MPIO Politikaları

  • Durum: Multipath yazılımları, sorunlu ya da kısmen arızalı bir yola trafik göndermeye devam edebilir.
  • Sonuç: Sağlıklı yollar da bu yavaş yolun etkisiyle darboğaz yaşar.

Teşhis Süreci

FPIN Log Analizi

  • Switch loglarında hangi WWPN veya portun sorun yarattığı açıkça belirtilir.
  • Bu bilgiler, doğrudan sorunlu cihaz veya bağlantıya odaklanmayı sağlar.

Port Sayaçlarının İncelenmesi

  • tx_credit0 sayaçları: Kredilerin tükenip tükenmediğini gösterir.
  • CRC error, Loss-of-Sync, Loss-of-Signal: Fiziksel katman sorunlarına işaret eder.
  • Queue depth değerleri: Aşırı yük altında bekleyen I/O miktarını ortaya koyar.

Trafik Desenlerinin İzlenmesi

  • Hangi host’ların hangi storage portlarına yoğun trafik gönderdiği analiz edilmelidir.
  • Özellikle “fan-in” (çok host → az sayıda target) senaryoları dikkatle incelenir.

Çözüm ve İyileştirme Adımları

KategoriÇözüm Yöntemi
Fiziksel KatmanSFP ve kabloları değiştirin, hatalı optikleri ayıklayın, port temizliği yapın.
Hız Uyumu64G ↔ 64G, 32G ↔ 32G gibi eşleşmelere dikkat edin. Gerekirse hız sabitlemesi uygulayın.
OversubscriptionISL kapasitesini artırın, trafik yükünü dengeleyin. “Trunking” veya “Load Balancing” kullanın.
Slow-Drain CihazlarSorunlu host/storage portlarını belirleyin, firmware güncelleyip I/O optimizasyonu yapın.
MPIO PolitikalarıRound-Robin yerine Fixed veya MRU kullanın. Sağlıksız yolları devre dışı bırakın.
Firmware & YazılımSwitch, HBA ve ESXi firmware’lerini güncel tutun. FPIN desteği her sürümde iyileştirilmektedir.

VMware Tarafında Yapılması Gereken Kontroller

ESXi Log Analizi

  • /var/log/vobd.log ve /var/log/vmkernel.log dosyalarını kontrol edin.
    FPIN uyarıları burada detaylı olarak düşer. Özellikle hangi HBA/WWPN’in etkilendiğini görmek için önemlidir.
  • Aynı zaman damgasına denk gelen I/O timeout veya path failover olaylarını araştırın.

HBA (Host Bus Adapter) Durumu

  • esxcli storage san fc list komutu ile her FC portunun durumu, WWPN bilgisi, hız ve bağlantı sağlığı kontrol edilmeli.
  • esxcli storage core adapter list ile HBA sürücüsünün güncel olup olmadığına bakın.
  • HBA firmware ve driver sürümlerinin VMware HCL (Hardware Compatibility List) ile uyumlu olması kritik.
    → Uyumsuz sürüm, “slow drain” davranışı yaratabilir.

Multipath (MPIO) Konfigürasyonu

  • esxcli storage nmp device list ile LUN’ların hangi path selection policy (PSP) ile çalıştığını kontrol edin.
  • VMware’de önerilen politika genellikle:
    • Fixed veya Most Recently Used (MRU) → kritik storage’ler için.
    • Round-Robin (RR) → yoğun paralel I/O için.
  • Eğer “credit stall” sürekli belirli bir yol üzerinden oluyorsa, o path “degraded” olarak işaretlenebilir veya dışlanabilir.

Queue Depth Ayarları

  • HBA’ların ve ESXi içindeki device queue depth değerleri çok önemlidir.
  • esxtop[d] disk ekranıDQLEN, QLEN, ACTV kolonları incelenmeli.
  • Aşırı büyük queue depth → switch tarafında buffer tüketimini hızlandırır.
  • Çok küçük queue depth → performans kaybına yol açar.
  • Üretici önerilerine göre HBA driver parametrelerinde queue depth ayarı yapılmalı.

Latency ve I/O İzleme

  • esxtop kullanarak CMDS/s, LAT/rd, LAT/wr, QFULL değerleri takip edilmeli.
  • “QFULL” veya “APD/PDL” durumları görülüyorsa, storage veya SAN topolojisi doygunluk yaşıyor olabilir.

PowerPath / 3rd Party MPIO Yazılımları

  • Eğer EMC PowerPath gibi 3. parti MPIO yazılımı kullanılıyorsa, uyumlu sürüm olduğundan emin olun.
  • Yanlış sürümler, ESXi’nin native NMP (Native Multipathing Plugin) davranışını bozabilir.

Firmware ve ESXi Sürüm Güncellemeleri

  • VMware sürekli FPIN ile ilgili geliştirmeler yapıyor.
  • Örneğin vSphere 7 ve sonrası, FPIN loglamasını ve hata ayıklama kabiliyetini artırıyor.
  • Dolayısıyla:
    • ESXi hostların en son patch seviyesinde olduğundan,
    • HBA firmware ve driver’ın VMware HCL’de tavsiye edilen kombinasyonda olduğundan emin olun.

SAN Switch Tarafında Yapılması Gereken Kontroller

Port Health ve Sayaç Kontrolleri

  • Switch CLI üzerinden her port için şu sayaçlar incelenmeli:
    • BB_Credit0 (tx_credit0) → Buffer-to-buffer krediler tükeniyor mu?
    • CRC Errors → Kötü SFP/kablo işareti.
    • Loss of Signal / Loss of Sync → Fiziksel katman problemleri.
    • Encoding/Decode Errors → Genellikle optik modül sorunları.
  • Brocade için:
    • porterrshow, portstatsshow, portbuffershow
  • Cisco MDS için:
    • show interface fcX/Y (errors, credit loss, congestion)

FPIN Olay Logları

  • Brocade’de: errdump veya fpinShow komutları.
  • Cisco’da: show logging log | i FPIN
  • Bu loglarda hangi portun “credit stall” tetiklediği ve hangi cihazların etkilendiği listelenir.

ISL (Inter-Switch Link) Kontrolleri

  • ISL portları genelde en çok tıkanıklık yaşanan bağlantılardır.
  • Kontroller:
    • ISL hızları aynı mı? (örn. 64G ↔ 32G uyumsuzluğu varsa sorun çıkar).
    • ISL trunking doğru çalışıyor mu? (hashing mekanizması dengesiz olabilir).
    • ISL üzerindeki utilization % → sürekli %70-80 üstü ise kapasite artırılmalı.
  • Komutlar:
    • Brocade: islshow, portperfshow
    • Cisco: show interface fcX/Y counters, show trunk brief

Slow-Drain Device Analizi

  • Slow-drain cihazları bulmak için:
    • Brocade’de: bottleneckmon --status
    • Cisco’da: show hardware internal congestion veya show fpin status
  • Bu analizlerde, hangi host/storage portunun çerçeve salınımını yavaşlattığı çıkarılır.

Buffer-to-Buffer (B2B) Credit Ayarları

  • Her portun bağlı olduğu hıza ve mesafeye uygun buffer credit verilmiş mi?
  • Özellikle uzun mesafeli ISL’lerde (metro cluster senaryoları) krediler yetersizse “credit stall” kaçınılmazdır.
  • Brocade’de: portbuffershow, portcfgfportbuffers
  • Cisco’da: show interface fcX/YBuffer credits alanı

Fiziksel Katman Kontrolleri

  • Kötü / eski SFP’ler veya düşük kaliteli fiber kablolar, credit loss veya CRC error’ların ana sebebidir.
  • Yapılacaklar:
    • SFP’lerin DOM (Digital Optical Monitoring) değerlerini kontrol edin (show interface transceiver details).
    • TX/RX güç seviyeleri üretici tavsiyesinin altında mı?
    • Gerekirse sorunlu SFP/kabloyu değiştirin.

QoS ve Trafik Yönetimi

  • Yoğun SAN altyapılarında, Quality of Service (QoS) veya Traffic Isolation Zone (TIZ) konfigürasyonu gerekebilir.
  • Kritik uygulama trafiği için ayrı bir sınıf tanımlanarak “oversubscription” azaltılabilir.

Firmware ve Konfigürasyon Güncelliği

  • Switch firmware’in güncel olması gerekir.
  • Brocade ve Cisco, FPIN/credit stall ile ilgili birçok bug fix ve iyileştirmeyi son sürümlerde yayınlamıştır.
  • Ayrıca:
    • FEC (Forward Error Correction) desteği açık mı?
    • Congestion Detection / Congestion Notification ayarları aktif mi?

İlginizi Çekebilir