在网络层实现了不同网络之间主机到主机的互联,
但是主机与主机之间的通信,对于一个主机,有多个进程,需要除了需要辨析主机,还需要辨析进程
因此使用端口号来标明一个主机的进程
如下图
主机A的进程A3使用端口号3000与主机B的进程B1端口号2000通信
主机A的进程A2使用端口号5000与主机B的进程B5端口号5001通信
主机A的A2、A3未进行通信则不需要端口号
传输层概述 - 图1
套接字
一个(IP,端口号)的组合称为一个套接字,将应用进程与网络连接起来。

进程如何获取端口号

  1. 当进程需要获取端口号的时候,使用套接字向系统申请端口,一般由程序自己指定。

正常情况下会给进程分配端口,但是当所申请端口号已经被占用或是特殊端口号,则会报错。

  1. 操作系统自动分配

传输层概述 - 图2

主要任务

  1. 实现两个主机中,两个进程之间的通信