FireWire can connect up to 63 peripherals in a tree or daisy-chain topology[21] (as opposed to Parallel SCSI's electrical bus topology). It allows peer-to-peer device communication such as communication between a scanner and a printer to take place without using system memory or the CPU. FireWire also supports multiple hosts per bus. It is designed to support plug and play and hot swapping.