Fill This Form To Receive Instant Help

Help in Homework
trustpilot ratings
google ratings


Homework answers / question archive / i want you to choose one of these protocol to implement + layer and extension : SOAp Pimple Service Discovery Protocol , TCAP, Universal Plug and Play , DHCP , DNS , NFS , SNMP , FTP , NTP ,IRC , Telnet , SSH , TFTP

i want you to choose one of these protocol to implement + layer and extension : SOAp Pimple Service Discovery Protocol , TCAP, Universal Plug and Play , DHCP , DNS , NFS , SNMP , FTP , NTP ,IRC , Telnet , SSH , TFTP

Computer Science

i want you to choose one of these protocol to implement + layer and extension : SOAp Pimple Service Discovery Protocol , TCAP, Universal Plug and Play , DHCP , DNS , NFS , SNMP , FTP , NTP ,IRC , Telnet , SSH , TFTP . Can you tell me which (protocol + Layer + Extension) will be easier to implement ? you free to choose but i want the Easier with Easier code .

Advanced Computer Networks - Semester 1 of 5781 Assignment 3

Directions

A. Protocol proposals due by: 7 Jaunary 2021 at 11:55 pm B. Implementation due date: 24 Jaunary 2021 at 11:55 pm

  1. You may work in groups of up to 3 students on standard sized protocols. Especially large protocols may be done in groups of 4 students with instructor approval. The assignment code may be submitted either via Moodle or via GitHub.

Moodle If submitting via Moodle, each member of the group must turn in a ZIP file that contains

 

the following elements. Students who do not submit a copy of the work will not be given a grade for the assignment, even if their names appear in the submission of another student. The submission must contain the following items:

Full source code for the submission, including any additional libraries necessary for the code to be compiled.

Executable JAR or EXE files of the program runnable on any Windows 10 or Linux Mint computer, along with any required configuration files. The executable must be runnable by just clicking on it.

A README file (e.g. README.txt, README.pdf) for each part of the assignment with the following sections:

    1. A list of the students in the group, including names and ID numbers
    2. A list of how many hours were spent on each part of the assignment
    3. Instructions for compiling the source code

User Guide and Testing Report (see §3 below)

GitHub If submitting via GitHub, you must use the private repository opened by the instructor for the assignment. The repository must contain the following items in the master branch:

A final commit with the words “Submitted for grading” in the commit comment.

Full source code for the submission, including any additional libraries necessary for the code to be compiled.

Executable JAR or EXE files of the program runnable on any Windows 10 or Linux Mint computer, along with any required configuration files. The executable must be runnable by just clicking on it.

A README file (e.g. README.txt, README.pdf) for each part of the assignment with the following sections:

    1. A list of the students in the group, including names and ID numbers
    2. A list of how many hours were spent on each part of the assignment
    3. Instructions for compiling the source code User Guide and Testing Report (see §3 below)
  1. Submissions missing one or more of the above or not following the above instructions will be penalized 5 points.

 

General Requirements

  1. The tool below can be written using a GUI or command line facility. You must design the input style based on the requirements for each part.
  2. Ensure there are no unhandled exceptions for the tool. Any tool which has unhandled exceptions will be penalized five (5) points each.
  3. Do not hard code in any file names, network addresses, or resource names. Any tool which has hardcoded file names, network addresses, or resource names and which are therefore not runnable on my computer will be penalized ten (10) points each.
  4. The tool must be runnable from my Windows 10 computer or a Linux Mint virtual machine without any recompilation or modification of source code.

Advanced Computer Networks Semester 1 of 5781

 

Assignment

3

Page

3

of

4

Published:

30

December

2020

Due:

24

Jaunary

2021

at

11:55

pm

 

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.

1          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.

School of Engineering, Kinneret College on the Sea of Galilee

Advanced Computer Networks Semester 1 of 5781

 

Assignment

3

Page

4

of

4

Published:

30

December

2020

Due:

24

Jaunary

2021

at

11:55

pm

 

2          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.
  4. They allow the user to configure the performance of the protocol (for those protocols that have configurable parameters).

Since the above will vary widely based on the protocol and layer chosen, the student team must consult with me after protocol approval to discuss what the program will do.

3          Step 3: Documentation

You must document your program and code with the following elements:

  1. All code must be commented. Each data structure/function/method/class/object/script must have dedicated comments that explain what the element does, what parameters it receives, and what it returns.
  2. Create an illustrated user guide to explain how the program works and how it can be config-

 

ured/operated.

  1. Create a testing report that shows tests performed on the program to show its functionality, inter-

 

action with reference implementations, and fulfillment of the applicable standards.

Submit the user guide and testing report in DOCX, PDF, or MD formats with your project code.

4          Grading Guide

The grade for the assignment will be assessed as follows:

  1. Protocol coverage completeness: 30 %
  2. Program technical robustness and flexibility: 30 %
  3. Interoperability with other implementations: 15 %
  4. Report and documentation: 25 %

Teams that successfully tackle large technical challenges or produce exceptional results will be awarded up to a 10% bonus on the assignment.

School of Engineering, Kinneret College on the Sea of Galilee

Option 1

Low Cost Option
Download this past answer in few clicks

100 USD

PURCHASE SOLUTION

Already member?


Option 2

Custom new solution created by our subject matter experts

GET A QUOTE

Related Questions