1 SPIS TREŚĆI 1
2 Spis rysunków 3
3 Spis tabel 4
4 Cel pracy 5
5 Wstęp 5
6 Podstawowe informacje o sieci ATM 7
6.1 Topologie i interfejsy sieci ATM 8
6.2 Komórka ATM 8
6.2.1 Format komórki ATM 8
6.2.2 Typy komórek 10
6.3 Architektura protokołu ATM 11
6.3.1 Warstwa fizyczna 12
6.3.2 Warstwa ATM 13
6.3.3 Warstwa adaptacji ATM 13
6.4 Kanał wirtualny 15
6.5 Ścieżka wirtualna 16
6.6 Multipleksacja 17
7 Klasy usług w sieci ATM 18
8 Problem przeciążenia 22
9 Wymagania stawiane kontroli przeciążenia 27
10 Klasyfikacja metod kontroli przeciążenia 28
11 Kontrola przeciążenia a typy połączeń ATM 31
12 Algorytmy zarządzania przeciążeniem 33
12.1 Parametry ruchu ABR 33
12.2 Format komórki zarządzającej 34
12.3 Zasady kontroli przepływu dla ruchu ABR 37
12.4 Przykładowe algorytmy 40
12.4.1 Algorytm credit-based 40
12.4.2 FECN i BECN 42
12.4.3 Proportional Rate Control Algorithm (PRCA) 45
12.4.4 Enhanced PRCA (EPRCA) 48
12.4.5 Target Utilization Band (TUB) Congestion Avoidance Scheme 50
12.4.6 Explicit Rate Indication for Congestion Aviodance (ERICA) 52
12.4.7 Congestion Avoidance Using Proportional Control (CAPC) 53
12.4.8 Algorytm MIT 54
13 Wybór metody kontroli przeciążenia 55
14 Porównanie metod kontroli przeciążenia 58
14.1 Algorytm CAPC 60
14.2 Algorytm ERPCA 61
14.3 Algorytm MIT 62
15 Podsumowanie 64
Bibliografia 66
Rysunek 1. Format komórki ATM 10
Rysunek 2. Warstwy ATM 11
Rysunek 3.Wielkość bufora a problem przeciążenia 23
Rysunek 4 Wymiana części łączy a problem przeciążenia 24
Rysunek 5. Wymiana wszystkich łączy a problem przeciążenia 25
Rysunek 6 Zasada działania algorytmu typu credit-based. 40
Rysunek 7. Zasada działania algorytmu FECN 42
Rysunek 8. Zasada działania algorytmu BECN 43
Rysunek 9 Zasada działania algorytmu PRCA 45
Rysunek 10 Konfiguracja testowa dla metody PRCA 47
Rysunek 11 Symulacja metody PRCA 47
Rysunek 12. Testowa konfiguracja sieci 59
Rysunek 13. Średnia przepustowość uzyskana dla algorytmu CAPC 60
Rysunek 14. Średnia przepustowość uzyskana dla algorytmu EPRCA 62
Rysunek 15. Średnia przepustowość uzyskana dla algorytmu MIT 63
Tabela 1. Klasy usług 18
Tabela 2 Format komórki zarządzającej RM 36
Tabela 3 Oczekiwane pasma przepustowe dla każdego połączenia w Mb/s 59
Tabela 4 Osiągnięte pasmo przepustowe dla połączeń w algorytmu CAPC 61
Tabela 5 Osiągnięte pasma przepustowe dla połączeń w algorytmie ERPCA 61
Tabela 6 Osiągnięte pasma przepustowe dla połączeń w algorytmie MIT 63
Celem mojej pracy dyplomowej była optymalizacja algorytmów warstwy sterowania przeciążeniem w sieci szerokopasmowej ATM. W pracy przedstawiłem problem przeciążenie w sieciach ATM, opisałem i dokonałem porównania najbardziej znanych algorytmów kontroli przeciążenia.
Niestety, dostępny pakiet symulacyjny COMNET III w wersji podstawowej nie umożliwia implementacji poszczególnych niestandardowych algorytmów kontroli przeciążenia, które są jeszcze w fazach testów i standaryzacji. Symulacje tych algorytmów można przeprowadzić w pakiecie OPNET firmy MIL3 lub w pakiecie COMNET III w wersji rozszerzonej o kompilator SIM???, pozwalającym na implementację niestandardowych rozwiązań. Ze względu na niedostępność wymienionych pakietów w pracy wykorzystałem symulacje przeprowadzone przez organizacje zajmujące się rozwojem i standaryzacją technologii ATM i symulacje przeprowadzone na uczelniach w Stanach Zjednoczonych i Niemczech.
Współcześnie tworzone sieci ATM osiągają bardzo duże rozmiary zarówno ze względu na rozpiętość geograficzną, jak i też liczbę podłączonych do niej urządzeń końcowych. ATM staje się obecnie najbardziej rozpowszechnianą technologią szkieletową dla złożonych sieci korporacyjnych, miejskich i regionalnych, zaczyna także powoli wkraczać do sieci lokalnych.
Sieci w standardzie ATM powinny zapewnić użytkownikom wydajność, efektywność i zagwarantować wynegocjonowane parametry jakościowe przez cały czas połączenia.
Technologia ATM, aby sprostać stawianym jej wymaganiom, potrzebuje odpowiednich algorytmów sterowania ruchem i kontroli przeciążeniem.
Kontrola przeciążenia jest odpowiedzialna za efektywną, wydajną i bezbłędną transmisję danych. Kontrola ta jest jednym z najbardziej istotnych zagadnień we wszystkich szybkich sieciach komputerowych.
Przyczynami powstawania przeciążenia są: fluktuacja strumieni pakietów, niezgodność przepustowości łącz, „wybuchowość” ruchu w sieci a także awarie wewnątrz sieci. Przykładowo transmisja skompresowanego obrazu video może być przyczyną fluktuacji strumieni pakietów. Niezgodność przepustowości łącz spowodowana jest m.in. koniecznością współpracy bardzo szybkich nowoczesnych łącz wraz ze starych wolnymi łączami, które nie znikną z chwilą wprowadzenia szybkich łączy i będą jeszcze długo używane. Rozpiętość przepustowości łącz ciągle się zwiększa. Dzisiaj istnieją sieci o łączach od prędkości 9,6 kbps do 1Gbps, jutro będziemy mieli sieci składające się z łączy od prędkości 9,6 kbps do kilku Gbps. Wzrastająca niejednorodność potęguje problem przeciążenia.
Aby zapewnić efektywność sieci i zapobiec stratom danych na skutek w/w przyczyn, potrzebujemy efektywnych metod badających stan sieci i podejmujących odpowiednie reakcje w celu uniknięcia przeciążenia. Algorytmy sterowania przeciążeniem, którymi się zająłem w niniejszej pracy, są takimi metodami.
W pracy krótko opisałem technologie ATM: architekturę protokołu, format komórki ATM i rodzaje połączeń. Następnie przedstawiłem problem przeciążenia, przyczyny powstawania i próby jego rozwiązania. W dalszej części pracy sklasyfikowałem i powiązałem poszczególne metody kontroli przeciążenia z rodzajami ruchu w sieci ATM. W rozdziale 11 opisałem zasadę działania najbardziej znanych algorytmów kontroli przeciążenia. W następnych rozdziałach bazując na dostępnych symulacjach dokonałem porównania, analizy algorytmów kontroli przeciążenia.
[ 5,8]
Technologia ATM (Asynchronous Transfer Mode) powstała w wyniku kompromisu między dwoma już funkcjonującymi technikami cyfrowej transmisji szerokopasmowej: STM (Synchronous Transfer Mode) i PTM (Packet Transfer Mode), łącząc zalety istniejących technologii przy jednoczesnej eliminacji większości wad tych systemów. Technika STM jest stosowana w sieciach ISDN, PTM zaś w lokalnych sieciach komputerowych. Wywodząca się z telekomunikacji technologia ATM jest coraz częściej postrzegana jako technika łącząca standard przekazów telekomunikacyjnych sieci SDH (Synchronous Digital Hierarchy) na poziomie warstwy fizycznej z różnymi sieciami komputerowymi.
Informacja w standardzie ATM jest przesyłana w postaci krótkich komórek o stałej długości (48 bajtów informacji + 5 bajtów nagłówka). Nagłówek jest niezbędny w celu zrealizowania przezroczystego transportu informacji użytkownika przez sieć ATM bez zakłóceń, straty czy też nadmiernego opóźnienia.
Standard ATM jest techniką telekomunikacyjną typu połączeniowego, co oznacza, że faza przesyłania informacji właściwej jest poprzedzona fazą zestawiania połączenia. W tej fazie wstępnej następuje negocjowanie kontraktu pomiędzy „klientem” sieci a „administracją” sieci. Na podstawie parametrów deklarowanych przez użytkownika (typ usługi, przewidywana przepływność), sieć decyduje, czy można zagwarantować odpowiedni poziom jakości obsługi dla nowopojawiającego się zgłoszenia i dla wszystkich innych aktualnie realizowanych. Zadeklarowane w fazie wstępnej parametry zgłoszenia mogą podlegać renegocjacji. Transmisja w sieci ATM odbywa się poprzez zestawienie łącza logicznego (kanał wirtualny, ścieżki wirtualne).
[5,8]
Sieci oparte o technologie ATM są konfigurowane jako gwiazda lub hierarchiczna gwiazda (w przypadku połączeń miedzy przełącznikami) z przełącznikiem ATM w centrum. Wyróżnia się dwa typy interfejsów:
· UNI (User Network Interface), który łączy sprzęt użytkownika (Customer Premises Equipment) z siecią ATM, czyli odpowiada za styk użytkownik-sieć publiczna. Interfejs UNI powinien zapewnić użytkownikowi podłączenie do publicznej sieci urzadzenia typu: terminal, urządzenie sieci LAN/MAN, przełącznik.
· NNI (Network Node Interface), styk sieciowy umieszczony pomiędzy węzłami ATM. Interfejs łączący tylko porty przełączników ATM - tzn. za ich pośrednictwem łączone są sieci i podsieci ATM. (styk sieć publiczna-sieć publiczna).
Sieć ATM do przesyłania danych wykorzystuje pakiety o jednakowej długości 53 bajtów (48 bajtów informacji i 5 bajtów nagłówku). Stała długość pakiety upraszcza sterowanie ruchem i zarządzanie zasobami sieci. W dalszej części pracy przedstawię budowę komórki ATM i rodzaje występujących komórek.
GFC (Generic Flow Control) - cztery bity kontroli przepływu stosowane w przypadku interfejsu UNI kiedy z jednego interfejs korzysta kilka przyłączonych stacji. W przypadku nie wykorzystywania funkcji kontroli przepływu pole to zawiera same zera. Pole GFC może być wykorzystane przez użytkownika w celu wydzielenia w ramach jego prywatnej sieci wielu klas usług z realizacją różnych wartości QOS.
VPI/VCI (Virtual Path Identifier / Virtual Channel Identifier) - bity identyfikacji wirtualnej ścieżki (VPI) i kanału (VCI) tworzące tzw. routing field - pole decydujące o routingu-transmisji komórki w sieci, miedzy węzłami ATM. Jak wcześniej pokazałem., sieć ATM jest protokółem wymagającym fazy nawiązania połączenia dla ustanowienia wirtualnego połączenia na fizycznych łączach ( uaktualnienia tablic w punktach komutacyjnych). VPI/VCI służą do identyfikacji danej komórki z konkretnym połączeniem i są wykorzystywane do multipleksowania, demultipleksowania i komutacji komórek w węzłach sieci ATM, przyporządkowuje się je danemu połączeniu na czas transmisji i obowiązują na odcinku miedzy węzłami sieci. Ze względu na małe rozmiary komórek stosowanie pełnych adresów byłoby bardzo nieekonomiczne, dlatego stosuje się właśnie takie etykiety unikalne tylko w obrębie interfejsu. Ogólnie rzecz biorąc w węzłach sieci odbywa się wymiana wartości VPI/VCI na inne - ważne na odcinku do następnego węzła. Używając takiego mechanizmu warstwa ATM może asynchronicznie przeplatać w jednym fizycznym medium komórki z wielu połączeń.
PT (Payload Type) - 3-bitowe pole służące do identyfikacji typu informacji jaka niesie komórka. Pozwala ono na odróżnienie danych użytkownika od informacji kontrolnych ...
kar_pio