President Bush’s move to consider a “time horizon” for Iraq troop withdrawals put John McCain on the defensive.