• Nie Znaleziono Wyników

Programowanie aplikacji klient-serwer – studia zaoczne 2006/2007 1Laboratorium 1.

N/A
N/A
Protected

Academic year: 2021

Share "Programowanie aplikacji klient-serwer – studia zaoczne 2006/2007 1Laboratorium 1."

Copied!
2
0
0

Pełen tekst

(1)

Programowanie aplikacji klient-serwer – studia zaoczne 2006/2007

1 Laboratorium 1.

Pobierz plik lab1.tar.gz i rozpakuj go.

1. Identyfikacja

• Zidentyfikuj adres IP i nazwę własnego komputera. Jakie polecenia można do tego wykorzystać?

• Sprawdź czy masz połączenie z kolegą. Jakie polecenia można do tego wykorzystać?

• Zapoznaj się z opisem polecenia netstat.

a) Uzyskaj listę wszystkich nasłuchujących gniazd b) Uzyskaj listę wszystkich otwartych gniazd 2. Uruchamianie usług

• Sprawdź, na jakim porcie udostępniana jest usługa czasu daytime (plik /etc/services). Jaki protokół transportowy jest wykorzystywany?

• Czy usługa daytime jest aktualnie dostępna? Jak to sprawdzić? Czy jest to usługa uruchamiana niezależnie, czy pod nadzorem superdemona xinted (inetd)) ?

• Jak włączać - wyłączać usługi udostępniane za pomocą xinted (inetd) ?

• Połącz się z usługą daytime za pomocą polecania telnet i wskazania portu. Jaki komunikat dostaniesz przy zablokowanej usłudze i przy usłudze odblokowanej?

3. Skompiluj program klientTCP.c. Jest to program implementujący klienta usługi daytime. Sprawdź działanie programu łącząc się z uprzednio uruchomioną usługą daytime..

4. Skompiluj program serwerTCP.c. Jest to serwer usługi daytime. Sprawdź czy działa.

5. Uzupełnij programy klienta i serwera o obsługę błędów. Jakie błędy uwzględnisz?

6. Opracuj klienta standardowej usługi time w wersji TCP (opis usługi time jest zawarty w RFC 868 - www.rfc- editor.org). Niech korzysta on z serwera time uruchomionego za pomocą xinetd. Uwaga: serwer usługi time przesyła do klienta liczbę 32 bitową zawierającą informację o czasie.

7. Opracuj własny serwer standardowej usługi time w wersji TCP

8. Uruchom serwer time w trybie demona. Jakie modyfikacje musisz wykonać?

Zadanie domowe

9. Zmodyfikuj serwer z poprzedniego zadania tak, aby można było uruchamiać go w dwóch trybach: interakcyjnym (przyłączony do terminala) lub jako demon (funkcja daemon). Jak sprawdzić, że serwer pracuje w trybie demona?

- Wprowadź możliwość zamykania serwera (za pomocą sygnału).

- W trybie interakcyjnym informacja o pracy serwera jest wyświetlana na ekranie. W trybie demona informacja jest przesyłana do pliku logu. Załóż, że serwer współpracuje z programem syslog. Potrzebne funkcje:

#include <syslog.h>

void openlog(const char *ident, int option, int facility);

void syslog(int priority, const char *format, ...);

void closelog(void);

Informacje, które powinny znaleźć się w logu:

- uruchomienie serwera

- nawiązane połączenia – adres IP klienta

- zamknięcie serwera

(2)

Programowanie aplikacji klient-serwer – studia zaoczne 2006/2007

2 10. Napisz prostą aplikację do pobierania z serwera informacji o systemie. Klient łączy się z serwerem na określonym

porcie. Serwer przesyła do klienta wynik polecenia uptime. Wskazówka: utwórz w programie serwera potok,

który umożliwi pobranie wyniku polecenia uptime.

Cytaty

Powiązane dokumenty

• Komunikacja między klientem i serwerem realizowana jest w warstwie aplikacji. Typowy schemat pracy klienta:.. 1. Wysyła do serwera żądanie wykonania usługi i czeka na odpowiedź

Richard Stevens: Unix, programowanie usług sieciowych, tom 1: API gniazda i XTI, WNT, 2000 Kody

Aplikacja służąca do bezpiecznego przesyłania plików (użytkownik jest uwierzytelniany, przesyłane pliki są szyfrowane i dołączany jest do nich podpis cyfrowy).. Pliki mogą

Jeśli student nie uzyska zaliczenia przedmiotu i powtarza go, traci wszystkie punkty zdobyte do tej pory (ćwiczenia i wykład). Studenci, którzy nie zaliczyli przedmiotu

Poprawa przedmiotu może się odbyć w sesji poprawkowej i obejmuje sprawdzian zaliczający wykład oraz zadania domowe wskazane przez prowadzącego ćwiczenia.. Punkty naliczane są

Zmodyfikuj program klient.c tak, aby można było posługiwać się adresem IP lub nazwą serwera, numerem portu lub nazwą usługi.. Zmodyfikuj program serwer.c tak, aby można

• Napisad program wyznaczający średni, dobowy kurs waluty EURO na podstawie kursów notowanych na początku każdej godziny.. • Pod koniec doby analityk wprowadza

The publication of this document by the W3C as a W3C Working Draft does not imply that all of the participants in the W3C HTML working group endorse the contents of