I've been studying communications between switches and it seems relativly easy to understand with the exception of why they have so many modes. There's trunk, nonegotiate, dynamic desirable, dynamic auto, and access. (I think that's all of them). In addition to this, some switches can choose between dot1q or ISL encapsulation. So what's the purpose of all the different modes?
If the port is a trunk, set it as a trunk. If the port is access, set it to access. Is there benefits to using dynamic desirable or dynamic auto?