CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 3: Switching Instructor: Rishab Nithyanand Teaching Assistant: Md. Kowsar Hossain 1
Rules of engagement: Recap • There should be no gaps in seating. • Ask and answer questions. • Avoid use of electronics in class. • Collaborate and be helpful. 2
You should… • Have found the course on Piazza • http://piazza.com/uiowa/fall2018/cs3640 • Have found and explored the class website • https://www.rishabn.com/cs3640-f18 • Have Python and Jupyter notebooks ready to go • Assignment 1 releasing this week (groups will be announced on Piazza) • Know and understand the three Internet design principles 3
This week in class 1. 2. 3. Recap: Design Circuit & packet Performance & principles switching delays 4
Recap: Layering Make the Internet modular and layered. Provide protocols for applications to use (HTTP, email, etc.) Provide (reliable) end-to-end delivery Provide best-effort global delivery Put bits on the medium Each layer only provides a service to the layer above it.
Recap: The end-to-end principle • Functionality should be implemented at the lower layer if and only if: • It can be implemented completely • It can be implemented correctly • It is not made redundant by a higher layer • We can make exceptions for performance optimizations. • As long as it does not add a burden to applications that do not need the functionality. • This is a principle, not a rule. • Violations exist on the Internet today. • Examples: Firewalls, proxies, and NATs. (We’ll get to them later in the term).
Recap: Fate-sharing • Store network state only in the entities that rely on this state. • This way critical state information is lost only when the entity that relies on it fails. • Simpler: Trust entities with a task only if they benefit from the successful completion of that task. 7
Recap: Building blocks of the Internet • End-hosts (all layers) • Users of the Internet • Can be clients or servers • Access networks (network + link layer) • Local Internet Service Providers (ISPs) • Facilitate end-user access to the network core. • Network core (network + link layer) • Regional and global ISPs • Establish connections with access networks around the world through connections with other networks 8
Recap: Encapsulation and packets Application Data Data Header Transport Network Data Header Header Data Header Header Header Link 9
This week in class 1. 2. 3. Recap: Design Circuit & packet Performance & principles switching delays 10
Recap: Access networks • Access networks connect end-hosts to the Internet infrastructure. • This is what your Internet Service Provider (ISP) does. They may provide cable, DSL, dial-up, or satellite access networks. Home network Enterprise network Mobile network Local ISP “A” Local ISP “B” Local ISP “C” 11
Access networks: What do they look like? • Who owns them? • A lot of the time, you know them primarily as phone or cable companies. • Why? • All three technologies use the same infrastructure (and it already exists)! • This is why you get “package deals”. 12
Access networks: Cable/DSL access technology Shared vs. point-to-point access - Cable: shared access - DSL: point-to-point access Reasons: historical. Impact: Misleading advertising of cable download speeds. 13
Recap: The network core • This is the core infrastructure of the Internet • The core is where your local ISP connects to other “larger” ISPs. The larger ISPs do the same. Eventually, we end up with a large hierarchical network of networks – the Internet. Home network Enterprise network Mobile network Local ISP Local ISP Local ISP Regional ISP Regional ISP Global ISP Global ISP
The network core: What should it look like? • This is where the magic happens. • Thousands of routers that enable scalability and connect billions of end-points with each other. Discuss: which one is better? 15
The network core: What should it look like? + Cheap. O(n) links + High resilience (limit: n-1) + Cheap. O(n) links + Capacity (1) - Capacity (1/n) - Capacity (1/n) - Expensive! O(n 2 ) links. - Resilience (limit: 1 link) - Resilience (limit: 1 link) Factors to consider • Resilience (#links that need to fail to fracture the network), • Cost (not too many links), and • Capacity (not too few links). 16
The network core: Finding a compromise with switches Routers vs. switches • Routers operate at the network layer (they make routing decisions) • Switches operate at the link layer (they put packets on the right wire) We use these terms interchangeably in the network core. Why? Modern Internet backbone switches come with network-layer functionality. Fully connected switches. - High resilience. S S Adding another layer above routers. - O(m 2 ) links. - (m/n) average capacity. S m (#switches) << n (#networks/routers) 17
Switching: How do we share a common link? Method 1: Make a reservation - Reserve the maximum bandwidth you will S S Src 1 Dst 1 need ahead of time. - Reservation-based sharing. S Src 2 Method 2: Just hope for the best Dst 2 - Just send packets when you have to. - On-demand sharing. Discuss: Which is better? Think about the end-to-end principle 18
Switching: How do we share a common link? Scenario: • Bandwidth of link: 30 Mbps. • Src 1 needs 15 Mbps at peak and Src 2 needs 15 Mbps at peak. They peak at different times. • Both sources can send at maximum rate regardless of method. Method 1: Make a reservation 15 Mbps - Reserve the maximum bandwidth you will need ahead of time. - Reservation-based sharing. 15 Mbps 15 Mbps Method 2: Just hope for the best - Just send packets when you have to. - On-demand sharing. 15 Mbps 19
Switching: How do we share a common link? Scenario: • Bandwidth of link: 25 Mbps. • Src 1 needs 15 Mbps at peak and Src 2 needs 15 Mbps at peak. They peak at different times. Method 1: Make a reservation 15 Mbps - If we allow peak rate reservation, we turn away Src 2 . - If we allow equal reservation, we underserve both sources (12.5Mbps capacity/15Mbps source). Results in lag (reliable transport) or high packet loss 15 Mbps (unreliable transport). 15 Mbps 15 Mbps 20
Switching: How do we share a common link? Scenario: • Bandwidth of link: 25 Mbps. • Src 1 needs 15 Mbps at peak and Src 2 needs 15 Mbps at peak. They peak at different times. Method 2: Hope for the best 15 Mbps - Everything works out just fine! 15 Mbps 15 Mbps 15 Mbps 21
Switching: How do we share a common link? Which is better? • Bursty applications prefer on-demand sharing. • (peak rate/avg rate) is high, less predictable. • Smooth applications prefer reservation-based sharing. • (peak rate/avg rate) is low, more predictable. • Discuss: Which one is better for the Web? Which one is better for phones? 15 Mbps 15 Mbps 15 Mbps 15 Mbps 15 Mbps 15 Mbps 15 Mbps 15 Mbps 22
Switching: How is reservation-based sharing implemented? Circuit Switching. • Phase I: Circuit request and establishment. • Each switch reserves the requested bandwidth and forwards the request to the next one. • Confirmation sent to source back via reserved bandwidth. • Phase II: Data transfer. • Phase III: Circuit teardown.
Switching: How is reservation-based sharing implemented? Circuit Switching. • Phase I: Circuit request and establishment. • Phase II: Data transfer. • Data transfer happens via established circuit. • Phase III: Circuit teardown.
Switching: How is reservation-based sharing implemented? Circuit Switching. • Phase I: Circuit request and establishment. • Phase II: Data transfer. • Phase III: Circuit teardown. • A teardown request is sent via the circuit. • After the confirmation is sent from the destination, each switch deletes the reservation.
Circuit switching: What does a “reservation” look like? • Time division multiplexing • Splitting time between each source. S 1 S 2 S 3 S 1 S 2 S 3 • Frequency division multiplexing • Split the link frequencies between each source. S 3 S 2 S 1 Where have you seen frequency division multiplexing before? Wi-Fi routers. 2.4GHz vs 5GHz. Trade-offs: The higher the frequency, the lower the range. The higher the frequency, the higher the bandwidth (more data/source or more sources). But if you have only a few devices, do you really need to spend more $$$ for a 5GHz router?
Performance and efficiency of circuit switching S S
Performance and efficiency of circuit switching S S
Performance and efficiency of circuit switching S S
Performance and efficiency of circuit switching: Why bursty traffic is bad S S
Performance and efficiency of circuit switching: The minimum cost (~2 RTTs) is high S S
Performance and efficiency of circuit switching: The cost of failure is high S 1 S 2 S 3
Recommend
More recommend