If you send 48000 bytes thats every second, you definetely send 99% unnecicary data to display a car movement.
As rough example: 5 position updates for each car per second with x,y,z, angle and velocity values would need only about 160 bytes per second for the actual data, for 4 cars 640bytes + the overhead.
Lets say with sending other information plus the requires overhead, 1 to 2 kiloby/second should be an optimal target.
Moving a car on the client has the advantage of fast reachtion, but will give you problems with synconous interaction (like collisions),
so:
-Move all cars only on the server.
-send 5 to 10 times per second the x,y,z,pan,tilt,roll and x,y,z velovity values to the clients
-interpolate the data manually, and position the cars on the clients
-clients only send the movement commands 5 to 10 times per second to the server