Wersja protokołu

0

Witam,
jestem w trakcie pisania pracy inżynierskiej, buduję aplikację opartą na tcp/ip gdzie pakietami jest xml.

Chciałem zawrzeć coś na wzór wersji protokołu, by starszy klient mógł łączyć się z serwerem bez zmuszania go do aktualizacji.
I tu pojawia się problem, nie za bardzo potrafię sobie wyobrazić jak by to miało działać. Ktoś zna jakiś wzorzec który pomógł by mi rozwiązać mój problem lub jakieś wskazówki ?

1

Jak dla mnie, to musisz zadbać o to, by protokół się nie zmieniał w nowych wersjach, a co najwyżej był rozszerzalny. W ten sposób serwer może sobie zapamiętywać jaka wersją obsługują poszczególne klienty podłączone (np. tak jak w XMPP na początku sesji wysyłany jest pakiet zawierający m.in. wersję: <stream ...... version="1.0">) i co najwyżej nie wysyłać (nie przekazywać) do tego klienta pakietów, które zostały w jakiś sposób oznaczone, że pochodzą z wersji wyższej.

Drugie rozwiązanie: klient przedstawiając się serwerowi mówi mu jakie mechanizmy obsługuje, i serwer sprawdza czy dany mechaniz jak mi ma mu wysłać był na tej liście - jeśli nie, to idzie coś innego.

0

Hmm. W sumie w ten sposób o tym nie pomyślałem. Super, dziękuję! ;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1