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

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

NewsGroups | Search | Tools
 comp.dcom.lans.ethernet  Post an article  get this group's latest topics as an RSS feed add this group's latest topics to your My MSN content add this group's latest topics to your My Yahoo content  add this group's latest topics to your Google content  YahooMyWeb Yahoo!  Google Google  Windows Live Favorites Windows Live  del.icio.us del.icio.us  digg digg  Add to Netscape Netscape
Subject Author Date
The 100Base-X switch and the transmit error /H/ code Michelot 03-16-2008
Posted by Michelot on March 16, 2008, 5:51 pm
If you were  Registered and logged in, you could reply and use other advanced thread options
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

Spring Sale Save 20% Banner - Sale Ended 5/3/07 So Updated to NonPromo Ad
Posted by Rich Seifert on March 16, 2008, 7:32 pm
If you were  Registered and logged in, you could reply and use other advanced thread options
In article

> Bonsoir,
>
> We can read in 802.3, §24.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.
>

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.

> 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).
>

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

Posted by glen herrmannsfeldt on March 16, 2008, 7:45 pm
If you were  Registered and logged in, you could reply and use other advanced thread options
Rich Seifert wrote:
> Michelot wrote:

>>We can read in 802.3, §24.2.21.6: "The normal use of the /H/ indicator
>>is for repeaters to propagate received errors".
(snip)

> 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*

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)

> 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.

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


Posted by Rich Seifert on March 16, 2008, 8:55 pm
If you were  Registered and logged in, you could reply and use other advanced thread options

> Rich Seifert wrote:
> > Michelot wrote:
>
> >>We can read in 802.3, §24.2.21.6: "The normal use of the /H/ indicator
> >>is for repeaters to propagate received errors".
> (snip)
>
> > 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*
>
> What bad things happen with an invalid code group? Could it
> accidentally be changed (noise) to a valid one? The checksum would
> fail then.

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.

> (snip)
>
> > 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.
>
> 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.
>

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

Posted by Michelot on March 18, 2008, 10:15 am
If you were  Registered and logged in, you could reply and use other advanced thread options
Bonjour Rich,

> Correct. The /H/ code is never needed in a switch.

It's comfortable reading that from you, clearly.

> The repeater cannot (or at least,
> should not) transmit the invalid code-group onto other ports...
> Note that this situation can occur even if all of the repeater ports
> operate in 100BASE-TX...

Thanks, I'm now understanding that.

> 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.

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
http://www.lsi.com/files/docs/techdocs/networking/80223.pdf

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

Similar ThreadsPosted
Packetyzer 5.0.0 error August 19, 2006, 12:33 am
Built-In Bit Error Test? July 5, 2005, 3:53 pm
Cheapest Bit Error Testing for Ethernet July 1, 2007, 8:39 pm
Question about 802.3 clause 24 - Transimit/Transmit-Bits state diagram September 11, 2007, 9:18 pm
provide me Source code of IGMPv2 May 26, 2006, 2:37 am
Does someone have IGMP snooping source code for Bridge?? May 30, 2006, 9:06 am
VLAN - switch -> trunk -> switch - priority queuing ? August 19, 2006, 2:31 pm
Switch to switch causing traffic problems? April 19, 2005, 11:46 am
Need Ethernet Hub - NOT Switch March 15, 2005, 7:15 pm
switch assigning IP April 30, 2005, 8:48 am

other useful resources:
The Federal Communications Commission (FCC)
Telecommunications Industry Association
Electronic and Software Security Products and Services
International Telecommunication Union

Custom CGI Perl and PHP programming by 1-Script.com

Contact Us | Privacy Policy
The site map in XML format XML site map