- założenie o maksymalnie 256 liniach na grupę jest nietrafione - co znaczą poszczególne pola (id, os_ip, os_port, itd.) w strukturach? Po co jest tam ip i port? - Numery portów mają 16 bitów, nie 32. + potwierdzenia zakończenia i zawieszenia rozmowy ~ protokół nie powinien ściśle wymagać, by wysyłać prośbę o wlt do co najwyżej 3 abonentów, i to po kolei. Lepszym wyjściem jest pozwolenie na wysyłanie tej wiadomości do k grupowiczów (k może zależeć od rozmiaru grupy, np. być pierwiastkiem jej rozmiaru), być może wybierając kandydatów heurystycznie. W sytuacji, gdy implementacja może zrobić coś mądrzej i gdy odgórna decyzja jest trudna i jaka by nie była, pewnie będzie nieoptymalna, a nie jest kluczowa do działania protokołu, dobrym wyjściem jest pozostawienie jej implementatorom (najlepiej wyrażając to explicite). W ogólności, należy tak czynić z decyzjami, które nie wpływają na kompatybilność implementacji między sobą, a do których podjęcia najlepiej wykonać jest wcześniej trochę eksperymentów. + prosta i skuteczna synchronizacja bez aktywnego oczekiwania + poprawna obsługa obustronnej próby zawieszenia + implementowalność + jasność - jak właściwie realizowane jest nawiązanie połączenia między dwoma abonentami przed wysłaniem jakichkolwiek komunikatów? - jak wygląda przesyłanie głosu? Ocena: 4.5