Ethernet, Fast Ethernet, and Gigabit Ethernet In this presentation, we will take a closer look at Ethernet, Fast Ethernet, and Gigabit Ethernets.
Collision Domains Should Be Small The packets sent by the hosts on the same collision domain may collide with each other.
2 Pairs of Wires in a UTP Cable Are Always Used 2 pairs No matter whether the device is a hub or a switch, 2 pairs of wires in a UTP cable are always used to connect a host to the device.
Switching Between Full and Half-Duplex Modes Is Simple No matter whether full or half-duplex mode is used, 2 pairs of wires in a UTP cable are always used to connect a host to a hub/switch port.
Full-Duplex Ethernet Is No Longer Ethernet • Ethernet is characterized by its CSMA/CD MAC protocol when operating in half-duplex mode. • In full-duplex mode, because CSMA/CD is disabled and not used, actually full-duplex Ethernet is no longer Ethernet. • This is especially true for Gigabit Ethernet because Gigabit Ethernet mostly operate in full-duplex mode.
Transmitted Bit Order Little Endian: The least significant bit in a byte is transmitted first.
Transmitted Byte Order The bytes of a multi-byte field are sent from first byte to last byte, with each byte sent in Little Endian bit order.
Ethernet Address Format Every vendor (e.g., 3COM) is assigned a vendor block code. Therefore, every globally administered address is globally unique.
IEEE 802.3 Ethernet Frame Format If length is less than or equal to 1500, it represents the length of data. Otherwise, it represents the higher-level protocol type.
Flow Controls Needed When Ethernets Switches Are Used • When a hub is used to connect all sending hosts (half-duplex mode), Ethernet’s CSMA/CD MAC algorithm is an effective flow/congestion control (backoff) and retransmission (up to 16 times) method. • However, when a switch is used and full-duplex mode is used, each host now has its own collision domain and CSMA/CD no longer works. Frames now may be lost due to buffer overflow inside the switch. • Hosts no longer know this type of “collision.” Congestion control cannot automatically be performed. • Also, retransmission cannot automatically be performed.
Backpressure Can Be Used In Half-Duplex Mode • If a switch uses half-duplex mode to connect to hosts, although each host has its own collision domain, we can use some methods to ask sending hosts to slow down their sending rates: • Force collisions with incoming frames • Make it appear as if the channel is busy • If a switch uses full-duplex mode, the above two methods won’t work. We need an explicit flow control for switched full-duplex Ethernet switches.
IEEE 802.3x Flow Control • Introduced for Fast and Gigabit Ethernets. • Introduce special MAC-layer control packets (PAUSE packets) to enable or disable frame transmission. • Thus a more generic MAC framework is defined and an entity called (MAC Control) is introduced. • MAC Control is responsible for generating, sending, receiving, and performing the PAUSE operation.
PAUSE Function • Implement a simple “stop-start” flow control scheme. • If a device wants to temporarily inhibit incoming frames, it sends a PAUSE frame to the full-duplex partner. This PAUSE frame contains a parameter indicating the length of time the partner should wait before sending more frames. • If the device wants to cancel the timer at its partner which is set up by its previous PAUSE frame, the device can send another PAUSE frame that contains a parameter of zero time.
PAUSE Frame Implementation PAUSE frames have higher priority over normal data frames.
Must Stop Transmission in 512 Bit Time • After receiving a PAUSE frame, the receiver has 512 bit time to decode it. • No more new transmission is allowed after this 512 bit time period.
Buffer Thresholds to Control When to Issue PAUSE Frames • The buffer space (above the high water mark and below the low water mark) should be larger than link RTT * link BW. • Otherwise, frames may be dropped or link utilization may not be 100%.
Input-Buffered Switches Assumed for IEEE 802.3x • IEEE 802.3x is a link-level flow control scheme. • It uses the buffer occupancy level of an input port to determine whether to inhibit frames from incoming. • Unfortunately, this scheme does not work for output-buffered switch. (Why? because there will be no queue in input ports.)
IEEE 802.3x May Cause Low Link Utilization • IEEE 802.3x is a link-level flow control applied to input-buffered switches. • If the input-buffered switch has the HOL blocking problem, then using IEEE 802.3x will not further lower the link utilization. (It is already low .) • However, if the input port uses virtual output queuing (one queue for each output port) to avoid the HOL blocking problem, using IEEE 802.3x may further lower the link utilization.
Low Link Utilization Example Output port 1 is busy or blocked all the time. After receiving the PAUSE frame, switch A cannot send any more frame to switch B. However, sending P2 should be allowed because P2 can be immediately forwarded when it arrives at switch B. Switch A Switch B P1, P1, P1, P1 P1 P2 P2 P2 PAUSE Output port 2 is idle.
Auto-Negotiation Eases Configuration • Starting from Fast Ethernet • For UTP cables • Auto negotiation about duplex mode (half or full), maximum speed (10 or 100 Mbps), and flow control support. • Avoid configuration headache. • The same RJ45 jack can support 10 or 100Mbps and half or full duplex mode, how do you know which setting you should use when you plug your RJ45 into a hub or a switch’s port? • So, the best setting that you should choose is auto-negotiation.
Auto-Negotiation Message Transfer Because link speed is one of the parameter that needs to negotiate, the auto-negotiation message cannot be transferred at a chosen speed (e.g., 10 or 100 Mbps). Instead, it is transmitted at a predetermined clock rate.
1000BASE-X Physical Media Fibers Shortwave Laser Longwave laser
Minimum Ethernet Frame Length Needs to be Increased • When link speed increases from 100 Mbps to 1000 Mbps, for half-duplex CSMA/CD to work well (to be able to detect collision), we can: • Reduce the network size by a factor of 10 to only 20 meter • Not acceptable • Or increase the minimum Ethernet frame length by a factor of 10 • Network efficiency will decrease. • Higher layer protocols needs to be modified.
Carrier Extension • Gigabit Ethernet does not want to modify application programs. • We want application programs to still use 64 bytes as the minimum frame size. Ideally, they should not need to know whether they are using Ethernet, Fast Ethernet, or Gigabit Ethernet. • However, to be able to detect collision, the minimum frame size must be enlarged from 64 bytes to 512 bytes (4096 bits). • Carrier extension is introduced to insert padding at the MAC layer so that every transmitted frame is at least 512 bytes.
Frame Bursting • Although carrier extension solves the collision detection problem, the link utilization can be very low. • If every transmitted frame is a minimum-sized frame, because in every transmitted 512 bytes, there are only 64 useful bytes. The effective link utilization is only 64/512 = 12.5% • Frame bursting is introduced to improve link utilization.
Frame Bursting • If the source host has many small frames to send, it can send them in a burst after a MAC arbitration. • Except for the first frame, other frames sent in a burst need not be carrier-extended. • If the first frame is larger than 512 bytes, it need not be carrier-extended. • The burst can be as long as 8192 bytes.
Why Doing Carrier Extension for the First Frame in a Burst? • First, if there is no carrier extension, when collision happens, the sending host may have sent out many small frames. If the sending host resends all frames that have been sent, two problems may occur: • They may already be removed from the buffer. • The receiver may receive duplicate frames. • Second, if there is carrier extension and collision is detected in this period, the sending host knows that only the first frame should be retransmitted. • Third, if there is carrier extension and there is no collision detected in this period, the sending host can be assured that no collision will happen in the future.
Gigabit Ethernet Mostly Operates in Full-Duplex Mode • Although half-duplex (hub) Gigabit Ethernet’s MAC performance is academically interesting, commercially they are rarely used. • Under 1000 Mbps high speed, CSMA/CD’s performance is bad when the number of participating hosts increases. • Why not using full-duplex mode (switch) to get much more bandwidth at slightly increased cost? • Nowadays, almost all Gigabit products are switches. • Since CSMA/CD is totally disabled, Gigabit Ethernet actually no longer is Ethernet. • The sending host just pumps its frames into the cable as fast as it can.
Various Line Coding Methods Gigabit Ethernet uses NRZ. Manchester consumes too much Bandwidth. Gigabit Ethernet cannot afford to use it.
1000BASE-X Uses 8B/10B Block Code • Unlike Manchester encoding, whose baud rate is 200% of the data rate, in 8B/10B, the baud rate is only 125% of the data rate. • Supporting 1000 Mbps is already difficult for some media such as UTP. Asking UTP to support 2000 Mbps baud rate is too much. • In 8B/10B, an 8-bit byte is encoded into a 10 bit code word. • Provide sufficient signal transitions for clock recovery at the receiver • Allow easily detecting single or multi-bit errors • The number of one and zero bits transmitted are almost the same (DC balance).
8B/10B Block Coding • No more 4 consecutive ones or zeros will be generated in a 10-bit code. • The imbalance between the number of ones and zeros in a 10-bit code is at most 1.
1000BASE-X Connectors • One jack is for transmission. The other jack is for reception. • To connect two hosts together, you need to ‘cross-over’ the transmission and reception jacks by yourself.
1000BASE-T over UTP • Product is now available. • Use four (all) pairs of wires in an UTP cable to together support 1000 Mbps. • The quality level of UTP cables should be at least CAT 5E or CAT 6. • The cost of a 1000BASE-T network adapter is much cheaper than that of a 1000BASE-X network adapter.