Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Can you draw FSM (Finite State Machine) diagram for network protocol 4? /* Protocol 4 (Sliding window) is bidirectional.*/ /* must be 1 for protocol

Can you draw FSM (Finite State Machine) diagram for network protocol 4?

image text in transcribedimage text in transcribed

/* Protocol 4 (Sliding window) is bidirectional.*/ /* must be 1 for protocol 4*/ #define MAX-SEQ 1 typedef enum (frame_arrival, cksum err, timeout event type; #include "protocol.h" void protocol4 (void) O or 1 only / O or 1 only*/ scratch variables seq nr next frame_to_send; seq nr frame_expected; frame r, s; packet buffer event type event; next-frame-to-send = 0 frame_expected 0; from_network_layer(&buffer); s.info buffer s.seq = next-frame-to-send; s.ack 1 -frame_expected; to_physical layer(&s); start timer(s.seq); while (true) ( /*current packet being sent*/ next frame on the outbound stream /* frame expected next*/ /* fetch a packet from the network layer/ /* prepare to send the initial frame/ /* insert sequence number into frame/ /* piggybacked ack */ /* transmit the frame/ /* start the timer running wait for event(&event); if (event frame_arrival) { * frame arrival, cksum_err, or timeout / /*a frame has arrived undamaged/ /* go get it/ /* handle inbound frame stream /*pass packet to network layer / /* invert seq number expected next*/ from-physical layer(&r); if (r.seq == frame-expected) { to_network layer(&r.info); inc(frame expected); if (r.acknext frame_to_send)/handle outbound frame stream/ stoptimer(r.ack); from_network layer(&buffer); inc(next frame to send); turn the timer off /* fetch new pkt from network layer/ /* invert sender's sequence number */ s.info buffer, s.seq - nextframe_to_send; s.ack 1 - frame_expected; to-physical layer(&s); start timer(s.seq); /* construct outbound frame/ /* insert sequence number into it*/ /* seq number of last received frame * *transmit a frame/ /* start the timer running Figure 3-16. A 1-bit sliding window protocol /* Protocol 4 (Sliding window) is bidirectional.*/ /* must be 1 for protocol 4*/ #define MAX-SEQ 1 typedef enum (frame_arrival, cksum err, timeout event type; #include "protocol.h" void protocol4 (void) O or 1 only / O or 1 only*/ scratch variables seq nr next frame_to_send; seq nr frame_expected; frame r, s; packet buffer event type event; next-frame-to-send = 0 frame_expected 0; from_network_layer(&buffer); s.info buffer s.seq = next-frame-to-send; s.ack 1 -frame_expected; to_physical layer(&s); start timer(s.seq); while (true) ( /*current packet being sent*/ next frame on the outbound stream /* frame expected next*/ /* fetch a packet from the network layer/ /* prepare to send the initial frame/ /* insert sequence number into frame/ /* piggybacked ack */ /* transmit the frame/ /* start the timer running wait for event(&event); if (event frame_arrival) { * frame arrival, cksum_err, or timeout / /*a frame has arrived undamaged/ /* go get it/ /* handle inbound frame stream /*pass packet to network layer / /* invert seq number expected next*/ from-physical layer(&r); if (r.seq == frame-expected) { to_network layer(&r.info); inc(frame expected); if (r.acknext frame_to_send)/handle outbound frame stream/ stoptimer(r.ack); from_network layer(&buffer); inc(next frame to send); turn the timer off /* fetch new pkt from network layer/ /* invert sender's sequence number */ s.info buffer, s.seq - nextframe_to_send; s.ack 1 - frame_expected; to-physical layer(&s); start timer(s.seq); /* construct outbound frame/ /* insert sequence number into it*/ /* seq number of last received frame * *transmit a frame/ /* start the timer running Figure 3-16. A 1-bit sliding window protocol

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions

Question

=+What virtue?

Answered: 1 week ago