SCSI, NVMe i FICON
 

Od bardzo dawna protokół SCSI (Small Computer System Interface) jest sprawdzonym i powszechnie stosowanym standardem zarówno do komunikacji wewnętrznej z dyskami, jak i obsługi takiej komunikacji na odległość w sieć SAN. Jego szeregowa natura, czyli realizowanie pojedynczej komendy w danym czasie sprawdzało się bardzo dobrze z dyskami talerzowymi HDD (Hard Disk Drive), gdzie każda operacja wymagała ustawienia i ruchu głowicy, co charakteryzowało się dużo większym opóźnieniem od transmisji danych sektora po odczycie czy do zapisu.



Wraz z pojawieniem się nośników półprzewodnikowych SSD (Solid State Drive) wiele się zmieniło. Nośniki SSD mogą realizować wiele operacji równolegle z mniejszymi i bardziej stałymi opóźnieniami. Dlatego sposób działania protokołu SCSI jest dla nich wąskim gardłem i nie pozwala na wykorzystanie ich pełnych możliwości.

Protokół NVMe (Non-Volatile Memory Express) znacząco poprawia obsługę operacji I/O oraz zapewnia bardzo wydajny dostęp do nośnia SSD, dzięki wykorzystaniu wielu długich równoległych kolejek do nośnika, a także redukcji złożoności samego protokołu i jego poleceń. Protokół SCSI korzystał tylko z jednej kolejki o długości 32 poleceń dla SATA (Serial ATA) i długości 256 poleceń dla SAS (Serial Attached SCSI). W protokole NVMe są to aż 64K kolejki o długości 64K poleceń, co pozwala w pełni wykorzystywać potencjał nośników SSD.


Jesteśmy partnerem IBM i Cisco Systems. Za naszym pośrednictwem można zakupić ich rozwiązania na polskim rynku. Zainteresowanych zapraszamy do This email address is being protected from spambots. You need JavaScript enabled to view it.. Kupując u nas masz pewność, że wszystko pochodzi z oficjalnego kanału sprzedaży na polskim rynku oraz jest oryginalnym i pełnowartościowym produktem.

Opóźnienia w dostępie do danych na dyskach HDD są naprawdę duże. Trzeba wziąć pod uwagę średni czas 8ms na ustawienie głowicy (Seek Time), średni czas 3ms dalszego ruchu głowicą przy odczycie lub zapisie (Rotational Latency) dla dysku HDD 10,000 RPM oraz dodatkowe opóźnienia na kontrolerach. To sumarycznie daje około 12ms.

W przypadku nośników SSD i wykorzystaniu PCIe/NVMe zwykle średnie opóźnienia dla 4K bloku będą rzędu około 50µs-120µs, a w przypadku SATA/SAS rzędu około 100µs-250µs. Przy czym to będzie też zależało od m.in. procesora, nośnika czy wysycenia kolejek, bo przy dużym ich zapełnieniu opóźnienia te także mogą być dla NVMe/SSD w milisekundach. Niemniej z dużą szansą najczęściej właśnie z takimi opóźnieniami się spotkamy. Nie są to też opóźnienia odpowiedzi dla całej pamięci masowej, które sumarycznie przy normalnej pracy mogą być bardziej bliższe 200µs-1000µs. Z drugiej strony zaczynają pojawiać się różne akceleracje, jak SCM (Storage Class Memory) w IBM FlashSystem, które przy określonym obciążeniu pozwalają pracować urządzeniu z opóźnieniami do 70µs.


Kiedy weźmiemy pod uwagę opóźnienia związane z samym dostępem do danych na nośniku, to dodatkowe opóźnienia powiązane z przełączaniem ramek danych w sieci SAN przestają być aż tak istotne. Wynika to z tego, że przy dodaniu ich do siebie, opóźnienia związane z siecią SAN nie mają aż tak znaczącego wpływu na sumaryczne opóźnienie. Stąd wykorzystanie sieci SAN jest jak najbardziej praktyczne i cieszy się sporą popularnością.


Przełączniki Cisco MDS, które firma Cisco Systems pozycjonuje do sieci SAN, zawsze odbierają całą ramkę, a następnie ją dokładnie weryfikują przed przełączeniem. Zabezpiecza to przed propagacją uszkodzonych ramek w całej sieci SAN oraz niepotrzebną utylizacją jej połączeń. Sprawia to, że sieć SAN jest bardziej przewidywalna, a opóźnienia bardziej spójne i mniej zależne od aktywowanych na przełączniku funkcjonalności.

W sieci SAN opartej o Cisco MDS, każda błędna bądź uszkodzona ramka jest od razu odrzucana.

Brak tej spójności i przewidywalności w opóźnieniach, a w szczególności brak możliwości odrzucania uszkodzonych ramek w sieci SAN nie jest czymś pożądanym. Urządzenia końcowe sieci SAN, jak inicjatory i targety, będą dodatkowo obciążone procesem odrzucania uszkodzonych ramek, a tymczasowe błędy w ich oprogramowaniu mogą doprowadzić do poprawnego zapisu losowo uszkodzonych w trakcie transmisji danych.

W sieci SAN opartej na innych przełącznikach, wszystkie błędne bądź uszkodzone ramki są propagowane dalej.

Dodatkowo, scentralizowany arbiter w Cisco MDS zawsze upewnia się, iż na całej drodze wewnątrz przełącznika istnieje wystarczająca ilość zasobów i ścieżka dla ramki jest dostępna. Neutralizuje to efekt "znikania" losowych ramek wewnątrz przełącznika, z czym mają problemy niektóre urządzenia innych producentów, gdzie przełączanie realizowane jest wewnątrz etapowo pomiędzy różnymi układami czy modułami, bez żadnej weryfikacji, zanim jeszcze ramka zostanie prawidłowo w całości odebrana.

Odebranie całej ramki danych, weryfikacja jej poprawności i kolejno jej przełączenie w przełącznikach Cisco MDS zabiera od około 2.4µs do 4.5µs (zależy od modelu). Jeżeli na innych urządzenia trwa to krócej, to warto dokładnie sprawdzić jakim kosztem się to odbywa i czy na pewno w całościowym rozrachunku przyniesie nam to korzyści.


Tam, gdzie od sieci wymaga się bardzo niskich opóźnień, polecamy wykorzystanie przełączników Cisco Nexus 3550, które mogą zaoferować opóźnienia rzędu nawet od kilku do kilkudziesięciu nanosekund (ns).


Cisco MDS są w stanie przenosić za pomocą FC (Fibre Channel) dane i polecenia protokołu SCSI (Small Computer System Interface), NVMe (Non-Volatile Memory Express) i FICON (Fibre Connection), stąd obsługują SCSI-FCP (SCSI Fibre Channel Protocol - FCP-4), IBM FICON (FC-SB-5) i FC-NVMe.

Obecnie FICON obsługiwany jest tylko na platformach Cisco MDS 9220i, Cisco MDS 9706 i Cisco MDS 9710.



FC-NVMe to NVMe-oF (NVMe over Fabric), gdzie w tym przypadku fabryką jest sieć oparta na protokole Fibre Channel over Fibre Channel lub Fibre Channel over Ethernet.

Udostępniają one fabrykę mogącą równolegle obsługiwać FC, FCoE, FCIP i FICON. Zatem obsługuje ona inicjatory (ang. initiator) i targety (ang. target) z obsługą protokołu SCSI lub NVMe oraz SCSI i NVMe, a także FICON.



Obsługa protokołu FC i FICON w ramach jednej fabryki znana jest też pod nazwą Protocol Intermix Mode (PIM). Cisco MDS obsługują też połączenia Ethernet dla FCIP, CEE (Converged Enhanced Ethernet) dla FCoE oraz oczywiście FC (Fibre Channel). CEE i FC może przenosić zarówno SCSI-FCP, jak i FC-NVMe.


FICON stosowany jest przy komunikacji serwerów firmy IBM typu mainframe, jak IBM Z czy IBM LinuxONE z różnymi urządzeniami peryferyjnymi, jak urządzenia taśmowe czy dyskowe. FICON wyparł połączenia ESCON (Enterprise Systems Connection), które wcześniej wyparły stosowane w tych serwerach interfejsy Bus and Tag.

Z użyciem FICON, serwery te wymieniają z pamięcią masową operacje I/O czy bardziej tak zwane CCW (Channel Command Word) lub TCW (Transport Command Word). CCW są pojedynczymi poleceniami, podczas gdy TCW przenoszą wiele poleceń i danych. TCW obsługiwane są przy aktywnym zHPF (High Performance FICON), który poprawia znacząco wydajność całej komunikacji i sumaryczną ilość obsługiwanych operacji I/O.

FICON przenoszony jest z użyciem FC i obsługuje typowe dla FC połączenia typu point-to-point (N_Port-to-N_Port) i typu switched (N_Port-to-F_Port). FICON może być też obsługiwany w ramach połączeń FCIP (FICON over FCIP), gdzie Cisco MDS dodatkowo potrafią zapewnić akcelerację zapisów i odczytów dla napędów taśmowych.

Cisco MDS posiadają także wbudowany port IBM CUP (Control Unit Port), który umożliwia zarządzanie, diagnozę i obsługę błędów in-band dla pewnych elementów fabryki z poziomu systemu IBM z/OS, serwera typu mainframe firmy IBM. CUP nie jest fizycznym interfejsem na przełączniku. Jest to wbudowany wewnętrz przełącznika port, do którego poprzez FICON kierowane są polecenia CCW/TCW zaadresowane na zarezerwowany adres portu 0xFE.

VSAN należący do FICON może być obsługiwany z poziomu CLI urządzeń Cisco MDS, systemu zarządzania Cisco DCNM (Data Center Network Manager) lub systemu zarządzania firmy IBM, który obsługuje interfejs IBM CUP. Do ciekawszych funkcji tego interfejsu należy m.in. obsługa SA/390, Resource Measurement Facility (RMF) i Dynamic Channel Path Management (DCM). Cisco MDS obsługują także tryb NPIV w stronę systemów GNU/Linux działających wewnątrz hiperwisora IBM z/VM (Virtual Machine), co zapewnia lepszą separację oraz zwiększa elastyczność w sposobie definiowania i różnicowania dostępów do pamięci masowej (Zoning/LUN Masking).

Pamięci masowe dla serwerów typu mainframe z obsługą FICON, jak IBM DS8900F, potrafią zapewnić opóźnienia nawet na poziomie rzędu 18µs-90µs.


Jesteśmy partnerem IBM i Cisco Systems. Za naszym pośrednictwem można zakupić ich rozwiązania na polskim rynku. Zainteresowanych zapraszamy do This email address is being protected from spambots. You need JavaScript enabled to view it.. Kupując u nas masz pewność, że wszystko pochodzi z oficjalnego kanału sprzedaży na polskim rynku oraz jest oryginalnym i pełnowartościowym produktem.

Przełączniki Cisco MDS 9700, Cisco MDS 9132T, Cisco MDS 9148T i Cisco MDS 9396T z portami FC 32G posiadają specjalne układy ASIC, potrafiące realizować inspekcję nagłówków protokołu FC, SCSI i NVMe przy pełnej prędkości portu, dostarczając w ten sposób bardzo dużą ilość danych telemetrycznych do realizacji zaawansowanej analityki, przewidywania i wizualizacji.



Dzięki nim widać aktualny czy historyczny stan infrastruktury SAN oraz można dokładnie wskazać przyczynę anomalii, złego jej działania czy niepowołanego zdarzenia. Dane te są wizualizowane i dostępne w przystępny sposób z poziomu interfejsu Cisco DCNM (Data Center Network Manager)

Na rynku jest zbyt dużo sprzętu z szarego kanału, stąd koniecznie sprawdzaj, czy firma sprzedająca produkty Cisco Systems jest na 100% jej partnerem handlowym. Sprawdzić można to w Cisco Partner Locator, gdzie też jesteśmy.

Zapraszamy do kontaktu drogą mailową This email address is being protected from spambots. You need JavaScript enabled to view it. lub telefonicznie +48 797 004 932