SlideShare a Scribd company logo
1 of 47
Week 2 
Reliable transmission 
Building a network
Agenda 
ā€¢ Reliable transmission 
ā€¢ Checksums and hash functions 
ā€¢ Framing 
ā€¢ Go-back-n 
ā€¢ Selective repeat 
ā€¢ Building a network
Agenda 
ā€¢ Reliable transmission 
ā€¢ Checksums and hash functions 
ā€¢ Framing 
ā€¢ Go-back-n 
ā€¢ Selective repeat 
ā€¢ Building a network
Checksums 
ā€¢ How to verify that a transmission has not 
been affected by random errors 
ā€¢ Checksum 
ā€¢ CRC 
ā€¢ Should the Checksum/CRC also cover the 
header ?
Hash functions 
ā€¢ What is the role of hash functions like MD5 
or SHA-1 ? 
ā€¢ Do they play the same role as CRCs and 
checksums ?
Agenda 
ā€¢ Reliable transmission 
ā€¢ Checksums and hash functions 
ā€¢ Framing 
ā€¢ Go-back-n 
ā€¢ Selective repeat 
ā€¢ Building a network
Bit stuffing 
ā€¢ How to combine bit stuffing and checksums 
? 
ā€¢ Stuffing first and then compute checksum 
or 
ā€¢ Compute checksum and then stuffing
Character stuffing 
ā€¢ What are the advantages/drawbacks of 
character stuffing compared to bit stuffing ?
Agenda 
ā€¢ Reliable transmission 
ā€¢ Checksums and hash functions 
ā€¢ Framing 
ā€¢ Go-back-n 
ā€¢ Selective repeat 
ā€¢ Building a network
Go-back-n 
ā€¢ What are the key principles behind go-back- 
n ? 
ā€¢ How does it deal with losses/errors ? 
ā€¢ How does it deal with losses of 
acknowledgements ? 
ā€¢ How to set the retransmission timer ?
Go-back-n : example 
A B 
0 1 2 3 
0 1 2 3 
0 1 2 3 
0 1 2 3 
0 1 2 3 
Data.req(a) 
Data.req(e) 
Data.ind(a) 
D(0,a) 
Data.req(c) 
D(2,c) 
C(OK,0) 
C(OK,0) 
Sending window 
Data.req(b) 
D(1,b) 
Lost 
Not expected seq num, 
discarded 
Retransmission 
timer expires 
0 1 2 3 
0 1 2 3 
Sending window is full 
D(1,b) 
Data.ind(b) 
Data.req(d) 
D(3,d) 
Data.ind(d) 
D(2,c) 
Data.ind(c)
Maximum window 
ā€¢ What is the maximum window size that 
can be used with go-back-n ? 
ā€¢ Sequence numbers are encoded in N bits
Agenda 
ā€¢ Reliable transmission 
ā€¢ Checksums and hash functions 
ā€¢ Framing 
ā€¢ Go-back-n 
ā€¢ Selective repeat 
ā€¢ Building a network
Selective repeat 
ā€¢ What are the key principles behind 
selective repeat ? 
ā€¢ How does it deal with losses/errors ? 
ā€¢ How does it deal with losses of 
acknowledgements ? 
ā€¢ How to inform about losses ? 
ā€¢ How to set the retransmission timer ?
Selective repeat 
A B 
0 1 2 3 
0 1 2 3 
0 1 2 3 
0 1 2 3 
Data.ind(b) 
Data.req(a) 
Data.ind(a) 
D(0,a) 
0 1 2 3 
Data.req(c) 
D(2,c) 
C(OK,0) 
C(OK,0) 
Sending window 
Data.req(b) 
D(1,b) 
Lost segment 
Segment stored 
D(1,b) 
Retransmission 
0 1 2 3 timer expires 
0 1 2 3 
0 1 2 3 
0 1 2 3 
0 1 2 3 
Data.ind(c) 
Data.req(d) 
D(3,d) 
Data.ind(d) 
0 1 2 3 
0 1 2 3 
C(OK,2) 
C(OK,3) 
Rec. window 
0 1 2 3 
0 1 2 3
Maximum window 
ā€¢ What is the maximum window size that 
can be used with selective repeat ? 
ā€¢ Sequence numbers are encoded in N bits
Performance with 
losses ā€¢ What is the minimum window size required 
to achieve high throughput 
ā€¢ When there are no losses ? 
ā€¢ When a few frames are errored/lost ? 
ā€¢ Go-back-n 
ā€¢ Selective repeat
Take back lessons 
ā€¢ Usage of Checksums/CRCs 
ā€¢ Cumulative acknowledgements 
ā€¢ Maximum window size with gbn/sr 
ā€¢ Bandwidth x delay product
ā€¢ Reliable tranAsmigsseionnda 
ā€¢ Building a network 
ā€¢ Datagram organisation 
ā€¢ Virtual circuit organisation 
ā€¢ Distance vector routing 
ā€¢ Link state routing
Datagram organisation 
ā€¢ Principles 
ā€¢ Nodes 
ā€¢ Hosts 
ā€¢ Routers 
ā€¢ Packet
Forwarding table 
ā€¢ Contents of the forwarding table 
ā€¢ Destination, nexthop/outgoing if 
ā€¢ How to compute the forwarding table ?
Port-station table 
ā€¢ When a node boots, its forwarding table is 
empty, is it possible to learn automatically 
the forwarding table from the packets ? 
ā€¢ Tree-shaped networks only !
A network 
B 
A R1 
R2 
R3
Source routing 
ā€¢ Basic idea 
ā€¢ Each node has a unique address 
ā€¢ Each node knows its direct neighbours 
ā€¢ How ? 
ā€¢ Each packet contains the list of the 
addresses of intermediate nodes
A network 
B 
A R1 
R2 
R3 
How can A discover the paths towards B ?
ā€¢ Reliable tranAsmigsseionnda 
ā€¢ Building a network 
ā€¢ Datagram organisation 
ā€¢ Virtual circuit organisation 
ā€¢ Distance vector routing 
ā€¢ Link state routing
Virtual circuit 
ā€¢ Basic idea 
ā€¢ Create circuits through the network to 
transfer data divided in packets 
ā€¢ Packet contains one label 
ā€¢ Simpler forwarding table 
ā€¢ incoming label, nexthop, outgoing label
Virtual circuit 
B 
A R1 
R2 
R3 
Create one virtual circuit from A to B 
C
ā€¢ Reliable tranAsmigsseionnda 
ā€¢ Building a network 
ā€¢ Datagram organisation 
ā€¢ Virtual circuit organisation 
ā€¢ Distance vector routing 
ā€¢ Link state routing
Computing forwarding 
tables 
ā€¢ How to compute the forwarding tables for 
all nodes in a network ? 
C 
A B C 
E 
D E
Computing forwarding 
tables 
ā€¢ 
ā€¢ A B C 
C 
E 
D E 
Routing table 
A : Local 
D : South 
B : East 
C : East [via B] 
E: East [via B] 
Routing table 
A : West 
B : Local 
C : East 
D : South [via E] 
E : South 
Routing table 
A : West [via B] 
B : West 
C : Local 
D : West [via B] 
E : South West 
Routing table 
A : North 
B : North [via A] 
C : East [via E] 
D : Local 
E : East 
Routing table 
A : North [via B] 
B : North 
C : North-East 
D : West 
E : Local 
Cost=1 
Cost=1 Cost=1 
Cost=1 
Cost=1 
Cost=1
Distance vector routing 
ā€¢ Objectives of the routing protocol 
ā€¢ Compute forwarding tables so that all 
nodes can reach all nodes in the network 
ā€¢ Principle 
ā€¢ Each node regularly sends a summary of 
its forwarding table to its neighbours
Distance vector 
Routing table 
B : 0 [Local] Routing table 
C 
D E 
Routing table 
A : 0 [ Local ] 
A B C 
D E 
C : 0 [Local] 
Routing table 
E : 0 [Local] 
Routing table 
D : 0 [Local]
Distance vector 
example (2) 
C 
Routing table 
B : 0 [Local] 
A : 1 [West] 
D E 
Routing table 
A : 0 [ Local ] 
A B C 
D E 
Routing table 
C : 0 [Local] 
Routing table 
E : 0 [Local] 
Routing table 
D : 0 [Local] 
A : 1 [North] 
D=0 ; A=1 
D=0 ; A=1
Distance vector 
example (3) 
C 
Routing table 
B : 0 [Local] 
A : 1 [West] 
D E 
Routing table 
A : 0 [ Local ] 
D : 1 [South] 
A B C 
D E 
Routing table 
C : 0 [Local] 
Routing table 
E : 0 [Local] 
D : 1 [West] 
A : 2 [West] 
Routing table 
D : 0 [Local] 
A : 1 [North] 
C=0 
C=0
Distance vector 
example (4) 
C 
Routing table 
B : 0 [Local] 
A : 1 [West] 
C : 1 [East] 
E=0;D=1;A=2;C=1 
D E 
Routing table 
A : 0 [ Local ] 
D : 1 [South] 
A B C 
D E 
Routing table 
C : 0 [Local] 
Routing table 
E : 0 [Local] 
D : 1 [West] 
A : 2 [West] 
C : 1 [North-East] 
Routing table 
D : 0 [Local] 
A : 1 [North] 
E=0;D=1;A=2;C=1 
E=0;D=1;A=2;C=1
Distance vector 
example (5) 
C 
Routing table 
B : 0 [Local] 
A : 1 [West] 
C : 1 [East] 
E : 1 [South] 
D : 2 [South] 
D E 
Routing table 
A : 0 [ Local ] 
D : 1 [South] 
A B C 
D E 
Routing table 
C : 0 [Local] 
E : 1 [South-West] 
D : 2 [South-West] 
A : 3 [South-West] 
Routing table 
E : 0 [Local] 
D : 1 [West] 
A : 2 [West] 
C : 1 [North-East] 
Routing table 
D : 0 [Local] 
A : 1 [North] 
E : 1 [East] 
C : 2 [East] 
B=0;A=1;C=1;D=2;E=1 
B=0;A=1;C=1;D=2;E=1
Distance vector 
example (6) 
C 
Routing table 
B : 0 [Local] 
A : 1 [West] 
C : 1 [East] 
E : 1 [South] 
D : 2 [South] 
D E 
Routing table 
A : 0 [ Local ] 
D : 1 [South] 
B : 1 [East] 
C : 2 [East] 
E : 2 [East] 
A B C 
D E 
Routing table 
C : 0 [Local] 
E : 1 [South-West] 
D : 2 [South-West] 
A : 2 [West] 
B : 1 [West] 
Routing table 
E : 0 [Local] 
D : 1 [West] 
A : 2 [West] 
C : 1 [North-East] 
B : 1 [North] 
Routing table 
D : 0 [Local] 
A : 1 [North] 
E : 1 [East] 
C : 2 [East] 
A=0;B=1;C=2;D=1;E=2
Distance vector 
example (7) 
C 
Routing table 
B : 0 [Local] 
A : 1 [West] 
C : 1 [East] 
E : 1 [South] 
D : 2 [South] 
D E 
Routing table 
A : 0 [ Local ] 
D : 1 [South] 
B : 1 [East] 
C : 2 [East] 
E : 2 [East] 
A B C 
D E 
Routing table 
C : 0 [Local] 
E : 1 [South-West] 
D : 2 [South-West] 
A : 2 [West] 
B : 1 [West] 
Routing table 
E : 0 [Local] 
D : 1 [West] 
A : 2 [West] 
C : 1 [North-East] 
B : 1 [North] 
Routing table 
D : 0 [Local] 
A : 1 [North] 
E : 1 [East] 
C : 2 [East] 
B : 2 [North]
ā€¢ Reliable tranAsmigsseionnda 
ā€¢ Building a network 
ā€¢ Datagram organisation 
ā€¢ Virtual circuit organisation 
ā€¢ Distance vector routing 
ā€¢ Link state routing
Link state routing 
ā€¢ Objectives of the routing protocol 
ā€¢ Compute all forwarding tables 
ā€¢ Principle 
ā€¢ Each node detects its neighbours 
ā€¢ Each node regularly sends list of its 
neighbours to all nodes
Discovering neighbours 
ā€¢ Manually 
ā€¢ Automatically 
E 
A:HELLO 
A B 
E 
B:HELLO 
E:HELLO
Link state packets 
C 
Links 
A-B : 1 
B-E : 1 
B-C : 1 
A B C 
LSP : E [D:1];[B:1];[C:1] LSP : E [D:1];[B:1];[C:1] 
D E 
Links 
A-B : 1 
A-D : 1 
D E 
Links 
B-C : 1 
C-E : 1 
Links 
E-D : 1 
E-B : 1 
E-C : 1 
Links 
A-D : 1 
D-E : 1 
LSP : E [D:1];[B:1];[C:1] 
ā€¢ How to reliably send LSPs to all nodes ?
Flooding 
ā€¢ Naive approach 
ā€¢ Send received LSP to all neighbours 
C 
D E 
Links 
A-B : 1 
A-D : 1 
LSP : E [D:1];[B:1];[C:1] 
A B C 
D E 
Links 
B-C : 1 
C-E : 1 
B-E : 1 
D-E : 1 
Links 
E-D : 1 
E-B : 1 
E-C : 1 
Links 
A-B : 1 
B-E : 1 
B-C : 1 
E-D : 1 
E-C : 1 
Links 
A-D : 1 
D-E : 1 
B-E : 1 
E-C : 1 
LSP : E [D:1];[B:1];[C:1] 
LSP : E [D:1];[B:1];[C:1]
Flooding 
LSPs LSPs 
C 
LSP : E-0 [D:1];[B:1];[C:1] LSP : E-0 [D:1];[B:1];[C:1] 
D E 
Links 
A-B : 1 
A-D : 1 
A B C 
D E 
Links 
B-C : 1 
C-E : 1 
Links 
E-D : 1 
E-B : 1 
E-C : 1 
LSPs 
Links 
A-D : 1 
D-E : 1 
Links 
A-B : 1 
B-E : 1 
B-C : 1 
LSP : E-0 [D:1];[B:1];[C:1] 
LSPs 
LSPs 
E-0 [D:1];[B:1];[C:1]
Flooding 
E-0 [D:1];[B:1];[C:1] 
C 
D E 
Links 
A-B : 1 
A-D : 1 
LSPs 
LSP : E-0 [D:1];[B:1];[C:1] 
A B C 
D E 
Links 
B-C : 1 
C-E : 1 
B-E : 1 
D-E : 1 
Links 
E-D : 1 
E-B : 1 
E-C : 1 
Links 
A-B : 1 
B-E : 1 
B-C : 1 
E-D : 1 
E-C : 1 
LSPs 
Links 
A-D : 1 
D-E : 1 
B-E : 1 
E-C : 1 
LSP : E-0 [D:1];[B:1];[C:1] 
LSPs 
E-0 [D:1];[B:1];[C:1] 
LSPs 
E-0 [D:1];[B:1];[C:1] 
LSPs 
E-0 [D:1];[B:1];[C:1] 
LSP : E-0 [D:1];[B:1];[C:1]
After flooding 
ā€¢ Each node knows full network topology 
C 
Links 
A-B, B-A : 1 
B-E, E-B : 1 
B-C, C-B : 1 
E-D, D-E : 1 
E-C, C-E : 1 
A-D, D-A : 1 
LSPs 
E-0 [D:1];[B:1];[C:1] 
A-0 [D:1];[B:1] 
B-0 [A:1] [C:1] [E:1] 
C-0 [B:1] [E:1] 
D-0 [A:1] [E:1] 
Links 
A-B, B-A : 1 
B-E, E-B : 1 
B-C, C-B : 1 
E-D, D-E : 1 
E-C, C-E : 1 
A-D, D-A : 1 
A B C 
D E 
D E 
Links 
A-B, B-A : 1 
B-E, E-B : 1 
B-C, C-B : 1 
E-D, D-E : 1 
E-C, C-E : 1 
A-D, D-A : 1 
LSPs 
E-0 [D:1];[B:1];[C:1] 
A-0 [D:1];[B:1] 
B-0 [A:1] [C:1] [E:1] 
C-0 [B:1] [E:1] 
D-0 [A:1] [E:1] 
LSPs 
E-0 [D:1];[B:1];[C:1] 
A-0 [D:1];[B:1] 
B-0 [A:1] [C:1] [E:1] 
C-0 [B:1] [E:1] 
D-0 [A:1] [E:1] 
Links 
A-B, B-A : 1 
B-E, E-B : 1 
B-C, C-B : 1 
E-D, D-E : 1 
E-C, C-E : 1 
A-D, D-A : 1 
Links 
A-B, B-A : 1 
B-E, E-B : 1 
B-C, C-B : 1 
E-D, D-E : 1 
E-C, C-E : 1 
A-D, D-A : 1 
LSPs 
E-0 [D:1];[B:1];[C:1] 
A-0 [D:1];[B:1] 
B-0 [A:1] [C:1] [E:1] 
C-0 [B:1] [E:1] 
D-0 [A:1] [E:1] 
LSPs 
E-0 [D:1];[B:1];[C:1] 
A-0 [D:1];[B:1] 
B-0 [A:1] [C:1] [E:1] 
C-0 [B:1] [E:1] 
D-0 [A:1] [E:1]

More Related Content

What's hot

Ad hoc on demand distance
Ad hoc on demand distanceAd hoc on demand distance
Ad hoc on demand distanceJimit Rupani
Ā 
udp , tcp ,sctp
udp , tcp ,sctpudp , tcp ,sctp
udp , tcp ,sctpAKSHIT KOHLI
Ā 
Chapter 3 - Computer Networking a top-down Approach 7th
Chapter 3 - Computer Networking a top-down Approach 7thChapter 3 - Computer Networking a top-down Approach 7th
Chapter 3 - Computer Networking a top-down Approach 7thAndy Juan Sarango Veliz
Ā 
Chapter 5 : Link Layer
Chapter 5 : Link LayerChapter 5 : Link Layer
Chapter 5 : Link LayerAmin Omi
Ā 
Computer networks unit iv
Computer networks    unit ivComputer networks    unit iv
Computer networks unit ivJAIGANESH SEKAR
Ā 
Chapter 4 - Computer Networking a top-down Approach 7th
Chapter 4 - Computer Networking a top-down Approach 7thChapter 4 - Computer Networking a top-down Approach 7th
Chapter 4 - Computer Networking a top-down Approach 7thAndy Juan Sarango Veliz
Ā 
Routing algorithm network layer
Routing algorithm  network layerRouting algorithm  network layer
Routing algorithm network layersambhenilesh
Ā 
Network layer ip address assignment and routing
Network layer ip address assignment and routingNetwork layer ip address assignment and routing
Network layer ip address assignment and routingHamzahMohammed4
Ā 
A day in the life of a Web Request
A day in the life of a Web RequestA day in the life of a Web Request
A day in the life of a Web RequestMD.ANISUR RAHMAN
Ā 

What's hot (20)

Ad hoc on demand distance
Ad hoc on demand distanceAd hoc on demand distance
Ad hoc on demand distance
Ā 
Routing
RoutingRouting
Routing
Ā 
DSDV VS AODV
DSDV VS AODV DSDV VS AODV
DSDV VS AODV
Ā 
udp , tcp ,sctp
udp , tcp ,sctpudp , tcp ,sctp
udp , tcp ,sctp
Ā 
Can ppt
Can pptCan ppt
Can ppt
Ā 
Routing
RoutingRouting
Routing
Ā 
Chapter 3 - Computer Networking a top-down Approach 7th
Chapter 3 - Computer Networking a top-down Approach 7thChapter 3 - Computer Networking a top-down Approach 7th
Chapter 3 - Computer Networking a top-down Approach 7th
Ā 
Tcp
TcpTcp
Tcp
Ā 
Chapter 5 : Link Layer
Chapter 5 : Link LayerChapter 5 : Link Layer
Chapter 5 : Link Layer
Ā 
Computer networks unit iv
Computer networks    unit ivComputer networks    unit iv
Computer networks unit iv
Ā 
Chapter 4 - Computer Networking a top-down Approach 7th
Chapter 4 - Computer Networking a top-down Approach 7thChapter 4 - Computer Networking a top-down Approach 7th
Chapter 4 - Computer Networking a top-down Approach 7th
Ā 
Routing algorithm network layer
Routing algorithm  network layerRouting algorithm  network layer
Routing algorithm network layer
Ā 
Week16 lec1
Week16 lec1Week16 lec1
Week16 lec1
Ā 
Network layer ip address assignment and routing
Network layer ip address assignment and routingNetwork layer ip address assignment and routing
Network layer ip address assignment and routing
Ā 
Week14 lec2
Week14 lec2Week14 lec2
Week14 lec2
Ā 
A day in the life of a Web Request
A day in the life of a Web RequestA day in the life of a Web Request
A day in the life of a Web Request
Ā 
Week13 lec2
Week13 lec2Week13 lec2
Week13 lec2
Ā 
Week15 lec1
Week15 lec1Week15 lec1
Week15 lec1
Ā 
Tcp udp
Tcp udpTcp udp
Tcp udp
Ā 
I pv6
I pv6I pv6
I pv6
Ā 

Viewers also liked

CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesCS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesWei Tsang Ooi
Ā 
Socketē½‘ē»œē¼–ē؋
Socketē½‘ē»œē¼–ē؋Socketē½‘ē»œē¼–ē؋
Socketē½‘ē»œē¼–ē؋qhm123
Ā 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic PerformanceJavier Arauz
Ā 
Lecture 5
Lecture 5Lecture 5
Lecture 5ntpc08
Ā 
TCP with delayed ack for wireless networks
TCP with delayed ack for wireless networksTCP with delayed ack for wireless networks
TCP with delayed ack for wireless networksambitlicksolutions
Ā 
TCP Model
TCP ModelTCP Model
TCP Modelmanojkum22
Ā 
Flow & Error Control
Flow & Error ControlFlow & Error Control
Flow & Error Controltameemyousaf
Ā 

Viewers also liked (14)

4 transport-sharing
4 transport-sharing4 transport-sharing
4 transport-sharing
Ā 
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesCS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
Ā 
7 tcp-congestion
7 tcp-congestion7 tcp-congestion
7 tcp-congestion
Ā 
Socketē½‘ē»œē¼–ē؋
Socketē½‘ē»œē¼–ē؋Socketē½‘ē»œē¼–ē؋
Socketē½‘ē»œē¼–ē؋
Ā 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic Performance
Ā 
5 sharing-app
5 sharing-app5 sharing-app
5 sharing-app
Ā 
Lecture 5
Lecture 5Lecture 5
Lecture 5
Ā 
TCP with delayed ack for wireless networks
TCP with delayed ack for wireless networksTCP with delayed ack for wireless networks
TCP with delayed ack for wireless networks
Ā 
8 congestion-ipv6
8 congestion-ipv68 congestion-ipv6
8 congestion-ipv6
Ā 
TCP Model
TCP ModelTCP Model
TCP Model
Ā 
Flow & Error Control
Flow & Error ControlFlow & Error Control
Flow & Error Control
Ā 
9 ipv6-routing
9 ipv6-routing9 ipv6-routing
9 ipv6-routing
Ā 
6 app-tcp
6 app-tcp6 app-tcp
6 app-tcp
Ā 
10 routing-bgp
10 routing-bgp10 routing-bgp
10 routing-bgp
Ā 

Similar to 2 reliability-network

Part6-network-routing.pptx
Part6-network-routing.pptxPart6-network-routing.pptx
Part6-network-routing.pptxOlivier Bonaventure
Ā 
routing algorithm
routing algorithmrouting algorithm
routing algorithmAnusuaBasu
Ā 
IAP presentation-1.pptx
IAP presentation-1.pptxIAP presentation-1.pptx
IAP presentation-1.pptxHirazNor
Ā 
IAP PPT-2.pptx
IAP PPT-2.pptxIAP PPT-2.pptx
IAP PPT-2.pptxHirazNor
Ā 
Distance Vector & Link state Routing Algorithm
Distance Vector & Link state Routing AlgorithmDistance Vector & Link state Routing Algorithm
Distance Vector & Link state Routing AlgorithmMOHIT AGARWAL
Ā 
module10-rip (1).ppt
module10-rip (1).pptmodule10-rip (1).ppt
module10-rip (1).pptRakesh Dhiman
Ā 
Routing Protocols.pptx
Routing Protocols.pptxRouting Protocols.pptx
Routing Protocols.pptxHirazNor
Ā 
Lecture set 5
Lecture set 5Lecture set 5
Lecture set 5Gopi Saiteja
Ā 
Part 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesOlivier Bonaventure
Ā 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithmTechStudent1
Ā 
Powerpoint one
Powerpoint onePowerpoint one
Powerpoint onepqatester
Ā 
Powerpoint one
Powerpoint onePowerpoint one
Powerpoint onepqatester
Ā 
Combinational circuits r011
Combinational circuits   r011Combinational circuits   r011
Combinational circuits r011arunachalamr16
Ā 
Join algorithm in MapReduce
Join algorithm in MapReduceJoin algorithm in MapReduce
Join algorithm in MapReducečæŖ 吓
Ā 
IAP PPT-1.pptx
IAP PPT-1.pptxIAP PPT-1.pptx
IAP PPT-1.pptxHirazNor
Ā 
Comparative Analysis of Distance Vector Routing & Link State Protocols
Comparative Analysis of Distance Vector Routing & Link State ProtocolsComparative Analysis of Distance Vector Routing & Link State Protocols
Comparative Analysis of Distance Vector Routing & Link State ProtocolsEast West University
Ā 
Networks
NetworksNetworks
NetworksAbhik Seal
Ā 

Similar to 2 reliability-network (20)

Part6-network-routing.pptx
Part6-network-routing.pptxPart6-network-routing.pptx
Part6-network-routing.pptx
Ā 
Part7-routing.pptx
Part7-routing.pptxPart7-routing.pptx
Part7-routing.pptx
Ā 
routing algorithm
routing algorithmrouting algorithm
routing algorithm
Ā 
IAP presentation-1.pptx
IAP presentation-1.pptxIAP presentation-1.pptx
IAP presentation-1.pptx
Ā 
IAP PPT-2.pptx
IAP PPT-2.pptxIAP PPT-2.pptx
IAP PPT-2.pptx
Ā 
Distance Vector & Link state Routing Algorithm
Distance Vector & Link state Routing AlgorithmDistance Vector & Link state Routing Algorithm
Distance Vector & Link state Routing Algorithm
Ā 
module10-rip (1).ppt
module10-rip (1).pptmodule10-rip (1).ppt
module10-rip (1).ppt
Ā 
Routing Protocols.pptx
Routing Protocols.pptxRouting Protocols.pptx
Routing Protocols.pptx
Ā 
Lecture set 5
Lecture set 5Lecture set 5
Lecture set 5
Ā 
Part 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resources
Ā 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithm
Ā 
Powerpoint one
Powerpoint onePowerpoint one
Powerpoint one
Ā 
Powerpoint one
Powerpoint onePowerpoint one
Powerpoint one
Ā 
Fulll Adder
Fulll AdderFulll Adder
Fulll Adder
Ā 
Combinational circuits r011
Combinational circuits   r011Combinational circuits   r011
Combinational circuits r011
Ā 
Join algorithm in MapReduce
Join algorithm in MapReduceJoin algorithm in MapReduce
Join algorithm in MapReduce
Ā 
IAP PPT-1.pptx
IAP PPT-1.pptxIAP PPT-1.pptx
IAP PPT-1.pptx
Ā 
Comparative Analysis of Distance Vector Routing & Link State Protocols
Comparative Analysis of Distance Vector Routing & Link State ProtocolsComparative Analysis of Distance Vector Routing & Link State Protocols
Comparative Analysis of Distance Vector Routing & Link State Protocols
Ā 
Big spatial2014 mapreduceweights
Big spatial2014 mapreduceweightsBig spatial2014 mapreduceweights
Big spatial2014 mapreduceweights
Ā 
Networks
NetworksNetworks
Networks
Ā 

More from Olivier Bonaventure

Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptxOlivier Bonaventure
Ā 
A personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchOlivier Bonaventure
Ā 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks Olivier Bonaventure
Ā 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPOlivier Bonaventure
Ā 
Part 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGPPart 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGPOlivier Bonaventure
Ā 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Olivier Bonaventure
Ā 
Part 8 : TCP and Congestion control
Part 8 : TCP and Congestion controlPart 8 : TCP and Congestion control
Part 8 : TCP and Congestion controlOlivier Bonaventure
Ā 
Part 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCPPart 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCPOlivier Bonaventure
Ā 

More from Olivier Bonaventure (20)

Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
Ā 
Part10-router.pptx
Part10-router.pptxPart10-router.pptx
Part10-router.pptx
Ā 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
Ā 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
Ā 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
Ā 
Part11-lan.pptx
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptx
Ā 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
Ā 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
Ā 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
Ā 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
Ā 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
Ā 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
Ā 
Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
Ā 
A personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking research
Ā 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
Ā 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
Ā 
Part 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGPPart 10 : Routing in IP networks and interdomain routing with BGP
Part 10 : Routing in IP networks and interdomain routing with BGP
Ā 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6
Ā 
Part 8 : TCP and Congestion control
Part 8 : TCP and Congestion controlPart 8 : TCP and Congestion control
Part 8 : TCP and Congestion control
Ā 
Part 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCPPart 7 : HTTP/2, UDP and TCP
Part 7 : HTTP/2, UDP and TCP
Ā 

Recently uploaded

kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadhamedmustafa094
Ā 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...Amil baba
Ā 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesRAJNEESHKUMAR341697
Ā 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxSCMS School of Architecture
Ā 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTbhaskargani46
Ā 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesMayuraD1
Ā 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdfAldoGarca30
Ā 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueBhangaleSonal
Ā 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
Ā 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
Ā 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
Ā 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdfKamal Acharya
Ā 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . pptDineshKumar4165
Ā 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapRishantSharmaFr
Ā 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARKOUSTAV SARKAR
Ā 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptDineshKumar4165
Ā 
Computer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to ComputersComputer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to ComputersMairaAshraf6
Ā 

Recently uploaded (20)

Call Girls in South Ex (delhi) call me [šŸ”9953056974šŸ”] escort service 24X7
Call Girls in South Ex (delhi) call me [šŸ”9953056974šŸ”] escort service 24X7Call Girls in South Ex (delhi) call me [šŸ”9953056974šŸ”] escort service 24X7
Call Girls in South Ex (delhi) call me [šŸ”9953056974šŸ”] escort service 24X7
Ā 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
Ā 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
Ā 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
Ā 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
Ā 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
Ā 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
Ā 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Ā 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
Ā 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
Ā 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
Ā 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Ā 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
Ā 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Ā 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
Ā 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
Ā 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
Ā 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Ā 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
Ā 
Computer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to ComputersComputer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to Computers
Ā 

2 reliability-network

  • 1. Week 2 Reliable transmission Building a network
  • 2. Agenda ā€¢ Reliable transmission ā€¢ Checksums and hash functions ā€¢ Framing ā€¢ Go-back-n ā€¢ Selective repeat ā€¢ Building a network
  • 3. Agenda ā€¢ Reliable transmission ā€¢ Checksums and hash functions ā€¢ Framing ā€¢ Go-back-n ā€¢ Selective repeat ā€¢ Building a network
  • 4. Checksums ā€¢ How to verify that a transmission has not been affected by random errors ā€¢ Checksum ā€¢ CRC ā€¢ Should the Checksum/CRC also cover the header ?
  • 5. Hash functions ā€¢ What is the role of hash functions like MD5 or SHA-1 ? ā€¢ Do they play the same role as CRCs and checksums ?
  • 6. Agenda ā€¢ Reliable transmission ā€¢ Checksums and hash functions ā€¢ Framing ā€¢ Go-back-n ā€¢ Selective repeat ā€¢ Building a network
  • 7. Bit stuffing ā€¢ How to combine bit stuffing and checksums ? ā€¢ Stuffing first and then compute checksum or ā€¢ Compute checksum and then stuffing
  • 8. Character stuffing ā€¢ What are the advantages/drawbacks of character stuffing compared to bit stuffing ?
  • 9. Agenda ā€¢ Reliable transmission ā€¢ Checksums and hash functions ā€¢ Framing ā€¢ Go-back-n ā€¢ Selective repeat ā€¢ Building a network
  • 10. Go-back-n ā€¢ What are the key principles behind go-back- n ? ā€¢ How does it deal with losses/errors ? ā€¢ How does it deal with losses of acknowledgements ? ā€¢ How to set the retransmission timer ?
  • 11. Go-back-n : example A B 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 Data.req(a) Data.req(e) Data.ind(a) D(0,a) Data.req(c) D(2,c) C(OK,0) C(OK,0) Sending window Data.req(b) D(1,b) Lost Not expected seq num, discarded Retransmission timer expires 0 1 2 3 0 1 2 3 Sending window is full D(1,b) Data.ind(b) Data.req(d) D(3,d) Data.ind(d) D(2,c) Data.ind(c)
  • 12. Maximum window ā€¢ What is the maximum window size that can be used with go-back-n ? ā€¢ Sequence numbers are encoded in N bits
  • 13. Agenda ā€¢ Reliable transmission ā€¢ Checksums and hash functions ā€¢ Framing ā€¢ Go-back-n ā€¢ Selective repeat ā€¢ Building a network
  • 14. Selective repeat ā€¢ What are the key principles behind selective repeat ? ā€¢ How does it deal with losses/errors ? ā€¢ How does it deal with losses of acknowledgements ? ā€¢ How to inform about losses ? ā€¢ How to set the retransmission timer ?
  • 15. Selective repeat A B 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 Data.ind(b) Data.req(a) Data.ind(a) D(0,a) 0 1 2 3 Data.req(c) D(2,c) C(OK,0) C(OK,0) Sending window Data.req(b) D(1,b) Lost segment Segment stored D(1,b) Retransmission 0 1 2 3 timer expires 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 Data.ind(c) Data.req(d) D(3,d) Data.ind(d) 0 1 2 3 0 1 2 3 C(OK,2) C(OK,3) Rec. window 0 1 2 3 0 1 2 3
  • 16. Maximum window ā€¢ What is the maximum window size that can be used with selective repeat ? ā€¢ Sequence numbers are encoded in N bits
  • 17. Performance with losses ā€¢ What is the minimum window size required to achieve high throughput ā€¢ When there are no losses ? ā€¢ When a few frames are errored/lost ? ā€¢ Go-back-n ā€¢ Selective repeat
  • 18. Take back lessons ā€¢ Usage of Checksums/CRCs ā€¢ Cumulative acknowledgements ā€¢ Maximum window size with gbn/sr ā€¢ Bandwidth x delay product
  • 19. ā€¢ Reliable tranAsmigsseionnda ā€¢ Building a network ā€¢ Datagram organisation ā€¢ Virtual circuit organisation ā€¢ Distance vector routing ā€¢ Link state routing
  • 20. Datagram organisation ā€¢ Principles ā€¢ Nodes ā€¢ Hosts ā€¢ Routers ā€¢ Packet
  • 21. Forwarding table ā€¢ Contents of the forwarding table ā€¢ Destination, nexthop/outgoing if ā€¢ How to compute the forwarding table ?
  • 22. Port-station table ā€¢ When a node boots, its forwarding table is empty, is it possible to learn automatically the forwarding table from the packets ? ā€¢ Tree-shaped networks only !
  • 23. A network B A R1 R2 R3
  • 24. Source routing ā€¢ Basic idea ā€¢ Each node has a unique address ā€¢ Each node knows its direct neighbours ā€¢ How ? ā€¢ Each packet contains the list of the addresses of intermediate nodes
  • 25. A network B A R1 R2 R3 How can A discover the paths towards B ?
  • 26. ā€¢ Reliable tranAsmigsseionnda ā€¢ Building a network ā€¢ Datagram organisation ā€¢ Virtual circuit organisation ā€¢ Distance vector routing ā€¢ Link state routing
  • 27. Virtual circuit ā€¢ Basic idea ā€¢ Create circuits through the network to transfer data divided in packets ā€¢ Packet contains one label ā€¢ Simpler forwarding table ā€¢ incoming label, nexthop, outgoing label
  • 28. Virtual circuit B A R1 R2 R3 Create one virtual circuit from A to B C
  • 29. ā€¢ Reliable tranAsmigsseionnda ā€¢ Building a network ā€¢ Datagram organisation ā€¢ Virtual circuit organisation ā€¢ Distance vector routing ā€¢ Link state routing
  • 30. Computing forwarding tables ā€¢ How to compute the forwarding tables for all nodes in a network ? C A B C E D E
  • 31. Computing forwarding tables ā€¢ ā€¢ A B C C E D E Routing table A : Local D : South B : East C : East [via B] E: East [via B] Routing table A : West B : Local C : East D : South [via E] E : South Routing table A : West [via B] B : West C : Local D : West [via B] E : South West Routing table A : North B : North [via A] C : East [via E] D : Local E : East Routing table A : North [via B] B : North C : North-East D : West E : Local Cost=1 Cost=1 Cost=1 Cost=1 Cost=1 Cost=1
  • 32. Distance vector routing ā€¢ Objectives of the routing protocol ā€¢ Compute forwarding tables so that all nodes can reach all nodes in the network ā€¢ Principle ā€¢ Each node regularly sends a summary of its forwarding table to its neighbours
  • 33. Distance vector Routing table B : 0 [Local] Routing table C D E Routing table A : 0 [ Local ] A B C D E C : 0 [Local] Routing table E : 0 [Local] Routing table D : 0 [Local]
  • 34. Distance vector example (2) C Routing table B : 0 [Local] A : 1 [West] D E Routing table A : 0 [ Local ] A B C D E Routing table C : 0 [Local] Routing table E : 0 [Local] Routing table D : 0 [Local] A : 1 [North] D=0 ; A=1 D=0 ; A=1
  • 35. Distance vector example (3) C Routing table B : 0 [Local] A : 1 [West] D E Routing table A : 0 [ Local ] D : 1 [South] A B C D E Routing table C : 0 [Local] Routing table E : 0 [Local] D : 1 [West] A : 2 [West] Routing table D : 0 [Local] A : 1 [North] C=0 C=0
  • 36. Distance vector example (4) C Routing table B : 0 [Local] A : 1 [West] C : 1 [East] E=0;D=1;A=2;C=1 D E Routing table A : 0 [ Local ] D : 1 [South] A B C D E Routing table C : 0 [Local] Routing table E : 0 [Local] D : 1 [West] A : 2 [West] C : 1 [North-East] Routing table D : 0 [Local] A : 1 [North] E=0;D=1;A=2;C=1 E=0;D=1;A=2;C=1
  • 37. Distance vector example (5) C Routing table B : 0 [Local] A : 1 [West] C : 1 [East] E : 1 [South] D : 2 [South] D E Routing table A : 0 [ Local ] D : 1 [South] A B C D E Routing table C : 0 [Local] E : 1 [South-West] D : 2 [South-West] A : 3 [South-West] Routing table E : 0 [Local] D : 1 [West] A : 2 [West] C : 1 [North-East] Routing table D : 0 [Local] A : 1 [North] E : 1 [East] C : 2 [East] B=0;A=1;C=1;D=2;E=1 B=0;A=1;C=1;D=2;E=1
  • 38. Distance vector example (6) C Routing table B : 0 [Local] A : 1 [West] C : 1 [East] E : 1 [South] D : 2 [South] D E Routing table A : 0 [ Local ] D : 1 [South] B : 1 [East] C : 2 [East] E : 2 [East] A B C D E Routing table C : 0 [Local] E : 1 [South-West] D : 2 [South-West] A : 2 [West] B : 1 [West] Routing table E : 0 [Local] D : 1 [West] A : 2 [West] C : 1 [North-East] B : 1 [North] Routing table D : 0 [Local] A : 1 [North] E : 1 [East] C : 2 [East] A=0;B=1;C=2;D=1;E=2
  • 39. Distance vector example (7) C Routing table B : 0 [Local] A : 1 [West] C : 1 [East] E : 1 [South] D : 2 [South] D E Routing table A : 0 [ Local ] D : 1 [South] B : 1 [East] C : 2 [East] E : 2 [East] A B C D E Routing table C : 0 [Local] E : 1 [South-West] D : 2 [South-West] A : 2 [West] B : 1 [West] Routing table E : 0 [Local] D : 1 [West] A : 2 [West] C : 1 [North-East] B : 1 [North] Routing table D : 0 [Local] A : 1 [North] E : 1 [East] C : 2 [East] B : 2 [North]
  • 40. ā€¢ Reliable tranAsmigsseionnda ā€¢ Building a network ā€¢ Datagram organisation ā€¢ Virtual circuit organisation ā€¢ Distance vector routing ā€¢ Link state routing
  • 41. Link state routing ā€¢ Objectives of the routing protocol ā€¢ Compute all forwarding tables ā€¢ Principle ā€¢ Each node detects its neighbours ā€¢ Each node regularly sends list of its neighbours to all nodes
  • 42. Discovering neighbours ā€¢ Manually ā€¢ Automatically E A:HELLO A B E B:HELLO E:HELLO
  • 43. Link state packets C Links A-B : 1 B-E : 1 B-C : 1 A B C LSP : E [D:1];[B:1];[C:1] LSP : E [D:1];[B:1];[C:1] D E Links A-B : 1 A-D : 1 D E Links B-C : 1 C-E : 1 Links E-D : 1 E-B : 1 E-C : 1 Links A-D : 1 D-E : 1 LSP : E [D:1];[B:1];[C:1] ā€¢ How to reliably send LSPs to all nodes ?
  • 44. Flooding ā€¢ Naive approach ā€¢ Send received LSP to all neighbours C D E Links A-B : 1 A-D : 1 LSP : E [D:1];[B:1];[C:1] A B C D E Links B-C : 1 C-E : 1 B-E : 1 D-E : 1 Links E-D : 1 E-B : 1 E-C : 1 Links A-B : 1 B-E : 1 B-C : 1 E-D : 1 E-C : 1 Links A-D : 1 D-E : 1 B-E : 1 E-C : 1 LSP : E [D:1];[B:1];[C:1] LSP : E [D:1];[B:1];[C:1]
  • 45. Flooding LSPs LSPs C LSP : E-0 [D:1];[B:1];[C:1] LSP : E-0 [D:1];[B:1];[C:1] D E Links A-B : 1 A-D : 1 A B C D E Links B-C : 1 C-E : 1 Links E-D : 1 E-B : 1 E-C : 1 LSPs Links A-D : 1 D-E : 1 Links A-B : 1 B-E : 1 B-C : 1 LSP : E-0 [D:1];[B:1];[C:1] LSPs LSPs E-0 [D:1];[B:1];[C:1]
  • 46. Flooding E-0 [D:1];[B:1];[C:1] C D E Links A-B : 1 A-D : 1 LSPs LSP : E-0 [D:1];[B:1];[C:1] A B C D E Links B-C : 1 C-E : 1 B-E : 1 D-E : 1 Links E-D : 1 E-B : 1 E-C : 1 Links A-B : 1 B-E : 1 B-C : 1 E-D : 1 E-C : 1 LSPs Links A-D : 1 D-E : 1 B-E : 1 E-C : 1 LSP : E-0 [D:1];[B:1];[C:1] LSPs E-0 [D:1];[B:1];[C:1] LSPs E-0 [D:1];[B:1];[C:1] LSPs E-0 [D:1];[B:1];[C:1] LSP : E-0 [D:1];[B:1];[C:1]
  • 47. After flooding ā€¢ Each node knows full network topology C Links A-B, B-A : 1 B-E, E-B : 1 B-C, C-B : 1 E-D, D-E : 1 E-C, C-E : 1 A-D, D-A : 1 LSPs E-0 [D:1];[B:1];[C:1] A-0 [D:1];[B:1] B-0 [A:1] [C:1] [E:1] C-0 [B:1] [E:1] D-0 [A:1] [E:1] Links A-B, B-A : 1 B-E, E-B : 1 B-C, C-B : 1 E-D, D-E : 1 E-C, C-E : 1 A-D, D-A : 1 A B C D E D E Links A-B, B-A : 1 B-E, E-B : 1 B-C, C-B : 1 E-D, D-E : 1 E-C, C-E : 1 A-D, D-A : 1 LSPs E-0 [D:1];[B:1];[C:1] A-0 [D:1];[B:1] B-0 [A:1] [C:1] [E:1] C-0 [B:1] [E:1] D-0 [A:1] [E:1] LSPs E-0 [D:1];[B:1];[C:1] A-0 [D:1];[B:1] B-0 [A:1] [C:1] [E:1] C-0 [B:1] [E:1] D-0 [A:1] [E:1] Links A-B, B-A : 1 B-E, E-B : 1 B-C, C-B : 1 E-D, D-E : 1 E-C, C-E : 1 A-D, D-A : 1 Links A-B, B-A : 1 B-E, E-B : 1 B-C, C-B : 1 E-D, D-E : 1 E-C, C-E : 1 A-D, D-A : 1 LSPs E-0 [D:1];[B:1];[C:1] A-0 [D:1];[B:1] B-0 [A:1] [C:1] [E:1] C-0 [B:1] [E:1] D-0 [A:1] [E:1] LSPs E-0 [D:1];[B:1];[C:1] A-0 [D:1];[B:1] B-0 [A:1] [C:1] [E:1] C-0 [B:1] [E:1] D-0 [A:1] [E:1]