introduction
Download
Skip this Video
Download Presentation
Introduction

Loading in 2 Seconds...

play fullscreen
1 / 16

Introduction - PowerPoint PPT Presentation


  • 65 Views
  • Uploaded on

Introduction. UIUC CS438: Communication Networks Summer 2014 Fred Douglas Slides: Fred, Kurose&Ross. Today’s Key Conecpts. Layering The end-to-end principle. Modularity based on abstraction is the way things get done -Barbara Liskov , popularized for networking by Scott Shenker.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Introduction' - judson


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
introduction

Introduction

UIUC CS438: Communication Networks

Summer 2014

Fred Douglas

Slides: Fred, Kurose&Ross

today s key conecpts
Today’s Key Conecpts
  • Layering
  • The end-to-end principle
slide3
Modularity based on abstraction is the way things get done-Barbara Liskov, popularized for networking by Scott Shenker
a nightmare scenario
A Nightmare Scenario
  • Goal: send “Hello” to cs.illinois.edu, receive “world!”
  • Look up IP address of cs.illinois.edu in hard coded /etc/hosts file, fail if not there
  • Find a path to cs.illinois.edu in your 100GB+, updated-every-second map of the whole internet
  • Encode the ASCII characters as electrical signals
  • Somehow handle data corruption between you and cs.illinois.edu
  • Somehow, you and a billion other conversations should avoid causing interference
network programming reality
Network Programming Reality*

serv = connect(“cs.illinois.edu”);

send(serv, “Hello“);

printf(receive(serv)); //prints “world!”

*The actual C sockets library is slightly uglier, sorry 

layers
Layers

Provides

Assumes

Any service the programmer wants to provide

- Logical channel

-Reliable?

-Uncongested?

Application

-Best-effort delivery of packets to any address in the world

-Channel to a partner

-Multiplexing

-Reliability (TCP)

-Congestion control (TCP)

Transport

(UDP)

TCP

MAGIC

-Best-effort delivery of packets to local addresses

-Best-effort delivery of packets to any address in the world

Routing

Network

IP(v4, v6)

-Ability to send bits to direct physical neighbors

-Best-effort delivery to local addresses

(-Medium Access Control: don’t talk over each other)

Link

Spanning tree, ARP, learning switches

Ethernet, 802.11

Sending bits to direct physical neighbors

Physical

what s the internet nuts and bolts view
What’s the Internet: “nuts and bolts” view

millions of connected computing devices:

hosts = end systems

running network apps

PC

server

wireless

laptop

smartphone

wireless

links

wired

links

router

mobile network

global ISP

home

network

  • communication links
    • fiber, copper, radio, satellite
    • transmission rate: bandwidth

regional ISP

  • Packet switches: forward packets (chunks of data)
    • routers and switches

institutional

network

fun internet appliances internet of things
Fun internet appliances (Internet of Things)

Web-enabled toaster +

weather forecaster

IP picture frame

http://www.ceiva.com/

Tweet-a-watt:

monitor energy use

Slingbox: watch,

control cable TV remotely

Internet

refrigerator

Internet phones

layering postscript
Layering Postscript
  • OSI model:
    • Application
    • Presentation
      • Hide complexities of data from the application, e.g., apply cryptography without involving the application
    • Session
      • Maintain conceptual “sessions”, because maybe end of connection != end of session
    • Transport
    • Network
    • Link
    • Physical
  • Why are these layers a historical footnote?
    • The end-to-end principle
end to end principle
End-to-end Principle
  • A sensible philosophy for system design
    • Do most things at the “end”
    • Let the “middle” do simple tasks well
  • Two motivations
    • If you want a job done right, do it yourself
      • Other components might not care
      • Other components might not be able to
if you want a job done right
If you want a job done right…
  • Spinach is grown, picked, packed, transported, and eaten. Who should ensure it’s clean?
  • Recyclable waste is generated, picked up, and transported to a processing facility. Who should separate out metal/glass/etc?
  • A political candidate instructs their staff to publicize a positive statistic from their time in a previous office. The staff does a press release, news organizations report it, and voters hear about it. Who should verify its truth?
  • File transfer: a lot of things can go wrong; the application itself should check the data.
end to end principle1
End-to-end Principle
  • A sensible philosophy for system design
    • Do most things at the “end”
    • Let the “middle” do simple tasks well
  • Two motivations
    • If you want a job done right, do it yourself
      • Other components might not care
      • Other components might not be able to
    • If I don’t want a job done at all, don’t do it for me
      • Unnecessary overhead
      • Might interfere with my operation
don t do things for me
Don’t do things for me
  • Skype doesn’t need reliability, and does NOT want reliability’s overhead
course roadmap
Course Roadmap
  • (week 1) Application
    • HTTP, DNS, email, FTP, client-server vs. peer-to-peer
  • (week 2-3) Transport (HTTP MP1 due end of week 2)
    • Multiplexing (“the 5-tuple”), reliable transport, congestion control
  • (week 4-7) Network & The Internet (TCP MP2 due end of week 6)
    • Routing protocols, routing implementations & hardware, IP address hierarchy, ISP/Autonomous System-level routing, AS economics
  • (week 8) Link
    • Learning switches, spanning tree, DHCP, ARP
  • (week 9)Physical (Routing MP3 due end of week 9)
    • MAC, error detection/correction, digital-analog encoding, basic properties of copper/fiber optics/wireless
  • (week 10) Misc. topics, review, wiggle room
    • Security, software defined networking, data centers, exotic alternative internet architectures
logistics
Logistics
  • On the website:
    • Link to Beej’s guide
      • Look through it tonight: we’ll discuss tomorrow
    • How to use svn
    • Standard MP Notes
      • How to use the autograder
      • Minor penalties for various details
      • Academic Honesty
    • Grading breakdown
    • Link to Piazza
  • Written homework (none yet)
  • MP1: due June 12th
  • 4th Hour Projects
4 th hour projects
4th Hour Projects
  • Groups ok, in proportion to amount of work
  • Interesting coding project, beyond MP
  • Network simulation (Mininet, ns-3)
  • Network deployment (Quagga)
  • Literature survey
  • Research
    • Internet economics, simulation
    • VPNs + anti-censorship, implementation
  • Please give me your proposed project by June 9th
  • Checkpoint in early July
ad