[Asterisk-Dev] RTP not sending UDP checksums?
Roy Sigurd Karlsbakk
roy at karlsbakk.net
Mon Feb 28 01:30:50 MST 2005
>> I'm running asterisk on Linux kernel 2.6.7-1-686-smp. When I do a
>> tcpdump
>> of traffic to/from asterisk/device tcpdump reports that asterisk
>> (linux)
>> is not generating UDP checksums. If I enable to SO_NO_CHECK in rtp.c
>> then tcpdump does not report empty checksum (I assume they are
>> generated correctly then).
>
> First of all, your kernel is quite old... that could be the source of
> your problems.
2.6.7 is not "quite old". get real.
> SO_NO_CHECK is the name of the socket option used to turn checksums on
> and off. rtp.c checks to see if that option exists, and if so enables
> the 'rtpchecksums' setting in rtp.conf to control whether they are
> generated or not. It defaults to generating checksums, so normally the
> admin has to explicitly turn them off (if their system supports that).
that's RTP checksums, not UDP checksums, right? UDP checksum is an
integral part of UDP,
http://www.networksorcery.com/enp/protocol/udp.htm.
> I do not see any circumstance under which the system will not generate
> UDP checksums unless explicitly told not to, unless the kernel or
> libraries on the system are broken. The presence or absence of
> SO_NO_CHECK (which comes from the C library headers, originally from
> the kernel headers) does not itself control whether they are
> generated, it only gives the admin the option of turning them off.
>
> I'd suggest you update your kernel and make sure your C library and
> related headers are reasonably current before continuing to research
> this problem.
Also, make sure the UDP checksum really is missing....
roy
More information about the asterisk-dev
mailing list