Presentation is loading. Please wait.

Presentation is loading. Please wait.

ECE Department: University of Massachusetts, Amherst ECE 354 Spring 2009 Lab 3: Transmitting and Receiving Ethernet Packets.

Similar presentations


Presentation on theme: "ECE Department: University of Massachusetts, Amherst ECE 354 Spring 2009 Lab 3: Transmitting and Receiving Ethernet Packets."— Presentation transcript:

1 ECE Department: University of Massachusetts, Amherst ECE 354 Spring 2009 Lab 3: Transmitting and Receiving Ethernet Packets

2 2 ECE 354 Big Picture Introduction  Transmit and Receive Ethernet packets between two DE2 boards  Implement the 5-layer Internet model  Primarily written in C code  Use a preexisting SOPC system from the DE2_NET project

3 3 ECE 354 Skills to learn  Understanding previously written code  Using a peripheral device: DM9000A chip  Connect to a device that you did not design: DM9000A Ethernet chip  Internet protocol stack

4 4 ECE 354 Additional Hardware  Two DE2 boards  Ethernet cable

5 5 ECE 354 Overview of Lab  Each group should specify the information in Layers 2 through 5 (Link, Network, Transport, and Application)  The payload should be 16 bits selected by 16 switches on the DE2 board and should be displayed on the LEDs of the other DE2 board  Only packets with the correct source MAC, IP, and port addresses should be allowed to update the LEDs  Each group should modify the DM9000A.H file so that the last byte of the MAC address matches their group number  Test protocol compliance by working with another group and using their MAC address as your destination MAC address and your own MAC as the source.

6 6 ECE 354 Overview of DE2_NET project  Sends a malformed broadcast Ethernet packet  Important files: hello_led.c, DM9000A.c, and DM9000A.h  Three functions to control DM9000A chip DM9000_init(); TransmitPacket(TXT, length); ReceivePacket(RXT, &length);  Copy the DE2_NET and fixpaths from the DE2 CD  Switch the workspace and select the directory that you saved DE2_NET in  If running two boards on the same computer, make two folders with each holding a copy of the DE2_NET project

7 7 ECE 354 The Internet protocol stack  Consists of 5 layers: Application, Transport, Network, Link, and Physical layer  A majority of you have learned about these layers in Computer Networking course

8 8 ECE 354 Layers you will use  Create an Application Layer (5) message by using the sixteen switches on the DE2 board  Encapsulate the message into segment at the Transport Layer (4)  Encapsulate the segment in a datagram at the Network Layer (3)  Encapsulate the datagram in a frame at the Link Layer (2)  The frame will be sent over the Physical Layer (1)

9 9 ECE 354 User Datagram Protocol (UDP) – Layer 4 (Transport Layer)  The Application Data will be encapsulated within a UDP segment  The Segment Header includes the Source Port, Destination Port, Length of Segment, and Checksum (2 bytes each, total of 8 bytes)  The Source and Destination Port numbers can be determined by the user, but the Length and Checksum will have to be calculated

10 10 ECE 354 The Network Layer (3) - IPv4  The Segment from the Transport Layer will be encapsulated within an IPv4 Datagram  Dominant network layer protocol on the internet  Data-oriented protocol to be used on a packet switched network, such as Ethernet  Note about Checksums: Begin by first setting the checksum field of the header to zero. Checksums involve the one’s compliment addition operation. In C take the one’s compliment of a number A by: unsigned int complimentA = ~A

11 11 ECE 354 IPv4 packet structure  Packet consists of two sections:  The parts of each section that you will use in the is lab are:  Version: IP packet version (4)  Header length (between 5 and 15)  Total Length (size of datagram) header and data  Identification: uniquely identifying fragments  Header checksum  Source and Destination address  Data

12 12 ECE 354 Link Layer (2) – Ethernet Frame  The Datagram from the Network Layer is encapsulated within an Ethernet Frame  The Destination and Source MAC addresses should be set to uniquely identify each DE2 board  Extra credit will be awarded if you perform CRC Checksum, otherwise set it to a value of zero

13 13 ECE 354 The Physical Layer (1)  Refers to the network hardware or physical cabling  Provides the means of transmitting raw bits  You can also use a loopback (included with kit) to send packets back your own board

14 14 ECE 354 What to demonstrate  Display data payload on the red binary LEDs  Display the number of packets transmitted on the seven segment display  Only packets with the correct source MAC address, IP address, and port address should be displayed

15 15 ECE 354 Where does this project lead?  The next Lab (number 4) will put Lab 2 and Lab 3 together  Implement a reliable system

16 16 ECE 354 References  The two documents located at DE2_System\Datasheets\Ethernet  DE2_NET project  Information about the Internet protocol stack can be found here: http://en.wikipedia.org/wiki/Main_Page http://www.google.com/

17 17 ECE 354 Comments and/or Questions


Download ppt "ECE Department: University of Massachusetts, Amherst ECE 354 Spring 2009 Lab 3: Transmitting and Receiving Ethernet Packets."

Similar presentations


Ads by Google