Stack Processing Algorithm for Go Back N protocol Team Members: Vinti (vv2236) Garvit Singh (gs2731) Pramod Nayak (ppn2106) Vidhatre Gathey (vvg2111)

Slides:



Advertisements
Similar presentations
Data Link Layer Protocols Flow Control in Data Link Layer.
Advertisements

Network Operations & administration CS 4592 Lecture 15 Instructor: Ibrahim Tariq.
Protocol Strategies.
Assume that a file is transferred from a node A to a node B. The file has been fragmented in 5 frames. Frame 0 is corrupted, the ACK of frame 1 is corrupted,
Go-Back-N Improve Stop-and-Wait by not waiting!
Chapter 11 Data Link Control
Flow and Error Control. Flow Control Flow control coordinates the amount of data that can be sent before receiving acknowledgement It is one of the most.
Data Link Layer Review Advanced Computer Networks.
Chapter 6 Errors, Error Detection, and Error Control.
Networks: Data Link Layer1 Data Link Layer. Networks: Data Link Layer2 Data Link Layer Provides a well-defined service interface to the network layer.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.
1 Comnet 2006 Communication Networks Recitation 8 ARQ Protocols & Performance.
Chapter 6: Errors, Error Detection, and Error Control
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Error Control.
Chapter 6 Errors, Error Detection, and Error Control
1 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
Composition Model and its code. bound:=bound+1.
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
Networking. Protocol Stack Generally speaking, sending an message is equivalent to copying a file from sender to receiver.
1 Reliable Data Transfer. 2 r Problem: Reliability  Want an abstraction of a reliable link even though packets can be corrupted or get lost r Solution:
Error Checking continued. Network Layers in Action Each layer in the OSI Model will add header information that pertains to that specific protocol. On.
Election Algorithms. Topics r Issues r Detecting Failures r Bully algorithm r Ring algorithm.
Lect11.ppt - 03/15/05 CDA 6505 Network Architecture and Client/Server Computing Lecture 11 Link-Level Flow and Error Control by Zornitza Genova Prodanoff.
Link-Level Flow and Error Control
ISO Layer Model Lecture 9 October 16, The Need for Protocols Multiple hardware platforms need to have the ability to communicate. Writing communications.
Principles of Reliable Data Transfer. Reliable Delivery Making sure that the packets sent by the sender are correctly and reliably received by the receiver.
LECTURE9 NET301. DYNAMIC MAC PROTOCOL: CONTENTION PROTOCOL Carrier Sense Multiple Access (CSMA): A protocol in which a node verifies the absence of other.
Data Link Control Protocols
ARQ Mechanisms Rudra Dutta ECE/CSC Fall 2010, Section 001, 601.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 11 Data Link Control Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
Chapter 12 Transmission Control Protocol (TCP)
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Chapter 5 Peer-to-Peer Protocols and Data Link Layer PART I: Peer-to-Peer Protocols ARQ Protocols and Reliable Data Transfer Flow Control.
1 Transport Layer Lecture 10 Imran Ahmed University of Management & Technology.
Error/Flow Control Modeling (ARQ Modeling). Modeling of Go Back N.
1 Chapter Six - Errors, Error Detection, and Error Control Chapter Six.
Data Communications & Computer Networks, Second Edition1 Chapter 6 Errors, Error Detection, and Error Control.
Probabilistic Verification of GBN Group Members: Lin Huang(lh2647), Yuechen Qin(yq2158), Xi Chen(xc2257), Runxi Zhou(rz2286), Shuang Zhang(sz2426) 04/08/2014.
Data Link and Flow Control Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific.
Error/Flow Control Modeling (ARQ Modeling). © Tallal Elshabrawy 2 Data Link Layer  Data Link Layer provides a service for Network Layer (transfer of.
Probabilistic Search Verification of the Go-Back-N Protocol Adeyemi Aladesawe Annjana Ramesh Lingxue Li Nanjun Lu.
Protocol Layering Chapter 11.
Data Link Layer Flow and Error Control. Flow Control Flow Control Flow Control Specifies the amount of data can be transmitted by sender before receiving.
CS/EE 145A Reliable Transmission over Unreliable Channel II Netlab.caltech.edu/course.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Principles of reliable data transfer 0.
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1.Flow Control and ARQ Protocols.
Probabilistic Verification Tong Wang tw2436 Yihan Zou yz2575 Hang Yin hy2368 Miaoqiong Wang mw2908 of Go-Back-N.
Formal Methods Project Design Yuanhui Luo yl3026, Ziwei Zhang zz2282, Yih-Nin Lai yl3030, Zhen Qiu zq2130.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Data Link Layer Part II – Sliding Window Protocols.
Formal Methods Project Design Yuanhui Luo yl3026, Ziwei Zhang zz2282, Yih-Nin Lai yl3030, Zhen Qiu zq2130.
DATA LINK CONTROL. DATA LINK LAYER RESPONSIBILTIES  FRAMING  ERROR CONTROL  FLOW CONTROL.
Computer Networking Lecture 16 – Reliable Transport.
NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS ( NET 222: COMMUNICATIONS AND NETWORKS FUNDAMENTALS (PRACTICAL PART) Tutorial 4 : Chapter 7 Data & computer.
Data Link Layer.
Chapter 3: The Data Link Layer –to achieve reliable, efficient communication between two physically connected machines. –Design issues: services interface.
Computer Communication & Networks
Data Link Layer Flow Control.
Part III Datalink Layer 10.
Chap. 4 Data link layer 2.
Instructor Mazhar Hussain
Flow Control.
Flow and Error Control.
Data Link Layer as a Reliable Data Transport Protocol
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Probabilistic Verification
Probabilistic Search Verification of the Go-Back-N Protocol
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Lecture 4 Peer-to-Peer Protocols and Data Link Layer
Error Checking continued
Presentation transcript:

Stack Processing Algorithm for Go Back N protocol Team Members: Vinti (vv2236) Garvit Singh (gs2731) Pramod Nayak (ppn2106) Vidhatre Gathey (vvg2111)

Contents Introduction: Go back N protocol Algorithm Software Modules Terminating Conditions Go Back N EFSM Assumptions

Go Back N protocol Allow multiple packets in transmission so that the line isn’t idle in networks with long delays Accept all packets in proper order If packet ‘i’ lost, Transmitter sends ‘i+1’ and receiver receives ‘i+1’ out of order and rejects it After time out, Transmitter must go back and retransmit the lost frame and subsequent frames

Stack Processing and Probabilistic Search Form probabilistic search tree, create a push down pop up Place state with lowest probability at the bottom of the stack At each new step, pop the top most sequence If a low probability event leads to this state, increase the probability by 1

Software Modules Modular approach used to develop the software for portability to any EFSM. Software verified using ARQ protocol first. EFSM states and transition saved in the header file. For a new protocol, only the header file needs to be updated. Implementation done in C++, class used to implement the stack.

Algorithm Flow Chart

Terminating Conditions Check for incorrect service sequence, if there is one, stop Check the probability of the top most element poped from the stack. P = pow(0.0001, probability.top()) If P < , stop

GBN EFSM

Probabilistic Search

Assumptions If the receiver receives a message it is not expecting, it does nothing Sender goes into state of failure if it receives Ack of a packet greater than the base+window_size. The number of retransmissions by sender after timeout is limited, once the limit is hit, it goes into a state of failure A simplified sequencing of the analysis has been considered

STOP STATES We have stopped further analysis when We reach a state that has already been considered. Often when we considered a message getting lost in the forward channel, in such cases transmitter and receiver won’t change their states and there will eventually be retransmission(after timeout). Thus we made such states as stopping states. We also made those states as stopping states after which were not considering any message/ack lost, thus there will be successful transmission of the messages after that, and no need to visit states beyond that as they will not result in failure.

FALLACIES(software) Hard coding the FSM instead of generating it in software. Strict stack implementation instead of array based stack with pointers for the top tuple. Using only one ID for message number (mod N). Instead, two IDs should have been used, one the actual message number and other the mod N ID.

Not an exhaustive search. Though we know we are right we the approach but exhaustive search was time consuming and we did not figure out how to automate the process. Only one initial state has been considered. i.e our probabilistic model is always starting with initial state. (0, 0, M 0, E) FALLACIES(GBN model)

Only two cases considered in probabilistic model: Tx time for 1 message = 1 side propagation delay Tx time for 2 message = 1 side propagation delay

FALLACIES(GBN model) Propagation delay in forward and reverse channel are the same Receiver and transmitter are functioning properly, only the channel is lossy. The state machines can function very differently if we consider sender and receiver with weird behaviors, say holding back for certain amount of time and the responding with Ack or sending message.

Thank You !