Re: [Lug-bg] Забих. Трябва да пресметна crc което идва през udp socket
- Subject: Re: [Lug-bg] Забих. Трябва да пресметна crc което идва през udp socket
- From: Peter Pentchev <roam@xxxxxxxxxxx>
- Date: Mon, 5 Dec 2016 16:30:06 +0200
On Mon, Dec 05, 2016 at 03:40:38PM +0200, Marian Marinov wrote:
> On 12/05/2016 02:06 PM, Григор wrote:
> > Изобщо не мога да схвана как точно го пресмятат. Пробвах някакви функции за пресмятане на crc16 но винаги дава грешен резултат.
> >
> > получената информация е:
> > efbeadde1b0131ffd8054843363954611143454
> > 00000
> > 6c
> > 00011800
> > 0119
> > 0000000000000000000000000000000000000000
> > b343
> >
> > Където b343 <crc> #на горната
> >
> > Ако някой се е занимавал с това да удари едно рамо. Ще черпя.
> UDP използва pseudo IP header за пресмятане на checksums:
>
> http://www.tcpipguide.com/free/t_UDPMessageFormat-2.htm
>
> Информация за самите сметки(padding-а е важен):
>
> http://images.slideplayer.com/15/4794330/slides/slide_54.jpg
Струва ми се, че Григор има предвид нещо по-различно: май говори за
това, че в *данните*, предадени в UDP пакета, има някакво CRC на
по-високо ниво, изчислявано от програмите, които си прехвърлят тези
данни. Лошото е, че в такъв случай не е много ясно какво изобщо може
да се разбере - като начало, не е ясно дали CRC-то е върху *всички*
данни в пакета или, още по-зле, дали не е и върху някакви други данни -
т.е. дали в пресмятането не участват някакви данни, които не са в този
пакет (пореден номер на пакета, ID на едната или другата страна, фаза
на луната, знае ли човек). Да не говорим за това, че не знаеш какъв
е полиномът, не знаеш дали трябва да размениш тук-там някой байт (дали
преди пресмятането някой не обръща нещата от единия в другия byte order),
и всякакви такива щуротии :(
Поздрави,
Петър
--
Peter Pentchev roam@xxxxxxxxxxx roam@xxxxxxxxxxx pp@xxxxxxxxxxxx
PGP key: http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13
Attachment:
signature.asc
Description: PGP signature
_______________________________________________
Lug-bg mailing list
Lug-bg@xxxxxxxxxxxxxxxxxx
http://linux-bulgaria.org/mailman/listinfo/lug-bg
|