The Design Space for NSIS Signaling Protocols Henning Schulzrinne Columbia University NSIS working group interim meeting February 2003,

Slides:



Advertisements
Similar presentations
SPATor: Improving Tor Bridges with Single Packet Authorization Paper Presentation by Carlos Salazar.
Advertisements

CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Transitioning to IPv6 April 15,2005 Presented By: Richard Moore PBS Enterprise Technology.
Camarillo / Schulzrinne / Kantola November 26th, 2001 SIP over SCTP performance analysis
CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
Telematics group University of Göttingen, Germany Overhead and Performance Study of the General Internet Signaling Transport (GIST) Protocol Xiaoming.
May 2007 PRESTO (Princeton, NJ) In-network Support for VoIP and Multimedia Applications Henning Schulzrinne Dept. of Computer Science Columbia University.
Design Issues for NSIS Signaling Protocols Henning Schulzrinne Columbia University NSIS working group meeting IETF 56 (March 2003,
Transition Mechanisms for Ipv6 Hosts and Routers RFC2893 By Michael Pfeiffer.
CASP – Cross- Application Signaling Protocol Henning Schulzrinne August 27, 2002.
1 A Course-End Conclusions and Future Studies Dr. Rocky K. C. Chang 28 November 2005.
Computer Networks Transport Layer. Topics F Introduction  F Connection Issues F TCP.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
Trade-offs and open issues with path discovery and transport or not all requirements are orthogonal… Henning Schulzrinne Columbia University
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
CMPT 471 Networking II Address Resolution IPv6 Neighbor Discovery 1© Janice Regan, 2012.
Packet Filtering. 2 Objectives Describe packets and packet filtering Explain the approaches to packet filtering Recommend specific filtering rules.
CIS 725 Wireless networks. Low bandwidth High error rates.
Midterm Review - Network Layers. Computer 1Computer 2 2.
Presentation on Osi & TCP/IP MODEL
Chapter 6: Packet Filtering
1 Semester 2 Module 10 Intermediate TCP/IP Yuda college of business James Chen
NSIS NATFW NSLP: A Network Firewall Control Protocol draft-ietf-nsis-nslp-natfw-08.txt IETF NSIS Working Group January 2006 M. Stiemerling, H. Tschofenig,
I-D: draft-rahman-mipshop-mih-transport-01.txt Transport of Media Independent Handover Messages Over IP 67 th IETF Annual Meeting MIPSHOP Working Group.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
TCP/IP Essentials A Lab-Based Approach Shivendra Panwar, Shiwen Mao Jeong-dong Ryoo, and Yihan Li Chapter 5 UDP and Its Applications.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
Packet Filtering Chapter 4. Learning Objectives Understand packets and packet filtering Understand approaches to packet filtering Set specific filtering.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
Networked & Distributed Systems TCP/IP Transport Layer Protocols UDP and TCP University of Glamorgan.
NSIS IETF 56 MONDAY, March 17, 2003: Morning Session TUESDAY, March 18, 2003: Afternoon Sessions I.
1 Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
NTLP Design Considerations draft-mcdonald-nsis-ntlp-considerations-00.txt NSIS Interim Meeting – Columbia University February 2003.
Telematics group University of Göttingen, Germany Overhead and Performance Study of the General Internet Signaling Transport (GIST) Protocol Xiaoming.
Geneva, Switzerland, 11 June 2012 Switching and routing in Future Network John Grant Nine Tiles
Chapter 81 Internet Protocol (IP) Our greatest glory is not in never failing, but in rising up every time we fail. - Ralph Waldo Emerson.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
NTLP Design Considerations draft-mcdonald-nsis-ntlp-considerations-00.txt NSIS Interim Meeting – Columbia University February 2003.
Data Communications and Networks
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
Introducing a New Concept in Networking Fluid Networking S. Wood Nov Copyright 2006 Modern Systems Research.
NSIS and Mobility Layer Split & Framework Issues Robert Hancock NSIS Interim Meeting – Columbia University February 2003.
Teacher:Quincy Wu Presented by: Ying-Neng Hseih
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
EE 122: Integrated Services Ion Stoica November 13, 2002.
IETF 55 Nov A Two-Level Architecture for Internet Signaling draft-braden-2level-signal-arch-01.txt Bob Braden, Bob Lindell USC Information.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
1 NSIS: A New Extensible IP Signaling Protocol Suite Myungchul Kim Tel:
The Transport Layer Implementation Services Functions Protocols
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
5. End-to-end protocols (part 1)
OSI Protocol Stack Given the post man exemple.
Understand the OSI Model Part 2
Transport Layer Unit 5.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Guide to TCP/IP Fourth Edition
Network Core and QoS.
Staged Refresh Timers for RSVP
The Design Space for NSIS Signaling Protocols
Building A Network: Cost Effective Resource Sharing
NTLP strawman draft-schulzrinne-gimps
Network Core and QoS.
Presentation transcript:

The Design Space for NSIS Signaling Protocols Henning Schulzrinne Columbia University NSIS working group interim meeting February 2003, New York City

Overview My NSIS assumptions “Transport” layer Peer node discovery

My NSIS model Want to support a variety of “signaling” applications –not just QoS  otherwise, why bother with 2-layer model? –path-associated state management –applications: manage data flows along path: NAT/firewall, QoS just along path: –active network code deposits –network property discovery (“traceroute-on-steroids”) –network property management (not just NATs/firewalls) –we are not designing all applications now, but should not lightly prevent future use Noel Chiappa: “the measure of a great architecture is one which meets requirements the designers didn't know about” bidirectional signaling support with equivalent functionality –NI  NR and NR  NI –possibly NE  NE

Finding NSIS peers The problem is not finding (all/some) NSIS elements –  service location problem (SLP, DNS, etc.) but rather finding the next NE on the data path to the NR implicit (send to destination) explicit active (by probing) passive (by observation) routing tables next-hop router directory (e.g., map next AS to NSIS node)

When to discover peers Can be triggered by NI or NE May not want it automatically –e.g., remove reservation – don’t want to be first on new path! –good to have separation of discovery and operation Options: –for every new NI-NR session including edge changes –for every application-layer refresh –requested by NI –when detecting a route change in the middle of the network NE cannot tell (directly) that route has changed “no more traffic for session 42!”

Next-node discovery Basic function, regardless of *-orientation generally, NI needs to establish state so that messages can flow in both directions –implicit assumption, could have unidirectional NI NE NR NI NE NR

Next-node discovery Next-node discovery probably causes operational distinction between path-coupled and path-decoupled path-coupled: –one of the routers downstream –unless every data packet is a signaling packet, always only guess at coupling! path-decoupled: –some server in next AS –anything else make (interdomain) sense?

Next-node discovery: path-coupled All discovery is approximate –some node could use any feature of the discovery packet to route it differently discovery = datadivergence causes constraints destination address load balancing source & destination address L4 load balancing? no signaling proxies (ICMP errors misdirected to data source) full 5-tuplepresence of router alert options? no signaling proxies how to disentangle at end system?

Peer discovery: RSVP style Forward messages (Path, PathTear) addressed to NR Backward messages (Resv*,PathErr) sent hop-by-hop Path messages: discovery + special application semantics NINE NR non NE Path Resv Ack

Peer node discovery: path-coupled With forward connection setup Only needed if next IP hop is not NSIS-aware Discovery messages: pure or application-enabled? NINE NR non NE discovery TP setup (if no existing assoc.) NSIS

Transport requirements Signaling transport users may require large data volumes: –active network code –signed objects (easily several kB long if self- contained; standard cert is ~5 kB) –objects with authentication tokens (OSP, …) –diagnostics accumulating data Signaling applications may have high rates: –DOS attacks –automated retry after reservation failure (“redial”) –odd routing (load balancing over backup link)

Lower and upper layers Do all nodes process all NSIS messages? “omnivorous”: –all messages, even unknown signaling protocols –e.g., firewalls –depends on what information is common common flow identification? “vegetarians”: –only things they know and can understand

Layering Some terminology confusion for NTLP – service vs. protocol –we’ll take protocol (and contradict framework…) –= functionality added to lower layer maybe ‘messaging layer’ is less overloaded NTLP peer discoveryNSLP2 reliable transport IPv4, IPv6 UDP ? NSLP1

Reliability Most signaling applications require that end systems have reasonable assurance that state was established –if it wasn’t important, why bother sending message to begin with ? –often, modestly time-critical: human factors  call setup latency economic  fast and reliable teardown RSVP discovered later  staged refresh timer (RFC 2961)

Reliability options (1) End-to-end retransmission –NI retransmits until confirmation by NR simple – only requires NI state deals with node failures  usually, no good RTT estimate  flying blind  doesn’t work well for NR-initiated messages  node processing (incl. AAA) adds delay variability  RTT very unpredictable Hop-by-hop below NTLP –share congestion state between sessions  better RTT estimate –re-use transport optimizations such as SACK –inappropriate services? –mandates explicit discovery (see later)

Reliability options (2) Hop-by-hop by NTLP per session can use implicit discovery –RFC 2916 –simple exponential back-off: no windowing, no SACK  bad for long-delay pipes –timer estimation difficult often few messages for one NSIS session must only have transport semantics Hop-by-hop by NSLP –diversity of needs vs. cost what does a feature cost if not used/needed? –what’s left for NTLP in that case?

Other transport issues MTU discovery –can change during session  may force end-to-end rediscovery –NSIS packet size can change during transit –not a problem if all messages are small (< 512 bytes?) Congestion control  prevent network overload –traffic burst for state synchronization –retry after failures Flow control  prevent NE overload –traffic burst for state synchronization Security association –needed for any channel security Message bundling –probably interesting mostly for small (optimistic refresh?) messages DOS prevention –need validated peer  never, ever send more than one message for each request!

Transport protocol options None  raw IP –limited to IPsec for NE-NE channel security –can’t send Path via IPsec: no idea what SA TCP –needs encapsulation (= one-word message length) –HOL blocking – waiting for old message –IPsec or TLS for channel security SCTP –easier end system diversity  relevant mostly for path de-coupled –avoids HOL blocking – but effect is very hard to actually observe (see upcoming IEEE Network article) DDP –future options, but “UDP + congestion control” may not be good fit TCP UDP raw IP  requires layering reliability on top of UDP  add complications (see SIP experience)

Transport (non-)issues “But xP is stateful and we want soft-state” –existence of transport association should not be coupled to NTLP or NSLP state lifetime –loss of transport does not signify anything (except maybe a reboot of the peer) –primarily an optimization issue: state maintenance vs. state establishment overhead Multicast –Each branch can have own transport session –In RSVP, only Path* are multicast End-to-end principle –not clear what the “ends” are here –each NE is not just forwarding, but processing and modifying messages –explicitly noted for performance enhancement Number of associations per node –limited by select(), but not poll()

Transport (non-)issues State overhead –information about next/previous hop has to be somewhere… Transport header overhead –most messages are likely >> 40 bytes Transport implementation overhead –Conceivable end systems and routers already implement IP, UDP, TCP TCP needed for DIAMETER, SNMP in routers TCP on any reasonable mobile device (HTTP, SMTP, POP, IMAP, …) –Less clear for SCTP

Identifiers Need identifiers for each logical association/session –know whether this path has been traversed before need discovery or not –pass to correct upper layer handler SIP lesson: do not overload identifiers

Identifiers should be… globally unique –otherwise, they’ll have to be combined with something else not depend on host addresses –NI and NR may change during session (mobility) –NAT and RFC 1918-uniqueness issues –RSVP SENDER_TEMPLATE and SESSION object  constrains applications hard to match (multiple formats) same session has different identifiers along a path  hard to manage probably not depend on globally unique host identifier (MAC) address constant length –easy to parse and compare cryptographically random –not sufficient for security, but often helps to prevent long-distance session stealing attacks –can often avoid a complicated hash function

Packet format issues Variations on type/length/value Type can be –externally described (RSVP) meaning (“destination address”, “flowspec”) format (IPv4 or IPv6) –internally described implied (DIAMETER) internal discriminator