The 100Base-X switch and the transmit error /H/ code

Bonsoir,

We can read in 802.3, =A724.2.21.6: "The normal use of the /H/ indicator is for repeaters to propagate received errors".

This operating was needed when the hub linked interfaces with different signalling codes.

But I don't see the using of the /H/ code-group in a FD 100Base-X switch. The switch discards the frame in error at the level-2.

So, it seems that the /H/ code-group is never used with the FD 100Base- X switch (perhaps just in the jam signal in half duplex).

Is it your advice? Michelot

Reply to
Michelot
Loading thread data ...

Correct. The /H/ code is never needed in a switch. As you quoted, "The normal use of the /H/ indicator is for *REPEATERS* to propagate received errors." (Emphasis added.) Consider the situation of a 100 Mb/s repeater that receives a frame that has been corrupted by noise such that the repeater sees an invalid code-group. The repeater cannot (or at least, should not) transmit the invalid code-group onto other ports, but the repeater must transmit *something* (so that all stations see CarrierSense and/or properly detect collisions). So the repeater instead substitutes the /H/ code, which is a valid code used to indicate a receive error by the repeater.

Note that this situation can occur even if all of the repeater ports operate in 100BASE-TX; i.e., your statement that the /H/ code was necessitated "when the hub linked interfaces with different signaling codes" is not strictly correct. A repeater may need to send /H/ codes even when the ports use the same signaling scheme.

It would not be used by *any* switch, either in full-duplex or half-duplex mode. A switch can simply discard a received frame that contains an error; there is no need to propagate the signal to other ports.

-- Rich Seifert Networks and Communications Consulting 21885 Bear Creek Way (408) 395-5700 Los Gatos, CA 95033 (408) 228-0803 FAX

Send replies to: usenet at richseifert dot com

Reply to
Rich Seifert

(snip)

What bad things happen with an invalid code group? Could it accidentally be changed (noise) to a valid one? The checksum would fail then. (snip)

There used to be stories about switches that would start sending before the whole frame was buffered. If all ports are the same speed and full duplex and no other data is already being sent it shouldn't be too hard to do. In that case, bad code groups would seem to again be a problem.

-- glen

Reply to
glen herrmannsfeldt

Well, it's never a good idea to transmit something that is invalid. Besides that, most of the 100BASE-X hardware was incapable of generating invalid codes; there was just no way to tell the encoder to generate one of the unused codes. The /H/ code is typically generated by an out-of-band indicator (a specific input) to the encoder chip.

In the scenario you describe, the switch could simply truncate the frame at the invalid code point. The receiver at the other end would discard for a checksum error. The reason for /H/ codes is because repeaters have to "keep repeating" to ensure collision detect; collision detect is not needed for the full-duplex device you describe.

-- Rich Seifert Networks and Communications Consulting 21885 Bear Creek Way (408) 395-5700 Los Gatos, CA 95033 (408) 228-0803 FAX

Send replies to: usenet at richseifert dot com

Reply to
Rich Seifert

Bonjour Rich,

It's comfortable reading that from you, clearly.

Thanks, I'm now understanding that.

And now, I have this other question with that subject.

Suppose a switch port that is configured half-duplex. The port is the edge of a collision domain. Suppose it detects a collision. So it transmits a jam signal in the collision domain.

What is generally the structure of the jam signal in 100Base-X?

We have an example with the L80223

formatting link
Jam signal is like that : /J/K/5/5/5/5/5/5/5/5/5/5/5/5/5/D/H/H/H/H/H/H/ H/H/T/R/

In the 802.3, the jam message is not specify. But perhaps, for the developers, the temptation is strong to use /H/ code-group.

Thanks for your advice. Michelot

Reply to
Michelot

The definition of the jam signal for 100BASE-X is exactly the same as for any other variant of Ethernet; the station continues to transmit for an additional 32 bit-times. The content of this so-called "jam" is undefined.

There really is no such thing in modern Ethernet (post-1980) as a "jam signal", in the sense that the signal somehow uniquely indicates the jam condition. "Jam" simply means "keep transmitting for a while to ensure that everyone who needs to see the collision sees it". The intent is to ensure that a collision is not an extremely short transient event that gets dissipated before all interested parties see it. This was a distinct possibility in coaxial cable systems, where the signal attenuation between colliding stations could be quite high.

The confusion may come from the original Xerox experimental Ethernet (pre-DEC/Intel/Xerox). In that system, when a station detected a collision, it transmitted an extended-length symbol onto the coaxial cable, pulling the voltage to one state for many bit-times. This was truly a "jam" signal; this condition never occurred under normal data transmission. Unfortunately, the terminology has lived on while the signal died more than 30 years ago.

-- Rich Seifert Networks and Communications Consulting 21885 Bear Creek Way (408) 395-5700 Los Gatos, CA 95033 (408) 228-0803 FAX

Send replies to: usenet at richseifert dot com

Reply to
Rich Seifert

Bonjour Rich,

That's how our world goes!

Thanks for your time and all this interresting and useful history.

Best regards, Michelot

Reply to
Michelot

Cabling-Design.com Forums website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.