DICE has been working on a number of fronts to address the issue, and while some patches that have been applied server side in conjunction with a number of other security measures have helped the situation, not all is back to normal yet.
While it is unclear why the Battlefield 3 server infrastructure has been attacked, it is just the latest in a long line of DOS attacks that companies have undergone. While you would think by now that there would be a more effective tool to prevent attacks, there isn’t. While smarter and more aggressive firewalls have helped, the reality is that attackers have also gotten smarter and improved their attacks.
DICE continues to work on it and you can follow their progress on their official Twitter feed here.