Subject: [pcp] multiple mapping requests

From: Francis Dupont <[email-masked]>
Date: Fri, 06 Aug 2010 17:13:54 +0200

There are at least two cases where multiple mapping requests seem
to be interesting:
 - UDP and TCP identical (same internal and external ports) mappings
 - contiguous (pair of) ports (i.e., RTP/RTCP case)
BTW is there another case?

The RTP/RTCP case is supposed to be handled by the Information Element
extension mechanism. I propose to handle the first one (and any other
similar new case if one can be identified) with the same mechanism
because the proposed multiple mapping request doesn't help and
a procedure as described at the lunch BoF doesn't help too without
unpleasant extra complexity.

About the first point, there is no reason for a multiple mapping
request to follow not expressed constraints, i.e., external ports
could be different. BTW this means there is no protocol requirement
for multiple mapping requests.

For the second point (procedure), the issue is the (required) handling
of what I call 'amnesiac requests': when the PCP server receives
a mapping request which matches for protocol and internal port an
existing (installed or in hold down) mapping of the same client
then it processes this request as a renew. The term 'amnesiac' comes
from the fact a client which has lost the knowledge of its mappings
sends this kind of requests.

So a try/delete/retry procedure doesn't work: the procedure has to be
modified to 'lock' attempts until it succeeds or it reaches a resource
limit.

IMHO it is far simpler to explicit the constraint on the server side.

[email-masked]