根据端口号分配数据到应用程序
要将数据分配给主机中运行的应用程序,就必须对每一个应用程序进行识别处理。我们可以使用端口号来实现这一处理。端口号是指用于识别TCP/IP的应用程序的识别号,需要在TCP或UDP首部中对其进行指定。由于端口号是16位的数值,因此可以取值的范围就是0~65535。
端口号的范围:
名称 | 端口号的范围 | 含义 |
---|---|---|
已知端口号 | 0~1023 | 为服务器应用程序保留的端口号 |
已登记端口号 | 1024~49151 | 常用应用程序的服务器端的端口号 |
动态、私有端口号 | 49152~65535 | 客户端应用程序使用的端口号 |
使用端口号识别应用程序,并将数据分配给正确的应用程序。
端口号需要在TCP或UDP首部进行指定。
0~1023的已知端口号是一种主要用于识别服务器应用程序的,按照约定预先保留下来的端口号。
主要的已知端口号:
协议 | TCP | UDP |
---|---|---|
HTTP | 80 | - |
HTTPS | 443 | - |
SMTP | 25 | - |
POP3 | 110 | - |
IMAP4 | 143 | - |
FTP | 20/21 | - |
DHCP | - | 67/68 |
对应用程序的数据进行可靠传输
可以使用TCP在应用程序之间进行可靠的数据传输。
TCP是一种用于在应用程序之间可靠地传输数据的协议。使用TCP协议就可以无须在应用程序协议中建立相应的机制来确保可靠性。
基于TCP的数据传输步骤如下:
·建立TCP连接
·在应用程序之间发送和接收数据
·断开TCP连接
用TCP对数据进行分割处理
可以在需要传输的应用程序的数据中添加TCP首部并将其作为TCP段传输。
必要时可以使用TCP分割数据。
使用TCP分割的数据大小被称为MSS(Maximum Segment Size,最大段大小)。
超过MSS的数据将被分割为多个MSS再进行发送。MSS的标准大小为1460字节。
只对传输给应用程序的数据进行分发-UDP
UDP是一种只负责为应用程序分发数据的协议。
当传输IP电话的语音数据等为实时数据时,可以使用UDP。
与TCP相比,UDP不会进行多余的处理,因此具有数据传输效率高、可靠性不高的特点。
网络的电话簿-域名解析、主机名、DNS
在TCP/IP通信中,必须指定IP地址。
由于IP地址难以理解,因此通常使用主机名来指定需要进行通信的对象主机。
通过主机名获取IP地址的方式称为域名解析,大多数情况都是使用DNS进行解析的。
使用DNS自动获取IP地址-资源记录、DNS解析模块、递归查询
需要预先将主机名和对应的IP地址等资源等级在DNS服务器中。
我们将登记在DNS服务器中的信息称为资源记录。
主要资源记录:
类 | 含义 |
---|---|
A | 主机名对应的IP地址 |
AAAA | 主机名对应的IPv6地址 |
CNAME | 主机名对应的其他名称 |
MX | 域名对应的电子邮件服务器 |
NS | 管理域名的DNS服务器 |
PTR | IP地址对应的主机名 |
查询DNS服务器的功能被称为DNS解析模块。
向DNS服务器询问IP地址时,需要从根服务器开始反复进行查询。
对必需的设置进行自动设置-DHCP
在使用TCP/IP进行通信之前,必须在个人电脑、智能手机、服务器和各种网络设备中对TCP/IP进行正确的设置。
为了避免出现设置错误,可以选择进行自动设置。DHCP就是专门用于进行自动设置的协议。
TCP/IP的设置项目包括以下内容:
·IP地址/子网掩码
·默认网关的IP地址
·DNS服务器的IP地址
可以使用DHCP自动进行TCP/IP设置。