Institute of Computer Technology - Vienna University of Technology. L02 - Protocol Principles

Size: px
Start display at page:

Download "Institute of Computer Technology - Vienna University of Technology. L02 - Protocol Principles"

Transcription

1 Protocol Principles Layering, CL versus CO Service, ARQ Techniques, Sequence umbers, Windowing, Flow Control Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 Page -

2 Line Protocols line protocols regulate and control communication between two devices over pointto-point line basic elements frame synchronization frame protection error detection usually implemented in hardware optional elements connection and line management error recovery flow control usually implemented in software Protocol Principles, v4.8 3 Two Important Principles for Data Communication Layering Structuring the complex task of data communication into smaller pieces by usage of layers A layer is built by the resources of the corresponding protocol peer entities and by the protocol procedures performed between them protocol standards define fields of the control field of a frame (bits seen on the wire) and the communication behavior of the peers receiving and sending frames A layer is using the services of the lower layers to provide a enhanced service to the upper layer The application layer can access the lower layer (the protocol stack) via API (application programming interface) The communication layer can access the lower layer via network-card driver Connectionless versus connection-oriented service Protocol Principles, v4.8 4 Page -

3 3 Layer Model Computer A Computer B OS OS application software application software communication software line protocol logical relationship between peers communication software communication hardware Tmt_A Rcv_A physical wires for transmit and receive signal reference Rcv_B Tmt_B communication hardware Protocol Principles, v4.8 5 Software Aspects application software uses the communication software (normally part of an operating system, OS) in order to exchange data mailbox and queueing techniques allow cooperation of application and communication software within a computer system the communication software uses a line protocol for peer to peer communication virtual communication relationship on a given layer hides the details of line protocols and other related tasks from the application software procedural approach Protocol Principles, v4.8 6 Page - 3

4 Cooperation of Software Layers if information has to be transmitted from A to B the application SW of device A forwards some data blocks to the communication SW the communication SW transmits the data using the communication hardware and the line protocol the communication SW of device B receives the data and forwards it to the application SW that means, the communication SW provides a service for the application SW this service can be connection-less or connection-oriented Protocol Principles, v4.8 7 Connectionless Service (Com-SW) Station A like packet or telegram service of a PTT Station B Datagram's transmission of data Datagram's no error recovery of corrupted frames Protocol Principles, v4.8 8 Page - 4

5 Line Protocol Services - CL Connection-Less (CL) - type of service communication SW uses only basic elements (frame synchronization, frame protection, error detection) to transmit data blocks transmission errors causes receiver to discard data blocks best effort service no special frame types are necessary to implement this protocol strategy low implementation requirements for communication SW but error recovery (correction of errors) must be done by application Protocol Principles, v4.8 9 Phases with Connection-Oriented Service Station A like telephone call of Telecom Station B Connection Request Connection Acknowledgement connection establishment DATA transmission of data Disconnection Request Disconnected Acknowledgment error recovery of corrupted frames is possible by usage of ARQ techniques clearing of connection Protocol Principles, v4.8 Page - 5

6 Line Protocol Services - CO Connection-Oriented (CO) - type of service a communication channel must be established before data blocks can be transmitted logical connection transmission errors will be detected and corrected by the communication SW using feedback error control retransmission of corrupted data blocks Automatic Repeat request (ARQ) method reliable transmission service for application SW error recovery done by communication SW special frame types are necessary (connect, disconnect) more sophisticated communication SW is necessary in order to implement ARQ strategy Protocol Principles, v4.8 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 Page - 6

7 ARQ Techniques Overview Connection-oriented service allows error recovery by usage of feedback error control ARQ (Automatic Repeat Request) techniques Receiver acknowledges correct receipt of data frame Idle-RQ Easy to implement (few resources necessary) but inefficient concerning usage of bandwidth in case of full-duplex line Continous-RQ Several methods» Selective ACK (e.g. TCP optional SACK procedure)» GoBack (e.g. HDLC basic REJ procedure)» Positive Acknowledgement (e.g. TCP basic procedure)» Selective Reject (HDLC optional SREJ procedure) More complex to implement (much more resources necessary), more efficient concerning usage of bandwidth in case of full-duplex line Protocol Principles, v4.8 3 Idle-RQ versus Continuous-RQ Data Idle-RQ Data Continuous-RQ Ack Data Acks Data and Acks are sent continuously!! Ack Data Ack half duplex protocol full duplex protocol Protocol Principles, v4.8 4 Page - 7

8 ARQ Variants Idle-RQ Continuous-RQ Selective ACK (SACK) GoBack Positive ACK Selective Reject (SREJ) Protocol Principles, v4.8 5 ARQ Principle correct receipt of each transmitted data frame is acknowledged by the receiver special control message (ACK) in opposite direction each data frame transmitted is stored in a retransmission buffer until receipt of corresponding acknowledgement if acknowledgement is not received, data frame will be retransmitted after a out identifiers (, +,...) are necessary to mark the sequence of data frames and to recognize duplicate frames Protocol Principles, v4.8 6 Page - 8

9 ecessary Resources for Com-SW Layer OS Computer A application software communication software Protocol State Machine Retransmission List Receive List Timers Control Variables Queues / Mailboxes for operating API OS Computer B application software communication software communication hardware Tmt_A Rcv_A signal reference Rcv_B Tmt_B communication hardware Protocol Principles, v4.8 7 ecessary Resources for Com-SW Layer (cont.) OS Computer A application software communication software Frame Types: Connect request / ack Disconnect request / ack I, ACK, ACK, SREJ Identifiers line protocol OS Computer B application software communication software communication hardware Tmt_A Rcv_A signal reference Rcv_B Tmt_B communication hardware Protocol Principles, v4.8 8 Page - 9

10 Generic Frame Format frame header frame trailer payload SYC SD Control DATA FCS ED control information = line protocol header checksum Frame Type Field: Connect Request, I, ACK, ACK, Identifier Field:, +, Protocol Principles, v4.8 9 Idle-RQ and Continuous-RQ Facts Idle-RQ old and slow method but small code and only little resources necessary even today used e.g. TFTP (Trivial File Transfer Protocol) half duplex protocol Continuous-RQ requires dramatically more resources than Idle-RQ or connectionless protocols!!! Retransmission Timers Retransmission Buffers Receive Buffers might result in high CPU loads!!! full duplex protocol Protocol Principles, v4.8 Page -

11 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 Idle-RQ simple ARQ implementation stop & wait protocol device waits for the acknowledgement (ACK) before sending the next data frame basic method can be improved by ACK two identifiers are necessary (, ) distinction between new data frame or duplicate frame numbering of data frames modulo half duplex protocol full duplex lines can not be efficiently used Protocol Principles, v4.8 Page -

12 Basic Sequence of Idle-RQ response S + retransmission buffer I () ACK () I (+) ACK (+) D + receive buffer S Source of I () D Destination I () I () Information Frame containing Data ACK () Acknowledgment Frame Protocol Principles, v4.8 3 Idle-RQ Retransmission o Ack? Retransmission! S out I () I () ACK () D Protocol Principles, v4.8 4 Page -

13 Idle-RQ Retransmission o Ack? Retransmission! S out I () ACK () I () ACK () D recognition of duplicate frame Protocol Principles, v4.8 5 Idle-RQ Retransmission with optional ACK ACK () ot Acknowledgment Frame S I () ACK () I () ACK () D Protocol Principles, v4.8 6 Page - 3

14 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 7 Continuous-RQ in order to use full duplex lines more efficiently, device does not wait for acknowledgements for frames already sent Continuous Repeat request (C-RQ) protocols full duplex protocol until receipt of acknowledgments, data frames are buffered in a retransmission list each incoming acknowledgment removes the corresponding data frame from that list receiver stores data frames in receive list to detect duplicates to reorder the sequence Protocol Principles, v4.8 8 Page - 4

15 Sequence of Continuous-RQ S I () + I (+) + + I (+) I (+3) ACK () ACK (+) ACK (+) ACK (+3) retransmission list (FIFO) D receive list (FIFO) S Source of I () D Destination I () Protocol Principles, v4.8 9 Error Control Variants with Continuous-RQ several methods for error control based on selective acknowledgement selective retransmission done implicitly order of frames is not maintained by the procedure e.g. TCP (Transmission Control Protocol) SACK option based on multiple and negative acknowledgement also known as GoBack order of frames is maintained by the procedure e.g. HDLC (High Level Data Link Control) check pointing technique and REJ option e.g. DDCMP (Digital Data Link Control Management Protocol) Protocol Principles, v4.8 3 Page - 5

16 Error Control Variants with Continuous-RQ several methods for error control (cont.) based on out and positive acknowledgement order of frames is not maintained by the procedure e.g. TCP s original procedure (early TCP) note: today's TCP uses additionally duplicate ACK s to signal the rate of frames leaving the network to the sender based on selective reject selective retransmission done explicitly order of frames is not maintained by the procedure e.g. HDLC s SREJ option Protocol Principles, v4.8 3 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 3 Page - 6

17 Selective Acknowledgement principle every data frame is exclusively confirmed if acknowledgment is not received, corresponding data frame will be sent again and stored at the end of the retransmission list in case of retransmission data frames may not remain in sequence (scenario ) receiver must recognize duplicate frames and discard them (scenario ) each transmitted data frame starts an individual r which will be reset, if acknowledgement is received if out occurs data frame is sent once again (scenario 3) Protocol Principles, v Selective Acknowledgement ACK (+) triggers implicitly retransmission of I (+) at S S I () I (+) I (+) I (+3) ACK () ACK (+) ACK (+3) I (+) ACK (+) D reordering of frames necessary Protocol Principles, v Page - 7

18 Selective Acknowledgement ACK (+) triggers implicitly retransmission of I (+) at S S I () + I (+) + + I (+) I (+3) ACK () ACK (+) ACK (+) ACK (+3) I (+) ACK (+) D recognition of duplicate frames Protocol Principles, v Selective Acknowledgement 3 out for frame + S I () I (+) ACK () ACK (+) I (+) ACK (+) D + + recognition of duplicate frames Protocol Principles, v Page - 8

19 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v GoBack principle in case of errors, all data frames since will be requested again by ACK() (egative Ack.) all following frames are discarded by receiver until frame with correct sequence number arrives reordering is not necessary in this case SW at receiver could be kept more simple a single acknowledgments could confirm multiple data frames (multiple acknowledgement) often use to spare number of Ack s in opposite direction each transmitted data frame starts an individual r which will be reset, if acknowledgement is received if out occurs data frame is sent once again (scenario 3) Protocol Principles, v Page - 9

20 GoBack S I () + I (+) + + I (+) I (+3) ACK () ACK (+) I (+) I (+)... ACK (+) D I(+) and I(+3) are skipped at D!!! + reordering of frames not necessary Protocol Principles, v GoBack ACK (+) acknowledges all frames up to I (+) at S -> multiple acknowledgment S I () + I (+) + + I (+) I (+3) ACK () ACK (+) ACK (+) ACK (+3) D Protocol Principles, v4.8 4 Page -

21 GoBack 3 out for frame + S I () I ( +) ACK () I ( +) ACK (+) D + Protocol Principles, v4.8 4 GoBack 4 out for frame S I () + I (+) ACK () + I () + I (+)... ACK () D I(+) is skipped at D!!! Protocol Principles, v4.8 4 Page -

22 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v Positive Acknowledgement principle data frames will be confirmed as long as frames arrives in sequence multiple acknowledgement can be used by receiver if data frames get out of sequence, confirmation is stopped nevertheless, all following data frames will be stored each transmitted data frame starts an individual r which will be reset, if acknowledgement is received if out occurs data frame is sent once again (scenario ) data frames which are already stored in the receiver can be confirmed with multiple acknowledgements when missing data frame arrives (scenario ) Protocol Principles, v Page -

23 Positive Acknowledgement out for frame + S I () I (+) I (+) I (+3) ACK () I (+) ACK (+3) D reordering of frames necessary Protocol Principles, v Positive Acknowledgement ACK (+) acknowledges all frames up to I (+) at S -> multiple acknowledgment S I () + I (+) + + I (+) I (+3) ACK () ACK (+) ACK (+) ACK (+3) D Protocol Principles, v Page - 3

24 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v Selective Reject principle data frames will be confirmed as long as frames arrives in sequence multiple acknowledgement can be used by receiver in case of an error, only the data frame causing the error will be requested explicitly through SREJ() by the receiver in case of retransmission data frames may not remain in sequence (scenario ) each transmitted data frame starts an individual r which will be reset, if acknowledgement is received if out occurs data frame is sent once again (scenario 3) Protocol Principles, v Page - 4

25 Selective Reject SREJ (+) triggers explicitly retransmission of I (+) at S, ACK (+3) acknowledges all frames up to I (+3) at S -> multiple acknowledgment S I () I (+) I (+) I (+3) ACK () SREJ (+) I (+) ACK (+3) D reordering of frames necessary Protocol Principles, v Selective Reject ACK (+) acknowledges all frames up to I (+) at S -> multiple acknowledgment S I () + I (+) + + I (+) I (+3) ACK () ACK (+) ACK (+) ACK (+3) D Protocol Principles, v4.8 5 Page - 5

26 Selective Reject 3 out for frame + S I () I (+) ACK () ACK (+) I (+) ACK (+) D + + recognition of duplicate frames Protocol Principles, v4.8 5 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 5 Page - 6

27 Sequence umber identifiers of data frames are implemented by increasing numbers sequence numbers the number used in I-frames send sequence number (S) the number used in ACK/ACK/SREJ-frames receive sequence number (R) register variables are necessary V(S), V(R) must be initialized (set to ) by connection setup handling of V(S), V(R), (S), and (R) will be explained in next slides for GoBack Protocol Principles, v V(S), V(R) with GoBack V(S) indicates the sequence number of the next I-frame that will be sent V(R) indicates the expected sequence number of the next in-sequence I-frame to be received this value will be seen in (R) prior to sending an I-frame, the value of (S) is set to the value of V(S) afterwards V(S) is increased by one Protocol Principles, v Page - 7

28 V(S), V(R) with GoBack receiver only accepts I-frames with (S) = V(R) after successful receipt of a frame V(R) will first be increased by one and then acknowledgment with (R) = V(R) will be sent therefore receipt of ACK with (R) = x means that all I-frames until x- are confirmed Protocol Principles, v GoBack V (S): S I () I () I () I (3) ACK () ACK () ACK (3) ACK (4) D (S) receive buffer 3 (R) V (R): 3 4 Protocol Principles, v Page - 8

29 GoBack V (S): 3 4 S I () I () I () I (3) ACK () ACK () I () I () ACK () D V (R): Protocol Principles, v GoBack 3 V (S): 3 4 S 3 I () I () I () I (3) 3 3 ACK () ACK () ACK (3) ACK (4) D 3 multiple acknowledgement V (R): 3 4 Protocol Principles, v Page - 9

30 Initializing / Transmission Pause connection establishment initializes V(S) and V(R) after connection establishment connection is maintained by keepalive messages during transmission pauses example for keepalive technique exchange of HELLO (request / poll) and ACK (response) ACK is used for acknowledgment as well as for connection maintenance because of this an ACK() only confirms all frames up to - and not up to sender can distinguish between a keepalive response and acknowledgement of a new data frame Protocol Principles, v Initializing / Keepalive V (S): x x connect request hello I () receive buffer connect confirm.. ACK () ACK () V (R): x Protocol Principles, v4.8 6 Page - 3

31 Keepalive V (S): I (3) hello I (4) ACK (4).. ACK (4) ACK (5) 3 4 V (R): Protocol Principles, v4.8 6 Piggyback Acknowledgement confirmation of every data frame is only appropriate for data flow in one direction acknowledgment frames produce unnecessary overhead with full duplex data traffic acknowledgments contained in data frames in opposite direction can avoid that overhead piggyback acknowledgement if no backward data frame is waiting for transmission ACK frame will be sent still Protocol Principles, v4.8 6 Page - 3

32 Piggyback Acknowledgement retrans. list A > B v (r) V (S) A V (R) v (s) I (,) I (,) I (,) I (3,) (S) receive buffer n (r) B 3 I (,) I (,) I (,3) I (4,) I (5,) I (3,4) n (s) (R) retrans list B -> A receive buffer Protocol Principles, v Data Flow in both Directions data frames contain both send sequence number and receive sequence number of backward direction now I-frames and ACK/ACK-frames can arise in both directions communication devices must contain both V(S)- and V(R)-registers, retransmission and receive lists (S), (R), V(S) und V(R) control data transfer from A to B n(s), n(r), v(s) und v(r) control data transfer from B to A Protocol Principles, v Page - 3

33 Windowing without a restriction of the number of unconfirmed data frames, continuos-rq would require infinite number of identifiers and buffer memory for that reason, the amount W of data frames stored for retransmission must be limited W = send window if limit is reached, sending of additional data frames is stopped until receipt of acknowledgement indicates that window is opened again windowing Protocol Principles, v Principle of Windowing Event t: Ack = 4 Window W = Sent and already acknowledged Sent but not yet acknowledged Will send as soon as possible can't send until window moves Usable window Protocol Principles, v Page - 33

34 Sliding Windowing Event t: Ack = 6 Window W = Sent and already acknowledged Usable window can't send until window moves Protocol Principles, v Consequences of Windowing windowing reduces the buffer memory for retransmission buffer and receive-list buffer size of retransmission buffer = W * maximum frame size windowing reduces the number of identifiers numbering of data frames can be done by a modulo operation e.g. GoBack with send window = W needs W+ identifiers because of worst case scenario next slide data frames can be numbered modulo W+ e.g. Selective Acknowledgement with send window = W needs W identifiers because of worst case scenario data frames can be numbered modulo W Protocol Principles, v Page - 34

35 Windowing with umbering Modulo W+ GoBack and send-window W means W+ Identifier and numbering with modulo W+ Window W = Sent and already acknowledged Sent but not yet acknowledged Will send as soon as possible can't send until window moves Usable window Protocol Principles, v Worst Case Scenario with GoBack and W=3 V (S): W = 3 -> stop 3 Timeout I () Timeout I () Timeout I () I () I () I () ACK () ACK () ACK (3) ACK (3) I () I () I () receive buffer V (R): duplicate frames Protocol Principles, v4.8 7 Page - 35

36 Required umber of Identifiers For worst case scenario of slide before: window for sending is full after sending of I-frames, and sender stops no acknowledgement arrives at sender after out, I-frames, and will be sent again at this, receiver expects I-frame 3 and therefore all received frames (duplicates) are discarded only I-frame with (S) = 3 is accepted as new I-frame for that reason, the required number of identifiers is 4 W+ (identifiers are numbered,,, 3) similar considerations for other ARQ error control techniques Protocol Principles, v4.8 7 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 7 Page - 36

37 Time to Transmit a given umber of Bytes Serialization Delay (in ms) = [ ( umber of Bytes * 8 ) / ( Bitrate in sec ) ] * Bitrate 9,6 kbit/s 48 kbit/s 8 kbit/s,48 Mbit/s Mbit/s Mbit/s 55 Mbit/s 6 Mbit/s Gigabit/s umber of Byte Delay in msec ( -3 ) Delay in msec ( -3 ) Delay in msec ( -3 ) Delay in msec ( -3 ) Delay in Delay in msec ( -3 ) msec ( -3 ) Delay in msec ( -3 ) Delay in msec ( -3 ) Delay in msec ( -3 ) Bit,5,467,833,783,488,,,6,, Byte,833333,66667,65,396,8,8,5,3,8 PCM-3 3 6, ,333333,,5,56,56,65,4,56 ATM cell 53 44, , ,35,73,44,44,735,68,44 Ethernet 64 53,333333, ,,5,5,5,333,83,5 X , , ,,,48,48,33,393,48 IP , 96, 36,,5,468,468,979,748,468 Ethernet.58.65, 53, 94,875 5,99688,44,44,78348,954,44 FR , , , 3, 6,5536,65536,483,5363,65536 TCP , , ,875 55,9988 5,47 5,47 3,384,8488,547 kbit/s = bit/s!!! KByte = 4 Byte!!! Protocol Principles, v Propagation (Signal) Delay Tp = Propagation Delay (in ms) = [ ( Distance in m ) / ( velocity in m/sec ) ] * Distance v=.km/s Delay in msec ( -3 ) v=3.km/s Delay in msec ( -3 ) CPU Bus cm,5,3 m,5,33 RS3, V4/V.8 5 m,75,5 LA, Copper, RJ45 m,5,3333 LA, FO, X./V.-V. km,5,33333 Local Subscriber Line,5 km,5,83333 WA Link Repeater km,5, WA Link Repeater km,5, WA FO Link Repeater. km 5, 3, WA FO Link Repeater. km 5, 33, Satellite Link 4. km, 33, Satellite Link 5. km 5, 66, km 5, 333, km 5,, Total Delay = Serialization Delay + Propagation Delay + (Switching Delay) Protocol Principles, v Page - 37

38 How Long is a Bit? Length (in m) = [ ( / ( bitrate per sec) ] * [ ( velocity in m/sec ) ] Bitrate Bit Length in meter Bit Length in meter Analogue Modem 9,6 kbit/s 833,33 35, Analogue Modem 48 kbit/s 466,67 65, DS 64 kbit/s 35, 4687,5 ISD (B) 8 kbit/s 56,5 343,75 PCM-3, E,48 Mbit/s 97,66 46,48 Token Ring 4 4 Mbit/s 5, 75, Ethernet Mbit/s, 3, Token Ring6 6 Mbit/s,5 8,75 Fast Ethernet, FDDI Mbit/s, 3, ATM STM, OC-3 55 Mbit/s,9,94 ATM STM4, OC- 6 Mbit/s,3,48 Gigabit Ethernet Gigabit/s,,3 OC-48,5 Gigabit/s,8, Gigabit Ethernet Gigabit/s,,3 Copper LWL - Free Space. km /sec 3. km / sec Protocol Principles, v Propagation Delay and umber of Bits on a given Link Source km Tp =,5ms,5 bits 5 bits Destination kbit/s Mbit/s Source km Tp = ms Destination bit. bits kbit/s Mbit/s Source 5 km Tp = 67ms Destination 67 bits.67. bits kbit/s Mbit/s Protocol Principles, v Page - 38

39 How Large should be the Window Size? choice of window size is determined by response ( = round trip RTT) x (propagation + serialization) delay plus response delay of partner available buffer size transmitter/receiver bandwidth (bit rate) of communication channel principle to achieve the optimum: the sender s window must be big enough so that the sender can fully utilize the channel volume the channel volume can be expressed by the Delay-Bandwidth Product window size W in bytes = RTT x BW Protocol Principles, v early Empty Pipe with Idle-RQ and W = Vienna Tokyo W = t = s KB Data.5 Mbit/s Ack This pipe allows storing of.5 Mbit/s 35 ms = 55, bit 64 KB of data. t = 35 ms Idle-RQ only allows one frame to be outstanding. That means W =!!! Assume KByte (4 byte) maximum frame size, then the maximal achievable rate is (4 8) bit /.35 s 3 kbit/s Protocol Principles, v Page - 39

40 Full Pipe with Continous-RQ and W = 64 W = 64 Vienna t = s KB Data I (63)... I() Tokyo.5 Mbit/s Ack()... Ack (64) This pipe allows.5 Mbit/s 35 ms = 55, bit 64 KB of data. t = 35 ms This situation corresponds with a true sliding window Continous-RQ (C-RQ) allows several frames to be outstanding. With KByte maximum Frame Size optimum would be W = 64!!! Protocol Principles, v Only Half Pipe Used with C-RQ and W = 3 Vienna Tokyo W = 3 t = s capacity unused KB Data I (3)... I().5 Mbit/s Ack()... Ack (3) This pipe allows.5 Mbit/s 35 ms = 55, bit 64 KB of data. t = 35 ms This situation corresponds with a true jumping window With KByte maximum Frame Size and W = 3 the pipe could be used only half the!!! Protocol Principles, v4.8 8 Page - 4

41 Optimal Window Size - Sliding Window optimal window size (Continuous-RQ) acknowledgments arrive just in to keep the window always open sliding window requirement for optimum window size W in bytes in minimum equal to RTT x BW if window size is smaller than RTT x BW transmission will be stopped until acknowledgments arrive jumping window Idle RQ behaviour in worst case with W = if window size is too large in case of errors many good frames must be retransmitted (see Go Back ) Protocol Principles, v4.8 8 Timers - Retransmission Timeout the value for retransmission outs with line protocols can be easily calculated using the following parameters bitrate maximum data frame size worst case at receiver to generate an acknowledgment size of acknowledgment frame calculation for network protocols with varying transmission delays is more complex adaptive process is necessary Protocol Principles, v4.8 8 Page - 4

42 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v Flow Control if data frames arrive faster than application is able to process, receiver runs out of available buffer storage and good frames must be discarded by the receiver discarded data frames will cause retransmission but they will be still discarded because of lack of buffers therefore receiver should control the rate of transmission of data frames flow control overload/congestion situation indicated to the sender using flow control messages sender stops and waits until receiver is able to process frames again Protocol Principles, v Page - 4

43 Flow Control Host A Host B OS OS application software communication software flow control indicating congestion application software communication software communication hardware Tmt_A Rcv_A signal reference Rcv_B Tmt_B communication hardware Protocol Principles, v Flow Control windowing could be used to implement flow control receiver does not generate acknowledgements in case of congestion sender will stop transmission if send window is closed problem with windowing after out unconfirmed frames will be retransmitted after a defined amount of unsuccessful retransmissions, the connection is considered to be broken therefore flow control is based on separate flow control frames and windowing Protocol Principles, v Page - 43

44 Flow Control typically used flow control messages STOP, e.g. HDLC s Receiver ot Ready (RR) GO, e.g. HDLC s Receiver Ready (RR) in case of congestion receiver signals STOP on receipt of STOP sender will suspend transmitting in the worst case, sender will use the send window before stopping transmission receiver signals GO when data flow can resume STOP and GO may contain (R) and hence be used for acknowledgement Protocol Principles, v Flow Control 3 3 I () I () I () I (3) ACK()+STOP ACK()+STOP ACK(3)+STOP 3... ACK(3)+GO ACK(4)+GO W = 6 Protocol Principles, v Page - 44

45 Flow Control / Keepalive in case of full duplex data communication STOP and GO control frames are used for flow control in both directions in some cases STOP and GO frames are further used for connection management keepalive procedure if no data frames are waiting for transmission a GO frame can signal keepalive to the partner if traffic was suspended by STOP a periodic repetition of STOP can signal keepalive to the partner in both cases keepalives maintain the connection Protocol Principles, v Flow Control / Adaptive Windowing window size could be constant or dynamic during life of a connection constant window size is used e.g. by HDLC, X.5 if window size is dynamic a start value is negotiated during connection establishment actual window size will be dynamically adjusted to an optimal value receiver continuously advertises optimal value (e.g. based on availability free buffer memory) advertised window size = -> STOP advertised window size > -> GO adaptive windowing e.g used by TCP Protocol Principles, v4.8 9 Page - 45

46 Agenda Introduction 3 Layer Model and Service Types ARQ Techniques Introduction Idle RQ Continuous RQ Selective Acknowledgement GoBack Positive Acknowledgement Selective Reject Sequence umbers and Windowing Delay Bandwidth Product Flow Control HDLC Overview Protocol Principles, v4.8 9 HDLC High-level Data Link Control most widely used data link control protocol based on building elements synchronous transmission bit-oriented line protocol using bitstuffing Continuous RQ with GoBack, piggybacked ACK P/F procedure (see appendix chapter for details) provides many options half-duplex and full-duplex transmission (see appendix chapter for details) point-to-point and multipoint configuration (see appendix chapter for details) switched or non-switched channels Protocol Principles, v4.8 9 Page - 46

47 HDLC Frame Format hex7e 8-6 bits 8-6 bits 6 or 3 bits hex7e Flag (F) Address (A) Control (C) Information (I) FCS Flag (F) Send Sequence umber (S) P/F Receive Sequence umber (R) Information Frame, I-Frame Supervisory Code P/F Receive sequence number (R) Supervisory Frame, S-Frame Code P/F Code Unnumbered Frame, U-Frame P / F = Poll / Final Bit Protocol Principles, v Supervisory Frames Supervisory Code P/F Receive Sequence umber (R) RR (Receiver Ready) = ACK plus GO REJ (Reject) = ACK RR (Receiver ot Ready) = ACK plus STOP SREJ (Selective Reject) = SREJ Protocol Principles, v Page - 47

48 Unnumbered Frames Code P/F Code Command UI SRM DISC UP R R R R3 SIM SARM RSET SARME SRME SABM XID SABME Response UI RD UA R R R R3 RIM FRMR DM XID Protocol Principles, v HDLC Data Link Services HDLC can provide connection-oriented service setup of connection done by U-frames SRM, SARM, SABM, UA I-frames and S-frame can be used only after connection setup I, RR, RR, REJ, SREJ clearing of a connection done by U-frames DISC, UA HDLC can provide connectionless service only U-frames can be used UI for data transport Protocol Principles, v Page - 48

49 Frame-Types Connection-Oriented Connection-Less I Information UI Unnumbered Information RR REJ RR SREJ Receiver Ready Reject Receiver ot Ready Selective Reject SRM Set ormal Response Mode SABM Set Async Balanced Mode SARM Set Async Response Mode SRME Set RM Extended Mode SABME Set ABM Extended Mode SARME Set ARM Extended Mode XID Miscellaneous Exchange Identification DISC Disconnect UP Unnumbered Poll UA RSET FRMR RD DM Unnumbered Acknowledge Reset Frame Reject Request Disconnect Disconnect Mode SIM Set Initialization Mode RIM Request Initialization Mode R-3 on-reserved Protocol Principles, v HDLC Example: Initializing / Keepalive / First Data Frame A -> B V (S): A SABM RR () hello I (,) first data frame A->B B receive buffer UA.. RR () hello ack RR () acknowledgement of first data frame V (R): Protocol Principles, v Page - 49

50 HDLC Example: Data Frames A->B, B->A with piggyback ACK V (S): A 3 3 I (, 3) I (, 4) I (3, 5) I (3, ).. I( 4, 3) RR (4) B receive buffer 3 B has nothing to transmit therefore no piggyback acknowledgement V (R): Protocol Principles, v HDLC Example: Keepalive V (S): I (3, ) RR () hello I (4, ) 3 RR (4).. RR (4) hello ack 4 RR (5) V (R): Protocol Principles, v4.8 Page - 5

51 HDLC Example: Flow Control 3 3 I (.) I (,) I (,) I (3,) W = 6 RR() STOP RR() RR(3) 3... RR(3) GO RR(4) Protocol Principles, v4.8 HDLC Family LAPB - Link Access Procedure Balanced link layer protocol for X.5 LAPD - Link Access Procedure D-Channel ISD V. - used on ISD terminal adapters for multiplexing HDLC LAPM - Link Access Procedure for Modems PPP - Point-to-Point Protocol encapsulates network PDUs and identifies protocol type SDLC - Synchronous Data Link Control (IBM) LAPB (X.5) LAPD (ISD) V. (ISD) LLC (LAs) LAPM (V.4) Frame Relay PPP SDLC (SA) Protocol Principles, v4.8 Page - 5

Line Protocols. Protocol Principles. Two Important Principles for Data Communication. Agenda

Line Protocols. Protocol Principles. Two Important Principles for Data Communication. Agenda atenkommunikation 84.8-9 atenkommunikation 84.8-9 Line Protocols Protocol Principles Layering, CL versus CO ervice, ARQ Techniques, equence umbers, Windowing, Flow Control line protocols regulate and control

More information

Agenda. Protocol Principles

Agenda. Protocol Principles Agenda Protocol Principles Layering, CL vs. CO Protocols, Best-Effort vs. Reliable Services ARQ Techniques, Sequence umbers, Windowing, Bandwidth-Delay Product, Flow Control, HDLC Introduction ARQ Techniques

More information

HDLC (High level Data Link Control)

HDLC (High level Data Link Control) High-level Data Link Control HDLC (High level Data Link Control) Modem, EIA-232, HDLC Framing and Procedures Agenda Line Management, Modems Introduction HDLC Station Types, Modes of Operation Frame Format,

More information

Line Protocol Basics. HDLC (High level Data Link Control) Agenda. Additional Issues

Line Protocol Basics. HDLC (High level Data Link Control) Agenda. Additional Issues Line Protocol Basics High-level Data Link Control HDLC (High level Data Link Control), EIA-232, HDLC Framing and Procedures line protocol basics already explained serial transmission techniques bit-synchronization

More information

HDLC. King of the Link 2005/03/11. (C) Herbert Haas

HDLC. King of the Link 2005/03/11. (C) Herbert Haas HDLC King of the Link (C) Herbert Haas 2005/03/11 What is HDLC? High-Level Data Link Control Early link layer protocol Based on SDLC (Synchronous-DLC, IBM) Access control on half-duplex modem-lines Connectionoriented

More information

Data Link Control. Claude Rigault ENST Claude Rigault, ENST 11/3/2002. Data Link control 1

Data Link Control. Claude Rigault ENST Claude Rigault, ENST 11/3/2002. Data Link control 1 Data Link Control Claude Rigault ENST claude.rigault@enst.fr Data Link control Data Link Control Outline General principles of Data Link Control HDLC Data Link control 2 General principles of Data Link

More information

Flow control: Ensuring the source sending frames does not overflow the receiver

Flow control: Ensuring the source sending frames does not overflow the receiver Layer 2 Technologies Layer 2: final level of encapsulation of data before transmission over a physical link responsible for reliable transfer of frames between hosts, hop by hop, i.e. on a per link basis

More information

3. Data Link Layer 3-2

3. Data Link Layer 3-2 3. Data Link Layer 3.1 Transmission Errors 3.2 Error Detecting and Error Correcting Codes 3.3 Bit Stuffing 3.4 Acknowledgments and Sequence Numbers 3.5 Flow Control 3.6 Examples: HDLC, PPP 3. Data Link

More information

Protocol Principles. Framing, FCS and ARQ 2005/03/11. (C) Herbert Haas

Protocol Principles. Framing, FCS and ARQ 2005/03/11. (C) Herbert Haas Protocol Principles Framing, FCS and ARQ (C) Herbert Haas 2005/03/11 Link Layer Tasks Framing Frame Protection Optional Addressing Optional Error Recovery Connection-oriented or connectionless mode Optional

More information

INTERNET ARCHITECTURE & PROTOCOLS

INTERNET ARCHITECTURE & PROTOCOLS INTERNET ARCHITECTURE & PROTOCOLS Set # 02 Delivered By: Engr Tahir Niazi Need for Data Link Layer possibility of transmission errors receiver need to regulate the rate at which data arrive that's why

More information

(Sicherungsschicht) Chapter 5 (part 2) [Wa0001] HDLC - 1.

(Sicherungsschicht) Chapter 5 (part 2) [Wa0001] HDLC - 1. Data Link Layer (cont.) (Sicherungsschicht) Chapter 5 (part 2) [Wa0001] HDLC - 1 LOGICAL LINK CONTROL MEDIUM ACCESS CONTROL PHYSICAL SIGNALING DATA LINK LAYER PHYSICAL LAYER ACCESS UNIT INTERFACE PHYSICAL

More information

Data Link Layer (cont.) ( h h h ) (Sicherungsschicht) HDLC - 1.

Data Link Layer (cont.) ( h h h ) (Sicherungsschicht) HDLC - 1. Data Link Layer (cont.) ( h h h ) (Sicherungsschicht) HDLC - 1 LOGICAL L LINK CONTROL MEDIUM ACCESS CONTROL PHYSICAL SIGNALING DATA LINK LAYER PHYSICAL LAYER ACCESS UNIT INTERFACE PHYSICAL MEDIA ATTACHMENT

More information

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science Advanced Computer Networks Rab Nawaz Jadoon Department of Computer Science DCS COMSATS Institute of Information Technology Assistant Professor COMSATS University, Lahore Pakistan Advanced Computer Networks

More information

Chapter 3. The Data Link Layer. Wesam A. Hatamleh

Chapter 3. The Data Link Layer. Wesam A. Hatamleh Chapter 3 The Data Link Layer The Data Link Layer Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols The Data

More information

Data Link Control Protocols

Data Link Control Protocols Data Link Control Protocols need layer of logic above Physical to manage exchange of data over a link frame synchronization flow control error control addressing control and data link management Flow Control

More information

Data Link Control Protocols

Data Link Control Protocols Protocols : Introduction to Data Communications Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 23 May 2012 Y12S1L07, Steve/Courses/2012/s1/its323/lectures/datalink.tex,

More information

Chapter 11 Data Link Control 11.1

Chapter 11 Data Link Control 11.1 Chapter 11 Data Link Control 11.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 FRAMING The data link layer needs to pack bits into frames, so that each

More information

William Stallings Data and Computer Communications. Chapter 7 Data Link Control

William Stallings Data and Computer Communications. Chapter 7 Data Link Control William Stallings Data and Computer Communications Chapter 7 Data Link Control Flow Control Ensuring the sending entity does not overwhelm the receiving entity Preventing buffer overflow Transmission time

More information

Chapter 7: Data Link Control. Data Link Control Protocols

Chapter 7: Data Link Control. Data Link Control Protocols Chapter 7: Data Link Control CS420/520 Axel Krings Page 1 Data Link Control Protocols Need layer of logic above Physical to manage exchange of data over a link frame synchronization flow control error

More information

Chapter 7: Data Link Control. CS420/520 Axel Krings Page 1

Chapter 7: Data Link Control. CS420/520 Axel Krings Page 1 Chapter 7: Data Link Control CS420/520 Axel Krings Page 1 Data Link Control Protocols Need layer of logic above Physical to manage exchange of data over a link frame synchronization flow control error

More information

Data link layer functions. 2 Computer Networks Data Communications. Framing (1) Framing (2) Parity Checking (1) Error Detection

Data link layer functions. 2 Computer Networks Data Communications. Framing (1) Framing (2) Parity Checking (1) Error Detection 2 Computer Networks Data Communications Part 6 Data Link Control Data link layer functions Framing Needed to synchronise TX and RX Account for all bits sent Error control Detect and correct errors Flow

More information

Chapter 11 Data Link Control 11.1

Chapter 11 Data Link Control 11.1 Chapter 11 Data Link Control 11.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 11-1 1 FRAMING The data link layer needs to pack bits into frames,, so that

More information

Data and Computer Communications

Data and Computer Communications Data and Computer Communications Chapter 7 Data Link Control Protocols Eighth Edition by William Stallings Lecture slides by Lawrie Brown Data Link Control Protocols "Great and enlightened one," said Ten-teh,

More information

UNIT IV -- TRANSPORT LAYER

UNIT IV -- TRANSPORT LAYER UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission

More information

Data Link Layer. Learning Objectives. Position of the data-link layer. MCA 207, Data Communication & Networking

Data Link Layer. Learning Objectives. Position of the data-link layer. MCA 207, Data Communication & Networking Data Link Layer Bharati Vidyapeeth s Institute of Computer Applications and Management,New Delhi-63 by Vishal Jain U2. 1 Learning Objectives To introduce the design issues of data link layer. To discuss

More information

Outline. CS5984 Mobile Computing

Outline. CS5984 Mobile Computing CS5984 Mobile Computing Dr. Ayman Abdel-Hamid Computer Science Department Virginia Tech Outline Review Transmission Control Protocol (TCP) Based on Behrouz Forouzan, Data Communications and Networking,

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Data Link Control. Outline. DLC functions

Data Link Control. Outline. DLC functions Data Link Control #8 1 Outline functions Framing Error and flow control Performance of Example of a standard protocol- >H Open loop flow control 2 Data Link Layer Functions Data Link layer provides a error

More information

HDLC PROTOCOL. Michel GARDIE

HDLC PROTOCOL. Michel GARDIE HDLC PROTOCOL Michel GARDIE INT/LOR/RIP October 15, 2007 The version of this document is temporary. There are still several mistakes. I'm sorry for that. email: michel.gardie@int-edu.eu 1985 FRANCE TELECOM

More information

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Transmission Control Protocol. ITS 413 Internet Technologies and Applications Transmission Control Protocol ITS 413 Internet Technologies and Applications Contents Overview of TCP (Review) TCP and Congestion Control The Causes of Congestion Approaches to Congestion Control TCP Congestion

More information

Peer-to-Peer Protocols and Data Link Layer. Chapter 5 from Communication Networks Leon-Gracia and Widjaja

Peer-to-Peer Protocols and Data Link Layer. Chapter 5 from Communication Networks Leon-Gracia and Widjaja Peer-to-Peer Protocols and Data Link Layer Chapter 5 from Communication Networks Leon-Gracia and Widjaja Peer-to-Peer Protocols At each layer two (or more) entities execute These are peer processes For

More information

Telematics. 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Telematics. 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments 19531 - Telematics 5th Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments Bastian Blywis Department of Mathematics and Computer Science Institute of Computer Science 18. November, 2010 Institute

More information

CS422 Computer Networks

CS422 Computer Networks CS422 Computer Networks Lecture 3 Data Link Layer Dr. Xiaobo Zhou Department of Computer Science CS422 DataLinkLayer.1 Data Link Layer Design Issues Services Provided to the Network Layer Provide service

More information

Introduction to Networks and the Internet

Introduction to Networks and the Internet Introduction to Networks and the Internet CMPE 80N Announcements Project 2. Reference page. Library presentation. Internet History video. Spring 2003 Week 7 1 2 Today Internetworking (cont d). Fragmentation.

More information

Data Link Layer. Overview. Links. Shivkumar Kalyanaraman

Data Link Layer. Overview. Links. Shivkumar Kalyanaraman Data Link Layer shivkuma@ecse.rpi.edu http://www.ecse.rpi.edu/homepages/shivkuma 1-1 Based in part upon the slides of Prof. Raj Jain (OSU) Overview The data link layer problem Error detection and correction

More information

Narrowband ISDN. (ISDN = Integrated Services Digital Network)

Narrowband ISDN. (ISDN = Integrated Services Digital Network) Narrowband ISDN (ISDN = Integrated Services Digital Network) critically: Invention Subscribers Don t Need (technology push instead of demand pull) is that really so? N-ISDN vs. B-ISDN (based on ATM) How

More information

Data Link Layer, Part 4. Exemplary Protocols

Data Link Layer, Part 4. Exemplary Protocols CS 455 Examplary DLL Protocols, Page 1 Data Link Layer, Part 4 Exemplary Protocols These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang s courses at GMU

More information

User Datagram Protocol (UDP):

User Datagram Protocol (UDP): SFWR 4C03: Computer Networks and Computer Security Feb 2-5 2004 Lecturer: Kartik Krishnan Lectures 13-15 User Datagram Protocol (UDP): UDP is a connectionless transport layer protocol: each output operation

More information

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine School of Computing and Information S 1 / 33 COS 140:

More information

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine Computer Science Department 1 / 33 1 COS 140: Foundations

More information

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols

16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols 16.682: Communication Systems Engineering Lecture 17 ARQ Protocols Eytan Modiano Automatic repeat request (ARQ) Break large files into packets FILE PKT H PKT H PKT H Check received packets for errors Use

More information

TCP/IP Performance ITL

TCP/IP Performance ITL TCP/IP Performance ITL Protocol Overview E-Mail HTTP (WWW) Remote Login File Transfer TCP UDP IP ICMP ARP RARP (Auxiliary Services) Ethernet, X.25, HDLC etc. ATM 4/30/2002 Hans Kruse & Shawn Ostermann,

More information

Transport Layer Protocols. Internet Transport Layer. Agenda. TCP Fundamentals

Transport Layer Protocols. Internet Transport Layer. Agenda. TCP Fundamentals Transport Layer Protocols Application SMTP HTTP FTP Telnet DNS BootP DHCP ( M I M E ) Presentation Session SNMP TFTP Internet Transport Layer TCP Fundamentals, TCP Performance Aspects, UDP (User Datagram

More information

INTERNATIONAL TELECOMMUNICATION UNION. SERIES Q: DIGITAL SUBSCRIBER SIGNALLING SYSTEM No. 1 (DSS 1), DATA LINK LAYER

INTERNATIONAL TELECOMMUNICATION UNION. SERIES Q: DIGITAL SUBSCRIBER SIGNALLING SYSTEM No. 1 (DSS 1), DATA LINK LAYER INTERNATIONAL TELECOMMUNICATION UNION CCITT Q.921 THE INTERNATIONAL TELEGRAPH AND TELEPHONE CONSULTATIVE COMMITTEE (11/1988) SERIES Q: DIGITAL SUBSCRIBER SIGNALLING SYSTEM No. 1 (DSS 1), DATA LINK LAYER

More information

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address

More information

1.6 Error Control Strategies

1.6 Error Control Strategies 1.6 Error Control Strategies 1.6.1 Introduction ARQ Data Source Encoder Binary Channel Decoder Data Sink {u} {v} {v'} {u'} encoder, decoder, error control; error control strategies: (simple) error detection;

More information

Chapter 5 Peer-to-Peer Protocols. School of Info. Sci. & Eng. Shandong Univ..

Chapter 5 Peer-to-Peer Protocols. School of Info. Sci. & Eng. Shandong Univ.. hapter 5 Peer-to-Peer Protocols School of Info. Sci. & Eng. Shandong Univ.. Outline 5. Peer-to-peer protocols and service models 5. RQ Protocols 5.3 Other daptation Functions Sliding Window Flow ontrol

More information

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1

6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6. Transport Layer 6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6.1 Internet Transport Layer Architecture The

More information

ETSF05/ETSF10 Internet Protocols Transport Layer Protocols

ETSF05/ETSF10 Internet Protocols Transport Layer Protocols ETSF05/ETSF10 Internet Protocols Transport Layer Protocols 2016 Jens Andersson Transport Layer Communication between applications Process-to-process delivery Client/server concept Local host Normally initialiser

More information

Part 5: Link Layer Technologies. CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross

Part 5: Link Layer Technologies. CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross Part 5: Link Layer Technologies CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross 1 Outline PPP ATM X.25 Frame Relay 2 Point to Point Data Link Control One sender, one receiver,

More information

(Refer Slide Time: 2:20)

(Refer Slide Time: 2:20) Data Communications Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture -23 X.25 and Frame Relay Hello and welcome to today s lecture on X.25 and

More information

Communication Networks

Communication Networks Communication Networks Chapter 7 Connection Oriented Packet Data Networks Communication Networks - 7. Connection Oriented PDNs 236 Overview 1. Fundamentals of Connection-Oriented Packet Switching 2. X.25

More information

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16

CS 640 Introduction to Computer Networks. Role of data link layer. Today s lecture. Lecture16 Introduction to Computer Networks Lecture16 Role of data link layer Service offered by layer 1: a stream of bits Service to layer 3: sending & receiving frames To achieve this layer 2 does Framing Error

More information

Chapter 24. Transport-Layer Protocols

Chapter 24. Transport-Layer Protocols Chapter 24. Transport-Layer Protocols 23.1 Introduction 23.2 User Datagram Protocol 23.3 Transmission Control Protocol 23.4 SCTP Computer Networks 24-1 Position of Transport-Layer Protocols UDP is an unreliable

More information

ECE 650 Systems Programming & Engineering. Spring 2018

ECE 650 Systems Programming & Engineering. Spring 2018 ECE 650 Systems Programming & Engineering Spring 2018 Networking Transport Layer Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) TCP/IP Model 2 Transport Layer Problem solved:

More information

Network Working Group Request for Comments: 1663 Category: Standards Track July 1994

Network Working Group Request for Comments: 1663 Category: Standards Track July 1994 Network Working Group D. Rand Request for Comments: 1663 Novell Category: Standards Track July 1994 Status of this Memo PPP Reliable Transmission This document specifies an Internet standards track protocol

More information

SRI RAMAKRISHNA INSTITUTE OF TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY COMPUTER NETWORKS UNIT - II DATA LINK LAYER

SRI RAMAKRISHNA INSTITUTE OF TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY COMPUTER NETWORKS UNIT - II DATA LINK LAYER SRI RAMAKRISHNA INSTITUTE OF TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY COMPUTER NETWORKS UNIT - II DATA LINK LAYER 1. What are the responsibilities of data link layer? Specific responsibilities of

More information

I. INTRODUCTION. each station (i.e., computer, telephone, etc.) directly connected to all other stations

I. INTRODUCTION. each station (i.e., computer, telephone, etc.) directly connected to all other stations I. INTRODUCTION (a) Network Topologies (i) point-to-point communication each station (i.e., computer, telephone, etc.) directly connected to all other stations (ii) switched networks (1) circuit switched

More information

Introduction to Protocols

Introduction to Protocols Chapter 6 Introduction to Protocols 1 Chapter 6 Introduction to Protocols What is a Network Protocol? A protocol is a set of rules that governs the communications between computers on a network. These

More information

CS457 Transport Protocols. CS 457 Fall 2014

CS457 Transport Protocols. CS 457 Fall 2014 CS457 Transport Protocols CS 457 Fall 2014 Topics Principles underlying transport-layer services Demultiplexing Detecting corruption Reliable delivery Flow control Transport-layer protocols User Datagram

More information

NWEN 243. Networked Applications. Layer 4 TCP and UDP

NWEN 243. Networked Applications. Layer 4 TCP and UDP NWEN 243 Networked Applications Layer 4 TCP and UDP 1 About the second lecturer Aaron Chen Office: AM405 Phone: 463 5114 Email: aaron.chen@ecs.vuw.ac.nz Transport layer and application layer protocols

More information

OSI Reference Model. Application Layer. Presentation Layer. Session Layer. Chapter 4: Application Protocols. Transport Layer.

OSI Reference Model. Application Layer. Presentation Layer. Session Layer. Chapter 4: Application Protocols. Transport Layer. Chapter 2: Computer Networks 2.1: Physical Layer: representation of digital signals 2.2: Data Link Layer: error protection and access control 2.3: Network infrastructure 2.4 2.5: Local Area Network examples

More information

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2. Goals for Todayʼs Lecture. Role of Transport Layer

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2. Goals for Todayʼs Lecture. Role of Transport Layer Transport Protocols Reading: Sections 2.5, 5.1, and 5.2 CS 375: Computer Networks Thomas C. Bressoud 1 Goals for Todayʼs Lecture Principles underlying transport-layer services (De)multiplexing Detecting

More information

CHAPTER 15 LOCAL AREA NETWORKS ANSWERS TO QUESTIONS

CHAPTER 15 LOCAL AREA NETWORKS ANSWERS TO QUESTIONS CHAPTER 15 LOCAL AREA NETWORKS ANSWERS TO QUESTIONS 15.1 Computer room networks require very high data rates and usually are concerned with transfer of large blocks of data. 15.2 Backend LAN: Backend networks

More information

Lecture 3: The Transport Layer: UDP and TCP

Lecture 3: The Transport Layer: UDP and TCP Lecture 3: The Transport Layer: UDP and TCP Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4395 3-1 The Transport Layer Provides efficient and robust end-to-end

More information

This Lecture. BUS Computer Facilities Network Management. Line Discipline. Data Link Layer

This Lecture. BUS Computer Facilities Network Management. Line Discipline. Data Link Layer This Lecture US35 - Computer Facilities Network Management Synchronisation and interfacing insufficient by themselves. Need to provide: Flow control - allow the receiver to regulate the flow of data. Error

More information

ETSI TC SMG TDoc SMG 938/97

ETSI TC SMG TDoc SMG 938/97 ETSI TC SMG TDoc SMG 938/97 Madrid, Spain Agenda item 5.1, GPRS 15-19 December, 1997 Source: Rapporteur GSM 04.64 Topic: GPRS Title: Change Requests to GSM 04.64 Date: 8 December, 1997 Introduction GSM

More information

Department of Computer and IT Engineering University of Kurdistan. Data Communication Netwotks (Graduate level) Data Link Layer

Department of Computer and IT Engineering University of Kurdistan. Data Communication Netwotks (Graduate level) Data Link Layer Department of Computer and IT Engineering University of Kurdistan Data Communication Netwotks (Graduate level) Data Link Layer By: Dr. Alireza Abdollahpouri Data Link Layer 2 Data Link Layer Application

More information

Chapter 3. The Data Link Layer

Chapter 3. The Data Link Layer Chapter 3 The Data Link Layer 1 Data Link Layer Algorithms for achieving reliable, efficient communication between two adjacent machines. Adjacent means two machines are physically connected by a communication

More information

Packet Switching. Communication Networks Chapter 10: Connection-Oriented PDNs

Packet Switching. Communication Networks Chapter 10: Connection-Oriented PDNs Communication Networks Chapter 10: Connection-Oriented PDNs o X.25 o Frame Relay o Asynchronous Transfer Mode (ATM) Packet Switching Circuit switching was designed for voice Packet switching was designed

More information

The University of Sydney AUSTRALIA. Advanced Communication Networks

The University of Sydney AUSTRALIA. Advanced Communication Networks The University of Sydney AUSTRALIA School of Electrical and Information Engineering Advanced Communication Networks Chapter 5 ISDN Data Link Layer Based on chapter 8 of Stallings ISDN-4e book Abbas Jamalipour

More information

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2 Transport Protocols Reading: Sections 2.5, 5.1, and 5.2 CE443 - Fall 1390 Acknowledgments: Lecture slides are from Computer networks course thought by Jennifer Rexford at Princeton University. When slides

More information

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments

Telematics. 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments 19540 - Telematics 5rd Tutorial - LLC vs. MAC, HDLC, Flow Control, E2E-Arguments Matthias Wa hlisch Department of Mathematics and Computer Science Institute of Computer Science 19. November, 2009 Institute

More information

Multiple unconnected networks

Multiple unconnected networks TCP/IP Life in the Early 1970s Multiple unconnected networks ARPAnet Data-over-cable Packet satellite (Aloha) Packet radio ARPAnet satellite net Differences Across Packet-Switched Networks Addressing Maximum

More information

TYPES OF ERRORS. Data can be corrupted during transmission. Some applications require that errors be detected and corrected.

TYPES OF ERRORS. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. TYPES OF ERRORS There are two types of errors, 1. Single Bit Error The term single-bit error

More information

CCNA Exploration1 Chapter 7: OSI Data Link Layer

CCNA Exploration1 Chapter 7: OSI Data Link Layer CCNA Exploration1 Chapter 7: OSI Data Link Layer LOCAL CISCO ACADEMY ELSYS TU INSTRUCTOR: STELA STEFANOVA 1 Explain the role of Data Link layer protocols in data transmission; Objectives Describe how the

More information

TCP: Flow and Error Control

TCP: Flow and Error Control 1 TCP: Flow and Error Control Required reading: Kurose 3.5.3, 3.5.4, 3.5.5 CSE 4213, Fall 2006 Instructor: N. Vlajic TCP Stream Delivery 2 TCP Stream Delivery unlike UDP, TCP is a stream-oriented protocol

More information

Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione. Link Layer. Fundamentals of Communication Networks

Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione. Link Layer. Fundamentals of Communication Networks Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione Link Layer Fundamentals of Communication Networks Data Link layer o It is the first logical layer in the protocol stack o Functions

More information

ET3110 Networking and Communications UNIT 2: Communication Techniques and Data Link Control Protocol skong@itt-tech.edutech.edu Learning Objectives Identify methods of detecting errors. Use Hamming code

More information

Internet Transport Layer

Internet Transport Layer Internet Transport Layer TCP Fundamentals, TCP Performance Aspects, UDP (User Datagram Protocol) Agenda TCP Fundamentals UDP TCP Performance Slow Start and Congestion Avoidance Fast Retransmit and Fast

More information

Problem 7. Problem 8. Problem 9

Problem 7. Problem 8. Problem 9 Problem 7 To best answer this question, consider why we needed sequence numbers in the first place. We saw that the sender needs sequence numbers so that the receiver can tell if a data packet is a duplicate

More information

1999, Scott F. Midkiff

1999, Scott F. Midkiff Lecture Topics Direct Link Networks: Multiaccess Protocols (.7) Multiaccess control IEEE 80.5 Token Ring and FDDI CS/ECpE 556: Computer Networks Originally by Scott F. Midkiff (ECpE) Modified by Marc Abrams

More information

Transport Layer Protocols. Internet Transport Layer. Agenda

Transport Layer Protocols. Internet Transport Layer. Agenda Transport Layer Protocols Application SMTP HTTP FTP Telnet DNS BootP DHCP ( M I M E ) Presentation Session SNMP TFTP Internet Transport Layer TCP Fundamentals, TCP Performance Aspects, UDP (User Datagram

More information

8. TCP Congestion Control

8. TCP Congestion Control 8. TCP Congestion Control 1 TCP Congestion Control Slow-start increase Multiplicative decrease Congestion avoidance Measurement of variation Exponential timer backoff 2002 Yanghee Choi 2 Congestion Control

More information

CONNECTION-ORIENTED & CONNECTIONLESS NETWORKS

CONNECTION-ORIENTED & CONNECTIONLESS NETWORKS CONNECTION-ORIENTED & CONNECTIONLESS NETWORKS Connection- oriented no logical connection initially exists between the DTEs and the network (idle state) In order to communicate a handshake is needed The

More information

Peer entities. Protocol Layering. Protocols. Example

Peer entities. Protocol Layering. Protocols. Example Peer entities Protocol Layering An Engineering Approach to Computer Networking Customer A and B are peers Postal worker A and B are peers Protocols A protocol is a set of rules and formats that govern

More information

Lecture 20 Overview. Last Lecture. This Lecture. Next Lecture. Transport Control Protocol (1) Transport Control Protocol (2) Source: chapters 23, 24

Lecture 20 Overview. Last Lecture. This Lecture. Next Lecture. Transport Control Protocol (1) Transport Control Protocol (2) Source: chapters 23, 24 Lecture 20 Overview Last Lecture Transport Control Protocol (1) This Lecture Transport Control Protocol (2) Source: chapters 23, 24 Next Lecture Internet Applications Source: chapter 26 COSC244 & TELE202

More information

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP

More information

Local Networks. Lecture 4 6-Apr-2016

Local Networks. Lecture 4 6-Apr-2016 Local Networks Lecture 4 6-Apr-2016 Roadmap of the Course So far Basic telecom concepts General study of LANs LAN topologies Flow and error control Today we continue the general study of LANs Medium access

More information

Automatic Repeat Request Data Link Layer Traffic Management

Automatic Repeat Request Data Link Layer Traffic Management Automatic Repeat Request Data Link Layer Traffic Management Reliable Communications with Retransmission How to transport data units over an unreliable data link in a reliable way? End to End E.g.. TCP

More information

CSCD 330 Network Programming Winter 2015

CSCD 330 Network Programming Winter 2015 CSCD 330 Network Programming Winter 2015 Lecture 11a Transport Layer Reading: Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Chapter 3 Sections

More information

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren Lecture 5: Flow Control CSE 123: Computer Networks Alex C. Snoeren Pipelined Transmission Sender Receiver Sender Receiver Ignored! Keep multiple packets in flight Allows sender to make efficient use of

More information

INTERNATIONAL TELECOMMUNICATION UNION. SERIES X: DATA COMMUNICATION NETWORKS: SERVICES AND FACILITIES, INTERFACES Interfaces

INTERNATIONAL TELECOMMUNICATION UNION. SERIES X: DATA COMMUNICATION NETWORKS: SERVICES AND FACILITIES, INTERFACES Interfaces INTERNATIONAL TELECOMMUNICATION UNION CCITT X.25 THE INTERNATIONAL TELEGRAPH AND TELEPHONE CONSULTATIVE COMMITTEE (11/1988) SERIES X: DATA COMMUNICATION NETWORKS: SERVICES AND FACILITIES, INTERFACES Interfaces

More information

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc.

Direct Link Communication I: Basic Techniques. Data Transmission. ignore carrier frequency, coding etc. Direct Link Communication I: Basic Techniques Link speed unit: bps abstraction Data Transmission ignore carrier frequency, coding etc. Point-to-point link: wired or wireless includes broadcast case Interested

More information

TSIN02 - Internetworking

TSIN02 - Internetworking TSIN02 - Internetworking Literature: Lecture 4: Transport Layer Forouzan: ch 11-12 Transport layer responsibilities UDP TCP 2004 Image Coding Group, Linköpings Universitet 2 Transport layer in OSI model

More information

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP)

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP) Lecture (07) OSI layer 4 protocols TCP/UDP protocols By: Dr. Ahmed ElShafee ١ Dr. Ahmed ElShafee, ACU Fall2014, Computer Networks II Introduction Most data-link protocols notice errors then discard frames

More information

Networked Systems and Services, Fall 2018 Chapter 3

Networked Systems and Services, Fall 2018 Chapter 3 Networked Systems and Services, Fall 2018 Chapter 3 Jussi Kangasharju Markku Kojo Lea Kutvonen 4. Transport Layer Reliability with TCP Transmission Control Protocol (TCP) RFC 793 + more than hundred other

More information

Network Working Group Request for Comments: 1434 IBM March Data Link Switching: Switch-to-Switch Protocol

Network Working Group Request for Comments: 1434 IBM March Data Link Switching: Switch-to-Switch Protocol Network Working Group Request for Comments: 1434 R. Dixon D. Kushi IBM March 1993 Status of this Memo Data Link Switching: Switch-to-Switch Protocol This memo provides information for the Internet community.

More information

User Datagram Protocol

User Datagram Protocol Topics Transport Layer TCP s three-way handshake TCP s connection termination sequence TCP s TIME_WAIT state TCP and UDP buffering by the socket layer 2 Introduction UDP is a simple, unreliable datagram

More information

ECE697AA Lecture 3. Today s lecture

ECE697AA Lecture 3. Today s lecture ECE697AA Lecture 3 Transport Layer: TCP and UDP Tilman Wolf Department of Electrical and Computer Engineering 09/09/08 Today s lecture Transport layer User datagram protocol (UDP) Reliable data transfer

More information