Protocol version

A protocol version number (PVN) is an integer used to check for incompatibilities between server versions.

Usage
Client and server versions with the same protocol version are compatible with each other. For example, a client running Java Edition 1.8.9 can connect to a server running Java Edition 1.8, as both have a protocol version of 47.

Upon attempting to join a multiplayer server, the game will check if the client has a protocol version newer or older than the selected server; if it does, the game will then alert the player that their client (or the server) is outdated.

Versioning
All versions, including minor releases and development versions on both Java and Bedrock editions, have their own protocol version. The version takes the form of an ever-increasing positive integer unlike client versions. Protocol versions may occasionally be skipped between major releases.

Storage location
Each Minecraft build since 18w47b specifies its current protocol version in the version.json file, found in the root directory of the client and server jars.
 * version.json
 * : The protocol version of this build.