Programowanie sieciowe w Javie Michał Kuciapski
Możliwości sieciowe Javy
3 z 13 Korzyści z zastosowania Javy w programowaniu sieciowym Język zaprojektowany z myślą o sieci – niezależność od platformy, międzynarodowy zestaw znaków, bezpieczeństwo Bogaty zestaw klas i metod sieciowych Znaczne uproszczenie obsługi działania sieci
4 z 13 Obszary zastosowań Pobieranie i wyświetlanie danych – alternatywa dla PHP, CGI, ASP, itd. Powtarzalne pobieranie i przesyłanie danych –przechowywanie plików –obliczenia równoległe –Formularze –Komunikacja synchroniczna i asynchroniczna Serwery sieciowe
5 z 13 Obszary zastosowań – c.d. Przeszukiwanie zasobów sieci Tworzenie interaktywnych stron: JSP Handel i bankowość elektroniczna – Java Cryptography Extension Multimedia – audio/video
Podstawowe zagadnienia związane z sieciami
7 z 13 Warstwy sieci Aplikacji Transportowa Sieciowa Fizyczna Aplikacji Transportowa Sieciowa
8 z 13 Adresowanie – adresy IP każdy host w sieci ma przypisany adres IP który jest unikalny przynajmniej w ramach sieci lokalnej adres IP składa się z 4 oktetów, z których każdy jest cyfrą z zakresu od 0 do 255 adresy z puli adresów prywatnych: –Klasa A – 10.x.x.x –Klasa B – x.x – x.x –Klasa C – x.x pula adresów dla testowania – x.x
9 z 13 Adresowanie – nazwy przyjazne przypisywane adresom IP przy wykorzystaniu systemu DNS FQDN – system jednoznacznego identyfikowania hostów w oparciu o hierarchiczną strukturę DNS – np. bsvc.univ.gda.pl
10 z 13 Porty umożliwiają wykonywanie wielu zadań „równocześnie” są elementem abstrakcyjnym – uchwytem do strumienia wejściowego i (lub) wyjściowego mogą być przydzielone konkretnej usłudze każdy port jest identyfikowalny liczbą z zakresu od 1 do Zarezerwowane dla znanych usług –
11 z 13 Porty – przykłady podstawowych NazwaNumer portuTyp echo7TCP/UDP daytime13TCP/UDP ftp-data20TCP FTP21TCP Telnet23TCP SMTP25TCP finger79TCP HTTP80TCP POP3120TCP NNTP119TCP RMI Registry1099TCP
Pakiety sieciowe
13 z 13 Pakiety sieciowe NazwaOpis java.netPodstawowy pakiet z klasami sieciowymi java.appletMetody sieciowe appletów – np. getImage, getAudioClip javax.netKlasy związane z tworzeniem bezpiecznych gniazd SSL com.sun.net.sslKlasa suna dla szyfrowania java.rmiKlasy zdalnego wywoływania metod javax.rmiKlasy umożliwiające zdalnego wywoływania metod zgodnie z CORBA i przy wykorzystaniu SSL javax.mailKlasy umożliwiające obsługę poczty elektronicznej