Highlights
Network Protocol Implementation
We have studied many networking protocols in class. Some were at Layer 2, some at Layer 3, and some at Layer 7 of the standard OSI model. Each protocol serves a particular purpose and is used in different circumstances. Many of the protocols that we studied have reference implementations found in routers and computers worldwide. In this assignment, you will implement a protocol on your own. I don’t expect results as mature and streamlined as ones in reference or commercial implementations, but by writing your own version of a protocol stack you will gain experience in handling networking tasks, reading and understanding
protocol standards, and dealing with packet creation and parsing.
Step 1: Selecting a protocol
Your first step will be to select a protocol to implement. You can choose from any of the protocols studied in the course (RIP, OSPF, BGP, EGP, MPLS, RED, FQ, WFQ, RSVP, DIFFSERV, IGMP, PIM-DM, PIM-SM, DVMRP, MSDP, HTTP, ESMTP, IMAP, SNMP) or propose the use of another one. If you choose another protocol, it must be an open protocol standardized by a well-known internet standardization body (e.g. IEFT, IESG, OSI, OASIS). Protocols fully implemented in class as part of recitation will not be acceptable without significant additions.
1.1 Layers and Use of Libraries
You must write the code that handles all of the processing for the protocol at the layer you choose, but not at the layers below it. You may not use prepared libraries for handling tasks at the protocol layer you chose, but you may use libraries for tasks at layers below. This means that the choice of protocol layer will strongly affect the type of work you must do for the assignment. Choose carefully and ensure you have the programming tools and libraries available to implement everything required. Some examples:
1. You choose to implement IGMPv3. Since IGMP runs directly on top of IP, you may use prepared IP processing libraries (i.e. raw IP sockets). You must implement all of the IGMP packet creation and parsing logic yourself; you may not use prepared IGMP processing libraries.
2. You choose to implement IMAP. Since IMAP runs directly on top of TCP, you may use prepared TCP processing libraries (i.e. regular TCP sockets). You must implement all of the IMAP message creation and parsing logic yourself; you may not use prepared IMAP processing libraries.
1.2 Protocol Extensions and Options
Some protocols (e.g. ESMTP, PIM-SM) have many options and extensions, far more than can be reasonably implemented by a student team. For such protocols, you may choose to implement the base protocol and a few extensions.
Consideration will be given for the technical difficulty in implementing the protocol. For instance, a protocol that requires the creation and processing of raw packets (a larger technical effort) will justify the implementation of fewer extensions. A protocol that requires less technical effort will need to implement more extensions.
1.3 Requesting and Approval
Submit your team members, chosen protocol, and chosen extensions for approval via Moodle before beginning to work. If the team believes the protocol and extensions will require an extremely large amount of effort, they may request to have 4 members on the team. No more than 1 team will be allowed to work on each protocol chosen. If multiple teams request the same protocol, preference will be given to the team who requested first.
Step 2: Implementation
Build a program or programs that send and receive messages in the chosen protocol in the language of your choosing. Implementing some protocols will be easier on Linux than in Windows (i.e. those that need access to raw IP or Ethernet sockets), so choose the development and testing platforms carefully. For protocols with client and server functionality, you must implement both the client and the server sides.
The program or programs you write for the protocol must have the following properties:
1. They follow the format and communication techniques specified by the protocol standard(s).
2. They can interact successfully with reference or commercial implementations of the protocol.
3. They allow the user to test and observe the performance of the protocol graphically or via text/logfile output.
This IT Assignment has been solved by our IT experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+ Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style.
Be it a used or new solution, the quality of the work submitted by our assignment experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.
© Copyright 2026 My Uni Papers – Student Hustle Made Hassle Free. All rights reserved.