一些常见的协议详解

TCP/IP协议族里面有众多的协议,分别分布在各个不同的层次上。现将跟TCP有关的部分协议详解如下:

ARP协议

ARP协议处于TCP/IP协议族的最底层,即网络接口层。它的主要用途就是实现一台主机的IP地址到mac地址的转换。

以太网ARP请求/应答报文的格式如下图所示:

ARP协议的工作过程如下:

DNS协议

我们平常访问网站时都是直接输入域名的,而因特网上的主机都是通过IP地址来标示的。所以就需要DNS协议来实现域名到IP地址的转换工作。

DNS是一套分布式的域名解析系统。工作原理如下:

需要声明的是,DNS底层采用的是UDP协议。

DNS服务器的查询有两个方式,迭代和递归。

迭代方式就是当该DNS服务器上没有该域名对应的IP地址时,DNS服务器就返回给客户程序另一台DNS服务器的地址,告诉客户程序到这台DNS服务器上去查询。

递归方式就是当该DNS服务器上没有该域名对应的IP地址时,DNS服务器自身去另一台DNS服务器上去查询,查到之后再返回给客户程序。

IP协议

IP协议处于网络层,几乎所有上层协议都会使用到IP协议。

IP协议的报文格式如下:

解释如下:

IP分片

当要发送的数据大于MTU的时候,通常需要进行IP分片,将数据分成多个IP数据报发送。MTU一般为1500字节。

有上文可知,在3位的标志字段中,如果允许分片,则相同的16位的标识字段标识这些分片属于同一个数据块,片偏移标识这些分片的先后顺序。

【完】