What do you do if one site requires a specific version of a module, while one of the other sites requires a different version of the same module?
Because of the way Drupal is constructed, you cannot install two versions of the same module in the sites/all/modules/ directory. Attempting to do this will lead to fatal errors or, even worse, subtle bugs that arise from certain loading errors.
Likewise, it is not a good idea to install one version of a module in sites/all/modules/ and another version of the module in sites/SITENAME/modules/. While Drupal itself will try to always load the site-specific version, there is no assurance that other modules will respect the same order of precedence that Drupal uses.
The best way of handling this situation is to install the modules in site-specific directories.
This way, there is no chance that Drupal or any other module will confuse two different versions of the same module, as each site will have access only to its own version.