Kamil Rembalski Kostynowicz Jakub

Slides:



Advertisements
Podobne prezentacje
Sieci Peer to Peer i sieci Klient/Serwer
Advertisements

Sieci komputerowe.
Programowanie wizualne PW – LAB5 Wojciech Pieprzyca.
extensible messaging and presence protocol
Sieci komputerowe Usługi sieciowe Piotr Górczyński 27/09/2002.
Sieci komputerowe.
Autor Roman Jędras Prowadzący: dr inż. Antoni Izworski Przedmiot:
Architektura systemu Gra strategiczna „Strusia Jama”
Obsługa serwera zdalnego przez klienta FTP
Artur Mazurek Piotr Podziemski
Proxy WWW cache Prowadzący: mgr Marek Kopel
Proxy (WWW cache) Sieci Komputerowe
P I OTR SKOŁYSZ. POCHODZENIE I CELE CZYM JEST.NET ? CO IMPLEMENTUJE MONO ? ŚRODOWISKO PRACY [MONODEVELOP] SYTEMY OPERACYJNE CO PROGRAMOWAĆ ? JĘZYKI PRZYKŁADOWY.
Artur Szmigiel Paweł Zarębski Kl. III i
Współczesne systemy informacyjne
Systemy zarządzania treścią CMS
Internet Sieci komputerowe.
Usługi internetowe.
Opracował: mgr Mariusz Bruździński
Przegląd zagadnień Struktura sieci systemu Windows 2003
Inżynieria Oprogramowania
Praca dyplomowa magisterska
Praca dyplomowa magisterska
USŁUGA FTP 1. Definicja FTP. FTP (File Transfer Protocol, ang. protokół transmisji plików) jest protokołem typu klient-serwer, który umożliwia przesyłanie.
SAMBA Linux.
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
Licencjonowanie wirtualizacji
Licencjonowanie Lync 2013 Poziom 200.
Licencjonowanie SharePoint 2013
Web Serwisy w praktyce Technologie internetowe ( )
Budowa sieci mgr inż. Łukasz Dylewski
Quiz. Grupy dyskusyjne to usługa komunikacyjna, która służy prowadzeniu dyskusji na forum. Grupy dyskusyjne to usługa, która pozwala nam odszukać cenne.
Licencjonowanie aplikacji serwerowych
BUDOWA I DZIAŁANIE SIECI KOMPUTEROWYCH
Lokalne serwery www Serwer WWW - ang. Web server jest to oprogramowanie zainstalowane na serwerze podłączonym do sieci Internet. Używające technologii.
Prezentacja Adrian Pyza 4i.
Prezentacja i szkolenie
Sieciowe Systemy Operacyjne
XML – eXtensible Markup Language
Internetowe surfowanie
FTP (file transfer protocol) jest protokołem WARSTWY APLIKACJI, który umożliwia transmisje i odbiór plików z odległego systemu oraz różnorakie operacje.
Sieć komputerowa – grupa komputerów lub innych urządzeń połączonych ze sobą w celu wymiany danych lub współdzielenia różnych zasobów, na przykład: korzystania.
Sieci komputerowe.
Rozdział V: Globalne sieci komputerowe
TECHNOLOGIA P2P.
Sieci komputerowe.
Systemy operacyjne i sieci komputerowe
Toruń 28/ Metadane SAML opisują, w jaki sposób ma być realizowana komunikacja pomiędzy IdP i SP Metadane są typowo prezentowane w postaci XML.
Jednym z podstawowych celów tworzenia sieci komputerowych jest współdzielenie zasobów, takich jak pliki lub drukarki. Każdy z takich zasobów musi być udostępniony,
Korzystanie z podstawowych usług internetu
DWhisper Komunikator internetowy bez centralnego serwera.
Andrzej Majkowski 1 informatyka +. 2 Bezpieczeństwo protokołu HTTP Paweł Perekietka.
FTP i www Informatyka Zakres podstawowy 1 Zebrał i opracował : Maciej Belcarz 11.
Przegląd usług online Dodawanie usług online do umów grupowych Nabywanie licencji Office 365.
XML w serwisach webowych. Zapotrzebowanie na serwisy XML.
Połączenia aplikacji Klient/Serwer
INTERNET jako „ocean informacji”
HISTORIA Ludzie od dawnych czasów próbowali się ze sobą porozumiewać. Nauczyli oni się komunikować ze sobą za pomocą przeróżnych środków: od wyrazu twarzy,
WYŻSZA SZKOŁA INFORMATYKI I ZARZĄDZANIA z siedzibą w Rzeszowie WYDZIAŁ INFORMATYKI STOSOWANEJ VPN TYPU KLIENT-SERWER, KONFIGURACJA NA MICROSOFT ISA 2006.
Marcin Wojnowski.  To największa ogólnoświatowa sieć komputerowa. Łączy miliony ludzi na całym globie ziemskim. Dzięki internetowi stała się możliwa.
Bartosz Pawlak Wiktor Paliwoda Bezpieczeństwo Systemów Operacyjnych IMAP vs POP.
 Wi-Fi  światłowody  skrętka Protokół komunikacyjny to zbiór ścisłych reguł i kroków postępowania, które są automatycznie wykonywane przez urządzenia.
DHCP „I’m a DHCP server at a local restaurant. This chick came up and asked me for my address, and I told her she was out of my scope.” DHCP Server (date.
materiały dla uczestników
Przesyłanie informacji
Grzegorz Chodak Wykład
Wydział Matematyki, Informatyki i Architektury Krajobrazu
Anonimowo ść w sieci. Sposoby zachowania anonimowośc i VPNProxyTOR.
Telefonia internetowa programy P2P
Sieci komputerowe Usługi sieciowe 27/09/2002.
Zapis prezentacji:

Kamil Rembalski Kostynowicz Jakub Peer-to-Peer Kamil Rembalski Kostynowicz Jakub

Co oznacza słowo „peer” Merriam-Webster: one that is of equal standing with another Cambridge: a person who is the same age or has the same social position or the same abilities as other people in a group Można tłumaczyć na polski jako „równy”

Definicja IEEE (Institute of Electrical and Electronics Engineers) A distributed network architecture may be called a Peer-to-Peer network, if the participants share a part of their own hardware resources (processing power, storage capacity, network link capacity, printers). These shared resources are necessary to provide the Service and content offered by the network (e.g. file sharing or shared workspaces for collaboration). They are accessible by other peers directly, without passing intermediary entities. The participants of such a network are thus resource (Service and content) providers as well as resource (Service and content) requestors (Servent). R. Schollmeier, “A Definition of Peer-to-Peer Networking” IEEE, 2001

P2P vs. Klient / Serwer

Porównanie: Architektura Peer-to-peer Każdy „równy” (peer) posiada podobną ilość zasobów „Równi” komunikują się bezpośrednio ze sobą udostępniając sobie zasoby Każdy może za równo inicjować żądania jak i je obsługiwać Klient / Serwer. Serwer: Obsługuje żądania ale sam nie inicjuje żądań. Serwery są centralnie administrowane i posiadają znacznie więcej zasobów niż klienci. Klient: Jednostka, która inicjuje żądania, ale sama nie jest w stanie obsłużyć żadnych żądań.

Rodzaje P2P Pure peer-to-peer Hybrid peer-to-peer (hybrydowe p2p) Architekturę sieci można zakwalifikować jako „pure p2p” tylko wówczas gdy każdy jeden, arbitralnie wybrany węzeł można z niej usunąć nie zmniejszając funkcjonalności całej sieci. Hybrid peer-to-peer (hybrydowe p2p) Pewne usługi sieciowe (jak np. wyszukiwanie zasobów, czy innych „peers”) wymagają działania centralnego/wyróżnionego węzła (serwera)

Historia P2P Koncepcja nie jest nowa (używana przez uczelnie i uniwersytety od 30 lat) Arpanet (koniec lat 60-tych) łączył UCLA, Stanford Research Institute, UC Santa Barbara and the University of Utah nie w architekturze Klient/ Serwer ale wlaśnie na zasadzie równouprawnionych stron. Popularne aplikacje „wczesnego” internetu: ftp i telnet działały na zasadzie klient/serwer, jednak każda stacja mogła odgrywać obie role. Można to uznać za spełnienie paradygmatu p2p. 1979 USENET bazujący na Unix-to-Unix-copy protocol pozwalał na wymiane plików. Na początku łączył tylko Duke University oraz University of North Carolina. W tej chwili ma setki tysięcy użytkowników. Usenet to obecnie zdecentralizowana sieć wymiany wiadomości pomiedzy serwerami grup dyskusyjnych. Brak centralnego serwera sprawia że Usenet można traktować jako pure p2p.

Historia P2P Początek lat 90 Rozwój WWW. Odejście od P2P na rzecz Klient/Serwer 1999 Napster (stworzony przez Shawn’a Fanning’a z Northeastern University ) Hybrydowy p2p do wymiany plików mp3. W krótkim czasie zdobywa miliony użytkowników (głównie w środowiskach akademickich)

Historia P2P Recording Industry Association of America rozpoczyna kampanię przeciwko Napsterowi. Metallica pozywa Napstera za łamanie praw autorskich. Lipiec 2001 Napster zaprzestaje działalności po próbie przekształcenia go w płatny serwis. Powstają naśladowcy Napstera – Kazaa (160 milionow uzytkowinikow), Gnutella (pure p2p), Audiogalaxy, iMesh Edonkey, Emule, Overnet (użycie funkcji haszującej w celu uniemożliwienia oszukiwania nazw plików) Direct Connect++

Problemy z aplikacjami p2p Legalność udostępnianych plików Problemy bezpieczeństwa -spyware TopText, Gator, Cydoor, BonziBuddy -podatność na wirusy -nieskuteczność firewall’i (zmienianie portów, port 80)

Przykłady aplikacji P2P

Przykłady aplikacji P2P

Przykłady aplikacji P2P

Przyszłość P2P Duże firmy i konsorcja doceniają znaczenie peer-to-peer Rozwój platform takich jak Microsoft .NET oraz Sun JXTA wspomagających P2P Anonimowe p2p – Freenet (A Distributed Anonymous Information Storage and Retrieval System http://freenet.sourceforge.net/)

JXTA JXTA (wym. dżiuksta) projekt open source uruchomionym przez Billa Joya z Sun Java jako język podstawowy standardu. Obecnie trwają prace nad definicją protokołów, za pomocą których budowane będą aplikacje P2P. Do tej pory zdefiniowano 6 protokołów JXTA. Liczba implementowanych protokołów przez członka sieci (peer) zależy od jego możliwości technicznych - wystarczy, by implementował on jeden z protokołów.

JXTA

JXTA „peers” mogą oznaczać zarówno serwery, komputery osobiste, jak i urządzenia przenośne (PDA, telefony komórkowe). "Równi" mogą łączyć się w grupy (peer groups) "Równi" oraz ich grupy udostępniają usługi - jeżeli udostępniający nie jest aktywny, usługa jest niedostępna. Usługę udostępnianą przez grupę, można uzyskać od dowolnego aktywnego jej członka. Publikowanie i odnajdywania zasobów poprzez dokumenty w XML zwane ogłoszeniami (advertisements) Identyfikatory zdefiniowane w formacie URI (Uniform Resource Identifier)

Q2R

Ogólne założenia Program ma służyć do pobierania plików (coś w stylu eDonkey) Hybrydowe p2p

Minimalne wymagania Nawiązywanie połączeń. Współdzielenie pliku. Wyszukiwanie pliku. Pobieranie pliku.

Ogólna struktura Serwer Klient 2 Klient 1 Klient 3 Połaczenia kontrolne Klient 2 Klient 1 Klient 3

Ogólna struktura Serwer Klient 2 Klient 1 Klient 3 Połączenia przesyłające

Nawiązywanie połączenia 1) Nazywam się „Bruce Lee” Serwer Klient

Nawiązywanie połączenia Serwer Bruce Lee 2) Super...

Współdzielenie pliku 1) Mam nowy plik Serwer Bruce Lee

Współdzielenie pliku Serwer Bruce Lee 2) Fajnie

Współdzielenie pliku Jak stwierdzić, czy „nowy” plik nie jest już współdzielony ? Jak przechowywać dane o plikach i użytkownikach ?

Współdzielenie pliku - hash Co nie powinno być zawarte w hashu ?

Współdzielenie pliku - hash Co nie powinno być zawarte w hashu ? Nazwa pliku Co można zawrzeć w hashu ?

Współdzielenie pliku - hash Co nie powinno być zawarte w hashu ? Nazwa pliku Co można zawrzeć w hashu ? Rozmiar pliku Zawartość pliku Właściwości pliku (np. codec, format);

Współdzielenie pliku - dane Co powinniśmy wiedzieć o pliku? Hash Nazwy Klienci posiadający ten plik inne dane (rozmiar, etc.) Co powinniśmy wiedzieć o kliencie? Pliki, które posiada Nick

Współdzielenie pliku - dane Hash Nazwy Rozmiar Klient Nick Połączenie * *

Współdzielenie pliku - dane Hash Hash Hash Hash Hash Hash Pliki Klienci

Wyszukanie pliku 1) Znajdź pliki „oops” Serwer Bruce Lee

Wyszukanie pliku Serwer Bruce Lee 2) „Oops I did it again.mp3”

Pobieranie pliku Serwer Chcę plik „Ooops I did it again.mp3” Bruce Lee

Pobieranie pliku Serwer Bruce Lee Elvis Presley Wyślij Bruce’owi „ Ooops I did it again.mp3” Pobierz od Elvisa Bruce Lee Elvis Presley

Pobieranie pliku Serwer Bruce Lee Elvis Presley Klient 2 Wysyłanie „Oops I did..” Elvis Presley Klient 2

Pobieranie pliku Serwer Bruce Lee Elvis Presley Klient 2 Wysyłanie „Oops” Elvis Presley Klient 2

Omówienie programu Q2R Pakiet Utils FileDescriptor - przechowuje dane o pliku. Generowany bezpośrednio z pliku po stronie klienta. Hash - identyfikator pliku. Generowany po stronie klienta za pomocą pliku.

Omówienie programu Q2R Klasy serwera Client - klasa reprezentująca klienta. Przechowuje dane klienta oraz utrzymuje połaczenie kontrolne. ServerData - klasa przechowująca dane i umożliwiająca efektywne wyszukiwanie. Server - GUI serwera oraz fabryka klientów.

Omówienie programu Q2R Klasy klienta Q2R - GUI NetworkInterface - utrzymuje połączenie kontrolne z serwerem Download i Upload- wątki pobierające / wysyłające plik od / do innego klienta.

Co można dodać... Połączenia kontrolne między klientami Kolejkowanie żądań Dzielenie plików na części