tunelowanie2

Wstęp teoretyczny:

Tunelowanie jest to rodzaj połączenia pomiędzy dwoma odległymi od siebie komputerami, symulujący połączenie bezpośrednie.

Dzięki korzystaniu z tunelowania uzyskujemy:

  1. Wygodę użytkowania

  2. Możliwość połącznia ukrytego pomiędzy 2 komputerami

  3. Bezpieczeństwo połącznia

  4. Szybką transmisje danych

Tunelowani polega zazwyczaj na przesyłani danych poprzez tunel z wykorzystaniem jednego protokołu, takiego jak np. POP3, MMTP lub HTTP.

Wirtualna sieć prywatna VPN umożliwia bezpieczny transfer protokołów.

Podczas transmisji danych kompresji można poddać całość transmisji lub ładunek użyteczny pakietów IP. Z kolei szyfrowanie umożliwia zabezpieczanie transmisji przed ingerencją osób niepożądanych. Szyfrowanie dzielimy na dwa typy symetryczne i asymetryczne.

Proces tunelowania składa się z etapów:

  1. Kapsułkowanie (enkapsulacja): zamykanie oryginalnych danych w kapsułkę, zawierającą niezbędne informacje do wysłania.

  2. Przesyłanie danych (tranzyt)

  3. Dekapsułkowanie (dekapsulacja): otwarcie kapsułki i uwolnienie oryginalnego pakietu

Kombinacje obu technik stosuje standard SSH. Standardy i protokoły tunelowani to np. (SSL/TLS, SSH1/2, Open VPN IPsec)

Generalnie można stwierdzić, iż tunelowanie umożliwia przesyłanie pewnych usług sieciowych za pośrednictwem innych, często odmiennych, usług sieci pracujących dodatkowo w różnych standardach. Tunelowani służy również do zabezpieczania danych przez utworzenie wokół nich osłony przydatnej podczas przesyłania ich przez domeny pozbawione mechanizmów zapewniania bezpieczeństwa. Protokołem tunelowania zaprojektowanym specjalnie w celu realizacji tej funkcji jest protoków PPTP (point to point tuneling protocol).

Sprzęt i oprogramowanie:

Stacja skanująca:

Komputer PC w sali 402 budynek B5(AGH)

Procesor Intel Core2 Quad Q8200

Architektura x86_64(64b)

RAM 4GB

SO OpenSuSE 11.1 x86_64

Użytkownik root

Hasło 1

Do skanowania wykorzystalismy dwa komputery PC o identycznych parametrach, w celu przyspieszenia testów.

Oprogramowanie:

OpenSSH(Open Secure Shell)-zestaw programów komputerowych zapewniających komunikację w sieci komputerowej dzięki protokołowi SSH. OpenSSH opiera się o kod ostatniej wolnej wersji tego programu i od tego czasu rozwija sie niezależnie. Może pracować w wielu systemach uniksopodobnych, m.in. AIX, BSD, HP-UX, Linux, Mac OS X, Solaris. Aktualna wersja: 6.6.
Funkcjonalność:
->obsługa protokołów SSH w wersji 1.3, 1.5, 2.0
->różne algorytmy szyfrowania komunikacji(3DES, Blowfish, AES, Arcfour)
->przekierowanie portów oraz ruchu X Window System
->metody uwierzytelniania: interaktywna(nazwa użytkownika i hasło), klucz publiczny, hasło jednorazowe, Kerberos.

Schemat ćwiczenia:

  1. Zalogowanie jako root na konsole graficzną lub tekstową.

  2. Na pierwszym PC(StudentA) uruchamiamy serwer.

  3. Dodatkowo uruchamiamy ksysguard(monitor wydajności) oraz terminal z poleceniem „top” na obu komputerach PC.

  4. Pobranie 4 razy pliku z kopmutera PC(studentA) na komputer PC(studentB).

  5. Na PC(studentB) zestawić połączenie z PC(studentA) według jednej z opcji:

Wyniki:

W celu przeprowadzenia testów użyliśmy pliku binarnego o rozmiarze 293MB.
Dodatkowe informacje:
-IP studentA(serwer): 10.0.2.131
-nazwa przesyłanego pliku: damian

Plik przesyłamy ze studentA na studentB aby się nie powtarzać.
Obciążenie procesora liczymy poprzez rozłożenie go na wszystkie 4 rdzenie.
Np. jeśli obciążenie jednego rdzenia wyniosło 100% to obciązenie procesora wynosi 25%.

1.)Przesłanie(bezpośrednie) pliku.

Użyta komenda na StudentB:
wget http://10.0.2.131/damian -O - >/dev/null

Zrzut ekranu ze studentB obrazujący przesyłanie:

Niestety związku z tym iż czas przesyłu był bardzo szybki ok 2,6s nie udało nam się uchwycić odpowiedniego zrzutu z drugiego PC(studentA), a zamieszczanie nic nie wnoszącego zrzutu mija się z celem.

Z powyższego zrzutu wynika iż obciążenie jednego rdzenia procesora na studentB wyniosło ok 4%, więc jest to bardzo niskie obciążenie, praktycznie nic nie znaczące jeśli rozważymy pozostałe 3 rdzenie procesora które w ogóle nie były obciążone.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
2,6s 112MB/s „brak danych” 1%(4%)

2.)Przesłanie pliku, metoda szyfrująca 3DES bez kompresji.

Zrzut ekranu studentB:

Zrzut ekranu studentA.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c 3des –o „Compression no”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
22,5s 12,5MB/s 25%(100%) 24,75%(99%)

3.)Przesłanie pliku, metoda szyfrująca 3DES z kompresją X=1.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c 3des –C -o „Compressionlevel 1”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Zrzut ekranu studentB

Zrzut ekranu studentA

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
40 7,62MB/s 25%(100%) 16%(64%)

4.)Przesłanie pliku, metoda szyfrująca 3DES z kompresją X=9.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c 3des –C -o „Compressionlevel 9”--ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
39s 7,61MB/s 24,75%(99%) 14,75%(59%)

Zrzut ekranu studentB

Zrzut ekranu studentA

Statystyczne podsumowanie przesyłania pliku z użyciem metody szyfrowania 3DES:

Metoda szyfrowania + kompresja Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
3DES kompresja: - 22,5s 12,5MB/s 25%(100%) 24,75%(99%)
3DES kompresja: 1 40 7,62MB/s 25%(100%) 16%(64%)
3DES kompresja: 9 39s 7,61MB/s 24,75%(99%) 14,75%(59%)

5.)Przesłanie pliku, metoda szyfrująca Arcfour bez kompresji.

Zrzut ekranu studentA

Zrzut ekranu studentB

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c arcfour -o „Compression no”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
3s 98,55MB/s 10,25%(41%) „brak danych”

6.)Przesłanie pliku, metoda szyfrująca arcfour z kompresją X=1.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c arcfour –C –o „Compressionlevel 1”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Zrzut ekranu studentA

Zrzut ekranu studentB

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
20s 14,8MB/s 25%(100%) 4,75%(19%)

7.)Przesłanie pliku, metoda szyfrująca arcfour z kompresją X=9.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c arcfour –C –o „Compressionlevel 9”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
20,5s 14,5MB/s 25%(100%) 4,25%(17%)

Zrzut ekranu studentA

Zrzut ekranu studentA

Statystyczne podsumowanie przesyłania pliku z użyciem metody szyfrowania arcfour:

Metoda szyfrowania + kompresja Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
arcfour kompresja: - 3s 98,55MB/s 10,25%(41%) „brak danych”
arcfour kompresja: 1 20s 14,8MB/s 25%(100%) 4,75%(19%)
arcfour kompresja: 9 20,5s 14,5MB/s 25%(100%) 4,25%(17%)

8.)Przesłanie pliku, metoda szyfrująca cast bez kompresji.

Zrzut ekranu studentA

Zrzut ekranu studentB

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c cast128-cbc -o „Compression no”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
7,05s 42,1MB/s 24,75%(99%) 23,25%(93%)

9.)Przesłanie pliku, metoda szyfrująca cast z kompresją X=1.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c cast128-cbc –C –o „Compressionlevel 1”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Zrzut ekrau studentA

Zrzut ekranu studentB

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
24,5s 11,69MB/s 25%(100%) 8,5%(34%)

10.)Przesłanie pliku, metoda szyfrująca cast z kompresją X=9.

Użyte komendy na studentB:
ssh 10.0.2.131 –L 8888:localhost:80 –c cast128 -cbc –C –o „Compressionlevel 9”-ustawienie połączenia z PC(studentA).
wget http://localhost:8888/damian -O - >/dev/null -komenda rozpoczęcia przesyłania pliku.

Podsumowanie:

Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
25s 12,35MB/s 25%(100%) 8,25%(33%)

Zrzut ekranu studentA

Zrzut ekranu studentB

Statystyczne podsumowanie przesyłania pliku z użyciem metody szyfrowania cast:

Metoda szyfrowania + kompresja Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
Cast kompresja: - 7,05s 42,1MB/s 24,75%(99%) 23,25%(93%)
Cast kompresja: 1 24,5s 11,69MB/s 25%(100%) 8,5%(34%)
Cast kompresja: 9 25s 12,35MB/s 25%(100%) 8,25%(33%)

Podsumowanie wszystkich testów:

Metoda szyfrowania + kompresja Średni czas przesyłu pliku Prędkość przesyłu Obciążenie procesora(studentA) Obciążenie procesora(studentB)
„brak” 2,6s 112MB/s

„brak danych”

szacujemy <5%

1%(4%)
3DES kompresja: - 22,5s 12,5MB/s 25%(100%) 24,75%(99%)
3DES kompresja: 1 40 7,62MB/s 25%(100%) 16%(64%)
3DES kompresja: 9 39s 7,61MB/s 24,75%(99%) 14,75%(59%)
arcfour kompresja: - 3s 98,55MB/s 10,25%(41%)

„brak danych”

szacujemy <5%

arcfour kompresja: 1 20s 14,8MB/s 25%(100%) 4,75%(19%)
arcfour kompresja: 9 20,5s 14,5MB/s 25%(100%) 4,25%(17%)
Cast kompresja: - 7,05s 42,1MB/s 24,75%(99%) 23,25%(93%)
Cast kompresja: 1 24,5s 11,69MB/s 25%(100%) 8,5%(34%)
Cast kompresja: 9 25s 12,35MB/s 25%(100%) 8,25%(33%)

Wnioski końcowe:

Wnioski do tego ćwiczenia nasuwają się same po przeczytaniu tabeli z opisem transmisji. Różnice pomiędzy użytymi protokołami kryptograficznymi, zarówno w czasie transmisji jak i w obciążeniu procesora są znaczące. Podczas przesyłu „czystego” uzyskujemy bardzo szybki transfer danych (w granicach 112 mb/s) oraz minimalne obciążenie procesora (kilka procent). Jest to najlepsza opcja do przesyłania plików gdy zależy nam na czasie, a ewentualny wyciek treści nie stanowi żadnego problemu.

Do końcowego porównania zostają nam teraz 3 protokoły kryptograficzne 3DES, arcfour i Cast. Spośród nich najlepsze wyniki uzyskał arcfour. Gwarantuje on bardzo dużą szybkość transmisji (około 100mb/s), i marginalne zużycie procesora gdy wysyłamy plik bez kompresji. Przy wysyłaniu pliku z kompresją szybkość transmisji spada do około 14 mb/s, a obciążenie procesora wzrasta do 20%. Jest to również najlepszy osiągnięty rezultat dla przesyłania plików z kompresją. Jak widać arcfour wypada zdecydowanie najlepiej w tym zestawieniu. Pozostałe dwa protokoły również spełniają swoje zadanie ale szybkość w jakim to robią (Cast dwukrotnie wolniej bez kompresji, 3DES dziewięciokrotnie) i obciążenie procesora (3DES 60-99%, Cast około 30%) sprawiają, że pozostają daleko w tyle za, najlepszym naszym zdaniem protokołem, którym jest arcfour.


Wyszukiwarka

Podobne podstrony:
Środowisko programowe do symulacji zjawiska tunelowania
88 Nw 10 Dioda tunelowa id 4776 Nieznany
Tunelowanie wnioski
Skaningowy mikroskop tunelowy
Opis techniczny Radio Tunelowe
BZiT.Projekt1, Budownictwo ziemne i tunelowe
Bezpieczna poczta elektroniczna, tunelowanie po protokole SSL stunnel
Efekt tunelowy
tunelowanie ZYESXO6IAANOBIZ5KEYSM3ZSVUWFRNKAASLZLVI
ZASTAW~1, 73. EFEKT TUNELOWY. (d - r˙˙niczka z ...)
Diody tunelowe
tunelowanie a rotacje kwantowe w ciele stałym
sciaga statecznosc, Budownictwo ziemne i tunelowe
Tematy z Fizyki v2, 73. EFEKT TUNELOWY. (d - różniczka z ...)
sciaga zageszczalnosc, Budownictwo ziemne i tunelowe
ZASTAWNY, 73. EFEKT TUNELOWY. (d - r˙˙niczka z ...)
Środowisko programowe do symulacji zjawiska tunelowania

więcej podobnych podstron