Ok...this is one very basic thing Im confused on. with regarding to hubs/routers/and switches

I know hubs all contain one large collision domain (which is "bad" but can someone explain why) and a switch contains a collision domain for each port.

But what exactly is a broadcast domain, and what is it in relation to hubs/switches/routers (which gives out how many and what)

and What is the purpose of a collision domain.....and why exactly is having everyone connected to one collision domain bad.

Im sorry if this is very basic, but the book im reading didn't really go into them as deeply as I wished. (So I do apologize for the basic question) and googling brought up WAYYY too many results. Plus I trust you guys more :)

I apologize if this belongs elsewhere, but im not aware of a "networking" stack exchange.

The two PCs connected to the HUB would be in the same collision domain. Only one can communicate at a time over the uplink to the switch.

A switch creates a separate collision domain on each port. Therefore the PC connected to the switch is in its own collision domain. The Hub (and all attached devices) are in their own collision domain.

A Router creates a broadcast domain on each interface/ port. This means that broadcast traffic originating from one interface on the router does not get passed through to another interface (there are some exceptions but I'm keeping this simple). That traffic would be passed through on a hub/switch. So in the diagram above Switch1 and all connected devices are in their own broadcast domain, and switch2 and all connected devices are in their own broadcast domain.

The more you limit the devices in a collision domain the less time a device will need to spend re-sending packets that "collide" with others.

The smaller your broadcast domain, the fewer broadcast packets all devices on that network segment need to "listen to". Having a large broadcast domain is a potential network bottleneck.