scaling csma/cd to 1000 mb/s an update -...

24
1 802.3z TF Scaling CSMA/CD to 1000 Mb/s An Update Howard M. Frazier, Jr. Sun Microsystems Computer Company Internet and Networking Products Group 9-July-1996 IEEE 802.3z TF

Upload: others

Post on 24-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

1

Mb/s

802.3z TF

Scaling CSMA/CD to 1000 An Update

Howard M. Frazier, Jr.Sun Microsystems Computer Company

Internet and Networking Products Group9-July-1996

IEEE 802.3z TF

Page 2: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

2

802.3z TF

Outline

■ Introduction

■ Topologies

■ Bit Budget

■ Issues

■ Solution

■ Impact on MAC

■ MAC Parameters

■ Performance

■ Possible refinements

■ Conclusions

Page 3: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

3

b/s switched

omplicated

b/s

iculously

essential

802.3z TF

Introduction

■ Scaling CSMA/CD to 1000 Mb/s is a good idea

■ Widely implemented, well understood protocol

■ Demonstrated low cost at 10 and 100 Mb/s

■ Cost benefit of 1000 Mb/s shared versus 1000 M

■ Scaling CSMA/CD to 1000 Mb/s is slightly more cthan scaling it to 100 Mb/s

■ Wire delays are 10x larger (in BT) than at 100 M

■ “shift the decimal point” approach results in a ridsmall collision domain diameter

■ Backwards compatibility with 10 and 100 Mb/s is

Page 4: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

4

ne repeater

domain

desktops

desktops

802.3z TF

Topologies

■ Most useful CSMA/CD topologies have at least o

CSMA/CD used in a single repeater collision within a server room

1000 Mb/s repeater

100/1000 switches

10/1000 switches

high end

low end

servers

1000

1000

1000

1000

1000

100

10

Page 5: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

5

omains

esktops

sktops

desktops

802.3z TF

Topologies (cont)

CSMA/CD used in single repeater collision dwith 1000 Mb/s horizontal runs

1000 Mb/s switch

1000 Mb/s repeaters

100/1000 switches

higher end d

high end de

servers &ultra high end

1000

1000

1000

1000

1000

1000

100

Page 6: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

6

esktops must

802.3z TF

Topologies (cont)

■ Horizontal runs are 100 meters maximum

■ A CSMA/CD topology with horizontal runs out to dsupport a diameter of at least 200 meters

100 m100 m

200 m

Page 7: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

7

ted bit budget

802.3z TF

Bit Budgets

■ Bit budget calculations are highly dependent on:

■ Physical layer signalling method and architecture

■ MAC <=> PHY data path width

■ MAC state machine frequency

■ Repeater data path width

■ Repeater state machine frequency

■ Fairness issues

■ See Stephen Haddock’s presentation for an updaanalysis

Page 8: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

8

es,

istic

512 bits

ytes

802.3z TF

Bit Budgets (cont)

■ Conclusions from bit budget analysis

■ Cable delay dominates, but even with short cablthe bit budget exceeds 512 BT

■ DTE and repeater delay estimates may be optim

■ The minimum frame size must be increased fromto achieve useful topologies at 1000 Mb/s

■ Recommend a new minimum frame size of 512 B

■ Simply change bits to bytes!

Page 9: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

9

FrameSize

plex linksum size

s or 10 Mb/ss

the 802.3 MACet frame format

e only onether Ethernet

802.3z TF

Issues

■ It’s not that simple

■ Trying to solve the problem by increasing the minto 512 Bytes has harmful side effects

■ Degrades maximum small packet rate on full duwhere it is not necessary to use the larger minim

■ Can’t propagate the inflated packets to 100 Mb/networks, the performance loss would be hideou

■ Can’t rely on the padding/stripping mechanism inwhen using protocol stacks which use the Ethern

■ Must find a way to extend the minimum frame siz1000 Mb/s, CSMA/CD networks, regardless of whor 802.3 frame format is used

Page 10: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

10

vent without

bols

ulation

nd passing

802.3z TF

Solution

■ Conceptually, extend the duration of the carrier eextending the data field, or altering the FCS field

■ Introduce a new mechanism which appendsnon-data symbols to the end of short frames

■ Extend the collision window to include these sym

■ Include the extension in the fragment discard calc

■ Remove the extension before checking the FCS athe frame to LLC

Page 11: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

11

d are

an integer

FCS Extension

802.3z TF

Solution (cont)

■ Frame extension

■ The extension symbols are non-data symbols, anrecognized as such by the MAC and the PHY

■ The extension starts on an octet boundary, and isnumber of octets in length

Preamble SFD DA SAType/Length

Data

64 bytes min

512 bytes min

FCS Coverage

Duration of Carrier Event

Page 12: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

12

, see 4.4}

at end of frame}

802.3z TF

Impact on MAC

■ New const (4.2.7.1)const

extendSize = ...; {in bits, implementation-dependentextensionBit = ...; {a new type of non-data bit}

■ New Transmit State Variable (4.2.7.2)var

extension:0..extendSize; {length of extension}

■ New Receive State Variable (4.2.7.3)var

extendCount: 0..extendSize; {count of extension bits

Page 13: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

13

802.3z TF

Impact on MAC

■ Mod to StartTransmit (4.2.8)procedure StartTransmit;begin

extension := 0;currentTransmitBit := 1;lastTransmitBit := frameSize;transmitSucceeding := true;transmitting := true;lastHeaderBit := headerSize

end; {StartTransmit}

■ Mod to StartReceive (4.2.9)procedure StartReceive;

begincurrentReceiveBit :=1;extendCount := 0;receiving := true

end; {StartReceive}

Page 14: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

14

ize + extendSize);}

n

smitBit]);

802.3z TF

Impact on MAC (Transmitter)

■ Mod to BitTransmitter (4.2.8)process BitTransmitter;begin

cycle {outer loop}if transmitting thenbegin {inner loop}

if halfDuplex then (extension : = minFrameSPhysicalSignalEncap; {send preamble and sfdwhile transmitting dobegin

if currentTransmitBit > lastTransmitBit theTransmitBit(extensionBit)

elseTransmitBit(outgoingFrame[currentTran

if newCollision then StartJam else NextBitend;

end; {inner loop}end; {outer loop}

end; {BitTransmitter}

Page 15: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

15

tBit)))

802.3z TF

Impact on MAC (Transmitter)

■ Mod to NextBit (4.2.8)procedure NextBit;

begincurrentTransmitBit := currentTransmitBit + 1;transmitting := ((currentTransmitBit ≤ lastTransmi

or (currentTransmitBit ≤ extensionend; {NextBit}

■ Mod to StartJam (4.2.8)procedure StartJam;

begincurrentTransmitBit := 1;lastTransmitBit := jamSize;extension := 0;newCollision := false

end; {StartJam}

Page 16: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

16

e + extendSize) then

802.3z TF

Impact on MAC (Transmitter)

■ Mod to WatchForCollision (4.2.8)procedure WatchForCollision;begin

if transmitSucceeding and collisionDetect thenbegin

if currentTransmitBit > (minFrameSize - headerSizlateCollisionError := true;

newCollision:= true;transmitSucceeding := false

endend {WatchForCollision}

Page 17: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

17

nd sfd}dia Access}

; 1

802.3z TF

Impact on MAC (Receiver)

■ Mod to BitReceiver (4.2.9)process BitReceiver;

var b: Bit;begin

cycle {outer loop}while receiving dobegin {inner loop}if currentReceiveBit = 1 then

PhysicalSignalDecap; {strip off the preamble ab := ReceiveBit; {get next bit from physical Meif receiveDataValid then

if b = extensionBit thenextendCount := extendCount + 1elsebegin {append bit to frame}

incomingFrame[currentReceiveBit] := bcurrentReceiveBit := currentReceiveBit +

endreceiving := receiveDataValidend {inner loop}frameSize := currentReceiveBit - 1 + extendCount

end {outerloop}end; {BitReceiver}

Page 18: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

18

arriving}

tet boundary}

eSize + extendSize));

ize);

802.3z TF

Impact on MAC (Receiver)

■ Mod to ReceiveLinkMgmt (4.2.9)procedure ReceiveLinkMgmt;begin

repeatStartReceive;while receiving do nothing; {wait for frame to finishexcessBits := frameSize mod 8;frameSize := frameSize - excessBits; {truncate to ocif halfDuplex thenbegin

receiveSucceeding :=((frameSize ≥ ³(minFramframeSize := frameSize - extendCount

endelse

receiveSucceeding := (frameSize ≥ minFrameSuntil receiveSucceeding

end;

Page 19: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

19

802.3z TF

MAC Parameters

■ New Parameter Table 4.4.2.4

Parameters Values

slotTime 4096 bit timesinterFrameGap 96 nsattemptLimit 16backoffLimit 10jamSize 32 bitsmaxFrameSize 1518 octetsminFrameSize 512 bits (64 octets)addressSize 48 bitsextendSize 448 octets

Page 20: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

20

La JollaP packets)

2000512

7440.007440.00

800.0015.00

0.91420.0340

802.3z TF

Performance

■ Experimental and simulation results presented in (4 node scaled 100BASE-FX using 1500 byte UD

diameter 200 800 1200 1600slottime 64 128 174 256txpps 7805.66 7681.15 7626.95 7560.00rxpps 7803.63 7691.94 7634.31 7560.00colps 4835.01 2641.13 1940.92 1420.00oerrps 123.45 61.25 46.08 30.00udput 0.9592 0.9439 0.9372 0.9289colut 0.0325 0.0313 0.0301 0.0313

0 64 128 192 256 320 384 448 512

0.9000

0.9200

0.9400

0.9600

0.9800

1.0000

Page 21: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

21

P

cket size

simulationtion

802.3z TF

erformance (cont)

■ Subsequent simulations used “workgroup average” padistribution derived from some “real world” sampling

■ See Mohan Kalkunte’s presentation from Wakefield forresults using “workgroup average” packet size distribu

Page 22: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

22

802.3z TF

Page 23: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

23

field

omain

mount of

field

time

802.3z TF

Possible refinements

■ Reduce backoffLimit to 9, 8, or 7

■ See Stephen Haddock’s presentation from Wake

■ Assume smaller number of nodes per collision d

■ ?Should mitigate “Capture Effect”?

■ ?May increase aggressiveness, and hence the abandwidth consumed by collision events?

■ Packet Packing

■ See Stephen Haddock’s presentation from Wake

■ Stations send several small packets in one slot

■ ?Should improve utilization?

■ ?May complicate receiver and transmitter?

■ “Virtual Collisions”

■ See Moti Weizman’s presentation

■ ?Would reduce extendSize and slotTime?

■ ?May hurt fairness?

Page 24: Scaling CSMA/CD to 1000 Mb/s An Update - IEEEgrouper.ieee.org/groups/802/3/z/public/presentations/... · 1997-12-02 · 3 802.3z TF Introduction Scaling CSMA/CD to 1000 Mb/s is a

24

b/s

uate for

evaluated

802.3z TF

Conclusions

■ Useful CSMA/CD networks can be built at 1000 M

■ The performance of the baseline proposal is adeqworkgroup applications

■ Several proposals for possible refinements can be