I have a Cisco WS-C412 Ethernet hub. Am I correct that internally all the Rx and Tx ports connect to a single wire/bus? Like here, where three NIC's are connected to first, fifth and ninth hub port:
2 Answers
Yes. A hub is a giant virtual wire. Tx from each port is tied to the Rx of all other ports. (through some rather complicated circuitry that's unimportant to anyone but an EE)
-
1In addition, am I correct that total bandwidth(Tx + Rx) in case of hub with 100BASE-TX ports is 100Mbps because all the ports are half-duplex?– MartinAug 6, 2015 at 22:59
-
1
It's a little more complex than that.
The hub has to have circuitry to decode the wire-level encoding of incoming data and encode outgoing data in the correct wire-level encoding. This includes handling special cases like preambles and idle ports.
The core logic of the hub waits for incoming data to be detected by one of the receivers. If it detects incoming data on a port then it sends that data out of all the other ports (but not out of the port it came from). If it detects incoming data on more than one port at a time then it outputs a jam signal to ensure the collision is seen throughout the collision domain.
-
Not exactly. For a "modern" (ie. 20 year old) 10/100bT hub, there may be more logic. However, the operation of a hub is a fundamentally analog process. It doesn't know it's ethernet; it doesn't understand manchester encoding. It knows what the analog levels are supposed to be -- that's how collisions are detected, thus continuous collisions. It knows how long a transmitter is allowed to run (jabber), and how long the port should be quiet after each frame (the IPG.) And how to signal "everybody hush" (jam)– RickyMar 14, 2019 at 3:17