Subject: [MMUSIC] How to decide the transport header in RTSP SETUP?

From: "Fan Chen" <[email-masked]>
Date: Wed, 11 May 2005 10:14:55 +0800

Hi,

We are implementing an RTSP client which can interoperate with Darwin
streaming server. 

Sometimes the server is behind a firewall that UDP transport is not
feasible. The problem is, when the server is not behind a firewall, we want
to use UDP transport, otherwise, we should use TCP transport, but how could
the client know whether the server is behind a firewall or not before
sending RTSP SETUP? Does RTSP provide a way to determine this?

Thanks

Chen

_______________________________________________
mmusic mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/mmusic

---

From: "Jae-Hwan Kim" <[email-masked]>
Date: Wed, 11 May 2005 13:19:38 +0900

Hi Chen,

I guess it depends on your connection setting of quicktime(but I am not the expert of quicktime). 

As far as I know, the server MUST follow the client’s request. I mean if there is only RTP/AVP;unicast, the server can’t change it to RTP/AVP/TCP;unicast;interleaved=0-1. Only the way the server can do is to send “462 Destination Unreachable” error as a response to guide the client to reconnect or to resend the SETUP with RTP/AVP/TCP but this is not “before SETUP’ solution.

Otherwise, I think that would be the player’s functionality(maybe the player could detect the firewall) or you could find several reconnection from a log such as tcpdump or snoop, which is the way I found from realplayer or quicktime player. 

Cheers,

Jae-Hwan

________________________________

From: Fan Chen [mailto:[email-masked]] 
Sent: Wednesday, May 11, 2005 12:41 PM
To: Jae-Hwan Kim; [email-masked]
Cc: [email-masked]
Subject: 答复: [MMUSIC] How to decide the transport header in RTSP SETUP?

Hi, Jae-Hwan,

I also tried to use Quicktime to connect to the Darwin server, it is able to correctly determine whether to use UDP or TCP. However, the packets sent by Quicktime are encrypted, so I cannot figure out Quicktime’s exact behavior in this process. The response from Darwin to Quicktime is in plain text, so I can see that RTP/AVP is used in RTSP SETUP when no firewall, otherwise RTP/AVP/TCP is used.

Thanks

Chen

________________________________

发件人: Jae-Hwan Kim [mailto:[email-masked]] 
发送时间: 2005年5月11日 10:27
收件人: Fan Chen; [email-masked]
抄送: [email-masked]
主题: RE: [MMUSIC] How to decide the transport header in RTSP SETUP?

Hi chen,

AFAIK, there is no way to signal it in the current RTSP specification. You need to try and reconnect with different transport like TCP-interleaved. Basically, the server can’t know where it is as well. Even though the server locates on a public Internet, the client might be behind of firewall. Therefore, IMHO, determining whether there is Firewall or not is out of scope of the streaming server.

Cheers,

Jae-Hwan

________________________________

From: [email-masked] [mailto:[email-masked]] On Behalf Of Fan Chen
Sent: Wednesday, May 11, 2005 11:15 AM
To: [email-masked]
Cc: [email-masked]
Subject: [MMUSIC] How to decide the transport header in RTSP SETUP?

Hi,

We are implementing an RTSP client which can interoperate with Darwin streaming server. 

Sometimes the server is behind a firewall that UDP transport is not feasible. The problem is, when the server is not behind a firewall, we want to use UDP transport, otherwise, we should use TCP transport, but how could the client know whether the server is behind a firewall or not before sending RTSP SETUP? Does RTSP provide a way to determine this?

Thanks

Chen