Let me explain only pull-up, pull-down is the same but with reverse logic.
You have a bus, and a signal is required to by high voltage when its logical value is zero. If you have more than one device connected to the bus, each device must be open-drain (high impedance) in order to not interfer with others. This means devices only transmit when have a signal to send, that means transmit when have a logical 1 (low voltage) to send. When they have a low voltage to send, put their output to ground in order to put the hung pin of the pull-up resistor at ground. You need large resistors to have small currents (33K, 47K or 100k are really usual) thru the resitor when logic 1 is transmitted. If you have no more data to transmit, the devices enter in open drain and both the edge of the reistor result put at Vcc, then high voltage is seen.
That's all...
Bye,
N.