Katedra Informatyki Stosowanej
Politechnika Łódzka
Al. Politechniki 11, 90-925 Łódź
Tel. (0-42) 631-26-89
Sieci komputerowe I
Wykład 2: FTP, TELNET, SMTP.
Opracowanie:
mgr inż. Łukasz Sturgulewski (lsturgu@kis.p.lodz.pl)
FTP
Dostęp do plików:
Na bieżąco;
Przez kopiowanie;
Protokoły przesyłania plików powstały jeszcze w czasach przodka TCP/IP, czyli ARPANET'u.
Na drodze ewolucji powstał protokół FTP.
Cechy FTP:
Przesyłanie plików;
Dostęp interakcyjny (około 50 poleceń);
Format danych (ascii, bin);
Potwierdzenie autentyczności;
Model procesu FTP.
Przydzielanie numerów portów TCP.
FTP jako program użytkowy:
Najważniejsze polecenia.
System pomocy.
Możliwości w dużej mierze zależą od autora danego programu FTP'a.
Sesja FTP'a.
TFTP (Trivial File Transfer Protocol)
Brak interakcji z użytkownikiem;
Brak uwierzytelniania;
Tylko przesyłanie plików;
Program ładujący w ROM (bootstrap program) umożliwia ściągnięcie programu uruchamiającego i obsługującego urządzenie.
TELNET
Interakcyjne wykorzystywanie odległych jednostek.
Możliwość pełnego wykorzystania uniwersalnych serwerów.
Systemy operacyjne muszą mieć możliwość obsługi zdalnej pracy.
Protokół TELNET.
Prosty protokół do obsługi odległego terminala.
Ustanawia połączenie TCP pomiędzy klientem a serwerem.
Usługa określana jako „przezroczysta” - bezpośrednie przekazywanie do serwera informacji o akcjach użytkownika oraz odbieranie wyników działania serwera i wyświetlanie ich bezpośrednio po stronie klienta.
Trzy najważniejsze usługi TELNET'u:
Standardowy interfejs dla odległych systemów - sieciowy terminal wirtualny.
Klient i serwer mogą negocjować opcje połączenia.
Symetryczność obu końców połączenia.
Serwer TELNET'u - wielowątkowy.
System operacyjny serwera musi obsługiwać pseudoterminale.
TELENT - działa na poziomie programu użytkowego:
Zaleta: Łatwa modyfikowalność.
Wady: Niska efektywność (długa droga, jaką przebywa informacja o akcji użytkownika).
Schemat działania systemu TELNET.
Różnorodność.
Dostosowanie do różnych systemów operacyjnych (koniec wiersza CR, LF lub CR-LF, przerwanie działania programu ESC lub ctrl+C).
Protokół TELNET określa uniwersalny sposób przesłania informacji przez sieć. Sieciowy terminal wirtualny (Network Virtual Terminal - NVT).
NVT:
Sposób używania NVT przez TELNET:
Komunikacja za pomocą bajtów (8-bitów);
7-bitów określa znak ze zbioru USASCII (95 znaków drukowalnych oraz 33 znaki kontrolne)
Najwyższy bit ustawiony oznacza polecenie.
Znaki kontrolne:
Koniec wiersza - CR-LF
CR - 13 - Przesuń się do marginesu w obecnym miejscu;
LF - 10 - Przesuń się w dół do następnego wiersza;
FF - 12 - Przesuń się na górę następnej strony;
BS - 8 - Przesuń się w lewo o jeden znak;
BEL - 7 - Wydaj sygnał (bez zmiany pozycji);
NUL - 0 - Nic nie rób.
Polecenia kontrolujące pracą odległego końca.
Funkcje kontrolujące (sterujące) oddzielone od znaków ASCII.
Dodatkowy oktet („interpretuj jako polecenie” IAC) rozpoczyna sekwencję sterującą.
Przykładowe kody sterujące:
IAC - 255 -
DON'T - 254 -
DO - 253 -
WON'T - 252 -
WILL - 251 -
IP - 244 - Sygnał przerwij proces;
DMARK - 242 - Znacznik danych (oznaczony tak w TCP - serwer gubi wszystkie dane do znacznika, potem rozpoczyna normalną pracę).
Opcje protokołu TELNET:
Przesyłanie danych 8-bitowych.
Określenie typu terminala - aby dostosować sposób wyświetlania znaków na ekranie.
Tryb pracy half-duplex lub full-duplex.
Negocjowanie opcji TELNETU:
Opcje może zasugerować klient, ale także i serwer (protokół symetryczny).
Klient prośba: WILL X, odp. serwer: DO X lub DON'T X.
Serwer prośba: DO X, odp. klient: WILL X lub WON'T X.
SMTP (Poczta elektroniczna)
Poczta elektroniczna
Elektroniczna skrzynka pocztowa - prywatna, związana z kontem na serwerze.
Adresat - nazwa skrzynki;
Komputer - serwer pocztowy;
Przesyłanie poczty:
Bramy pocztowe.
Aliasy - listy adresatów.
Przesyłanie poczty z rozwijaniem aliasów oraz przekazywaniem poczty:
Serwer poczty: wydajny, działający non-stop, uruchomiony program serwera.
Protokół POP (Post Office Protocol).
Umożliwia dostęp użytkownikom odległych maszyn na dostęp do ich skrzynek.
Wymaga autoryzacji.
Umożliwia podgląd zawartości skrzynek.
SMTP (Simple Mail Transfer Protocol)
Standard wymiany poczty między jednostkami.
Dotyczy wyłącznie sposobu przesyłania listów między jednostkami, a nie sposobów przechowywania poczty czy prób dostarczenia wiadomości do serwera.
Komunikacja między klientem a serwerem - czytelne komunikaty w formacie ASCII.
Przykład wymiany komunikatów pomiędzy klientem a serwerem poczty:
Dwie części listu:
Nagłówek - każdy wiersz nagłówka rozpoczyna się słowem kluczowym
From
To
CC (BCC)
Date
Subject
Reply-To
X-Charset;
Treść listu;
„220 READY FOR MAIL”
"HELO zly.kis.p.lodz.pl\n"
"250"
"MAIL FROM:<lsturgu@kis.p.lodz.pl>\n"
"250"
"RCPT TO:<pawel@poczta.onet.pl>\n"
"250"
"RCPT TO:<zuza@poczta.onet.pl>\n"
"550"
"DATA\n"
"354"
“Czesc! To jest probny e-mail!”
"\n.\n"
"250"
"QUIT\n"
"221"
MIME (Multipurpose Internet Mail Extensions)
MIME umożliwia zakodowanie dowolnych danych w kodach ASCII, a następnie przesłanie ich w zwykłym liście elektronicznym.
Kodowanie np.: Dane binarne są dzielone na 4-bitowe jednostki, z których każda zapisywana jest za pomocą liczby szesnastkowej. Ciąg tych liczb przesyłany jest jak zwykły list.
Dodatki w nagłówku:
MIME-Version: 1.0
Content-Type: image/gif
Text
Audio
Video
Application
Content-Transfer-Encoding: base64 (7-bitowe znaki ASCII)
FTP, TELNET, SMTP
- 2 -