Figure 6. Modes of transmission: (a) baseband transmission; (b) modulated transmission. (a) Binary data +V Time V Transmitter line interface Receiver line interface Signal power f Frequency Bandwidth of transmission medium, f, determines maximum bit rate that can be used (b) Binary data Amplitude modulated signal Time Transmitter (modulator) Receiver (demodulator) Signal power f f c f 2 Frequency f c = carrier signal (single-frequency audio tone) Bandwidth (f 2 f ) determines maximum bit rate that can be used
Figure 6.2 Effect of attenuation, distortion, and noise on transmitted signal. Transmitted data +V Transmitted signal Time, t V Typical received signal with noise t Sampling instants t Received data Bit error bit cell period
Figure 6.3 Copper wire transmission media: (a) two-wire and multiwire open lines; (b) unshielded twisted pair; (c) shielded twisted pair; (d) coaxial cable. (a) Terminating connectors Single pair Flat ribbon (b) each wire insulated Single pair Insulating outer cover Multicore (c) Protective screen (shield) Insulating outer cover (d) Insulating outer cover Center conductor Dielectric insulating material Braided outer conductor
Figure 6.4 Optical fiber transmission media: (a) cable structures; (b) transmission modes. (a) Optical cladding Plastic coating Optical core Single core Multicore (b) Electrical input signal Electrical output signal Optical transmitter (i) Multimode stepped index Optical receiver (ii) Multimode graded index (iii) Monomode
Figure 6.5 Satellite systems: (a) broadcast television; (b) data communications. (a) Satellite Antenna (b) Up link Down link Earth ground stations VSATs VSATs Earth Hub station VSAT = very small aperture terminal
Figure 6.6 Ground-based radio transmission: (a) single cell; (b) multiple cells. (a) Radio field of coverage of base station BS Fixed network/computer BS = base station = user computer/terminal (b) F 2 F 3 F F 2 BS BS BS BS F 3 F F 2 F 3 F BS BS BS BS BS F 2 F 3 F F 2 BS BS BS BS F, F 2, F 3 = frequencies used in cell
Figure 6.7 Sources of signal impairment. Transmitted data +V Transmitted signal Time V Attenuation Limited bandwidth Attenuation and distortion effects Delay distortion Line noise Received signal Combined effect Sampling signal Received data Bit error
Figure 6.8 Effect of limited bandwidth: (a) alternative binary signals; (b) frequency components of a periodic binary sequence; (c) examples of received signals; (d) bandwidth representations. (a) Signal period, T Binary signal Bit period, T b v(t) +V Unipolar signal T 3T/4 T/2 T/4 T/4 T/2 3T/4 T Time, t +V Bipolar signal T 3T/4 T/2 T/4 T/4 T/2 3T/4 T V t (b) +V Transmitted signal, v(t) T/4 3T/4 5T/4 7T/4 t V +V' ω t Frequency components 3ω +5ω V' +V'/3 V'/3 +V'/5 V'/5 t t (c) ω 3ω t Example received signals ω 3ω + 5ω t (d) Signal power Bandwidth alternatives f 3f 5f Frequency
Figure 6.9 Examples of (binary) eye diagrams resulting from intersymbol interference: A, ideal; B, typical. Some example signal transitions A B Sampling pulses
Figure 6. Adaptive NEXT cancelers: (a) circuit schematic; (b) example waveforms. (a) DTE Transmit circuit (A) Transmitted signal Receive circuit (E) + Adaptive NEXT canceler (D) (C) Near-end crosstalk (NEXT) (B) Received signal (b) Transmitted signal, A Time, t Without crosstalk, B t Received signal With crosstalk, C t Adaptively attenuated transmitted signal, D t Received signal, E t
Figure 6. Asynchronous transmission: (a) principle of operation; (b) timing principles. (a) Transmitter Serial-out TxD RxD Serial-in Receiver PISO SIPO msb lsb lsb msb Parallelin Parallelout PISO = TxD = l/msb = parallel in, serial out transmit data out least/most significant bit SIPO = RxD = serial in, parallel out receive data in (b) TxC Time TxD lsb msb φ φ φ φ φ φ φ φ Mark(ing) Space Start bit 7/8-bit character/byte Stop bit(s) RxD lsb msb φ φ φ φ φ φ φ φ Mark(ing) Space RxC Time Actual edge within one clock cycle φ = or being transmitted
Figure 6.2 Examples of three different receiver clock rate ratios: (a) ; (b) 4; (c) 6. (a) Start bit st data bit 2nd data bit RxD Time RxC ( ) Shift (sampling) pulse Bit rate counter preset to Actual bit cell centers (b) RxD Time RxC ( 4) (c) Shift (sampling) pulse 2 RxC periods Bit rate counter preset to 2 RxD Bit rate counter preset to 4 4 RxC periods 4 RxC periods Actual bit cell centers Time RxC ( 4) Shift (sampling) pulse 8 RxC 6 RxC periods 6 RxC periods periods Bit rate counter preset to 8 Actual bit cell centers Bit rate counter preset to 6
Figure 6.3 Frame synchronization with different frame contents: (a) printable characters; (b) string of bytes. (a) Start bit Stop bit(s) STX "F" "R" "L" ETX Marking Frame contents (printable characters) (b) DLE STX DLE ETX Marking Inserted DLE Frame contents (byte string)
Figure 6.4 Alternative bit/clock synchronization methods with synchronuous transmission: (a) clock encoding; (b) digital phaselock-loop (DPLL). (a) Transmitter TxD RxD Receiver (b) Transmitter TxD RxD Receiver
Figure 6.5 Synchronous transmission clock encoding methods: (a) Manchester; (b) differential Manchester. (a) Bitstream TxC Phase (Manchester) encoded signal, TxD/RxD Extracted and delayed clock, RxC Received data + (b) Bitstream TxC Differential Manchesterencoded signal, TxD + + Either Or Extracted clock, RxC Decoded (received) data
Figure 6.6 DPLL operation: (a) bit encoding; (b) circuit schematic; (c) in phase; (d) clock adjustment rules. (a) Bitstream Non-return-to-zero (NRZ) signal NRZ inverted (NRZI) signal (b) Received bitstream, RxD + + + Either Or RxC (c) Actual transitions Received bitstream, RxD 32 CLK Generated sampling (clock) pulses, RxC 32 clocks 32 clocks (d) Assumed transitions Actual transition possibilities 32 CLK Generated sampling (clock) pulses, RxC 32 clocks 3 clocks Segment/phase Clock adjustment 3 clocks 32 clocks 33 clocks 34 clocks A B C D E 2 ++2 ± 32 2 32 32 32 + 32 + 2
Figure 6.7 Character-oriented synchronous transmission: (a) frame format; (b) character synchronization; (c) data transparency (character stuffing). (a) Direction of transmission Time SYN SYN STX ETX Character synchronization Start-of-frame character Frame contents (printable characters) End-of-frame character (b) Direction of transmission SYN SYN SYN Time Receiver enters hunt mode STX Frame contents Receiver detects SYN character Receiver in character synchronization (c) Direction of transmission Additional DLE inserted Time SYN SYN DLE STX DLE DLE DLE ETX Start-of-frame sequence Frame contents (binary data) End-of-frame sequence
Figure 6.8 Bit-oriented synchronous transmission: (a) framing structure; (b) zero bit insertion circuit location; (c) example transmitted frame contents. (a) Direction of transmission Line idle Opening flag Frame contents Closing flag (b) Enable/disable Transmitter Receiver Enable/disable TxC RxC (c) Direction of transmission Opening flag Additional zero bits inserted Frame contents Closing flag
Figure 6.9 Parity bit method: (a) position in character; (b) XOR gate truth table and symbol; (c) parity bit generation circuit; (d) two examples. (a) Transmitted character/byte Time lsb msb Stop bit(s) Parity bit Start bit (b) Bit Bit 2 XOR Bit Bit 2 + Output (c) B 6 B 5 B 4 B 3 B 2 B B + + + + + + Inverter Even parity bit Odd parity bit (d) (Even parity) (Odd parity)
Figure 6.2 Block sum check method: (a) row and column parity bits; (b) s complement sum. (a) P R B 6 B 5 B 4 B 3 B 2 B B = STX Transverse (row) parity bits (odd) Frame contents Direction of transmission = ETX = BCC Longitudinal (column) parity bits (even) P R = example of undetected error combination BCC = block check character = row parity bit (b) At sending side: At receiving side: [] Invert Example contents = s-complement sum [] Contents BCC = Zero in s-complement = BCC
Figure 6.2 Error burst examples. Direction of transmission Transmitted message = Received message = Minimum of 6 error-free bits 6-bit error burst Minimum of 4 error-free bits 4-bit error burst
Figure 6.22 CRC error detection example: (a) FCS generation; (b) two error detection examples. (a) Frame contents: With appended zeros: Generator polynomial: Transmitted frame: = Quotient (ignored) = Remainder (FCS/CRC) (b) Remainder = : no errors Remainder : error detected Error burst
Figure 6.23 Idle RQ error control scheme: (a) error free; (b) corrupted I-frame; (c) corrupted ACK-frame. (a) Timer started Timer stopped Timer started Timer stopped Primary, P I(N + ) ACK(N) I(N + ) ACK(N + ) Time Secondary, S I(N + ) (b) Timer started Timer restarted Timer stopped Primary, P I(N + ) NAK(N) ACK(N) Time Secondary, S = Frame corrupted (c) Timer started Timer expires/restarted Timer stopped Primary, P I(N + ) ACK(N) ACK(N) Time Secondary, S Duplicate detected
Figure 6.24 Idle RQ link utilization. Timer started Timer stopped Timer started Timer stopped Primary, P I(N + ) I(N + ) ACK(N) ACK (N + ) Time Secondary, S I(N + ) T p T ix T ip T p T ax T ap T p T ix T ip T p T ax T ap = Frame propagation delay (P S) = Frame transmission time (P S) = Frame processing time in S = ACK propagation delay (S P) = ACK transmission time (S P) = ACK processing time in P
Figure 6.25 Effect of propagation delay as a function of data transmission rate; parts correspond to Example 6.8. (a) km, T p = 5 µs (i) kbps (ii) Mbps (b) 2 km, T p = ms (i) kbps (ii) Mbps (c) 5 km, T p = 67 ms (i) kbps (ii) 25 bits Mbps bits
Figure 6.26 Continuous RQ frame sequence without transmission errors. N N + N + 2 N + 3 N + 4 N + 5 V(S) N N + N N + 2 N + N N + 3 N + 2 N + N + 4 N + 3 N + 2 N + 4 N + 3 Contents of link retransmission list Primary, P I(N + ) I(N + 2) I(N + 3) I(N + 4) I(N + 2) I(N + 3) I(N + 4) I(N + ) ACK(N) ACK(N + ) ACK(N + 2) ACK(N + 3) Time Secondary, S I(N + ) I(N + 2) I(N + 3) I(N + 4) N N + N + 2 N + 3 N + 4 Contents of link receive list V(R) N N + N + 2 N + 3 N + 4 V(S) V(R) = = send sequence variable receive sequence variable
Figure 6.27 Selective repeat: (a) effect of corrupted I-frame; (b) effect of corrupted ACK-frame. P enters retransmission state P leaves retransmission state (a) N N + N + 2 N + 3 N + 4 N + 5 N + 5 N + 5 N + 5 V(S) N N + N N + 2 N + N N + 3 N + 2 N + N + 4 N + 3 N + 2 N + N + N + 4 N + 3 N + 2 N + N + 4 N + 3 N + 2 N + N + 4 N + 3 N + 2 Contents of link retransmission list Primary, P I(N + ) I(N + 2) I(N + 3) I(N + 4) I(N + ) I(N + 2) I(N + ) I(N + 3) I(N + 4) I(N + ) ACK(N) NAK(N + ) ACK(N + ) Time Secondary, S I(N + 2) I(N + 3) I(N + 4) I(N + ) N N + 2 N + 2 N + 2 N + 3 N + 3 N + 4 N + 2 N + 3 N + 4 N + Contents of link receive list N N N + N + N + N + N + N + 5 N + 5 V(R) S enters retransmission state S leaves retransmission state (b) P enters retransmission state P leaves retransmission state N N + N + 2 N + 3 N + 4 N + 4 N + 4 N + 4 V(S) N + 3 N N + N N + 2 N + N N + 2 N + N N N + 3 N + 2 N N + 3 N Contents of link retransmission list Primary, P I(N + ) I(N + 2) I(N + 3) I(N + ) ACK(N) I(N + 2) ACK(N + ) I(N + 3) ACK(N + 2) ACK(N + 3) ACK(N) Time Secondary, S I(N + ) I(N + 2) I(N + 3) N N + N + 2 N + 3 Contents of link receive list corrupted frame N N + N + 2 N + 3 N + 4 N + 4 V(R)
Figure 6.28 Go-back-N retransmission strategy: (a) corrupted I- frame; (b) corrupted ACK-frame. (a) P enters retransmission state N N + N + 2 N + 3 N + 4 N + 5 P leaves retransmission state V(S) N N + N N + 2 N + N N + 3 N + 2 N + N + 4 N + 3 N + 2 N + N + 4 N + 3 N + 2 N + Contents of link retransmission list Primary, P I(N + ) I(N + 2) I(N + 3) I(N + 4) I(N + ) I(N + 2) I(N + 4) I(N + 2) I(N + ) I(N + 3) I(N + 4) I(N + ) ACK(N) NAK(N + ) ACK(N + ) Time Secondary, S I(N + 2) I(N + 3) I(N + 4) I(N + ) N N + 2 N + 3 N + 4 N + Contents of link receive list N N + N + N + N + N + N + 2 V(R) Frames discarded (b) N N + N + 2 N + 3 N + 4 N + 5 V(S) N + 4 N N + N N + 2 N + N N + 3 N + 2 N + N N + 3 N + 2 N + N N + 4 N + 3 Contents of link retransmission list Primary, P I(N + ) I(N + 2) I(N + 3) I(N + 4) I(N + ) ACK(N) I(N + 2) ACK(N + ) I(N + 3) ACK(N + 2) I(N + 4) ACK(N + 3) Time Secondary, S I(N + ) I(N + 2) I(N + 3) I(N + 4) N N + N + 2 N + 3 N + 4 Contents of link receive list corrupted frame N N + N + 2 N + 3 N + 4 N + 5 V(R)
Figure 6.29 Flow control principle: (a) sliding window example; (b) send and receive window limits. (a) Frames already acknowledged Frames waiting to be acknowledged Flow stopped Frames waiting to be sent Order of transmission Lower window edge (LWE) Upper window edge (UWE) Send window, K = 3 (b) Protocol Send window Receive window Idle RQ Selective repeat Go-back-N K K K
Figure 6.3 Sequence numbers: (a) maximum number for each protocol; (b) example assuming eight sequence numbers. (a) Protocol Idle RQ Selective repeat Go-back-N Maximum number of frame identifiers 2 2K + K + (b) Lower window edge (LWE) Sequence numbers Go-back-N, K = 7 Sequence numbers incremented modulo 8 Upper window edge (UWE)
Figure 6.3 Example layered architecture showing the layer and sublayer interfaces associated with the idle RQ protocol.
Figure 6.32 Abbreviated names used in the specification of the idle RQ primary. Incoming events Name Interface Meaning LDATAreq LS_user L_DATA.request service primitive received ACKRCVD MAC_provider ACK-frame received from S TEXP TIM_provider Wait-ACK timer expires NAKRCVD MAC_provider NAK-frame received from S States Name IDLE WTACK Meaning Idle, no message transfer in progress Waiting an acknowledgment Outgoing events Name Interface Meaning TxFrame MAC_user Format and transmit an I-frame RetxFrame MAC_user Retransmit I-frame waiting acknowledgment LERRORind LS_provider Error message: frame discarded for reason specified Predicates Name P P Meaning N(S) in waiting I-frame = N(R) in ACK-frame CRC in ACK/NAK-frame correct Specific actions State variables [] = Start_timer using TIM_user queue Vs = Send sequence variable [2] = Increment Vs PresentState = Present state of protocol entity [3] = Stop_timer using TIM_user queue ErrorCount = Number of erroneous frames [4] = Increment RetxCount received [5] = Increment ErrorCount RetxCount = Number of retransmissions for [6] = Reset RetxCount to zero this frame
Figure 6.33 Specification of idle RQ primary in the form of: (a) a state transition diagram; (b) an extended event state table; (c) pseudocode. (a) ACKRCVD/NAKRCVD; [5] ACKRCVD; [3] [6] LDATAreq; TxFrame, [] [2] NAKRCVD; RetxFrame, [] [4] TEXP; RetxFrame, [] [4] (b) Incoming event Present state IDLE LDATAreq ACKRCVD TEXP NAKRCVD WTACK 4 2 3 3 = [5], IDLE (error condition) = TxFrame, [] [2], WTACK 2 = P and P: [3] [6], IDLE = P and NOT P: RetxFrame, [] [4], WTACK = NOT P and NOT P: [5], IDLE 3 = RetxFrame, [] [4], WTACK 4 = NoAction, WTACK
Figure 6.33 Continued. (b) Incoming event Present state IDLE WTACK LDATAreq ACKRCVD TEXP NAKRCVD 4 2 3 3 = [5], IDLE (error condition) = TxFrame, [] [2], WTACK 2 = P and P: [3] [6], IDLE = P and NOT P: RetxFrame, [] [4], WTACK = NOT P and NOT P: [5], IDLE 3 = RetxFrame, [] [4], WTACK 4 = NoAction, WTACK (c) program IdleRQ_Primary; const MaxErrCount; MaxRetxCount; type Events = (LDATAreq, ACKRCVD, TEXP, NAKRCVD); States = (IDLE, WTACK); var EventStateTable = array [Events, States] of..4; PresentState : States; Vs, ErrorCount, RetxCount : integer; EventType : Events; procedure Initialize; Initializes state variables and contents of EventStateTable procedure TxFrame; procedure RetxFrame; Outgoing event procedures } procedure LERRORind; procedure Start_timer; } Specific action procedures procedure Stop_timer; function P : boolean; } Predicate functions function P : boolean; begin end. Initialize; repeat Wait receipt of an incoming event EventType := type of event case EventStateTable [EventType, PresentState] of : beginerrorcount := ErrorCount + ; PresentState = IDLE; if(errorcount = MaxErrCount) thenlerrorind end; : begintxframe; Start_timer; Vs := Vs + ; PresentState := WTACK end; 2: beginif(p and P) then begin Stop_timer; RetxCount := ; PresentState := IDLE end; else if (P and NOTP) then begin RetxFrame; Start_timer; RetxCount := RetxCount + ; PresentState := WTACK end; else if (NOTP and NOTP) then begin PresentState := IDLE; ErrorCount := ErrorCount + if (ErrorCount = MaxErrorCount) then begin LERRORind; Initialize; end; end; 3: begin RetxFrame; Start_timer; RetxCount := RetxCount + ; PresentState := WTACK; if (RetxCount = MaxRetxCount) then begin LERRORind; Initialize; end; end; 4: begin NoAction end; until Forever;
Figure 6.34 Specification of idle RQ secondary: (a) abbreviated names; (b) state transition diagram; (c) extended event state table; (d) pseudocode. (a) Incoming events Name Interface Meaning IRCVD MAC_provider I-frame received from P States Name WTIFM Meaning Waiting a new I-frame from P Outgoing events Name Interface Meaning LDATAind LS_provider Pass contents of received I-frame to user AP with an L_DATA.indication primitive TxACK(X) MAC_user Format and transmit an ACK-frame with N(R) = X TxNAK(X) MAC_user Format and transmit a NAK-frame with N(R) = X LERRORind LS_provider Issue error message for reason specified Predicates Name Meaning P N(S) in I-frame = Vr P CRC in I-frame correct P2 N(S) in I-frame = Vr Specific actions State variables [] = Increment Vr Vr = Receive sequence variable [2] = Increment ErrorCount ErrorCount = Number of erroneous frames received (b) IRCVD ; TxNAK IRCVD + ; LDATAind, TxACK, [] [2] (c) Incoming event IRCVD Present state WTIFM = NOT P: TxNAK, [2] = P and P2: TxACK = P and P: LDATAind, TxACK, []
Figure 6.34 Continued. (d) program IdleRQ_Secondary; const. MaxErrorCount; type Events = IRCVD; States = WTIFM; var EventStateTable = array [Events, States] of ; EventType : Events; PresentState : States; Vr, X, ErrorCount : integer; procedure Initialize; procedure LDATAind; procedure TxACK(X); procedure TxNAK(X); procedure LERRORind; function P : boolean; } function P : boolean; Predicate functions function P2 : boolean; } Initializes state variables and contents of EventStateTable } Outgoing event procedures begin end. Initialize; repeat Wait receipt of incoming event; EventType := type of event; case EventStateTable[EventType, PresentState] of : X := N(S) from I-frame; if (NOTP) then TxNAK(X); else if(p and P2) then TxACK(X); else if(p and P) then begin LDATAind; TxACK(X); Vr := Vr + ; end; else beginerrorcount := ErrorCount + ; if (ErrorCount = MaxErrorCount) then begin LERRORind; Initialize; end; end; until Forever;
Figure 6.35 Time sequence diagram showing the link layer service primitives: (a) connection-oriented (reliable) mode; (b) connectionless (best-effort) mode. (a) Source Destination Source LS_user Source link layer Destination link layer Correspondent LS_user L_CONNECT.request L_CONNECT.confirm L_DATA.request V(S) := etc. SETUPframe UAframe I-frame V(R) := etc. L_CONNECT.indication ACKframe L_DATA.indication L_DISCONNECT.request L_DISCONNECT.confirm DISCframe UAframe L_DISCONNECT.indication Time (b) L_UNITDATA.request I-frame L_UNITDATA.indication Frames Event control blocks (ECBs)
Figure 6.36 HDLC frame format and types: (a) standard/extended format; (b) standard control field bit definitions; (c) extended control field bit definitions. Note: With the indicated direction of transmission, all control field types are transmitted bit 8/6 first.
Figure 6.37 HDLC normal response mode: example frame sequence diagram with single primary and secondary (i.e. no piggyback acknowledgments). Contents of retransmission list 2 Sender (P) N(R) = I() acknowledged 2 3 Retransmit from I() V(S) V(R) I(, /P = ) RR(/F = ) I(, ) I(2, /P = ) REJ (/F = ) I(, ) V(S) V(R) N(S) = V(R) frame accepted frame corrupted N(S) V(R) frame rejected Receiver (S) 2 3 N(R) = 2 I() acknowledged N(R) = 3 I(2) acknowledged 3 I(2, /P = ) RR(2/F = ) RR(3/F = ) Time N(S) = V(R) frame accepted 2 N(S) = V(R) frame accepted 3 3
Figure 6.38 HDLC asynchronous balanced mode: piggyback acknowledgment procedure. Combined P/S Combined P/S Contents of retransmission list V(S) V(R) V(S) V(R) Contents of retransmission list 3 3 2 3 N(S) = V(R) frame accepted 2 4 N(S) = V(R) frame accepted 2 5 I(, 3) I(, 3) I(3, ) I(4, ) I(5, ) 3 4 5 6 N(S) = V(R) frame accepted 6 3 5 4 3 4 3 2 4 3 2 5 4 3 2 3 2 4 3 2 5 4 3 2 3 5 N(S) = V(R) frame accepted 3 6 4 6 5 6 N(S) = V(R) frame accepted N(R) = I() acknowledged 5 7 6 7 N(S) = V(R) frame accepted N(R) = 2 I() acknowledged 6 I(3, 6) I(4, 6) RR() I(2, 5) I(5, 7) I(6, ) I(7, 2) 7 N(S) = V(R) frame accepted 7 2 2 N(S) = V(R) frame accepted N(R) = 5 I(3) I(4) 3 acknowledged 4 5 N(S) = V(R) frame accepted N(R) = 6 I(5) acknowledged N(S) = V(R) frame accepted 6 5 4 3 7 6 5 7 6 7 6 5 4 3 7 6 RR(5) N(S) = V(R) frame accepted N(R) = 7 I(6) acknowledged 7 5 N(R) = 5 I(2, 3, 4) acknowledged 6 RR(6) 6 N(R) = I(7) acknowledged 6 N(R) = 6 I(5) acknowledged 6 Time
Figure 6.39 HDLC window flow control procedure. Contents of retransmission list Combined P/S RetxCount V(S) V(R) K = 3 V(S) V(R) Combined P/S Contents of retransmission list RetxCount I(, ) I(, ) I(2, ) 2 3 2 3 A 2 2 I(, ) 3 RR() 3 3 3 3 RR() 3 2 2 3 I(3, ) RR(3) 4 3 A 3 2 4 4 3 A = window closed Time
Summary Figure 6.4 HDLC summary: (a) service primitives; (b) state transition diagram (ABM).
Figure 6.4 Summary of topics discussed relating to digital communications. Digital communication basics Digital transmission Transmission media Signal impairments Transmission control modes Asynchronous Synchronous Bit/clock synchronization Character/byte synchronization Block/frame synchronization Error detection methods Parity Block sum check Cyclic redundancy check Protocol basics Error control Flow control Link management Protocol specification methods HDLC
Example 6. A -bit block of data is to be transmitted between two computers. Determine the ratio of the propagation delay to the transmission delay, a, for the following types of data link: (i) m of twisted-pair wire and a transmission rate of kbps, (ii) km of coaxial cable and a transmission rate of Mbps, (iii) 5 km of free space (satellite link) and a transmission rate of Mbps. Assume that the velocity of propagation of an electrical signal within each type of cable is 2 8 ms, and that of free space 3 8 ms. Answer: S (i) T p = = = 5 7 s V 2 8 N T x = = =.s R 3 T p 5 7 a = = = 5 6 T x.
6. Continued S 3 (ii) T p = = = 5 5 s V 2 8 N T x = = = 3 s R 6 T p 5 5 a = = = 5 2 T x 3 S 5 7 (iii) T p = = =.67 s V 3 8 N T x = = = 4 s R 6 T p.67 a = = =.67 3 T x 4
Example 6.2 A transmission channel between two communicating DTEs is made up of three sections. The first introduces an attenuation of 6 db, the second an amplification of 2dB, and the third an attenuation of db. Assuming a mean transmitted power level of 4 mw, determine the mean output power level of the channel. Answer: Either: 4 For first section, 6 = log Hence P 2 =.475 mw P 2 P2 For second section, 2 = log Hence P 2 = 4.75 mw.475 4.75 For third section, = log Hence P 2 =.475 mw P 2 That is, the mean output power level =.475mW Or: Overall attenuation of channel = (6 2) + = 6 db Hence 6 = log 4 P 2 and P 2 =.475 mw
Example 6.3 A binary signal of rate 5 bps is to be transmitted over a communications channel. Derive the minimum bandwidth required assuming (i) the fundamental frequency only, (ii) the fundamental and third harmonic, and (iii) the fundamental, third, and fifth harmonics are to be received. Answer: The worst-case sequence at 5 bps has a fundamental frequency component of 25 Hz. Hence the third harmonic is 75 Hz and the fifth harmonic 25 Hz. The bandwidth required in each case is as follows: (i) 25 Hz; (ii) 75 Hz; (iii) 25 Hz.
Example 6.4 Data is to be transmitted over the access line to a PSTN using a transmission scheme with eight levels per signaling element. If the bandwidth of the PSTN is 3 Hz, deduce the Nyquist maximum data transfer rate. Answer: C = 2W log 2 M = 2 3 log 2 8 = 2 3 3 = 8 bps In practice the data transfer rate will be less than this because of other effects such as noise.
Example 6.5 Assuming that a circuit through a PSTN has a bandwidth of 3 Hz and a typical signal-to-noise power ratio of 2 db, determine the maximum theoretical information (data) rate that can be achieved. Answer: S SNR = log ( N) S Therefore: 2 = log ( ) Hence: S = N Now: S C = W log 2 ( + N) Therefore: C = 3 log 2 ( + ) = 9 963 bps N
Example 6.6 A block of data is to be transmitted across a serial data link. If a clock of 9.2 khz is available at the receiver, deduce the suitable clock rate ratios and estimate the worst-case deviations from the nominal bit cell centers, expressed as a percentage of a bit period, for each of the following data transmission rates: (i) (ii) 2 bps 24 bps (iii) 96 bps Answer: It can readily be deduced from Figure 6.2 that the worst-case deviation from the nominal bit cell centers is approximately plus or minus one half of one cycle of the receiver clock. Hence: (i) (ii) At 2 bps, the maximum RxC ratio can be 6. The maximum deviation is thus ± 3.25%. At 24 bps, the maximum RxC ratio can be 8. The maximum deviation is thus ± 6.25%. (iii) At 96 bps, the maximum RxC ratio can be 2. The maximum deviation is thus ± 25%. Clearly, the last case is unacceptable. With a low-quality line, especially one with excessive delay distortion, even the second may be unreliable. It is for this reason that a 6 clock rate ratio is used whenever possible.
Example 6.7 A series of 8-bit message blocks (frames) is to be transmitted across a data link using a CRC for error detection. A generator polynomial of is to be used. Use an example to illustrate the following: (a) the FCS generation process, (b) the FCS checking process. Answer: Generation of the FCS for the message is shown in Figure 6.22(a). Firstly, four zeros are appended to the message, which is equivalent to multiplying the message by 2 4, since the FCS will be four bits. This is then divided (modulo 2) by the generator polynomial (binary number). The modulo-2 division operation is equivalent to performing the exclusive-or operation bit by bit in parallel as each bit in the dividend is processed. Also, with modulo-2 arithmetic, we can perform a division into each partial remainder, providing the two numbers are of the same length, that is, the most significant bits are both s. We do not consider the relative magnitude of both numbers. The resulting 4-bit remainder () is the FCS, which is then appended at the tail of the original message when it is transmitted. The quotient is not used. At the receiver, the complete received bit sequence is divided by the same generator polynomial as used at the transmitter. Two examples are shown in Figure 6.22(b). In the first, no errors are assumed to be present, so that the remainder is zero the quotient is again not used. In the second, however, an error burst of four bits at the tail of the transmitted bit sequence is assumed. Consequently, the resulting remainder is nonzero, indicating that a transmission error has occurred.
Example 6.8 A series of -bit frames is to be transmitted using an idle RQ protocol. Determine the link utilization for the following types of data link assuming a transmission bit rate of (a) kbps and (b) Mbps. Assume that the velocity of propagation of the first two links is 2 8 ms and that of the third link 3 8 ms. Also the bit error rate is negligible. (i) a twisted-pair cable km in length, (ii) a leased line 2 km in length, (iii) a satellite link of 5 km. Answer: The time taken to transmit a frame T ix is given by: Number of bits in frame, N T ix = Bit rate, R, in bps At kbps: T ix = = s 3 At Mbps: T ix = = 3 s 6 S T p = and U = V + 2a 3 (i) T p = 2 8 = 5 6 s 5 6 (a) a = = 5 6 and hence ( + 2a) and U = 5 6 (b) a = = 5 3 and hence ( + 2a) and U = 3 2 3 (ii) T p = = 3 s 2 8 3 (a) a = = 3 and hence ( + 2a) and U = 3 (b) a = = and hence ( + 2a) > and U = =.33 3 + 2
6.8 Continued 5 6 (iii)t p = =.67s 3 8.67 (a) a = =.67 and hence ( + 2a) > and U = =.75 +.334.67 (b) a = = 67 and hence ( + 2a) > and U = =.3 3 + 334
Example 6.9 Use the frame sequence diagram shown earlier in Figure 6.23 and the list of abbreviated names given in Figure 6.34(a) to specify the operation of the idle RQ secondary using (i) a state transition diagram, (ii) an extended event state table, (iii) pseudocode. Answer: The specification of the idle RQ secondary in each form is given in Figure 6.34(b), (c), and (d) respectively. Note that just two state variables are needed for the secondary: the receive sequence variable shown as V r in the specification which holds the sequence number of the last correctly received I-frame, and ErrorCount which keeps a record of the number of erroneous I-frames received. Again, if ErrorCount reaches a defined maximum limit an error message LERRORind is output to the network layer in an ECB.