Proxying
Running a caching proxy in front of Zope/Plone is always a good idea. A proxy not only keeps "unimportant" requests (including all security checks, etc) away from your Zope server, it also allows you to perform more aggressive caching if the load on your sites gets higher. For example, you can start by caching just images, .js, .css etc. If the load gets too high on your Zope server, you can choose to cache the entire frontpage for a couple of minites.
For caching to work, you'll need to make sure the appropriate caching headers are set - if all your pages are set to pragma: no-cache, a caching proxy will not make much of a difference.
A simple proxy is easy to setup using mod_proxy. If you want more power/control over your configuration, Squid is the way to go. Especially Squid will like alot of additional RAM (or perhaps even a dedicated machine) - make sure your Zope server and caching proxy fit nicely in your available memory.

