I would advocate terminating SSL at the load balancer (be that on your network, or at a CDN provider or whatever). It means the LB can inspect the traffic and can do a better job of load balancing. It also means your load balancer is responsible for dealing with slow clients, broken SSL implementations and general Internet flakiness. It's likely your load balancer is better resourced to do this than your back end servers. It also means that the SSL certs that the world sees are all on the load balancer (which hopefully makes them easier to manage).
The alternative here is to simply load balance the TCP connections from clients to your back end servers. As the LB can't inspect what's going on this way, it can't spread the load evenly across the back end servers, and the back end servers have to deal with all the Internet flakiness. I'd only use this method if you don't trust your load balancer, CDN provider or whatever.
Whether or not you re-encrypt from the load balancer to your back end servers is a matter of personal choice and circumstance. If you're dealing with credit cards or financial transactions then you're probably regulated by government(s) and so will have to re-encrypt. You probably should also re-encrypt if the traffic between load balancer and back end servers is travelling over untrusted networks. If you're just hosting your company's website then you might be able to avoid the additional overhead of the re-encryption, if you don't really care about the security aspects of it.
Re-encryption doesn't add as much load as you might think though. Usually, the load balancer will be able to maintain persistent connections back to the servers, so the SSL cost will be quite low for that 'hop' on the network.
The last thing to think about is the application on the back end servers. If all the traffic that arrives there is HTTP, then it can't make decisions based on the protocol the client was using. It can't then say "you're trying to access the logon page over HTTP, so I'll redirect you to the HTTPS version of the page", for example. You can have the load balancer add an HTTP header to say "this came from HTTPS", but that header would need special handling in the application. Depending on your situation, it may just be easier to re-encrypt and let the application work in its 'default' way rather than needing a site-specific modification.
In summary, I'd say: terminate at the load balancer and re-encrypt to your back end servers. If you do this and notice some problem, then you can make adjustments if you need to.