Subject: [BEHAVE] Channel Number

From: "Feng Liu" <[email-masked]>
Date: Tue, 22 Apr 2008 18:17:24 -0400

Dear BEHAVE experts,

I have two questions regarding Channel Number in TURN, and would like to get
your advice.

Assume I have two TURN clients, and each wants to bind a channel to its
peer. When TURN clients choose Channel Numbers, it is likely that they pick
the same Channel Number (e.g., both clients are from the same vendor and
have the same initial value and number selection algorithm). 

My question is: what is the behavior of the server in this case? Will the
server accept one binding request and reject the other? Or it accepts both
as two channel bindings are independent of each other?

If the server accepts one and rejects another, according to the spec, one
client will get a "bad request" response. My second question is: how can the
client know the rejection is because the number is taken, as the server can
reject the request for different reasons?

Thanks,

Feng

 

Feng Liu, Ph.D.  | Research Scientist, Dialogue System Research Group |
Avaya Labs Research  | Avaya | 233 Mt. Airy Road| Rm. 2D36 | Basking Ridge,
NJ 07920 | Voice/Fax: 908-696-5156 / 908-696-5401 | [email-masked]

_______________________________________________
Behave mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/behave

---

From: "Dan Wing" <[email-masked]>
Date: Tue, 22 Apr 2008 16:37:45 -0700

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Feng Liu
> Sent: Tuesday, April 22, 2008 3:17 PM
> To: [email-masked]
> Subject: [BEHAVE] Channel Number
> 
> Dear BEHAVE experts,
> 
>  
> 
> I have two questions regarding Channel Number in TURN, and 
> would like to get your advice.
> 
>  
> 
> Assume I have two TURN clients, and each wants to bind a 
> channel to its peer. When TURN clients choose Channel 
> Numbers, it is likely that they pick the same Channel Number 
> (e.g., both clients are from the same vendor and have the 
> same initial value and number selection algorithm). 
> 
>  
> 
> My question is: what is the behavior of the server in this 
> case? Will the server accept one binding request and reject 
> the other? Or it accepts both as two channel bindings are 
> independent of each other?

They are independent of each other because they are over
different TURN clients (different source IP address+port).  The
channel number is not unique for the entire TURN server; rather,
the channel number is unique for every TURN session with that
TURN server.

-d
  
> 
> If the server accepts one and rejects another, according to 
> the spec, one client will get a "bad request" response. My 
> second question is: how can the client know the rejection is 
> because the number is taken, as the server can reject the 
> request for different reasons?
> 
>  
> 
> Thanks,
> 
>  
> 
> Feng
> 
>  
> 
>  
> 
>  
> 
>  
> 
>  
> 
> Feng Liu, Ph.D.  | Research Scientist, Dialogue System 
> Research Group | Avaya Labs Research  | Avaya | 233 Mt. Airy 
> Road| Rm. 2D36 | Basking Ridge, NJ 07920 | Voice/Fax: 
> 908-696-5156 / 908-696-5401 | [email-masked]
> 
>  
> 
>  
> 
>

---

From: "Feng Liu" <[email-masked]>
Date: Wed, 23 Apr 2008 11:58:53 -0400

Thank you for clarifying it!

Feng

-----Original Message-----
From: Dan Wing [mailto:[email-masked]] 
Sent: Tuesday, April 22, 2008 7:38 PM
To: 'Feng Liu'; [email-masked]
Subject: RE: [BEHAVE] Channel Number

-d

---

From: Philip Matthews <[email-masked]>
Date: Wed, 23 Apr 2008 22:10:28 -0400

To be more precise, channel numbers are local to an allocation, and  
the allocation is uniquely identified by the 5-tuple (client IP  
address, client port, server IP address, server port, transport  
protocol). Channel numbers, permissions, etc etc in two different  
allocations have nothing to do with each other.

- Philip

---

From: "Feng Liu" <[email-masked]>
Date: Thu, 24 Apr 2008 12:01:10 -0400

Philip,

I was confused by the spec, and the explanations from you and Dan are much
clearer for an outsider. Do you think it is a good idea to add it into the
draft?

Thanks,

Feng

-----Original Message-----
From: Philip Matthews [mailto:[email-masked]] 
Sent: Wednesday, April 23, 2008 10:10 PM
To: Feng Liu
Cc: 'Dan Wing'; [email-masked]
Subject: Re: [BEHAVE] Channel Number

- Philip

---

From: Philip Matthews <[email-masked]>
Date: Thu, 24 Apr 2008 12:46:56 -0400

I believe it is already there, and you likely just missed it in your  
reading. Specifically, the third paragraph in section 10 of TURN-07  
reads:

    Channel bindings are specific to an allocation, so that a binding in
    one allocation has no relationship to a binding in any other
    allocation.  If an allocation expires, all its channel bindings
    expire with it.

(A similar paragraph appears in the section on Permissions.)

But if you saw this paragraph but thought it meant something else,  
then please let me know.

- Philip

---

From: "Feng Liu" <[email-masked]>
Date: Thu, 24 Apr 2008 13:43:30 -0400

Yes, I did see the paragraph, and that's where I got confused and asked for
clarification.

Feng

-----Original Message-----
From: Philip Matthews [mailto:[email-masked]] 
Sent: Thursday, April 24, 2008 12:47 PM
To: Feng Liu
Cc: 'Dan Wing'; [email-masked]
Subject: Re: [BEHAVE] Channel Number

- Philip

---

From: Eric Rescorla <[email-masked]>
Date: Thu, 24 Apr 2008 12:00:17 -0700

At Thu, 24 Apr 2008 12:46:56 -0400,
> But if you saw this paragraph but thought it meant something else,  

I just realized we're going to be sorry about using the word "channel
binding" since this already has an established meaning in the SASL
half of the security community...

-Ekr