Here are my comments on this draft.

I apologize for the repetition, but half of the technical issues I raised back in March on the list and in Philadelphia haven't really had any discussion. I'll also go through the other four issues as they have been either fully or partially addressed.

There are also a few new issues as well.

Thanks,
Alan

- - - - -

Issues from March that have not been addressed:

1. The layering of the protocol

Currently, this protocol has functions from the application layer (distributed 
database), transport layer (retransmissions), and internet layer 
(fragmentation).  Do we really need to do this?  Do we have the right expertise 
to tackle all these issues?  Just saying that anytime an overlay is used, there 
will be layer violations does not address this.  If we are not clear about what 
protocol layer functions we are building, we will be in big trouble in the IESG 
and in the Internet in deployments.  Also, there is an open issue about what 
layer this interacts with SIP, and whether a new SIP transport token needs to 
be defined.

2. There seems to be an inability to reuse connections between peers.

This restriction in 4.3 has no discussion or analysis. Is it for security reasons? Or simplicity? Running ICE is costly, and to design the protocol to rule out NAT mapping reuse seems strange.
3. There is still a major security flaw relating to SIPS.

I don't think I need to repeat myself on this one.  If I am incorrect that a 
SIPS (or any SIP message sent over TLS) sent using the Tunnel method would not 
be transported confidentially over the overlay, then please let me know.  
Otherwise, fixing this before WGLC would seem like a good idea.

4. The security considerations is missing all transport security issues.

This protocol has many transport functions and they need a good security 
analysis.

Addressed:

5. Bootstrapping is underspecified.

The use of destination lists seems like a crutch to get this to work right - 
I'd be interested in others opinions of this.

6. The impact of peers leaving the overlay is not discussed with respect to symmetric response routing.

The discussion of this and other routing issues is good, although perhaps it 
should move to an appendix in the future.

7. Destination lists are underspecified, add complexity, and not justified for inclusion.

The description of a client connecting to an arbitrary peer in the overlay 
(page 18) seems to be the main use case for this (besides fixing 
bootstrapping).  It would be useful to discuss the motivation for this, and 
whether this use case justifies the inclusion of destination lists.  Also, a 
security analysis of their effects would be useful for a cost/benefit analysis. 
 I'm still not convinced they are a benefit to the protocol.

8. The text relating to HIP is misleading.

The current text is no longer misleading.

Additional issues:

9. Primitives with different DHTs

Since different DHTs will result in different semantics, usage, and message 
contents for Join, Update, and Leave, does it make sense to reuse the same 
name?  Alternatively, we could define Join-Chord, Update-Chord, etc which would 
always have just one format and usage, with Join-XYZ, Update-XYZ, etc defined 
for new DHTs.  Also, some DHTs might have a need for additional primitives.  
Thoughts?

10. Symmetric Chord

Perhaps this has already been discussed, but I recall Philip Matthews proposed 
a modified chord that used symmetric finger tables to minimize the number of 
NAT mappings/ICE runs needed.  I can see the advantage of using either 
unmodified Chord, or optimizing Chord for our needs.  Since we are already 
making some changes to standard Chord, perhaps we should consider this.

11. Keepalives

It seems that keep alives are happening at multiple levels, which might be OK.  
The Ping method provides keep alives at the DHT level while ICE keep alives are 
used at the connection level.  Is this correct?

_______________________________________________
P2PSIP mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/p2psip

Reply via email to