Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: PID histogram



HI

Your traffic.c works execellent, that's exactly what I was
looking for to get the analysis.

However analysis results have ruled out some sources of
packet loss but I haven't the found the exact place.

raw dvb traffic from traffic.c is approx the same as
traffic bandwidth shown by iptraf minus cca 3%.

However, the TCP stream following shows 15-30% of missing
packets. Tha cannot be explained by the raw bandwidth to
ip loss from decapsulation.

I took two receptions on 2 budget cards in the same machine,
connected to the same LNB.

On both receptions from 2 different cards exactly the same packets 
were missing!

Packet loss of up to 30% occurs when the bandwidth is over 30 Mbit/s

On lower bandwidths there is (usually) no significant packet loss.

Kernel is tuned to handle the given bandwidth, CPU is fast enough,
following TCP stream has no random bugs (saved tcpdump of good reception 
always gives the same, good results)

It seems to me that packets with certain data contents never make it.

Here are my speculative places where packet loss might happens:

0) At the very input, packets are sent back-to-back too fast
   so the card can't capture all of them as if some of them
   weren't transmitted at all. (not likely because all other
   viewing channels with mplayer are displayed 100% loss-free)

1) directly after vpeirq(), in dvb_net dvb-to-ip decapsulation
   where some IP payload is not recognized correctly if it e.g. 
   spans over 2 dvb encapsulation structures.
   (IMHO it's not likely, as it shuld lead to greater difference
   of DVB to IP bandwidth than observed 3&)

2) In the kernel packet cache subsystem, where too much packets
   clutter up the cache. (Not likely, I tuned the parameters 
   carefully, and besides, then 2 different budget
   cards should get different packets missing because of cluttering
   of common packet cache).

3) BUG In the packet capture library and/or tcp following 
   (It's my favourite place among of all impossible places where
   the loss might be. But it's also not very likely because lower 
   bandwidth should also exhibit similar 30% packet loss if the
   bug was really that).

To summarize, as a rule, packet loss happens often on top bandwidths
over 30Mbit/s and rarely on lower bandwidths below 20Mbit/s but some 
exceptions from that have been observed as well.

Emard


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index