School of Computing Science - PowerPoint PPT Presentation

1 / 38
About This Presentation
Title:

School of Computing Science

Description:

travel agent = routing algorithm. 5. Link Layer Services. Framing, link access: encapsulate datagram into frame, adding header, trailer. channel access if shared ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 39
Provided by: mohamedh
Category:

less

Transcript and Presenter's Notes

Title: School of Computing Science


1
  • School of Computing Science
  • Simon Fraser University
  • CMPT 880 Internet Architectures and Protocols
  • Introduction IV
  • Instructor 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

data-link layer has responsibility of
transferring datagram from one node to adjacent
node over a link
4
Link layer context
  • 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
  • Datagram transferred by different link protocols
    over different links
  • e.g., Ethernet on first link, frame relay on
    intermediate links, 802.11 on last link
  • Each link protocol provides different services
  • e.g., may or may not provide rdt over link

5
Link Layer Services
  • Framing, link access
  • encapsulate datagram into frame, adding header,
    trailer
  • channel access if shared medium
  • MAC addresses used in frame headers to identify
    source, dest
  • different from IP address!
  • Reliable delivery between adjacent nodes
  • we learned how to do this already (chapter 3)!
  • seldom used on low bit error link (fiber, some
    twisted pair)
  • 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
  • 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
datagram
rcving node
link layer protocol
sending node
adapter
adapter
  • receiving side
  • looks for errors, rdt, flow control, etc
  • extracts datagram, passes to rcving node
  • adapter is semi-autonomous
  • link physical layers
  • link layer implemented in adaptor (aka NIC)
  • Ethernet card, PCMCI card, 802.11 card
  • sending side
  • encapsulates datagram in a frame
  • adds error checking bits, rdt, flow control, etc.

8
Multiple Access Links and Protocols
  • Two types of links
  • point-to-point
  • Single sender and single receiver
  • E.g., dial-up links ? point-to-point protocol
    (PPP)
  • broadcast (shared wire or medium)
  • Multiple senders and multiple receivers
  • E.g., traditional Ethernet, 802.11 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, i.e., 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
  • TDMA, FDMA, CDMA
  • Random Access
  • channel not divided, allow collisions
  • recover from collisions
  • Taking turns
  • Nodes take turns, but nodes with more to send can
    take longer turns
  • E.g., 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 ? collision
  • random access MAC protocol specifies
  • how to detect collisions
  • how to recover from collisions (e.g., via delayed
    retransmissions)
  • Examples of random access MAC protocols
  • Slotted ALOHA
  • ALOHA
  • CSMA, CSMA/CD, CSMA/CA

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 others transmission
  • During collision, entire packet transmission time
    is wasted ? detect collision and abort
    immediately (CSMA/CD)

13
Ethernet
  • dominant 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 10 Gbps

Metcalfes Ethernet sketch
14
Star topology
  • Bus topology popular through mid 90s
  • Now star topology prevails
  • Connection choices hub or switch (more later)

hub or switch
15
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

16
Ethernet Frame Structure (more)
  • Addresses 6 bytes
  • if adapter receives frame with matching
    destination address, or with broadcast address
    (e.g., 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

17
Unreliable, connectionless service
  • Connectionless No handshaking between sending
    and receiving adapter.
  • Unreliable receiving adapter doesnt 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

18
Ethernet CSMA/CD algorithm
  • 1. Adaptor receives datagram from net layer
    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 0,1,2,,2m-1. Adapter waits
    K?512 bit times and returns to Step 2

19
Ethernets CSMA/CD (more)
  • Jam Signal make sure all other transmitters are
    aware of collision 48 bits
  • Bit time 0.1 microsec for 10 Mbps Ethernet for
    K1023, 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 0,1 delay is K?
    512 bit transmission times
  • after second collision choose K from 0,1,2,3
  • after ten collisions, choose K from
    0,1,2,3,4,,1023

See/interact with Java applet on AWL Web
site highly recommended !
20
CSMA/CD 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

21
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 CSMA/CD at hub adapters detect collisions
  • provides net management functionality

22
Interconnecting with hubs
  • Backbone hub interconnects LAN segments
  • Extends max distance between nodes
  • But individual segment collision domains become
    one large collision domain
  • Cant interconnect 10BaseT 100BaseT

hub
hub
hub
hub
23
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
    CSMA/CD to access segment
  • transparent
  • hosts are unaware of presence of switches
  • plug-and-play, self-learning
  • switches do not need to be configured

24
Forwarding
1
3
2
  • How to determine onto which LAN segment to
    forward frame?
  • Looks like a routing problem...

25
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 learns location of
    sender incoming LAN segment
  • records sender/location pair in switch table

26
Switch example
  • Suppose C sends frame to D

address
interface
switch
1
A B E G
1 1 2 3
3
2
hub
hub
hub
A
I
F
D
G
B
C
H
E
  • 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

27
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

collision domain
collision domain
collision domain
28
Switches dedicated access
  • Switch with many interfaces
  • Hosts have direct connection to switch
  • No collisions full duplex
  • Switching A-to-A and B-to-B simultaneously, no
    collisions

A
C
B
switch
C
B
A
29
Institutional network
mail server
to external network
web server
router
switch
IP subnet
hub
hub
hub
30
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

31
MAC Addresses
  • 32-bit IP address
  • network-layer address
  • used to get datagram to destination IP subnet
  • MAC (or LAN or 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

32
MAC Address
Each adapter on LAN has unique LAN address
Broadcast address FF-FF-FF-FF-FF-FF
adapter
33
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

34
MAC and IP addresses
  • Why do we have TWO addresses (IP,MAC)? Do we have
    to have MAC addresses?
  • Yes, we must have both
  • To allow different network-layer protocols over
    same card (e.g., 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

35
ARP Address Resolution Protocol
  • Each IP node (Host, Router) on LAN has ARP table
  • ARP Table IP/MAC 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)

237.196.7.78
1A-2F-BB-76-09-AD
237.196.7.23
237.196.7.14
LAN
71-65-F7-2B-08-53
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
237.196.7.88
36
ARP protocol Same LAN (network)
  • 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 plug-and-play
  • nodes create their ARP tables without
    intervention from net administrator
  • A wants to send datagram to B, and Bs MAC
    address not in As ARP table.
  • A broadcasts ARP query packet, containing B's 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
    (B's) MAC address
  • frame sent to As MAC address (unicast)

37
Routing to another LAN
  • walkthrough send datagram from A to B via R
  • assume A knows Bs IP
    address
  • Two ARP tables in router R, one for each IP
    network (LAN)

A
R
B
38
Routing to another LAN (contd)
  • Detailed steps
  • A creates datagram with source A, destination B
  • A uses ARP to get Rs MAC address for
    111.111.111.110
  • A creates link-layer frame with R's MAC address
    as dest, frame contains A-to-B IP datagram
  • As adapter sends frame
  • Rs adapter receives frame
  • R removes IP datagram from Ethernet frame, sees
    its destined to B
  • R uses ARP to get Bs MAC address
  • R creates frame containing A-to-B IP datagram
    sends to B
Write a Comment
User Comments (0)
About PowerShow.com