CS 268: Computer Networking - BNRGbnrg.eecs.berkeley.edu/~randy/Courses/CS268.F08/lectures/23... ·...

Preview:

Citation preview

1

CS 268: Computer Networking

L-23 Course Wrap-up

2

Goals and Objectives

•  Understand state-of-the-art in network protocols, architectures, and applications

•  Process of networking research •  Constraints and thought processes for

networking research •  Problem Formulation—Approach—Analysis—

Results •  Different from undergraduate networking

(EECS 122) •  i.e., training network programmers vs. training

network researchers

2

3

Class Topic Coverage

•  Little on physical and data link layer •  Little on undergraduate material

•  Supposedly you already know this, though some revisiting/overlap is unavoidable

•  Focus on the why, not the what

•  Focus on network-to-application layer •  We dealt with:

•  Protocol rules and algorithms, tradeoffs, rationale •  Routing, transport, DNS resolution, …

•  Network extensions and next generation architecture •  Wireless, mobile, sensor, …

4

Lecture Topics

Traditional •  Layering •  Internet architecture •  Routing (IP) •  Transport (TCP) •  Queue management

(FQ, RED) •  Naming (DNS)

Recent Topics •  Multicast •  Mobility/wireless •  Active networks •  QoS •  Network measurement •  Overlay networks •  P2P applications •  Datacenter networking

Italics topics on Quiz #2

3

5

What is the Objective of Networking?

•  Communication between applications on different computers

•  Must understand application needs/demands •  Traffic data rate, pattern (bursty or constant bit

rate), target (multipoint or single destination, mobile or fixed)

•  Delay and loss sensitivity •  Other application-support services

•  Overlays, Active Networks, Data-oriented, …

6

Back in the Old Days…

4

7

Packet Switching (Internet)

Packets

8

Packet Switching

•  Interleave packets from different sources •  Statistical multiplexing to use resources on demand •  Supports multiple applications types •  Accommodates bursty traffic via queues

•  Store and forward •  Packets are self contained units •  Can use alternate paths – reordering •  Effects of contention: congestion and delay

•  Semester readings on Fair Queuing, Router Design, Network Topology and Network Measurement

5

9

Internet[work]

Internet[work]

•  A collection of interconnected networks

•  Host: network endpoints (computer, PDA, light switch, …)

•  Router: node that connects networks

•  Internet vs. internet

10

Challenge

•  Many differences between networks •  Address formats •  Performance – bandwidth/latency •  Packet size •  Loss rate/pattern/handling •  Routing

•  How to translate between various network technologies? •  Gateways

6

Extensions to the Network

•  New kinds of networks within the Internet •  Mobile •  Wireless •  Sensor •  Delay Tolerant •  Content Distribution/Data Oriented Networks

•  Semester readings on Roofnet, Ad hoc and sensor net routing, DTNs, CDNs, DOT, etc.

11

12

How To Find Nodes?

Internet

Computer 1 Computer 2

Need naming and routing

7

13

Naming

What’s the IP address for www.cmu.edu?

It is 128.2.11.43

Translates human readable names to logical endpoints

Local DNS Server Computer 1

Extensions to the Network Architecture

•  Naming •  DNS as an Overlay Network •  Problems with Host-to-IP Address bindings •  Problems with Service-to-Host bindings •  Solutions based on the idea of an extra level of

indirection: flat identifiers plus resolution based on DHT lookup

•  Semester readings on DNS and on flat names and DHTs in the context of i3, DOA, etc.

14

8

15

Routing

R

R

R

R R H

H

H

H

R

R H

R

Routers send packet towards

destination

H: Hosts

R: Routers

Extensions to the Network Architecture

•  Forwarding •  Problems with Internet routing •  Beyond point-to-point routing: multicast,

mobility, alternative schemes and metrics for wireless/sensor nets, delay tolerant nets, etc.

•  Indirection schemes and intermediaries (“performance enhancing proxies”) to implement new forms of forwarding

•  Semester readings on Internet topology, multicast, wireless, i3, DTN, DOA, policy-aware switching, network measurement

16

9

17

Meeting Application Demands

•  Reliability •  Corruption •  Lost packets

•  Flow and congestion control •  Fragmentation •  In-order delivery •  Etc. …

18

What if the Data gets Corrupted?

Internet GET windex.html GET index.html

Solution: Add a checksum

Problem: Data Corruption

0,9 9 6,7,8 21 4,5 7 1,2,3 6 X

10

19

What if Network is Overloaded?

Problem: Network Overload

•  Short bursts: buffer •  What if buffer overflows?

•  Packets dropped •  Sender adjusts rate until load = resources “congestion control”

Solution: Buffering and Congestion Control

20

What if the Data gets Lost?

Internet GET index.html

Problem: Lost Data

Internet GET index.html

Solution: Timeout and Retransmit

GET index.html GET index.html

11

21

Problem: Packet size

Solution: Fragment data across packets

What if the Data Doesn’t Fit?

•  On Ethernet, max IP packet is 1.5kbytes •  Typical web page is 10kbytes

GET inde x.ht ml

GET index.html

22

Solution: Add Sequence Numbers

Problem: Out of Order

What if the Data is Out of Order?

GET x.ht inde ml

GET x.htindeml

GET index.html

ml 4 inde 2 x.ht 3 GET 1

12

23

Lots of Functions Needed

•  Link •  Multiplexing •  Routing •  Addressing/naming (locating peers) •  Reliability •  Flow control •  Fragmentation •  Etc. …

24

What is Layering?

•  Modular approach to network functionality •  Example:

Link hardware

Host-to-host connectivity

Application-to-application channels

Application

13

25

Protocols

•  Module in layered structure •  Set of rules governing communication

between network elements (applications, hosts, routers)

•  Protocols define: •  Interface to higher layers (API) •  Interface to peer

•  Format and order of messages •  Actions taken on receipt of a message

26

Layering Characteristics

•  Each layer relies on services from layer below and exports services to layer above

•  Interface defines interaction •  Hides implementation - layers can change

without disturbing other layers (black box)

14

Application-Oriented Networking

•  All kinds of new application-specific routing and transport layers •  Sensor network dissemination protocols •  Content distribution/data oriented networks •  Overlay networks •  Active networks •  Middleboxes/”Performance Enhancing Proxies”

•  Layering and E2E assumptions questioned and revised

27

Quo Vadis Networking?

•  GENI: new architecture for Next Generation •  New naming and forwarding as foundation •  Security and authenticity from first principles •  Experimentation in upper layers, e.g., DTN

•  Refocus from wide-area to local-area •  Unified telephony and data, wired/wireless •  Datacenters for web and batch parallel apps •  O(10,000) node DC and enterprise networks •  New addressing, transport opportunities

28

15

What Next?

•  Thursday, 4 December: Quiz #2 •  Friday, 12 December: Research Project

Poster Session -- 12-2 PM in Soda 6th Floor •  Poster more or less equivalent to 9 slide

research talk •  Remember the Heilmeyer Questions!

•  Monday, 15 December: 5 PM Project Reports •  Specification on the web, 10-20 pages

29

Recommended