Kształtowanie ruch w sieciach Linux



Podobne dokumenty
Problem kolejkowania dostępu czyli zarządzanie przepustowością sieci

QoS jakośćusługwsieciachip

eth /30 eth1 eth /30 eth /30 Serwer IPERF

Uniwersytet Mikołaja Kopernika w Toruniu. Profilowanie ruchu sieciowego w systemie GNU/Linux

MODEL WARSTWOWY PROTOKOŁY TCP/IP

praktyczne zastosowania mechanizmów QoS, Linuxowe HTB paweł kudzia

Sterowanie przepływem danych w Linuxie 2.2

Rozdział STEROWANIE PRZEPŁYWEM RUCHU SIECIOWEGO. 1. Wprowadzenie

Przesyłania danych przez protokół TCP/IP

Wybrane mechanizmy gwarantowania jakości usług w sieciach IP. Dariusz Chaładyniak, Maciej Podsiadły * Warszawska Wyższa Szkoła Informatyki

Sterowanie przepływem danych w Linuxie

Zarządzanie w systemach i sieciach komputerowych. Dr inż. Robert Wójcik

Ponadto SLA powinno definiować następujące parametry:

Uproszczenie mechanizmów przekazywania pakietów w ruterach

TEMAT ROZPRAWY DOKTORSKIEJ:

Firewalle do zastosowań domowych

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

Integrated Services i Differentiated Services

ARCHITEKTURA USŁUG ZRÓŻNICOWANYCH

Adresowanie grupowe. Bartłomiej Świercz. Katedra Mikroelektroniki i Technik Informatycznych. Łódź, 25 kwietnia 2006

Uproszczony opis obsługi ruchu w węźle IP. Trasa routingu. Warunek:

Zarządzanie ruchem w sieci IP. Komunikat ICMP. Internet Control Message Protocol DSRG DSRG. DSRG Warstwa sieciowa DSRG. Protokół sterujący

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

Protokół ARP Datagram IP

QoS jak o tym myśleć w kontekście L2 i L3. Piotr Wojciechowski (CCIE #25543) Architekt Rozwiązań Sieciowych Kraków, 28 września 2011

NS-2. Krzysztof Rusek. 26 kwietnia 2010

Ruter - Linux 2.4. wersja dokumentu 0.9. Dubas Bartłomiej (dubcio@hoga.pl) FIREWALL, KONTROLA PRZEPŁ YWU, ZLICZANIE RUCHU

Wojskowa Akademia Techniczna im. Jarosława Dąbrowskiego

LABORATORIUM SYSTEMY I SIECI TELEKOMUNIKACYJNE CZĘŚĆ 2 MODELOWANIE SIECI Z WYKORZYSTANIEM SYMULATORA NCTUNS

Protokoły sieciowe - TCP/IP

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

SIECI KOMPUTEROWE Adresowanie IP

Sterowanie dostępem i szeregowanie pakietów

Adresy w sieciach komputerowych

Pytania na kolokwium z Systemów Teleinformatycznych

Sieci Komputerowe Translacja adresów sieciowych

Sterowanie ruchem w sieciach szkieletowych

Zarządzanie ruchem i jakością usług w sieciach komputerowych

w sieciach szerokopasmowych CATV i ISP - Model OSI

Implementacja modułu do wspomagania konfiguracji. Usługi i sieci teleinformatyczne następnej generacji aspekty techniczne, aplikacyjne i rynkowe

Zestaw ten opiera się na pakietach co oznacza, że dane podczas wysyłania są dzielone na niewielkie porcje. Wojciech Śleziak

Zarządzanie infrastrukturą sieciową Modele funkcjonowania sieci

Systemy operacyjne i sieci komputerowe Szymon Wilk Adresowanie w sieciach Klasy adresów IP a) klasa A

IPv6. Wprowadzenie. IPv6 w systemie Linux. Zadania Pytania. budowa i zapis adresu, typy adresów tunelowanie IPv6 w IPv4

Teletransmisja i sieci komputerowe 2

Instrukcje dotyczące funkcji zarządzania pasmem w urządzeniach serii ZyWALL.

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.

OPIS PRZEDMIOTU ZAMÓWIENIA

Quality of Service (QoS)

Laboratorium podstaw telekomunikacji

WPŁYW KOLEJKI TBF NA PARAMETRY QoS PRZEKAZU STRUMIENIOWEGO

Metoda QoS płaszczyzny danych w specjalnych systemach łączności

Model sieci OSI, protokoły sieciowe, adresy IP

Mosty przełączniki. zasady pracy pętle mostowe STP. Domeny kolizyjne, a rozgłoszeniowe

DLACZEGO QoS ROUTING

Konfigurowanie sieci VLAN

Instrukcja dotycząca funkcji zarządzania pasmem w urządzeniach serii Prestige 660HW.

Plan wykładu. Warstwa sieci. Po co adresacja w warstwie sieci? Warstwa sieci

Sieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet

Zarządzanie pasmem opis ogólny

QoS w sieciach IP. Parametry QoS ( Quality of Services) Niezawodność Opóźnienie Fluktuacja ( jitter) Przepustowość ( pasmo)

Podstawowe protokoły transportowe stosowane w sieciach IP cz.2

Quality of Service w sieciach LAN/WAN

Kolejkowanie pasma w Linuxie. Autor: Piecuch Tomasz IVFDS

Spis treści. 1 Moduł Modbus TCP 4

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

Akademickie Centrum Informatyki PS. Wydział Informatyki PS

Wykład Nr Sieci bezprzewodowe 2. Monitorowanie sieci - polecenia

Materiały przygotowawcze do laboratorium

Kierunek: technik informatyk 312[01] Semestr: II Przedmiot: Urządzenia techniki komputerowej Nauczyciel: Mirosław Ruciński

Kształtowanie ruchu w sieciach komputerowych

Ograniczanie pasma internetowego za pomocą IMQ i 7Layer

7. Konfiguracja zapory (firewall)

Urządzenia sieciowe. Tutorial 1 Topologie sieci. Definicja sieci i rodzaje topologii

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

ZiMSK. Charakterystyka urządzeń sieciowych: Switch, Router, Firewall (v.2012) 1

Wykład 3 Filtracja i modyfikacja pakietów za pomocą iptables.

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ PODSTAWY RUTINGU IP. WSTĘP DO SIECI INTERNET Kraków, dn. 7 listopada 2016 r.

Narzędzia diagnostyczne protokołów TCP/IP

Sieci Komputerowe Modele warstwowe sieci

iptables/netfilter co to takiego?

Którą normę stosuje się dla okablowania strukturalnego w sieciach komputerowych?

LABORATORIUM SIECI KOMPUTEROWYCH (compnet.et.put.poznan.pl)

Sieci komputerowe w sterowaniu informacje ogólne, model TCP/IP, protokoły warstwy internetowej i sieciowej

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP. WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r.

ASPEKTY OBSŁUGI UŻYTKOWNIKÓW W SIECIACH LOKALNYCH KORZYSTAJĄCYCH Z ZASOBÓW SIECI ROZLEGŁYCH

Warstwa sieciowa rutowanie

Model OSI. mgr inż. Krzysztof Szałajko

pasja-informatyki.pl

URZĄD GMINY W SANTOKU. Program Testów. dot. postępowania przetargowego RRG AC

Dlaczego? Mało adresów IPv4. Wprowadzenie ulepszeń względem IPv4 NAT CIDR

Niniejszy załącznik zawiera opis techniczny oferowanego przedmiotu zamówienia.

Sieci komputerowe - administracja

Wykład 3 / Wykład 4. Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak

Laboratorium sieci komputerowych

ZiMSK. Routing dynamiczny 1

Co w sieci siedzi. Warstwa 2 - konfiguracja sieci VLAN. Routing między sieciami VLAN.

Warstwa sieciowa. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa

Transkrypt:

Kształtowanie ruch w sieciach Lux 1. Wprowadzenie Wymagania wstępne: wykonanie ćwiczenia Statyczny wybór trasy w systemie Lux. Potrzeba sterowania ruchem w sieciach komputerowych wynika głównie z faktu, że obecnie zapotrzebowanie na usługi sieciowe rośnie w szybszym tempie, niż aktualne możliwości sieci. Sterowanie takie można podzielić na dwie kategorie: kształtowanie ruchu (ang. traffic shapg) zgłaszane do wysłania pakiety mogą zostać opóźnione lub odrzucone dla zachowania określonych właściwości ruchu (np. aktualnej przepustowości); wyrównywanie obciążenia (ang. load balancg) dla zgłaszanych pakietów należy wybrać drogę w sieci uwzględniając politykę równomiernego obciążenia łączy. Jednym z protokołów wspierających kontrolę przepływu pakietów jest protokół TCP, który pozwala transmitującym systemom dostosować się do poziomu ruchu i warunków w sieci. Jednak aby w pełni kształtować ruch w sieci konieczne są dodatkowe mechanizmy kontrolne; wykorzystuje się zatem w tym celu głównie tzw. algorytmy kolejkowania pakietów (ang. queueg disciple) często nazywane w skrócie kolejkami. Kolejki obsługiwane przez terfejsy sieciowe można podzielić na dwie grupy: kolejki proste takie jak np. FIFO, które określają w jako sposób pakiety są traktowane przez system, bez możliwości zagnieżdżania nych kolejek; kolejki złożone które mogą być rozbudowaną strukturą, zawierającą ne kolejki oraz y i klasy. Oprócz algorytmów kolejkowania kształtowanie ruchu można także osiągnąć stosując w sieci odpowiednie mechanizmy zapewniania jakości (ang. quality of service). Przykładami takich rozwiązań są: IntServ (ang. tegrated services) oraz DiffServ (ang. differentaited services). Pierwsze z tych rozwiązań w praktyce realizowane przez protokół RSVP (ang. resource reservation protocol) polega na zestawieniu w sieci połączenia gwarantującego żądane właściwości jakościowe. Niestety wymaga to aby wszystkie węzły pośrednie w sieci (rutery) obsługiwały to rozwiązanie; dodatkowo w dużych sieciach mogą pojawić się problemy z utrzymywaniem zestawionych połączeń oraz z szybko wyczerpującymi się zasobami. Uwzględniając te problemy, drugie rozwiązanie DiffServ nie wymaga zestawiania a priori połączenia w sieci, ale opiera się na dzieleniu pakietów na klasy przy ich wysyłaniu. Wówczas każdy węzeł pośredni zobowiązany jest traktować wszystkie pakiety danej klasy z jednakowymi parametrami jakościowymi. 1.1 Podstawowe kolejki proste Jedną z najprostszych kolejek tego typu jest powszechnie znana kolejka FIFO, jednak oprócz niej do kształtowania ruchu wykorzystuje się także ne kolejki, z których podstawowe znaczenie mają: pfifio_fast, SFQ oraz TBF. Oto ich krótka charakterystyka: pfifo_fast domyślna kolejka dla terfejsów sieciowych w systemie Lux, składająca się z trzech kolejek FIFO numerowanych od 0 (najwyższy priorytet) do 2 (najniższy priorytet); każda kolejka FIFO działa niezależnie, tj. jeśli w paśmie 0 są jeszcze pakiety, to pasmo 1 nie zostanie obsłużone; pakiety trafiają do poszczególnych kolejek FIFO na podstawie tzw. mapy priorytetów, uwzględniającej m.. pole TOS pakietów IP; kolejka pfifo_fast jest przedstawiona na rysunku nr 1;

fifo0 fifo1 fifo2 Rysunek nr 1. Kolejka pfifo_fast. SFQ (ang. stochastic fair queug) składa się z wielu kolejek FIFO; do każdej z tych kolejek trafiają pakiety z takim samym adresem źródłowym, docelowym (łącznie z numerami portów) i protokołem warstwy transportowej; pakiety z kolejek FIFO pobierane są zgodnie z algorytmem round rob; kolejka SFQ jest przedstawiona na rysunku nr 2. Fair Queug Alg. fifo0 fifo1 fifo2... fifon Round Rob Alg. Rysunek nr 2. Kolejka SFQ. TBF (ang. token bucket filter) działa w oparciu o żetony (ang. token), które sterują ruchem pakietów w kolejce; każdy pakiet oczekuje na pojawienie się w kolejce określonej liczby żetonów, jeśli takie się pojawią pakiet może opuścić kolejkę; kolejka TBF jest przedstawiona na rysunku nr 3. tokens generatoror fifo tokens wait for token(s) token available? Rysunek nr 3. Kolejka TBF.

1.2 Kolejki złożone W skład kolejki złożonej wchodzą: kolejki proste, y oraz klasy. Klasy są kontenerami dla nych dyscypl kolejkowania; tworzą one strukturę drzewa, tj. każda klasa posiada jednego rodzica oraz jednego lub wielu potomków. Każda klasa posiada swój identyfikator (uchwyt), składający się z dwóch części: starszej (określający rodzica) oraz młodszej (musi być unikalny w skali potomków tej samej klasy) np. 1:0, co można zapisać także jako 1:, jest to identyfikator klasy korzenia. Podstawową metodą przydzielania ruchu do konkretnych klas jest zastosowanie ów pakietów, które dokonują klasyfikacji na podstawie wybranych parametrów, takich jak np. adres źródłowy lub docelowy, nr portów itp. Kolejki proste w klasach decydują o sposobie obsługi pakietów, które trafiły do danej klasy. Ogólną postać kolejki prezentuje rysunek nr 4. kolejka prosta klasa kolejka prosta klasa główny algorytm kolejkowania Rysunek nr 4. Kolejka złożona. Kiedy jądro systemu zdecyduje się pobrać pakiet z kolejki złożonej, to pakiet ten będzie pochodził z jeden z dyscypl kolejkowania należącej do jednej z klas. Tak więc kolejka złożona może priorytetyzować pewną część ruchu poprzez usiłowanie zdjęcia pakietów z jednej ze swoich kolejek wcześniej niż z nych (główny algorytm kolejkowania). Przykładami kolejek złożonych są: PRIO (ang. simple priority queueg) podobna w założenia do kolejki pfifo_fast; WRR (ang. weighted round rob) działa na zasadzie rozdzielania dostępnego pasma w odpowiednich proporcjach wedle potrzeb; CBQ (ang. class based queueg) jedna z bardziej rozbudowanych kolejek złożonych, potrafiąca klasyfikować ruch na podstawie zadeklarowanego pasma oraz umożliwiająca klasą wykorzystywanie nieużywanego pasma nych klas; HTB (ang. hierarchical token bucket) obecnie najistotniejsza kolejka złożona w środowisku Lux, oparta jest na podobnym mechanizmie żetonów co kolejka TBF. Oto podstawowe możliwości kolejki HTB: dzielenie łącza na klasy o żądanej gwarantowanej przepustowości z możliwością wykorzystywania nieużywanego pasma nych klas; funkcja defiowania priorytetów klas; dzielenie hierarchiczne każda klasa może być podzielona na wiele podklas.

1.3 Narzędzie tc Program tc (wchodzący w skład pakietu ipre2), jest narzędziem pozwalającym realizować w systemie Lux kolejki oraz y dla kolejek złożonych. Ogólna postać polecenia tc jest następująca: dla kolejek: tc qdisc [add change replace lk] dev DEV [parent qdisc-id root] [handle qdisc-id] qdisc [qdisc specific parameters] dla klas: tc class [add change replace] dev DEV parent qdisc-id [classid class-id] qdisc [qdisc specific parameters] dla ów: tc filter [add change replace] dev DEV [parent qdisc-id root] protocol protocol prio priority filter-type [filtertype specific parameters] flowid flow-id Należy zaznaczyć, że zakładane kolejki przy pomocy omawianego narzędzia zawsze dotyczą terfejsu wyjściowego! Podstawowe parametry dla kolejki HTB to: rate gwarantowana mimalna przepustowość dla klasy; celi maksymalna przepustowość dla klasy. Do owania pakietów służy u32, oto jego podstawowe selektory: mach ip src źródłowy adres IP; mach ip dst docelowy adres IP; match [udp tcp] src port źródłowy; match [udp tcp] dst port docelowy. Przykłady poleceń tc: tc [qdisc filter class] wyświetlenie formacji o kolejkach/ach/klasach; tc qdisc del root dev eth0 usunięcie dyscyply kolejkowania z terfejsu eth0; tc qdisc add dev eth0 root handle 1:0 htb dodanie kolejki HTB do terfejsu eth0; tc class add dev eth0 parent 1:1 classid 1:2 htb rate 5mbit celi 10mbit dodanie nowej klasy z kolejką HTB oraz mimalną przepustowością 5mbit I maksymalna przepustowością 10mbit tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst 10.0.0.1 flowid 1:2 dodanie nowego a u32 dla pakietów adresowanych pod wskazany adres IP. 2. Organizacja, wymagany sprzęt, oprogramowanie Zadanie wykonuje grupa 3-osobowa; sprzęt: 3 komputery PC; oprogramowanie: system Lux z pakietem ipre2. 3. Zadania 1. Należy skonfigurować podział pasma zgodnie z rysunkiem nr 5 wykorzystując narzędzie tc oraz u32 (mimalnie ½ pasma, maksymalnie całe pasmo). 2. Dla powyższej konfiguracji wprowadzić do klas potomnych kolejkę SFQ.

3. Skonfigurować podział pasma na komputerze na dwie klasy dla dwóch usług: www oraz ftp. Poprawność wszystkich konfiguracji zweryfikować programem netperf. ½ pasma ½ pasma Rysunek nr 5. Konfiguracja do zadania. 4. Pytania sprawdzające 1. Dlaczego kolejkowanie dotyczy ruchu wychodzącego? 2. Czy możliwe jest kolejkowanie ruchu wchodzącego do terfejsu sieciowego? 3. Wyjaśnij zasady zarządzania pasmem w przełącznikach sieci Ethernet zgodne ze standardem IEEE 802.1p. 5. Literatura 1. HTB Lux queug disciple manual user guide http://luxik.cdi.cz/~devik/qos/htb/manual/userg.htm 2. Kształtowanie ruchu i zaawansowany rg B.Hubert (tłum. Ł.Bromski) http://lukasz.bromirski.net/docs/translations/lartc-pl.html 3. Podręcznik systemowy man dla polecenia tc, dla ów tc-filters oraz dla kolejki HTB tc-htb.