school of computing science simon fraser university

37
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture and CMPT 771/471: Internet Architecture and Protocols Protocols Link Layer Link Layer Instructor: Dr. Mohamed Hefeeda Instructor: Dr. Mohamed Hefeeda

Upload: keziah

Post on 06-Jan-2016

16 views

Category:

Documents


1 download

DESCRIPTION

School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture and Protocols Link Layer Instructor: Dr. Mohamed Hefeeda. Review of Basic Networking Concepts. Internet structure Protocol layering and encapsulation Internet services and socket programming - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: School of Computing Science Simon Fraser University

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)

Page 2: School of Computing Science Simon Fraser University

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)

Page 3: School of Computing Science Simon Fraser University

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)

Page 4: School of Computing Science Simon Fraser University

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)

Page 5: School of Computing Science Simon Fraser University

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)

Page 6: School of Computing Science Simon Fraser University

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)

Page 7: School of Computing Science Simon Fraser University

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)

Page 8: School of Computing Science Simon Fraser University

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)

Page 9: School of Computing Science Simon Fraser University

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)

Page 10: School of Computing Science Simon Fraser University

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)

Page 11: School of Computing Science Simon Fraser University

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)

Page 12: School of Computing Science Simon Fraser University

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)

Page 13: School of Computing Science Simon Fraser University

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)

Page 14: School of Computing Science Simon Fraser University

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)

Page 15: School of Computing Science Simon Fraser University

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)

Page 16: School of Computing Science Simon Fraser University

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)

Page 17: School of Computing Science Simon Fraser University

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)

Page 18: School of Computing Science Simon Fraser University

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)

Page 19: School of Computing Science Simon Fraser University

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)

Page 20: School of Computing Science Simon Fraser University

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)

Page 21: School of Computing Science Simon Fraser University

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)

Page 22: School of Computing Science Simon Fraser University

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)

Page 23: School of Computing Science Simon Fraser University

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)

Page 24: School of Computing Science Simon Fraser University

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)

Page 25: School of Computing Science Simon Fraser University

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)

Page 26: School of Computing Science Simon Fraser University

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)

Page 27: School of Computing Science Simon Fraser University

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)

Page 28: School of Computing Science Simon Fraser University

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)

Page 29: School of Computing Science Simon Fraser University

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)

Page 30: School of Computing Science Simon Fraser University

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)

Page 31: School of Computing Science Simon Fraser University

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)

Page 32: School of Computing Science Simon Fraser University

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)

Page 33: School of Computing Science Simon Fraser University

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)

Page 34: School of Computing Science Simon Fraser University

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)

Page 35: School of Computing Science Simon Fraser University

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)

Page 36: School of Computing Science Simon Fraser University

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)

Page 37: School of Computing Science Simon Fraser University

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)