TCP/IP协议族详解

TCP/IP和ISO/OSI分层

TCP/IP协议族详解

说明:ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference
Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。

关于各协议的介绍

TCP/IP协议族详解

  • ICMP协议

作用:通过IP传送,用于辅助 IP 工作。通过ICMP返回包的消息类型标识确认IP包是否成功送达目标地址及通知在发送过程中IP包被废弃的具体原因,改善网络设置(比如重定向最优路径)。

简单得说就是,主机发了包,路由器带着走了一遭之后,出现问题或者需要优化把信息回送给主机。

下图可以看到:ping 指令就是通过ICMP回送消息实现的。

  • ARP

ARP 地址解析协议,将IP地址转换为 Mac 地址。
RARP 逆地址解析协议,将 Mac 地址转换为 IP 地址。
TCP/IP协议族详解

路经MTU
MTU是某链路上一次性允许通过的最大数据限制。
路径MTU指的是从发送端主机到接收端主机之间不需要分片时的最大MTU大小,为了防止TCP/IP传输过程中分片。

  • FTP协议

文件传输,将保存在其他主机上的文件下载到自己硬盘上。
文件传输过程中建立两个TCP连接,一是发出传输请求时所要用到的控制连接。二是实际传输时要用到的数据连接。

  • IP协议

网络层的主要作用就是“实现终端节点之间的通信”,也称之为“点对点的通信”
IP是一种网络层协议,提供的是一种不可靠的服务,它只是尽可能快地把分组从源结点送到目的结点,但是、并不提供
任何可靠性保证。同时被TCP和UDP使用。TCP和UDP的每组数据都通过端系统和每个中间路、由器中的IP层在互联网中
进行传输。

IP作用分为: 1. IP寻址 2. 路由(最终节点为止的转发) 3. IP分包与组包

ICMP是IP协议的附属协议。IP层用它来与其他主机或路由器交换错误报文和其他重要信息。

IGMP是Internet组管理协议。它用来把一个UDP数据报多播到多个主机。

  • TCP协议

TCP是一个传输控制协议,它为两台主机提供了可靠性的数据通信,它所做的工作包括把应用程序交给它的数据进行合适
的分块交给下层的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等

  • UDP协议

UDP是用户数据报协议,它为应用层提供了简单的服务,它只是把称作数据报的分组从一台主机发送到另外一台主机,并
不保证该数据报能到达另外一端。

另外再提一下关于端口号的介绍

端口号用来识别同一台计算机中进行通信的不同应用程序,传输层协议正是利用这些端口号识别本机正在通信的应用程序;端口号由其使用的传输层协议决定,因此不同的传输层协议可以使用相同的端口号。

1 . 端口号的确定方法
静态方法(标准既定的端口号)
时序分配法 服务器有必要确定监听端口号,但是接受服务的客户端没必要确定端口号。在这种方法下,客户端应用程序完全可以不用自己设置端口号,而全权交给操作系统进行分配。动态分配的端口号范围在 49152~65535 之间。
2.服务器一般都是通过知名端口号来识别的。例如,对于每个TCP/IP实现来说,FTP服务器的TCP端口号都是21,每个
Telnet服务器的TCP端口号都是23,每个TFTP (简单文件传送协议)服务器的UDP端口号都是69。任何TCP/IP实现所
提供的服务都用知名的1~1023之间的端口号。这些知名端口号由Internet号分配机构(Internet Assigned
Numbers Authority, IANA)来管理。知名端口号介于1~255之间;256~1023之间的端口号通常都是由Unix系统
占用,以提供一些特定的Unix服务;1024~5000端口号用于客户端分配临时端口号;大于5000的端口号是为其他服务
器预留的。

封装与分用

  • 封装
    TCP/IP协议族详解

如上图所示,当应用程序采用TCP传送数据时,数据被送入协议栈中,然后,通过每一层直到被当做一串比特流传入网络中。其中每一层收到数据都会对数据增加一些首部信息(有的还需要尾部信息)。TCP传给IP的数据单元称为TCP报文段或简称为TCP段(UDP传给IP的数据单元称为UDP数据段),IP传给网络接口层的数据单元称为IP数据报。通过以太网传输的比特流称为帧。

  • 分用
    TCP/IP协议族详解

当目的主机收到了一个以太网的数据帧时,数据要从协议栈中,由底往上,同时去掉各层协议上的报文首部,如上图所示

最后附上IP协议的一些说明:

  1. 关于IP地址分类
    TCP/IP协议族详解

  2. IP报文首部格式:

TCP/IP协议族详解