Chapter 2: Direct Link Networks (continued) - PowerPoint PPT Presentation

About This Presentation
Title:

Chapter 2: Direct Link Networks (continued)

Description:

Error correction although feasible, is not enough to handle all kinds of errors ... 6 bytes -- represented as six numbers separated by colons: 8:0:2b:e4:b:1:2. ... – PowerPoint PPT presentation

Number of Views:75
Avg rating:3.0/5.0
Slides: 39
Provided by: tri549
Learn more at: http://alumni.cs.ucr.edu
Category:

less

Transcript and Presenter's Notes

Title: Chapter 2: Direct Link Networks (continued)


1
Chapter 2 Direct Link Networks (continued)
  • Slide Set 5

2
Reminder Announcements
  • Quiz January 27th.
  • Chapters 1 and 2.1 to 2.6 (Upto this set of
    slides)
  • Bring Scantron sheets, calculators

3
In this set..
  • Reliable Transmissions -- retransmissions.
  • Ethernet

4
Why retransmissions ?
  • Error correction although feasible, is not enough
    to handle all kinds of errors -- especially burst
    errors.
  • Corrupt frames cannot be deciphered and are
    therefore dropped.
  • Retransmissions needed to provide reliability.

5
ACKs and Time-outs
  • When frames are sent piggyback an acknowledgement
    (ACK) for received packets onto sent packets.
  • If no ACK received up to a preset time-out,
    resend frame.
  • Called ARQ -- Automatic Repeat request.

1
100
Ack 1
6
Stop and Wait
  • Allow only one outstanding packet at any given
    time.
  • If ACK not received within time-out, send again.

7
How efficient is Stop and Wait ?
  • Consider a 1.5 Mbps link with 45 ms RTT.
  • BW - Delay product 67.5 Kb 8KB.
  • You can fill 8 Kilo bytes of data prior to
    receiving an ACK.
  • However, if your frame size is 1 KB, you are
    using only 1/8 of the capacity.
  • Inefficient.

8
Sliding Window
  • What we really like is that the 9th frame be
    transmitted when ACK for the first frame arrives
    ).
  • Say we do this -- A window of packets sent -- as
    ACKs are received window slides i.e., more
    packets sent.
  • Now what do we need in addition ?
  • Need to know which packets have been received and
    which have not.
  • Packets labeled using sequence numbers.

9
Some definitions
  • We have a window of packets sent -- Send Window
    Size or SWS.
  • Last Acknowledgement received is denoted LAR.
  • LFS represents the last frame sent.
  • NOTE LFS - LAR lt SWS.

10
Sender Functions
  • When an ACK is received, the LAR moves to the
    right.
  • This allows for the transmission of an
    additional frame.

11
Receiver functions
Notation RWS -- Receive Window Size LAF --
Largest Acceptable Frame. LFR -- Last Frame
Received.
  • When frame with Seq_Num arrives
  • If Seq_Num lt LFR or Seq Num gt LAF, discard.
  • Frame is outside window.
  • If LFR lt Seq_Num lt LAF, accept frame.
  • Frame within window.
  • Let Seq_Num_to_Ack be the largest sequence number
    yet to be acked. This implies, all frames lt
    Seq_Num_to_Ack have been received.
  • LFR Seq_Num_to_Ack
  • Adjust LAF LFR RWS.

12
An Example
  • Let LFR 5 and RWS 4.
  • This implies LAF 9
  • If packets 7 and 8 arrive (not 6), they are
    buffered.
  • Note that they are out of order.
  • Typically, Receiver will resend an ACk for packet
    5.
  • When 6 arrives, it can cumulatively ACK all
    buffered packets i.e., it ACKs 8 and moves LFR to
    8 and LAF to 12.

13
Other possibilities
  • Send NAK (negative acknowledgement) for lost
    packets -- example for 6, when 7 is received.
  • Duplicate ACKs -- send an ACK for 5 again when 7
    is received to trigger retransmission of 6.
  • Selective ACKs Explicitly ACK frames that are
    received -- more complex.

14
Setting the Window Size
  • SWS -- Set considering the BW product.
  • RWS -- Receiver can set it to something
    appropriate -- may depend on buffering resources.
  • If RWS 1 what happens to out of order frames ?

15
Sequence number wrapping
  • Sequence numbers are finite -- thus there is a
    need to reuse -- called wrap around.
  • What is the relationship between the SWS and
    MaxSeqNum ?

16
Maximum Sequence Number and SWS
  • Should it not be SWS lt MaxSeqNum 1 ?
  • Let us consider an example
  • Sender has eight Seq Nums from 0 to 7.
  • SWS RWS 7.
  • Sender transmits frames 0-6
  • Receiver gets them, ACKs but ACKs get lost.
  • Receiver expects 7 and next 0...5. But sender
    sends the previous 0..5.
  • When the receiver gets these, he cannot
    distinguish.
  • Thus, when RWS SWS, SWS lt (MaxSeqNum1)/2.
    (Verify that system works).

17
Sequence Numbers and SWS
  • For other cases i.e., when RWS is not equal to
    SWS, other rules may apply.
  • Depends on the specific case.
  • A different way with TCP -- we will see later.
  • Easy solution -- large Sequence number space.

18
Flow Control
  • Feedback control that allows the receiver to
    throttle the sender.
  • Informs sender not only about what frames it has
    received but also how many more frames it can
    receive.
  • Need this in order to ensure that receiver buffer
    does not overflow.
  • Read rest of the parts on Sliding Window --
    implementation etc.

19
Multiple Access
  • Nodes send and receive frames over a shared
    direct link network.
  • One way -- contention based i.e., nodes contend
    to send -- example Ethernet.
  • A second way is scheduled access -- everyone
    knows when and how to send -- i.e., they take
    turns -- example Token Ring.
  • Decentralized operations needed.

20
CSMA - CD
  • Stands for Carrier Sense Multiple Access with
    Collision Detection.
  • Carrier sensing -- nodes can distinguish between
    an idle and a busy line.
  • Collision detection -- nodes can detect when a
    transmission is interfered with.
  • CSMA-CD can work on a bus architecture as an
    example.
  • Forms the basis for Ethernet.

21
The Ethernet Standard
  • Specified by IEEE.
  • Referred to as the 802.3 standard.
  • Initially started out as a standard for a bus
    topology -- 10 Mbps Ethernet.
  • Today, we have switched Ethernet -- Fast Ethernet
    with 100 Mbps and Gigabit Ethernet with 1000 Mbps.

22
Ethernet on a Coax
  • We consider the 10 Mbps Ethernet.
  • Ethernet implemented on a coax cable of up to
    500m.
  • Hosts tap into this cable and must be at least
    2.5 meters apart.
  • Transceiver which is attached detects idle line
    and drives signal.

23
Repeaters
  • Multiple Ethernet segments can be joined using
    repeaters.
  • Repeaters amplify and forward signals.
  • No more than four repeaters between any two
    hosts.
  • This ensures that maximum reach of Ethernet
    2500 meters.
  • We will see why this is needed later.

24
Ethernet -- Signal broadcasts
  • Signal broadcast over the multiple-access link
  • Broadcast means, sent to everyone.
  • Each node propagates signal in both directions.
  • Repeaters forward on all outgoing segments.
  • Note Ethernet uses Manchester encoding.

25
Cables
  • Use of a 10base2 cable -- 10 Mbps, base --gt it is
    baseband -- frequency shifting -- No more than
    200 m (actually only 185 m).
  • 10base T -- T stands for twisted pair.

26
Ethernet Frame
  • Nuggets (Other details refer book)
  • 64 bit preamble for synchronization.
  • 48 bit hardware or Ethernet address.
  • Ethernet frame size up to 1500 bytes of data
    and at least 46 bytes --gt padding may be
    necessary.
  • Note -- Body carries IP datagram -- length of IP
    header specified packet size -- can determine
    padding.

27
Ethernet Address
  • Ethernet address unique for every host.
  • Technically address belongs to adaptor and not
    host -- burned into ROM.
  • 6 bytes -- represented as six numbers separated
    by colons 802be4b12.
  • Each number corresponds to a pair of hexadecimal
    units -- one for each of the nibbles in the byte.

28
Addressing (cont)
  • Uniqueness Each manufacturer (e.g. AMD) is
    allocated a different prefix -- 802b --gt 24
    bits.
  • Every frame transmitted on the Ethernet is
    received by every adaptor on the network -- the
    address is recognized and only the particular
    adaptor recovers frame.
  • All 1s implies broadcast -- every adaptor picks
    it up.
  • An address that has the 1st bit set to 1 but is
    not the broadcast address is used for multicast.

29
Transmitter Algorithm
  • Intelligence mainly on transmitter side --
    receiver dumb.
  • Algorithm
  • If line idle, transmit frame immediately no
    negotiation with other adaptors.
  • If line busy, wait for the line to be idle and
    either
  • Transmit immediately (1-persistent version)
  • Transmit with a probability p (p-persistent
    version). With a probability q1-p, defer the
    transmission for a later time.

30
Why p-persistency?
  • Deference is needed since multiple transmitters
    may be waiting to transmit.
  • If for example, p 0.25, one could have up to 4
    transmitters on average -- only one would
    transmit when the line is free.
  • If multiple transmitters send simultaneously, a
    collision will result.

31
Waiting time
  • Each node looks at a slot time.
  • Each slot is of a duration equal to that of a
    frame.
  • When node has something to send, in each idle
    slot, it sends with a probability p, and defers
    to the next slot with a probability q and so on.
  • Just a note 1-persistency is good if nodes are
    lightly loaded -- has been found effective.

32
Upon Collision Detection
  • When an adaptor detects a collision, it transmits
    a 32 bit jamming sequence and stops transmission.
  • Minimal amount of data sent 64 bit preamble 32
    jamming sequence 96 bits.
  • How does a node detect a collision ? As nodes
    send, they monitor the line for other
    transmissions.

33
Runt frame
  • If two hosts that simultaneously transmit are
    very close to each other, they can detect a
    collision quickly.
  • In this case, enough only the 96 bits are sent --
    such a frame is called a runt frame.

34
Effects of distance on CD
  • What if nodes are far apart ? Let us consider the
    case where propagation time is d.
  • Let A transmit at time t.
  • As transmission jams that of node B which just
    begins transmission at td.
  • It then sends out a jamming sequence -- this
    takes another d seconds to reach A.
  • Thus, A knows of the collision at t2d.
  • A has to be transmitting at this time in order to
    realize the collision i.e., it has to be
    transmitting for 2d seconds.
  • Note that 2d RTT.
  • So transmission time should be at least equal to
    RTT.

35
Transmission time and RTT
  • To repeat Transmission time at least equal to
    RTT.
  • Now since RTT is at most 51.2 ms given that
    maximum reach is 2500 meters.
  • Thus, Transmission time at least 51.2 ms. On a 10
    Mbps link, transmitter needs to send at least 512
    bits.
  • Thus, we have a minimum size of 46 bytes for the
    body (header makes frame 512 bits).

36
Ethernet back-off
  • Once adaptor detects collision, it waits before
    trying again.
  • First delay -- selected randomly from the pair 0,
    (21-1)51.2 ms 0, 51.2 ms.
  • If a second collision is experienced, choose
    back-off time from 0, (22-1)51.2 ms i.e, from 0,
    51.2, 102.4 and 153.6 ms.
  • Thus, after N collisions choose a back-off time
    from 0.. (2N-1)51.2 ms.
  • In reality, Ethernet gives up after a maximum
    number of attempts which is 16. However, maximum
    value of N is fixed typically N 10.

37
Key properties
  • Ethernet works best when loads are light -- small
    number of active nodes.
  • Typically utilization is less than 30 .
  • Easy to administer and maintain inexpensive.
  • Currently, switched Ethernet.

38
Next time
  • Token Ring,
  • FDDI,
  • Wireless LANs.
Write a Comment
User Comments (0)
About PowerShow.com