Introduction to Network Layer. Network Layer: Motivation Can we built a global network such as...
-
Upload
basil-wilkins -
Category
Documents
-
view
217 -
download
0
Transcript of Introduction to Network Layer. Network Layer: Motivation Can we built a global network such as...
Introduction to Network Layer
Network Layer: Motivation• Can we built a global network such as Internet by
extending LAN segments using bridges?– No! Bridged networks do not scale
• 4 problems1. We can only bridge certain link-layer technologies together
• Link layers to be bridged must have similar MAC address structure
2. Bridge table explosion• Bridges use MAC addresses for forwarding and MAC addresses are
flat, i.e., not hierarchical– the bridge table needs to have an entry per host in the network bridge
table explosion!!!
Network Layer: Motivation 3. Robustness
• Change of network topology requires a new spanning tree computation
4. Link-layer broadcast storms– Notice that a bridged network is still a single LAN!– A link-layer broadcast packet must still be delivered to ALL hosts in
the network.– Can you imagine receiving a link-layer broadcast packet from a host
5000 km away at your host?
– Bottom Line: Bridged/Switched LANs don’t scale! – What’s the solution? --- Next
A
B
C
Bridge
E
F
D
Hub
Switch
L
M
HubH
I
Hub
ON
Hub
KG
R1R2
R3
R4
Network Core
Separate LANsEach LAN is a separate
LL Broadcast Domain
Router
A collisiondomain
within a LAN
• Divide the network into separate LANs that are NOT part of the same “LL broadcast” domain
• Connect the LANs using “routers”– Notice that we CANNOT use bridges to connect separate LANs as bridged LANs
form a single LL broadcast domain, which is what we are trying to avoid to achieve scalability
How to achieve scalable growth?
A
B
C
Bridge
E
F
D
Hub
Switch
L
M
HubH
I
Hub
ON
Hub
KG
R1R2
R3
R4
Network Core
Separate LANsEach LAN is a separate
LL Broadcast Domain
Router
A collisiondomain
within a LAN
• How do two hosts on separate LANs, e.g., A and E, communicate?
• Recall that using the Link Layer (LL), only hosts that are neighbors, that is, hosts that are within the same LAN can communicate.
• Solution: Design a new layer, called the network layer, that would provide host-to-host packet delivery for hosts that are in separate LANs
Communication Issue
Network layer functions
• transport packet from sending to receiving hosts
• network layer protocols in every host, router
Important functions:• addressing: each host/router interface
must have a GLOBALLY unique network address
• path determination: route taken by packets from source to dest. Routing algorithms
• switching: move packets from router’s input to appropriate router output
• call setup: some network architectures require router call setup along path before data flows
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
networkdata linkphysical
application
transportnetworkdata linkphysical
application
transportnetworkdata linkphysical
Figure 4.13 Services provided at the source computer
Figure 4.14 Processing at each router
Figure 4.15 Processing at the destination computer
Network service modelQ: What service model for
“channel” transporting packets from sender to receiver?
• guaranteed bandwidth?
• preservation of inter-packet timing (no jitter)?
• loss-free delivery?
• in-order delivery?
• congestion feedback to sender?
? ??virtual circuit
or datagram?
The most important abstraction provided
by network layer:
serv
ice a
bst
ract
ion
Virtual circuits
• call setup, teardown for each call before data can flow
• each packet carries VC identifier (not destination host ID)
• every router on source-dest path maintains “state” for each passing connection– (in contrast, transport-layer connection only involved two end systems)
• link, router resources (bandwidth, buffers) may be allocated to VC– to get circuit-like performance
“source-to-dest path behaves much like telephone circuit”– performance-wise
– network actions along source-to-dest path
Virtual circuits: signaling protocols
• used to set up, maintain, and tear down VC
• used in ATM, frame-relay, X.25
• not used in today’s Internet
application
transportnetworkdata linkphysical
application
transportnetworkdata linkphysical
1. Initiate call 2. incoming call
3. Accept call4. Call connected5. Data flow begins 6. Receive data
Virtual Circuits Networks: Forwarding
A
B
C
D
Incoming
Interface
Incoming VC #
Outgoing interface
Outgoing VC #
1 12 2 22
2 38 1 19
VC table at R1:
R1
R2 R3
R4
R5
R6
R7
R8
R9
R10
1 2
12
22
Incoming
Interface
Incoming VC #
Outgoing interface
Outgoing VC #
1 45 3 53
3 8 1 15
VC table at R2:
1 3
245
53
2
66
69
3
43
977
Distinction between VC setup at the network layer and connection setup at the transport layer
• Connection setup at the transport layer only involves the two end systems in which they agree to communicate and together determine the parameters (e.g., initial sequence number, flow control window size) of their transport level connection before data actually begins to flow on the transport level connection
• Although the two end systems are aware of the transport-layer connection, the switches within the network are completely oblivious to it
• On the otherhand, with a virtual-circuit network layer, packet switches are involved in virtual-cicuit setup, and each packet switch is fully aware of all the VCs passing through it
Datagram networks: the Internet model
• no call setup at network layer
• routers: no state about end-to-end connections– no network-level concept of “connection”
• packets typically routed using destination host ID– packets between same source-dest pair may take
different paths
application
transportnetworkdata linkphysical
application
transportnetworkdata linkphysical
1. Send data 2. Receive data
Datagram Networks: Forwarding
A
B
C
D
Destination Address
Outgoing interface
Next Hop
B 1 B
C 2 R3
D 2 R3
Forwarding table at R1:
R1
R2 R3
R4
R5
R6
R7
R8
R9
R10
1 2
C
C
Forwarding table at R2:
1 3
2D
D
C
C
C
C
D
DD
Destination Address
Outgoing interface
Next Hop
A 1 A
C 3 R3
D 3 R3
Datagram or VC network: why?
Internet• data exchange among computers
– “elastic” service, no strict timing req.
• “smart” end systems (computers)– can adapt, perform control, error
recovery– simple inside network,
complexity at “edge”• easier to connect many link types
– different characteristics– uniform service difficult
ATM• evolved from telephony
• human conversation:
– strict timing, reliability requirements
– need for guaranteed service
• “dumb” end systems
– telephones
– complexity inside network