logo Hurry, Grab up to 30% discount on the entire course
Order Now logo

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Lynette WhiteeGeneral article writing
(5/5)

545 Answers

Hire Me
expert
Isaac TorressCriminology
(5/5)

869 Answers

Hire Me
expert
Mitch BennLaw
(5/5)

923 Answers

Hire Me
expert
Garima ThakurFinance
(5/5)

654 Answers

Hire Me
Python Programming

you will be implementing a simple reliable transport protocol Host A will be sending segments, and Host B will be receiving and acknowledging those segments

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

Programming Assignment 02 – Implementing a Reliable Transport Protocol

For the second programming assignment you will be implementing a simple reliable transport protocol. The protocol will be unidirectional. Host A will be sending segments, and Host B will be receiving and acknowledging those segments, but Host B will not be sending any application data of its own. Host A is the sender, Host B is the receiver.

 

  1. First, read section 3.4.1 – "Building a Reliable Data Transfer Protocol" of Kurose and Ross, Computer Networking: A Top-Down Approach. You will be implementing the Alternating Bit protocol, which they call 0.
  2. Read the directions, descriptions, and suggestions in the attached assignment description from the textbook authors
  3. Examine the files prog2.c and prog2.py carefully. All of your code will be added to one of these files to fill in the function stubs. That is how you will implement 0 as a part of this network simulation program.
  4. You must implement the following functions in prog2.py or prog2.c, please read their descriptions in the assignment description
    1. A_init
    2. A_output
    3. A_input
    4. A_timerinterrupt
    5. B_init
    6. B_input
  5. Do not implement either B_output or B_timerinterrupt. Those functions are only required for a bi-directional version of the protocol. Please ignore these two function
  6. Your implementation should include some output to STDOUT describing events that occur and protocol actions that are taken during the simulation. For example, message arrival, packet arrival, timer interrupt, or data corruption detection, etc. should all be reported to STDOUT. In addition, describe the actions your functions take in response. For example, building a packet, sending a packet, retransmitting a message, restarting the timer, etc. Part of your submission will be a trace of your program—we need output for the
  7. Try running the simulation program first – to see what it looks like before you start adding your own
  8. Submit your source code, which should consist of a single file—your modified py or prog2.c
  9. Submit a README that briefly explains your strategy for implementing each of the functions required 0.
  10. Submit a trace of your completed program running to the point where about 10 messages have been sent and correctly acknowledged. Use the following settings: loss probability

Related Questions

. The fundamental operations of create, read, update, and delete (CRUD) in either Python or Java

CS 340 Milestone One Guidelines and Rubric  Overview: For this assignment, you will implement the fundamental operations of create, read, update,

. Develop a program to emulate a purchase transaction at a retail store. This  program will have two classes, a LineItem class and a Transaction class

Retail Transaction Programming Project  Project Requirements:  Develop a program to emulate a purchase transaction at a retail store. This

. The following program contains five errors. Identify the errors and fix them

7COM1028   Secure Systems Programming   Referral Coursework: Secure

. Accepts the following from a user: Item Name Item Quantity Item Price Allows the user to create a file to store the sales receipt contents

Create a GUI program that:Accepts the following from a user:Item NameItem QuantityItem PriceAllows the user to create a file to store the sales receip

. The final project will encompass developing a web service using a software stack and implementing an industry-standard interface. Regardless of whether you choose to pursue application development goals as a pure developer or as a software engineer

CS 340 Final Project Guidelines and Rubric  Overview The final project will encompass developing a web service using a software stack and impleme