Subject: TCP communication between one client and one server.

From: Galerne Pascal <[email-masked]>
Date: Tue, 28 Mar 2000 16:39:55 +0200

Hi,
My question is about TCP communication between one client and one server and
especially about possible problems encountered when using the same
connection for several calls in opposition with the creation of one socket
connection per call.
The  RFC2543 on SIP protocol says "a single TCP connection can serve one or
more SIP transactions" does it mean that more than one call can be sent on
the same TCP connection or does it concern only all the messages of the same
call (messages with the same callId). In the first case, I see two problems:
*	If the server supports only one call for a connection, if the client
sends a second INVITE before having received the last response of the first
call, the server will received a new message with an unknown callId and goes
in failure.
*	If the server supports more than one call, after the reception of
the 200 following the BYE of the last call it may decide to close the
connection. And the client sends a new INVITE before it observes the closing
of the connection. The new INVITE will never reach the server and if the
emission system of the client is an independent process, the User Agent
client will never be informed of emission failure.

Perhaps this question has a well-known response, if someone can answer me.

Thank you. 

Pascal Galerne

---

From: Jonathan Rosenberg <[email-masked]>
Date: Tue, 28 Mar 2000 19:26:22 -0500

Galerne Pascal wrote:
> call (messages with the same callId). 

It can be for any number of calls.

>In the first case, I see two problems:

Huh? If an INVITE is received with an unrecognized Call-ID, its a new
call, whether its over an existing TCP connection, a new one, or UDP.

> client will never be informed of emission failure.

Then it opens a new connection. There is really no tie between a TCP
connection and a call. If a client wants to send an INVITE to address X,
and it has a TCP connection open to X, use it. If there is no connection
to X, open one.

-Jonathan R.
-- 
Jonathan D. Rosenberg                       72 Eagle Rock Ave.
Chief Scientist                             First Floor
dynamicsoft                                 East Hanover, NJ 07936
[email-masked]                     FAX:   (732) 741-4778
http://www.cs.columbia.edu/~jdrosen         PHONE: (732) 741-7244
http://www.dynamicsoft.com