网络通常分不同的层次进行开发,每一层又各自分工不同,负责自己的不同于其他层次的通信功能;
TCP/IP协议族分为四个层次:
应用层;
运输层;
网络层; 又名互联网层
链路层; 又名数据链路层或网络接口层其中的应用层关注的是应用程序的细节,而不是数据在网络中的传输活动;
但是其他三层主要处理所有的通信细节,对应用程序一无所知;
链路层:
通常包括操作系统的设备驱动程序和计算机对应的网络接口卡;
主要处理有关通信媒介的细节(如以太网,令牌环网等)
网络层:
在TCP/IP协议族中,该层包括IP协议(网际协议), ICMP协议(互联网控制报文协议), IGMP协议(互联网组管理协议);
其中IP提供的是不可靠的服务,它只是负责尽可能快的将分组从源结点送到目的结点;
运输层:
该层主要为两台主机上的应用程序提供端到端的通信; 在TCP/IP协议族中,有两个互不相同的传输协议:TCP协议(传输控制协议) 和 UDP(用户数据报协议);
TCP提供高可靠性的数据通信,为了提供高可靠性,TCP采用了超时重传,发送和接收端到端的确认分组等机制
UDP为应用层提供简单的服务,即把数据报的分组从一台主机发送到另一台主机,但并不保证数据报能否到达另一端,任何必须的可靠性都由应用层提供
应用层:
该层负责处理特定的应用程序细节(如: Telnet远程登录, FTP 文件传输协议等);
不同层次的协议:
TCP和UDP是运输层协议,均以IP作为网络层协议,TCP和UDP的每组数据报都通过端系统和每个中间路由器中的IP层在互联网中传输;
TCP使用的是不可靠的IP服务,但是TCP本身提供高可靠性的运输层服务;
UDP为应用程序发送和接收数据报(数据报是指从发送方传输到接收方的一个信息单元),与TCP不同,UDP是不可靠的;
IP是网络层的主要协议;
ICMP 是IP协议的附属协议,IP层用ICMP来与其他主机或路由器交换错误报文和其他重要信息, 虽然ICMP主要用于IP但是其他程序也可访问ICMP;
IGMP网络层协议,用来将一个UDP数据报多播到多个主机;
ARP(地址解析协议)和 RARP(逆地址解析协议)是链路层协议,是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换IP层和链路层使用的地址