ako naprogramovat

David Obdrzalek David.Obdrzalek na mff.cuni.cz
Pondělí Duben 15 09:33:46 CEST 2024


Taky myslím. Pokud přečtu vše od B5 62 až po checksum a ten je v pořádku, tak 
považuji paket za korektní a nečekám na další paket. 
(To bych taky mohl následně dostat nějaký nesmysl, který by mi tím pádem zabil ten 
první, korektně přijatý, paket)

Taky může ale nastat situace, že přijde B5 62 a pár bajtů prvního paketu a pak se 
komunikace odmlčí (a zbytek prvního paketu nepřijde), pak B5 62 a zbylých 30 bytů 
druhého paketu v pořádku včetně checksumu. Takže kdybych se syncnul na tu první 
hlavičku a přečetl následujících 30 bytů, tak sežeru i začátek druhého paketu (ale 
ne celý), checksum nebude souhlasit, což je správně, ale následuje zbytek druhého 
paketu, který musím odignorovat až do jeho konce a do další signatury. (tady opět 
čeká čert, který do druhého paketu jako platná data dá zase signaturu B562, na 
kterou se zase syncnu a začnu číst paket, ale ten samozřejmě zase bude mít špatný 
checksum ... a tak dále až do skonání světa). Asi jediné řešení beze změny protokolu 
nebo způsobu přenosu se mi zdá neustále plovoucím způsobem zkoušet chytat signaturu 
a mít případně rozjetých víc čtení...

D.O.

On 15 Apr 2024 at 6:58, Martin Záruba wrote:

> Tomu nerozumím. Pokud mám na konci paketu checksum, pak jakmile přečtu 
> odpovídající (a může být i variabilní podle obsahu, ale zjistitelný) 
> počet znaků a souhlasí mi checksum, je paket platný. Pokud jsou za ním 
> nesmysly, nezajímají mě až do počátečního "B5".
> 
> Martin Záruba
> 
> Dne 15.4.2024 v 0:40 Zuffa Jan napsal(a):
> > Ja k tomu dodam len, ze je potrebne mysliet aj na "false sync"
> > to znamena ze ked paket zacina B5 tak ked sa docita zvysok dat
> > je mozne povazovat ho za platny az ked dalsi zacina tiez bajtom B5 inak
> > moze dojst k situacii kedy je zaciatok zly a potom uz nesedi nic. Netreba sa spoliehat
> > na to ze komunikacia  a zariadenie su  idealne. V mojom profesionalnom zivote som
> sa stretol uz velakrat s tym, ze na stole vsetko fungovalo ale v realnych
> podmienkach nie.
> >
> > J.
> >




Další informace o konferenci Hw-list