The data rate direct-to-Earth varies from about 500 bits per second to 32,000 bits per second (roughly half as fast as a standard home modem). The data rate to the Mars Reconnaissance Orbiter is selected automatically and continuously during communications and can be as high as 2 million bits per second. The data rate to the Odyssey orbiter is a selectable 128,000 or 256,000 bits per second (4-8 times faster than a home modem).
An orbiter passes over the rover and is in the vicinity of the sky to communicate with the rover for about eight minutes at a time, per sol. In that time, between 100 and 250 megabits of data can be transmitted to an orbiter. That same 250 megabits would take up to 20 hours to transmit direct to Earth! The rover can only transmit direct-to-Earth for a few hours a day due to power limitations or conflicts with other planned activities, even though Earth may be in view much longer.
Mars is rotating on its own axis so Mars often "turns its back" to Earth, taking the rover with it. The rover is turned out of the field of view of Earth and goes "dark," just like nighttime on Earth, when the sun goes out of the field of view of Earth at a certain location when the Earth turns its "back" to the sun. The orbiters can see Earth for about 2/3 of each orbit, or about 16 hours a day. They can send much more data direct-to-Earth than the rover, not only because they can see Earth longer, but also because they have a lot of power and bigger antennas than the rover.