Lab 7 - IP Fragmentation and Reassembly

From SOFTICE

Jump to: navigation, search

Contents

Pedagogical Objectives

  • Introduce routing
  • Examine IP fragmentation in a routed network

Developed by:

Synopsis

Networks are frequently used to transmit data larger than the network's MTU (Maximum Transmission Unit). When this happens, the data must be fragmented (broken up) into segments small enough to fit into individual PDUs. Not all networks have the same MTU, nor do all layers of the OSI model on the same network. As a piece of data makes its way down the OSI model, it gets re-encapsulated, adding overhead. An OSI Model Layer 3 packet, for example, will have Layer 2 Ethernet headers added onto it before being transmitted over an Ethernet network as a frame.

For these reasons, data is sometimes fragmented more than once before it reaches its destination. Once the destination is reached, the fragmented data is reassembled.

[Solved]

Complete the following solved exercises, recording your findings, and the procedures used to obtain them in your log. By doing this, you may be able to obtain partial credit if you are unable to complete any of the exercises.

Note: Before disconnecting from SOFTICE, be sure to shut your virtual hosts down. This procedure is described in Exercise 1-3: Shutdown the Network. This must be done in order to conserve system resources on the SOFTICE cluster.

Solved 7-1: Setup Routing

Note: The following route commands will only remain in effect for as long as the hosts they are entered on are powered on. If you reboot or halt a host before completing this lab, its route commands will need to be reentered.

Image:Two_Locations.jpg

Setup routing between the server and client hosts on the Two Locations Network.

1. Build and startup a clean copy of the Two Locations Network:

mln build -f mln/mln_files/twoLocations.mln
mln start -p twoLocations

2. The server host only has one route to outside networks (via the tampa router), so tell it to use this router as its default gateway:

route add default gw 10.0.1.1

3. The client host also only has one route to outside networks (via the lakeland router), so tell it to use this router as its default gateway:

route add default gw 10.0.0.1

4. The tampa router is multi-homed. It has interfaces connecting it to both the lakeland router and the server host. This leaves only the network shared by the client host and lakeland router unreachable. Let's add a routing statement to correct this.

route add -net 10.0.0.0 netmask 255.255.255.0 gw 10.0.3.1


5. The lakeland router is multi-homed. It has interfaces connecting it to both the tampa router and the client host. This leaves only the network shared by the server host and tampa router unreachable. Let's add a routing statement to correct this.

route add -net 10.0.1.0 netmask 255.255.255.0 gw 10.0.3.2

[Exercises]

Image:Two_Locations.jpg

Complete the following exercises, recording your findings, and the procedures used to obtain them in your log. It is important that you complete Solved 7-1: Setup Routing before completing any of the below exercises so that the appropriate routes are configured.

Note: Before disconnecting from SOFTICE, be sure to shut your virtual hosts down. This procedure is described in Exercise 1-3: Shutdown the Network. This must be done in order to conserve system resources on the SOFTICE cluster.

Exercise 7-1: Verify Connectivity

Verify connectivity between all hosts on the Two Locations Network. In your own words, describe the latency difference in communications taking place between adjacent hosts versus hosts with intermediary routers.

Exercise 7-2: Find the Maximum Payload

PDUs have maximum payloads which define how much data they are able to transport. When a piece of data exceeds a PDU's maximum payload, it get fragmented into more than one PDU.

1. Start up tcpdump on the lakeland host, using the -xx flag. This will print all data that tcpdump intercepts onto the screen in hexadecimal.

tcpdump -xx

2. Read through ping's man page by running the man ping command on any of the Two Locations Network's hosts. Use this information and tcpdump's output to experimentally find the maximum payload of ICMP packets sent in the Two Locations Network.

Hint: As a starting point, try using a packet size of 4000 bytes.

Exercise 7-3: Find the MTU

Based on the information that you gathered in Exercise 7-2, determine the MTU of hosts in the Two Locations Network.

Exercise 7-4: MTU and Latency

Calculate the amount of time that it would take to transmit a packet with the MTU found in Exercise 7-3 from server to client over Fast Ethernet (100 megabit-per-second) links. Assume ideal circumstances (no other traffic on the network, no additional latency introduced by the hosts, no ARP lookups take place, the speed of light is a not factored in, etc).

Exercise 7-5: MTU and Latency

Repeat the calculations that you performed in Exercise 7-4, this time using 48 Kbps (kilobits per second) dial-up links. Based on your results, do you think dial-up links should use the same, or a different sized MTU? Explain your reasoning.

References

Personal tools