CSE524: Lecture 15 - PowerPoint PPT Presentation

1 / 60
About This Presentation
Title:

CSE524: Lecture 15

Description:

(b) IP address: like postal address. MAC flat address = portability ... Calculate code using modulo 2 division ... Use error correcting codes to repair losses ... – PowerPoint PPT presentation

Number of Views:19
Avg rating:3.0/5.0
Slides: 61
Provided by: thef
Category:
Tags: codes | cse524 | lecture | postal

less

Transcript and Presenter's Notes

Title: CSE524: Lecture 15


1
CSE524 Lecture 15
  • Data-link layer
  • Functions

2
Administrative
  • No office hours next Wednesday
  • Demos 12/9
  • See web site for available slots
  • Sign up for a slot after class or via e-mail
  • Read e-mail message for instructions on what to
    submit before demo

3
Where were at
  • Internet architecture and history
  • Internet protocols in practice
  • Application layer
  • Transport layer
  • Network layer
  • Data-link layer
  • Functions
  • Specific link layer examples and devices
  • Physical layer

4
Data-link layer
5
Data-link layer
  • Two physically connected devices
  • host-router, router-router, host-host,
    host-switch, host-hub
  • Implemented on network adapter card
  • typically includes RAM, DSP chips, host bus
    interface, and link interface

network link physical
data link protocol
frame
phys. link
adapter card
6
Data-link layer functions
  • Moving datagrams between adjacent nodes
  • Digital to analog conversion
  • Framing
  • Physical addressing
  • Demux to upper protocol
  • Error detection and correction
  • Flow control
  • Reliable delivery
  • Security
  • Media access and quality of service

7
DL Digital to analog conversion
  • Bits sent as analog signals
  • Photonic pulses of a given wavelength over
    optical fiber
  • Electronic signals of a given voltage

8
DL Digital to analog conversion
  • Will cover electronic transmission (optical
    transmission left for you to research)
  • Biggest issue
  • When to sample voltage?
  • Detecting sequences involves clocking with the
    same clock
  • How to synchronize sender and receiver clocks?
  • Need easily detectible event at both ends
  • Signal transitions help resync sender and
    receiver
  • Need frequent transitions to prevent clock skew
  • http//www.mouse.demon.nl/ckp/telco/encode.htm

9
DL RZ
  • Return to Zero (RZ)
  • 1pulse to high, dropping back to low
  • 0no transition

10
DL NRZ-L
  • Non-Return to Zero Level (NRZ-L)
  • 1high signal, 0lower signal
  • Long sequence of same bit causes difficulty
  • DC bias hard to detect low and high detected by
    difference from average voltage
  • Clock recovery difficult
  • Used by Synchronous Optical Network (SONET)
  • SONET XORs bit sequence to ensure frequent
    transitions
  • Used in early magnetic tape storage

11
DL NRZ-L
12
DL NRZ-M
  • Non-Return to Zero Mark
  • Less power to transmit versus NRZ
  • 1signal transition at start of bit, 0no change
  • No problem with string of 1s
  • NRZ-like problem with string of 0s
  • Used in SDLC (Synchronous Data Link Control)
  • Used in modern magnetic tape storage

13
DL NRZ-S
  • Non-Return to Zero Space
  • 1no change, 0signal transition at start of bit
  • No problem with string of 0s
  • NRZ-like problem with string of 1s

14
DL Manchester (Bi-Phase-Level) coding
  • Used by Ethernet
  • 0low to high transition, 1high to low
    transition
  • Transition for every bit simplifies clock
    recovery
  • Not very efficient
  • Doubles the number of transitions
  • Circuitry must run twice as fast

15
DL Manchester coding
  • Encoding for 110100

Bit stream
1
1
0
1
0
0
Manchester encoding
16
DL Other coding schemes
  • Bi-Phase-Mark, Bi-Phase-Space
  • Level change at every bit period boundary
  • Mid-period transition determines bit
  • Bi-Phase-M 0no change, 1signal transition
  • Bi-Phase-S 0signal transition, 1no change

17
DL Other coding schemes
  • Differential Bi-Phase-Space, Differential
    Bi-Phase-Mark
  • Level change at every mid-bit period boundary
  • Bit period boundary transition determines bit
  • Diff-Bi-Phase-M 0signal transition, 1no change
  • Diff-Bi-Phase-S 0no change, 1signal transition

18
DL Framing
  • Data encapsulation for transmission over physical
    link
  • Data embedded within a link-layer frame before
    transmission
  • Data-link header and/or trailer added
  • Physical addresses used in frame headers to
    identify source and destination (not IP)

19
DL Fixed length framing
  • Length delimited
  • Beginning of frame has length
  • Single corrupt length can cause problems
  • Must have start of frame character to
    resynchronize
  • Resynchronization can fail if start of frame
    character is inside packets as well

20
DL Variable length framing
  • Byte stuffing
  • Special start of frame byte (e.g. 0xFF)
  • Special escape byte value (e.g. 0xFE)
  • Values actually in text are replaced (e.g. 0xFF
    by 0xFEFF and 0xFE by 0xFEFE)
  • Worst case can double the size of frame
  • Bit stuffing
  • Special bit sequence (0x01111110)
  • 0 bit stuffed after any 11111 sequence

21
DL Clock-Based Framing
  • Used by SONET
  • Fixed size frames (810 bytes)
  • Look for start of frame marker that appears every
    810 bytes
  • Will eventually sync up

22
DL Physical addressing
  • LAN (or MAC or physical) address
  • Used to get datagram from one interface to
    another physically-connected interface (same
    network)
  • IP address used to route between networks
  • 48 bit MAC address (for most LANs) burned in
    adapter ROM
  • ifconfig a
  • arp -a
  • Address space assigned and managed by IEEE
  • Manufacturer buys portion of MAC address space to
    ensure uniqueness
  • Special LAN broadcast address
  • FF-FF-FF-FF-FF-FF

23
DL Physical addressing
  • Why have separate IP and hardware addresses?
  • Assign adapters an IP address
  • Hardware only works for IP (no IPX, DECNET)
  • Must be reconfigured when moved
  • Use hardware address as network address
  • Need standardized fixed length hardware address
  • No route aggregation

24
DL Physical addressing
  • Analogy
  • (a) MAC address like Social Security
    Number
  • (b) IP address like postal address
  • MAC flat address gt portability
  • can move LAN card from one LAN to another
  • IP hierarchical address NOT portable
  • depends on network to which one attaches

25
DL ARP Address Resolution Protocol
  • Each IP node (Host, Router) on LAN has ARP
    module, table
  • ARP Table IP/MAC address mappings for some LAN
    nodes
  • lt IP address MAC address TTLgt
  • lt .. gt
  • TTL (Time To Live) time after which address
    mapping will be forgotten (typically 20 min)

26
DL ARP protocol
  • A knows B's IP address, wants to learn physical
    address of B
  • A broadcasts ARP query pkt, containing B's IP
    address
  • all machines on LAN receive ARP query
  • B receives ARP packet, replies to A with its
    (B's) physical layer address
  • A caches (saves) IP-to-physical address pairs
    until information becomes old (times out)
  • soft state information that times out (goes
    away) unless refreshed

27
DL Routing to another LAN
  • walkthrough routing from A to B via R
  • In routing table at source Host, find router
    111.111.111.110
  • In ARP table at source, find MAC address
    E6-E9-00-17-BB-4B, etc

A
R
B
28
  • A creates IP packet with source A, destination B
  • A uses ARP to get Rs physical layer address for
    111.111.111.110
  • A creates Ethernet frame with R's physical
    address as dest, Ethernet frame contains A-to-B
    IP datagram
  • As data link layer sends Ethernet frame
  • Rs data link layer receives Ethernet frame
  • R removes IP datagram from Ethernet frame, sees
    its destined to B
  • R uses ARP to get Bs physical layer address
  • R creates frame containing A-to-B IP datagram
    sends to B

A
R
B
29
DL RARP, BOOTP, DHCP
  • ARP Given an IP address, return a hardware
    address
  • RARP Given a hardware address, give me the IP
    address
  • DHCP, BOOTP Similar to RARP
  • Hosts (host portion)
  • hard-coded by system admin in a file
  • DHCP Dynamic Host Configuration Protocol
    dynamically get address plug-and-play
  • host broadcasts DHCP discover msg
  • DHCP server responds with DHCP offer msg
  • host requests IP address DHCP request msg
  • DHCP server sends address DHCP ack msg

30
DL Demux to upper protocol
  • Protocol type specification interfaces to network
    layer
  • Data-link layer can support any number of network
    layers
  • Type field in data-link header specifies network
    layer of packet
  • IP is one of many network layers
  • Each data-link layer defines its own protocol
    type numbering for network layer

31
DL Demux to upper protocol
  • http//www.cavebear.com/CaveBear/Ethernet/type.htm
    l
  • Some Ethernet protocol types
  • 0800 DOD Internet Protocol (IP)
  • 0806 Address Resolution Protocol (ARP)
  • 8037 IPX (Novell Netware)
  • 80D5 IBM SNA Services
  • 809B EtherTalk (AppleTalk over Ethernet)

32
DL Error detection/correction
  • Errors caused by signal attenuation, noise.
  • Receiver detects presence of errors
  • Possible actions
  • Signal sender for retransmission
  • Drops frame
  • Correct bit errors if possible and continue

33
DL Error detection/correction
  • EDC Error Detection and Correction bits
    (redundancy)
  • D Data protected by error checking, may
    include header fields
  • Error detection not 100 reliable!
  • protocol may miss some errors, but rarely
  • larger EDC field yields better detection and
    correction

34
DL Parity checking
Two Dimensional Bit Parity Detect and correct
single bit errors
Single Bit Parity Detect single bit errors
0
0
35
DL Checksums
  • Sender
  • treat segment contents as sequence of 16-bit
    integers
  • checksum addition (1s complement sum) of
    segment contents
  • simple to implement, weak detection (easily
    tricked by common bit error patterns)
  • used by TCP, UDP, IP..
  • sender puts checksum value into header
  • Receiver
  • compute checksum of received segment
  • check if computed checksum equals checksum field
    value
  • NO - error detected
  • YES - no error detected. But maybe errors
    nonethless? More later .

36
DL Cyclic Redundancy Check (CRC)
  • Polynomial code
  • Treat packet bits a coefficients of n-bit
    polynomial
  • Choose r1 bit generator polynomial (well known
    chosen in advance)
  • Add r bits to packet such that message is
    divisible by generator polynomial
  • Better loss detection properties than checksums
  • All single bit errors, all double bit errors, all
    odd-numbered errors, burst errors less than r

37
DL Cyclic Redundancy Check (CRC)
  • Calculate code using modulo 2 division of data
    by generator polynomial
  • Subtraction equivalent to XOR
  • Weak definition of magnitude
  • X gt Y iff position of highest 1 bit of X is the
    same or greater than the highest 1 bit of Y
  • Record remainder after division and send after
    data
  • Result divisible by generator polynomial

38
DL Cyclic Redundancy Check (CRC)
39
DL CRC example
  • Data
  • 101110
  • Generator Polynomial
  • x3 1 (1001)
  • Send
  • 101110011

40
DL CRC example
  • Data
  • 10000
  • Generator Polynomial
  • x2 1 (101)
  • Send
  • 1000001

G
10101
101 1000000 101 010
000 100 101
010 000 100
101 01
D
R
41
DL Cyclic Redundancy Check (CRC)
  • CRC-16 implementation
  • Shift register and XOR gates

42
DL CRC polynomials
  • CRC-16 x16 x15 x2 1 (used in HDLC)
  • CRC-CCITT x16 x12 x5 1
  • CRC-32 x32 x26 x23 x22 x16 x12 x11
    x10 x8 x7 x5 x4 x2 x 1 (used in
    Ethernet)

43
DL Forward error correction
  • FEC
  • Use error correcting codes to repair losses
  • Add redundant information which allows receiver
    to correct bit errors
  • Suggest looking at information and coding theory
    work.

44
DL Flow control
  • Pacing between sender and receiver
  • Sender prevented from overrunning receiver
  • Ready-To-Send, Clear-To-Send

45
DL Reliable delivery
  • Reliability at the link layer
  • Handled in a similar manner to transport
    protocols
  • When and why should this be used?
  • Rarely done over twisted-pair or fiber optic
    links
  • Usually done over lossy links for performance
    improvement (versus correctness)

46
DL Security
  • Mainly for broadcast data-link layers
  • Encrypt payload of higher layers
  • Hide IP source/destination from eavesdroppers
  • Important for wireless LANs especially
  • Parking lot attacks
  • 802.11b and WEP
  • If time permits, security will be covered at the
    end of the course.

47
DL Media access and quality of service
  • How and when can a node transmit?
  • Directly controls per-hop quality-of-service
  • Three types of links
  • point-to-point (single wire, e.g. PPP, SLIP)
  • broadcast (shared wire or medium e.g, Ethernet,
    Wavelan, etc.)
  • switched (e.g., switched Ethernet, ATM etc)

48
DL Media access
  • Point-to-point link and switched media no problem
  • Broadcast links?
  • Network arbitration
  • Give everyone a fixed time/freq slot?
  • Ok for fixed bandwidth (e.g., voice)
  • What if traffic is bursty?
  • Centralized arbiter
  • Ex cell phone base station
  • Single point of failure
  • Distributed arbitration
  • Aloha/Ethernet
  • Humans use multiple access protocols all the time

49
DL Media access protocols
  • single shared communication channel
  • two or more simultaneous transmissions by nodes
    interference
  • only one node can send successfully at a time
  • multiple access protocol
  • distributed algorithm that determines how
    stations share channel, i.e., determine when
    station can transmit
  • communication about channel sharing uses channel
    itself!
  • what to look for in multiple access protocols
  • synchronous or asynchronous
  • information needed about other stations
  • robustness (e.g., to channel errors)
  • performance

50
DL Media access protocols
  • Three broad classes
  • Channel Partitioning
  • divide channel into smaller pieces (time slots,
    frequency)
  • allocate piece to node for exclusive use
  • Random Access
  • allow collisions
  • recover from collisions
  • Taking turns
  • tightly coordinate shared access to avoid
    collisions

Goal efficient, fair, simple, decentralized
51
DL Channel Partitioning MAC protocols
  • Synchronous TDMA time division multiple access
  • TDM (Time Division Multiplexing) channel divided
    into N time slots, one per user access to
    channel in "rounds"
  • each station gets fixed length slot (length pkt
    trans time) in each round
  • unused slots go idle
  • inefficient with low duty cycle users and at
    light load.
  • example 6-station LAN, 1,3,4 have pkt, slots
    2,5,6 idle

52
DL Channel Partitioning MAC protocols
  • FDMA frequency division multiple access
  • channel spectrum divided into frequency bands
  • each station assigned fixed frequency band
  • unused transmission time in frequency bands go
    idle
  • example 6-station LAN, 1,3,4 have pkt, frequency
    bands 2,5,6 idle

time
frequency bands
53
DL Channel Partitioning MAC protocols
  • CDMA (Code Division Multiple Access)
  • unique code assigned to each user ie, code set
    partitioning
  • used mostly in wireless broadcast channels
    (cellular, satellite,etc)
  • each user has own chipping sequence (ie, code)
    to encode data
  • encoded signal (original data) X (chipping
    sequence)
  • decoding inner-product of encoded signal and
    chipping sequence
  • allows multiple users to coexist and transmit
    simultaneously with minimal interference (if
    codes are orthogonal)

54
DL Channel Partitioning MAC protocols
  • CDMA Encode/Decode

55
DL Channel Partitioning MAC protocols
  • CDMA two sender interference

56
DL Random access protocols
  • Asynchronous TDMA
  • When node has packet to send
  • transmit at full channel data rate R.
  • no a priori coordination among nodes
  • Two or more transmitting nodes -gt collision
  • To avoid deterministic collisions randomize
  • Random-access MAC protocols
  • specify how to recover from collisions (e.g., via
    delayed retransmissions)
  • Examples slotted ALOHA, ALOHA, CSMA, CSMA/CD

57
DL Random access MAC protocols
  • Slotted Aloha
  • Time is divided into equal size slots ( pkt
    trans. time)
  • Node with new arriving pkt transmit at beginning
    of next slot
  • if collision retransmit pkt in future slots with
    probability p, until successful.

Success (S), Collision (C), Empty (E) slots
58
DL Random access MAC protocols
  • Slotted Aloha efficiency
  • Q what is max fraction slots successful?
  • A Suppose N stations have packets to send
  • each transmits in slot with probability p
  • prob. successful transmission S is
  • by single node S p (1-p)(N-1)
  • by any of N nodes
  • S Prob (only one transmits)
  • N p (1-p)(N-1)
  • choosing optimum p as n -gt infty
    ...
  • 1/e .37 as N -gt infty

59
DL Random access MAC protocols
  • Pure (unslotted) ALOHA
  • Simpler, no synchronization
  • Packet needs transmission
  • Send without awaiting for beginning of slot
  • Collision probability increases
  • Packet sent at t0 collides with other packets
    sent in t0-1, t01

60
DL Pure Aloha (cont.)
  • P(success by given node) P(node transmits) .
  • P(no
    other node transmits in p0-1,p0 .
  • P(no
    other node transmits in p0,p01
  • p .
    (1-p)(N-1) . (1-p) (N-1)
  • P(success by any of N nodes) N p . (1-p) (N-1).
    (1-p) (N-1)

  • choosing optimum p as n -gt infty ...
    1/(2e) .18

S throughput goodput (success rate)
Write a Comment
User Comments (0)
About PowerShow.com