1 / 28

JXTA

JXTA. Czym jest JXTA?. JXTA jest zbiorem otwartych protokołów, które umożliwiają komunikację dowolnym urządzeniom podłączonym do sieci (telefony, PDA, PC, itp.) na zasadzie „równy z równym” (peer-to-peer). Cele technologii JXTA.

vesna
Download Presentation

JXTA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JXTA

  2. Czym jest JXTA? JXTA jest zbiorem otwartych protokołów, które umożliwiają komunikację dowolnym urządzeniom podłączonym do sieci (telefony, PDA, PC, itp.) na zasadzie „równy z równym” (peer-to-peer).

  3. Cele technologii JXTA • Interoperacyjność – umożliwienie pracy w heterogenicznych systemach peer-to-peer bez względu na protokoły sieciowe i adresację • Niezależność od platformy – zróżnicowane języki programowania, systemy operacyjne i sieci • Wszechobecność – możliwość stosowania na dowolnym urządzeniu

  4. Co JXTA daje programistom? • Możliwość odnajdywania węzłów i zasobów sieci bez względu na zapory i NAT • Możliwość łatwego współdzielenia zasobów • Możliwość tworzenia własnych węzłów i grup • Bezpieczeństwo w sieci publicznej

  5. Architektura JXTA

  6. Schemat architektury

  7. Koncepcje • Węzeł (peer) • Grupa węzłów (peer group) • Usługa (network service) • Moduł (module) • Potok (Pipe) • Komunikat (message) • Anons (advertisement) • Bezpieczeństwo (security)

  8. Identyfikatory (ID) • Wskazują na konkretny obiekt: węzeł, grupa itp. • Mają postać URN (Uniform Resource Name) urn:jxta:uuid-59616261646162614A78746150325033F3BC76FF13C2414CBC0AB663666DA53903 • Rodzaje - uuid (większość obiektów) - jxta (id specjalnego przeznaczenia)

  9. Węzły (peers) • Jednostka implementująca protokoły JXTA • Telefon, PDA, PC itp. • Identyfikowany przez ID • Rodzaje węzłów: - Minimal-Edge Peer - Full-Edge-Peer - Super Peer: relay, rendezvous, proxy • Może należeć do jednej lub wielu grup

  10. Grupy węzłów (peer groups) • Zbiór węzłów (peer) o podobnych funkcjach • Cele: - wspólna polityka bezpieczeństwa - współdzielenie zasobów (pliki, CPU) - monitoring

  11. Usługi (network services) • Etapy: - ogłaszanie - odkrywanie - wywoływanie • Rodzaje - Peer Services - Peer Group Services

  12. Moduły (modules) • Implementują serwisy • Zawierają: - klasy (Module Class) - specyfikacje (Module Specification) - implementacje (Module Implementation)

  13. Komunikaty (messages) • Typy załączników: - tekstowy (TextMessageElement) - binarny (ByteArrayMessageElement) - strumień wejściowy (InputStreamMessageElement) • Przesyłane w postaci binarnej

  14. Kanały komunikacyjne - Pipes • Jednokierunkowe (InputPipe, OutputPipe) • Asynchroniczne • Zawodne (z wyjątkiem UnicastSecurePipe) • Wiązane dynamicznie • Modele komunikacji: - punkt–punkt (point-to-point pipes) - propagacja (propagate pipes) - zabezpieczona (secure unicast pipes)

  15. Kanały komunikacyjne - JxtaBiDiPipe, JxtaServerPipe • Bazują na InputPipe i OutputPipe • Dwukierunkowe • Asynchroniczne • Niezawodne • FIFO • Interfejs zdarzeniowy • Ograniczenie MTU do 64K

  16. Kanały komunikacyjne – JxtaSocket, JxtaServerSocket • Dwukierunkowe • Niezawodne • FIFO • Interfejs strumieniowy • Buforowanie wiadomości

  17. Anonse (1) • Format dokumentu XML <?xml version="1.0"?> <!DOCTYPE jxta:PipeAdvertisement> <jxta:PipeAdvertisement xmlns:jxta="http://jxta.org"> <Id> urn:jxta:uuid-59616261646162614E504720503250338E3E786229EA460DADC1A176B69B731504 </Id> <Type> JxtaUnicast </Type> <Name> TestPipe </Name> </jxta:PipeAdvertisement>

  18. Anonse (2) • Rodzaje: - Peer Advertisement - Peer Group Advertisement - Pipe Advertisement - Module Class Advertisement - Module Spec Advertisement - Module Impl Advertisement - Rendezvous Advertisement - Peer Info Advertisement

  19. Bezpieczeństwo • Zapewnienie - Poufności (confidentiality) - Autentyczności (authentication) - Autoryzacji (authorization) - Integralności (integrity) • Mechanizmy: - klucze publiczne - skróty - certyfikaty

  20. Schemat sieci

  21. Protokoły JXTA • Peer Discovery Protokol (PDP) • Peer Information Protocol (PIP) • Peer Resolver Protocol (PRP) • Pipe Binding Protocol (PBP) • Endpoint Routing Protocol (ERP) • Rendezvous Protocol (RVP)

  22. Peer Discovery Protokol • Anonsowanie własnych zasobów • Odnajdywanie anonsów innych węzłów • IP multicast • Rozproszone tablice haszujące

  23. Peer Information Protocol • Uzyskiwanie informacji kontrolnych od węzłów (czas działania, stan, itp.) • PIP ping

  24. Peer Resolver Protocol • Wysyłanie dowolnych zapytań do jednego lub więcej węzłów i uzyskiwanie odpowiedzi • Stanowi fundament PDP i PIP

  25. Pipe Binding Protocol • Tworzenie wirtualnego kanału komunikacyjnego • Bindowanie punktów końcowych • Możliwość wykorzystania różnych protokołów (np. TCP/IP)

  26. Endpoint Routing Protocol • Wyznaczanie trasy od nadawcy do odbiorcy • Trasa to sekwencja kolejnych węzłów przekaźnikowych

  27. Rendezvous Protocol • Umożliwienie komunikacji wewnątrz grupy • Podział węzłów w grupie na węzły RDV i węzły nasłuchujące • Używany przez PRP i PBP do propagowania komunikatów w grupie

  28. zadania c:\jxta\zadania.pdf

More Related