Docstoc

Communication

Document Sample
Communication Powered By Docstoc
					    The Networking
Philosopher’s Problem
        Jennifer Rexford
 Computer Science Department
      Princeton University

  http://www.cs.princeton.edu/~jrex
The Internet: An Exciting Time
• One of the most influential inventions
  –A research experiment that escaped from the lab
  –… to be a global communications infrastructure

• Ever wider reach
  –Today: 1.7 billion users
  –Tomorrow: more users, computers, sensors

• Near-constant innovation
  –Apps: Web, P2P, social networks, virtual worlds
  –Links: optics, WiFi, cellular, WiMax, …
                                                     2
So, why every two years, when I
  teach graduate networking,
   I have all sorts of angst...



                                  3
What is Networking?




                      4
A Plethora of Protocol Acronyms?
      SNMP          WAP
                                SIP                   IPX
                                         PPP                   MAC
 LLDP         FTP
                          UDP
                                  ICMP                               HIP
 OSPF        RTP                               IMAP         IGMP
                    BGP
PIM                             HTTP                          ECN
             RED                              ARP
                           IP                       TCP
 RIP                                   MPLS                        RTCP
               SMTP
                           RTSP               BFD           CIDR
 NNTP
                                       TLS      NAT
                SACK                                               STUN
        DNS                 SSH
                                                            DHCP
                   VLAN                 VTP
 POP                            LISP            TFTP                LDP
                                                                           5
A Heap of Header Formats?




                            6
TCP/IP Header Formats in Lego




                                7
A Big Bunch of Boxes?

                 Label            Load
  Router                                                        Switch
                Switched         balancer
                 Router                        Scrubber
                                                                 Repeater
      Gateway
                         Intrusion        Bridge
                                                          Route
   Deep                  Detection                       Reflector
  Packet                  System
Inspection
                                         DHCP
                                         server              Packet
              Firewall
                                                             shaper
    NAT                      Hub
                                               Packet
                                               sniffer
   WAN               DNS
                                      Base                   Proxy
accelerator         server
                                     station
                                                                            8
A Ton of Tools?

 arpwatch                                           tcpdump
                     syslog
                                                                   wget
                                         nslookup
        traceroute
                                                                trat
                                 snort
 nmap
                         whois                      ipconfig
        rancid
                                         ntop
              net-snmp                                                 bro
  dig                         ping
                                                        iperf

        NDT                              wireshark
                  dummynet                                        mrtg
                                                                             9
What Do Peers in Other Fields Say?
• “You networking people are very curious. You
  really love your artifacts.”
• “In my college networking class I fell asleep at the
  start of the semester when the IP header was on
  the screen, and woke up at the end of the
  semester with the TCP header on the screen.”
• “Networking is all details and no principles.”




            Is networking “just the (arti)facts”?        10
An Application Domain?




                         11
Application Domain for Theory?
• Algorithms and data structures
• Control theory
• Queuing theory
• Optimization theory
• Game theory and mechanism design
• Formal methods
• Information theory
• Cryptography
• Programming languages
• Graph theory                       12
Application Domain for Systems?
• Distributed systems
• Operating systems
• Computer architecture
• Software engineering
•…




                                  13
An Exercise in Entrepreneurship?
• Identify a need or desirable capability
  – Whether previously known or not

• Invent a new feature or system that provides it
• Determine how it fits in the existing network
• Build and/or evaluate your solution
• Pitch or $ell the problem and solution to others
  – Whether to investors or a program committee

• Bask in glory, or lick your wounds

                                                     14
What Peers in Other Fields Say?
• “Networking papers are strange. They have a lot of text.”
• “What are the top ten classic problems in networking? I
  would like to solve one of them and submit a paper to
  SIGCOMM.” After hearing that we don't have such a list:
  "Then how do you consider networking a discipline?”
• “So, these networking research people today aren't doing
  theory, and yet they aren't the people who brought us the
  Internet. What exactly are they doing?”
• “Networking is an opportunistic discipline.”



    Is networking a problem domain or a scholarly discipline?   15
 What Do We Teach
Networking Students?




                       16
How Practitioners Learn Networking
• Certification courses
  – On how to configure specific pieces of equipment




• “On the job” training
  – Aka “trial by fire”
                                                       17
How Colleges Teach Networking
• Undergraduates: how the Internet works
• Graduates: read the 20 “best” papers
• Few general principles, little “hands-on”
  experience
“There is a tendency in our field to believe that everything we
currently use is a paragon of engineering, rather than a snapshot of
our understanding at the time. We build great myths of spin about
how what we have done is the only way to do it to the point that our
universities now teach the flaws to students (and professors and
textbook authors) who don't know better.” -- John Day




• (I’m as guilty as anyone)                                        18
Now That I’ve Bummed You Out…

        Or, Why Should You
         Stay in This Field?



                                19
So, Why is Networking Cool?
• Tangible, relates to reality
  – Can measure/build things (we do “love our artifacts”)
  – Can truly effect far-reaching change in the real world

• Inherently interdisciplinary
  – Well-motivated problems + rigorous solution techniques
  – Interplay with policy, economics, and social science

• Widely-read papers
  – Many of the most cited papers in CS are in networking
  – Congestion control, distributed hash tables, resource
    reservation, self-similar traffic, multimedia protocols,…
  – Three of top-ten CS authors (Shenker, Jacobson, Floyd)
  – So, somebody is interested in reading this stuff…        20
So, Why is Networking Cool? (Cont)
• Young, relatively immature field
  – Great if you like to make order out of chaos
  – Tremendous intellectual progress is still needed
  – You can help decide what networking really is

• Defining the problem is a big part of the challenge
  – Recognizing a need, formulating a well-defined problem
  – … is at least as important as solving the problem…

• Lots of platforms for building your ideas
  – Programmability: Click, OpenFlow/NOX, NetFPGA
  – Routing software: Quagga, XORP, and Bird
  – Testbeds: Emulab, PlanetLab, Orbit, GENI, …
  – Measurements: RouteViews, traceroute, Internet2, …       21
But, That Doesn’t Say What
   Networking Really Is




                             22
Maybe networking is defined
more by the questions we ask,
 than the techniques we use




                                23
Decomposition of Function
• How to
  – Design and operate components and protocols
  – That can be used and combined in many ways
  – To do many things

• Definition and placement of function
  – What to do, and where to do it

• The “division of labor”
  – Between the host, network, and management systems
  – Across multiple concurrent protocols and mechanisms

• How do we know if we got it right?
  – Soul searching? A proof or analysis? A prototype?
                                                          24
Today’s Divisions of Labor
• End host and the network
  – Packet switching
                                         network
  – Best-effort delivery
  – Fixed end-points with
    IP addresses



• Protocol layers                        Applications

  – IP as the center of the universe      UDP TCP
  – IP above the link layer
  – IP below transport and application
                                          Data Link
                                          Physical
                                                        25
Today’s Divisions of Labor
• Network elements
  – Data plane: packets
  – Control plane: events
  – Management: policies

• Administrative domains
  – Autonomous Systems
  – Destination IP prefixes
  – Policy-based path-vector routing

                   “d: path (2,1)”       “d: path (1)”
        3                            2                   1
                   data traffic          data traffic
                                                         d   26
Beyond Today’s Division of Labor




                                   27
Between Hosts and the Network
• Networked services hosted in data centers
  – Web sites, social networks, video streaming, online
    gaming, virtual worlds, ...
  – Replicated on servers in multiple data centers
  – Churn from mobile users, migrating VMs, failures, …

• Time to rethink                     data centers
  – Naming and addressing       ..                   ..
  – Early vs. late binding     servers
  – Server and network
    load balancing                       Internet
  – End-host network stack
    and socket API
                                          clients
 Between Network and Management
  • Smart management,     • Dumb management,
    dumb network            smart network
                           – Network elements talk
measure         control      amongst themselves
                           – Adapting automatically
Between Administrative Domains
                     Evolvable Protocols
                 (under-specified, programmable)




                                 ?
        Autonomy                      Global Properties
  (autonomous parties, with      (stability, scalability, reliability,
different economic objectives)      security, managability, …)

     Can we have all three? Under what conditions?
Conclusion
• Networking is cool
  – Real, important problems
  – Opportunities for impact
  – Inherently interdisciplinary

• But the field is immature
  – More of a “domain” than a “discipline”
  – Still searching for its intellectual center

• Please help!
  – Master a discipline and apply it to networking
  – Define what the networking “discipline” really is

                                                        31
Random Advice on Being an
 Effective Graduate Student

       http://www.freedom-to-
  tinker.com/blog/jrex/advice-new-
          graduate-students


                                     32

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:10
posted:10/10/2011
language:English
pages:32