Fibre Channel w zarysie

Media transmisyjne

Szybkość

Fibre Channel w zarysie

Rys. 5. Łącza i ścieżka Fire Channel

Fibre Channel oferuje wiele różnych szybkości transmisji. Pełna standardowa prędkość transferu danych wynosi 1063 Mb/s. Wynika ona z transmisji danych w protokole HIPPI (wymagającego przepływności 100 MB/s) mapowanym do Fibre Channel. Po zakodowaniu 8B/10B i dodaniu nagłówków przesyłanych ramek otrzymuje się 1063 Mb/s. Operuje się też szybkościami stanowiącymi zarówno połowę, jedną czwartą i jedną ósmą pełnej standardowej prędkości, jak i podwójną i poczwórną. Te podziały ilustruje tabela. Najpopularniejsze są urządzenia przystosowane do prędkości odniesienia oraz czterokrotnie niższych.

Kontrola przepływu danych

Konieczność sterowania przepływem danych ujawnia się w chwilach przeciążenia. W takim wypadku urządzenie może być zmuszone do pominięcia części ramek. W protokole Fibre Channel wbudowano mechanizmy przeciwdziałające utracie transmitowanych danych. Urządzenie nadające może transmitować ramki do odbiorcy tylko wtedy, kiedy jest on gotowy do odbioru. Przed transmisją danych obydwa urządzenia przechodzą procedurę, w wyniku której otrzymują wzajemny dostęp do siebie. Podczas tego procesu ustalana jest liczba ramek, jaką odbiorca jest w stanie jednorazowo odebrać, czyli tzw. credit. Po przesłaniu takiej liczby ramek nadawca czeka z wysłaniem kolejnych, dopóki odbiorca nie zasygnalizuje gotowości odbioru kolejnej porcji danych. Dzięki temu nie dochodzi do wysłania większej liczby ramek, niż mogą pomieścić bufory urządzenia odbiorcy. Fibre Channel używa dwóch rodzajów sterowania strumieniem: bufor-bufor i węzeł końcowy-węzeł końcowy.

Bufor-bufor (Buffer-to-buffer)

Ten typ sterowania strumieniem stosuje się tylko między portem N a portem F lub pomiędzy dwoma portami N. Obydwa porty wymieniają informacje o liczbach ramek, które może przyjąć jeden od drugiego. Taka liczba staje się dla drugiego portu wartością BB_Credit i pozostaje stała, jak długo porty mają dostęp do siebie (są zalogowane). Kiedy na przykład porty A i B komunikują się ze sobą, to A może ogłosić gotowość przyjmowania 4 ramek z B, a B - 8 ramek z A. W takiej sytuacji wartością BB_Credit dla portu B będzie 4, a BB_Credit dla A będzie 8.

Fibre Channel w zarysie

Rys. 6. Przykład struktury łącza Fibre Channel

Każdy port śledzi BB_Credit_CNT, który oznacza liczbę nie odebranych ramek. Jest ona ustawiana na 0 podczas inicjalizowana. Dla każdej nadawanej ramki BB_Credit_CNT jest zwiększana o jeden lub zmniejszana o jeden po otrzymaniu R_RDY Primitive Signal z drugiego portu. Otrzymanie R_RDY oznacza, że port przetworzył ramkę, uwolnił bufor i jest gotowy na przyjęcie następnej. Jeśli BB_Credit_CNT osiągnie BB_Credit, port nie może transmitować następnej ramki, aż do otrzymania R_RDY.

Węzeł-węzeł (End-to-end)

Sterowanie strumieniem end-to-end odnosi się do portów N źródła i przeznaczenia zamiast do indywidualnych łączy. Koncepcja jest podobna do tej z użyciem buforów. Kiedy dwa porty N uzyskują do siebie dostęp, wówczas ogłaszają, ile przestrzeni buforowej mogą sobie udostępnić. Te wartości stają się EE_Credit. Z kolei EE_Credit_CNT oznacza liczbę nie odebranych ramek. Jest ustawiona na 0 po uzyskaniu dostępu i zwiększana o jeden dla każdej ramki transmitowanej do drugiego portu albo zmniejszana o jeden przy odbiorze ramki ACK Link Control z portu. Ramka ACK może oznaczać, że port otrzymał i przetworzył jedna ramkę, N ramek lub całą sekwencję ramek.

Klasy usług

Fibre Channel definiuje strategie komunikacji zwane klasami usług. Zastosowanie danej klasy wynika zwykle z rodzaju transmitowanych danych. Klasy różnią się typem kontroli przepływu danych. Gdy dwa porty typu N mają dokonać wymiany danych lub gdy port typu N uzyskuje dostęp do przełącznicy, musi istnieć przynajmniej jedna wspólna klasa usług obsługiwana przez obydwa porty. Jest to konsekwencją tego, że sekwencja bądź wymiana dokonywane są w ramach jednej klasy usług. Informacje o wspieranych klasach wymieniane są w czasie logowania do portu typu N lub do przełącznicy.


TOP 200