In IP terms, a protocol number is the value assigned to the Layer 4 protocol carried within IP, e.g. 6 for TCP, 17 for UDP, as often found in the /etc/protocols
file on most UNIX systems.
A port number is used within the UDP and TCP headers to represent different higher level protocols carried within those protocols, e.g. 25 for SMTP, 80 for HTTP, etc, per /etc/services
.