H20 CSC458 Sample Final Solutions
H20 CSC458 Sample Final Solutions
UNIVERSITY*OF*TORONTO!
Faculty!of!Arts!and!Science!
!
Sample!Final!Exam!
!
CSC458!–!Computer!Networks!
Professor!Yashar!Ganjali!
!
Duration!@!3!hours!
!
Examination!Aids:!!
NonCProgrammable!Calculators,!1!DoubleCSided!Page!of!Notes!
!
!
(i)! This! exam! is! closed! book! and! closed! notes.! However,! you! may! refer! to! a! sheet! of! 8.5”x11”!
paper!(doubleCsided)!of!your!own!design.!You!can!also!use!a!nonCprogrammable!calculator.!
!
(ii)!Write!your!answers!on!the!exam!booklet!only.!You!will!not!receive!any!points!for!any!answer!
you!write!on!the!questions!paper.!!
!
(iii)!Make!sure!to!write!your!name!and!student!ID!clearly!on!the!exam!booklet.!!
!
(iv)!Show!your!reasoning!clearly.!If!your!reasoning!is!correct,!but!your!final!answer!is!wrong,!you!
will!receive!most!of!the!credit.!If!you!just!show!the!answer!without!reasoning,!and!your!answer!
is!wrong,!you!may!receive!no!points!at!all.!
!
!
Part!I!@!Multiple!Choice!Questions![4!points]!
Instructions:!In!the!following!questions,!check!the!assertion!that!appears!to!be!correct.!There!is!
exactly! one! correct! assertion! per! question.! Checking! the! correct! assertion! will! earn! you! one!
point.!If!you!check!an!incorrect!assertion,!or!if!you!check!more!than!one!assertion!per!question,!
you!will!not!earn!any!points!for!that!question.!Don’t&forget&to&enter&your&answer&on&the&exam&
booklet&and&NOT&on&this&questions&paper.!
!
1.!TCP.!Which!one!of!the!following!is!a!true!statement!about!TCP?!
(a) TCP!is!a!routing!protocol!used!throughout!the!Internet.!
(b) TCP!establishes!a!connection!between!two!endChosts!using!a!2Cway!handshake!scheme.!
(c) TCP!learns!of!congestion!via!packet!loss!or!variations!in!delay.!
(d) If!the!SYN!packet!sent!by!a!TCP!source!is!lost,!the!connection!is!closed.!
!
CSC!458/2209!–!Computer!Networks! ! Page!1!of!4!
! !
2.!Coding.!Suppose!a!10Mb/s!adapter!uses!Manchester!encoding!to!send!an!infinite!stream!of!
1’s!into!a!link.!How!many!transitions!per!second!will!the!signal!emerging!from!this!adapter!have?!!
(a) 5!million!transitions!per!second.!
(b) 10!million!transitions!per!second.!
(c) 20!million!transitions!per!second.!
(d) None!of!the!above.!
!
3.!Random!Early!Detection!(RED).!Which!of!the!following!is!true?!
(a) !RED! is! tolerant! of! bursts! because! when! the! average! queue! occupancy! is! close! to! the!
maximum!threshold,!there!is!still!room!in!the!queue!to!accept!new!bursts!of!packets.!
(b) The! probability! of! RED! dropping! a! packet! belonging! to! a! flow! is! proportional! to! the!
number!of!the!flow’s!packets!queued!at!the!router.!
(c) RED!drops!packets!with!probability!1!when!the!router’s!queue!length!is!greater!than!the!
maximum!threshold!value.!
(d) If!two!flows,!one!TCP!and!one!UDP,!share!a!“RED”!router,!the!RED!algorithm!will!ensure!
that!both!flows!receive!an!identical!share!of!the!outgoing!link.!!
!
4.!TCP.!Which!of!the!following!statements!is!true!about!TCP?!
(a) TCP!segments!can!only!be!lost!when!router!queues!overflow.!
(b) There! is! no! performance! benefit! to! having! a! window! size! larger! than! the! receiver!
window!size.!
(c) The!received!sees!duplicate!ACKs!(with!the!same!sequence!number)!only!when!a!packet!
is!lost.!!
(d) A!receiver!reduces!the!advertised!window!size!in!response!to!congestion.!
!
!
!
!
Part!II!@!Definitions![3!points]!
Describe!each!of!the!following!terms/concepts!clearly!and!concisely!(in!at!most!4C5!sentences).!
For! each! of! these! terms,! explain! the! context! they! are! defined! at! –! which! protocol(s)! they! are!
related!to,!when/where!they!are!used,!etc.!–!and!give!examples!if!possible.!Remember!to!use!
the!exam!booklet!and!not!this!paper!for!your!answers.!
!
1.!Fast!Retransmission!
!
2.!Nagle’s!Algorithms!
!
3.!Maximum!Segment!Size!(MSS)!!
!
4.!Stub!Autonomous!System!(AS)!
!
5.!Interior!Gateway!Protocol!(IGP)!!
!
6.!Distance!Vector!
!
!
!
CSC!458/2209!–!Computer!Networks! ! Page!2!of!4!
! !
!
Part!III!@!Longer!Questions![18!points]!
!
1.! Routing! Protocol! [2! points].! Consider! the! network! topology! shown! below.! The! topology!
consists! of! multiple! routers! interconnected! by! fullCduplex! links.! Each! link! has! a! static! cost!
associated!with!it,!which!represents!the!cost!of!sending!data!over!that!link.!For!example,!the!link!
from! B! to! F! has! a! cost! of! 6.! All! of! the! links! are! symmetric! (i.e.! the! cost! is! the! same! in! both!
directions,!such!as!between!B!and!F).!
!
6
B F
1 1 4
3
A 1 E 1 G
3 1 1
4
C D
!
!
!
(a)!If!we!use!BellmanCFord’s!distributed!algorithm!to!find!the!shortest!path!between!every!pair!
of!nodes,!how!many!steps!will!it!take!for!the!algorithm!to!converge!in!this!case?!Explain.!
!
(b)!In!general!if!we!have!a!network!with!N!nodes,!what!is!the!maximum!number!of!steps!for!the!
BellmanCFord!algorithm!to!converge?!Explain.!
!
2.! Spanning! Trees! [4! points].! Ethernet! switches! compute! a! spanning! tree! using! the! spanningC
tree!protocol.!!!
!
2a)!Explain!briefly!how!the!spanning!tree!protocol!works.!!(2!points)!
!
!
2b)!Do!the!switches!learn!the!network!topology!(connecting!the!switches),!like!routers!do!in!a!
linkCstate!protocol?!Does!each!pair!of!switches!communicate!over!a!shortest!path,!like!routers!
do!in!linkCstate!protocols?!!(2!point)!
!
!
!
!
!
3.!TCP![6!points].!Consider!a!TCP!flow!over!a!1CGb/s!link!with!a!latency!of!1!second!that!transfers!
a!10!MB!file.!The!receiver!advertises!a!window!size!of!1!MB,!and!the!sender!has!no!limitation!on!
its!congestion!window!(i.e.,!it!can!go!beyond!64!KB).!
!
CSC!458/2209!–!Computer!Networks! ! Page!3!of!4!
! !
(a)!How!many!RTTs!does!it!take!until!slowCstart!opens!the!send!window!to!1!MB?!
!
(b)!How!many!RTTs!does!it!take!to!send!the!file?!
!
(c)! If! the! time! to! send! the! file! is! given! by! the! number! of! required! RTTs! multiplied! by! the! link!
latency,!what!is!the!effective!throughput!of!the!transfer?!
!
(d)!What!percentage!of!the!link!bandwidth!is!utilized?!
!
!
4.! Power! [6! points].! In! class! and! the! textbook,! we! used! the! somewhat! arbitrary! measure! of!
“power”!to!characterize!network!performance.!The!usual!definition!of!power,!P,!is!given!by:!
!
load
P= !
average&delay
(a)!Explain!why!this!definition!of!power!is!commonly!used,!and!in!what!sense!it!is!“arbitrary”.!
!
(b)! A! commonly! used! approximation! to! the! relationship! between! normalized! load! (which! can!
1
vary! between! 0! and! 1! only)! and! average! delay! is d = ;! where! λ! is! the! normalized! load!
1−λ
offered!to!the!network!and!d!is!the!average!delay!of!packets!passing!through!the!network.!Find!
and!sketch!the!value!of!power,!P,!as!a!function!of!the!offered!load!for!this!network.!Be!sure!to!
show!the!minimum!and!maximum!values!of!power!and!load,!as!well!as!the!value!of!offered!load!
that!maximizes!the!power.!
!
(c)!Now!suppose!we!modify!the!definition!of!power!to!give!more!emphasis!to!throughput!than!
λ2
delay,! i.e.! let! us! have P = .! Sketch! the! new! power! function! against! the! offered! load,! being!
d
careful!to!show!the!maximum!and!minimum!values!of!both!load!and!power,!as!well!as!the!value!
of!load!that!leads!to!maximum!power.!Comment!on!why!the!value!of!load!that!maximizes!the!
power!is!larger!than!in!the!previous!part!of!the!question.!
!
!
!
Total!Marks!=!25!points!
!
CSC!458/2209!–!Computer!Networks! ! Page!4!of!4!