SlideShare a Scribd company logo
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 distance
Jimit Rupani
 
Routing
RoutingRouting
DSDV VS AODV
DSDV VS AODV DSDV VS AODV
DSDV VS AODV
Senthil Kanth
 
udp , tcp ,sctp
udp , tcp ,sctpudp , tcp ,sctp
udp , tcp ,sctp
AKSHIT KOHLI
 
Can ppt
Can pptCan ppt
Can ppt
Alka Yadav
 
Routing
RoutingRouting
Routing
Rachna Sharma
 
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
Andy Juan Sarango Veliz
 
Tcp
TcpTcp
Chapter 5 : Link Layer
Chapter 5 : Link LayerChapter 5 : Link Layer
Chapter 5 : Link Layer
Amin Omi
 
Computer networks unit iv
Computer networks    unit ivComputer networks    unit iv
Computer networks unit iv
JAIGANESH 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 7th
Andy Juan Sarango Veliz
 
Routing algorithm network layer
Routing algorithm  network layerRouting algorithm  network layer
Routing algorithm network layer
sambhenilesh
 
Week16 lec1
Week16 lec1Week16 lec1
Week16 lec1
syedhaiderraza
 
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
HamzahMohammed4
 
Week14 lec2
Week14 lec2Week14 lec2
Week14 lec2
syedhaiderraza
 
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
MD.ANISUR RAHMAN
 
Week13 lec2
Week13 lec2Week13 lec2
Week13 lec2
syedhaiderraza
 
Week15 lec1
Week15 lec1Week15 lec1
Week15 lec1
syedhaiderraza
 
Tcp udp
Tcp udpTcp udp
Tcp udp
Programmer
 
I pv6
I pv6I pv6

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

4 transport-sharing
4 transport-sharing4 transport-sharing
4 transport-sharing
Olivier Bonaventure
 
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
Wei Tsang Ooi
 
7 tcp-congestion
7 tcp-congestion7 tcp-congestion
7 tcp-congestion
Olivier Bonaventure
 
Socket网络编程
Socket网络编程Socket网络编程
Socket网络编程
qhm123
 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic Performance
Javier Arauz
 
5 sharing-app
5 sharing-app5 sharing-app
5 sharing-app
Olivier Bonaventure
 
Lecture 5
Lecture 5Lecture 5
Lecture 5
ntpc08
 
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
ambitlicksolutions
 
8 congestion-ipv6
8 congestion-ipv68 congestion-ipv6
8 congestion-ipv6
Olivier Bonaventure
 
TCP Model
TCP ModelTCP Model
TCP Model
manojkum22
 
Flow & Error Control
Flow & Error ControlFlow & Error Control
Flow & Error Control
tameemyousaf
 
9 ipv6-routing
9 ipv6-routing9 ipv6-routing
9 ipv6-routing
Olivier Bonaventure
 
6 app-tcp
6 app-tcp6 app-tcp
10 routing-bgp
10 routing-bgp10 routing-bgp
10 routing-bgp
Olivier Bonaventure
 

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.pptx
Olivier Bonaventure
 
Part7-routing.pptx
Part7-routing.pptxPart7-routing.pptx
Part7-routing.pptx
Olivier Bonaventure
 
routing algorithm
routing algorithmrouting algorithm
routing algorithm
AnusuaBasu
 
IAP presentation-1.pptx
IAP presentation-1.pptxIAP presentation-1.pptx
IAP presentation-1.pptx
HirazNor
 
IAP PPT-2.pptx
IAP PPT-2.pptxIAP PPT-2.pptx
IAP PPT-2.pptx
HirazNor
 
Distance Vector & Link state Routing Algorithm
Distance Vector & Link state Routing AlgorithmDistance Vector & Link state Routing Algorithm
Distance Vector & Link state Routing Algorithm
MOHIT AGARWAL
 
module10-rip (1).ppt
module10-rip (1).pptmodule10-rip (1).ppt
module10-rip (1).ppt
Rakesh Dhiman
 
Routing Protocols.pptx
Routing Protocols.pptxRouting Protocols.pptx
Routing Protocols.pptx
HirazNor
 
Lecture set 5
Lecture set 5Lecture set 5
Lecture set 5
Gopi 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 resources
Olivier Bonaventure
 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithm
TechStudent1
 
Powerpoint one
Powerpoint onePowerpoint one
Powerpoint one
pqatester
 
Powerpoint one
Powerpoint onePowerpoint one
Powerpoint one
pqatester
 
Fulll Adder
Fulll AdderFulll Adder
Fulll Adder
Muhammad Yasir
 
Combinational circuits r011
Combinational circuits   r011Combinational circuits   r011
Combinational circuits r011
arunachalamr16
 
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
HirazNor
 
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
East West University
 
Big spatial2014 mapreduceweights
Big spatial2014 mapreduceweightsBig spatial2014 mapreduceweights
Big spatial2014 mapreduceweights
Arizona State University
 
Networks
NetworksNetworks
Networks
Abhik 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

Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
Olivier Bonaventure
 
Part10-router.pptx
Part10-router.pptxPart10-router.pptx
Part10-router.pptx
Olivier Bonaventure
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
Olivier Bonaventure
 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
Olivier Bonaventure
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
Olivier Bonaventure
 
Part11-lan.pptx
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptx
Olivier Bonaventure
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
Olivier Bonaventure
 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
Olivier Bonaventure
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
Olivier Bonaventure
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
Olivier Bonaventure
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
Olivier Bonaventure
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
Olivier Bonaventure
 
Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
Olivier 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 research
Olivier 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 BGP
Olivier 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 BGP
Olivier Bonaventure
 
Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6Part 9 : Congestion control and IPv6
Part 9 : Congestion control and IPv6
Olivier Bonaventure
 
Part 8 : TCP and Congestion control
Part 8 : TCP and Congestion controlPart 8 : TCP and Congestion control
Part 8 : TCP and Congestion control
Olivier 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 TCP
Olivier 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

Vernier Caliper and How to use Vernier Caliper.ppsx
Vernier Caliper and How to use Vernier Caliper.ppsxVernier Caliper and How to use Vernier Caliper.ppsx
Vernier Caliper and How to use Vernier Caliper.ppsx
Tool and Die Tech
 
OSHA LOTO training, LOTO, lock out tag out
OSHA LOTO training, LOTO, lock out tag outOSHA LOTO training, LOTO, lock out tag out
OSHA LOTO training, LOTO, lock out tag out
Ateeb19
 
Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.
Tool and Die Tech
 
GUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdf
GUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdfGUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdf
GUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdf
ProexportColombia1
 
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
IJAEMSJORNAL
 
Unblocking The Main Thread - Solving ANRs and Frozen Frames
Unblocking The Main Thread - Solving ANRs and Frozen FramesUnblocking The Main Thread - Solving ANRs and Frozen Frames
Unblocking The Main Thread - Solving ANRs and Frozen Frames
Sinan KOZAK
 
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
Jim Mimlitz, P.E.
 
Lecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............pptLecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............ppt
RujanTimsina1
 
Response & Safe AI at Summer School of AI at IIITH
Response & Safe AI at Summer School of AI at IIITHResponse & Safe AI at Summer School of AI at IIITH
Response & Safe AI at Summer School of AI at IIITH
IIIT Hyderabad
 
Rotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptxRotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptx
surekha1287
 
Synthetic Test Collections for Retrieval Evaluation (Poster)
Synthetic Test Collections for Retrieval Evaluation (Poster)Synthetic Test Collections for Retrieval Evaluation (Poster)
Synthetic Test Collections for Retrieval Evaluation (Poster)
Hossein A. (Saeed) Rahmani
 
Conservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic RegenerationConservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic Regeneration
PriyankaKarn3
 
Online music portal management system project report.pdf
Online music portal management system project report.pdfOnline music portal management system project report.pdf
Online music portal management system project report.pdf
Kamal Acharya
 
Stiffness Method for structure analysis - Truss
Stiffness Method  for structure analysis - TrussStiffness Method  for structure analysis - Truss
Stiffness Method for structure analysis - Truss
adninhaerul
 
CCS367-STORAGE TECHNOLOGIES QUESTION BANK.doc
CCS367-STORAGE TECHNOLOGIES QUESTION BANK.docCCS367-STORAGE TECHNOLOGIES QUESTION BANK.doc
CCS367-STORAGE TECHNOLOGIES QUESTION BANK.doc
Dss
 
Evento anual Splunk .conf24 Highlights recap
Evento anual Splunk .conf24 Highlights recapEvento anual Splunk .conf24 Highlights recap
Evento anual Splunk .conf24 Highlights recap
Rafael Santos
 
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
YanKing2
 
Lecture 6 - The effect of Corona effect in Power systems.pdf
Lecture 6 - The effect of Corona effect in Power systems.pdfLecture 6 - The effect of Corona effect in Power systems.pdf
Lecture 6 - The effect of Corona effect in Power systems.pdf
peacekipu
 
21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx
21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx
21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx
sanabts249
 
NEC 2023 NATIONAL ELECTRICAL DODE 2023 NEC
NEC 2023 NATIONAL ELECTRICAL DODE 2023 NECNEC 2023 NATIONAL ELECTRICAL DODE 2023 NEC
NEC 2023 NATIONAL ELECTRICAL DODE 2023 NEC
PANIQUEPOMAJAELYOSSE
 

Recently uploaded (20)

Vernier Caliper and How to use Vernier Caliper.ppsx
Vernier Caliper and How to use Vernier Caliper.ppsxVernier Caliper and How to use Vernier Caliper.ppsx
Vernier Caliper and How to use Vernier Caliper.ppsx
 
OSHA LOTO training, LOTO, lock out tag out
OSHA LOTO training, LOTO, lock out tag outOSHA LOTO training, LOTO, lock out tag out
OSHA LOTO training, LOTO, lock out tag out
 
Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.
 
GUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdf
GUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdfGUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdf
GUIA_LEGAL_CHAPTER-9_COLOMBIAN ELECTRICITY (1).pdf
 
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
 
Unblocking The Main Thread - Solving ANRs and Frozen Frames
Unblocking The Main Thread - Solving ANRs and Frozen FramesUnblocking The Main Thread - Solving ANRs and Frozen Frames
Unblocking The Main Thread - Solving ANRs and Frozen Frames
 
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
SCADAmetrics Instrumentation for Sensus Water Meters - Core and Main Training...
 
Lecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............pptLecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............ppt
 
Response & Safe AI at Summer School of AI at IIITH
Response & Safe AI at Summer School of AI at IIITHResponse & Safe AI at Summer School of AI at IIITH
Response & Safe AI at Summer School of AI at IIITH
 
Rotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptxRotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptx
 
Synthetic Test Collections for Retrieval Evaluation (Poster)
Synthetic Test Collections for Retrieval Evaluation (Poster)Synthetic Test Collections for Retrieval Evaluation (Poster)
Synthetic Test Collections for Retrieval Evaluation (Poster)
 
Conservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic RegenerationConservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic Regeneration
 
Online music portal management system project report.pdf
Online music portal management system project report.pdfOnline music portal management system project report.pdf
Online music portal management system project report.pdf
 
Stiffness Method for structure analysis - Truss
Stiffness Method  for structure analysis - TrussStiffness Method  for structure analysis - Truss
Stiffness Method for structure analysis - Truss
 
CCS367-STORAGE TECHNOLOGIES QUESTION BANK.doc
CCS367-STORAGE TECHNOLOGIES QUESTION BANK.docCCS367-STORAGE TECHNOLOGIES QUESTION BANK.doc
CCS367-STORAGE TECHNOLOGIES QUESTION BANK.doc
 
Evento anual Splunk .conf24 Highlights recap
Evento anual Splunk .conf24 Highlights recapEvento anual Splunk .conf24 Highlights recap
Evento anual Splunk .conf24 Highlights recap
 
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
Natural Is The Best: Model-Agnostic Code Simplification for Pre-trained Large...
 
Lecture 6 - The effect of Corona effect in Power systems.pdf
Lecture 6 - The effect of Corona effect in Power systems.pdfLecture 6 - The effect of Corona effect in Power systems.pdf
Lecture 6 - The effect of Corona effect in Power systems.pdf
 
21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx
21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx
21CV61- Module 3 (CONSTRUCTION MANAGEMENT AND ENTREPRENEURSHIP.pptx
 
NEC 2023 NATIONAL ELECTRICAL DODE 2023 NEC
NEC 2023 NATIONAL ELECTRICAL DODE 2023 NECNEC 2023 NATIONAL ELECTRICAL DODE 2023 NEC
NEC 2023 NATIONAL ELECTRICAL DODE 2023 NEC
 

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]