In the TCP/IP and UDP protocols used in computer networking, a Port is a special number present in the header of a data packet. Ports are typically used to map data to a particular process running on a computer.
Port can be readily explained with an analogy: think of IP addresses as the street address of an apartment building, and the port number as the number of a particular apartment within that building. If a letter (a data packet) is sent to the apartment building (IP) without an apartment number (port number) on it, then nobody knows who (which service) it is for. In order for the delivery to work, the sender needs to include an apartment number along with the address to ensure the letter gets to the right domicile.
As an example, a server used for sending and receiving email may provide both an SMTP (for sending) and a POP3 (for receiving) service; these will be handled by different server processes, and the port number will be used to determine which data is associated with which process. By convention, the SMTP server will listen on port 25, while POP3 will listen on port 110, although it is possible to use different ports.
Not all network transport layers use network ports; for example, although UDP and TCP use ports, ICMP does not.