Data Networks. Lecture 1. Introduction

Size: px
Start display at page:

Download "Data Networks. Lecture 1. Introduction"

Transcription

1 Data Networks Lecture 1 Introduction Slide 1

2 6.263: Data Networks Fundamental aspects of network Design and Analysis: Architecture Layering Topology design Protocols Pt.-to-Pt. Multiple access End-to-end Algorithms Error recovery Routing Flow Control Analysis tools Probabilistic modeling Queueing Theory Slide 2

3 Course Information Lecturer: Professor Requirements & Grading About one problem set per week (10% of grade) Project (5% of grade) Midterm exam (35 %) Final Exam during finals week (50%) Prerequisite Policy: 6.041, or an equivalent class in probability Textbook: Bertsekas & Gallager, Data Networks (2nd Edition) Slide 3

4 LEC # TOPICS Tentative syllabus 1 Introduction, OSI 7-layer architecture 2 Data Link Layers, Framing, error detection 3 Retransmission Algorithms 4 Retransmission Algorithms 5 Queueing Models - Introduction & Little's theorem 6 M/M/1, M/M/m, queues etc. 7 Networks of queues 8 M/G/1 queues, M/G/1 w/ vacations 9 M/G/1 queues and reservations, priority queues 10 Stability of queueing systems 11 M/G/1 queue occupancy distribution 12 Quiz Slide 4

5 LEC # TOPICS Tentative syllabus, continued 13 Multiple access & Aloha 14 Stabilized Aloha, Tree Algorithms 15 CSMA, CSMA/CD and Ethernet 16 High-speed LANs, Token rings, Satellite reservations 17 Introduction to switch architecture 18 High Speed Switch Scheduling 19 Broadcast routing & Spanning trees 20 Shortest path routing 21 Distributed routing algorithms, optimal routing 22 Flow Control - Window/Credit Schemes 23 Flow Control - Rate Based Schemes 24 Transport layer and TCP/IP 25 ATM Networks 26 Special topic: Optical Networks, Wireless networks Final Exam during final exam week. Date and time to be announced. Slide 5

6 Network Applications Resource sharing Computing Mainframe computer (old days) Today, computers cheaper than comm (except LANS) Printers, peripherals Information DB access and updates E.g., Financial, Airline reservations, etc. Services , FTP, Telnet, Web access Video conferencing DB access Client/server applications Slide 6

7 Network coverage areas Wide Area Networks (WANS) Span large areas (countries, continents, world) Use leased phone lines (expensive!) 1980 s: 10 Kbps, 2000 s: 2.5 Gbps User access rates: 56Kbps 155 Mbps typical Shared comm links: switches and routers E.g, IBM SNA, X.25 networks, Internet Local Area Networks (LANS) Span office or building Single hop (shared channel) (cheap!) User rates: 10 Mbps 1 Gbps E.g., Ethernet, Token rings, Apple-talk Metro Area networks (MANS) Storage area networks Slide 7

8 Network services Synchronous Session appears as a continuous stream of traffic (e.g, voice) Usually requires fixed and limited delays Asynchronous Session appears as a sequence of messages Typically bursty E.g., Interactive sessions, file transfers, Connection oriented services Long sustained session Orderly and timely delivery of packets E.g., Telnet, FTP Connectionless services One time transaction (e.g., ) QoS Slide 8

9 Switching Techniques Circuit Switching Dedicated resources Packet Switching Shared resources Virtual Circuits Datagrams Slide 9

10 Circuit Switching Each session is allocated a fixed fraction of the capacity on each link along its path Dedicated resources Fixed path If capacity is used, calls are blocked E.g., telephone network Advantages of circuit switching Fixed delays Guaranteed continuous delivery Disadvantages Circuits are not used when session is idle Inefficient for bursty traffic Circuit switching usually done using a fixed rate stream (e.g., 64 Kbps) Difficult to support variable data rates Slide 10

11 Problems with circuit switching Many data sessions are low duty factor (bursty), (message transmission time)/(message interarrival time) << 1 Same as: (message arrival rate) * (message transmission time) << 1 The rate allocated to the session must be large enough to meet the delay requirement. This allocated capacity is idle when the session has nothing to send If communication is expensive, then circuit switching is uneconomic to meet the delay requirements of bursty traffic Also, circuit switching requires a call set-up during which resources are not utilized. If messages are much shorter than the call set-up time then circuit switching is not economical (or even practical) More of a problem in high-speed networks Slide 11

12 Circuit Switching Example L = message lengths λ = arrival rate of messages R = channel rate in bits per second X = message transmission delay = L/R R must be large enough to keep X small Bursty traffic => λx << 1 => low utilization Example L = 1000 bytes (8000 bits) λ = 1 message per second X < 0.1 seconds (delay requirement) => R > 8000/0.1 = 80,000 bps Utilization = 8000/80000 = 10% With packet switching channel can be shared among many sessions to achieve higher utilization Slide 12

13 Packet Switched Networks Messages broken into Packets that are routed To their destination PS PS PS PS Packet Network PS PS PS Buffer Packet Switch Slide 13

14 Packet Switching Datagram packet switching Route chosen on packet-by-packet basis Different packets may follow different routes Packets may arrive out of order at the destination E.g., IP (The Internet Protocol) Virtual Circuit packet switching All packets associated with a session follow the same path Route is chosen at start of session Packets are labeled with a VC# designating the route The VC number must be unique on a given link but can change from link to link Imagine having to set up connections between 1000 nodes in a mesh Unique VC numbers imply 1 Million VC numbers that must be represented and stored at each node E.g., ATM (Asynchronous transfer mode) Slide 14

15 Virtual Circuits Packet Switching For datagrams, addressing information must uniquely distinguish each network node and session Need unique source and destination addresses For virtual circuits, only the virtual circuits on a link need be distinguished by addressing Global address needed to set-up virtual circuit Once established, local virtual circuit numbers can then be used to represent the virtual circuits on a given link: VC number changes from link to link Merits of virtual circuits Save on route computation Need only be done once at start of session Save on header size Facilitate QoS provisioning More complex Less flexible 3 6 VC13 VC7 VC3 5 8 Node 5 table VC4 VC3 VC7 (3,5) VC13 -> (5,8) VC3 (3,5) VC7 -> (5,8) VC4 (6,5) VC3 -> (5,8) VC7 2 9 Slide 15

16 Circuit vs packet switching Advantages of packet switching Efficient for bursty data Easy to provide bandwidth on demand with variable rates Disadvantages of packet switching Variable delays Difficult to provide QoS assurances (Best-effort service) Packets can arrive out-of-order Switching Technique Network service Circuit switching => Synchronous (e.g., voice) Packet switching => Asynchronous (e.g., Data) Virtual circuits => Connection oriented Datagram => Connectionless Slide 16

17 Circuit vs Packet Switching Can circuit switched network be used to support data traffic? Can packet switched network be used for connection oriented traffic (e.g., voice)? Need for Quality of service (QoS) mechanisms in packet networks Guaranteed bandwidth Guaranteed delays Guaranteed delay variations Packet loss rate Etc... Slide 17

18 7 Layer OSI Reference Model Application Application Virtual network service Presentation Presentation Virtual session Session Session Virtual link for end to end messages Transport Transport Virtual link for end to end packets Network Network Network Network Data link Control Virtual link for reliable packets DLC DLC DLC DLC Data link Control physical interface Virtual bit pipe phys. int. phys. int. phys. int. phys. int. physical interface Physical link Slide 18 External Site subnet node subnet node External site

19 Layers Presentation layer Provides character code conversion, data encryption, data compression, etc. Session layer Obtains virtual end to end message service from transport layer Provides directory assistance, access rights, billing functions, etc. Standardization has not proceeded well here, since transport to application are all in the operating system and don't really need standard interfaces Focus: Transport layer and lower Slide 19

20 Transport Layer The network layer provides a virtual end to end packet pipe to the transport layer. The transport layer provides a virtual end to end message service to the higher layers. Slide 20 The functions of the transport layer are: 1) Break messages into packets and reassemble packets of size suitable to network layer 2) Multiplex sessions with same source/destination nodes 3) Resequence packets at destination 4) recover from residual errors and failures 5) Provide end-to-end flow control

21 Network layer The network layer module accepts incoming packets from the transport layer and transit packets from the DLC layer It routes each packet to the proper outgoing DLC or (at the destination) to the transport layer Typically, the network layer adds its own header to the packets received from the transport layer. This header provides the information needed for routing (e.g., destination address) Transport layer Each node contains one network Layer module plus one Link layer module per link Network layer DLC layer link 1 DLC layer link 2 DLC layer link 3 Slide 21

22 Link Layer Responsible for error-free transmission of packets across a single link Framing Determine the start and end of packets Error detection Determine which packets contain transmission errors Error correction Retransmission schemes (Automatic Repeat Request (ARQ)) Slide 22

23 Physical Layer Responsible for transmission of bits over a link Propagation delays Time it takes the signal to travel from the source to the destination Signal travel approximately at the speed of light, C = 3x10 8 meters/second E.g., LEO satellite: d = 1000 km => 3.3 ms prop. delay GEO satellite: d = 40,000 km => 1/8 sec prop. delay Ethernet cable: d = 1 km => 3 µs prop. delay Transmission errors Signals experience power loss due to attenuation Transmission is impaired by noise Simple channel model: Binary Symmetric Channel P = bit error probability Independent from bit to bit In reality channel errors are often bursty 0 1 P 1-P 1-P P 0 1 Slide 23

24 Internet Sub-layer A sublayer between the transport and network layers is required when various incompatible networks are joined together This sublayer is used at gateways between the different networks It looks like a transport layer to the networks being joined It is responsible for routing and flow control between networks, so looks like a network layer to the end-to-end transport layer In the internet this function is accomplished using the Internet Protocol (IP) Often IP is also used as the network layer protocol, hence only one protocol is needed Slide 24

25 Internetworking with TCP/IP FTP client FTP Protocol FTP server TCP TCP Protocol TCP ROUTER IP IP Protocol IP Protocol IP IP Ethernet driver Ethernet Protocol Ethernet driver token ring driver token ring Protocol token ring driver Ethernet token ring Slide 25

26 Encapsulation user data Appl header user data Application IP header TCP header TCP header IP datagram application data TCP segment application data Ethernet IP TCP Ethernet header header header application data trailer Ethernet frame 46 to 1500 bytes TCP IP Ethernet driver Ethernet Slide 26

27 Lecture /16.37 The Data Link Layer: Framing and Error Detection MIT, LIDS Slide 1

28 Data Link Layer (DLC) Responsible for reliable transmission of packets over a link Framing: Determine the start and end of packets (sec 2.5) Error Detection: Determine when a packet contains errors (sec 2.3) Error recovery: Retransmission of packets containing errors (sec 2..4) DLC layer recovery May be done at higher layer Slide 2

29 Framing Where is the DATA?? Three approaches to find frame and idle fill boundaries: 1) Character oriented framing 2) Length counts - fixed length 3) Bit oriented protocols (flags) Slide 3

30 Character Based Framing Frame SYN SYN STX Header Packet ETX CRC SYN SYN SYN is synchronous idle STX is start text ETX is end text Standard character codes such as ASCII and EBCDIC contain special communication characters that cannot appear in data Entire transmission is based on a character code Slide 4

31 Issues With Character Based Framing Character code dependent How do you send binary data? Frames must be integer number of characters Errors in control characters are messy NOTE: Primary Framing method from 1960 to ~1975 Slide 5

32 Length field approach (DECNET) Use a header field to give the length of the frame (in bits or bytes) Receiver can count until the end of the frame to find the start of the next frame Receiver looks at the respective length field in the next packet header to find that packet s length Length field must be log 2 (Max_Size_Packet) + 1 bits long This restricts the packet size to be used Issues with length counts Difficult to recover from errors Resynchronization is needed after an error in the length count Slide 6

33 Fixed Length Packets (e.g., ATM) All packets are of the same size In ATM networks all packets are 53 Bytes Requires synchronization upon initialization Issues: Message lengths are not multiples of packet size Last packet of a message must contain idle fill (efficiency) Synchronization issues Fragmentation and re-assembly is complicated at high rates Slide 7

34 Bit Oriented Framing (Flags) A flag is some fixed string of bits to indicate the start and end of a packet A single flag can be used to indicate both the start and the end of a packet In principle, any string could be used, but appearance of flag must be prevented somehow in data Standard protocols use the 8-bit string as a flag Use (<16 bits) as abort under error conditions Constant flags or 1's is considered an idle state Thus is the actual bit string that must not appear in data INVENTED ~ 1970 by IBM for SDLC (synchronous data link protocol) Slide 8

35 BIT STUFFING (Transmitter) Used to remove flag from original data A 0 is stuffed after each consecutive five 1's in the original frame Stuffed bits Original frame Why is it necessary to stuff a 0 in ? If not, then > > How do you differentiate at the receiver? Slide 9

36 DESTUFFING (Receiver) If 0 is preceded by in bit stream, remove it If 0 is preceded by , it is the final bit of the flag. Example: Bits to be removed are underlined below flag Slide 10

37 Overhead In general with a flag 01 K 0 the bit stuffing is require whenever 01 k-1 appears in the original data stream For a packet of length L this will happen about L/2 k times E{OH} = L/ 2 k + (k+ 2) bits For 8 bit flag OH ~ 8 + L/64 For large packets efficiency ~ 1-1/64 = 98.5 (or 1.5% overhead) Optimal flag length If packets are long want longer flag (less stuffing) If packets are short want short flag (reduce overhead due to flag) K opt ~ log 2 (L) Slide 11

38 Framing Errors All framing techniques are sensitive to errors An error in a length count field causes the frame to be terminated at the wrong point (and makes it tricky to find the beginning of the next frame) An error in DLE, STX, or ETX causes the same problems An error in a flag, or a flag created by an error causes a frame to disappear or an extra frame to appear Flag approach is least sensitive to errors because a flag will eventually appear again to indicate the end of a next packet Only thing that happens is that an erroneous packet was created This erroneous packet can be removed through an error detection technique Slide 12

39 Error detection techniques Used by the receiver to determine if a packet contains errors If a packet is found to contain errors the receiver requests the transmitter to re-send the packet Error detection techniques Parity check single bit Horizontal and vertical redundancy check Cyclic redundancy check (CRC) Slide 13

40 Effectiveness of error detection technique Effectiveness of a code for error detection is usually measured by three parameters: 1) minimum distance of code (d) (min # bit errors undetected) The minimum distance of a code is the smallest number of errors that can map one codeword onto another. If fewer than d errors occur they will always detected. Even more than d errors will often be detected (but not always!) 2) burst detecting ability (B) (max burst length always detected) 3) probability of random bit pattern mistaken as error free (good estimate if # errors in a frame >> d or B) Useful when framing is lost K info bits => 2 k valid codewords With r check bits the probability that a random string of length k+r maps onto one of the 2 k valid codewords is 2 k /2 k+r = 2 -r Slide 14

41 Parity check codes k Data bits r Check bits Each parity check is a modulo 2 sum of some of the data bits Example: c 1 = x 1 + x 2 + x 3 c 2 = x 2 + x 3 + x 4 c 3 = x 1 + x 2 + x 4 Slide 15

42 Single Parity Check Code The check bit is 1 if frame contains odd number of 1's; otherwise it is > > Thus, encoded frame contains even number of 1's Receiver counts number of ones in frame An even number of 1 s is interpreted as no errors An odd number of 1 s means that an error must have occured A single error (or an odd number of errors) can be detected An even number of errors cannot be detected Nothing can be corrected Probability of undetected error (independent errors) Slide 16 P(un det ected) = N p i (1 p) N i i even i N = packet size p = error prob.

43 Horizontal and Vertical Parity Horizontal checks Vertical checks The data is viewed as a rectangular array (i.e., a sequence of words) Minimum distance=4, any 4 errors in a rectangular configuration is undetectable Slide 17

44 Cyclic Redundancy Checks (CRC) M R k Data bits r Check bits T T = M 2 r + R M = info bits R = check bits T = codeword A CRC is implemented using a feedback shift register Bits in Bits out Slide 18

45 Cyclic redundancy checks T = M 2 r + R How do we compute R (the check bits)? Choose a generator string G of length r+1 bits Choose R such that T is a multiple of G (T = A*G, for some A) Now when T is divided by G there will be no remainder => no errors All done using mod 2 arithmetic T = M 2 r + R = A*G => M 2 r = A*G + R (mod 2 arithmetic) Let R = remainder of M 2 r /G and T will be a multiple of G Choice of G is a critical parameter for the performance of a CRC Slide 19

46 Example r = 3, G = 1001 M = => M2 r = Slide Modulo Division = R (3 bits)

47 Checking for errors Let T be the received sequence Divide T by G If remainder = 0 assume no errors If remainder is non zero errors must have occurred Slide 21 Example: Send T = Receive T = (no errors) No way of knowing how many errors occurred or which bits are In error => No errors

48 Slide 22 Mod 2 division as polynomial division

49 Slide 23 Implementing a CRC

50 Performance of CRC For r check bits per frame and a frame length less than 2 r-1, the following can be detected 1) All patterns of 1,2, or 3 errors (d > 3) 2) All bursts of errors of r or fewer bits 3) Random large numbers of errors with prob r Standard DLC's use a CRC with r=16 with option of r=32 CRC-16, G = X 16 + X 15 + X 2 +1 = Slide 24

51 Physical Layer Error Characteristics Most Physical Layers ( communications channels) are not well described by a simple BER parameter Most physical error processes tend to create a mix of random & bursts of errors A channel with a BER of 10-7 and a average burst size of 1000 bits is very different from one with independent random errors Example: For an average frame length of 10 4 bits random channel: E[Frame error rate] ~ 10-3 burst channel: E[Frame error rate] ~ 10-6 Best to characterize a channel by its Frame Error Rate This is a difficult problem for real systems Slide 25

52 Lectures 3 & /16.37 The Data Link Layer: ARQ Protocols MIT, LIDS 1

53 Automatic Repeat ReQuest (ARQ) When the receiver detects errors in a packet, how does it let the transmitter know to re-send the corresponding packet? Systems which automatically request the retransmission of missing packets or packets with errors are called ARQ systems. Three common schemes Stop & Wait Go Back N Selective Repeat 2

54 Pure Stop and Wait Protocol Transmitter departure times at A Time -----> packet 0 CRC packet 1 CRC packet 1 CRC ACK NAK Packet 0 Accepted arrival times at receiver Packet 1 Accepted Problem: Lost Packets Sender will wait forever for an acknowledgement Packet may be lost due to framing errors Solution: Use time-out (TO) Sender retransmits the packet after a timeout 3

55 The Use Of Timeouts For Lost Packets Requires Sequence Numbers packet 0 CRC <---- timeout -----> packet 0 CRC packet 0 accepted packet 0 or 1? Problem: Unless packets are numbered the receiver cannot tell which packet it received Solution: Use packet numbers (sequence numbers) 4

56 Request Numbers Are Required On ACKs To Distinguish Packet ACKed 0 packet 0 timeout 0 packet 0 1 packet 1? ACK ACK Packet 0 accepted REQUEST NUMBERS: Instead of sending "ack" or "nak", the receiver sends the number of the packet currently awaited. Sequence numbers and request numbers can be sent modulo 2. This works correctly assuming that 1) Frames travel in order (FCFS) on links 2) The CRC never fails to detect errors 3) The system is correctly initialized. 5

57 Stop and Wait Protocol Algorithm at sender (node A) (with initial condition SN=0) 1) Accept packet from higher layer when available; assign number SN to it 2) Transmit packet SN in frame with sequence # SN 3) Wait for an error free frame from B i. if received and it contains RN>SN in the request # field, set SN to RN and go to 1 ii. if not received within given time, go to 2 6

58 Stop and Wait Algorithm at receiver (node B) (with initial condition RN=0) 1) Whenever an error-free frame is received from A with a sequence # equal to RN, release received packet to higher layer and increment RN. 2) At arbitrary times, but within bounded delay after receiving any error free frame from A, transmit a frame to A containing RN in the request # field. 7

59 Correctness of stop & wait with integer SN, RN Assume, for A to (from) B transmission, that All errors are detected as errors Initially no frames are on link, SN=0, RN=0 Frames may be arbitrarily delayed or lost Each frame is correctly received with at least some probability q>0. Split proof of correctness into two parts: SAFETY: show that no packet is ever released out of order or more than once LIVENESS: show that every packet is eventually released 8

60 Safety No frames on link initially, packet 0 is first packet accepted at A, it is the only packet assigned SN=0, and must be the packet released by B if B ever releases a packet Subsequently (using induction) if B has released packets up to and including n-1, then RN is updated to n when n-1 is released, and only n can be released next 9

61 LIVENESS SN Node A t Node B RN 1 i i i i x i i+1 t 2 x i+1 t 3 Packets out i t 1 = time at which A first starts to transmit packet i t 2 = time at which B correctly receives & releases i, and increases RN to i+1 t 3 = time at which SN is increased to i+1 Will prove that t 1 < t 2 < t 3 <. => Liveness 10

62 Liveness Argument Let SN(t), RN(t) be values of SN and RN at time t From the algorithm, (1) SN(t) and RN(t) are increasing in t and SN(t) RN(t) for all t (2) From safety (since i has not been sent before t 1 ) RN(t 1 ) i and SN(t 1 ) = i From (1) and (2), RN(t 1 ) = SN(t 1 ) = i RN is incremented at t 2 and SN at t 3, so t 2 < t 3 A transmits i repeatedly up to t 3, and thus to t 2 when it is correctly received. Since q>0, t 2 is finite B transmits RN=i+1 repeatedly until correctly received at t 3, and q>0 implies that t 3 is finite. 11

63 Correctness of Stop & Wait with binary (finite) SN, RN Assume that frames travel on link in order Note that with integer SN, RN, either SN=RN (from t 1 to t 2 ) or (3) SN=RN-1 (from t 2 to t 3 ) (4) Since frames travel in order, the sequence numbers arriving at B and the request numbers arriving at A are increasing, so a single bit can resolve the ambiguity between (3) and (4) RN = 0 and SN = 1 or RN =1 and SN = 0 => received packet is an old packet RN = 0 and SN = 0 or RN = 1 and SN = 1 => received packet is new 12

64 Efficiency of stop and wait Let S = total time between the transmission of a packet and reception of its ACK D TP = transmission time of the packet A packet Efficiency (no errors) = D TP /S S S = D TP + 2D P + D TA B ACK D TP D P D TA D P E = D TP /(D TP +2D P + D TA ) D P = prop delay D TA = ACK trans. Time DTP = packet trans. time 13

65 Stop and wait in the presence of errors Let P = the probability of an error in the transmission of a packet or in its acknowledgment S = D TP + 2D P + D TA TO = the timeout interval X = the amount of time that it takes to transmit a packet and receive its ACK. This time accounts for retransmissions due to errors E[X] = S + TO*P/(1-P), Efficiency = D TP /E[X] Where, TO = D TP in a full duplex system TO = S in a half duplex system 14

66 Go Back N ARQ (Sliding Window) Stop and Wait is inefficient when propagation delay is larger than the packet transmission time Can only send one packet per round-trip time Go Back N allows the transmission of new packets before earlier ones are acknowledged Go back N uses a window mechanism where the sender can send packets that are within a window (range) of packets The window advances as acknowledgements for earlier packets are received WINDOW WINDOW WINDOW WINDOW PKT-0 PKT-1 PKT-2 PKT-3 PKT-4 PKT-5 PKT-6 PKT-7 PKT-8 PKT-9 ACK-0 ACK-1 ACK-2 ACK-3 ACK-4 ACK-5 ACK-6 ACK-7 ACK-8 15

67 Features of Go Back N Window size = N Sender cannot send packet i+n until it has received the ACK for packet i Receiver operates just like in Stop and Wait Receive packets in order Receiver cannot accept packet out of sequence Send RN = i + 1 => ACK for all packets up to and including i Use of piggybacking When traffic is bi-directional RN s are piggybacked on packets going in the other direction Each packet contains a SN field indicating that packet s sequence number and a RN field acknowledging packets in the other direction <--Frame Header > SN RN Packet CRC 16

68 Go Back N ARQ The transmitter has a "window" of N packets that can be sent without acknowledgements This window ranges from the last value of RN obtained from the receiver (denoted SN min ) to SN min +N-1 When the transmitter reaches the end of its window, or times out, it goes back and retransmits packet SN min Let SN min be the smallest number packet not yet ACKed Let SN max be the number of the next packet to be accepted from the higher layer (I.e., the next new packet to be transmitted) 17

69 Go Back N Sender Rules SN min = 0; SN max = 0 Repeat If SN max < SN min + N (entire window not yet sent) Send packet SN max ; SN max = SN max + 1; If packet arrives from receiver with RN > SN min SN min = RN; If SN min < SN max (there are still some unacknowledged packets) and sender cannot send any new packets Choose some packet between SN min and SN max and re-send it The last rule says that when you cannot send any new packets you should re-send an old (not yet ACKed) packet There may be two reasons for not being able to send a new packet Nothing new from higher layer Window expired (SN max = SN min + N ) No set rule on which packet to re-send Least recently sent 18

70 Receiver Rules RN = 0; Repeat When a good packet arrives, if SN = RN Accept packet Increment RN = RN +1 At regular intervals send an ACK packet with RN Most DLCs send an ACK whenever they receive a packet from the other direction Delayed ACK for piggybacking Receiver reject all packets with SN not equal RN However, those packets may still contain useful RN numbers (see homework assignment) 19

71 Example of Go Back 7 ARQ SN Window (0,6) (1,7) (2,8) (3,9) (5,11) Node A t Node B RN Packets delivered Note that packet RN-1 must be accepted at B before a frame containing request RN can start transmission at B 20

72 RETRANSMISSION BECAUSE OF ERRORS FOR GO BACK 4 ARQ Window (0,3) (1,4) (2,5) SN Node A x Node B RN t 3 Packets delivered Note that the timeout value here is take to be the time to send a full window of packets Note that entire window has to be retransmitted after an error 21

73 RETRANSMISSION DUE TO FEEDBACK ERRORS FOR GO BACK 4 ARQ Window (0,3) (2,5) (4,7) (5,8) SN Node A Node B x x RN t 6 Packets delivered 5 When an error occurs in the reverse direction the ACK may still arrive in time. This is the case here where the packet from B to A with RN=2 arrives in time to prevent retransmission of packet 0 Packet 2 is retransmitted because RN = 4 did not arrive in time, however it did arrive in time to prevent retransmission of packet 3 Was retransmission of packet 4 and 5 really necessary? Strictly no because the window allows transmission of packets 6 and 7 before further retransmissions. However, this is implementation dependent 22

74 EFFECT OF LONG FRAMES Window (0,3) (1,4) (3,6) (4,7) SN Node A t Node B RN Packets delivered Long frames in feedback direction slow down the ACKs This causes a transmitter with short frames to wait or go back Notice again that the retransmission of packets 3 and 4 was not strictly required because the sender could have sent new packets within the window Again, this is implementation dependent 23

75 Efficiency of Go Back N N*D TP A packet S packet packet packet S = D TP + 2D P + D TA B ACK D TP D P D TA D P We want to choose N large enough to allow continuous transmission while waiting for an ACK for the first packet of the window, N > S/ D TP Without errors the efficiency of Go Back N is, E = min{1, N*D TP /S} 24

76 Efficiency of Go Back N with transmission errors Approximate analysis Assume: N = S D TP TO = N*D TP When an error occurs the entire window of N packets must be retransmitted Let X = the number of packets sent per successful transmission E[X] = 1*(1-P) + (X+N)*P = 1 + N*P/(1-P) Efficiency = 1/E[X] 25

77 Go Back N Requirements Go Back N is guaranteed to work correctly, independent of the detailed choice of which packets to repeat, if 1) System is correctly initialized 2) No failures in detecting errors 3) Packets travel in FCFS order 4) Positive probability of correct reception 5) Transmitter occasionally resends Sn min (e.g., upon timeout) 6) Receiver occasionally sends RN 26

78 Notes on Go Back N Requires no buffering of packets at the receiver Sender must buffer up to N packets while waiting for their ACK Sender must re-send entire window in the event of an error Packets can be numbered modulo M where M > N Because at most N packets can be sent simultaneously Receiver can only accept packets in order Receiver must deliver packets in order to higher layer Cannot accept packet i+1 before packet i This removes the need for buffering This introduces the need to re-send the entire window upon error The major problem with Go Back N is this need to re-send the entire window when an error occurs. This is due to the fact that the receiver can only accept packets in order 27

79 Selective Repeat Protocol (SRP) Selective Repeat attempts to retransmit only those packets that are actually lost (due to errors) Receiver must be able to accept packets out of order Since receiver must release packets to higher layer in order, the receiver must be able to buffer some packets Retransmission requests Implicit The receiver acknowledges every good packet, packets that are not ACKed before a time-out are assumed lost or in error Explicit Notice that this approach must be used to be sure that every packet is eventually received An explicit NAK (selective reject) can request retransmission of just one packet This approach can expedite the retransmission but is not strictly needed One or both approaches are used in practice 28

80 SRP Rules Window protocol just like GO Back N Window size W Packets are numbered Mod M where M >= 2W Sender can transmit new packets as long as their number is with W of all un-acked packets Sender retransmit un-acked packets after a timeout Or upon a NAK if NAK is employed Receiver ACKs all correct packets Receiver stores correct packets until they can be delivered in order to the higher layer 29

81 Need for buffering Sender must buffer all packets until they are ACKed Up to W un-acked packet are possible Receiver must buffer packets until they can be delivered in order I.e., until all lower numbered packets have been received Needed for orderly delivery of packets to the higher layer Up to W packets may have to be buffered (in the event that the first packet of a window is lost) Implication of buffer size = W Number of un-acked packets at sender =< W Buffer limit at sender Number of un-acked packets at sender cannot differ by more than W Buffer limit at the receiver (need to deliver packets in order) Packets must be numbered modulo M >= 2W (using log 2 (M) bits) 30

82 EFFICIENCY For ideal SRP, only packets containing errors will be retransmitted Ideal is not realistic because sometimes packets may have to be retransmitted because their window expired. However, if the window size is set to be much larger than the timeout value then this is unlikely With ideal SRP, efficiency = 1 - P P = probability of a packet error Notice the difference with Go Back N where efficiency (Go Back N) = 1/(1 + N*P/(1-P)) When the window size is small performance is about the same, however with a large window SRP is much better As transmission rates increase we need larger windows and hence the increased use of SRP 31

83 Why are packets numbered Modulo 2W? Lets consider the range of packets that may follow packet i at the receiver i - W +1 i i - W +1 x i i - W +1 Packet i may be followed by the first packet of the window (i -W+1) if it requires retransmission i i+1 i+2 i+w x x x x i i - W Packet i may be followed by the last packet of the window (i+w) if all Of the ACKs between i and i +W are lost Receiver must differentiate between packets i -W+1... i +W These 2W packets can be differentiated using Mod 2W numbering 32

84 STANDARD DLC's HDLC, LAPB (X.25), and SDLC are almost the same HDLC/ SDLC developed by IBM for IBM SNA networks LAPB developed for X.25 networks They all use bit oriented framing with flag = They all use a 16-bit CRC for error detection They all use Go Back N ARQ with N = 7 or 127 (optional) SDLC packet flag address control data CRC flag Multipoint SN,RN communication Older protocols (used for modems, e.g., xmodem) used stop and wait and simple checksums 33

85 Optimal packet size based on pipelining effect Source M links destination Packet must be completely received before being forwarded to next node Delay for sending N packets over M links (pipelining delay) D = N*D TP + (M-1)*D TP Each packet contains K bits of data and a header of size H bits CRC, flags, SN s, etc. Total packet size K+H bits In order to transmit a message of L bits we need L/K packets Time to transmit message over M links, R = data rate D = L K + H + (M 1) K + H K R R 34

86 Transmission Delay D = L K Optimal packet size K + H R + (M 1) K + H R Pipelining delay Small packets reduce the pipelining delay but increase the transmission delay due to additional headers Large packets reduce header overhead but increase the pipelining delay Optimal packet size, K opt = LH M 1 Approach may be appropriate for high-speed multi-hop networks Alternative approach may optimize the packet size to minimize link layer retransmissions due to errors Large packet are more likely to contain transmission errors 35

87 Lectures 5 & /16.37 Introduction to Queueing Theory MIT, LIDS Slide 1

88 Packet Switched Networks Messages broken into Packets that are routed To their destination PS PS PS PS Packet Network PS PS PS Buffer Packet Switch Slide 2

89 Queueing Systems Used for analyzing network performance In packet networks, events are random Random packet arrivals Random packet lengths While at the physical layer we were concerned with bit-error-rate, at the network layer we care about delays How long does a packet spend waiting in buffers? How large are the buffers? In circuit switched networks want to know call blocking probability How many circuits do we need to limit the blocking probability? Slide 3

90 Random events Arrival process Packets arrive according to a random process Typically the arrival process is modeled as Poisson The Poisson process Arrival rate of λ packets per second Over a small interval δ, P(exactly one arrival) = λδ + ο(δ) P(0 arrivals) = 1 - λδ + ο(δ) P(more than one arrival) = 0(δ) Where 0(δ)/ δ > 0 δ > 0. It can be shown that: P(n arrivalsininterval T)= ( λt )n e λt n! Slide 4

91 The Poisson Process P(n arrivalsininterval T)= ( λt )n e λt n! n = number of arrivals in T It can be shown that, E[n] = λt E[n 2 ] = λt + (λt) 2 σ 2 = E[(n -E[n]) 2 ] = E[n 2 ] - E[n] 2 = λt Slide 5

92 Inter-arrival times Time that elapses between arrivals (IA) P(IA <= t) = 1 - P(IA > t) = 1 - P(0 arrivals in time t) = 1 - e -λt This is known as the exponential distribution Inter-arrival CDF = F IA (t) = 1 - e -λt Inter-arrival PDF = d/dt F IA (t) = λe -λt The exponential distribution is often used to model the service times (I.e., the packet length distribution) Slide 6

93 Markov property (Memoryless) P(T t 0 + t T > t 0 ) = P(T t) Pr oof : P(T t 0 + t T > t 0 ) = P(t 0 < T t 0 + t) P(T > t 0 ) t 0 +t λe λt dt e λt t 0 + t t 0 t0 = = = λe λt dt e λt t 0 t 0 e λ ( t +t 0 ) + e λ ( t 0 ) e λ ( t 0 ) = 1 e λt = P(T t) Previous history does not help in predicting the future! Distribution of the time until the next arrival is independent of when the last arrival occurred! Slide 7

94 Example Suppose a train arrives at a station according to a Poisson process with average inter-arrival time of 20 minutes When a customer arrives at the station the average amount of time until the next arrival is 20 minutes Regardless of when the previous train arrived The average amount of time since the last departure is 20 minutes! Paradox: If an average of 20 minutes passed since the last train arrived and an average of 20 minutes until the next train, then an average of 40 minutes will elapse between trains But we assumed an average inter-arrival time of 20 minutes! What happened? Slide 8

95 Properties of the Poisson process Merging Property λ 1 λ 2 λ i λ k Let A1, A2, Ak be independent Poisson Processes of rate λ1, λ2, λk A = A i is also Poisson of rate = λ i Splitting property Suppose that every arrival is randomly routed with probability P to stream 1 and (1-P) to stream 2 Streams 1 and 2 are Poisson of rates Pλ and (1-P)λ respectively Slide 9 λ P 1-P λp λ(1 P)

96 Queueing Models Customers Queue/buffer server Model for Customers waiting in line Assembly line Packets in a network (transmission line) Want to know Average number of customers in the system Average delay experienced by a customer Quantities obtained in terms of Arrival rate of customers (average number of customers per unit time) Service rate (average number of customers that the server can serve per unit time) Slide 10

97 Little s theorem λ packet per second Network (system) (N,T) N = average number of packets in system T = average amount of time a packet spends in the system λ = arrival rate of packets into the system (not necessarily Poisson) Little s theorem: N = λt Can be applied to entire system or any part of it Crowded system -> long delays On a rainy day people drive slowly and roads are more congested! Slide 11

98 Proof of Little s Theorem α(t), β(t) t1 α(t) T3 T2 T1 t2 t3 t4 T4 β(t) α(t) = number of arrivals by time t β(t) = number of departures by time t t i = arrival time of i th customer T i = amount of time i th customer spends in the system N(t) = number of customers in system at time t = α(t) - β(t) Similar proof for non First-come-first-serve Slide 12

99 Proof of Little s Theorem N t = 1 t t 0 N (τ )dτ = timeave.numberof customersin queue N = Limit t N t = steadystatetimeave. λ t = α(t)/ t, λ = Limit t λ t = arrival rate α ( t) T i T t = i= 0 α(t) = timeave.systemdelay, T = Limit t T t Assume above limits exists, assume Ergodic system α ( t) N (t) = α(t) β(t ) N t = i=1 T i t N = lim i =1 T i t, t α (t ) α( t ) α ( t) T = lim t i =1 T i i=1 T i = α(t)t α(t) α ( t) α ( t) i=1 N = T i = ( α(t) i=1 ) T i Slide 13 t t α(t) = λt

100 Application of little s Theorem Little s Theorem can be applied to almost any system or part of it Example: Customers Queue/buffer server 1) The transmitter: D TP = packet transmission time Average number of packets at transmitter = λd TP = ρ = link utilization 2) The transmission line: D p = propagation delay Average number of packets in flight = λd p 3) The buffer: D q = average queueing delay Average number of packets in buffer = N q = λd q 4) Transmitter + buffer Average number of packets = ρ + N q Slide 14

101 Application to complex system λ 1 λ 3 λ 1 λ 2 λ 2 λ 3 We have complex network with several traffic streams moving through it and interacting arbitrarily For each stream i individually, Little says N i = λ i T i For the streams collectively, Little says N = λt where Slide 15 N = i N i & λ = i λ i i= k From Little's Theorem: T = λ i=1 it i i= k i=1 λ i

102 Single server queues buffer λ packet per second Server µ packet per second Service time = 1/µ M/M/1 Poisson arrivals, exponential service times M/G/1 Poisson arrivals, general service times M/D/1 Poisson arrivals, deterministic service times (fixed) Slide 16

103 Markov Chain for M/M/1 system 1 λδ λδ λδ λδ λδ k µδ µδ µδ µδ State k => k customers in the system P(I,j) = probability of transition from state I to state j As δ => 0, we get: P(0,0) = 1 - λδ, P(j,j+1) = λδ P(j,j) = 1 - λδ µδ P(j,j-1) = µδ P(I,j) = 0 for all other values of I,j. Birth-death chain: Transitions exist only between adjacent states λδ, µδ are flow rates between states Slide 17

104 Equilibrium analysis We want to obtain P(n) = the probability of being in state n At equilibrium λp(n) = µp(n+1) for all n Local balance equations between two states (n, n+1) P(n+1) = (λ/µ)p(n) = ρp(n), ρ = λ/µ It follows: P(n) = ρ n P(0) i = 0 P(n) = 1 Now by axiom of probability: P(0) i =0 ρ n P(0) = 1 ρ = 1 P(0) = 1 ρ P(n) = ρ n (1 ρ) Slide 18

105 Average queue size N = np(n) = nρn (1 ρ) = ρ n=0 n=0 1 ρ N = ρ λ / µ λ = = 1 ρ 1 λ / µ µ λ N = Average number of customers in the system The average amount of time that a customer spends in the system can be obtained from Little s formula (N=λT => T = N/λ) T includes the queueing delay plus the service time (Service time = D TP = 1/µ ) 1 W = amount of time spent in queue = T - 1/µ => W = µ λ 1 µ Finally, the average number of customers in the buffer can be obtained from little s formula λ N Q = λw = µ λ λ = N ρ µ T = 1 µ λ Slide 19

106 Example (fast food restaurant) Customers arrive at a fast food restaurant at a rate of 100 per hour and take 30 seconds to be served. How much time do they spend in the restaurant? Service rate = µ = 60/0.5=120 customers per hour T = 1/µ λ = 1/( ) = 1/20 hrs = 3 minutes How much time waiting in line? W = T - 1/µ = 2.5 minutes How many customers in the restaurant? N = λt = 5 What is the server utilization? ρ = λ/µ = 5/6 Slide 20

107 1 2 λ/m λ/m Packet switching vs. Circuit switching M M TDM, Time Division Multiplexing Each user can send µ/n packets/sec and has packet arriving at rate λ/n packets/sec N λ/m Packets generated at random times D = M / µ + M (λ / µ) M/M/1 (µ λ) formula λ/m Statistical Mutliplexer λ Buffer µ packets/sec D = 1/µ + ( λ / µ) M/M/1 λ/m (µ λ) formula Slide 21

108 Circuit (tdm/fdm) vs. Packet switching Average Packet Service Time (slots) Average Service Time TDM with 20 sources Ideal Statistical Multiplexing (M/D/1) Total traffic load, packets per slot Slide 22

109 M server systems: M/M/m λ packet per second buffer Server M servers µ packet per Server second, per server Departure rate is proportional to the number of servers in use Similar Markov chain: 1 λδ λδ λδ λδ λδ λδ m m+1 Slide 23 µδ 2µδ 3µδ mµδ mµδ

110 M/M/m queue Balance equations: λp(n 1) = nµp(n) n m λp(n 1) = mµp(n) n > m Again, solve for P(0): m 1 (mρ) n ( mρ) m 1 P(0) = + m!(1 ρ) n =0 n! n= P Q = P( n) = P(0)(mρ)m n= m m!(1 ρ) P(0)( mρ) n / n! n m λ P(n ) =, ρ = 1 P(0)( m m ρ n )/ m! n > m mµ n= n= m + n ρ n=0 n =0 m! N Q = np(n + m) = np(0)( mm ρ ) = P Q ( 1 ρ ) Slide 24 W = N Q, T = W + 1/ µ, N =λt =λ / µ + N Q λ

111 Applications of M/M/m Bank with m tellers Network with parallel transmission lines λ Node A m lines, each of rate µ Node B Use M/M/m formula VS λ One line of rate mµ Node A Node B Use M/M/1 formula Slide 25 When the system is lightly loaded, PQ~0, and Single server is m times faster When system is heavily loaded, queueing delay dominates and systems are roughly the same

112 M/M/Infinity Unlimited servers => customers experience no queueing delay The number of customers in the system represents the number of customers presently being served 1 λδ λδ λδ λδ λδ λδ n n+1 µδ 2µδ 3µδ nµδ (n+1)µδ λp(n 1) = nµp(n), n > 1, P( n) = P(0)(λ / µ)n n! P(0) =[ 1 + n=1 (λ / µ) n / n!] = e λ / µ 1 P(n ) = (λ / µ) n e λ / µ / n! => Poisson distribution! Slide 26 N = Averagenumberin system =λ / µ, T = N / λ =1/ µ = servicetime

113 Blocking Probability A circuit switched network can be viewed as a Multi-server queueing system Calls are blocked when no servers available - busy signal For circuit switched network we are interested in the call blocking probability M/M/m/m system m servers => m circuits Last m indicated that the system can hold no more than m users Erlang B formula Gives the probability that a caller finds all circuits busy Holds for general call arrival distribution (although we prove Markov case only) ( λ / µ) m / m! P B = m (λ / µ) n / n! n= 0 Slide 27

114 M/M/m/m system: Erlang B formula 1 λδ λδ λδ λδ λδ m µδ 2µδ 3µδ mµδ λp(n 1) = nµp(n ), 1 n m, P(n) = m 1 P(0) = [ n= 0 (λ / µ) n / n! ] P(0)( λ / µ)n n! P B = P( Blocking) = P(m) = ( λ / µ) m / m! m n= 0 (λ / µ) n / n! Slide 28

115 Erlang B formula ( A) m / m! A= λ/µ = (arrival rate)*(ave call duration) = average load P B = m Formula insensitive to λ and µ but only to their ratio ( A) n / n! n= 0 System load usually expressed in Erlangs Used for sizing transmission line How many circuits does the satellite need to support? The number of circuits is a function of the blocking probability that we can tolerate Systems are designed for a given load predictions and blocking probabilities (typically small) Example Arrival rate = 4 calls per minute, average 3 minutes per call => A = 12 How many circuits do we need to provision? Depends on the blocking probability that we can tolerate Slide 29 Circuits P B 20 1% 15 8% 7 30%

116 Multi-dimensional Markov Chains K classes of customers Class j: arrival rate λ j ; service rate µ j State of system: n = (n1, n2,, nk); nj = number of class j customers in the system If detailed balance equations hold for adjacent states, then a product form solution exists, where: P(n,.n2,, nk) = P 1 (n1)*p 2 (n2)* *P k (nk) Example: K independent M/M/1 systems P i (n i ) = ρ i n i (1 ρ i ), ρ i = λ i / µ i Same holds for other independent birth-death chains E.g., M.M/m, M/M/Inf, M/M/m/m Slide 30

117 Truncation Eliminate some of the states E.g., for the K M/M/1 queues, eliminate all states where n1+n2+ +nk > K1 (some constant) Resulting chain must remain irreducible All states must communicate Product form for stationary distribution of the truncated system E.g., K independent M/M/1 queues P(n 1, n 2,...n k ) = ρ n1 1 ρ 2 n2 nk...ρ K, G = ρ n1 ρ G 1 2 n S n2...ρ K nk E.g., K independent M/M/inf queues P(n 1, n 2,...n k ) = (ρ n1 n2 nk 1 / n 1!)(ρ 2 / n 2!)...(ρ K / n k!) nk, G = (ρ n1 / n!) 1 / n 1!)(ρ n2 2 / n 2!)...(ρ K k G G is a normalization constant that makes P(n) a distribution S is the set of states in the truncated system n S Slide 31

118 Example Slide 32 Two session classes in a circuit switched system M channels of equal capacity Two session types: Type 1: arrival rate λ1 and service rate µ1 Type 2: arrival rate λ2 and service rate µ2 System can support up to M sessions of either class If µ1= µ2, treat system as an M/M/m/m queue with arrival rate λ1+ λ2 When µ1=! µ2 need to know the number of calls in progress of each session type Two dimensional markov chain state = (n1, n2) Want P(n1, n2): n1+n2 <=m Can be viewed as truncated M/M/Inf queues Notice that the transition rates in the M/M/Inf queue are the same as those in a truncated M/M/m/m queue i = m j = m i P(n 1, n 2 ) = (ρ n1 n2 1 / n 1!)(ρ 2 / n 2!), G = (ρ i j 1 / i!)(ρ 2 / j!), n1+ n2 m G i =0 j =0 Notice that the double sum counts only states for which j+i <= m

119 PASTA: Poisson Arrivals See Time Averages The state of an M/M/1 queue is the number of customers in the system More general queueing systems have a more general state that may include how much service each customer has already received For Poisson arrivals, the arrivals in any future increment of time is independent of those in past increments and for many systems of interest, independent of the present state S(t) (true for M/M/1, M/M/m, and M/G/1). For such systems, P{S(t)=s A(t+δ)-A(t)=1} = P{S(t)=s} (where A(t)= # arrivals since t=0) In steady state, arrivals see steady state probabilities Slide 33

120 Occupancy distribution upon arrival Arrivals may not always see the steady-state averages Example: Deterministic arrivals 1 per second Deterministic service time of 3/4 seconds λ = 1 packets/second T = 3/4 seconds (no queueing) N = λt = Average occupancy = 3/4 However, notice that an arrival always finds the system empty! Slide 34

Digital Communication Networks

Digital Communication Networks Digital Communication Networks MIT PROFESSIONAL INSTITUTE, 6.20s July 25-29, 2005 Professor Muriel Medard, MIT Professor, MIT Slide 1 Digital Communication Networks Introduction Slide 2 Course syllabus

More information

Data Networks. Lecture 1: Introduction. September 4, 2008

Data Networks. Lecture 1: Introduction. September 4, 2008 Data Networks Lecture 1: Introduction September 4, 2008 Slide 1 Learning Objectives Fundamental aspects of network Design and Analysis: Architecture: layering, topology design, switching mechanisms Protocols:

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

Lecture / The Data Link Layer: Framing and Error Detection

Lecture / The Data Link Layer: Framing and Error Detection Lecture 2 6.263/16.37 The Data Link Layer: Framing and Error Detection MIT, LIDS Slide 1 Data Link Layer (DLC) Responsible for reliable transmission of packets over a link Framing: Determine the start

More information

Introduction and Layered Network Architecture. EEE 538 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department

Introduction and Layered Network Architecture. EEE 538 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department Introduction and Layered Network Architecture EEE 538 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department 1 Fundamental Aspects of Network Analysis Architecture Layering

More information

Data Link Control Layer, Error Detection, Error Correction, and Framing

Data Link Control Layer, Error Detection, Error Correction, and Framing Data Link Control Layer, Error Detection, Error Correction, and Framing EEE 538, WEEK 2 Dr. Nail Akar Bilkent University Electrical and Electronics Engineering Department 1 Error Detection Techniques Used

More information

Digital Communication Networks

Digital Communication Networks Digital Communication Networks MIT PROFESSIONAL INSTITUTE, 6.20s July 24-28, 2006 Professor Muriel Medard, MIT Professor, MIT Slide 1 Digital Communication Networks Introduction Slide 2 Course syllabus

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

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

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

CS 4453 Computer Networks Winter

CS 4453 Computer Networks Winter CS 4453 Computer Networks Chapter 2 OSI Network Model 2015 Winter OSI model defines 7 layers Figure 1: OSI model Computer Networks R. Wei 2 The seven layers are as follows: Application Presentation Session

More information

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING

2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING UNIT-2 2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS 2.2.1 Pure ALOHA 2.2.2 Slotted ALOHA 2.2.3 Carrier Sense Multiple Access 2.2.4 CSMA with Collision Detection 2.2.5 Collision Free Protocols 2.2.5.1

More information

The data link layer has a number of specific functions it can carry out. These functions include. Figure 2-1. Relationship between packets and frames.

The data link layer has a number of specific functions it can carry out. These functions include. Figure 2-1. Relationship between packets and frames. Module 2 Data Link Layer: - Data link Layer design issues - Error Detection and correction Elementary Data link protocols, Sliding window protocols- Basic Concept, One Bit Sliding window protocol, Concept

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

DATA LINK LAYER UNIT 7.

DATA LINK LAYER UNIT 7. DATA LINK LAYER UNIT 7 1 Data Link Layer Design Issues: 1. Service provided to network layer. 2. Determining how the bits of the physical layer are grouped into frames (FRAMING). 3. Dealing with transmission

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

Lecture 5: Performance Analysis I

Lecture 5: Performance Analysis I CS 6323 : Modeling and Inference Lecture 5: Performance Analysis I Prof. Gregory Provan Department of Computer Science University College Cork Slides: Based on M. Yin (Performability Analysis) Overview

More information

Code No: RR Set No. 1

Code No: RR Set No. 1 Code No: RR320503 Set No. 1 III B.Tech II Semester Regular Examinations, Apr/May 2007 COMPUTER NETWORKS ( Common to Computer Science & Engineering, Information Technology, Electronics & Control Engineering,

More information

Networking Link Layer

Networking Link Layer Networking Link Layer ECE 650 Systems Programming & Engineering Duke University, Spring 2018 (Link Layer Protocol material based on CS 356 slides) TCP/IP Model 2 Layer 1 & 2 Layer 1: Physical Layer Encoding

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

CS 455/555 Intro to Networks and Communications. Link Layer

CS 455/555 Intro to Networks and Communications. Link Layer CS 455/555 Intro to Networks and Communications Link Layer Dr. Michele Weigle Department of Computer Science Old Dominion University mweigle@cs.odu.edu http://www.cs.odu.edu/~mweigle/cs455-s13 1 Link Layer

More information

2 Network Basics. types of communication service. how communication services are implemented. network performance measures. switching.

2 Network Basics. types of communication service. how communication services are implemented. network performance measures. switching. 2 Network Basics types of communication service how communication services are implemented switching multiplexing network performance measures 1 2.1 Types of service in a layered network architecture connection-oriented:

More information

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. Nov 1,

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. Nov 1, CSMC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala 1 Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet

More information

Data Link Layer: Overview, operations

Data Link Layer: Overview, operations Data Link Layer: Overview, operations Chapter 3 1 Outlines 1. Data Link Layer Functions. Data Link Services 3. Framing 4. Error Detection/Correction. Flow Control 6. Medium Access 1 1. Data Link Layer

More information

Error Detection Codes. Error Detection. Two Dimensional Parity. Internet Checksum Algorithm. Cyclic Redundancy Check.

Error Detection Codes. Error Detection. Two Dimensional Parity. Internet Checksum Algorithm. Cyclic Redundancy Check. Error Detection Two types Error Detection Codes (e.g. CRC, Parity, Checksums) Error Correction Codes (e.g. Hamming, Reed Solomon) Basic Idea Add redundant information to determine if errors have been introduced

More information

Links. CS125 - mylinks 1 1/22/14

Links. CS125 - mylinks 1 1/22/14 Links 1 Goals of Today s Lecture Link-layer services Encoding, framing, and error detection Error correction and flow control Sharing a shared media Channel partitioning Taking turns Random access Shared

More information

The Link Layer and LANs. Chapter 6: Link layer and LANs

The Link Layer and LANs. Chapter 6: Link layer and LANs The Link Layer and LANs EECS3214 2018-03-14 4-1 Chapter 6: Link layer and LANs our goals: understand principles behind link layer services: error detection, correction sharing a broadcast channel: multiple

More information

Lecture 9 November 12, Wireless Access. Graduate course in Communications Engineering. University of Rome La Sapienza. Rome, Italy

Lecture 9 November 12, Wireless Access. Graduate course in Communications Engineering. University of Rome La Sapienza. Rome, Italy Lecture 9 November 12, 2018 Wireless Access Graduate course in Communications Engineering University of Rome La Sapienza Rome, Italy 2018-2019 Medium Access Control Scheduled access Classification of wireless

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

Data Link Networks. Hardware Building Blocks. Nodes & Links. CS565 Data Link Networks 1

Data Link Networks. Hardware Building Blocks. Nodes & Links. CS565 Data Link Networks 1 Data Link Networks Hardware Building Blocks Nodes & Links CS565 Data Link Networks 1 PROBLEM: Physically connecting Hosts 5 Issues 4 Technologies Encoding - encoding for physical medium Framing - delineation

More information

Inst: Chris Davison

Inst: Chris Davison ICS 153 Introduction to Computer Networks Inst: Chris Davison cbdaviso@uci.edu ICS 153 Data Link Layer Contents Simplex and Duplex Communication Frame Creation Flow Control Error Control Performance of

More information

Reminder: Datalink Functions Computer Networking. Datalink Architectures

Reminder: Datalink Functions Computer Networking. Datalink Architectures Reminder: Datalink Functions 15-441 15 441 15-641 Computer Networking Lecture 5 Media Access Control Peter Steenkiste Fall 2015 www.cs.cmu.edu/~prs/15-441-f15 Framing: encapsulating a network layer datagram

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

CSC 4900 Computer Networks: The Link Layer

CSC 4900 Computer Networks: The Link Layer CSC 4900 Computer Networks: The Link Layer Professor Henry Carter Fall 2017 Last Time We talked about intra-as routing protocols: Which routing algorithm is used in RIP? OSPF? What techniques allow OSPF

More information

Outline: Connecting Many Computers

Outline: Connecting Many Computers Outline: Connecting Many Computers Last lecture: sending data between two computers This lecture: link-level network protocols (from last lecture) sending data among many computers 1 Review: A simple point-to-point

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 16

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 16 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 16 1 Final project demo Please do the demo next week to the TAs. So basically you may need

More information

Markov Chains and Multiaccess Protocols: An. Introduction

Markov Chains and Multiaccess Protocols: An. Introduction Markov Chains and Multiaccess Protocols: An Introduction Laila Daniel and Krishnan Narayanan April 8, 2012 Outline of the talk Introduction to Markov Chain applications in Communication and Computer Science

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

CS 3640: Introduction to Networks and Their Applications

CS 3640: Introduction to Networks and Their Applications CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 5: The Link Layer I Errors and medium access Instructor: Rishab Nithyanand Teaching Assistant: Md. Kowsar Hossain 1 You should

More information

CS321: Computer Networks Introduction to Computer Networks and Internet

CS321: Computer Networks Introduction to Computer Networks and Internet CS321: Computer Networks Introduction to Computer Networks and Internet Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Jodhpur E-mail: manaskhatua@iitj.ac.in What is Data Communication? Data communications

More information

ECE 4450:427/527 - Computer Networks Spring 2017

ECE 4450:427/527 - Computer Networks Spring 2017 ECE 4450:427/527 - Computer Networks Spring 2017 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 5.1: Link Layer Dr. Nghi Tran (ECE-University of Akron) ECE 4450:427/527 Computer

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Link Layer: Intro, Errors, Multiple Access Sec 6.1, 6.2, 6.3 Prof. Lina Battestilli Fall 2017 Chapter 6: Link layer Goals: understand principles behind

More information

Lecture 6 The Data Link Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 6 The Data Link Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 6 The Data Link Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Link Layer: setting the context two physically connected devices: host-router, router-router, host-host,

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

Computer Network. Direct Link Networks Reliable Transmission. rev /2/2004 1

Computer Network. Direct Link Networks Reliable Transmission. rev /2/2004 1 Computer Network Direct Link Networks Reliable Transmission rev 1.01 24/2/2004 1 Outline Direct link networks (Ch. 2) Encoding Framing Error detection Reliable delivery Media access control Network Adapter

More information

ENGI 4557 Digital Communications Practice Problems 2017 (Part 2)

ENGI 4557 Digital Communications Practice Problems 2017 (Part 2) ENGI 4557 Digital Communications Practice Problems 207 (Part 2) H = n p i log 2 ( ) p i C = W log 2 ( + S N ) SNR = 6m + 0 log 0 ( 3σ2 x V ) 2 SNR = 6m 0 ( ) n n! = k k!(n k)! x = σ 2 = + + x p(x)dx (x

More information

Read Chapter 4 of Kurose-Ross

Read Chapter 4 of Kurose-Ross CSE 422 Notes, Set 4 These slides contain materials provided with the text: Computer Networking: A Top Down Approach,5th edition, by Jim Kurose and Keith Ross, Addison-Wesley, April 2009. Additional figures

More information

Comparison of ISO-OSI and TCP/IP Suit. Functions of Data Link Layer:

Comparison of ISO-OSI and TCP/IP Suit. Functions of Data Link Layer: Comparison of ISO-OSI and TCP/IP Suit Functions of Data Link Layer: 1. Frame generation ( Character Count, Character Stuffing, Bit Stuffing) 2. Error Processing (Parity(EVEN or ODD), Block Parity, Hamming

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

Communication Networks. Part I

Communication Networks. Part I Communication Networks Part I Manuel P. Ricardo Faculdade de Engenharia da Universidade do Porto » What are the main uses of computer networks?» What are the common architectures of network applications?»

More information

Computer Networks Medium Access Control. Mostafa Salehi Fall 2008

Computer Networks Medium Access Control. Mostafa Salehi Fall 2008 Computer Networks Medium Access Control Mostafa Salehi Fall 2008 2008 1 Outline Issues ALOHA Network Ethernet Token Ring Wireless 2 Main Issues Local Area Network (LAN) : Three or more machines are physically

More information

Next Steps Spring 2011 Lecture #18. Multi-hop Networks. Network Reliability. Have: digital point-to-point. Want: many interconnected points

Next Steps Spring 2011 Lecture #18. Multi-hop Networks. Network Reliability. Have: digital point-to-point. Want: many interconnected points Next Steps Have: digital point-to-point We ve worked on link signaling, reliability, sharing Want: many interconnected points 6.02 Spring 2011 Lecture #18 multi-hop networks: design criteria network topologies

More information

TCOM 370 NOTES 99-1 NETWORKING AND COMMUNICATIONS

TCOM 370 NOTES 99-1 NETWORKING AND COMMUNICATIONS TCOM 370 NOTES 99-1 NETWORKING AND COMMUNICATIONS Communication Networks Allow Exchange of Information between Users telephone network for voice communication interconnected computers and peripherals,

More information

===================================================================== Exercises =====================================================================

===================================================================== Exercises ===================================================================== ===================================================================== Exercises ===================================================================== 1 Chapter 1 1) Design and describe an application-level

More information

Direct Link Networks: Building Blocks (2.1), Encoding (2.2), Framing (2.3)

Direct Link Networks: Building Blocks (2.1), Encoding (2.2), Framing (2.3) Direct Link Networks: Building Blocks (2.1), Encoding (2.2), Framing (2.3) ECPE/CS 5516: Computer Networks Originally by Scott F. Midkiff (ECpE) Modified by Marc Abrams (CS) Virginia Tech courses.cs.vt.edu/~cs5516

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

Telecom Systems Chae Y. Lee. Contents. Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility)

Telecom Systems Chae Y. Lee. Contents. Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility) Data Link Control Contents Flow Control Error Detection/Correction Link Control (Error Control) Link Performance (Utility) 2 Flow Control Flow control is a technique for assuring that a transmitting entity

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

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties

More information

ECSE-4670: Computer Communication Networks (CCN) Informal Quiz 3

ECSE-4670: Computer Communication Networks (CCN) Informal Quiz 3 ECSE-4670: Computer Communication Networks (CCN) Informal Quiz 3 : shivkuma@ecse.rpi.edu Biplab Sikdar: sikdab@rpi.edu 1 T F Slotted ALOHA has improved utilization since the window of vulnerability is

More information

Chapter 5 Link Layer and LANs

Chapter 5 Link Layer and LANs Chapter 5 Link Layer and LANs Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007. All material copyright 1996-2007 J.F Kurose and K.W. Ross, All Rights

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

ECSE 414 Fall 2014 Final Exam Solutions

ECSE 414 Fall 2014 Final Exam Solutions ECSE 414 Fall 2014 Final Exam Solutions Question 1 a. The five main layers of the internet protocol stack, along with the service provided by each, and the place where each is implemented are as follows:

More information

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1 CSMC 417 Computer Networks Prof. Ashok K Agrawala 2009 Ashok Agrawala Set 4 1 The Data Link Layer 2 Data Link Layer Design Issues Services Provided to the Network Layer Framing Error Control Flow Control

More information

ECE 653: Computer Networks Mid Term Exam all

ECE 653: Computer Networks Mid Term Exam all ECE 6: Computer Networks Mid Term Exam 16 November 004. Answer all questions. Always be sure to answer each question concisely but precisely! All questions have points each. 1. What are the different layers

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

CS343: Data Communication Switched Communication Network

CS343: Data Communication Switched Communication Network CS343: Data Communication Switched Communication Network by Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Guwahati E-mail: manaskhatua@iitg.ac.in Switched Communication Network Broader aspect interconnecting

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

1/29/2008. From Signals to Packets. Lecture 6 Datalink Framing, Switching. Datalink Functions. Datalink Lectures. Character and Bit Stuffing.

1/29/2008. From Signals to Packets. Lecture 6 Datalink Framing, Switching. Datalink Functions. Datalink Lectures. Character and Bit Stuffing. /9/008 From Signals to Packets Lecture Datalink Framing, Switching Peter Steenkiste Departments of Computer Science and Electrical and Computer Engineering Carnegie Mellon University Analog Signal Digital

More information

Lecture 8 The Data Link Layer part I. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 8 The Data Link Layer part I. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 8 The Data Link Layer part I Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Link Layer: setting the context two physically connected devices: host-router, router-router,

More information

Teletraffic theory (for beginners)

Teletraffic theory (for beginners) Teletraffic theory (for beginners) samuli.aalto@hut.fi teletraf.ppt S-38.8 - The Principles of Telecommunications Technology - Fall 000 Contents Purpose of Teletraffic Theory Network level: switching principles

More information

CS/ECE 438: Communication Networks for Computers Spring 2018 Midterm Examination Online

CS/ECE 438: Communication Networks for Computers Spring 2018 Midterm Examination Online 1 CS/ECE 438: Communication Networks for Computers Spring 2018 Midterm Examination Online Solutions 1. General Networking a. In traditional client-server communication using TCP, a new socket is created.

More information

CSCI-1680 Link Layer I Rodrigo Fonseca

CSCI-1680 Link Layer I Rodrigo Fonseca CSCI-1680 Link Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Last time Physical layer: encoding, modulation Today Link layer framing Getting frames

More information

Overview. Data Link Technology. Role of the data-link layer. Role of the data-link layer. Function of the physical layer

Overview. Data Link Technology. Role of the data-link layer. Role of the data-link layer. Function of the physical layer Overview Data Link Technology Functions of the data link layer Technologies concept and design error control flow control fundamental protocols Suguru Yamaguchi Nara Institute of Science and Technology

More information

Overview of Networks

Overview of Networks CMPT765/408 08-1 Overview of Networks Qianping Gu 1 Overview of Networks This note is mainly based on Chapters 1-2 of High Performance of Communication Networks by J. Walrand and P. Pravin, 2nd ed, and

More information

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades

Announcements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades Announcements 15-441 Computer Networking Lecture 16 Transport Protocols Mid-semester grades Based on project1 + midterm + HW1 + HW2 42.5% of class If you got a D+,D, D- or F! must meet with Dave or me

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 Department of Computer Science DCS COMSATS Institute of Information Technology Rab Nawaz Jadoon Assistant Professor COMSATS University, Lahore Pakistan Advanced Computer Networks

More information

CSE123A discussion session

CSE123A discussion session CSE123A discussion session 2007/02/02 Ryo Sugihara Review Data Link layer (1): Overview Sublayers End-to-end argument Framing sublayer How to delimit frame» Flags and bit stuffing Topics Data Link Layer

More information

Data Communication & Computer Networks INFO

Data Communication & Computer Networks INFO Data Communication & Computer Networks INFO Instructor: Dr. A. SARI Department: Management Information Systems Course Code: MIS 305 Academic Term: 2013/2014 Fall Title: Data Communication & Computer Networks

More information

Module 1. Introduction. Version 2, CSE IIT, Kharagpur

Module 1. Introduction. Version 2, CSE IIT, Kharagpur Module 1 Introduction Version 2, CSE IIT, Kharagpur Introduction In this module we shall highlight some of the basic aspects of computer networks in two lessons. In lesson 1.1 we shall start with the historical

More information

Links Reading: Chapter 2. Goals of Todayʼs Lecture. Message, Segment, Packet, and Frame

Links Reading: Chapter 2. Goals of Todayʼs Lecture. Message, Segment, Packet, and Frame Links Reading: Chapter 2 CS 375: Computer Networks Thomas Bressoud 1 Goals of Todayʼs Lecture Link-layer services Encoding, framing, and error detection Error correction and flow control Sharing a shared

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

Internetworking Part 1

Internetworking Part 1 CMPE 344 Computer Networks Spring 2012 Internetworking Part 1 Reading: Peterson and Davie, 3.1 22/03/2012 1 Not all networks are directly connected Limit to how many hosts can be attached Point-to-point:

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

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

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

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

Chapter 6 Medium Access Control Protocols and Local Area Networks

Chapter 6 Medium Access Control Protocols and Local Area Networks Chapter 6 Medium Access Control Protocols and Local Area Networks Part I: Medium Access Control Part II: Local Area Networks CSE 3213, Winter 2010 Instructor: Foroohar Foroozan Chapter Overview Broadcast

More information

CRC. Implementation. Error control. Software schemes. Packet errors. Types of packet errors

CRC. Implementation. Error control. Software schemes. Packet errors. Types of packet errors CRC Implementation Error control An Engineering Approach to Computer Networking Detects all single bit errors almost all 2-bit errors any odd number of errors all bursts up to M, where generator length

More information

Computer Communication Networks

Computer Communication Networks Contents ELL 785 Computer Communication Networks Introduction Lecture 1 Taxonomy of communication works Computer Communication Networks Building a work ed work architecture 1-1 Introduction PC server wireless

More information

Chapter 5 Data-Link Layer: Wired Networks

Chapter 5 Data-Link Layer: Wired Networks Sungkyunkwan University Chapter 5 Data-Link Layer: Wired Networks Prepared by Syed M. Raza and H. Choo 2018-Fall Computer Networks Copyright 2000-2018 Networking Laboratory Chapter 5 Outline 5.1 Introduction

More information

Link Layer and LANs 안상현서울시립대학교컴퓨터 통계학과.

Link Layer and LANs 안상현서울시립대학교컴퓨터 통계학과. Link Layer and LANs 안상현서울시립대학교컴퓨터 통계학과 ahn@venus.uos.ac.kr Data Link Layer Goals: understand principles behind data link layer services: error detection, correction sharing a broadcast channel: multiple

More information

Ad hoc and Sensor Networks Chapter 6: Link layer protocols. Holger Karl

Ad hoc and Sensor Networks Chapter 6: Link layer protocols. Holger Karl Ad hoc and Sensor Networks Chapter 6: Link layer protocols Holger Karl Goals of this chapter Link layer tasks in general Framing group bit sequence into packets/frames Important: format, size Error control

More information

Informal Quiz #01: SOLUTIONS

Informal Quiz #01: SOLUTIONS ECSE-6600: Internet Protocols Informal Quiz #01: SOLUTIONS : GOOGLE: Shiv RPI shivkuma@ecse.rpi.edu 1 Review of Networking Concepts (I): Informal Quiz SOLUTIONS For each T/F question: Replace the appropriate

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

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

Chapter 4. The Medium Access Control Sublayer. Points and Questions to Consider. Multiple Access Protocols. The Channel Allocation Problem.

Chapter 4. The Medium Access Control Sublayer. Points and Questions to Consider. Multiple Access Protocols. The Channel Allocation Problem. Dynamic Channel Allocation in LANs and MANs Chapter 4 The Medium Access Control Sublayer 1. Station Model. 2. Single Channel Assumption. 3. Collision Assumption. 4. (a) Continuous Time. (b) Slotted Time.

More information

Topics. Link Layer Services (more) Link Layer Services LECTURE 5 MULTIPLE ACCESS AND LOCAL AREA NETWORKS. flow control: error detection:

Topics. Link Layer Services (more) Link Layer Services LECTURE 5 MULTIPLE ACCESS AND LOCAL AREA NETWORKS. flow control: error detection: 1 Topics 2 LECTURE 5 MULTIPLE ACCESS AND LOCAL AREA NETWORKS Multiple access: CSMA/CD, CSMA/CA, token passing, channelization LAN: characteristics, i basic principles i Protocol architecture Topologies

More information

QUESTION BANK EVEN SEMESTER

QUESTION BANK EVEN SEMESTER Fatima Michael College of Engineering and Technology DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING QUESTION BANK EVEN SEMESTER SUB CODE & NAME: EC2352 COMPUTER NETWORKS YEAR / SEM: III / VI Staff

More information