Daniel Migdał
Mariusz Lis
Laboratorium realizowane na zajęciach 3 (Moduł 3)
Zadanie 3
Jesteś pracownikiem działu IT w firmie Northwind Traders.
W firmie tej do lokalnej sieci komputerowej podłączone jest łącze internetowe
o przepustowości 200kbit/s.
Otrzymałeś zadanie wdrożenia i przetestowania algorytmu podziału łącza HTB,
za pomocą którego należy podzielić przepustowość w/w łącza internetowego w
taki sposób, aby komputer Windows XP "Nowak" otrzymał 150kbit/s, a
Windows XP "Kowalski" 50kbit/s.
Twoim zadaniem jest więc:
" utworzenie (w ruterze BST2) pliku wykonywalnego (nadając uprawnienia
wykonywalności) /etc/firewall/podzial_lacza
" nadać uprawnienia wykonywalności dla utworzonego pliku: # chmod 700
/etc/firewall/podzial_lacza
" w utworzonym pliku nanieść polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb - aktywuje algorytm HTB dla
danych wychodzących z interfejsu eth0
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 200kbit ceil
200kbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 150kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 150 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 50kbit ceil
200kbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst
172.16.200.10 flowid 1:2 - tworzy filtr kierujący pakiety skierowane do
komputera o adresie 172.16.200.10 do utworzonej klasy 1:2
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst
172.16.200.20 flowid 1:3 - tworzy filtr kierujący pakiety skierowane do
komputera o adresie 172.16.200.20 do utworzonej klasy 1:3
" uruchomienie pliku /etc/firewall/podzial_lacza
" utworzenie (w ruterze BST2) pliku /etc/firewall/firewall i naniesienie do
niego poleceń:
" iptables -F
" iptables -X
" iptables -Z
" iptables -A FORWARD -d 172.16.200.10 -j RETURN
" iptables -A FORWARD -d 172.16.200.20 -j RETURN
" rozpoczęcie pobierania pliku instalacyjnego programu "Wireshark" ze
strony www.eagle-server.example.com na komputerze Windows XP
"Nowak", jak i również (w miarę jak najbardziej równolegle) na
komputerze Windows XP "Kowalski", i następnieuruchomienie w ruterze
BST2 pliku /etc/firewall/firewall,
" zaobserwować wartości transferu uzyskiwanego przez każdą sesję, i po 3
minutach transferu przerwać pobieranie plików na obydwu komputerach,
a następnie odczytanie i porównanie ilości ściągniętych danych przez
obydwa komputery, za pomocą polecenia # iptables -L -v -n
Zadanie 4
Jesteś pracownikiem działu IT w firmie Northwind Traders.
Okazało się, że wdrożony algorytm podziału łącza (zakładający podział
przepustowości łącza internetowego dla dwóch komputerów, 150kbit/s dla
jednego i 50kbit/s dla drugiego) działa prawidłowo. Jednakże okazało się, że
jeżeli nastąpi jakakolwiek transmisja danych z samego rutera BST2 do
któregokolwiek z tychże dwóch komputerów (Windows XP "Nowak" oraz
Windows XP "Kowalski") to mimo tego iż w firmie zastosowana jest
infrastruktura oparta na protokole Ethernet 100mbit, to możliwa jest
transmisja z max przepustowością 200kbit/s.
Otrzymałeś więc zadanie, aby rozwiązać ten problem, który wynika z faktu iż
zastosowana pierwsza reguła w skrypcie definiująca przepustowość na wyjściu
interfejsu obsługującego sieć lokalną, ogranicza ją do wartości 200 kbit/s.
Twoim zadaniem jest więc:
" przetestować w systemie Windows XP "Nowak" szybkość transmisji
danych jakiegokolwiek większego rozmiarowo pliku z zasobu
sieciowego //172.16.200.254/pliki,
" zmienić w ruterze BST2 zawartość pliku /etc/firewall/podzial_lacza, tak
aby zawierał następujące polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb - aktywuje algorytm HTB dla
danych wychodzących z interfejsu eth0
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit ceil
100mbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
100 mbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 200kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 200 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 99mbit ceil
99mbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której nastąpi
zagwarantowanie przepustowości 99 mbit/s, przy ograniczeniu max dostępnej
przepustowości do 99 mbit/s
" tc class add dev eth0 parent 1:2 classid 1:4 htb rate 150kbit ceil
200kbit - tworzy klasę 1:4 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 150 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:5 htb rate 50kbit ceil
200kbit - tworzy klasę 1:5 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src
172.16.200.254 flowid 1:3 - tworzy filtr kierujący pakiety skierowane od
komputera o adresie 172.16.200.254 do utworzonej klasy 1:3
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst
172.16.200.10 flowid 1:4 - tworzy filtr kierujący pakiety skierowane do
komputera o adresie 172.16.200.10 do utworzonej klasy 1:4
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip dst
172.16.200.20 flowid 1:5 - tworzy filtr kierujący pakiety skierowane do
komputera o adresie 172.16.200.20 do utworzonej klasy 1:5
" uruchomienie pliku /etc/firewall/podzial_lacza
" przetestować w systemie Windows XP "Nowak" szybkość transmisji
danych jakiegokolwiek większego rozmiarowo pliku z zasobu
sieciowego //172.16.200.254/pliki.
Zadanie 5
Jesteś pracownikiem działu IT w firmie Northwind Traders.
Okazało się, że wdrożony algorytm podziału łącza (zakładający podział
przepustowości łącza internetowego dla dwóch komputerów, 150kbit/s dla
jednego i 50kbit/s dla drugiego) działa prawidłowo. Jednakże zapadła decyzję,
aby zmienić logikę podziału łącza internetowego w taki sposób, by dla usługi
HTTP zagwarantowana została przepustowość 150kbit/s, a dla usługi FTP 50
kbit/s.
Twoim zadaniem jest więc:
" zainstalować na komputerze Windows XP "Nowak" program Filezilla,
znajdujący się na stronie www.eagle-server.example.com,
" zmienić w ruterze BST2 zawartość pliku /etc/firewall/podzial_lacza, tak
aby zawierał następujące polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb - aktywuje algorytm HTB dla
danych wychodzących z interfejsu eth0
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit ceil
100mbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
100 mbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 200kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 200 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 99mbit ceil
99mbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której nastąpi
zagwarantowanie przepustowości 99 mbit/s, przy ograniczeniu max dostępnej
przepustowości do 99 mbit/s
" tc class add dev eth0 parent 1:2 classid 1:4 htb rate 150kbit ceil
200kbit - tworzy klasę 1:4 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 150 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:5 htb rate 50kbit ceil
200kbit - tworzy klasę 1:5 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src
172.16.200.254 flowid 1:3 - tworzy filtr kierujący pakiety skierowane od
komputera o adresie 172.16.200.254 do utworzonej klasy 1:3
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 80
0xffff flowid 1:4 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 80 do utworzonej klasy 1:4
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 20
0xffff flowid 1:5 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 20 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 21
0xffff flowid 1:5- tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 21 do utworzonej klasy 1:5
" uruchomienie pliku /etc/firewall/podzial_lacza
" zmodyfikowanie (w ruterze BST2) pliku /etc/firewall/firewall tak, aby
zawierał następujące polecenia:
" iptables -F
" iptables -X
" iptables -Z
" iptables -A FORWARD -d 172.16.200.10 -j RETURN
" iptables -A FORWARD -d 172.16.200.20 -j RETURN
" iptables -A FORWARD -p tcp -d 172.16.200.10 --sport 80 -j
RETURN
" iptables -A FORWARD -p tcp -d 172.16.200.20 --sport 80 -j
RETURN
" iptables -A FORWARD -p tcp -d 172.16.200.10 --sport 20 -j
RETURN
" iptables -A FORWARD -p tcp -d 172.16.200.20 --sport 20 -j
RETURN
" iptables -A FORWARD -p tcp -d 172.16.200.10 --sport 21 -j
RETURN
" iptables -A FORWARD -p tcp -d 172.16.200.20 --sport 21 -j
RETURN
" rozpoczęcie pobierania pliku instalacyjnego programu "Wireshark" ze
strony www.eagle-server.example.com na komputerze Windows XP
"Nowak", jak i również (w miarę jak najbardziej równolegle) na
komputerze Windows XP "Kowalski" z wykorzystaniem jednakże usługi
FTP w trybie aktywnym, i następnie uruchomienie w ruterze BST2
pliku /etc/firewall/firewall,
" zaobserwować wartości transferu uzyskiwanego przez każdą sesję, i po 3
minutach transferu przerwać pobieranie plików na obydwu komputerach,
a następnie odczytanie i porównanie ilości ściągniętych danych przez
obydwa komputery, za pomocą polecenia # iptables -L -v -n
Zadanie 6
Jesteś pracownikiem działu IT w firmie Northwind Traders.
Okazało się, że wdrożony algorytm podziału łącza (zakładający podział
przepustowości łącza internetowego dla dwóch usług, 150kbit/s dla usługi HTTP
i 50kbit/s dla FTP) działa prawidłowo. Jednakże podział ten nie uwzględnił
transferu z wykorzystaniem innych usług, co powoduje, że inne usługi realizują
transfer z pełną możliwą prędkością łącza internetowego, niwelując
gwarantowane wartości dla usługi HTTP i FTP.
Rozwiązaniem problemu jak się okazało, jest utworzenie dodatkowej klasy w
skrypcie podziału łącza, i skierowanie do niej domyślnie całego
niesklasyfikowanego przez filtry ruchu. Otrzymałeś zadanie wdrożenia i
przetestowanie tej modyfikacji.
Twoim zadaniem jest więc:
" zainstalować na komputerze Windows XP "Nowak" program Filezilla,
znajdujący się na stronie www.eagle-server.example.com,
" zmienić w ruterze BST2 zawartość pliku /etc/firewall/podzial_lacza, tak
aby zawierał następujące polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb default 6 - aktywuje
algorytm HTB dla danych wychodzących z interfejsu eth0
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit ceil
100mbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
100 mbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 200kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 200 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 99mbit ceil
99mbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której nastąpi
zagwarantowanie przepustowości 99 mbit/s, przy ograniczeniu max dostępnej
przepustowości do 99 mbit/s
" tc class add dev eth0 parent 1:2 classid 1:4 htb rate 100kbit ceil
200kbit - tworzy klasę 1:4 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 100 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:5 htb rate 50kbit ceil
200kbit - tworzy klasę 1:5 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:6 htb rate 50kbit ceil
200kbit - tworzy klasę 1:6 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 80
0xffff flowid 1:4 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 80 do utworzonej klasy 1:4
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 20
0xffff flowid 1:5 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 20 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 21
0xffff flowid 1:5- tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 21 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src
172.16.200.254 flowid 1:3 - tworzy filtr kierujący pakiety skierowane od
komputera o adresie 172.16.200.254 do utworzonej klasy 1:3
" uruchomienie pliku /etc/firewall/podzial_lacza
" rozpoczęcie pobierania pliku instalacyjnego programu "Wireshark" ze
strony www.eagle-server.example.com na komputerze Windows XP
"Nowak", jak i również (w miarę jak najbardziej równolegle) na
komputerze Windows XP "Kowalski" z wykorzystaniem jednakże usługi
FTP w trybie aktywnym, oraz w drugiej sesji z wykorzystaniem trybu
pasywnego (korzystającego z losowego portu do transmisji), i
następnie uruchomienie w ruterze BST2 pliku /etc/firewall/firewall,
" zaobserwować wartości transferu uzyskiwanego przez każdą sesję, i po 3
minutach transferu przerwać pobieranie plików na obydwu komputerach,
a następnie odczytanie i porównanie ilości ściągniętych danych przez
obydwa komputery, za pomocą polecenia # iptables -L -v -n
Zadanie 7
Jesteś pracownikiem działu IT w firmie Northwind Traders.
Okazało się, że wdrożony algorytm podziału łącza (zakładający podział
przepustowości łącza internetowego dla dwóch usług, 100kbit/s dla usługi
HTTP, 50kbit/s dla FTP, i 50kbit/s dla pozostałych usług) działa prawidłowo.
Zaobserwowano, że w razie niewykorzystania przepustowości przez którąś z
trzech klas przeznaczonych dla usług sieciowych, wartość tej przepustowości
jest równo rozdzielana pomiędzy dwie pozostałe usługi. Zapadła decyzja, aby w
takowej sytuacji całą wolną przepustowość wykorzystywała transmisja usługi
HTTP. Rozwiązaniem problemu jak się okazało, jest wykorzystanie
parametru prio. Otrzymałeś zadanie wdrożenia i przetestowanie tej
modyfikacji.
Twoim zadaniem jest więc:
" zmienić w ruterze BST2 zawartość pliku /etc/firewall/podzial_lacza, tak
aby zawierał następujące polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb default 6 - aktywuje
algorytm HTB dla danych wychodzących z interfejsu eth0
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit ceil
100mbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
100 mbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 200kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 200 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 99mbit ceil
99mbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której nastąpi
zagwarantowanie przepustowości 99 mbit/s, przy ograniczeniu max dostępnej
przepustowości do 99 mbit/s
" tc class add dev eth0 parent 1:2 classid 1:4 htb rate 100kbit ceil
200kbit prio 1 - tworzy klasę 1:4 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 100 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:5 htb rate 50kbit ceil
200kbit prio 2 - tworzy klasę 1:5 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:6 htb rate 50kbit ceil
200kbit prio 3 - tworzy klasę 1:6 (podczepioną do klasy rodzica 1:2) dla
której nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 80
0xffff flowid 1:4 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 80 do utworzonej klasy 1:4
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 20
0xffff flowid 1:5 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 20 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 21
0xffff flowid 1:5- tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 21 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src
172.16.200.254 flowid 1:3 - tworzy filtr kierujący pakiety skierowane od
komputera o adresie 172.16.200.254 do utworzonej klasy 1:3
" uruchomienie pliku /etc/firewall/podzial_lacza
" rozpoczęcie pobierania pliku instalacyjnego programu "Wireshark" ze
strony www.eagle-server.example.com na komputerze Windows XP
"Nowak", jak i również (w miarę jak najbardziej równolegle) na
komputerze Windows XP "Kowalski" z wykorzystaniem jednakże usługi
FTP w trybie aktywnym, oraz w drugiej sesji z wykorzystaniem trybu
pasywnego (korzystającego z losowego portu do transmisji),
" zaobserwować wartości transferu uzyskiwanego przez każdą sesję, po
chwili przerwać transmisję sesji z wykorzystaniem usługi FTP w trybie
pasywnym, i zaobserwować, która sesja w jakim stopniu przejęła
zwolnioną przepustowość.
Zadanie 8
Jesteś pracownikiem działu IT w firmie Northwind Traders.
Wdrożony algorytm podziału łącza (zakładający podział przepustowości łącza
internetowego dla dwóch usług, 100kbit/s dla usługi HTTP, 50kbit/s dla FTP,
i 50kbit/s dla pozostałych usług) działa prawidłowo.
Otrzymałeś prośbę, aby tak zmodyfikować skrypt podziału łącza, by ruch usługi
HTTP transferowany do komputera Windows XP "Nowak" otrzymał odrębną
gwarantowaną przepustowość 40kbit/s, kosztem gwarantowanej
przepustowości dla usługi HTTP skierowanej do pozostałych komputerów w
sieci.
Okazało się, że problemem jest zbudowanie odpowiednich filtrów przy takim
założeniu, i można tego dokonać z wykorzystaniem parametru preference.
Twoim zadaniem jest więc:
" zmienić w ruterze BST2 zawartość pliku /etc/firewall/podzial_lacza, tak
aby zawierał następujące polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb default 6 - aktywuje
algorytm HTB dla danych wychodzących z interfejsu eth0, i wskazuje, że nie
uwzględnione w filtrach usługi mają być przyporządkowane do klasy 1:6,
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit ceil
100mbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
100 mbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 200kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 200 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 99mbit ceil
99mbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której nastąpi
zagwarantowanie przepustowości 99 mbit/s, przy ograniczeniu max dostępnej
przepustowości do 99 mbit/s
" tc class add dev eth0 parent 1:2 classid 1:4 htb rate 60kbit ceil
200kbit prio 1 - tworzy klasę 1:4 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 60 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:5 htb rate 50kbit ceil
200kbit prio 2 - tworzy klasę 1:5 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:6 htb rate 50kbit ceil
200kbit prio 3 - tworzy klasę 1:6 (podczepioną do klasy rodzica 1:2) dla
której nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:7 htb rate 40kbit ceil
200kbit prio 1 - tworzy klasę 1:7 (podczepioną do klasy rodzica 1:2) dla
której nastąpi zagwarantowanie przepustowości 40 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip preference 2 parent 1:0
u32 match ip sport 80 0xffff flowid 1:4 - tworzy filtr kierujący
pakiety skierowane z dowolnego komputera z portu o numerze 80 do utworzonej
klasy 1:4
" tc filter add dev eth0 protocol ip preference 1 parent 1:0
u32 match ip sport 80 0xffff match ip dst 172.16.200.10
flowid 1:7 - tworzy filtr kierujący pakiety skierowane z dowolnego komputera
z portu o numerze 80 do utworzonej klasy 1:7
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 20
0xffff flowid 1:5 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 20 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 21
0xffff flowid 1:5- tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 21 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src
172.16.200.254 flowid 1:3 - tworzy filtr kierujący pakiety skierowane od
komputera o adresie 172.16.200.254 do utworzonej klasy 1:3
" uruchomienie pliku /etc/firewall/podzial_lacza
" rozpoczęcie pobierania pliku instalacyjnego programu "Wireshark" ze
strony www.eagle-server.example.com na komputerze Windows XP
"Nowak", jak i również (w miarę jak najbardziej równolegle) na
komputerze Windows XP "Kowalski" z wykorzystaniem jednakże usługi
FTP w trybie aktywnym, oraz w drugiej sesji z wykorzystaniem trybu
pasywnego (korzystającego z losowego portu do transmisji), oraz trzeciej
sesji z wykorzystaniem usługi HTTP,
" zaobserwować wartości transferu uzyskiwanego przez każdą sesję, i po 3
minutach transferu przerwać pobieranie plików na obydwu komputerach,
a następnie odczytanie i porównanie ilości ściągniętych danych przez
obydwa komputery, za pomocą polecenia # iptables -L -v -n
Zadanie 9
Jesteś pracownikiem działu IT w firmie Northwind Traders.
Wdrożony algorytm podziału łącza (zakładający podział przepustowości łącza
internetowego dla dwóch usług, 100kbit/s dla usługi HTTP, 50kbit/s dla FTP,
i 50kbit/s dla pozostałych usług) działa prawidłowo.
Uzyskałeś informację, że dobrym pomysłem jest wyznaczenie osobnej klasy dla
odpowiedzi ACK, co pozwoli na niespowalnianie transmisji spowodowanej
opóznieniami w dostarczaniu tychże odpowiedzi i wynikających z tego
retransmisji. Chcesz więc wdrożyć te rozwiązanie do swojego skryptu podziału
łącza.
Twoim zadaniem jest więc:
" zmienić w ruterze BST2 zawartość pliku /etc/firewall/podzial_lacza, tak
aby zawierał następujące polecenia:
" tc qdisc del root dev eth0 - zeruje ewentualne wprowadzone ustawienia
kolejkowania danych na interfejsie eth0
" tc qdisc add dev eth0 root handle 1:0 htb default 6 - aktywuje
algorytm HTB dla danych wychodzących z interfejsu eth0
" tc class add dev eth0 parent 1:0 classid 1:1 htb rate 100mbit ceil
100mbit - tworzy klasę 1:1 dla której nastąpi ograniczenie przepustowości do
100 mbit/s
" tc class add dev eth0 parent 1:1 classid 1:2 htb rate 200kbit ceil
200kbit - tworzy klasę 1:2 (podczepioną do klasy rodzica 1:1) dla której
nastąpi zagwarantowanie przepustowości 200 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:1 classid 1:3 htb rate 99mbit ceil
99mbit - tworzy klasę 1:3 (podczepioną do klasy rodzica 1:1) dla której nastąpi
zagwarantowanie przepustowości 99 mbit/s, przy ograniczeniu max dostępnej
przepustowości do 99 mbit/s
" tc class add dev eth0 parent 1:2 classid 1:4 htb rate 40kbit
ceil 200kbit prio1 - tworzy klasę 1:4 (podczepioną do klasy rodzica 1:2) dla
której nastąpi zagwarantowanie przepustowości 40 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:5 htb rate 50kbit ceil
200kbit prio 2 - tworzy klasę 1:5 (podczepioną do klasy rodzica 1:2) dla której
nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:6 htb rate 50kbit ceil
200kbit prio 3 - tworzy klasę 1:6 (podczepioną do klasy rodzica 1:2) dla
której nastąpi zagwarantowanie przepustowości 50 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:7 htb rate 40kbit ceil
200kbit prio 1 - tworzy klasę 1:7 (podczepioną do klasy rodzica 1:2) dla
której nastąpi zagwarantowanie przepustowości 40 kbit/s, przy ograniczeniu max
dostępnej przepustowości do 200 kbit/s
" tc class add dev eth0 parent 1:2 classid 1:8 htb rate 20kbit
ceil 200kbit prio 1 - tworzy klasę 1:8 (podczepioną do klasy rodzica 1:2)
dla której nastąpi zagwarantowanie przepustowości 20 kbit/s, przy ograniczeniu
max dostępnej przepustowości do 200 kbit/s
" tc filter add dev eth0 protocol ip preference 2 parent 1:0 u32
match ip sport 80 0xffff flowid 1:4 - tworzy filtr kierujący pakiety
skierowane z dowolnego komputera z portu o numerze 80 do utworzonej klasy
1:4
" tc filter add dev eth0 protocol ip preference 1 parent 1:0 u32
match ip sport 80 0xffff match ip dst 172.16.200.10 flowid
1:7- tworzy filtr kierujący pakiety skierowane z dowolnego komputera z portu o
numerze 80 do utworzonej klasy 1:7
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 20
0xffff flowid 1:5 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 20 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip sport 21
0xffff flowid 1:5 - tworzy filtr kierujący pakiety skierowane z dowolnego
komputera z portu o numerze 21 do utworzonej klasy 1:5
" tc filter add dev eth0 protocol ip parent 1:0 u32 match ip src
172.16.200.254 flowid 1:3 - tworzy filtr kierujący pakiety skierowane od
komputera o adresie 172.16.200.254 do utworzonej klasy 1:3
" tc filter add dev eth0 protocol ip preference 1 parent 1:0
u32 match ip protocol 6 0xff match u8 0x05 0x0f at 0 match
u16 0x0000 0xffc0 at 2 match u8 0x10 0xff at 33 flowid
1:8 - tworzy filtr kierujący pakiety z odpowiedziami ACK do utworzonej klasy
1:8
" uruchomienie pliku /etc/firewall/podzial_lacza
" rozpoczęcie pobierania pliku instalacyjnego programu "Wireshark" ze
strony www.eagle-server.example.com na komputerze Windows XP
"Nowak", jak i również (w miarę jak najbardziej równolegle) na
komputerze Windows XP "Kowalski" z wykorzystaniem jednakże usługi
FTP w trybie aktywnym, oraz w drugiej sesji z wykorzystaniem trybu
pasywnego (korzystającego z losowego portu do transmisji), oraz trzeciej
sesji z wykorzystaniem usługi HTTP,
" po 2 minutach transferu przerwać pobieranie plików na obydwu
komputerach, a następnie odczytać za pomocą polecenia # tc -s class
show dev eth0 | more, czy jakieś dane (i ile) zostały skierowane do
utworzonej klasy (1:8) przeznaczonej dla odpowiedzi ACK.
Wyszukiwarka
Podobne podstrony:
Daniel Migda Mariusz Lis Lab2Migda Lis modu 4lab3 polowieniaLab3MariuszWyzujakHipua lab3 sprlab3 PMUEMWdA Lab3 Lukasz Skrodzkipn10 Matlab lab3 Bubakwięcej podobnych podstron