The client sends to the server its support cipher suites, and the server chooses the highest one in which it supports.
If we want to ensure that connections use TLS version 1.1 or greater,
is it sufficient to set one side of the connection to require TLS
version 1.1 or greater or do both sides of the connection need to be
set to require TLS version 1.1 or greater?
Ensure the server does not support protocols less than TLS 1.1 and then any connections attempting less than TLS 1.1 will be rejected by the server. But note any clients that do not support TLS 1.1 or higher will be unable to connect at all.
In other words, if Bob requires TLS 1.1 but Alice will accept TLS 1.0
(or SSL), assuming Eve can intercept the connection request from Alice
to Bob, can Eve exploit the weaknesses of TLS 1.0 to obtain
information from Alice that would allow her to create a TLS 1.1
connection to Bob?
There are attacks that are called 'downgrade' attacks and they in a nutshell alter the clients cipher suites to trick the server into thinking the client only supports older (weaker) cipher suites and protocols.
Make sure the server does not support weak cipher suites and protocols and therefore the client (or attacker) cannot downgrade a client to a weaker one as the server will reject it as a cipher suite in which it does not support.