15-441: Computer Networking Lecture 26: Networking Future
Lecture 26: Overview Learning From Failures Changes in Various Layers New Services What Do I Work On?
Lecture 26: Learning From Failures Past failures Multicast QoS MobileIP
Lecture 26: Why Did They Fail? Scalability problems Incremental deployment Interfacing with applications/Building useful services Debugging problems Conservative network administrators
Lecture 26: What Can We Learn? Avoid same pitfalls Clever techniques Fair queuing, announce/suppress protocols, tunneling/encapsulation, etc.
Lecture 26: Overview Learning From Failures Changes in Various Layers New Services What Do I Work On?
Lecture 26: Link Layer Optical links Multiple wavelengths on a single fiber (WDM) MPLS applied to wavelengths MPλS No longer broadcast All optical networks No buffering!! How does this affect other protocols Mobile/wireless links
Lecture 26: Overlay Routing Basic idea: Treat multiple hops through IP network as one hop in overlay network Run routing protocol on overlay nodes Why? For performance – can run more clever protocol on overlay For efficiency – can make core routers very simple For functionality – can provide new features such as multicast, active processing, IPv6
Lecture 26: IP Multicast Key Architectural Decision: Add support for multicast in IP layer Berkeley Gatech Stanford CMU
Lecture 26: Overlay Multicast Stanford Overlay Tree CMU Stan-LAN Stan-Modem Berk2 Gatech Berk1 Berkeley Gatech Stan-LAN Stan-Modem Berk1 Berk2 CMU
Lecture 26: Overlay Challenges “Routers” no longer have complete knowledge about link they are responsible for How do you build efficient overlay Probably don’t want all N 2 links – which links to create? Without direct knowledge of underlying topology how to know what’s nearby and what is efficient?
Lecture 26: Congestion Control Is AIMD the right choice for everyone? What are the requirements on choices TCP- friendliness Non-linear controls Rate-based controls Fixing poor interaction with HTTP
Lecture 26: Denial of Service Objective of attack: make a service unusable, usually by overloading the server or network Example: SYN flooding attack Send SYN packets with bogus source address Server responds with SYNACK keeps state about TCP half-open connection Eventually server memory is exhausted with this state Solution: SYN cookies – make the SYNACK contents purely a function of SYN contents, therefore, it can be recomputed on reception of next ACK More recent attacks have used bandwidth floods How do we stop these?
Lecture 26: Bandwidth DoS Attacks Possible solutions Ingress filtering – examine packets to identify bogus source addresses Link testing – how routers either explicitly identify which hops are involved in attack or use controlled flooding and a network map to perturb attack traffic Logging – log packets at key routers and post-process to identify attacker’s path ICMP traceback – sample occasional packets and copy path info into special ICMP messages IP traceback
Lecture 26: Overview Learning From Failures Changes in Various Layers New Services What Do I Work On?
Lecture 26: Network Location Service Desirable to lookup performance between hosts Why? How to predict? Based on historical measurements Based on on-demand probing What exactly is performance? Bandwidth Delay Application response
Lecture 26: Services For Mobile Users Why? (Example) Mobile users are more likely to search for services near them Not well suited to administratively organized Internet systems Example Build a wide area service discovery that can support multiple search styles
Lecture 26: Overview Learning From Failures Changes in Various Layers New Services What Do I Work On?
Lecture 26: Three Project Areas Congestion Control Solving interaction between HTTP and TCP Using congestion control to implement QoS Mobile Networking Making protocols adapt to dynamic conditions Helping “ubiquitous” networks evolve Sensor networks Wide-Area Distributed Applications Tools to help developers build large distributed applications Overlay multicast