Most simple examples i've seen put simple business logic in the controller but ideally you may want to create a business layer.
A good example of seperating out the business logic using MVC3 can be seen in Microsofts project Silk which you can download here. In this solution the business logic is separated out into a different project that that of the MVC project.
In this project you can see that the controller logic simply handles communication between the views and the view models (note view models and not business layer models). The view models simply contain the information that will be passed to the views, therefore if a field on the view changes, the field in the view model changes also. The project also goes further to seperate out the view models into view models for passing data into the views, and form models for passing data back but this is a matter of choice.
This project uses the transaction script design pattern for its business logic. The controller passes information to the business layer using its own view models which implement an interface in a command pattern design. Information passed back from the business layer is done so via the business layers own business models. I would thoroughly recommend that you take a look at this project to get a better understanding of how the separation is achieved.
For further reading of business layers I would also recommend you take a look at Wrox Enterprise .NET where a few of the chapters provide a good discussion of the options for structuring the business layer, the first of which is the Transaction Pattern used in project Silk.
Hope this helps.