1
School of Computing Science
Simon Fraser University
CMPT 771471 Internet Architecture and CMPT 771471 Internet Architecture and ProtocolsProtocols
Link LayerLink Layer
Instructor Dr Mohamed HefeedaInstructor Dr Mohamed Hefeeda
2
Review of Basic Networking Concepts
Internet structure Protocol layering and encapsulation Internet services and socket programming Network Layer
Network types Circuit switching Packet switching Addressing Forwarding Routing
Transport layer Reliability congestion and flow control TCP UDP
Link Layer Multiple Access Protocols Ethernet MAC addressing
3
Link Layer
Some terminology hosts and routers are nodes communication channels that
connect adjacent nodes along communication path are links
wired links wireless links LANs
layer-2 packet is a frame encapsulates datagram
ldquolinkrdquo
data-link layer has responsibility of transferring datagram from one node to adjacent node over a link
4
Link layer context
Datagram transferred by different link protocols over different links
eg Ethernet on first link frame relay on intermediate links 80211 on last link
Each link protocol provides different services
eg may or may not provide rdt over link
transportation analogy trip from Burnaby to Lausanne
Switzerland limo Burnaby to YVR plane YVR to Geneva train Geneva to Lausanne
tourist = datagram transport segment =
communication link transportation mode = link
layer protocol travel agent = routing
algorithm
5
Link Layer Services
Framing link access encapsulate datagram into frame adding header
trailer channel access if shared medium ldquoMACrdquo addresses used in frame headers to identify
source dest Reliable delivery between adjacent nodes
we learned how to do this already (chapter 3) seldom used on low bit error link (eg fiber) used in wireless links high error rates Q why both link-level and end-end reliability LL local correction (bet adjacent nodes) faster e-2-e is still needed because not all LL protocols
provide reliability
6
Link Layer Services (more)
Flow Control pacing between adjacent sending and receiving
nodes Error Detection
errors caused by signal attenuation noise receiver detects presence of errors
bull signals sender for retransmission or drops frame Error Correction
receiver identifies and corrects bit error(s) without resorting to retransmission
Half-duplex and full-duplex with half duplex nodes at both ends of link can
transmit but not at same time
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
2
Review of Basic Networking Concepts
Internet structure Protocol layering and encapsulation Internet services and socket programming Network Layer
Network types Circuit switching Packet switching Addressing Forwarding Routing
Transport layer Reliability congestion and flow control TCP UDP
Link Layer Multiple Access Protocols Ethernet MAC addressing
3
Link Layer
Some terminology hosts and routers are nodes communication channels that
connect adjacent nodes along communication path are links
wired links wireless links LANs
layer-2 packet is a frame encapsulates datagram
ldquolinkrdquo
data-link layer has responsibility of transferring datagram from one node to adjacent node over a link
4
Link layer context
Datagram transferred by different link protocols over different links
eg Ethernet on first link frame relay on intermediate links 80211 on last link
Each link protocol provides different services
eg may or may not provide rdt over link
transportation analogy trip from Burnaby to Lausanne
Switzerland limo Burnaby to YVR plane YVR to Geneva train Geneva to Lausanne
tourist = datagram transport segment =
communication link transportation mode = link
layer protocol travel agent = routing
algorithm
5
Link Layer Services
Framing link access encapsulate datagram into frame adding header
trailer channel access if shared medium ldquoMACrdquo addresses used in frame headers to identify
source dest Reliable delivery between adjacent nodes
we learned how to do this already (chapter 3) seldom used on low bit error link (eg fiber) used in wireless links high error rates Q why both link-level and end-end reliability LL local correction (bet adjacent nodes) faster e-2-e is still needed because not all LL protocols
provide reliability
6
Link Layer Services (more)
Flow Control pacing between adjacent sending and receiving
nodes Error Detection
errors caused by signal attenuation noise receiver detects presence of errors
bull signals sender for retransmission or drops frame Error Correction
receiver identifies and corrects bit error(s) without resorting to retransmission
Half-duplex and full-duplex with half duplex nodes at both ends of link can
transmit but not at same time
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
3
Link Layer
Some terminology hosts and routers are nodes communication channels that
connect adjacent nodes along communication path are links
wired links wireless links LANs
layer-2 packet is a frame encapsulates datagram
ldquolinkrdquo
data-link layer has responsibility of transferring datagram from one node to adjacent node over a link
4
Link layer context
Datagram transferred by different link protocols over different links
eg Ethernet on first link frame relay on intermediate links 80211 on last link
Each link protocol provides different services
eg may or may not provide rdt over link
transportation analogy trip from Burnaby to Lausanne
Switzerland limo Burnaby to YVR plane YVR to Geneva train Geneva to Lausanne
tourist = datagram transport segment =
communication link transportation mode = link
layer protocol travel agent = routing
algorithm
5
Link Layer Services
Framing link access encapsulate datagram into frame adding header
trailer channel access if shared medium ldquoMACrdquo addresses used in frame headers to identify
source dest Reliable delivery between adjacent nodes
we learned how to do this already (chapter 3) seldom used on low bit error link (eg fiber) used in wireless links high error rates Q why both link-level and end-end reliability LL local correction (bet adjacent nodes) faster e-2-e is still needed because not all LL protocols
provide reliability
6
Link Layer Services (more)
Flow Control pacing between adjacent sending and receiving
nodes Error Detection
errors caused by signal attenuation noise receiver detects presence of errors
bull signals sender for retransmission or drops frame Error Correction
receiver identifies and corrects bit error(s) without resorting to retransmission
Half-duplex and full-duplex with half duplex nodes at both ends of link can
transmit but not at same time
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
4
Link layer context
Datagram transferred by different link protocols over different links
eg Ethernet on first link frame relay on intermediate links 80211 on last link
Each link protocol provides different services
eg may or may not provide rdt over link
transportation analogy trip from Burnaby to Lausanne
Switzerland limo Burnaby to YVR plane YVR to Geneva train Geneva to Lausanne
tourist = datagram transport segment =
communication link transportation mode = link
layer protocol travel agent = routing
algorithm
5
Link Layer Services
Framing link access encapsulate datagram into frame adding header
trailer channel access if shared medium ldquoMACrdquo addresses used in frame headers to identify
source dest Reliable delivery between adjacent nodes
we learned how to do this already (chapter 3) seldom used on low bit error link (eg fiber) used in wireless links high error rates Q why both link-level and end-end reliability LL local correction (bet adjacent nodes) faster e-2-e is still needed because not all LL protocols
provide reliability
6
Link Layer Services (more)
Flow Control pacing between adjacent sending and receiving
nodes Error Detection
errors caused by signal attenuation noise receiver detects presence of errors
bull signals sender for retransmission or drops frame Error Correction
receiver identifies and corrects bit error(s) without resorting to retransmission
Half-duplex and full-duplex with half duplex nodes at both ends of link can
transmit but not at same time
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
5
Link Layer Services
Framing link access encapsulate datagram into frame adding header
trailer channel access if shared medium ldquoMACrdquo addresses used in frame headers to identify
source dest Reliable delivery between adjacent nodes
we learned how to do this already (chapter 3) seldom used on low bit error link (eg fiber) used in wireless links high error rates Q why both link-level and end-end reliability LL local correction (bet adjacent nodes) faster e-2-e is still needed because not all LL protocols
provide reliability
6
Link Layer Services (more)
Flow Control pacing between adjacent sending and receiving
nodes Error Detection
errors caused by signal attenuation noise receiver detects presence of errors
bull signals sender for retransmission or drops frame Error Correction
receiver identifies and corrects bit error(s) without resorting to retransmission
Half-duplex and full-duplex with half duplex nodes at both ends of link can
transmit but not at same time
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
6
Link Layer Services (more)
Flow Control pacing between adjacent sending and receiving
nodes Error Detection
errors caused by signal attenuation noise receiver detects presence of errors
bull signals sender for retransmission or drops frame Error Correction
receiver identifies and corrects bit error(s) without resorting to retransmission
Half-duplex and full-duplex with half duplex nodes at both ends of link can
transmit but not at same time
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
7
Adaptors Communicating
link layer implemented in ldquoadaptorrdquo (aka NIC)
Ethernet card PCMCI card 80211 card
sending side encapsulates datagram in
a frame adds error checking bits
rdt flow control etc
receiving side looks for errors rdt flow
control etc extracts datagram
passes to rcving node
adapter is semi-autonomous
link amp physical layers
sendingnode
frame
rcvingnode
datagram
frame
adapter adapter
link layer protocol
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
8
Multiple Access Links and Protocols
Two types of ldquolinksrdquo point-to-point
Single sender and single receiver Eg dial-up links point-to-point protocol (PPP)
broadcast (shared wire or medium) Multiple senders and multiple receivers Eg traditional Ethernet 80211 wireless LAN need Multiple Access protocol (MAC)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
9
Multiple Access protocols
Two or more simultaneous transmissions on a shared channel interference (collision)
Collision node receives two or more signals at the same time
Multiple Access (MAC) protocol distributed algorithm that determines how nodes share
channel ie determine when node can transmit communication about channel sharing must use channel
itself no out-of-band channel for coordination
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
10
MAC Protocols a taxonomy
Three broad classes
Channel Partitioning Channel Partitioning by time frequency or code
bull TDMA FDMA CDMA
Random Access channel not divided allow collisions ldquorecoverrdquo from collisions
ldquoTaking turnsrdquo Nodes take turns but nodes with more to send can
take longer turns Eg Token bus and token ring
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
11
Random Access Protocols
When node has packet to send transmit at full channel data rate R no a priori coordination among nodes
two or more transmitting nodes ldquocollisionrdquo
random access MAC protocol specifies how to detect collisions how to recover from collisions (eg via delayed
retransmissions) Examples of random access MAC protocols
Slotted ALOHA ALOHA CSMA CSMACD CSMACA
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
12
CSMA (Carrier Sense Multiple Access)
CSMA listen before transmit
If channel sensed idle transmit entire frame If channel sensed busy defer transmission
Can collisions still occur Yes because of propagation delay
two nodes may not hear each otherrsquos transmission
During collision entire packet transmission time is wasted detect collision and abort immediately (CSMACD)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
13
Ethernet
ldquodominantrdquo wired LAN technology cheap $20 for 100Mbs first widely used LAN technology Simpler cheaper than token LANs and ATM Kept up with speed race 10 Mbps ndash 10 Gbps
Metcalfersquos Ethernetsketch
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
14
Ethernet Frame Structure
Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame
Preamble 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011 used to synchronize receiver sender clock rates
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
15
Ethernet Frame Structure (more)
Addresses 6 bytes if adapter receives frame with matching destination
address or with broadcast address (eg ARP packet) it passes data in frame to net-layer protocol
otherwise adapter discards frame
Type indicates the higher layer protocol (mostly IP but others may be supported such as Novell IPX and AppleTalk)
CRC checked at receiver if error is detected the frame is simply dropped
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
16
Unreliable connectionless service
Connectionless No handshaking between sending and receiving adapter
Unreliable receiving adapter doesnrsquot send acks or nacks to sending adapter
stream of datagrams passed to network layer can have gaps
gaps will be filled if app is using TCP otherwise app will see the gaps
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
17
Ethernet CSMACD algorithm
1 Adaptor receives datagram from net layer amp creates frame
2 If adapter senses channel idle it starts to transmit frame If it senses channel busy waits until channel idle and then transmits
3 If adapter transmits entire frame without detecting another transmission the adapter is done with frame
4 If adapter detects another transmission while transmitting aborts and sends jam signal
5 After aborting adapter enters exponential backoff after the mth collision adapter chooses K at random from 012hellip2m-1 Adapter waits K512 bit times and returns to Step 2
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
18
Ethernetrsquos CSMACD (more)
Jam Signal make sure all other transmitters are aware of collision 48 bits
Bit time 01 microsec for 10 Mbps Ethernet for K=1023 wait time is about 50 msec
Exponential Backoff Goal adapt retransmission
attempts to estimated current load
heavy load random wait will be longer
first collision choose K from 01 delay is K 512 bit transmission times
after second collision choose K from 0123hellip
after ten collisions choose K from 01234hellip1023
Seeinteract with Javaapplet on AWL Web sitehighly recommended
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
19
CSMACD efficiency
Tprop = max prop between 2 nodes in LAN
ttrans = time to transmit max-size frame
Efficiency goes to 1 as tprop goes to 0
Goes to 1 as ttrans goes to infinity
Much better than ALOHA but still decentralized simple and cheap
transprop tt 51
1efficiency
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
20
Hubs
Hubs are essentially physical-layer repeaters bits coming from one link go out all other links at the same rate no frame buffering no CSMACD at hub adapters detect collisions provides net management functionality
twisted pair
hub
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
21
Interconnecting with hubs
Backbone hub interconnects LAN segments Extends max distance between nodes But individual segment collision domains become one large
collision domain Canrsquot interconnect 10BaseT amp 100BaseT
hub
hubhub
hub
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
22
Switch
Link layer device stores and forwards Ethernet frames examines frame header and selectively forwards
frame based on MAC dest address when frame is to be forwarded on segment uses
CSMACD to access segment transparent
hosts are unaware of presence of switches plug-and-play self-learning
switches do not need to be configured
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
23
Forwarding
bull How to determine onto which LAN segment to forward framebull Looks like a routing problem
hub
hubhub
switch1
2 3
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
24
Self learning
A switch has a switch table entry in switch table
(MAC Address Interface Time Stamp) stale entries in table dropped (TTL can be 60 min)
switch learns which hosts can be reached through which interfaces
when frame received switch ldquolearnsrdquo location of sender incoming LAN segment
records senderlocation pair in switch table
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
25
Switch example
Suppose C sends frame to D
Switch receives frame from C destined to D notes in switch table that C is on interface 1 because D is not in table switch forwards frame into
interfaces 2 and 3
frame received by D
hub
hub hub
switch
A
B CD
EF
G H
I
address interface
ABEG
1123
12 3
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
26
Switch traffic isolation switch installation breaks subnet into LAN segments
switch filters packets same-LAN-segment frames not usually forwarded
onto other LAN segments segments become separate collision domains
hub hub hub
switch
collision domain collision domain
collision domain
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
27
Switches dedicated access
Switch with many interfaces Hosts have direct connection
to switch No collisions full duplex
Switching A-to-Arsquo and B-to-Brsquo simultaneously no collisions
switch
A
Arsquo
B
Brsquo
C
Crsquo
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
28
Institutional network
hub
hubhub
switch
to externalnetwork
router
IP subnet
mail server
web server
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
29
Switches vs Routers
both store-and-forward devices Routers network layer devices Switches link layer devices faster processing
Routers maintain routing tables implement routing algorithms handle complex topologies find efficient paths
Switches maintain switch tables implement learning algorithms handle simpler (spanning tree) topologies paths may not be optimal
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
30
MAC Addresses
32-bit IP address network-layer address used to get datagram to destination IP subnet
MAC (LAN physical or Ethernet) address used to get frame from one interface to another
physically-connected interface (same network) 48 bit MAC address (for most LANs)
burned in the adapter ROM
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
31
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address =FF-FF-FF-FF-FF-FF
= adapter
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN(wired orwireless)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
32
MAC Address (more)
MAC address allocation administered by IEEE manufacturer buys portion of MAC address space (to
assure uniqueness) Analogy
(a) MAC address like Social Insurance Number
(b) IP address like postal address MAC flat address portability
can move LAN card from one LAN to another
IP hierarchical address NOT portable depends on IP subnet to which node is attached
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
33
MAC and IP addresses
Why do we have TWO addresses (IPMAC) Do we have to have MAC addresses
Yes we must have both To allow different network-layer protocols over same
card (eg IP Novell IPX DECnet)
Enable flexibility mobility of cards
Efficiency imagine that nodes have only IP addresses ALL packets sent over LAN will be forwarded by NIC to the IP layer too many useless interrupts
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
34
ARP Address Resolution Protocol
Each IP node (Host Router) on LAN has ARP table
ARP Table IPMAC address mappings for some LAN nodes
lt IP address MAC address TTLgt
TTL (Time To Live) time after which address mapping will be forgotten (typically 20 min)
ARP determines MAC address of node given its IP address
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
LAN
237196723
237196778
237196714
237196788
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
35
ARP protocol Same LAN (network)
A wants to send datagram to B and Brsquos MAC address not in Arsquos ARP table
A broadcasts ARP query packet containing Bs IP address
Dest MAC address = FF-FF-FF-FF-FF-FF
all machines on LAN receive ARP query
B receives ARP packet replies to A with its (Bs) MAC address
frame sent to Arsquos MAC address (unicast)
A caches (saves) IP-to-MAC address pair in its ARP table until information becomes old (times out)
soft state information that times out (goes away) unless refreshed
ARP is ldquoplug-and-playrdquo nodes create their ARP
tables without intervention from net administrator
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
36
Routing to another LAN
walkthrough send datagram from A to B via R
assume A knows Brsquos IP address
Two ARP tables in router R one for each IP network (LAN)
A
RB
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)
37
Detailed steps A creates datagram with source A destination B A uses ARP to get Rrsquos MAC address for
111111111110 A creates link-layer frame with Rs MAC address as
dest frame contains A-to-B IP datagram Arsquos adapter sends frame Rrsquos adapter receives frame R removes IP datagram from Ethernet frame sees it
is destined to B R uses ARP to get Brsquos MAC address R creates frame containing A-to-B IP datagram
sends to B
Routing to another LAN (contrsquod)