For historical reasons, Jenkins still ships with old, deprecated protocols, JNLP1-connect, JNLP2-connect, and JNLP3-connect. These all have fundamental issues and known bugs. They were all superseded by the JNLP4-connect protocol released in Jenkins 2.27 over three years ago (October 2016). They have all been deprecated and unsupported since Jenkins 2.75 over two years ago. Since then there have been UI messages and an administrative monitor strongly discouraging their use. (See more information about the protocols at https://github.com/jenkinsci/remoting/blob/master/docs/protocols.md )
These protocols should be removed as part of cleaning up technical debt.
See the discussion at https://groups.google.com/forum/#!topic/jenkinsci-users/s90MVVdFDyU