Skip to main content
Participant
October 29, 2008
Question

Clients not showing up

  • October 29, 2008
  • 4 replies
  • 939 views
Hello,

I am new to Flash Media Server. I have FMS v2 installed and running. I have a flash application that posts some data (tracking information) to the FMS Server whenever a user tries to play anything using the flash application. The flash app sends data on port 80.

This used to work till recently when we did a server move and after that it stopped working. I dont see any errors anywhere. Log files, event viewer, everything is clean. The FMS server is running on a specific IP and the ports 80, 1111 and 1935 are opened up.

I dont see clients in the FMS admin console. Does that mean the client connection is getting rejected? Or does that mean that the flash application is not even connecting to the Flash Media Server? How do I troubleshoot the connection issue? I am kind of lost because, there are no errors on the server side but the clients do not show up!

Please advise.

Thanks,
Satya
    This topic has been closed for replies.

    4 replies

    October 30, 2008
    Ideally, you'll have the FMS process listening on ports 1935 and 80, and you'll configure your client side flash application to either attempt connections on 1935 and 80 in sequence. The flashplayer does that automatically (if you don't specify the port in the URL), but it can take a while for that to happen. I prefer to try the following in sequence, allowing a 5 second timeout between attempts:

    rtmp:1935
    rtmp:80
    rtmpt:80

    If you have the FMS process configured to bind to port 80 in your hostport list and FMS isn't binding to it, then something is getting in the way. Given my past experiences with IIS running on the same machine as FMS, I'd put my money on socket pooling being turned on as your issue. If your environment allows for it, try stopping the IIS service, and then restarting the FMS process. If FMS binds to port 80 with IIS turned off, you've found the culprit.
    Participant
    October 30, 2008
    Hello Jay,

    After using httpcfg, now FMSEdge.exe is listening on ports 80 and 1935. So I guess the flash app should now be able to communicate on port 80.

    I remember you told me about this a while back but I forgot. :-) Thanks man!

    I will see if it starts working. If not, will post back here again.

    Thanks,
    Satya
    Participant
    October 30, 2008
    Confirmed. Its working perfectly! Thanks a lot Jay.

    - Satya
    October 29, 2008
    The FMS core will start even if it can't bind to all of the ports specified in fms.ini.

    Try running netstat -nab so you can see if anything is listening on 80 or 1935.

    Incidentally, if you haven't already, you need to disable socket pooling in IIS 6 to prevent it from binding to port 80 on all IP's (changing the bindings in IIS manager won't do it). See this technote:

    http://support.microsoft.com/kb/813368
    Participant
    October 30, 2008
    Hello Jay,

    You are right. I did a netstat -nab and figured out that the FMS was listening on ports 1111 and 1935. It wasnt listening on port 80. That explains the problem because the application is posting tracking data to the FMS on port 80.

    This is what I figured out from netstat:

    FMSAdmin.exe listening on port 1111
    FMSEdge.exe listening on port 1935

    Now, do we want FMSEdge to listen on port 80? Is that what we want? Will that solve the problem.

    Thanks,
    Satya
    Participant
    October 29, 2008

    1. I specified the ports :80,1935 in the fms.ini file. Even if I specify only 80 and restart FMS Server, it starts up fine which means port 80 is not locked by IIS on that specific IP.
    2. Another developer wrote the flash application for us and I dont have a clue on how to check the source. Do you have any test app that I can use to check if FMS is listening on a specific IP/port combination?
    3. The server is running Windows Server 2003 with IIS v6.
    4. I did netstat -e. I see only 2 rows one on port 1111 and the other for pport 8443. I dont see port 80 there. That means my flash application is not connecting to the server at all! Why would that be the case?

    Thanks,
    Satya
    Participant
    October 29, 2008
    I dont know why my reply went under Rob Cashman's account. But the previous reply was from me. Looks like a forums bug. :-)

    Thanks,
    Satya
    October 29, 2008
    Since the issue is new since the server move, my first guess would be that either something is getting in the way of port 80 (assuming all client connections are failing), or you're not allowing clients to use RTMPT when needed (assuming only some connections are failing).

    If the URL argument in your client side NetConnection.connect constructor explicitly defines port 80, the flashplayer will try only port 80 using the protocol specified in the URL string. If you do not define the port, and you define the protocol as RTMP, the flashplayer will automatically try various combination of ports and protocols if RTMP:1935 fails.

    About this new server, is it Windows or Linux. If it's windows, and you're running IIS 6 on it, did you unbind IIS from the IP FMS is running binding to? I've found that in most cases, IIS usually grabs port 80 (on all IP's) before FMS does. A quick run of Netstat should tell you which service is bound to port 80 on the FMS ip.