Difference between revisions of "Assignment: ARP"

From Embedded Xinu
Jump to navigation Jump to search
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[Category:Networking With Xinu]]
 
[[Category:Networking With Xinu]]
 +
The world is a jungle in general, and the networking game contributes many animals. -David C. Plummer [http://www.ietf.org/rfc/rfc826.txt ARP RFC]
 
= Overview =
 
= Overview =
 
This assignment is part of the [[Networking With Xinu]] track for professors that are [[Teaching With Xinu]] and it is intended to be completed in groups of two or three.
 
This assignment is part of the [[Networking With Xinu]] track for professors that are [[Teaching With Xinu]] and it is intended to be completed in groups of two or three.
Line 8: Line 9:
  
 
= Address Resolution Protocol =
 
= Address Resolution Protocol =
The [[wikipedia:Address Resolution Protocol|Address Resolution Protocol]] (ARP) assignment will have students implement the protocol within Embedded Xinu.  Upon completion of the implementation the students' versions of the implementation should be able to add and remove ARP table entries, have ARP entries time out and be removed.
+
Standard 37 of the [http://www.ietf.org/rfc/rfc5000.txt Internet Official Protocol Standards] is the [[wikipedia:Address Resolution Protocol|Address Resolution Protocol]] (ARP).  In this assignment students will build the Address Resolution Protocol into Embedded Xinu.   
 +
 
 +
Upon completion of the assignment the students' implementation should:
 +
 
 +
===== Required Assignment Parts =====
 +
* add and remove ARP table entries
 +
* send, receive and process ARP requests
 +
* have ARP entries time out and be removed
 +
* lookup MAC address from table (given an IP) and return it to help fill in packets before sending them
 +
===== Optional Assignment Parts =====
 +
* shell integration: add an ''arp'' command to the shell
 +
** options for: adding entry, removing entry, sending request and clearing the table
 +
 
 +
If you choose not to implement the optional assignment parts then placing test case code within the shell's 'test' command will allow you to run one or more tests on your implementation at run-time.  Optional portions to an assignment may be required portions of a later assignment.
  
 
== Student Outcomes ==
 
== Student Outcomes ==
 +
Upon completion of this assignment students should understand the key role this protocol plays in the overall networking architecture.  Each student should be able to understand what an Internet Protocol address is and how the protocol uses this address to acquire a MAC address for the network packet before it can proceed through the system and be sent out over the network.
 +
 +
== Potential References ==
 +
* [http://www.ietf.org/rfc/rfc826.txt Address Resolution Protocol - RFC]
 +
* [[wikipedia:Address Resolution Protocol | Address Resolution Protocol - Wiki Page]]

Latest revision as of 02:48, 19 December 2008

The world is a jungle in general, and the networking game contributes many animals. -David C. Plummer ARP RFC

Overview

This assignment is part of the Networking With Xinu track for professors that are Teaching With Xinu and it is intended to be completed in groups of two or three.

Preparation

A new tar-ball is provided with a solution to the previous assignment. If your solution is similar to the one presented, you may choose to continue on with it; but it is suggested that you untar the new project files in a fresh working directory:

   tar xvzf <tar-ball location>

Address Resolution Protocol

Standard 37 of the Internet Official Protocol Standards is the Address Resolution Protocol (ARP). In this assignment students will build the Address Resolution Protocol into Embedded Xinu.

Upon completion of the assignment the students' implementation should:

Required Assignment Parts
  • add and remove ARP table entries
  • send, receive and process ARP requests
  • have ARP entries time out and be removed
  • lookup MAC address from table (given an IP) and return it to help fill in packets before sending them
Optional Assignment Parts
  • shell integration: add an arp command to the shell
    • options for: adding entry, removing entry, sending request and clearing the table

If you choose not to implement the optional assignment parts then placing test case code within the shell's 'test' command will allow you to run one or more tests on your implementation at run-time. Optional portions to an assignment may be required portions of a later assignment.

Student Outcomes

Upon completion of this assignment students should understand the key role this protocol plays in the overall networking architecture. Each student should be able to understand what an Internet Protocol address is and how the protocol uses this address to acquire a MAC address for the network packet before it can proceed through the system and be sent out over the network.

Potential References