seker212 / TS_Lab_Sem3_Proj-TCP

Basic chatroom using custom TCP binary communication made for handling 2 clients by single server

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TCP

TS_lab_project

Polecenie:

    Wariant 8 – model komunikacji 21
  • Protokół warstwy transportowej: TCP.
  • Struktura nagłówka protokołu binarnego: pole operacji (4 bity), pole odpowiedzi (3 bity), pole długości danych (64 bity), pole danych o zmiennym rozmiarze, dodatkowe pola zdefiniowane przez programistę (następujące po polu danych).
  • Funkcje oprogramowania:
    • klienta:
      • nawiązanie połączenia z serwerem,
      • uzyskanie identyfikatora sesji,
      • wysłanie zaproszenia do drugiego klienta,
      • przyjęcie/odrzucenie zaproszenie,
      • przesłanie wiadomości tekstowej (binarna postać znaków ASCII),
      • zamknięcie sesji komunikacyjnej,
      • zakończenie połączenia;
    • serwera:
      • wygenerowanie identyfikatora sesji,
      • poinformowanie klienta, czy inny klient jest dostępny w sieci:
        • w przypadku braku osiągalności należy zwrócić błąd;
      • pośredniczenie w transmisji.
  • Wymagania dodatkowe:
    • identyfikator sesji powinien być przesyłany w każdym komunikacie.
Notes:

About

Basic chatroom using custom TCP binary communication made for handling 2 clients by single server


Languages

Language:Java 100.0%