Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Reflected stream HTTP connection broken



You say HTTP reflections are giving you problems. I have some questions:

1) Are you certain that HTTP Stored (RTSP on-demand URL streaming)
is working fine, but that the problem is isolated only to reflecting HTTP?


2) Does the data rate go to zero within a predictable amount of time? Does it
look like some kind of a time out where consistently within 60-120 seconds
the problem is occurring?


3) When the problem happens, if the QT Client re-connects to the same HTTP
reflected URL stream does it work fine... only to get dropped soon after again?


4) Are QT Client machines that are outside of your local LAN possibly configured
to first go through some sort of HTTP proxy or firewall at your ISP's gateway?
I realize you said that UDP streaming from outside your LAN to this server
works fine, but I thought I'd ask anyways (re: HTTP proxy).


4) I'm not familiar with the Ethernet drivers you listed. But maybe could you try swapping in
a completely different Ethernet card (different manufacturer, such as 3com or dec)
and seeing if the problem reproduces.


--
Billy Brown

On Monday, September 30, 2002, at 10:56 AM, M. Sean Gilligan wrote:
I've been observing a problem with dropped connections on live streams being reflected through DSS to clients using HTTP port 80. Here is the configuration information:

DSS 4.1.1 (Built from source on RH 7.1)
Red Hat Linux 7.1
eepro100 and 8139too Ethernet drivers
smp and uniprocessor systems

The user-level symptom, as seen in QTPlayer/Properties/Streaming Track/Bit Rate, is that the stream is playing with little or no packet loss when suddenly the data rate goes to zero.

The problem only seems to occur when the stream is going "across the Internet" and doesn't reproduce with a LAN connection to the server. It must happen only when the transmit queue gets full (or something like that.)

I originally discovered the problem while reflecting a live stream, but have reproduced it with a "sequentially looped" playlist broadcast and have been using the playlist broadcast as a test for the last few days. (It's easy to setup on any server and eliminates variables.) Playlist broadcaster is running on the same server as the reflector (I use streamingadminserver.pl to set it up.)

The problem does not seem to occur with UDP streams.

Using EtherPeek, I noticed "Bad TCP Checksum" errors in the last packets sent before the connection is dropped. It looks like TCP sends several re-transmits each with a bad checksum, the client throws them out and sends no acks, and the server eventually times out. Using tcpdump (I had to compile a newer version than ships with RH7.1 to get the checksum checking code) I verified that the packets are being corrupted on the server.

So, at this point, it looks like a problem in the Linux TCP stack. I suppose it could be a problem in the Ethernet driver, but I have seen it with two different drivers (which could have the same bug from common code.)

Things I've tried:

1) Different servers in different Internet locations

2) Commenting out changes in /etc/sysctl.conf:

# Set max well above default for streaming server performance
#net.core.rmem_max = 1048576
# Set max well above default for streaming server performance
#net.core.wmem_max = 1048576

3) Changes in /etc/streamingserver.xml
    a) Lowering "max_tcp_buffer_size" to "60000" and then to "20000"
    b) Setting "disable_overbuffering" to "true"

Things not tried yet:

1) Installing an updated kernel for RH7.1. RH7.1 ships with 2.4.2 and RedHat provides an update to 2.4.9-34.

2) Using RH7.3. (Our application has many components and switching to RH7.3 is not easy or risk-free.)

3) Testing on other platforms (e.g. Mac OS X, BSD, Windows). (Not an option for our customer, but could help define the problem - although it sure looks like a Linux kernel/driver problem at this point.)

Any information, ideas, or suggestions would be greatly appreciated. My next step is to install the kernel updates. I'll report back to the list with final results (hopefully a solution.)

Regards,

Sean




-- ----------------------------------------------------------------------- ----
M. Sean Gilligan : mailto:email@hidden
Catalla Systems, Inc. : 831-439-9568 x11
----------------------------------------------------------------------- ----
_______________________________________________
streaming-server-developers mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/streaming-server-> developers
Do not post admin requests to the list. They will be ignored.
_______________________________________________
streaming-server-developers mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/streaming-server-developers
Do not post admin requests to the list. They will be ignored.

References: 
 >Reflected stream HTTP connection broken (From: "M. Sean Gilligan" <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.