Hello LARTC gurus. I'm new to this list and have a
mind boggling problem that I cannot resolve. Let me describe my
problem:
We have a custom built wireless
camera comprised of an IP encoder and a BitsyX running Linux. It
communicates to an antenna unit (Bitsyx) which plugs into a Windows machine
with a digitial video recorder:
[IP Video Encoder] -> [Linux Box 1] - 2Mbit
Wireless Link -> [Linux Box 2] -> [Digital Video Recorder running on
XP]
Realtime H.263 Video (UDP) flows from the encoder
to the DVR at 500kbit/sec peak. (avg is about 275-300). There is also a bit of
sporatic 2-way TCP communication.
Both linux boxes do SNAT and DNAT using
iptables. Under normal conditions this scenario works reasonably well
(despite the fact that its a bit slow.)
***Problem: When bit errors on the wireless link
occur, video will get jerky and get behind (sometimes as much as 20 seconds!)
and then suddenly the video will appear to go in fast foward and catch up again!
This is clearly unacceptable for realtime video! We would rather lose the
occassional packet then have it get behind.
QUESTIONS:
1) will doing SNAT twice on a UDP video stream
cause considerable or negligable delay?
2) Is there a way to tell the kernel to drop a
packet if its not delievered within an acceptable period of time?
3) How can you optimize your TCP stack for realtime
video?
|
_______________________________________________ LARTC mailing list LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc