stk500v2_getsync(): timeout communicating with programmer

I have the UNO, MEGA2560, ethernet shield(W5100).

When stacking the ethernet shield (W5100) in the UNO there is no problem.
However, a problem arises when we stacked the ethernet shield (W5100) on MEGA2560.

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer

Even if the uploading blank source code, the same problem occurs.

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

mega2560(ethernet shield is not stacked) is normally uploaded.

UNO+ethernet shield= no problem
MEGA+ethernet shield= can't upload(timeout)
MEGA=no problem

What's the problem?

Maybe this can help you: Mega + Ethernet shield