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

Size: px
Start display at page:

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

Transcription

1 atenkommunikation atenkommunikation Line Protocols Protocol Principles Layering, CL versus CO ervice, ARQ Techniques, equence umbers, Windowing, Flow Control line protocols regulate and control 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 Protocol Principles, v4.8 Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 Two Important Principles for ata Communication Layering tructuring the complex task of data 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 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 layer can access the lower layer via network-card driver Connectionless versus connection-oriented service 9,.I. Lindner /.I. Protocol Principles, v4.8 4 Page - Page -

2 atenkommunikation atenkommunikation Layer Model Cooperation of oftware Layers O Computer A application hardware Tmt_A Rcv_A line protocol signal reference Rcv_B Tmt_B O Computer B application hardware if information has to be transmitted from A to B the application W of device A forwards some data blocks to the W the W transmits the data using the hardware and the line protocol the W of device B receives the data and forwards it to the application W that means, the W provides a service for the application W this service can be connection-less or connection-oriented Protocol Principles, v4.8 5 Protocol Principles, v4.8 7 oftware Aspects Connectionless ervice application uses the (normally part of an operating system, O) in order to exchange data mailbox and queueing techniques allow cooperation of application and within a computer system the uses a line protocol for peer to peer virtual relationship on a given layer hides the details of line protocols and other related tasks from the application procedural approach tation A like packet or telegram service of a PTT atagram's atagram's no error recovery of corrupted frames tation B transmission of data Protocol Principles, v4.8 6 Protocol Principles, v4.8 8 Page - Page - 4

3 atenkommunikation atenkommunikation Line Protocol ervices - CL Connection-Less (CL) - type of service W 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 W but error recovery (correction of errors) must be done by application Line Protocol ervices - CO Connection-Oriented (CO) - type of service a channel must be established before data blocks can be transmitted logical connection transmission errors will be detected and corrected by the W using feedback error control retransmission of corrupted data blocks Automatic Repeat request (ARQ) method reliable transmission service for application W error recovery done by W special frame types are necessary (connect, disconnect) more sophisticated W is necessary in order to implement ARQ strategy Protocol Principles, v4.8 9 Protocol Principles, v4.8 Phases with Connection-Oriented ervice Agenda tation A like telephone call of Telecom Connection Request Connection Acknowledgement ATA isconnection Request isconnected Acknowledgment error recovery of corrupted frames is possible by usage of ARQ techniques tation B connection establishment transmission of data clearing of connection Protocol Principles, v4.8 Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 Page - 5 Page - 6

4 atenkommunikation atenkommunikation ARQ Techniques Overview ARQ Variants 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 everal methods» elective ACK (e.g. TCP optional ACK procedure)» GoBack (e.g. HLC basic REJ procedure)» Positive Acknowledgement (e.g. TCP basic procedure)» elective Reject (HLC optional REJ procedure) More complex to implement (much more resources necessary), more efficient concerning usage of bandwidth in case of full-duplex line Idle-RQ Continuous-RQ elective ACK (ACK) GoBack Positive ACK elective Reject (REJ) Protocol Principles, v4.8 Protocol Principles, v4.8 5 Idle-RQ versus Continuous-RQ ARQ Principle ata Ack ata Ack ata Ack half duplex protocol Idle-RQ ata Acks full duplex protocol Continuous-RQ ata and Acks are sent continuously!! 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 4 Protocol Principles, v4.8 6 Page - 7 Page - 8

5 atenkommunikation atenkommunikation ecessary Resources for Com-W Layer Generic Frame Format O Computer A application Protocol tate Machine Retransmission List Receive List Timers Control Variables Queues / Mailboxes for operating API O Computer B application YC Control control information = line protocol header frame header payload ATA frame trailer FC E checksum hardware Tmt_A Rcv_A signal reference Rcv_B Tmt_B hardware Frame Type Field: Connect Request, I, ACK, ACK, Identifier Field:, +, Protocol Principles, v4.8 7 Protocol Principles, v4.8 9 ecessary Resources for Com-W Layer (cont.) O Computer A application hardware Frame Types: Connect request / ack isconnect request / ack I, ACK, ACK, REJ Identifiers Tmt_A Rcv_A line protocol signal reference Rcv_B Tmt_B application hardware Protocol Principles, v4.8 8 O Computer B 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 - 9 Page -

6 atenkommunikation atenkommunikation Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 Basic equence of Idle-RQ ource of I () estination I () response + I () ACK () I (+) ACK (+) + receive buffer retransmission buffer I () Information Frame containing ata ACK () Acknowledgment Frame Protocol Principles, v4.8 Idle-RQ Idle-RQ Retransmission 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 I () out o Ack? Retransmission! I () ACK () Protocol Principles, v4.8 Protocol Principles, v4.8 4 Page - Page -

7 atenkommunikation atenkommunikation Idle-RQ Retransmission Agenda out I () ACK () o Ack? Retransmission! I () ACK () recognition of duplicate frame Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 5 Protocol Principles, v4.8 7 Idle-RQ Retransmission with optional ACK I () ACK () I () ACK () Protocol Principles, v4.8 6 ACK () ot Acknowledgment Frame 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 - Page - 4

8 atenkommunikation atenkommunikation equence of Continuous-RQ Error Control Variants with Continuous-RQ I () + I (+) + + I (+) I (+) ACK () ACK (+) receive list (FIFO) ACK (+) ACK (+) retransmission list (FIFO) ource of I () estination I () 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. HLC s REJ option Protocol Principles, v4.8 9 Protocol Principles, v4.8 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) ACK option based on multiple and negative acknowledgement also known as GoBack order of frames is maintained by the procedure e.g. HLC (High Level ata Link Control) check pointing technique and REJ option e.g. CMP (igital ata Link Control Management Protocol) Protocol Principles, v4.8 Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 Page - 5 Page - 6

9 atenkommunikation atenkommunikation elective 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 ) elective Acknowledgement I () + I (+) + + I (+) I (+) ACK () ACK (+) triggers implicitly retransmission of I (+) at ACK (+) ACK (+) ACK (+) I (+) ACK (+) recognition of duplicate frames Protocol Principles, v4.8 Protocol Principles, v4.8 5 elective Acknowledgement I () + I (+) + + I (+) I (+) ACK () ACK (+) triggers implicitly retransmission of I (+) at ACK (+) ACK (+) I (+) ACK (+) reordering of frames necessary elective Acknowledgement I () I (+) out for frame + ACK () ACK (+) + + I (+) ACK (+) recognition of duplicate frames Protocol Principles, v4.8 4 Protocol Principles, v4.8 6 Page - 7 Page - 8

10 atenkommunikation atenkommunikation Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 7 GoBack I () + I (+) + + I (+) I (+) ACK () ACK (+) I(+) and I(+) are skipped at!!! + ACK (+) Protocol Principles, v4.8 9 I (+) I (+)... reordering of frames not necessary 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 W 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 ) GoBack I () + I (+) + + I (+) I (+) ACK () ACK (+) acknowledges all frames up to I (+) at -> multiple acknowledgment ACK (+) ACK (+) ACK (+) Protocol Principles, v4.8 8 Protocol Principles, v4.8 4 Page - 9 Page -

11 atenkommunikation atenkommunikation GoBack I () I ( +) out for frame + ACK () I ( +) + ACK (+) Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 4 Protocol Principles, v4.8 4 GoBack 4 Positive Acknowledgement I () + I (+) out for frame ACK () I(+) is skipped at!!! + I () + I (+)... ACK () 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, v4.8 4 Protocol Principles, v Page - Page -

12 atenkommunikation atenkommunikation Positive Acknowledgement Agenda I () + I (+) + + I (+) out for frame I (+) ACK () I (+) reordering of frames necessary ACK (+) Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v Protocol Principles, v Positive Acknowledgement elective Reject I () + I (+) + + I (+) I (+) ACK () ACK (+) acknowledges all frames up to I (+) at -> multiple acknowledgment ACK (+) ACK (+) ACK (+) 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 REJ() 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 ) Protocol Principles, v Protocol Principles, v Page - Page - 4

13 atenkommunikation atenkommunikation elective Reject elective Reject I () + I (+) + + I (+) I (+) REJ (+) triggers explicitly retransmission of I (+) at, ACK (+) acknowledges all frames up to I (+) at -> multiple acknowledgment ACK () REJ (+) I (+) ACK (+) I () I (+) out for frame + ACK () ACK (+) I (+) ACK (+) reordering of frames necessary + + recognition of duplicate frames Protocol Principles, v Protocol Principles, v4.8 5 elective Reject I () + I (+) + + I (+) I (+) ACK () ACK (+) acknowledges all frames up to I (+) at -> multiple acknowledgment ACK (+) ACK (+) ACK (+) Protocol Principles, v4.8 5 Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v4.8 5 Page - 5 Page - 6

14 atenkommunikation atenkommunikation equence umber identifiers of data frames are implemented by increasing numbers sequence numbers the number used in I-frames send sequence number () the number used in ACK/ACK/REJ-frames receive sequence number (R) register variables are necessary V(), V(R) must be initialized (set to ) by connection setup handling of V(), V(R), (), and (R) will be explained in next slides for GoBack V(), V(R) with GoBack receiver only accepts I-frames with () = 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, v4.8 5 Protocol Principles, v V(), V(R) with GoBack V() 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 () is set to the value of V() afterwards V() is increased by one GoBack V (): 4 V (R): I () I () I () I () () receive buffer 4 ACK () ACK () ACK () ACK (4) (R) Protocol Principles, v Protocol Principles, v Page - 7 Page - 8

15 atenkommunikation atenkommunikation GoBack V (): 4 I () I () I () I () ACK () Protocol Principles, v ACK () I () I () V (R): ACK () Initializing / Transmission Pause connection establishment initializes V() 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 GoBack Initializing / Keepalive V (): 4 I () I () I () I () ACK () ACK () ACK () ACK (4) multiple acknowledgement V (): x x connect request receive buffer connect confirm.. hello I () ACK () ACK () V (R): 4 V (R): x Protocol Principles, v Protocol Principles, v4.8 6 Page - 9 Page -

16 atenkommunikation atenkommunikation Keepalive Piggyback Acknowledgement V (): I () hello I (4) ACK (4).. ACK (4) ACK (5) 4 V (R): retrans. list A > B v (r) V () A V (R) v (s) I (,) I (,) I (,) I (,) () n (r) receive buffer B I (,) I (,) I (,) I (4,) I (5,) I (,4) n (s) (R) retrans list B -> A receive buffer Protocol Principles, v4.8 6 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 ata Flow in both irections 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 devices must contain both V()- and V(R)-registers, retransmission and receive lists (), (R), V() 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 - Page -

17 atenkommunikation atenkommunikation 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 liding Windowing ent and already acknowledged Event t: Ack = 6 Window W = 5 Usable window... can't send until window moves Protocol Principles, v Protocol Principles, v Principle of Windowing Consequences of Windowing Event t: Window W = ent and already acknowledged Ack = 4 ent but not yet acknowledged Will send as soon as possible Usable window can't send until window moves... 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. elective Acknowledgement with send window = W needs W identifiers because of worst case scenario data frames can be numbered modulo W Protocol Principles, v Protocol Principles, v Page - Page - 4

18 atenkommunikation atenkommunikation Windowing with umbering Modulo W+ Time to Transmit a given umber of Bytes GoBack and send-window W means W+ Identifier and numbering with modulo W+ erialization elay (in ms) = [ ( umber of Bytes * 8 ) / ( Bitrate in sec ) ] * Window W = ent and already acknowledged ent but not yet acknowledged Will send as soon as possible Usable window can't send until window moves... 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 elay in msec ( - ) elay in msec ( - ) elay in msec ( - ) elay in elay in elay in msec ( - ) msec ( - ) msec ( - ) elay in msec ( - ) elay in msec ( - ) elay in msec ( - ) Bit,5,467,8,78,488,,,6,, Byte,8,66667,65,96,8,8,5,,8 PCM- 6, ,,,5,56,56,65,4,56 ATM cell 5 44, ,8,5,7,44,44,75,68,44 Ethernet 64 5,, ,,5,5,5,,8,5 X.5 56, 4, ,,,48,48,,9,48 IP , 96, 6,,5,468,468,979,748,468 Ethernet.58.65, 5, 94,875 5,99688,44,44,7848,954,44 FR , , 5,, 6,556,6556,48,56,6556 TCP , , 4.95,875 55,9988 5,47 5,47,84,8488,547 kbit/s = bit/s!!! KByte = 4 Byte!!! Protocol Principles, v Protocol Principles, v4.8 7 Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Propagation (ignal) elay Tp = Propagation elay (in ms) = [ ( istance in m ) / ( velocity in m/sec ) ] * istance v=.km/s elay in msec ( - ) v=.km/s elay in msec ( - ) CPU Bus cm,5, m,5, R, V4/V.8 5 m,75,5 LA, Copper, RJ45 m,5, LA, FO, X./V.-V. km,5, Local ubscriber Line,5 km,5,8 WA Link Repeater km,5, WA Link Repeater km,5, WA FO Link Repeater. km 5,, WA FO Link Repeater. km 5,, atellite Link 4. km,, atellite Link 5. km 5, 66, km 5,,. km 5,, Total elay = erialization elay + Propagation elay + (witching elay) Protocol Principles, v4.8 7 Protocol Principles, v4.8 7 Page - 5 Page - 6

19 atenkommunikation atenkommunikation 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 8, 5, Analogue Modem 48 kbit/s 466,67 65, 64 kbit/s 5, 4687,5 I (B) 8 kbit/s 56,5 4,75 PCM-, E,48 Mbit/s 97,66 46,48 Token Ring 4 4 Mbit/s 5, 75, Ethernet Mbit/s,, Token Ring6 6 Mbit/s,5 8,75 Fast Ethernet, FI Mbit/s,, ATM TM, OC- 55 Mbit/s,9,94 ATM TM4, OC- 6 Mbit/s,,48 Gigabit Ethernet Gigabit/s,, OC-48,5 Gigabit/s,8, Gigabit Ethernet Gigabit/s,, Copper LWL - Free pace. km /sec. km / sec Protocol Principles, v4.8 7 How Large should be the Window ize? choice of window size is determined by response ( = round trip RTT) x (propagation + serialization) delay plus response delay of partner bandwidth (bit rate) of channel [available buffer size transmitter/receiver] 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 elay-bandwidth Product window size W in bytes = RTT x BW Protocol Principles, v Propagation elay and umber of Bits on a given Link early Empty Pipe with Idle-RQ and W = ource km Tp =,5ms,5 bits estination kbit/s W = Vienna t = s KB ata Tokyo.5 Mbit/s 5 bits Mbit/s ource km Tp = ms bit estination kbit/s Ack This pipe allows storing of.5 Mbit/s 5 ms = 55, bit 64 KB of data. ource 5 km Tp = 67ms. bits Mbit/s estination t = 5 ms Idle-RQ only allows one frame to be outstanding. That means W =!!! 67 bits.67. bits kbit/s Mbit/s Assume KByte (4 byte) maximum frame size, then the maximal achievable rate is (4 8) bit /.5 s kbit/s Protocol Principles, v Protocol Principles, v Page - 7 Page - 8

20 atenkommunikation atenkommunikation Full Pipe with Continous-RQ and W = 64 W = 64 Vienna t = s t = 5 ms KB ata I (6)... I() Ack()... Ack (64) Tokyo.5 Mbit/s This pipe allows.5 Mbit/s 5 ms = 55, bit 64 KB of data. This situation corresponds with a true sliding window Continous-RQ (C-RQ) allows several frames to be outstanding. With KByte maximum Frame ize optimum would be W = 64!!! Protocol Principles, v Optimal Window ize - liding 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, v Only Half Pipe Used with C-RQ and W = W = Vienna t = s t = 5 ms capacity unused Ack()... Ack () KB ata I ()... I() Tokyo.5 Mbit/s With KByte maximum Frame ize and W = the pipe could be used only half the!!! This pipe allows.5 Mbit/s 5 ms = 55, bit 64 KB of data. This situation corresponds with a true jumping window Protocol Principles, v 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 - 9 Page - 4

21 atenkommunikation atenkommunikation Agenda Flow Control Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview O Host A application hardware Tmt_A Rcv_A flow control indicating congestion signal reference Rcv_B Tmt_B O Host B application hardware Protocol Principles, v4.8 8 Protocol Principles, v4.8 8 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 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, v4.8 8 Protocol Principles, v Page - 4 Page - 4

22 atenkommunikation atenkommunikation Flow Control typically used flow control messages TOP, e.g. HLC s Receiver ot Ready (RR) GO, e.g. HLC s Receiver Ready (RR) in case of congestion receiver signals TOP on receipt of TOP 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 TOP and GO may contain (R) and hence be used for acknowledgement Flow Control / Keepalive in case of full duplex data TOP and GO control frames are used for flow control in both directions in some cases TOP 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 TOP a periodic repetition of TOP can signal keepalive to the partner in both cases keepalives maintain the connection Protocol Principles, v Protocol Principles, v Flow Control Flow Control / Adaptive Windowing I () I () I () I () ACK()+TOP ACK()+TOP Protocol Principles, v ACK()+TOP... ACK()+GO ACK(4)+GO W = 6 window size could be constant or dynamic during life of a connection constant window size is used e.g. by HLC, 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 = -> TOP advertised window size > -> GO adaptive windowing e.g used by TCP Protocol Principles, v Page - 4 Page - 44

23 atenkommunikation atenkommunikation Agenda Introduction Layer Model and ervice Types ARQ Techniques Introduction Idle RQ Continuous RQ elective Acknowledgement GoBack Positive Acknowledgement elective Reject equence umbers and Windowing elay Bandwidth Product Flow Control HLC Overview Protocol Principles, v HLC Frame Format hex7e Flag (F) Address (A) Control (C) Information (I) FC Flag (F) 8-6 bits 8-6 bits 6 or bits end equence umber () upervisory Code Code P/F P/F P/F Receive equence umber (R) Receive sequence number (R) hex7e Protocol Principles, v4.8 9 Code P / F = Poll / Final Bit Information Frame, I-Frame upervisory Frame, -Frame Unnumbered Frame, U-Frame HLC upervisory Frames High-level ata 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 upervisory Code P/F Receive equence umber (R) RR (Receiver Ready) = meaning of ACK plus GO REJ (Reject) = meaning of ACK RR (Receiver ot Ready) = meaning ACK plus TOP REJ (elective Reject) Protocol Principles, v4.8 9 Protocol Principles, v4.8 9 Page - 45 Page - 46

24 atenkommunikation atenkommunikation HLC ata Link ervices Unnumbered Frames HLC can provide connection-oriented service setup of connection done by U-frames RM, ARM, ABM, UA I-frames and -frame can be used only after connection setup I, RR, RR, REJ, REJ clearing of a connection done by U-frames IC, UA HLC can provide connectionless service only U-frames can be used UI for data transport Code P/F Code Command UI RM IC UP R R R R IM ARM RET ARME RME ABM XI ABME Response UI R UA R R R R RIM FRMR M XI Protocol Principles, v4.8 9 Protocol Principles, v Frame-Types HLC Example: Initializing / Keepalive / First ata Frame A -> B Connection-Oriented I Information RR Receiver Ready REJ Reject RR Receiver ot Ready REJ elective Reject RM et ormal Response Mode ABM et Async Balanced Mode ARM et Async Response Mode RME et RM Extended Mode ABME et ABM Extended Mode ARME et ARM Extended Mode IC isconnect UA Unnumbered Acknowledge RET Reset FRMR Frame Reject Connection-Less UI Unnumbered Information Miscellaneous XI Exchange Identification UP Unnumbered Poll IM et Initialization Mode RIM Request Initialization Mode R- on-reserved V (): A B receive buffer ABM UA.. RR () hello RR () hello ack I (,) first data frame A->B RR () acknowledgement of first data frame R M Request isconnect isconnect Mode V (R): Protocol Principles, v Protocol Principles, v Page - 47 Page - 48

25 atenkommunikation atenkommunikation HLC Example: ata Frames A->B, B->A with piggyback ACK HLC Example: Flow Control V (): A W = 6 I (, ) I (, 4) I (, 5) I (.) I (,) I (,) I (,) B receive buffer I (, ).. I( 4, ) RR (4) B has nothing to transmit therefore no piggyback acknowledgement RR() TOP RR() RR()... RR() GO RR(4) V (R): 4 Protocol Principles, v Protocol Principles, v HLC Example: Keepalive HLC Family V (): I (, ) RR (4).. RR () hello RR (4) hello ack I (4, ) 4 RR (5) LAPB - Link Access Procedure Balanced link layer protocol for X.5 LAP - Link Access Procedure -Channel I V. - used on I terminal adapters for multiplexing HLC LAPM - Link Access Procedure for Modems PPP - Point-to-Point Protocol encapsulates network PUs and identifies protocol type LC - ynchronous ata Link Control (IBM) V (R): LAPB (X.5) LAP (I) V. (I) LLC (LAs) LAPM (V.4) Frame Relay PPP LC (A) Protocol Principles, v Protocol Principles, v4.8 Page - 49 Page - 5

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

Institute of Computer Technology - Vienna University of Technology. L02 - Protocol Principles 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

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

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

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

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

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

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

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

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

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

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

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 FRAMING The data link layer needs to pack bits into frames, so that each

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

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 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

(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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Lecture 6. TCP services. Internet Transport Layer: introduction to the Transport Control Protocol (TCP) A MUCH more complex transport

Lecture 6. TCP services. Internet Transport Layer: introduction to the Transport Control Protocol (TCP) A MUCH more complex transport Lecture 6. Internet Transport Layer: introduction to the Transport ontrol Protocol (TP) RF 793 (estensioni RF 1122,1323,2018,2581,working group tsvwg) A MUH more complex transport for three main reasons

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

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

(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

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

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

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

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

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

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

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

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

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. 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

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 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

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

Goals and topics. Verkkomedian perusteet Fundamentals of Network Media T Circuit switching networks. Topics. Packet-switching networks

Goals and topics. Verkkomedian perusteet Fundamentals of Network Media T Circuit switching networks. Topics. Packet-switching networks Verkkomedian perusteet Fundamentals of Media T-110.250 19.2.2002 Antti Ylä-Jääski 19.2.2002 / AYJ lide 1 Goals and topics protocols Discuss how packet-switching networks differ from circuit switching 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

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

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

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

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

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

The Data Link Layer Chapter 3

The Data Link Layer Chapter 3 The Data Link Layer Chapter 3 Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols Revised: August 2011 & February

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

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

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

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

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput Topics TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput 2 Introduction In this chapter we will discuss TCP s form of flow control called a sliding window protocol It allows

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

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

Transport Protocols and TCP: Review

Transport Protocols and TCP: Review Transport Protocols and TCP: Review CSE 6590 Fall 2010 Department of Computer Science & Engineering York University 1 19 September 2010 1 Connection Establishment and Termination 2 2 1 Connection Establishment

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

Sequence Number. Acknowledgment Number. Data

Sequence Number. Acknowledgment Number. Data CS 455 TCP, Page 1 Transport Layer, Part II Transmission Control Protocol These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make

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

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

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

Data Link Technology. Suguru Yamaguchi Nara Institute of Science and Technology Department of Information Science

Data Link Technology. Suguru Yamaguchi Nara Institute of Science and Technology Department of Information Science Data Link Technology Suguru Yamaguchi Nara Institute of Science and Technology Department of Information Science Agenda Functions of the data link layer Technologies concept and design error control flow

More information

ERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain

ERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain ERROR AND FLOW CONTROL Lecture: 10 Instructor Mazhar Hussain 1 FLOW CONTROL Flow control coordinates the amount of data that can be sent before receiving acknowledgement It is one of the most important

More information

Reliable Transport I: Concepts and TCP Protocol

Reliable Transport I: Concepts and TCP Protocol Reliable Transport I: Concepts and TCP Protocol Stefano Vissicchio UCL Computer Science COMP0023 Today Transport Concepts Layering context Transport goals Transport mechanisms and design choices TCP Protocol

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

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

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

Introduction to Open System Interconnection Reference Model

Introduction to Open System Interconnection Reference Model Chapter 5 Introduction to OSI Reference Model 1 Chapter 5 Introduction to Open System Interconnection Reference Model Introduction The Open Systems Interconnection (OSI) model is a reference tool for understanding

More information

Chapter 13 TRANSPORT. Mobile Computing Winter 2005 / Overview. TCP Overview. TCP slow-start. Motivation Simple analysis Various TCP mechanisms

Chapter 13 TRANSPORT. Mobile Computing Winter 2005 / Overview. TCP Overview. TCP slow-start. Motivation Simple analysis Various TCP mechanisms Overview Chapter 13 TRANSPORT Motivation Simple analysis Various TCP mechanisms Distributed Computing Group Mobile Computing Winter 2005 / 2006 Distributed Computing Group MOBILE COMPUTING R. Wattenhofer

More information

CSE 4215/5431: Mobile Communications Winter Suprakash Datta

CSE 4215/5431: Mobile Communications Winter Suprakash Datta CSE 4215/5431: Mobile Communications Winter 2013 Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/4215 Some slides are adapted

More information

Transport Protocols & TCP TCP

Transport Protocols & TCP TCP Transport Protocols & TCP CSE 3213 Fall 2007 13 November 2007 1 TCP Services Flow control Connection establishment and termination Congestion control 2 1 TCP Services Transmission Control Protocol (RFC

More information

Transport Protocols and TCP

Transport Protocols and TCP Transport Protocols and TCP Functions Connection establishment and termination Breaking message into packets Error recovery ARQ Flow control Multiplexing, de-multiplexing Transport service is end to end

More information

CMPE150 Midterm Solutions

CMPE150 Midterm Solutions CMPE150 Midterm Solutions Question 1 Packet switching and circuit switching: (a) Is the Internet a packet switching or circuit switching network? Justify your answer. The Internet is a packet switching

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

Applied Networks & Security

Applied Networks & Security Applied Networks & Security TCP/IP Protocol Suite http://condor.depaul.edu/~jkristof/it263/ John Kristoff jtk@depaul.edu IT 263 Spring 2006/2007 John Kristoff - DePaul University 1 ARP overview datalink

More information

TCP and Congestion Control (Day 1) Yoshifumi Nishida Sony Computer Science Labs, Inc. Today's Lecture

TCP and Congestion Control (Day 1) Yoshifumi Nishida Sony Computer Science Labs, Inc. Today's Lecture TCP and Congestion Control (Day 1) Yoshifumi Nishida nishida@csl.sony.co.jp Sony Computer Science Labs, Inc 1 Today's Lecture Part1: TCP concept Part2: TCP detailed mechanisms Part3: Tools for TCP 2 1

More information

THE TRANSPORT LAYER UNIT IV

THE TRANSPORT LAYER UNIT IV THE TRANSPORT LAYER UNIT IV The Transport Layer: The Transport Service, Elements of Transport Protocols, Congestion Control,The internet transport protocols: UDP, TCP, Performance problems in computer

More information

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented transport: TCP segment

More information

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1 OSI Transport Layer Network Fundamentals Chapter 4 Version 4.0 1 Transport Layer Role and Services Transport layer is responsible for overall end-to-end transfer of application data 2 Transport Layer Role

More information

Lecture (11) OSI layer 4 protocols TCP/UDP protocols

Lecture (11) OSI layer 4 protocols TCP/UDP protocols Lecture (11) OSI layer 4 protocols TCP/UDP protocols Dr. Ahmed M. ElShafee ١ Agenda Introduction Typical Features of OSI Layer 4 Connectionless and Connection Oriented Protocols OSI Layer 4 Common feature:

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

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

The flow of data must not be allowed to overwhelm the receiver

The flow of data must not be allowed to overwhelm the receiver Data Link Layer: Flow Control and Error Control Lecture8 Flow Control Flow and Error Control Flow control refers to a set of procedures used to restrict the amount of data that the sender can send before

More information

Networked Systems and Services, Fall 2017 Reliability with TCP

Networked Systems and Services, Fall 2017 Reliability with TCP Networked Systems and Services, Fall 2017 Reliability with TCP Jussi Kangasharju Markku Kojo Lea Kutvonen 4. Transmission Control Protocol (TCP) RFC 793 + more than hundred other RFCs TCP Loss Recovery

More information

EECS 122, Lecture 19. Reliable Delivery. An Example. Improving over Stop & Wait. Picture of Go-back-n/Sliding Window. Send Window Maintenance

EECS 122, Lecture 19. Reliable Delivery. An Example. Improving over Stop & Wait. Picture of Go-back-n/Sliding Window. Send Window Maintenance EECS 122, Lecture 19 Today s Topics: More on Reliable Delivery Round-Trip Timing Flow Control Intro to Congestion Control Kevin Fall, kfall@cs cs.berkeley.eduedu Reliable Delivery Stop and Wait simple

More information