Unknown is when a device is available and waiting for a state. E.g. If you have an assumed state switch that only knows it’s on when you perform the turn_on action, it will be unknown until it’s turned on.
Unavailable is when HA cannot reach the device at all.