CS 312 - Internet Concepts
Fall 2009: Tues/Thurs 11am-12:15pm, MGB 0129

Print - Admin

Announcements

Staff

  • Dr. Michele Weigle
  • mweigle at cs.odu.edu
  • E&CS 3214
  • Office Hours: MW 2:30-4pm
  • Grader: Hui Shi
  • hshi at cs.odu.edu

Schedule

Syllabus (pdf)

Useful Links

Mid-Term Study Guide

Notes:

  • Regarding terms, you should know the definitions and concepts well enough to be able to answer "compare and contrast", "fill-in-the-blank", and "definition matching" questions.
  • This is not meant to be an exhaustive list of possible questions for the exam. It is meant to give you a general idea of the possible types of questions that might be asked and an idea of the topics I think are most important.
  • You should also study homework questions and problems that we've discussed during lectures.

Mid-Term Format

  • 15 terms
  • 10 short-answer
  • 3 problems

Internet Applications

  • Terms:
    • phishing
    • spamming
    • computer virus
    • computer worm
    • Trojan horse
    • wiki
    • blog
  • What is one way to avoid spam?
  • Name one website you can use to check out hoaxes or urban legends.
  • How is a listserv different from a email distribution list that you setup in your mail reader?
  • What is the difference between true streaming and pseudo streaming?

Web Search and Access

  • Terms
    • deep crawling
    • fresh crawling
    • PageRank
    • Wayback Machine
  • What are the three main components of Google search?
  • What is '/robots.txt' and how can it be used?
  • How can a webpage author, not the website owner, control robots?
  • What file is used to specify the protection for a set of webpages?

Whirlwind Overview

  • Terms:
    • protocol
    • router
    • multiplexing
    • packet-switching
    • circuit-switching
    • out-of-band control vs. in-band control
    • push protocol vs. pull protocol
    • transmission delay
    • propagation delay
    • propagation speed
    • queuing delay
    • end-to-end delay
    • bandwidth-delay product
    • throughput
    • bottleneck link
  • Why would it be better to use packet-switching instead of message-switching (assuming that packets are much smaller than messages)?
  • What are 2 types of multiplexing in circuit switching?
  • What are the 5 TCP/IP protocol layers (in order)?
  • What are the 4 types of delay that a packet can encounter when traveling through a network? For a fixed path and fixed packet size, which are constant and which are variable?
  • What are three different transmission rates of Ethernet LANs?
  • Out of dial-up modems, cable modems, and DSL modems, which provide dedicated access?
  • What does it mean for a network to be store-and-forward?
  • What causes packet loss?
  • Given a set of links with different link speeds, indicate which is the bottleneck link.
  • Compute transmission delay given link speed and packet size.
  • Compute the propagation delay given propagation speed and physical distance.
  • Compute when bits of a packet arrive at the destination given link speed, propagation delay, and packet size.
  • Compute the bandwidth-delay product of a link given link speed and propagation delay.

Client-Server

  • Terms:
    • client
    • server
    • port
    • TCP
    • UDP
    • flow control
    • congestion control
  • What is the main difference between the operation of a client-server application and a peer-to-peer application?
  • What two elements are needed to address a communicating process?
  • What is the TCP 3-way handshake?
  • Do either of the Internet Transport Protocols (TCP, UDP) provide guaranteed delays or guaranteed bandwidth?

HTTP

  • Terms:
    • GET
    • HEAD
    • persistent connections
    • non-persistent connections
    • persistent connections with pipelining
    • HTTP/1.0
    • HTTP/1.1
    • browser cache
  • What is the default port used for HTTP servers?
  • Given a URL, identify the hostname and path.
  • Does HTTP use TCP or UDP? Why?
  • What is the typical application-level exchange for a HTTP/1.0 transfer?
  • What is the HTTP status code for a successful response?
  • What is the HTTP status code for a page that is not found?
  • How can a HTTP/1.0 transfer be made to use persistent connections?
  • Which are typically larger - HTTP requests or HTTP responses?
  • How does an HTTP client ask a server if a file has been modified?
  • Given a network topology, compute the total delay for a HTTP/1.0 request-response pair. Include all TCP-related operations (i.e., handshakes). Assume that the IP address is known.
  • List all TCP connections that would be needed to request a web page using HTTP/1.1 where the base page is at host1 and there are 3 embedded objects located at host1, host2, and host3, respectively.
  • Compute the minimum number of round-trip times (RTTs) needed to download all elements of a web page, given a network topology and number and size of embedded objects in the web page using non-persistent connections, persistent connections, and HTTP/1.1.

Securing the Web

  • Terms:
    • HTTPS
    • authentication
    • encryption
    • symmetric cryptography
    • asymmetric cryptography (or public-key cryptography)
    • certification authority
    • certificate
  • Decrypt a message using a simple Caesar cipher.
  • Explain how a Alice can digitally sign a message for Bob using public-key cryptography. The goal is for Bob to be sure that only Alice could have sent the message.
  • Why are trusted third parties, like certification authorities, necessary for public key cryptography?
  • How can you tell if a website is using the secure HTTP protocol, HTTPS?

FTP and Email

  • Terms:
    • user agent
    • mailbox
    • active FTP
    • passive FTP
  • How many connections are used simultaneously for correct FTP operation?
  • Does FTP offer persistent connections?
  • Is FTP secure (are messages sent in plain text)?
  • What does it mean that FTP uses out-of-band control?
  • When is SMTP used and when is POP used?
  • Why doesn't an email user agent directly contact the recipient's SMTP server?
  • Can a mail server be a client in SMTP?
  • Is SMTP secure (are messages sent in plain text)?
  • Can SMTP handle binary data (i.e., non-text)? If not, how are attachments sent?

DNS

  • Terms:
    • DNS
    • hostname
    • IP address
    • host aliasing
    • mail aliasing
    • recursive query
    • iterative query
    • TLD (top-level domain)
    • authoritative server
  • How can DNS be used for load distribution?
  • Why does it make sense for DNS to use UDP instead of TCP?
  • Does a typical DNS lookup a recursive query, iterative query, or some combination of both? Explain.
  • If a given hostname needs to be resolved, but the default name server has an empty cache, how many DNS requests will the default name server typically have to make before the address is resolved?
  • Why can't the root DNS servers store all of the hostname to IP address translations?
  • Given an example DNS name resolution that starts with an empty cache, show the contents of the cache after the name resolution has completed.
  • When does DNS name resolution occur (i.e., before a TCP connection starts or after)?
  • How does your local mail server use DNS to obtain the IP address of a remote mail server?
  • Explain why if DNS goes down, the Internet essentially goes down.