TURN draft-ietf-behave-turn-07 Philip Matthews, Avaya Jonathan Rosenberg, Cisco Rohan Mahy, Plantronics.

Slides:



Advertisements
Similar presentations
2: Comparing IPv4 and IPv6 Rick Graziani Cabrillo College
Advertisements

Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Internet Control Protocols Savera Tanwir. Internet Control Protocols ICMP ARP RARP DHCP.
CCNA – Network Fundamentals
CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 20 – March 25, 2010.
NAT Traversal for P2PSIP Philip Matthews Avaya. Peer X Peer Y Peer W 2. P2PSIP Network Establishing new Peer Protocol connection Peer Protocol messages.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
CSCI 4550/8556 Computer Networks Comer, Chapter 23: An Error Reporting Mechanism (ICMP)
DHCP Dynamic Host Configuration Part 7 NVCC Professional Development TCP/IP.
STUN bis draft-ietf-behave-rfc3489bis Jonathan Rosenberg Cisco Systems.
Internet Control Message Protocol (ICMP). Introduction The Internet Protocol (IP) is used for host-to-host datagram service in a system of interconnected.
Resource Management – a Solution for Providing QoS over IP Tudor Dumitraş, Frances Jen-Fung Ning and Humayun Latif.
Internet Networking Spring 2003
© 2007 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.1 Computer Networks and Internets with Internet Applications, 4e By Douglas.
ITIS 6167/8167: Network and Information Security Weichao Wang.
Dynamic Host Configuration Protocol (DHCP)
TELE202 Lecture 10 Internet Protocols (2) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »Internet Protocols (1) »Source: chapter 15 ¥This Lecture »Internet.
Petrozavodsk State University, Alex Moschevikin, 2003NET TECHNOLOGIES Internet Control Message Protocol ICMP author -- J. Postel, September The purpose.
Guide to TCP/IP, Third Edition
ICMP (Internet Control Message Protocol) Computer Networks By: Saeedeh Zahmatkesh spring.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Network Layer ICMP and fragmentation.
University of Calgary – CPSC 441.  UDP stands for User Datagram Protocol.  A protocol for the Transport Layer in the protocol Stack.  Alternative to.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
PA3: Router Junxian (Jim) Huang EECS 489 W11 /
Draft-campbell-dime-load- considerations-01 IETF 92 DIME Working Group Meeting Dallas, Texas.
LWIP TCP/IP Stack 김백규.
Transport Layer: TCP and UDP. Overview of TCP/IP protocols Comparing TCP and UDP TCP connection: establishment, data transfer, and termination Allocation.
© Jörg Liebeherr (modified by M. Veeraraghavan) 1 ICMP: A helper protocol to IP The Internet Control Message Protocol (ICMP) is the protocol used for error.
Framework & Requirements for an Access Node Control Mechanism in Broadband Multi-Service Networks ANCP WG IETF 71 – Philadelphia draft-ietf-ancp-framework-05.txt.
Chapter 81 Internet Protocol (IP) Our greatest glory is not in never failing, but in rising up every time we fail. - Ralph Waldo Emerson.
1 Internet Control Message Protocol (ICMP) Used to send error and control messages. It is a necessary part of the TCP/IP suite. It is above the IP module.
Chapter 2 Applications and Layered Architectures Sockets.
Multimedia Wireless Networks: Technologies, Standards, and QoS Chapter 3. QoS Mechanisms TTM8100 Slides edited by Steinar Andresen.
TURN -01 Changes and Issues Rohan Mahy BEHAVE at IETF66 - Montreal.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
4: Network Layer4a-1 13: Intro to IP and ICMP Last Modified: 11/9/2015 7:16:06 PM.
Error and Control An IP datagram travels from node to node on the way to its destination Each router operates autonomously Failures or problems may occur.
RFC3489bis Jonathan Rosenberg Cisco. Issue #1: IPSec Demux Raised by HIP folks IPSec in the kernel and ICE in userland –IPSec kicksc all packets with.
SIP working group IETF#70 Essential corrections Keith Drage.
1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Dynamic Host Configuration Protocol (DHCP)
CSC 600 Internetworking with TCP/IP Unit 5: IP, IP Routing, and ICMP (ch. 7, ch. 8, ch. 9, ch. 10) Dr. Cheer-Sun Yang Spring 2001.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
Making SIP NAT Friendly Jonathan Rosenberg dynamicsoft.
TURN Jonathan Rosenberg Cisco Systems. Changes since last version Moved to behave terminology Many things moved into STUN –Basic request/response formation.
RTCWEB STUN Usage for Consent Freshness and Session Liveness draft-muthu-behave-consent-freshness-01 Authors: D. Wing, Muthu A M. Perumal, R. Ram Mohan,
MSRP & Relays Ben Campbell Cullen Jennings Rohan Mahy.
Session Traversal Utilities for NAT (STUN) IETF-92 Dallas, March 26, 2015 draft-ietf-tram-stunbis Marc Petit-Huguenin, Gonzalo Salgueiro.
Firewalls A brief introduction to firewalls. What does a Firewall do? Firewalls are essential tools in managing and controlling network traffic Firewalls.
TURN draft-ietf-behave-turn-09 Philip Matthews Rohan Mahy Jonathan Rosenberg.
UDP : User Datagram Protocol 백 일 우
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
© 2002, Cisco Systems, Inc. All rights reserved..
Lecture 21: Network Primer 7/9/2003 CSCE 590 Summer 2003.
ID-LOC Proposal Philip Matthews Eric Cooper Alan Johnston Avaya With contributions from Cullen Jennings, David Bryan, and Bruce Lowekamp.
Internet Control Message Protocol (ICMP)
Internet Control Message Protocol (ICMP)
draft-ietf-simple-message-sessions-00 Ben Campbell
Internet Control Message Protocol (ICMP)
Net 221D : Computer Networks Fundamentals
Magda El Zarki Professor, ICS UC, Irvine
Internet Control Message Protocol (ICMP)
Internet Control Message Protocol (ICMP)
Internet Control Message Protocol (ICMP)
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Internet Control Message Protocol (ICMP)
Internet Control Message Protocol (ICMP)
IP : Internet Protocol Surasak Sanguanpong
Starting TCP Connection – A High Level View
CS4470 Computer Networking Protocols
Presentation transcript:

TURN draft-ietf-behave-turn-07 Philip Matthews, Avaya Jonathan Rosenberg, Cisco Rohan Mahy, Plantronics

What New? Two revisions (-06 and -07) since last meeting. Long list of changes in each revision. –See change list in document for details For time reasons, will focus on Open Issues first, and Major Changes second.

IP Header Bits (1) New proposal (with JDR, Magnus, Lars) Two types of allocations when doing UDP-to- UDP relaying “Fully-compliant”: –Preserves ECN, DSCP, DF bits –Decrements TTL –Relays ICMP messages (TBD) –Think “RAW sockets or kernel implementation” “Partly-compliant” : –Does not do one or more of above. –Think “unprivileged user-space implementation”

IP Header Bits (2) If the client requests a “fully-compliant” allocation (using a new flag in the REQUESTED-PROPS attribute), then server must reject Allocate request if it can not satisfy the request. TCP-UDP relaying has less-stringent requirements (i.e., something easily implementable in user-space).

IP Header Bits (3) Document will give guidance on when a client should use a “fully-compliant” allocation. For example, when app: –Wants to use ECN, or –Requires a “proper” DSCP along the entire path, or –Wants to use RFC1191-style PMTUD, or –Wants to use RFC4821-style PMTUD and needs to discover the real MTU If RFC4821-style PMTUD is used with a partly- compliant allocation, then the value discovered may not be the true MTU.

ALTERNATE-SERVER (1) TURN-05/-06: –Attribute only allowed with 300 “Try Alternate” error response. No way to find out what real error code was –Required “positive knowledge” condition would not occur on alternate server. To avoid redirect loops TURN-07: –Attribute allowed with any error response. 300 “Try Alternate” is not used. –“Positive knowledge” not required. Instead, new STUN rules say must wait 5 minutes before trying the same server again.

ALTERNATE-SERVER (2) EKR, Cullen: Ditch this; just use SRV mechanism. Marc P-H: –Don’t use for load-balancing. –Change attribute to contain a domain name (rather than an IP address and port) –Allows the server to dynamically redirect the client, as opposed to the SRV mechanism which is more static. Proposal: –Remove ALTERNATE-SERVER from STUN for now. –Add later as a enhancement once a well-defined mechanism exists.

BANDWIDTH (1) Proposal for handling BANDWIDTH BANDWIDTH attribute specifies a Token Bucket: –Token Bucket Rate –Token Bucket Size Client MAY include BANDWIDTH in Allocate req –Client includes if it wants a service guarantee (e.g., for voice or video) –Client does not include if it wants best-effort service (e.g., for variable-rate data) If server cannot provide requested service, it rejects the request. –Server MAY include BANDWIDTH attribute in error response specifying service guarantee it could provide

BANDWIDTH (2) Some possible server implementations: 1.Server provides best-effort service only. Rejects requests containing a BANDWIDTH attribute. 2.Server provides a simple controlled-load service only. Ensures sum of token bucket rates does not exceed some max value. No policing. –Suitable if server trusts clients not to send faster than advertized rate. 3.(2) + Policing each allocation using Token Bucket. –Appropriate if clients might send faster than their advertized rate 4.Mixing best-effort and controlled-load on same server ??

BANDWIDTH (3) Questions: 1.As proposed, the BANDWIDTH parameters are modelled after IntServ’s Controlled-Load service. Should a different set of parameters be used (e.g., RFC Bandwidth Modifier for SDP)? 2.As proposed, if the client wants controlled-load but the server only supports best-effort, the request is rejected, and the client must retry if it is willing to accept best-effort. Is this a problem? 3.As proposed, the bandwidth specified is the bandwidth on the client server connection, and is the max of the traffic in each direction. It also includes control traffic. Should the bandwidth be measured differently?

Public TURN Servers How do we handle authentication for public TURN servers? Option 1: Public TURN servers do not use authentication. Option 2: Public TURN servers use authentication; client obtains username and password through out-of-band mechanism (e.g. user visits a webpage). Option 3: Don’t say anything about how to do this in the document. Proposal: Document will recommend option 2, and briefly describe how this could be done.

Lifetimes Permission lifetime: –5 min (fixed); refresh by sending data to any peer with same IP address OR using “empty” Send indication Channel lifetime: –10 min (fixed); refresh by sending data on channel OR rebinding channel to peer Allocation lifetime: –10 min (default; client can request a longer time); refresh using Refresh transaction

Other Changes STUN-formatted messages are no longer framed Completely reworked the mechanism for binding a channel (EKR’s proposal) Completely reworked the mechanism for requesting an even port or a pair of ports (Cullen’s proposal) –Can no longer request a specific port 5-tuples cannot be re-used for two minutes after allocation expires.  Clients must use a different port for a new allocation