15110 SUMMER SESSION ONE - 2013

Problem Set 10 - due Friday June 21 at 10:30AM in class

Reading Assignment

Read chapter 5 and Appendix A of the book Blown To Bits .

Instructions

Exercises

  1. (1.5 pts) In your own words, explain the principles of circuit switching and packet switching. Which is used on the Internet? Why?

  2. (1.5 pts) Using the original IPv4 addressing scheme, a computer at Carnegie Mellon University has the IP address 128.2.13.161 .

    1. What type of address is this: class A, class B, or class C? Why?

    2. Based on your answer from part (a), what is the common prefix for all computers from this organization (i.e. what numbers of the IP address would be the same for all computers at this organization), and what is the maximum number of computers that this specific organization can connect to the Internet at one time? Explain your answers.

  3. (1.5 pts) The Internet is based on a number of different communication protocols. Specifically, we saw that TCP/IP is used to send messages on the Internet from one device to another.

    1. What parts of the communication process is handled by IP (Internet Protocol)?

    2. What parts of the communication process is handled by TCP (Transmission Control Protocol)?

    3. Real Time Protocol (which streams voice/video data) is normally layered above UDP rather than TCP. What characteristics of TCP make it less desirable than UDP for streaming voice/video traffic?

  4. (2 pts) [NOTE: You may want to work through the OLI module for Encryption before attempting this problem.]

    Consider a public key encryption system using RSA encryption that starts with two prime numbers p = 97 and q = 233.

    1. Compute the public key pair (e, n) and the private key pair (d, n) for this system. Select the smallest value for e that will work, and then select the smallest value for d that will work given your value for e. Show your work.

    2. Consider the numerical message 15110 that is to be transmitted. What is the encrypted message that should be transmitted using this system? Show your work.

    3. Verify that the receiver can decode the message from part (b) using the private key pair. Show your work.

    You should use irb to help you with the large computations for this problem.

  5. (1 pt) Based on your reading in Blown To Bits, Appendix A, answer the following questions:

    1. If you have ten computers at home all connected to the Internet via your ISP, how many unique IP addresses do you get? Briefly explain how traffic is routed to each computer.

    2. Suppose an ISP company starts a service to sell music downloads. As part of this new venture, the company examines packets being sent to its users and slows down a user's connection if they detect packets from a competing music provider. Does this violate the principle of net neutrality? Why or why not?

  6. (1 pt) Based on your reading in Blown To Bits, Chapter 5, you learned that today's encryption methods allow anyone to encrypt email and other data securely before being sent. The U.S. Government was very concerned about this type of technology since terrorists could use it to communicate without revealing their messages. What did the U.S. Government try to do in the 1990s to control this situation, and why did they give up trying to regulate encryption technology in the 2000s, even after the attacks of 9-11?

  7. (1.5 pts) In a simulation for a solar system, there are n bodies that moving around. Due to the effects of gravity, each pair of bodies exerts a force on each other. To determine this effect, we need to compute the force between two bodies. The force between two bodies is proportional to the product of the mass of the two bodies divided by the square of the distance between the two bodies. One time step in this simulation consists of the computation of this force for all pairs of bodies and then the repositioning the bodies on the screen based on these force calculations. Note that the force between body A and body B is the same as the force between body B and body A, so this computation needs to be done only once, not twice.

    1. For a solar system with 9 bodies (the sun and eight planets), how many force computations need to be computer for one time step in this simulation?

    2. For a system with n bodies, how many force computations need to be computed per simulation time step as a function of n?

    3. Express the number of force computations in big O notation as a function of n.

    You can actually simulate a solar system using RubyLabs if you read through Chapter 11 in your textbook.