现在一般把计算机网络体系分为七层或者五层。
先来说说七层
1.七层网络体系
层数 | 名字 | 主要功能 | 对应的典型设备 | 传输单位 |
7 | 应用层 | 提供应用程序间通信 | 计算机:应用程序,如FTP,HTTP,SMTP | 程序级数据 |
6 | 表示层 | 处理数据格式,数据加密等 | 计算机:编码方式,如图像编码、URL、字符传输编码 | 程序级数据 |
5 | 会话层 | 建立、维护和管理会话 | 计算机:建立会话,如session认证,断点续传 | 程序级数据 |
4 | 传输层 | 建立主机端到端的连接 | 计算机:进程、端口.(TCP、UDP) | 数据段(segment) |
3 | 网络层 | 寻址和路由选择 | 网络:路由器、防火墙、多层交换机.(IP) | 数据包(packet) |
2 | 数据链路层 | 提供介质访问,链路管理等 | 网络:网卡,网桥,交换机.(ARP,ICMP) | 帧(frame) |
1 | 物理层 | 比特流传输 | 网络:中继器,集线器,网线和HUB | 比特(bit) |
七层网络属于国际标准,当主机程序需要传输用户的数据(data)时,数据先通过应用层接口进入应用层,在应用层,数据(data)被加上应用层的报头(Application Header,AH),再把这个整体传给下一层。表示层把应用层传入的整体,再加上表示层的报头(presentation header,PH)后传给下一层。同样的,会话层、传输层(TCP、UDP)、网络层(IP协议)、数据链路层(ARP,ICMP网间控制报文协议)(另外,链路层还要把网络层递下来的数据加上帧尾)也都要把上层传下来的数据加上自己的报头,最终形成一帧数据。
当一帧数据通过物理层传输到目标主机的物理层时,该主机物理层把帧数据往其上层数据链路层递,数据链路层负责去掉数据帧的帧头部和尾部,同时进行校验,如果数据没有出错,传到上层网络层。同样的,网络层、传输层、会话层,表示层、应用层也要做类似的工作,然后应用程序获得了最终的原始数据(data)。
1.五层网络体系
五层网络体系主要是大学教材描述的,其实就是把国际标准的七层网络体系中应用层、表示层、会话层统称为应用层。