Skip to content

Instantly share code, notes, and snippets.

@hbrooks3
Created December 10, 2019 03:20
Show Gist options
  • Save hbrooks3/139fbbe36f4cabfef06abe8560e2552b to your computer and use it in GitHub Desktop.
Save hbrooks3/139fbbe36f4cabfef06abe8560e2552b to your computer and use it in GitHub Desktop.
CS640 Quiz 4 Study Guide
<title>e4-topics</title>

date: 2019-12-09


Exam 4 Topics

Covers lectures 21 - 25

First Pass

  • L21
  • L22
  • L23
  • L24
  • L25

Second Pass

  • L21
  • L22
  • L23
  • L24
  • L25

Fair Queuing (L21)

  • Goals
    • Congestion control
    • Good behaviors
    • Isolation across flows
  • Solution: Give each flow it’s own queue
    • Round-robin
  • Solution: Bit-by-bit round robin
  • Solution: Fair Queue
  • Solution: Deficit Round Robin (DRR)

Domain Name System (L22)

  • Goal: We want to assign human readable names to hosts
  • Naming Hosts
    • Processed right to left, with periods as seperators
    • cs.wisc.edu
    • Right most is TLD (Top Level Domain)
      • .com, .gov, .net
  • Domain Name Hierarchy
    • Example:
.
.com
.net
.edu
google.com
maps.google.com
scholar.google.com
wisc.edu
cs.wisc.edu
doit.wisc.edu
  • Zones
    • ICANN is top level
    • Name servers: very redundant to cover failures
  • DNS Records
    • 4 fields
    • name, type, value, TTL
    • name: domain name
    • type
      • A: Value is an IPv4 address
      • AAAA: Value is an IPv6 address
      • NS: Value is domain name for a DNS server that is responsible for the zone containing the DN
      • CNAME: Value is another domain name for a particular host
      • MX: Value is the domain name for a mail server that accepts messages for the DN
    • TTL: Specifies how long another DNS server can cache the record
  • Root NS
    • Contains records for all TLD name servers
  • Name Resolution
    • Algorithm
      • Start at root and keep asking more specific name servers until you get answer
    • Advanced Name Resolution
      • Can return different sets of records for the same query
      • Used for load balancing or geo-based server selection

HTTP (L23)

  • Requests
    • method
      • GET, PUT, DELETE, HEAD
    • “URL”
    • version
    • host
    • options
  • Response
    • version
    • status
    • content length
    • MIME
  • HTTP and TCP
    • Problems:
      • Too manny RTTs
      • Never enters steady TCP
    • Solution: HTTP 1.1
      • Pipeling and persistent connections
      • 1 tear down at end of session
      • Problem:
        • How do we have TCP SEQNO
        • Solution: Application-level framing
    • HTTP 2.0
      • “SPDY”
      • Adds PUSH

Peer-to-peer Networks

  • Use Cases
    • Software update distribution
    • HBO content distribution
    • File sharing
  • Questions
    • How do you join the network?
      • Through other peers?
    • How do you discover data or services?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment