Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Nader F. Mir
Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo Singapore Mexico City
. . . . . . . . . . . . .
The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein. Visit us on the Web: www.prenhallprofessional.com Copyright 2007 by Pearson Education, Inc. This work is protected by United States copyright laws and is provided solely for the use of instructors in teaching their courses and assessing student learning. Dissemination or sale of any part of this work(including on the World Wide Web) will destroy the integrity of the work and is not permitted. The work and materials from it should never be made available to students except by instructors using the accompanying text in their classes. All recipients of this work are expected to abide by these restrictions and to honor the intended pedagogical purposes and the needs of other instructors who rely on these materials. ISBN 0-13-234570-6 First release, March 2007
Contents
Preface 0.1 0.2 0.3 0.4 How to Obtain Errata of Text-Book . . . . . . . . . . . . . . Errors in This Solution Manual . . . . . . . . . . . . . . . . . How to Obtain an Updated Solution Manual . . . . . . . . . How to Contact Author . . . . . . . . . . . . . . . . . . . . . ii iii iii iii iv v
Fundamental Concepts
1
3 9 15 21 29 35 41 51
1 Packet-Switched Networks 2 Foundation of Networking Protocols 3 Networking Devices 4 Data Links and Transmission 5 Local-Area Networks and Networks of LANs 6 Wireless Networks and Mobile IP 7 Routing and Inter-Networking 8 Transport and End-to-End Protocols i
CONTENTS 57 67
II
Advanced Concepts
73
75 89 101 121 123 133 135 149 155 157
11 Packet Queues and Delay Analysis 12 Quality-of-Service and Resource Allocation 13 Networks in Switch Fabrics 14 Optical Switches and Networks, and WDM 15 Multicasting Techniques and Protocols 16 VPNs, Tunneling, and Overlay Networks 17 Compression of Digital Voice and Video 18 VoIP and Multimedia Networking 19 Mobile Ad-Hoc Networks 20 Wireless Sensor Networks
Preface
An updated version of the solution manual is hereby provided to instructors. For any problem marked with N/A, the solution will be provided in the upcoming versions. Please check with the publisher or the author timeto-time to obtain the latest verion of the solution manual. For eective educational learning purposes, instructors are kindly requested not to allow any student to access this solution manual.
0.1
The Errata of the text-book, Edition 1, is now available. Please contact the author directly at nader.mir@sjsu.edu for copy.
0.2
If you nd any error in this solution manual, please directly inform the author at nader.mir@sjsu.edu .
0.3
Please check time to time the web page of the text-book in the PrenticeHall site and click on Instructors link to obtain the latest version of this solution manual. iii
iv
CONTENTS
0.4
Please feel free to send any feedback on the text book to Department of Electrical Engineering, San Jose State University, San Jose, CA 95192, U.S.A, or via email at nader.mir@sjsu.edu. The preparation of this version of the solution manual took years and the manual may contain some errors. Please also feel free to send me any feedback on this solution manual. I would love to hear from you especially if you have suggestions for improving this book further for its next editions. I will carefully read all review comments. You can nd out more about me at: http://www.engr.sjsu.edu/nmir I hope that you enjoy the text and that you receive a little of my liking for the computer communications from it.
vi
CONTENTS
Mir has published numerous refereed technical journal and conference papers all in the eld of communications and networking. He has published a book in video communication engineering, and another text-book published by Prentice Hall Publishing Co. entitled Computer & Communication Networks, Design and Analysis. Dr. Mir has received a number of prestigious national and university awards including the university teaching recognition award and research excellence award. He is also the recipient of the 2004 IASTED Outstanding Tutorial Presentation award. Currently, he has several journal editorial positions such as: the Editorial Board Member of the International Journal of Internet Technology and Secured Transactions, the Editor of Journal of Computing and Information Technology, and the Associate Editor of IEEE Communication Magazine.
Part I
Fundamental Concepts
Chapter 1
Packet-Switched Networks
1. Total distance = = 2( 3, 0002 + 10, 0002 ) = 20,880.61 km. Speed = c = 2.3 108 m/s. (a) proagation delay = tp = =
20,880.61 km 2.3108 m/s
= 90.8 ms
(b) Number of bits in transit during the propagation delay = (90.8 ms) (100 106 b/s) = 9.08 Mb (c) 10 bytes = 80 bits 2.5 bytes = 20 bits, then: total length = 80 + 20 = 100 bits 100 b = 1 s T = 100106 b/s
2. Total distance =
km = 87 ms m/s
s s
3. Assuming the speed of transmission at 2.3 108 : (a) Total Delay: D = [np + (nh 2)]tf + (nh 1)tp + nh tr 50 miles1600 m/miles = 0.35 ms (b) tp1 = 2.3108 m/s 400 miles1600 m/miles = 2.8 ms tp 2 = 2.3108 m/s MB = 20, 000 Number of packets = np = 200 10KB 10,040 B/pockets 8 b/B = 0.8 ms/pockets tf = 100 Mb/s D = [20, 000 + (5 2)]0.8 + [(3 1)0.35 + (3 1)2.8] + 5 0.2 103 16.6 s
4. Dp = [np + (nh 2)]tf 1 + nh tr1 + (nh 1)tp Dc = 3 ([1 + (nh 2)]tf 2 + nh tr2 + (nh 1)tp ) Dt = Dp + Dc = (np + nh 2)tf 1 + 3(nh 1)tf 2 + nh (tr1 + 3tr2 ) + 4(nh 1)tp
5. Number of packets = np = Dt = Dp + Dc
200MB 10KB
= 20, 000
Dc = dconn-req + dconn-accep + dconn-release (a) Here, the problem askes that tr be dened as the processing time for each packet. Therefore, tr = 20, 000 0.2 = 4,000 s
5 Dc = dconn-req = dconn-accep = dconn-release = [np + (nh 2)]tf + nh tr + (nh 1)tp 500 b/packet + 3 4, 000 s + 4.84 ms = [1 + (5 2)] 100 mb/s 12, 000 s (b) Same as Part (a). (c) Dt = Dp + Dc = 17 + 3 12, 000 = 36, 017 s
6. s = 109 b/s nh = 10 nodes tr1 = tr2 = 0.1 s = tr Data forms two packets: (9960 + 40) bytes for packet1 (2040 + 40) bytes for packet2 tf 1packet1 = tf 1packet2 = tf 2
10,000 2,080
B8 b/B
= 8 105 s
B8 b/B = 16.64 106 s b/s b = 5 107 s = transfer times for control packets = 500 109 b/s
c
tp =
500
(a) request + accept time: t1 + t2 = 2 ([np + (nh 1)]tf 2 + (nh 1)tp + nh tr ]) = 2.06 s (b) t3 = 1 2 (t1 + t2 ) = 1.03 s (c) Dt = Dp + Dc Dp = Dppacket1 + Dppacket2 = [np + (nh 2)]tf 1packet1 + nh tr1 + (nh 1)tp + [np + (nh
= 0.04,
= 0.96.
0.8 =
7
Node A Node D Node C Node B
Connection Release
t t t t
10, 000 =
100106 h +d
h + d = 10, 000 b
h (b) h = 0.008 and h = d+ h
d + h = 100h h = 100 b, and d = 9900 b. (c) h = 0.008 d = h = 0.8 0.008 d = 0.792 dopt = h 1d d = 809 bits (d + h)opt = h + dopt = 100 + 809 (d + h)opt = 909 b
h 1 (d) D opt = s 1d D opt = 8.2 10 5 s 2
10. D =
8 (a)
D h
Chapter 2
10
Chapter 2. Foundation of Networking Protocols 1001 0110 . 0001 0010 . 0001 0111 . 0110 0101 Mask: 255.255.255.128 = 1111 1111 . 1111 1111 . 1111 1111 . 1000 0000 Class B Subnet ID: 000101110 = 46
2. (a) IP: 1010 1101 . 1010 1000 . 0001 1100 . 0010 1101 Mask: 1111 1111 . 1111 1111 . 1111 1111 . 0000 0000 Class B Subnet ID=00011100=28 (b) A packet with IP address 188.145.23.1 using mask pattern 255.255.255.128 IP: 1011 1100 . 1001 0001 . 0001 0111 . 0000 0001 Mask: 1111 1111 . 1111 1111 . 1111 1111 . 1000 0000 Class B Subnet ID=000101110=46 (c) A packet with IP address 139.189.91.190 using a mask pattern 255.255.255.128 IP: 1000 1011 . 1011 1101 . 0101 1011 . 1011 1110 Mask: 1111 1111 . 1111 1111 . 1111 1111 . 1000 0000 Class B Subnet ID=010110111=183
3. IP1: 1001 0110 . 0110 0001 . 0001 1100 . 0000 0000 IP2: 1001 0110 . 0110 0001 . 0001 1101 . 0000 0000 IP3: 1001 0110 . 0110 0001 . 0001 1110 . 0000 0000 New IP (CIDR): 150.97.28.0/22
11
4. Address: 141.33.11.0/22 = 1000 1101 . 0010 0001 . 0000 1011 . 0000 0000 141.33.12.0/22 = 1000 1101 . 0010 0001 . 0000 1100 . 0000 0000 141.33.13.0/22 = 1000 1101 . 0010 0001 . 0000 1101 . 0000 0000 141.33.8.0/21
5. (a) 191.168.6.0 1011 1111 . 1010 1000 . 0000 0110 . 0000 0000 1111 1111 . 1111 1111 . 1111 1110 . 0000 0000 Result: 1011 1111 . 1010 1000 . 0000 0110 . 0000 0000 = 191.168.6.0/23 (b) 173.168.28.45 1010 1101 . 1010 1000 . 0001 1100 . 0010 1101 1111 1111 . 1111 1111 . 1111 1110 . 0000 0000 Result: 1010 1101 . 1010 1000 . 0001 1100 . 0000 0000 = 173.108.28.0/23 (c) 139.189.91.190 1000 1011 . 1011 1101 . 0101 1011 . 1011 1110 1111 1111 . 1111 1111 . 1111 1110 . 0000 0000 Result: 1000 1011 . 1011 1101 . 0101 1010 . 0000 0000 = 139.189.90.0/23
12 (a) 180.19.0.0/18:
1011 0100 . 0001 0011 . 0000 0000 . 0000 0000 180.19.3.0/22: 1011 0100 . 0001 0011 . 0000 0011 . 0000 0000 180.19.16.0/20: 1011 0100 . 0001 0011 . 0001 0000 . 0000 0000 (b) The longest match is 180.19.16.0/20.
7. (a) N1 L11: 1100 0011 . 0001 1001 . 0000 0000 . 0000 0000 N2 L13: 1000 0111 . 0000 1011 . 0000 0010 . 0000 0000 N3 L21: 1100 0011 . 0001 1001 . 0001 1000 . 0000 0000 N4 L23: 1100 0011 . 0001 1001 . 0000 1000 . 0000 0000 N5 L31: 0110 1111 . 0000 0101 . 0000 0000 . 0000 0000 N6 L33: 1100 0011 . 0001 1001 . 0001 0000 . 0000 0000 (b) Packet: 1100 0011 . 0001 1001 . 0001 0001 . 0000 0011 L11: 1100 0011 . 0001 1001 . 0000 0000 . 0000 0000 L12: 1100 0011 . 0001 1001 . 0001 0000 . 0000 0000 L12: 1100 0011 . 0001 1001 . 0000 1000 . 0000 0000 L13: 1000 0111 . 0000 1011 . 0000 0010 . 0000 0000 L21: 1100 0011 . 0001 1001 . 0001 1000 . 0000 0000 L22: 1100 0011 . 0001 1001 . 0001 0000 . 0000 0000 L23: 1100 0011 . 0001 1001 . 0000 1000 . 0000 0000 L31: 0110 1111 . 0000 0101 . 0000 0000 . 0000 0000 L33: 1100 0011 . 0001 1001 . 0001 0000 . 0000 0000 Answer=N6 (c) 32-21=11 b So, 211 = 2,048 users
13
8. (a) IPv4 address eld has 32 bits Total number of IP addersses available = 232 Number of IP addresses per person for 620 million people =
232 620106
= 6.9 7
(b) Number of bits required to serve 620 million people is 30 since 229 536 mil < 620 mil < 230 1, 074 mil Thus, CIDR can only have 32-30 = 2 bit as Network ID eld as x.x.x.x/2 (c) IPv6 address eld has 128 bits: Total number of IPaddresses available = 2128 Number of IP addresses per person for 620 million people =
2128 620106
= 5.49 1029
9. (a) 1111:2A52:111:73C2:A123:56F4:1B3C binary form: 0001 0001 0001 0001 : 0010 1010 0101 0010 : 1010 0001 0010 0011 : 0000 0001 0001 0001 : 0111 0011 1100 0010 : 1010 0001 0010 0011 : 0101 0110 0111 0100 : 0001 1011 0011 1100 (b) 2532::::FB58:909A:ABCD:0010 binary form: 0010 0101 0011 0010 : : : : 1111 1011 0101 1000 : 10001 0000 1001 1010 : 1010 1011 1100 1101 : 0000 0000 0001 0000 (c) 2222:3333:AB01:1010:CD78:290B::1111 binary form: 0010 0010 0010 0010 : 0011 0011 0011 0011 : 1010 1011 0000 0001: 0001 0000 0001 0000 : 1100 0000 0111 1000 : 0010 1001 0000 1011 : : 0001 0001 0001 0001
14
10. N/A
11. Connection set up can be greatly simlpied because the VP is already selected. Only the VC has to be chosen with 216 = 64K choices.
12. Retain features: conection-oriented network. Lost Features: shorter process time lower header/data ratio harder to multiplex
Chapter 3
Networking Devices
1. (a) Number of channels= 12 5 10 = 600 (b) Capacity= 600 4 KHZ = 2.4 MHZ
2. (First, please make a correction: 170 Kb/s must change to 160 Kb/s) Total output bit-rate of the multiplexer is 160 Kb/s (a) Total bit-rate from analog links = (5 KHz + 2 KHz + 1 KHz) 2 samples/cycle 5 bits/sample = 80 Kb/s (b) Total bit-rate from digital links = 160 Kb/s - 80 Kb/s = 80 Kb/s 80 Kb/s = 20 Kb/s Total bit-rate per digital line = 4 lines Pulse stung per digital line = 20 Kb/s - 8 Kb/s = 12 Kb/s (c) The number of channels of the frame dedicated to each line is proportional to the data rate of that line. Lets consider one channel when upto 10 Kb/s of data rate is present. Using a proportional channel assignment , we need a total of 5 + 2 + 1 = 8 analog channels. As each digital line requires 8 Kb/s, we can also assign one channel per digital line. Therefore we need 4 15
16
Chapter 3. Networking Devices digital channels, and one control channel: Bits in each frame = (8 + 4 + 1)5 b/channel + 1 guard-bit= 66 b/frame Frame rate =
160103 66
3. (a) Pulse stung = 4800 b/s 0.03 = 144 b/s Number of characters are = 1 (sync) + 99 (data)= 100 4800 b/s 50 b/s Synchronization bit rate = 100 Number of 150 b/s terminals 4800(2600+5300+50+144) b/s = 12.7 12 terminals = 150 b/s (b) The number of characters for synchronization is proportional to bit rates. For example, since we need 12 characters for 150 b/s terminals, therefore we need 3 characters for synchronization. Frame format in terms of bits is: 2 (12 char 10 b/char) + 5 (6 char 10 b/char) + 12 (3 char 10 b/char) + 3 10 b/char + 1 10 b/char = 940 b/frame
4. (a) #bits/frame (total) = 2 Mb/s 26 s/frame = 52 bits/frame #bits/frame (data) = 52 bits/frame 10 = 42 bits/frame #channels = n = 42 bits/frame (b) P[clipping] =
m1 i= n 1 6
bits/ch
= 7 ch/frame
mi i
pi (1 p)mi1
17 5. (a) =
ta tc +d
= 2/8 = 25% m j
j i=0
( t i )j
t a
(b) Pj =3 =
m j
=
a )i (t td 3 j =0
8 3 8 1
(2 )3 6
21%
(2 )i 6
(c) B = Pj =n=4 =
n i=0
m n m i
(1/3)n
=
(1/3)i
4 i=0
8 7 8 i
(1/3)4
(1/3)i
9%
(d) E [C ] = 1.94
6. (a) m = 4 n=2 Prob[clipping] = Pc = = 10.4% for = 0.2 = 35.2% for = 0.4 = 64.8% for = 0.6 = 89.6% for = 0.8 (b) m = 4 n=3 Prob[clipping]Pc = = 0.0% for = 0.2 = 6.4% for = 0.4 = 21.6% for = 0.6 = 51.2% for = 0.8 (c) n = 4 P4 = 100%
3 i=3 3 i=2
3 i
i (1 )3i
3 3
3 (1 )33
18
7. =
ta ta +td
= 0.9
8.
1 m
Natural NRZ
Polar NRZ
Manchester
ASK
FSK
PSK
11. (a) Assume a packet incoming at input port of IPP has length of L bits. Then, T = ings: Increase transmission rate (r) by reducing clock cycle time of CPU. Dene value of d to be equal to highest-probability packet length(L).
d+50 r
T 2 dr
= 0 dopt , ropt
20
Chapter 3. Networking Devices (b) For example, if the switch fabric has 5 stages of routing in its internal network, the processing delay mostly depends on AND gate switch time of gates on a fabric. Assume applying CMOS transistors,which are slowest technology for switching transistors, for this switch fabric. Assuming 50-80 ns switch time for CMOS AND gate, the total propagation delay in this switch fabric = 80 ns 5 stages=0.4 s. On the other hand, the delay in IPP (D) mostly depends on packet fragmentation and encapsulation delay time. Typical value of this delay time is about tens or hundreds of milliseconds for a 512-bytes packet. Therefore processing delay in the switch fabric is not signicant compared to delay in IPP.
12. N/A
Chapter 4
(a) T = 16.7 ms + 4 Mb/(64 kb/s)=62.51 s (b) T = 16.7 ms + 4 Mb/(620 mb/s)=23.15 ms (c) With two million volumes of books: Total size = 4Mb 2 106 = 8000 Gb i. T = 16.7 ms + 8000 Gb/(64 kb/s) = 1.25 108 s 4 years ii. T = 16.7 ms+8000 Gb/(620 mb/s) = 12903.2167 s 3.6 hours
2. N/A
Rule of hardware: For each existing term except the rst term (in this case X 12 ) assign an EXOR followed by a 1-bit register. 21
22
10
11
(a)
14
15
(b)
Figure 4.1: Answer to exercise. For each non-existing term assign a 1-bit register. Once all bits of data (D, 0) moves in completely, the content of registers show the remainder of the division process. (b) See Figure 4.1 (b). CRC-16: X 16 + X 15 + X 2 + 1
4. (a) Dividend = X 10 + X 8 + X 6 + X 5 + X 4 Divisor = X 4 + X (b) If dividend = X 10 + X 8 + X 6 + X 5 + X 4 , and divisor = X 4 + X , then, quotient = X 6 + X 4 X 3 + X 2 + 2 and, remainder = X 3 2X
Power of x:
Figure 4.2: Contents of the four shift registers. If we sift in D, 0 = 1010111,0000 G = 10010 X 4 + X The nal contents of shift registers as the step-by-step implementation of
D,0 G |2
Bits of D, 0 left to shift in 1010111,0000 010111,0000 10111,0000 0111,0000 111,0000 11,0000 1,0000 0000 000 00 0 -
Shift registers contents 0000 1000 0100 1010 0101 1110 1111 1011 0001 0100 0010 0001
If we sift in D, CRC = 1010111,1000 G = 10010 X 4 + X The nal contents of shift registers as the step-by-step implementation of
D,CRC |2 G
24
Chapter 4. Data Links and Transmission Bits of D, CRC left to shift in 1010111,1000 010111,1000 10111,1000 0111,1000 111,1000 11,1000 1,1000 1000 000 00 0 Shift registers contents 0000 1000 0100 1010 0101 1110 1111 1011 1001 0000 0000 0000
6. (a) D =1010 1101 0101 111 G=1110 10 g=6, then, g-1=5 D ,0=1010 1101 0101 111,0000 0
0 CRC= D, G |2
Dividend = 101011010101111,00000 Divisor = 111010 Quotient = 111011111000010 Remainder = 10100 CRC=10100 D ,CRC=1010 1101 0101 111,10100 (b) D ,CRC = 1010 1101 0101 111,10100 G=1110 10
D,CRC |2 G
tf tf +2tp
1 1+2tp tf
1 1+2(10)
= 0.04762 or 4.76%
d v r
d = 24 km
d 3108 80 10106
d(10106 ) 80(3108 )
= 10
(c) See Figure 4.3. tp = d/v = 24 km/3 108 tp = 8 105 s (d) 8 : E = tp = tp = tp = tp = 6:E= 4:E= 2:E=
1 1+2(8) = 0.0588 = 5.88% 6.4 105 sec, d = 19.2 km 1 1+2(6) = 0.0769 = 7.69% 4.8 105 sec, d = 14.4 km 1 1+2(4) = 0.111 = 11.11% 3.2 105 sec, d = 9.6 km 1 1+2(2) = 0.2 = 20% 1.6 105 sec, d = 4.8
km
800 2106
= 4 104 s
26
E 0.2
10
tp tf
Figure 4.3: Answer to exercise. The eciency trend. (a) Stop-and-Wait protocol: E=
tf t
tf tf +2tp
= 0.0010 0.1%
6 6+2
0.2 4104
= 0.00596 0.6%
9. Frame = 5,000 b tp = 1 s/km (a) Rate on R2-R3 = 1 Gb/s Required condition on R3-R4: Link R3-R4 must transfer slower
1 Gb/s
5 5+2
1,800 5
s s
= 6.8103 .
(c) tp = 800 km 1 s/km = 800 s 5,000 b/frame E 2R3 = 5 ER tf = ER3R4 R3R4 1 Gb/s ER2R3 ER3R4 =
1 1+2
tp tf
=5
6.8103 ER3R4
0.034 ER3R4
=
1+2
1
800 0.034 ER3R4
28
Chapter 5
29
30
4th Floor
3rd Floor
5 5 2nd Floor
LAN 3
Ground Floor
Figure 5.1: Answer to exercise. The LAN overview of connections in a building. 2. Assuming that the computers and phones are placed at the corners of rooms, the overview of the LAN connections in a building is shown in Figure 5.1. (a) 2nd oor: d=5+3+5=13 m 3rd oor: d=5+3+3+5=16 m 4th oor: d=5+3+3+3+5=19 m (b) VoIP rate per oce=64 2 = 128 Kb/s
1 )(2 min ) 8 b/B =5.86 Web rate per oce=(22 KB/page/s 60
31 Parts (a) and (b) to be Part (a) and thus Part (c) to become Part (b) Data rate=100 106 b/s Speed = 200 m/s, Frame = 1000 b,
(a) Mean distance = 0.375 km total time/frame = (transmission time) + (propagation time) 103 b/frame + 0.3756km = 100106 b/s 20010 m/s = 11.87 s (b) Time is seconds = to sense a collision in the midpoint of two users distance = total time to send a frame up to the midpoint leading to a collision, and then sense back the collision = 0.5 (11.87 s) + 0.5 (11.87 s) = 11.87 s Time in bits = 11.87 s 107 b/s = 1, 187 b
4. 100 Mb/s 96 bit time to clear tp =180 b (a) g=2 Retransmission time = (96 + 512 2) 108 = 1.12 105 s (b) g =1 Retransmission time = (96 512) 108 = 6.08 106 s l = 180 b = 1.8 106 s (c) tp = c 100 Mb/s
5. (a) =
tp T
= T
32 R=
pt tB +t
etp
Un =
(T +2 )+e
tp 1 ( T +2 tp )+ep + e T +2 +e
(b) Rn is in terms of frames/time slot due to the throughput R being normalized. Rn makes it easier to use for estimation of the system. is called oered load since is equal to ( is the average arrival rate) multiplied by T (is a frame duration in seconds) resulting in oered load. (c) = {0.001, 0.01, 0.1, 1.0} Un 1 = Un2 = Un3 = Un4 =
0.001 / + 2(0.001 ) + e0.001 Te 0.01 / + 2(0.01 ) + e0.01 Te 0.1 / + 2(0.1 ) + e0.1 Te 1 / + 2(1 ) + e1 Te
6. N/A
(b)
= 0.973 s (c) pc = pc =
n a 1 na n a 1 na n a 1
41 4
41
= 0.422
(d) na = 7, i = 7
n a 1
71 7
71
= 0.387
10.387 0.387
= 1.52
b) Medium available
Fixed P Listen to Medium Medium not available Transmit with Prob P for Max tp Collision Transmission success
34
Network Analyzer
To Other Buildings
Hub
Repeater
Hub
To Internet
R1
Bridge
Chapter 6
2. N/A
3. N/A
4. N/A
5. N/A
6. (a) The probability of reaching a cell boundary or the probability of requiring a hando as a function of db is shown in Figures 6.1 and 6.2. Suppose that a vehicle initiates a call in a cell with 10 miles radius. The vehicle speed is chosen to be 45 m/h (within a city) 35
36
Table 6.1: Probability of having a hando for Case 4 db Hando Probability (%) 01 (m) k = 35 m/h k = 60 m/h 0 50 50 5 37 43 1 10 29 36 20 17 26 0 50 50 5 12 22 5 10 4 9 20 1 2 0 50 50 5 4 9 10 10 1 2 20 0 0
and 75 m/h (on highways). In case 1, since a vehicle is resting all the time with an average speed of 0 m/h, the probability of reaching a cell boundary is clearly 0 percent. In contrast to Case 1, for a vehicle is moving with an average speed in Case 2, the chance of reaching a cell boundary is always 100 percent. Thus, when a vehicle is either at rest or moving with some speed, the probability of requiring a hando is independent on db . From the gure, we see that as 01 increases, the chance of reaching a cell boundary is lower. Also, with a xed db , the hando probability in highway is much higher than in the city area. This is because the higher the speed limit, the higher the probability of reaching a cell. Table 6.1 summarizes the results. Assume 01 = 1 and in the city area where k = 45 m/h: if db is 5 miles the only chance of reaching a cell is 87 percent, or the chance that a hando occurs for the cell is 87 percent. If db is 10 miles, the probability of reaching a cell boundary is 76 percent. As db increases, the probability of
37
0.5
0.45
0.4
01 = 1 01 = 5 = 10
01
0.35
0.3
0.25
0.2
0.15
0.1
0.05
db, miles
10
12
14
16
18
20
Figure 6.1: The probability of reaching a cell boundary for Case 4: (a) within a city
0.9
0.8
01 = 1 01 = 5 = 10
01
0.7
0.6
0.5
0.4
0.3
0.2
0.1
db, miles
10
12
14
16
18
20
Figure 6.2: The probability of reaching a cell boundary for Case 4: (b) in highway.
38
0.9
0.8 =1 01 01 = 5 01 = 10
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0 25
30
35
40
45
50
55
60
65
70
75
Figure 6.3: The probability of reaching a cell boundary in terms of a vehicles speed for Case 4. reaching the call holding time decreases. As the cell size increases, the probability of reaching a boundary decreases in an exponential manner. The only dierence between Case 3 and Case 4 is that the change of hando probability for the latter is between 0 percent to 50 percent while the former has a change of probability between 0 percent to 100 percent. This is mainly due to the dierence between the two initial state probabilities for both case. (b) The relationship between a vehicles speed and the chance of reaching a cell boundary is shown in Figure 6.3 As shown earlier, for Case 1 and Case 2, the probability of requiring a hando is independent on the call holding time and db and therefore, it is also independent on the vehicles speed. For Case 1 in which a vehicle is resting all the time, the vehicle will never reach a cell boundary. For Case 2 in which a vehicle is moving all the time with some speed, the chance of reaching a cell boundary is always 100 percent. The probability of reaching a cell boundary is proportional to the vehicles speed. This is because the increase of the speed of a vehicle increases the chance of reaching a cell boundary. As 01
7. N/A
40
Chapter 7
+2
(c) See Figure 7.1 (c). H=3 (d) See Figure 7.1 (d). min = 3 max = 4 H=
2(3)+(n4)4 n 2
41
42
(a)
(b)
(c)
(d)
Figure 7.1: Answer to exercise. Four dierent network topologies to connect two users.
43
(a)
(a)
2 3 4
44
45
46
k A,C AC(5) AC(5) AC(5) AC(5) AC(5) AC(5)
(a)
(a)
k 1,2 1,2(3) 1,2(3) 1,2(3) 1,2(3) 1,2(3) 1,2(3) 1,3 1,3(3) 1,3(3) 1,3(3) 1,3(3) 1,3(3) 1,3(3) 1,4 1,5 1,6 1,6(9) 1,6(9) 1,6(9) 1,6(9) 1,3,5,6(8) 1,3,5,6(8) 1,7
1,3,5,7(20) 1,3,5,6,7(16)
(a)
2 3 4
47
R3
R2
R7
R1
R3
R2
R7
R1
R4
R4
R6
R6
R5
R2
R7
R6
R5
R3
R3
R1
R2
R7
R1
R4
R4
R6
R5
R5
R3
R2
R7
R1
R3
R2
R7
R1
R4
R4
R6
R6
R5
R2
R7
R6
R5
R3
R1
R4
R5
48
k 1,2 1,2(2) 1,2(2) 1,2(2) 1,2(2) 1,2(2) 1,2(2) 1,2(2) 1,2(2) 1,3
(a)
1,6,5,4(11) 1,6,5,4(11) 1,6,5,4(11) 1,6,3,4(9) 1,2,3,4(8) 1,6,7,4(5)
(a)
2 3 4
9. PBC = (0.3)(0.1)(0.7) = 0.021 PCE = (0.3)(0.6) = 0.18 PCDF = 1 (1 0.5)(1 0.8) = 0.9 PCEF = 1 (1 0.18)(1 0.2) = 0.344 PCF = (0.9)(0.344) = 0.31 PBCF = 1 (1 0.021)(1 0.31) = 0.324 PBF = (0.3)(0.324) = 0.097 PAF = 1 (1 0.4)(1 0.097) = 0.458
49
R3
R2
R7
R1
R3
R2
R7
R1
R4
R4
R6
R6
R5
R5
R3
R2
R7
R1
R3
R2
R7
R1
R4
R4
R6
R6
R5
R5
Figure 7.8: Answer to exercise. PCE = (0.3)(0.3)(0.6) = 0.054 PCDF = 1 (1 0.5)(1 0.8) = 0.9 PEF = 0.2 PCF = [1 (1 PCE )(1 PEF )]PCDF (0.3)(0.3) = 0.0197 PAC = 1 (1 PAB )(1 PBC ) = 0.4126 PAF = 1 (1 PAC )(1 PCF ) = 0.424
50
Chapter 8
2. (a) TCP sequence number eld includes 4 B = 32 b. Thus: Maximum number of bytes to be identied in a connection = 232 We consume one sequence number for connection setup, seq(i), and one sequence number for connection termination, seq(k). As each byte of data is identied by a unique sequence number, therefore, the maximum number of data bytes that can be identied for a connection and we can transfer = f = 232 2 = 4, 294, 967, 294 B 51
52
HOST A
A gap in transmission to allow Host A not tot wait for ACK and keep transmitting
HOST B
LAST 40 BYTES
Figure 8.1: Answer to exercise. (b) Total size of each segment = 2,000 B. Also, each segment has the following headers: 20 B Link + 20 B IP + 20 B TCP = 60 B. Thus: Maximum size of data in each segment = 2,000 B - 60 B = 1,940 B. Maximum number of segments to be produced in a connection ,967,294 B 2,213,901 = 4,294 1,940 B Total size of all segment headers = 2,213,901 (60 B) = 132,834,060 B Total size of all segment headers and data = 4,294,967,294 B + 132,834,060 B = 4,427,801,354 B Total time it takes to transfer all segments =
4,427,801,354 100106
B8 b/B b/s
3. (a) Slow start congestion control: Since the number of packets transmitted doubles every time, the number of round trips to reach n is log2 n 1. (b) Additive increase congestion control: Since the number of packets transmitted increases by 1 every time, the number of round trips to reach n is n 1.
5. N/A
6.
= 1.2 Gb/s RTT = 3.3 ms File size f = 2 MB packet size = 1 KB Hence the total number of packets needed to be transmitted = 2MB / 1 KB = 2000 (a) With an additive increase/multiplative decrease protocol, the window size increases by one all the times until a congestion when the window size is divided by two. Therefore, the window size starting at wg = 1 KB changes its value as follows: wg = 1 KB, 2 KB, 3 KB, 4 KB, , n KB Therefore: 1 + 2 + 3 + + n = 2000
54 Thus:
n(n+1) 2
where we can obtain n = 62.74 63 Since, the congestion window size of 500 KB is never reached, no multiplicative decrease takes place. Thus The total time = 63 3.3 ms = 207 ms Clearly, the window size takes a total of 500RTT = 5003.3=1.65 seconds to reach 500 KB. (b) With a slow start protocol, the window size is doubled all the times until a congestion. Therefore, the window size starting at wg = 1 KB changes its value as follows: wg = 1 KB, 2 KB, 4 KB, 8 KB, , approximatley 1,024 KB Therefore, we will have to make 11 roundtrips to transmit the le: 1+2+4+8+16+32+64+128+256+512+1024 = 2047 Thus the total time = 11 RTT = 11 3.3 ms = 36.3 ms The window size takes a total of 10 (c) With the additive increase/multiplative decrease protocol, it takes 63 RTTs to transfer the 2 MB le. Therefore, = 63 3.3 ms 208 ms f 2 MB = 208 r= ms = 76.9 Mb/s (d) With the additive increase/multiplative decrease protocol, 76.9 Mb/s r = 64 103 = u = B 1.2 Gb/s
7. Round trip time = 0.5 s Packet transmitted every 50 ms Lets assume packet (segment) P-11 is lost. The rst acknowledgement, ACK-10, is received when P-21 is about to be transmitted. No ACK is received before P-22 as P-11 is lost. We receive the fourth ACK-10 after P-24 is sent. Segment loss is detected. P-11 is transmitted instead
55
0.5 sec
Destination
Source
50ms
Figure 8.2: Answer to exercise. of P-25. See Figure 8.2. (a) In this case, P-11 is transmitted and after 50 ms, P-25 is transmitted, and the cycle continues. Hence, we lose only 50 ms. See Figure 8.2. (b) In this case, the sender waits for the acknowledgment of retransmitted P-11. Thus, it has to wait for the complete round trip. Hence, the time lost here is 0.5 s.
56
Chapter 9
2. (a) To obtain the le name in a remote machine, the DNS server requests the local DNS server if it is not the local DNS server to contact the remote machine. These requests are carried out by the server either recursively or iteratively. On the other hand, if the server wants to obtain the le name from another DNS server, depending upon the type of information and the le location, the DNS server either requests the root DNS or another local DNS. (b) When we take the domain name from the DNS server, our query 57
58
59 gives us a result which includes all the possible aliases of the particular domain names and their corresponding IP addresses. On the other hand, if the query is done using the IP address, then we get only the particular alias that corresponds to that IP address in response. This is illustrated by the Figure 9.2 using the example of gmail.com. (c) As seen in Figure 9.2, all hosts from the same subnet need not be identied by the same DNS server as we can assign dierent subnets with dierent IP addresses. This is done for various reasons like trac sharing, having dierent names (alias) for same website, etc.
3. (a) SSH provides a far better security of transmission compared with TELNET. (b) The functionality given by Rlogin implementation in Telnet are: It passes terminal type It bypasses the need for username/password to be entered. No newline etc processing is applied to data transferred It has better out-of-band data handling It has better ow-control handling It has window-size negotiation
4. (a) No, FTP does not compute checksum any checksum for its le transfer. It relies on the underlying TCP layer for error control. TCP layer uses checksum for error control. (b) If the TCP connection is shut down, the browser tries to set up the connection once. If this attempt fails then the browser quits the le transfer. (c) Following are the list of commands that may be set for FTP clients.
60
61 Command Explanation ABOR Abort an active le transfer. ACCT Account information. ALLO Allocate sucient disk space to receive a le. APPE Append CDUP Change to Parent Directory. CLNT Send FTP Client Name to server CWD Change working directory. DELE Delete le. EPSV Enter extended passive mode. EPRT Species an extended address and port to which the server should connect. FEAT Get the feature list implemented by the server. GET Use to download a le from remote HELP Returns usage documentation on a command if specied, else a general help document is returned. LIST Returns information of a le or directory if specied, else information of the current working directory is returned. LPSV Enter long passive mode. LPRT Species a long address and port to which the server should connect. MDTM Return the last-modied time of a specied le. MGET Use to download multiple les from remote MKD Make directory (folder). MODE Sets the transfer mode. MPUT Use to upload multiple les to remote NLST Returns a list of lenames in a specied directory. NOOP No operation (dummy packet; used mostly on keep alive). OPTS Select options for a feature. PASS Authentication password.
62
Chapter 9. Applications and Network Management PASV Enter passive mode. PORT Species an address and port to which the server should connect. PUT Use to upload a le to remote PWD Print working directory. Returns the current directory of the host. QUIT Disconnect. REIN Re initializes the connection. REST Restart transfer from the specied point. RETR Retrieve a remote le. RMD Remove a directory. RNFR Rename from RNTO Rename to. SITE Sends site specic commands to remote server. SIZE Return the size of a le. SMNT Mount le structure. STAT Returns the current status. STOR Store a le. STOU Store a le uniquely. STRU Set le transfer structure. SYST Return system type. TYPE Sets the transfer mode (ASCII/Binary). USER Authentication username.
5. The total le transfer delay is: (a) On both directions when the network is in its best state of trac, the average le transfer delay is 3.5 ms. (b) On both directions when the network is in its worst state of trac, the average le transfer delay is 9 ms.
63 (c) On one direction when we try FTP from one computer to itself: The average le transfer is 7.5 ms.
6. All characters of the URL must be from the following: A-Z, a-z, 0-9 . \ / % - + & # ? ! = () @
If a URL contains a dierent character it should be converted; for example, must be written as %5e, the hexadecimal ASCII value with a percent sign in front. A blank space can also be converted into an underscore.
7. (a) The purpose of the GET command in the HTTP is to request a representation of the specied resource. The GET method retrieves whatever information (in the form of an entity) identied by the Request-URI. If the Request-URI refers to a data-producing process, it is the produced data is returned as the entity in the response and not the source text of the process, unless that text happens to be the output of the process. (b) The purpose of the PUT command in HTTP is to request the enclosed entity to be stored under the supplied Request-URI. Thus it basically uploads a representation of the specied resource. (c) The GET command needs to use the name of the contacted server when it is applied as HTTP is a stateless protocol. This means that it keeps the state information and live connections to remote clients. Thus, we connect to the server, get the info we need, and then disconnect. Therefore, we need to give the name of the contacted server.
64
8. (a) The role of ASN.1 on the 7 layer OSI model is shown in Figure 9.3. The ASN.1 notation is used in the application layer as a notation. (b) The impact of constructing a grand set of unique global ASN.1 names for MIB systems is that the network management can identify an object by a sequence of names or numbers from the root to that object. This enables designers to produce specications without undue consideration to the encoding issues. (c) A US based organization must register under the following: Root : ISO : company name : dod : internet : MIB
9. (a) The SNMP protocol has the function wherein the network manager can use this protocol to nd the location of fault. The task of SNMP is to transport MIB information among all the managing centers and agents executing on its behalf. The most ecient method for the above functions is unarguably UDP as it will be faster and ecient. (b) The pros of letting all the managing centers access the MIB is better connection ability and better communication. It would greatly
65 help in the development and servicing of the MIB. All these things would result in the better utilization of the network and also more eciency. On the other hand, the price to pay for this kind of exibility is having a huge impact on the security of the network. Also, even if the security aspect is taken care of, letting everyone access to the MIB variables increases the complexity of the MIB design and maintenance. (c) MIB is the information storage medium that contains managed objects reecting the current status of the network. Now, if the MIB variables are located in the router memory, it would greatly improve the eciency and the speed of the process. However, it brings with it the problem of updating the MIB. In the scenario where router B is not involved in, any communication must also be notied about the change in order to update the MIB if the communication is limited between routers A and C. This would create unnecessary overheads and wastage of network bandwidth. This is of course on top of increasing the router complexity, buer size, and host of other problems. Thus, MIB variables should not be organized in the local router memory.
66
Chapter 10
Network Security
1. L4 = 4de5635d, R4 = 3412a90e, k5 = be11427e6ac2. L4 = 0100;1110;1111;0101;0110;0011;0101;1110. R4 = 0011;0100;0001;0010;1010;0101;0000;1110. After the expansion stage the right half will become: R4 = 000110;101000;000010;100101;010100;001010;100001;011100. k5 = 101111;110001;000101;000010;011111;110110;101011;000010. R4 Xor k5 gives us: 101001;011001;000111;100111;001011;111100;001010;011110. Now passing it through the S-Box: R4 = 0100;0110;1001;0110;0111;1011;0000;0111. L4 = 0100;1110;1111;0101;0110;0011;0101;1110. Xor with the left half: R4 = 0000;1000;0110;0011;0001;1000;0101;1001 After permutation: R5 = 1011;1010;0100;1001;0010;1000;0000;0100 = ba492804 L5 = 0011;0100;0001;0010;1010;0101;0000;1110 = 3412a50e
67
68 2. Key generation:
The key is 010101. . . .01 and is 56 bit long. Thus, the parity bits have already been discarded. The key is rst divided into two blocks of 28 bits using the standard permutation block provided by the DES algorithm: the left block say C0 = 0000000; 0111111; 1100000; 0001111. the right block say D0= 0000000; 0111111; 1100000; 0001111. Now, we shift left both C0 and D0 by 1 thus we get C1 and D1 as follows: C1 = 0000000; 1111111; 1000000; 0011110. D1 = 0000000; 1111111; 1000000; 0011110. ki (left) = 101100;001001;001011;001010. ki (right) = 010101;010000;001001;010100. ki = ki (left);ki (right). Message generation: The message is all ones: 111. . . .111 (64). With left half (32) 11. . . .11 and right half(32) 11. . . 11. (Here the initial permutation has no eect.) Converting the 32 message into 48 by passing through the mangler (1): 111. . . 11(32 bit) = 111. . . 111(48bits). Xoring with the key ki : 010011; 110110; 110100; 110101; 101010; 101111; 110110; 101011. Now, passing it through the S-Box: 0110;0110;0010;0101;1101;1011;1000;1010. Xor with left half: 1001;1001;1101;1010;0010;0100;0111;0101. After permutation of the right half we get: 0000;0110;1101;1001;0100;1101;1110;1010 (R1 ) 1111;1111;1111;1111;1111;1111;1111;1111 (L1 ).
69
3. N/A
4. N/A
5. From the text book: c = mx mod n and m = cy mod n. Note that x and y are mod inverse of each other. Thus, c = ((cy )x ) mod n. Since x and y are inverse of each other, we then get c = c mod n = c.
6. M = 1010. The two four bit primes are a = 5 and b = 11. Also x = 3. To nd the keys, we have n = ab = (5)(11) = 55 q = (a 1)(b 1) = (4)(10) = 40 Thus, xy mod (a 1)(b 1) = 1 resulting in 3y mod 40 = 1 which implies that y = 27, since (3)(27) = 81 and 81 mod 40 = 1. Therefore the keys are: The public key = {3, 55} The private key = {27, 55}. Thus: the cipher text from the message 1010 (10 in decimal) is 103 mod 55 = 1000 mod 55 = 10 mod 55. Therefore, the cipher text is 10.
7. m = 13 a=5
C = 137 mod 55 = 62748517 mod 55 = (55)(1140882) + 7 mod 55 = 7 mod 55. C = 7. (b) The corresponding y is given as follows: n = ab = (5)(11) = 55 q = (a 1)(b 1) = (4)(10) = 40 Also x = 7 Thus, xy mod (a 1)(b 1) = 1 7y mod 40 = 1 Which implies y = 23 (since (7)(23) = 161 and 161 mod 40 = 1) The private key = {23, 55}. (c) The decryption is 723 mod 55 = 13.
8. (a) When encrypting with small values of the m, the (non-modular) result of me may be strictly less than the modulus n. In this case, ciphertexts may be easily decrypted by taking the the root of the ciphertext with regardless of the modulus. For systems that conventionally use small values of e, such as 3, the AES key of 256 bits using this scheme would be insecure since the largest m would have a value of 2563 , and 2553 is less than any reasonable modulus. Such plaintexts could be recovered by simply taking the cube root of the ciphertext. Thus, the 256-bit AES key, k, chosen by user 1 is too small to encrypt securely with RSA having a public key as {x, 5} since k e < x. Thus, ke mod x = ke and an intruder only recovers k by
71 taking the eth root. (b) The values m = 0 or m = 1 always produce ciphertexts equal to 0 or 1 respectively, due to the properties of exponentiation. Thus, the keys containing of all 0s or all 1s can be easily recovered by the attacker. An example could be {x = 3, y = 7}.
9. To overcome the vulnerability in the above combination, practical RSA implementations typically embed some form of structured, randomized padding into the value m before encrypting it. This padding ensures that m does not fall into the range of insecure plaintexts, and that a given message, once padded, encrypts to one of a large number of different possible ciphertexts. The latter property can increase the cost of a dictionary attack beyond the capabilities of a reasonable attacker. Modern constructions use secure techniques such as optimal asymmetric encryption padding (OAEP) to protect messages. The intuitive solution to this problem is that user 1 must select a larger random number for RSA encryption. In this case, both users 1 and 2 use this number to create key, k. A second solution is that user 1 pads k with random bits so that the message has almost the same number bits as x does.
10. Suppose that user 1 chooses a prime number a, a random number x1 , and a generator g and creates y1 . We can say:
x1 mod a = (gx2 mod a)x1 mod a = [(gx2 )x1 mod a] mod a = k1 = y2 x2 mod a = k2 [(g x1 )x2 mod a] mod a = (gx1 mod a)x2 mod a = y1
72
Part II
Advanced Concepts
73
Chapter 11
76
Table 11.1: Packet block arrival and Packet Number Arrival Block of Misor- Time in s Number derings 1 2 20 4 40 2 0 60 3 0 80 4 1 100 5 4 120 6 3 140 7 5 160 8 2 180 9 4 200 20 0 220 11 2 240 12 5 260 13 2 280 14 1 300 15
departure activities. Service Departure Time in s Time in s 70 130 10 10 40 130 100 160 70 130 10 70 160 70 40 90 170 70 90 140 250 280 320 250 330 230 310 420 350 340
20 40
90
600
640 680
Figure 11.1: Solution to exercise. The trend of packets accumulated in the queue over time.
77 (c) Percentage of time that the buer is not empty can be realized from Figure 11.1. If we include all the activities of the queue as described in Part (a), the queue activity stops at around 680 s. Thus, the percentage of time that the buer is not empty 20 s Time That the Buer Is Empty = 680 = s = 0.029 Duration of System Processing Time Percentage of time the buer is not empty = 1 - 0.029 = 0.97
2 1
0.92 10.9
= 8.1
E [Tq ] =
0.2 s
3. (a) T = min(T1 , T2 , ..., Ti ) (b) P [T > t] = P [time until next packet departures] = P [min(T1 , T2 , ..., Ti )] = P [T1 > t1 , T2 > t2 , ..., Ti > ti ] = P [T1 > t]P [T2 > t]...P [Ti > t] = et et ...et = eit
78
Pi = 1
i= k
i (1 ) = 1
(1)k 1
= 1 k
= 0.7927 =
300
= 378.45 packet/s
j =k
k j = (1 ) 1 =
6. (a) The Markov chain is similar to a regular M/M/1 except the arraival rate to any state i is i = (b) For State 0: p0 = p1 p1 = p0 p1 =p0 For State 1: p1 2 + p1 = p0 + p2 p1 2 = p2 p2 =
2 p1 1 2 p2 = 1 2 p1 = 2 p0 i
Continuing this trend for next states, a generic form can be developed as: p i 1 i = pi pi = Since pi =
i=0 pi = 1 i i! e i pi1
1 i i! p 0
1 p0 = e
79 (c) When i while < 1, we have pi 0, thus, the system is in a steady state. (d) The utilization (of the server) is: i =
i
1 i
i=0 iP [K (t)
= i] =
in:
(f) The mean system delay considering any State i is obtained using Littles law: E [T ]i =
E [K (t)] i
However, since the arrival rate is dierent in each state, we need to compute the mean over all states: E [T ] = =
2 i=0 pi E [T ]i
i=0 pi
i=0
1 i i! e
7. a = 2
1
= 100 ms/packet
P [i > 2] = Pa = P2 = P0 =
(1+1 )+
2 1 1 2! 1
1 82 (1+1.8)+ 1. 2!
1 10.9
= 0.052
80 = 18/20 = 0.9
a 2 a! 0
1.82 2 (0.0526)
= 0.0853
i=a Pi
Prob[Waiting] = P [K (t) 2] =
Pa (1)2 + 1 (0.0853)(0.9) (10.9)2 + 1.8 = 9.474
Pa 1
0.0853 10.9
i=50 i i a i a Pa = P i=50 i=50 2 Pa i i=50 i ] 2 [ i=50 150+1 Pa 1 1 ] 2 [ 1 51 Pa 0.0853 0.951 2 [ 1 ] = 0.92 0.1
8. (a) Prob[blocking a packet]=Prob[all servers are busy] = 100 packets/s mean service rate: = 20 packets/s; 1 = 100/20 = 5 Use Erlang-B: Pa = (b) Pa =
a 1 a! 1
i a 1 i=0 i!
56 6!
6 5i i=0 i!
= 0.1935
0.1935 2
= 0.0967
By plugging numbers in the equation, we have: P7 = 0.121 P8 = 0.075 We need two switches to lower the blocking probability below 0.0967, this is 4 more switches then the setup in Part (a).
81
i
0 1
i
2
i
j
i
ci
2 i
3 i
j i
(j+1) i
c i i
Figure 11.2: Solution to exercise, Markov chain for the M/M/c/c system. 9. (a) The hando process is modeled using M/M/c/c Markovian system in which there is no queueing line with random interarrival call time and exponential service time (channel holding time) with c servers (c channels) as well as c sources (c hando calls). The Markovian chain of this system is illustrated in Figure 11.2 where in our case: i = Hando request rate for trac type i {0, 1, ..., k } following a Poisson process. 1/i = Mean holding time of a channel or mean channel exchange time for trac type i with an exponential distribution. Let j be channels that are busy. Thus, hando calls depart at rate ji . (b) When the number of requested channels reaches the total number of available channels (ci ), ie. j = ci , then, all ci channels are in use and the channel exchange rate is ci i . In this case, any new arriving hando calls are blocked since there is no queueing. The global balance equations are: i P0 = i P1 i Pj 1 = ji Pj f or f or j=0 0 < j ci (11.1) (11.2)
where, P0 is the probability that no channel exchange is requested for trac type i, and Pj is the probability that j channel exchanges
82
Chapter 11. Packet Queues and Delay Analysis are requested for trac type i. It then follows that P1 = i P0 i Pj 1 j (11.3)
Pj
(11.4)
where, i = i /i is the oer load of the system. In Equation (11.4), let j = 2 and 3, then: P2 = i 2 P0 i 2 P0 i P1 = = 2 21 2! i 3 P0 i 3 P0 i P2 = = 3 3 2! 3! (11.5)
P3 =
(11.6)
1
ci i j j =0 j !
(11.8)
(11.9)
When j = ci , all the channels are busy and any hando call gets blocked. The hando blocking probability denoted as Pci are expressed by Pci = i ci ci ! 1
ci i j j =0 j !
(11.10)
83
0.9
0.8
0.7
c = 50 i
0.6
0.5
1/ = 30 ms i
1/i = 20 ms
0.4
0.3
0.2
1/ = 10 ms
i
0.1
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
0.7
0.6
ci = 100
0.5
0.4
0.3
1/ = 30 ms
i
0.2
1/ = 20 ms
i
0.1
1/ = 10 ms
i
9000 10000
1000
2000
3000
4000
5000
6000
7000
8000
84
0.9
0.8
ci = 10
0.7
0.6
0.5
ci = 50 ci = 100
0.4
0.3
0.2
1/ = 30 ms i
0.1
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
Figure 11.5: Hanfo Blocking Probability (ci = 50 and 100, 1/i = 30 ms).
0.5
0.45
0.4
0.35
1/i = 20 ms .. 1/i = 10 ms
0.3
0.25
0.2
0.15
0.1
0.05
1/i = 30 ms
0 50 100 150 200 250 300
Number of Channels
85 10. (a) The hando blocking probability of the selected handos as a function of system oered load are shown in Figures 11.3, 11.4, 11.5, and 11.6. (b) In Figure 11.4, we assume the total available channels (ci ) to be 50 and 100 respectively. The hando blocking probabilities with a choice of three dierent mean holding times of 15, 20, and 30 ms are plotted. The times shown in the plot are estimates of the switched or exchanged channel latencies. The gures show that the blocking probability is directly proportional to the mean channel exchange time. As the mean holding time increases, the performance reaches to its ideal value. In Figure 11.5, the hando blocking probability drops when the numbers of available channel increases. At last, we plot the graph of blocking probability versus the number of channels for dierent values of 1/i in Figure 11.6. The hando call request rate is xed while we vary the number of channels from 0 to 300. For 1/i = 30 ms, the blocking probability is dramatically decreased when the number of channels are less than 150. After exceeding 150, the behavior of decreasing is not obviously seen.
= 33 packets/ms
= 0.33 = 0.133
86 3 = 4 =
3 3 4 4
4 i=1
0.5+0.15+2+2 20
= 0.232 ms
12. N/A
13. (a) Queuing unit 1: 1 = 3 Queuing unit 2: 2 = 6 + 6 + 3 + = 20 Queuing unit 3: 3 = 6 Queuing unit 4: 4 = 6 (b) E [K1 ] = E [K2 ] = E [K3 ] = E [K4 ] = (c) E [T ] =
1 11 ; 1 2 12 ; 2 3 13 ; 3 4 14 ; 4 3 1 = 20 2 =6 3 =6 4 E [K2 ] E [K3 ] 20 + 6
E [K1 ] 3
E [K4 ] 6
14. = 200 packets/ms 0 = 100 packets/ms i = 10 packets/ms (a) = 0.4 + = /0.6 = 333.33 packets/s Thus, the arrival rate to each of the queuing units in parallel is: i = 0.4/5 333.33 = 26.67 packets/s
E [K0 (t)] =
100103
103 (for 1 i 5)
E [K0 (t)]
i i i
10103
= 105 s = 30 ms
Pi E [Ki(t)]
15. (a) 3 = 0.3 1 2 = + 0.31 1 = 2 + 3 + 4 4 = 0.31 1 = 2 + 3 + 4 = + 0.31 + 0.31 + 0.31 = + 0.91 1 = 8 packets/ms 2 = + 0.31 = + 0.3 10 = 4 = 3.2 packets/ms 3 = 0.3 80 = 2.4 packets/ms 4 = 0.31 = 0.3 80 packets/ms (b) 1 = 2 = 3 = 4 = (c) E [T ]
1 8 0.8 10 ; E [K1 (t)] = 11 = 10.8 = 4 2 3.2 0.267 12 ; E [K2 (t)] = 12 = 10.267 = 0.364 1 2.4 0.171 14 ; E [K3 (t)] = 11 = 10.171 = 0.206 1 2.4 0.15 16 ; E [K4 (t)] = 11 = 10.15 = 0.176 (t)] .206+0.176 = 4+0.364+0 = 5.93 ms = E [K 0.8
88
Chapter 12
Px(4) Px(3)
Px(4)
Px(3)
Px(3)
Px(2)
Px(2)
Px(2)
Px(2)
0
Px(0) Px(0) + Px(1) Px(1)
1
Px(0)
2
Px(0)
3
Px(0) Px(1)
Px(1)
Px(1)
89
90 2. (a) PX (k) =
for k = 0, 1, 2, 3
1 4
=1 4 P1 +
1 4
1 1 2 P1 + 4 P2 5 2
5 2 P1 = P2 , P2 =
2P0 = 5P0
P3 =
12 5 P2 , P3
= 12P0
0 1 2 3
Figure 12.2: Markov chain. P00 = PX (0) + PX (1) = P01 = PX (2) = P02 = PX (3) = P11 = PX (1) = P10 = PX (0) = P12 = PX (2) =
1 4 1 4 1 4 1 4 1 4 1 4
1 4
1 2
(t)x et . x!
PX (x) =
thus:
(2 3)
2 2 e 3
2!
= 0.114, thus:
(2 3)
3 2 e 3
3!
= 0.025, thus:
92
Chapter 12. Quality-of-Service and Resource Allocation P00 = PX (0) + PX (1) = 0.855 P01 = PX (2) = 0.114 P02 = PX (3) = 0.025 P03 = PX (4) = 0.004 P01 = PX (2) = 0.114 P10 = PX (0) = 0.513 P11 = PX (1) = 0.342 P12 = PX (2) = 0.114 P13 = PX (3) = 0.025 P20 = 0 P21 = PX (0) = 0.513 P22 = PX (1) = 0.342 P23 = PX (2) = 0.114 P30 = 0 P31 = 0 P32 = PX (0) = 0.513 P33 = PX (1) = 0.342 (d) Sketch from Part (c).
93 5. N/A
6. Solving this problem requires a great deal of ellaborations in complex mathematical background. We try to summarize this background. In general, for a continuous random variable X 0, with mean E [X , second moment E [X 2 ], and PDF fX (x), the Laplace-Steiljes transform (LST) of FX (x) is dened by X () = f
x fX (x)dx 0 e
Now, we can derive the mean residual time, rj , can be derived as dr () [X 2 ] rj = lim0 j = E 2E [X ] d
7. (a) For non-preemtive scheduler: E [T1 ] = 0.37 s, E [T2 ] = 0.62 s, E [T3 ] = 0.25 s (b) For preemtive scheduler: E [T1 ] = 0.12 s, E [T2 ] = 0.66 s, E [T3 ] = 1.91 s (c) The waiting time E [Ti ] for class i packet is lower for preemtive scheduler as long as i is low and it will be reversed for higher is.
8. We compare the impact of an increased number of inputs on total delay in priority scheduler with: three ows (n=3), and four ows (n=4). i = = 0.2 packets/ms
94
1 i
= 1ms
i j =1 j E [Tq,j ] +
E [Tq,i ]
i 1 j =1 j
n = 3, non-preemptive scheduler: Wx =
n j =1 j rj
3 j =1 j rj
= (3)(0.2)(0.5) = 0.3
0 = 0.3 + 1 E [Tq,1 ]
E [Tq,2 ]
1 j =1 j
= 0.3 + 1 E [Tq,1 ] + 2 E [Tq,2 ] + E [Tq,2 ]1 = 0.3 + 0.2 0.375 + 0.2E [Tq,2 ] + 0.2E [Tq,2 ] E [Tq,2 ] = 0.625 ms For i = 3: E [Tq,3 ] = Wx +
3 j =1 j E [Tq,j ] +
E [Tq,3 ]
2 j =1 j
= 0.3 + 1 E [Tq,1 ] + 2 E [Tq,2 ] + 3 E [Tq,3 ] + 1 E [Tq,3 ] + 2 E [Tq,3 ] = 0.3 + 0.2 0.375 + 0.2 0.625 + 0.2E [Tq,3 ] E [Tq,3 ] = 1.25 ms E [Ti ] = E [Tq,i ] + For i = 3 E [T3 ] = E [Tq,i ] +
1 3 1 i
= 1.25 + 1 = 2.25 ms
95 n = 4, non-preemptive scheduler: Wx =
n j =1 j rj
4 j =1 j rj
= (4)(0.2)(0.5) = 0.4
For i = 1: E [Tq,1 ] = Wx + E [Tq,1 ] = 0.5 For i = 2: E [Tq,2 ] =0.4 + 1 E [Tq,1 ] + 2 E [Tq,2 ] + E [Tq,2 ]1 = 0.4 + 0.2 0.5 + 0.4E [Tq,2 ] + 0.2E [Tq,2 ] E [Tq,2 ] = 0.833 ms For i = 3: E [Tq,3 ] =0.4 + 1 E [Tq,1 ] + 2 E [Tq,2 ] + 3 E [Tq,3 ] + 21 E [Tq,3 ] = 0.4 + 0.2 0.5 + 0.2 0.833 + 0.6E [Tq,3 ] E [Tq,3 ] = 1.667 ms E [Ti ] = E [Tq,i ] + For i = 3 E [T3 ] = E [Tq,3 ] +
1 3 1 i 1 j =1 j E [Tq,j ]
= 1.667 + 1 = 2.667 ms
= 1.667
j
96
= 2.5
j
E [T3 ] = 2.5 + 1.667 = 4.167 ms (c) The total delay obtained in the non-preemtive scheduler where n = 3 and n = 4 are close. In a preemtive scheduler, the dierence in delay when n = 3 and n = 4 is very large. This is very obvious as when the numbers of ows increases in the case of preemtive scheduler, the waiting time becomes large for a low priority packet to be procesed. However, in a non-preemtive scheduler, this has a littile impact. This is because in an nonpreemptive scheduler, lower priority packets cannot be interrupted immidiately upon the arriaval of higher priority packets.
10. N/A
11. N/A
97 Packet No. 1 2 3 4 5 6 7 8 9 10 11 12 Size 110 110 110 100 100 100 100 200 200 240 240 240 Flow 1 1 1 1 1 1 2 2 3 3 3 4 Fi (FQ) 110 220 330 430 530 630 100 300 200 440 680 240 Fi (WQ) 1100 2200 3300 4300 5300 6300 500 1500 666.6 1466.6 2266.6 600
12. Priority Queueing: (a) With 10% of the bandwidth,the low-priority will at least be able to transmit,without the guarantee bandwidth, a low-priority might never transmit. (b) The high-priority ows will lose 10% bandwidth and this 10% hit will be distributed evenly throughout all the high-priority ows, therefore the performance hit will not be noticeable.
13. See the table for the following arrangement: Flow1 110,110,110,100,100,100,(Flow2) 100,200, (Flow3) 200,240,240, (Flow4) 240 (a) Packets in fair queueing: 7,1,9,2,12,8,3,4,10,5,6,11
98
Chapter 12. Quality-of-Service and Resource Allocation (b) Fair Q.: A1,B1,D1,B2,C1,D2,A2,B3,C2,D3,A3,B4,C3,D4,A4,B5,C4,D5,A5,C5 (c) Weighted: A1,B1,B2,C1,C2,C3,D1,D2,D3,D4,A2,B3,B4,C4,D5,A3,C5,B5,A4,A5
15. Please make a correction: Part (c), ow D is 30 percent. (a) Priority Q.: B1,,B2,A1,A2,B3,C1,B4,A3,A4,B5,C2,C3,C4,C5,D1,D2,D3,A5,D4,D5 (b) Fair Q.: B1,,B2,C1,D1,A1,B3,C2,D2,A2,B4,C3,D3,A3,B5,C4,D4,,A4,C5,,D5,A5 (c) Weighted: B1,,B2,C1,C2,C3,C4,D1,D2,A1,A2,A3,B3,C5,D3,D4,A4,B4,D5,A5,B5
16. This Problem is a result of moving Problem 8.4 to here as Problem 12.16. (a) Fairness index of B1 , B2 , B3 is given by 2 ( n fi ) = n i=1 n 2 f = =
( f1 +f2 +f3 ) 2 2 +f 2 +f 2 ) 3(f1 2 3 (1+1+1)2 2 2 2 3(1 +1 +1 )
i=1 i
=1
We know: 0 is for the worst and 1 is for the best allocation of resource allocation. Thus from result of Part (a) we can say that we can have the best resource allocation when the throughput rates are equal. (c) Fairness index of B1 , through B5 is given by = =
(f1 +f2 +f3 +f4 +f5 )2 2 +f 2 +f 2 +f 2 +f 2 ) 5(f1 2 3 4 5 (1+1+1+1.2+16)2 = 5(1+1+1+1.44+256)
0.313
99 (d) The result of Part (c) shows us that the resource allocation is not the best when the throughput rates are dierent. This is because the network cannot oer the fair amount of resource to each ow.
100
Chapter 13
The complexity of crossbar increases dramatically compared to Delta network as n increases. See Figures 13.1.
d2 logd n = nd logd n
101
102
Complexity
1000
os Cr
500
sb
ar
Delta network
10
15
20
25
30
Communication Delay: The delay for D16,2 is higher than D16,4 because it has to go through more stages. However, D16,4 is nonblocking while D16,2 is blocking.
3. (a) See Figures 13.3 and 13.4. (b) Complexity: X (16,2 ) = = 128 X (16,4 ) = 2
n d n d
d2 logd n = nd logd n
They have the same complexity Communication Delay: The delay for 16,2 is higher than 16,4 because it has to go through more stages. However, 16,4 is nonblocking while 16,2 is blocking.
103
(a)
Figure 13.2: (a) D16,2 switch fabric, (b) a D16,4 switch fabric.
(b)
4. B = 1 (1 P )3 B=P
5. (a) See Figures 13.5 and 13.6. (b) B16,2 number of stages 2 log2 16 1 = 7 B16,4 number of stages 2 log4 16 1 = 3 Compare in terms of complexity: In general, the comlexity of Bn,d is : nd(r logd n 1) B16,2 : 32 7 = 224 B16,4 ) : 64 3 = 192
104
105
106
11
21
31
41
31
21
11
13
23
33
43
33
23
25
35
45
35
25
15
17
27
37
47
37
27
17
107
108
Chapter 13. Networks in Switch Fabrics Compare in terms of communication Delay : B16,2 : 7 delay per stage B16,4 : 3 delay per stage Thus, B16,2 has higher complexity and delay.
7. (a) See Figures 13.9 and 13.10. (b) The Banyan network is similar to Delta network. Thus, the routing rule of the Delta network can be applied to a Banyan network.
8. (a) See Figure 13.11. (b) B9,3 : XB = nd(2 log d n 1) = 9(3)(2 log 3 9 1) = 81 crosspoints s = 2 logd n 1 = 2 log2 9 1 = 3 stages
109
P 1 P 1 P 1
P 1 P 1 P 1 P 1
P 1
P 1
P 1
P 1 P 1 P 1 P 1 P 1
P 1
P 1 P 1 P 1 P 1 P 1 P 1
P 1
P 1
P 1 P 1
P 1
P 1
P 1 P 1 P 1 P 1 P 1
P 1
P 1
P 1
110
0100 0101
0110
0111
111
112
(a)
(b)
Figure 13.11: Comparing two switching networks: (a) B9,3 and (b) 9,3 .
113
9. (a) N/A (b) The complexity of this network is estimated to be (nc /n) = d(h + logd n) (nL /n) = 1 + h + logd n
E ,the blocking probability (c) For the extended the Delta network Dn,d,h
10. (a) Architecture 1: choose d = 2 k 2d 1 k = 3 complexity = 4(2 3) + 3(4 4) + 4(3 2) = 96 This is optimal in terms of complexity:Dopt = k=3 See Figure 13.12
n 2
=2
Figure 13.12: Clos network, d = 2 and k = 3. Architecture 2: choose d = 4 k 2d 1 k = 7 Complexity = 2(4 7) + 7(2 2) + 2(7 4) = 140
d =4
k=7
Figure 13.13: Clos network, d = 2 and k = 3. (b) For reliability and fault talerance.
11. N/A
12. The Clos network is designed to be non-blocking with extra link in the middle stages, however the Lees model referred to the possible congestion for each link, there for the number calculated values using Lees method referred to the conceptual blocking of each link between notes. Summary: With Lees method, we consider only one path. But for the analysis of blocking k 2d 1 we consider all paths.
115
(a)
(b)
Figure 13.14: Comparing two Clos networks: (a) C6,2,3 and C6,3,5 switching networks (b) Comparing Lees models.
6/2 d = 2
k 2d 1 = 2 3 1 k = 3
(b) Lees model, total blocking probability. Assuming the probability of deley for all links are p, C6,2,3 B = (1 (1 p)2 )3 = (2p p2 )3 C6,3,5 B = (1 (1 p)2 )5 = (2p p2 )5
116
(c) C6,3,5 has lower probability of blocking. But it yields a higher complexity and higher cost due to more crossbars is used. So it really depends on the need of the network to decide which is better.
14. Five-stage Clos network with n = 8, d = 2. (a) See Figure 13.15. (b) See Figure 13.16. (c) Total blocking probability with p = 0.2. The probability of blocking for the middle stage is (2p p2 )3 . Thus B = (1 (1 p) (1 p) [1 (2p p2 )3 ])3 = 0.059
15. (a) See Figure 13.17. (b) See Figure 13.18. BXY = [1(1p)2 (1(1p)2 )] = [1(10.2)(10.2)(10.059)] = 0.0629 BZW = [1 (1 0.2)(1 0.0629)(1 0.2)]3 = 0.02
16. Consider a ve-stage Clos network (similar to problem 13.14) whose stages use the following crossbar dimensions: 1st stage: d k, 2nd stage: e j , 3rd stage: (a) (b) We nd k, d, j, e in terms of n. Non blocking conditions: j 2e 1 k 2d 1
n/d Xc = dk n d + k [ej e + n/d n/d e e jn d ) + kn n j + ej n/d e ] + dk d n de
n de ,
= kn + k ( jn d +
jn2 d2 e2
117
D=2 K=3
D= 2 K=3
D= 2 K=2
118
Figure 13.16: Lees model for the ve-stage Clos network with n = 8, d = 2.
Xc = 2kn + k( 2jn d + k = 2d 1 j = 2e 1
jn2 d2 e2 )
4n2 de2
2n2 de2
4ne d
n2 (2e1) d2 e2 ] 2n 2n2 n2 d d2 e d2 e2
= 8n
eopt
4n d
2n2 d2 e2
2n2 d2 e3
=0
+2n2
We know: dopt
eopt
4n2
n
2
4n2 +4n
n
2
119
Multiplexer
17. (a) m = 512 bytes 16 = 8192 bytes 81928 B/b (b) rows = = 2048 rows 32 C = log2 2048 = 11 bits (c) RAM segment process time: 518 8 640 ns/segment
4s = 25 ns Transmission time of a segment = 0.16 8 bits = 6.15 109 = 6.15 Gb/s Bit rate = 512 640+25 6.15 Gb/s = 1.5 Msegment/sec/port (d) 5128 1 32
(2 ns + 2 ns + 1 ns) =
120
Figure 13.18: Lees blocking probability model for the Cantor network with three parallel switching planes.
Chapter 14
2. N/A
3. N/A
4. N/A
5. N/A 121
122
6. (a) E [T ] =
7. N/A
8. N/A
9. N/A
10. N/A
Chapter 15
2. In the sparse-mode algorithm, a shared-tree technique is used, and a relatively low cost path is selected. As a result, the sparse-mode approach intruduces extra delay than the dense-mode approach.
123
124
R2
R3
LAN 1
R4
LAN 4
R5
R7 R6 R8
LAN 2
Figure 15.1: MOSPF protocol. A rendesvous point (RP) router is selected as a shared root of distribution sub-tree. RP router is used to coordinate forwarding packets and prevent initial ooding of datagram. However, RP router can a hot spot for multicast trac congestion and a possible point of failure in routing. Also, as nding a low cost path is not necessary in the sparse-mode, less hardware complexity meay be needed. However, the sparse-mode approach lowers the eciancy of MOSPF as this protocol employs OSPF unicast routing that requires that each router in a network be aware of all available links. If the sparse mode is chosen, each router using a shared-tree may cause some involving routers select longers paths than they would normally select in a densemode.
125
k 3,2 3-2(5) 3-2(5) 3-2(5) 3-2(5) 3-2(5) 3-2(5) 3-2(5) 3,4 3-4(7) 3-4(7) 3-4(7) 3-4(7) 3-4(7) 3-4(7) 3-4(7) 3,5 3,6 3,7 3-7(10) 3-7(10) 3-7(10) 3-7(10) 3-7(10) 3-7(10) 3-7(10) 3,8 3-8(11) 3-8(11) 3-8(11) 3-8(11) 3-8(11) 3-8(11) 3-8(11)
(b)
3-7-6(23) 3-7-6(23) 3-7-6(23) 3-7-6(23)
4. N/A
5. (a) We choose R2 as a rendezvous point as this node is at the network edge and has the least cost to multicast group. (b) Form a least-cost tree for the multicast action. For LAN 1: R3 R2 R5 LAN 4, and R3 R2 R5 R6 LAN 3. The copying router is R5 , and The total cost = 26.
6. N/A
7. (a) In the MOSPF deployment, the multicast tree is: R3 R8 LAN2, and R8 R6 LAN3. The total cost is 2.
126
Chapter 15. Multicasting Techniques and Protocols (b) In the PIM deployment, we choose R4 as the rendezvous router. The multicast tree is: R3 R7 R4 R7 R6 LAN3, and R7 R8 LAN2. The total cost is 5.
8. See Figure 15.2. For the copy network with F = 7, d = 2, and k = 7: Divide the stages into two halves. The rst half has
7 2
Initialize: F1 = 7, f1 = 1 route the packet randomly then at each stage: The second half of the network has 4, 5, 6, and 7: Stage 4: F4 = Stage 5: F4 = Stage 6: F 4 = Stage 7: F 4 =
7 1 7 1 7 2 4 2 7 2 7 8 7 4 4 2 2 1
= 4 stages. Stages
= = = =
=1 =2 =2 =2
make one copy at this stage make two copy at this stage make two copy at this stage make two copy at this stage At the end of stage 7, we have 8 copies in total, since we only need 7, well discard one of them and send the remaining 7 copies to the interface.
127
11
21
31
41
31
21
11
13
23
33
43
33
23
25
35
45
35
25
15
17
27
37
47
37
27
17
128
Chapter 15. Multicasting Techniques and Protocols R12 R13 R10 , and R12 R17 R15 R16 LAN 1, and R12 R17 R15 R14 LAN 2. Total multicast cost is 10. (b) R12 R13 R10 R20 R28 R27 R26 R24 R25 R23 LAN 4, and R12 R13 R10 R20 R28 R27 R26 R24 R25 R21 LAN 3. Total multicast cost is 27. (c) R12 R13 R10 R30 R37 R36 R34 R33 R32 LAN 5. Total multicast cost is 31.
10. (a) See Figure 15.3. (b) The complexity of Boolean splitting multicast algorithm is less than the one for tree-based algorthm since it does not need two switch fabrics for routing and copying. But with the Boolean splitting multicast algorithm if the number of packets increases, the congestion can happen because the copying and routing are functioned at the same time. Thus, the performance of the Boolean splitting algorithm is better than the tree-base algorithm only for making low number of packets.
11. (a) See Figure 15.4. (b) See Figure 15.5. s = k = logd n = log2 8 = 3 for 1
k 2
=3
F = 5, fj = 1
129
j =4 j =3 j =2 j =1
0001 0010
0 1 11 0 0 01 0010 00 0 1 0010
1
000 1
0001
0 0 1
001 0 001 1
0010
0 0 1 1
0011
1 1
01 1 1 011 1
0011
0111 1
1 0
10 1 0 1 0 1 0
0 1010
0 1
1 1 0 0 1 1 1 1
110 0
1100
1 1
111 1
1111
Figure 15.3: Multicasting with F = 7 copies in a D16,2 copy network using Boolean splitting algorithm. j = 4 : F4 = j = 5 : F5 = j = 6 : F6 =
F3 f3 F4 f4 F5 f5
= = =
5 1 5 2 3 2
= =
5 264 3 2 =
5 22
=2
= 2 =2
12. See Figure 15.6. To construct a 4 4 Crossbar switch, we need four 4 1 multiplexers. if in0 wants to send packets to Out1 and Out2, it just needs to set the control-bits C4-C6 to accept packets from In0.
130
3-Stage Copying
0 0 0 0 1 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 0 0 1 0 1
0 0
1 1
1 0 0 1
0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0
1 0 1 1 1
1 1 1 1 1 1 1
Figure 15.4: Multicasting with F = 5 copies in a 8,2 copy network using Boolean splitting algorithm.
131
Out 1
Out 2
Out 3
Out 4
132
Chapter 16
2. N/A
3. N/A 133
134
4. N/A
5. N/A
6. N/A
Chapter 17
[2000t 2n]
104 (f 1000n)]
Gs (f ) = G(f ) S (f )
+2 n =2
2. N/A
3. Mean: E [X ] = 0 Rate Capacity: R = 4 b/sample Variance: V [X ] = 2 (a) For this source, we know Db = V [X ]22R . With R = 4, we obtain 135
136
g(t)
-2 -1 0 1 2 t -2 -1 0 1 2 t
-2
-1 0 1 2 t
G(f)
S(f)
G(f) s
-100
100
1000
1000
-1100
100 1100
Figure 17.1: Solution to exercise. Sampling process in time and frequency domains. Db =0.0078 (b) If tolerable distortion becomes Db = 0.05 by using the same formula we obtain R=
1 2
log2
1 Db
= 2.66
4. Variance = 2 = V [X ] = 10 N = 12
(b) ai = aN i = ( N 2 i) a1 = a11 = (6 1)1.34 = 6.7 a2 = a10 = (6 2)1.34 = 5.36 a3 = a9 = (6 3)1.34 = 4.02 a4 = a8 = (6 4)1.34 = 2.68 a5 = a7 = (6 5)1.34 = 1.34 a6 = 0
1 N +1i = ( N (c) x i = x 2 i + 2 )
12 = (6 1 + 1 x 1 = x 2 )1.34 = 7.37 10 = (6 2 + 1 x 2 = x 2 )1.34 = 6.03 9 = (6 3 + 1 x 3 = x 2 )1.34 = 4.69 8 = (6 4 + 1 x 4 = x 2 )1.34 = 3.35 7 = (6 5 + 1 x 5 = x 2 )1.34 = 2.01 6 = (6 6 + 1 x 6 = x 2 )1.34 = 0.67 (d)
D V [X ]
= 0.0.1885
D = 0.1885 (e) For the source, we have Db = V [X ]22R . Here, we are asked to nd Db given R. N = 12 R = log2 N 4 Db = V [X ]22R = 0.039
5. Note to instructors: this problem needs to be corrected to repeat Problem 4, this time using a 16-level optimal uniform quantizer
138
(a)
(b) ai = aN i = ( N 2 i) a1 = a15 = (8 1)1.06 = 7.42 a2 = a14 = (8 1)1.06 = 6.36 a3 = a13 = (8 1)1.06 = 5.3 a4 = a12 = (8 1)1.06 = 4.24 a5 = a11 = (8 1)1.06 = 3.18 a6 = a10 = (8 1)1.06 = 2.12 a7 = a9 = (8 2)1.06 = 1.06 a8 = 0
1 N +1i = ( N (c) x i = x 2 i + 2 )
16 = (8 1 + 1 x 1 = x 2 )1.06 = 7.95 15 = (8 2 + 1 x 2 = x 2 )1.06 = 6.69 14 = (8 3 + 1 x 3 = x 2 )1.06 = 5.83 13 = (8 4 + 1 x 4 = x 2 )1.06 = 4.77 12 = (8 5 + 1 x 5 = x 2 )1.06 = 3.71 11 = (8 6 + 1 x 6 = x 2 )1.06 = 2.65 10 = (8 6 + 1 x 7 = x 2 )1.06 = 1.59 9 = (8 6 + 1 x 8 = x 2 )1.06 = 0.53 (d)
D V [X ]
= 0.01154
D = 0.1154
6. N/A
139
7. The sampling rate is fs = 80, 000 meaning that we take 80,000 samples per second. Each sample is quantised using 16 bits so the total number of bits per second is 80,000 16. For a music piece of duration 60 min=3000 sec the resulting number of bits is 80, 000 16 3000 = 3.8 109
(x) =
x + 1 0
1 x 0 0x1 otherwise
1 fX (x) = 1 2 ( 2 x) =
+ 1) =
x+2 4
2 x 0 0x2 otherwise
in the book. Q(X ) is in fact the quantiztion function denoted by X = Q(X ). We dene the quantization error by a new random Thus X : variable Y = X X For 2 < x 1 x 1 = 1.5 fX (x1 ) =
x1 +2 4
(y1 x 1 )+2 4
(y1 1.5)+2 4
y1 +0.5 4
(y2 x 2 )+2 4
(y2 0.5)+2 4
y2 +1.5 4
(y3 x 3 )+2 4
(y3 +0.5)+2 4
y3 +1.5 4
140
Chapter 17. Compression of Digital Voice and Video For 1 < x 2 x 4 = 1.5 fX (x4 ) =
x4 +2 4
(y4 x 4 )+2 4
(y4 +1.5)+2 4
y4 +0.5 4
To nd fY (y ), we use the important property of the PDF and a function of a random variable Y = g(X ), as: fY (y ) =
fX (xi ) n dy i=1 dy dx
dx
We know that fY (y ) =
= 1. Thus: =
y1 +0.5 4
4 i=1 fX (xi )
y2 +1.5 4
y3 +1.5 4
y4 +0.5 4
=1
9. See Table 17.1 and Figure 17.2. Table 17.1: Encoded words. Input: ABC +7 = 111 +5 = 110 +3 = 101 +1 = 100 -1 = 011 -3 = 010 -5 = 001 -7 = 000 Output: XYZ 110 111 101 100 000 001 011 010
11. HX (x) =
0 1 (x
+ 1) ln(x + 1)dx
1 0 (x
+ 1) ln(x + 1)dx
141
BC 0 1 0 1 X=A BC X 1 0 1 0 0 1 0 1 A Y B Z C BC 0 1 0 1
Y= A + B =AB + AB
A 0 0 1 1 0 0 1 1
Z=B + C= BC +BC
Figure 17.2: PCM encoder design: Karnaugh maps and the logic circuit. =
1 2
12. Sample space (alphabet) = {a1 , a2 , a3 , a4 , a5 } Corresponding probabilities = {0.23, 0.30, 0.07, 0.28, 0.12}. (a) Entropy H (x) = 0.12 log 2 0.12) = 2.157 b/sample (b) {a1 , a2 , a3 , a4 , a5 }
1 1 1 1 {1 5, 5, 5, 5, 5} 5 i=1 Pi log Pi 1 1 5 log 2 5 = 2.32 b/sample 5 i=1 Pi
log Pi
= (0.23 log 2 0.23 + 0.3 log 2 0.3 + 0.07 log 2 0.07 + 0.28 log 2 0.28 +
H2 (x) = = 5
142
0 0 0 0 0 0 0 0
-2 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0
-1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
Figure 17.3: Quantization of a still image to produce Matrix Q[i][j ], and the order of matrix elements for transmission.
Entropy of a uniformly distributed source is more compared to the above entropy of a non-uniformly distributed suorce.
13. (a) PX (1) = PXY (1, 1) + PXY (1, 2) + PXY (1, 3) = 0.1 + 0.2 + 0.4 = 0.7 PX (2) = PXY (2, 1) + PXY (2, 2) + PXY (2, 3) = 0.1 + 0 + 0.2 = 0.3 PX (3) = PXY (3, 1) + PXY (3, 2) + PXY (3, 3) = 0 H (X ) = (0.7 log 0.7 + 0.3 log 0.3) = 0.881 PY (1) = PY (2) = PY (3) =
3 x=1 PXY 3 x=1 PXY 3 x=1 PXY
(x, 1) = 0.1 + 0.1 = 0.2 (x, 2) = 0.2 (x, 3) = 0.4 + 0.2 = 0.6
H (Y ) = (0.2 log 0.2 + 0.2 log 0.2 + 0.6 log 0.6) = 1.371
(b) The marginal entropy shows the average information that we recieve from one source if we know the other one. (c) H (X, Y ) = (0.1 log 0.1 + 0.2 log 0.2 + 0.2 log 0.2 + 0.1 log 0.1 +
(d) Joint entropy shows the average information thet we recieve from combination of two source.
15. (a) Sample output a4 (b) The information content of samples a1 and a5 is: I = I (P1 ) + I (P5 ) = log2 (0.1) log2 (0.2) = 5.79 b (c) Least prob. seq. = {a4 , a4 , a4 , a4 , a4 , a4 , a4 , a4 , a4 , a4 } And, its probability = (0.05)10 = 9.76 1014 No, it is not. (d) H (X ) =
7 i=0 Pi
F = 50 HZ 2 = 100 symbol/sec H (X ) = 100 symbol/sec 2.501 b/symbol = 250 b/s (e) number of typical seq. = 2nH (X ) = 225 = 3.4 107 number of non-typical seq. = number of seq.-number of typical seq. = N n 2nH (X ) = 28.7 107 3.4 107
log2 Pk
= (0.15 log 2 0.15 + 0.2 log2 0.2 + 0.3 log 2 0.3 + 0.35 log 2 0.35) Number of typical sequences = 2nH (x) = 2100(1.926) = 9.6 1057 (b) Total number of sequences = N n = 4100 = 1.607 1060 Total number of non-typical sequences = 1.607 1060 9.9 1057 1.597 1060 Number of typical sequences = 9.61057 = 0.006 1.5971060 Number of non-typical sequences ] = 2nH (x) = 2100(1.926) = 1.04 1058 (c) P [X (d) Number of bits to represent typical sequence= nH (x) = 100(1.926) = 193 b
n = (e) Most probable sequence is: {a4 , a4 , , a4 } with probability P4
17. (a) See Figure 17.4. The compressed codes are: a0 = 0, a1 = 110, a2 = 10100, a3 = 100, a4 = 1011, a5 = 111, a6 = 10101.
log2 Pk = 2.07
The average code length is: = 6 Pi i = 1(0.55) + 3(0.1) + 5(0.05) + 3(0.14) + 4(0.06) + R
i=0
145
a0 a3 a1 a5 a4 a2 a6
0.55 0.14
0.55 0.18
0.55
0 0.27 0 0.13 0.10 0 0.07 0 0.07 1 0.18 0 0.13 0.08 1 0.13 1 0.14 0 1 0.27 0.18 0.45 1
0.06 1
2.07 2.1
= 0.98
18. {3, 2, 1, 0, 2, 3, 5} P {0.05, 0.1, 0.1, 0.15, 0.05, 0.25, 0.3} (a) H (x) =
6 k =0 Pk
log2 Pk
= (0.05 log 2 0.05+0.1 log 2 0.1+0.1 log 2 0.1+0.15 log 2 0.15+0.05 log 2 0.05+ 0.25 log 2 0.25 + 0.3 log 2 0.3) = 2.528 bits/sample (b) fs = 4000 guard = 200 Entropy rate = (2fs + guard)H (x) = (4000 2 + 200)H (x) = 20, 731 bits/sec
146
Chapter 17. Compression of Digital Voice and Video (c) See Figure 17.5. The generated codes are: 5(00), 3(01), 0(100), 1(101), 2(110), 2(1110), 3(1111).
5 0.3 0.45 0.55 0 3 0.25 0.3 0 0.55 0 0.15 0.25 -1 0.1 0.15 0 -2 0.1 0 2 0.05 0.2 0 0.1 -3 0.05 1 1 0.1 1 0.25 0 0.45 1 0.25 1 1 0.45
0.2
0.05)4 = 2.55
2.55 R log2 N = 3 H (X ) .528 = 22 .55 = R
19. Source sequence is 0, 1, 01, 00, 001, 000, 11, 111, 0010, 10, 101, 1111, 010, 0101, 0101 Find the smallest phrases that have not appeared. Phrases are encoded Table 17.2.
147
Table 17.2: Lempel-Ziv coding process Parser Output 0 1 01 00 001 000 11 001 010 10 101 111 010 101 1010 Location 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 0110 1011 1100 1110 1111 Encoded Output 00000 00001 00011 00010 01001 01000 00101 01111 01010 00100 10101 10001 00110 11011 11100
148
Table 17.3: Lempel-Ziv coding process Parser Output 1 11 110 0 01 010 10 101 1101 0111 100 0101 01010 00 1111 010100 001 Location 00001 00010 00011 00100 00101 00110 00111 01000 01001 01010 01011 01100 01101 01110 01111 10000 10001 Encoded Output 000001 000011 000100 000000 001001 001010 000010 001111 000111 000101 001110 001101 011000 001000 010101 011010 011101
Chapter 18
2. (a) Assume packets (segments) of 1,500 byte long including IP, UDP, and RTP headers. The RTP header consists of: 12 B Common RTP header: 1 B (V+P+X+CSC), 1 B (M+Payload Type), 2 B (Seq. No.), 4 B (Time Stamp), and 4 B (Sync Source ID). 8 B Contributing Source RTP header: 4 B (Contributing Source1 ID), and 4 B (Contributing Source2 ID). Thus, the total packet payload size = 1,500 B - [20B (IP header) 149
150
Chapter 18. VoIP and Multimedia Networking + 12B (UDP header) + 20B (total RTP headers)]= 1,448 B (b) Total combined two source data rates = 2 31 Kb/s (1/8) B/b= 7.75 KB/s Time required for one packet =
1,448 B 7.75 KB/s
= 186.8 ms
560 186.8 ms
= 1,605
3. N/A
4. 1,2801,024 pixel blocks 1 packet = 0.1 row 1 chunk = 1 pixel cblock (a) Sample sapce 77 samples each sample (pixel) = 7 b A chunk = 1 pixel block = (88 pixels) 7 b = 448 b A chunk + header = 448 b + (4 B) 8 (b/B) = 480 b (b) 1 packet = 0.1 row = (0.1)(1,280) = 128 pixel blocks = 128 chunks = 128 chunks 480 b/chunk = 61,440 b A packet + header = 61,440 b + 12 8 (b/B) = 61,536 b (c) Video clip = 4 minutes 1 sec = 30 images Total number of images/min = (4 min) 60 (sec/min) 30 = 7,200 images Total number of packets/image = (10 packets/row) 1,024 (rows) = 10,240 packets/image Total number of packets/4 min = (7,200) (10,240) = 73,728,000
151 Total number of bits/4 min = (73,728,000) (61,440 b/packets) = 4.53 Tb Bandwidth =
4.53Tb 4 min
= 18.8 Gb/s
5. Data of Chunk: 1 pixel block 10 phrases 5 bits/phrase = 50 b Header of Chunk: = 4 B Chunk = 50 + 4 8 = 82 bits (a) Row data = 1280 pixel block 82 b/pixel block SCTP header = 12 bytes Packet =
128082 8
(b) One frame = 12.8 kbyte/row 1024 rows = 12.8 Mbyte Required B.W. = 12.8 Mbyte/frame 30 frames/s 8 b/B = 3 Gb/s (c) Total data = 3 Gb/s 2 60 60 = 2, 700 GB/h
6. (a) FY (t) (y ) = P [Y (t) y ] = P [X (t) + 2t y ] = P [X (t) 2t] = FX (t) (y 2t) fY (t) (y ) = FX (y 2t) = = FX (t),X (t+1) (y1 2t, y2 2(t + 1)) fY (t)Y (t+s) (y1 , y2 ) = fX (t),X (t+1) (y1 2t, y2 2(t + 1)) = fX (t) (y1 2t)fX (t) (y2 y1 2) =
2t)) /2t 3(y1 2t 2 2 1 e(y 2t) /2t 2t
y 2) e (y 2 1 2
2 /2
152
Q,R,S 4 samples P,T,U 1 sample (a) We use variable size chunk. Assume each sample is encoded by 8 bits. A packet consists of: 12B SCTP header + 6 chunks each with 16B chunk header. Total bits of the 3 chunks made by P,T,U pulses = 3(16B (chunk header) 8 b/B + 1 sample/pulse 8 b/sample) = 408 b Total bits of the 3 chunks made by Q,R,S pulses = 3(16B (chunk header) 8 b/B+ 4 samples/pulse 8 b/sample) = 480 b Total SCTP packet size = (408b + 480b) + [20B (IP header) + 12B (SCTP header)] 8 b/B = 1144 b/(SCTP packet) 701144 b/packet = 1335 b/s Bandwidth = 70 cycles/min = 60s (b) H = Max. Number of Humans Heartbeat Cycles G = Max. number of Patients L = Max. Link Bandwidth We can choose the above parameters as long as we must can satisfy: L=
H G1144 60s
(c) The second option reduces the transmission overhead (packet overhead) but requires a larger bandwidth.
8. N/A
153
9. N/A
10. N/A
154
Chapter 19
2. N/A
3. N/A
4. N/A
5. N/A
155
156
Chapter 20
2. N/A
3. N/A
4. N/A
157