Coder Social home page Coder Social logo

go-back-n-arq's Introduction

Data Communications (CO250): Mini-Project

Title:
More accurate throughput efficiency for the Go Back-N ARQ protocol

Members:

Tarun Anand - 16CO147 - [email protected]

Archit Pandey - 16CO153 - [email protected]

Mrigank Shah - 16CO230 - [email protected]

Abstract:

The throughput efficiency is measured by the formula

            n' = p/[p+m(1-p)]  

Where n' represents throughput efficiency under interference of random transmission errors, m is the round trip delay and p is the probability of successful block transmission.
However this formula does not take into account the fact that burst errors are the most common means of transmission errors.
This project aims to simulate the working of the Go Back N protocol in real world conditions and aim to generate a more accurate formula for throughput efficiency.

Objectives:

  • Progress - Implementing the go back n arq protocol using ns2
  • Date - 01/04/2018-
    Realized that ns2 not perfect language for implementation
    Switched to Matlab for further progress-
  • Progress - Implementing protocol using matlab
  • Simulate realistic transmission errors
  • Improve upon current throughput formula

References:
C. H. C. Leung, Y. Kikumoto and S. A. Sorensen, "The throughput efficiency of the go-back-N ARQ scheme under Markov and related error structures," in IEEE Transactions on Communications, vol. 36, no. 2, pp. 231-234, Feb 1988.

File Structure

  • INTRODUCTION.md - Explains theoretical aspects of the mini project
  • DESIGN.md - Explains design aspects of the mini project
  • matlab/src - folder containing source file for our project
  • matlab/img - folder containg screenshots of matlab implementations
  • ns2/ - basic simulation scripts in ns2

Screenshots

Image showing matlab implementation

Image showing matlab gaph

Current Progress

  • Learnt how to implement a simple Stop-And-Wait protocol in NS2.
  • Implemented a simple Go-Back-N protocol simulation.
  • Changed to Matlab implementation.
  • Completion of protocol and its visualisation in Matlab.

Model we've used :

We've simulated a simple markov channel for testing purpose in Matlab. The probability that the next packet transmitted has an error depends on how many of the previous packets had an error.

Testing the model

Testing script outputs The probability that the next packet has an error is 28% when no previous packet had an error. With each packet with an error, the next packet's probability of having an error goes up by 5%.

Final graph

Final Graph

go-back-n-arq's People

Contributors

archit-p avatar mrigankshah avatar tr0nand avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.