Herenvarno pisze:No nie bardzo, dzis mialem inny przypadek, wysylam komende do muda, nie dostaje odpowiedzi, partner obok twierdzi ze komenda zostala wykonana (np zbieraj ziola) wysylam kolejna inna komende, nie dostaje znow odpowiedzi, moja postac wykonuje.
Masz łącze z tepsy? Dzisiaj były spore problemy na styku aster-atman-tepsa i tepsiarze strasznie latali. Właśnie momentami routing był prawidłowy w jedną stronę, a w drugą ścieżka była wadliwa - czyli Twój klient wysyłał do servera pakiety, które postać wykonywała (zależy od implementacji TCP w lpmudzie, nie wiem, jak to dokładnie wygląda w tym przypadku - może do wykonania komendy przez postać nie jest potrzebna weryfikacja danych (
wyjaśnienie)). To znaczy możliwe, że postać wykonuje polecenie gracza, nie sprawdzając, czy do gracza dociera odpowiedź 'Zaczynasz szukać ziół'.
(jedyna mozliwosc rozlaczyc sie z mudem i polaczyc jeszcze raz). Byc moze problem jest u mnie gdzies, staram sie dotrzec do sedna.
Jeśli jesteś klientem TPSA, to jw.
Co do pakietow, serwer i klient ciagle wysylaja sobie pakiety w rodzaju "jestes tam?" i "Tak, jestem" i sa one znacznie czesciej wysylane niz raz na 10 sek.
Nie byłbym pewien, czy w przypadku lpmuda jest taki ping-pong. (...) Aż sprawdziłem - czekałem, aż postać odzyska kondycję i przez kilka minut idlowałem na lokacji bez eventów - żadnych potwierdzeń, że sesja jest zestawiona i sprawdzania, czy w ogóle jest połączenie między mudem a klientem. Po prostu sesja jest trzymana w fazie keep-state, dopóki nie nastąpi rozłączenie z jednej, lub z drugiej strony.
22:04 - 22:15 - brak ruchu. O 22:15 akurat dostałem list i pakiety biegają po tej samej sesji, z tym samym portem źródłowym (czyt. nie zostało ustanowione nowe połączenie, tylko pojawił się ruch na już zestawionym).
Wniosek - MUD (prawidłowo, jak napisał Aphazel) nie sprawdza, czy klient jest połączony i postać 'wisi'. Natomiast 'zerwanie' polega na tym, że MUD otrzymuje informację, że 'tracisz linka' i Twoja postać jest czasowo przenoszona do specjalnej lokacji, dostaje gwiazdkę w kto i tak dalej. - Ponawiasz połączenie i Twoja postać wraca na lokację, na której była z komunikatem 'odzyskuje kontakt z rzeczywistością'.
Kolejny przypadek to taki, kiedy sesja wisi otwarta z punktu widzenia servera (bo Tobie prąd wyszedł na spacer, albo po prostu idlowałeś) i kiedy łączysz się ponownie (nawiązując kolejne połączenie), MUD pyta się Ciebie przy logowaniu, czy chcesz się połączyć mimo tego, że
postać jest już w grze, stare połączenie jest zamykane przez server i postać również 'odzyskuje kontakt z rzeczywistością', chociaż nie była 'zerwana', czyli przeniesiona do zrywkowej lokacji.

Herenvarno: Ściągnij sobie program
WinMTR, odpal na kilkadziesiąt minut, poczekaj, aż będziesz miał problemy z mudem i zerknij, gdzie pojawiają się w tym momencie straty pakietów. Co prawda testuje on połączenia (do każdego z widzialnych routerów po drodze) z wykorzystaniem ICMP, a nie TCP, ale powinieneś gdzieś zobaczyć problem. Od razu napiszę - jeśli jeden router ma sporo strat, a kilka kolejnych znacznie mniej, to jest to sytuacja całkowicie normalna - po prostu dany router nie odpowiada na każdy wysłany do niego pakiet ICMP. Na takie cośnie zwracaj uwagi.