Download Presentation_VoIP P2P Networks

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Computer network wikipedia , lookup

Deep packet inspection wikipedia , lookup

AppleTalk wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

CAN bus wikipedia , lookup

Net bias wikipedia , lookup

Airborne Networking wikipedia , lookup

Distributed firewall wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

Internet protocol suite wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

SIP extensions for the IP Multimedia Subsystem wikipedia , lookup

Peer-to-peer wikipedia , lookup

Transcript
Comparison between Skype and SIPbased Peer-to-Peer Voice-Over-IP
Overlay Network
Johnson Lee
EECE 565 Data Communications
Outline
•
•
•
•
•
•
•
P2P versus Client-Server
P2P-SIP design goal
Overlay Network of Skype and P2P-SIP
Login Sequences
Advance Service Comparison
Security
Performance
2
Peer-to-Peer / Client-Servier
• Client-Server vs P2P
– Scalability
– Infrastructure cost
• Structured vs Unstructured
– Search time
– Data distribution
3
P2P-SIP Design Goals
Goal
Zero Configuration
Heterogeneous
nodes
Efficient Lookup
Advanced Services
Interoperability
Description
The system should be able to automatically configure itself. (e.g. by
detecting NAT and firewall settings, discovering neighbouring peers
and performing initial registration.)
It should be able to adapt to available resources and distinguish
between peers with different capacity and availability constraints. This
favors the distinction between nodes and super-nodes as in KaZaA.
Blind search based on flooding is inefficient. The system should use an
underlying DHT to optimize lookup.
It should support advanced telephony services such as offline voice
messaging, multi-party conferencing, call transfer and call forwarding
as well as advanced Internet services such as presence and instant
messaging.
It should easily integrate with existing protocols and IP telephony
infrastructure. We choose SIP as the signaling protocol for
interoperability.
4
Skype Overlay Network
• Unstructured
• KaZaA predecssor based
– Super node
– Ordinary node
– Login server
• STUN and TURN protocols for
firewall and NAT traversal
– Simple Traversal of UDP over NAT
– Traversal Using Relay NAT
5
P2P-SIP Overlay Network
• Based on Chord Distributed
Hash Table (DHT)
• Structured
• O(log N) lookup time
• Finger table
• STUN and TURN firewall and
NAT traversal as well
6
Login Sequence 1 - Skype
Send UDP
packet(s) to HC IP
address and port
Start
Response
within 5 s
Wait for 6 seconds
Failure
Yes
No
Connection
Attempt == 5
No
TCP connection
attempt with HC IP
address and port
Yes
Success
No
Yes
Connected
No
TCP connection
attempt with HC IP
address and port 80
(HTTP port)
Yes
Connected
Yes
Connected
No
TCP connection
attempt with HC IP
address and port
443 (HTTPS port)
7
Login Sequence 2 – P2P-SIP
•
•
•
•
Multicast
TTL = 1
Service
Location
Protocol
(SLP)
[LAN peers]
Bootstrap
Cached
8
Advanced Services Comparison
Skype
P2P-SIP
Offline
Messaging
Multi-Party
Conference
◦
◦
◦
◦
Call
Transfer
Call
Forwarding
◦
Presence
Instant
Messaging
◦
◦
◦
◦
◦
• Offline Messaging Issue – Where to store?
– Skype stores at it message originator
– P2P-SIP proposes storing it at DHT
• Replication strategy for reliability
• Call transfer and call forwarding are SIP features
that would be available in non-P2P SIP.
– Super node instead of centralized database
– Required feature for SIP (not as crucial for Skype)
9
Security
• P2P-SIP
– Malicious Node
Hop-by-hop TLS
(Tunneling)
– Freeriding
Incentives
– Problem:
No centralized login
server to certify.
Trust via reputation?
• Skype
– Encryption
AES 256bits
– Key Exchange
RSA 2048
– Public Key
Certified by
Login Server
10
Performance
• P2P-SIP Scalable?
– Yes, suppose nodes support 10 request/sec, minimum refresh
rate of one minute, call rate of one call per minute per node
N max  2
C
cr
300
= 2x10 = 2
90
C = 10, c = 1/60, and r = 1/60
• Latency?
– P2P-SIP:
10,000 node system avg 6 hopes, SIP call setup ~200ms;
therefore, 1-2 s delay
– Skype
Average 3-8 second for user location based on a 2004 study
11
References
1.
2.
3.
4.
5.
6.
Skype Networks. http://www.skype.com
KaZaA. http://www.kazaa.com
K. Singh and H. Schulzrinne. Peer-to-peer Internet telephony using SIP.
Technical Report CUCS-044-04, Department of Computer Science,
Columbia University, New York, NY, Oct. 2004.
J. Rosenber, Henning Schulzrinne, G. Camarillo, A. R. Johnston, J.
Peterson, R. Parks, M. Handley, and E. Schooler, "SIP: session
initialiozation, protocol,” RFC 3261, Internet Engineering Task Force,
June 2002
P2P-SIP. http://www.p2psip.org/
Singh, K. and Schulzrinne, H. 2005. Peer-to-peer internet telephony
using SIP. In Proceedings of the international Workshop on Network and
Operating Systems Support For Digital Audio and Video (Stevenson,
Washington, USA, June 13 - 14, 2005). NOSSDAV '05. ACM Press, New
York, NY, 63-68. DOI= http://doi.acm.org/10.1145/1065983.1065999
12
Questions/Comments?
Thank You For Listening
Login Sequence - Incoming
14
Service Location Protocol
• RFC 2608
• Allows computers and other devices to
find services in a local area network
without prior configuration.
• “service:printer:lpr://myprinter/myqueue”
15
Advanced Encryption Standard
•
•
•
•
Aka Rijndael
Block Cipher
Replaces DES (and the modified 3DES)
128, 192, 256 bits keys
1.
AddRoundKey — each byte of the state is combined with the
round key; each round key is derived from the cipher key using a
key schedule.
SubBytes — a non-linear substitution step where each byte is
replaced with another according to a lookup table.
ShiftRows — a transposition step where each row of the state is
shifted cyclically a certain number of steps.
MixColumns — a mixing operation which operates on the columns
of the state, combining the four bytes in each column using a
linear transformation.
2.
3.
4.
16