Top Banner
1 Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ EE122 Fall 2011 Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues at Princeton and UC Berkeley
38

Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Feb 24, 2016

Download

Documents

kyna

Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ. EE122 Fall 2011 Scott Shenker http:// inst.eecs.berkeley.edu /~ee122/ Materials with thanks to Jennifer Rexford, Ion Stoica , Vern Paxson and other colleagues at Princeton and UC Berkeley. Announcements. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

1

Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

EE122 Fall 2011

Scott Shenkerhttp://inst.eecs.berkeley.edu/~ee122/

Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxsonand other colleagues at Princeton and UC Berkeley

Page 2: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Announcements• Congratulations: You all got 100% on HW4

– Worksheet will provide practice

• This is last week of sections– See posting about additional office hours next week

• Next week will have office hours during class times– Will work through problems on work sheet– Be there or be square….

• Wednesday’s Review: will figure something out….2

Page 3: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Today’s Lecture: Dim Sum of Design• Wireless review• Multicast• Packet Scheduling• Peer-to-peer

3

Page 4: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

4

Wireless Review

Page 5: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

History• MACA proposal: basis for RTS/CTS in lecture

– Contention is at receiver, but CS detects sender!– Replace carrier sense with RTS/CTS

• MACAW paper: extended and altered approach– Implications of data ACKing– Introducing DS in exchange: RTS-CTS-DS-Data-ACK

o Shut up when hear DS or CTS– Other clever but unused extensions for fairness, etc.

• 802.11: uses carrier sense and RTS/CTS– RTS/CTS often turned off, just use carrier sense– When RTS/CTS turned on, shut up when hear either– RTS/CTS augments carrier sense

5

Page 6: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

What Will Be on the Final?• General awareness of wireless (lecture)

• Reasoning about a given protocol– If we used the following algorithm, what would happen?

• You are not expected to know which algorithm to use; we will tell you explicitly.

6

Page 7: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

7

Multicast

Page 8: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Motivating Example: Internet Radio• Internet concert

– More than 100,000 simultaneous online listeners– Could we do this with parallel unicast streams?

• Bandwidth usage– If each stream was 1Mbps, concert requires > 100Gbps

• Coordination– Hard to keep track of each listener as they come and go

• Multicast addresses both problems…. 8

Page 9: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

9

Unicast approach does not scale…

BackboneISP

BroadcastCenter

Page 10: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

10

Instead build data replication trees

BackboneISP

BroadcastCenter

• Copy data at routers• At most one copy of a data packet per link

• LANs implement link layer multicast by broadcasting

• Routers keep track of groups in real-time• Routers compute trees and forward packets along them

Page 11: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

11

Multicast Service Model

• Receivers join multicast group identified by a multicast address G• Sender(s) send data to address G• Network routes data to each of the receivers

• Note: multicast is both a delivery and a rendezvous mechanism– Senders don’t know list of receivers– For many purposes, the latter is more important than the former

R0 joins GR1 joins G

Rn joins G

S

R0

R1

.

.

.

[G, data]

[G, data][G, data]

[G, data]

Rn

Net

Page 12: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

12

Multicast and Layering• Multicast can be implemented at different layers

– link layero e.g. Ethernet multicast

– network layero e.g. IP multicast

– application layero e.g. End system multicast

• Each layer has advantages and disadvantages– Link: easy to implement, limited scope– IP: global scope, efficient, but hard to deploy– Application: less efficient, easier to deploy [not covered]

Page 13: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

13

Multicast Implementation Issues• How is join implemented?

• How is send implemented?

• How much state is kept and who keeps it?

Page 14: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Link Layer Multicast• Join group at multicast address G

– NIC normally only listens for packets sent to unicast address A and broadcast address B

– After being instructed to join group G, NIC also listens for packets sent to multicast address G

• Send to group G– Packet is flooded on all LAN segments, like broadcast

• Scalability:– State: Only host NICs keep state about who has joined– Bandwidth: Requires broadcast on all LAN segments

• Limitation: just over single LAN14

Page 15: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

15

Network Layer (IP) Multicast• Performs inter-network multicast routing

– Relies on link layer multicast for intra-network routing

• Portion of IP address space reserved for multicast– 228 addresses for entire Internet

• Open group membership– Anyone can join (sends IGMP message)

o Internet Group Management Protocol– Privacy preserved at application layer (encryption)

• Anyone can send to group– Even nonmembers

Page 16: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

How Would YOU Design this?• 5 Minutes….

16

Page 17: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

17

IP Multicast Routing• Intra-domain (know the basics here)

– Source Specific Tree: Distance Vector Multicast Routing Protocol (DVRMP)

– Shared Tree: Core Based Tree (CBT)

• Inter-domain [not covered]– Protocol Independent Multicast – Single Source Multicast

Page 18: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

18

Distance Vector Multicast Routing Protocol• Elegant extension to DV routing

– Using reverse paths!

• Use shortest path DV routes to determine if link is on the source-rooted spanning tree– See whiteboard…..

• Three steps in developing DVRMP– Reverse Path Flooding– Reverse Path Broadcasting– Truncated Reverse Path Broadcasting (pruning)

Page 19: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

19

Reverse Path Flooding (RPF)If incoming link is shortest path to source• Send on all links except incoming• Otherwise, drop

Issues: (fixed with RPB)• Some links (LANs) may receive multiple copies• Every link receives each multicast packet

s:2

s

s:1

s:3

s:2

s:3

r

Page 20: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

20

Other Problems• Flooding can cause a given packet to be sent

multiple times over the same link

• Solution: Reverse Path Broadcasting

x y

z

S

a

b

duplicate packet

Page 21: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

21

Reverse Path Broadcasting (RPB)

x y

z

S

a

b

5 6

child link of xfor S

forward onlyto child link

Parent of z on reverse path

• Choose single parent for each link along reverse shortest path to source

• Only parent forwards to child link

• Identifying parent links– Distance– Lower address as tie-

breaker

Page 22: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Even after fixing this, not done• This is still a broadcast algorithm – the traffic goes

everywhere • Need to “Prune” the tree when there are subtrees

with no group members• Networks know they have members based on

IGMP messages• Add the notion of “leaf” nodes in tree

– They start the pruning process

22

Page 23: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

23

Pruning Details• Prune (Source,Group) at leaf if no members

– Send Non-Membership Report (NMR) up tree

• If all children of router R send NMR, prune (S,G)– Propagate prune for (S,G) to parent R

• On timeout: – Prune dropped– Flow is reinstated– Down stream routers re-prune

• Note: a soft-state approach

Page 24: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

24

Distance Vector Multicast Scaling• State requirements:

– O(Sources Groups) active state

• How to get better scaling?– Hierarchical Multicast– Core-based Trees

Page 25: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Core-Based Trees (CBT)• Pick “rendevouz point” for the group (called core)• Build tree from all members to that core

– Shared tree

• More scalable:– Reduces routing table state from O(S x G) to O(G)

25

Page 26: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

26

Use Shared Tree for Delivery

• Group members: M1, M2, M3• M1 sends data root

M1

M2 M3

control (join) messagesdata

Page 27: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

27

Barriers to Multicast• Hard to change IP

– Multicast means changes to IP– Details of multicast were very hard to get right

• Not always consistent with ISP economic model– Charging done at edge, but single packet from edge can

explode into millions of packets within network

Page 28: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

28

Packet Scheduling

Page 29: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

29

Scheduling• Decide when and what packet to send on output link• Classifier partitions incoming traffic into flows • In some designs, each flow has their own FIFO queue

1

2

Scheduler

flow 1

flow 2

flow n

Classifier

Buffer management

Page 30: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

30

Packet Scheduling: FIFO• What if scheduler uses one first-in first-out queue?

– Simple to implement– But everyone gets the same service

• Example: two kinds of traffic– Video conferencing needs low bandwidth and low delay

o E.g., 1 Mbps and 100 msec delay– E-mail not sensitive to delay, but need bandwidth

• Cannot admit much e-mail traffic– Since it will interfere with the video conference traffic

Page 31: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

31

Packet Scheduling: Strict Priority• Strict priority

– Multiple levels of priority– Always transmit high-priority traffic, when present– .. and force the lower priority traffic to wait

• Isolation for the high-priority traffic– Almost like it has a dedicated link– Except for the (small) delay for packet transmission

o High-priority packet arrives during transmission of low-priorityo Router completes sending the low-priority traffic first

Page 32: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

32

Scheduling: Weighted Fairness• Limitations of strict priority

– Lower priority queues may starve for long periods– … even if the high-priority traffic can afford to wait– Traffic still competes inside each priority queue

• Weighted fair scheduling– Assign each queue a fraction of the link bandwidth– Rotate across the queues on a small time scale– Send extra traffic from one queue if others are idle

50% red, 25% blue, 25% green

Page 33: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

Max-Min Fairness• Given a set of bandwidth demands ri and a total

bandwidth C, the max-min bandwidth allocations are:

ai = min(f, ri)

• where f is the unique value such that Sum(ai) = C

• Property:– If you don’t get full demand, no one gets more than you

33

Page 34: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

34

Computing Max-Min Fairness

• Denote– C – link capacity– N – number of flows– ri – arrival rate

• Max-min fair rate computation:1. compute C/N (= the remaining fair share)2. if there are flows i such that ri ≤ C/N

then update C and N

and go to 1 3. if not, f = C/N; terminate

Page 35: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

35

Example• C = 10; r1 = 8, r2 = 6, r3 = 2; N = 3

• C/3 = 3.33 – Can service all of r3

– Remove r3 from the accounting: C = C – r3 = 8; N = 2

• C/2 = 4 – Can’t service all of r1 or r2

– So hold them to the remaining fair share: f = 4

862

442

f = 4: min(8, 4) = 4 min(6, 4) = 4 min(2, 4) = 2

10

Page 36: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

36

Fair Queuing (FQ)• Conceptually, computes when each bit in the

queue should be transmitted to attain max-min fairness (a “fluid flow system” approach)

• Then serve packets in the order of the transmission time of their last bits

• Allocates bandwidth in a max-min fairly

Page 37: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

37

Example

1 2 3 4 5

1 2 3 4

1 23

1 24

3 45

5 6

1 2 1 3 2 3 4 4

5 6

55 6

Flow 1(arrival traffic)

Flow 2(arrival traffic)

Servicein fluid flow

system

Packetsystem

time

time

time

time

Page 38: Networking Acronym Smorgasbord: 802.11, DVMRP, CBT, WFQ

38

Fair Queuing (FQ)• Provides isolation:

– Misbehaving flow can’t impair others– Could change congestion control paradigm

o But not used….

• Doesn’t “solve” congestion by itself:– Still need to deal with individual queues filling up

• Generalized to Weighted Fair Queuing (WFQ)– Can give preferences to classes of flows– Used for quality of service (QoS)

o Allocations to aggregates