Fibre Channel w zarysie

Klasa 1

Dostarcza ona usługi połączeniowe z potwierdzeniem. W tej klasie pomiędzy dwoma portami typu N ustanawiane jest dedykowane połączenie. Po jego ustaleniu obydwa porty mogą wykorzystać pełną przepływność łącza. Żaden inny ruch w sieci nie zakłóca komunikacji między nimi, dzięki czemu uzyskuje się pewność, że wysyłane ramki dotrą do odbiorcy w tej samej kolejności, w jakiej zostały wysłane. W połączeniach przez przełącznicę nie musi ona buforować przesyłanych danych. Wynika stąd użycie kontroli przepływu danych węzeł-węzeł. Zastosowanie tej klasy usług implikuje użycie transmisji o dużej liczbie danych w określonym czasie, dotyczy to np. dźwięku czy obrazu wideo.

Rozszerzeniem klasy 1 jest tzw. intermix, który daje możliwość przesyłania ramek klas 2 i 3, gdy ramki klasy 1 nie są w danej chwili przesyłane. Intermix wymaga wsparcia po stronie zarówno portów typu N, jak i przełącznicy.

Klasa 2

Zapewnia ona usługi bezpołączeniowe z potwierdzeniem dostarczenia bądź niedostarczenia ramek. Nie ma tu dedykowanego połączenia, więc port może wysyłać dane i otrzymywać je od wielu portów N. Porty współdzielą łącza. W tej klasie usług odbiór ramek w kolejności, w jakiej zostały wysłane, jest zapewniony tylko dla połączeń w topologiach punkt-punkt i pętli z arbitrażem. Szybkości połączeń poszczególnych portów z siecią mogą się różnić. Stosowane są obydwa typy kontroli przepływu danych (bufor-bufor i węzeł-węzeł). Najbardziej typowym zastosowaniem klasy 2 są sieci LAN z IP jako protokołem górnej warstwy, gdzie kolejność ramek i czas ich dostarczenia nie są parametrami krytycznymi.

Klasa 3

Usługi tej klasy są zbliżone do klasy 2 - wyróżnikiem jest zastosowanie wyłącznie kontroli przepływu typu bufor-bufor i brak potwierdzenia dostarczenia ramek. Klasa 3 zapewnia usługi podobne do protokołów datagramowych. Jest używana tam, gdzie kolejność i czas dostarczania ramek nie są wartością o kluczowym znaczeniu, natomiast obsługę retransmisji danych nie dostarczonych zapewnia protokół wyższej warstwy. Klasa 3 usług używana jest do połączeń SCSI.

Klasa 4

Zapewnia ona dowolną alokację pasma w połączeniu między dwoma portami N zestawionymi za pośrednictwem przełącznicy. Może być użyta tylko w topologii z przełącznicą (Fabric). Każdy z portów typu N może zażądać od przełącznicy ustanowienia wirtualnego obwodu VC (Virtual Circuit) wraz z gwarantowaną jakością usług (przepływnością łącza). Tak zestawiony obwód składa się z dwóch jednokierunkowych połączeń pomiędzy portami - ich prędkość nie musi być równa.

Usługi klasy 4 gwarantują porządek dostarczania ramek zgodny z porządkiem ich wysłania. Zapewnia także potwierdzenie dostarczenia danych, podobnie jak usługi klasy 1. Natomiast główną różnicą jest możliwość zestawienia przez pojedynczy port N wielu wirtualnych obwodów. Zasoby są wówczas dzielone pomiędzy te obwody, natomiast przełącznica jest obciążona zarządzaniem ruchem w sieci i przepływem danych między buforami dla każdego z obwodów. Do realizacji usług klasy 4 wymagane są urządzenia obsługujące ramki klas 2 i 3.

Klasa 5

Idea tej klasy jest podobna do klasy 4, ale dotyczy izochronicznej usługi typu just in time (dokładnie na czas). Jednakże jest ona ciągle niezdefiniowana i być może nie do końca przemyślana. Nie wzmiankuje się o niej w żadnym z dokumentów FC-PH, a jedynie w informacyjnych.

Klasa 6

Klasa ta wspiera realizację multicastu przez urządzenie dołączone do sieci przy użyciu przełącznicy. Nadający N_Port zestawia połączenie klasy 1 z serwerem multicastu w przełącznicy, ten zaś zestawia dedykowane połączenia pomiędzy portem nadawczym a odbiorcami. Serwer multicastu jest odpowiedzialny za replikację ramek i przekazanie ich do każdego z odbiorców. Głównym zastosowaniem usług klasy 6 jest transmisja obrazu wideo do wielu odbiorców.

<hr size=1 noshade>Opis do Rys. 7.

Fibre Channel w zarysie

Rys. 7. Szkic kodowania 8B/10B powszechnego w Fibre Channel i Gigabit Ethernetcie

Warstwa FC-1 określa protokół transmisji, w tym reguły kodowania i dekodowania informacji oraz kontrolę błędów i specjalne symbole. Zgodnie z przyjętym w FC kodowaniem 8B/10B (patent IBM) bloki 8-bitowe są przekształcane na bloki 10-bitowe. Najpierw jednak nie zakodowaną informację dzieli się na bajty ABCDEFGH plus zmienna kontrolna Z (na rysunku bit sterujący). Bajty są w kodzie ASCII. Rozdziela się je na dwie grupy: ABCDEF i FGH. Bit A jest najstarszy. Zmienna Z umożliwia odróżnienie znaku danych od znaku sterowania. W konwencji nazw FC-1 może ona przyjąć wartości: D dla znaków danych i K dla znaku sterującego.

Każdy z 256 bajtów o strukturze ABCDEFGH będzie zakodowany 10-bitowym znakiem transmisyjnym (Transmission Character) o postaci abcdeifghj. Obowiązują 2 proste zasady:

  • w znaku abcdeifghj nie może się znaleźć mniej niż 4 zera i 4 jedynki

  • liczba kolejno występujących po sobie zer lub jedynek nie może przekroczyć 4.

    Ogólna forma znaku transmisyjnego to Zxx. y, gdzie xx jest dziesiętną wartością liczby dwójkowej utworzonej z nie zakodowanych bitów E, D, C, B, A, a y dziesiętną wartością liczby binarnej utworzonej z nie zakodowanych bitów H, G, F. Na przykład abcdeifghj = 01011001 można nazwać D.26.4, a abcdeifghj = 01111011 znakiem specjalnym K30.6. Bajty wartości danych lub sterowania mają w istocie 2 (mogą być jednakowe) kody, czyli każdy przekazywany symbol ma dwa odwzorowania. Tak więc przykładowo K28.5 może być przedstawiony jako liczba 001111010 lub jej negacja 110000101. Która wartość zostanie ostatecznie wybrana, zadecyduje specjalny układ kontroli błędów - RD (Ranning Disparity).

    Rozbieżnością (disparity) w FC określa się różnicę między liczbą jedynek a liczbą zer w zakodowanym słowie. Neutralna rozbieżność oznacza, że liczba zer jest równa liczbie jedynek. Dodatnia rozbieżność określa przewagę jedynek, a ujemna przewagę zer. Liczba słów o neutralnej rozbieżności wynosi 134.

    Koder i dekoder 8B/10B został zaprojektowany z myślą o utrzymaniu średniej neutralnej rozbieżności. Najpierw wylicza się rozbieżność w 6-bitowej części znaku 5B/6B, a następnie w 4-bitowej. Bieżąca rozbieżność jest rekordem skumulowanej rozbieżności każdego znaku transmisyjnego i jest śledzona przez odbiornik. Ażeby zagwarantować średnią neutralną rozbieżność, bieżąca dodatnia rozbieżność musi poprzedzać neutralną lub ujemną rozbieżność, natomiast ujemna rozbieżność musi poprzedzać neutralną lub dodatnią; podstawową jednostką FC jest słowo czterobajtowe (32-bitowe), ale na poziomie FC-1 staje się ono słowem złożonym z czterech 10-bitowych znaków nadawanych szeregowo. Dzięki temu można wykryć przekłamanie na wielu bitach. Prawdopodobieństwo wystąpienia błędu wynosi ok. 10<sup>-12</sup>.<hr size=1 noshade>


  • TOP 200