分层思想
将复杂的流程分解为几个功能相对单一的子过程
整个流程更加清晰,复杂问题简单化
更容易发现问题并针对性的解决问题
举例:
部门 | 职责 |
---|---|
原料采购部 | 选购优质奶源、与农场签订合同、保质保量运输奶源 |
奶源加工车间 | 原料验收、杀菌处理、储藏 |
奶粉生产车间 | 浓缩、喷雾干燥、冷却筛粉 |
奶粉包装车间 | 奶粉包装、奶粉装箱,质检 |
销售部门 | 联系各大销售渠道、联系物流运输 |
七层参考模型
什么是开放系统互连(OSI)参考模型?
开放系统互连参考模型 (Open System Interconnect 简称OSI)是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的开放系统互连参考模型,为开放式互连信息系统提供了一种功能结构的框架。它从低到高分别是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
七层参考模型及其功能
分 层 | 功 能 |
---|---|
应用层 | 网络服务与最终用户的一个接口 |
表示层 | 数据的表示、安全、压缩 |
会话层 | 建立、管理、中止会话 |
传输层 | 定义传输数据的协议端口号,以及流控和差错校验 |
网络层 | 进行逻辑地址寻址,实现不同网络之间的路径选择 |
数据链路层 | 建立逻辑连接、进行硬件地址寻址、差错校验等功育 |
物理层 | 建立、维护、断开物理连接 |
1、物理层:物理层处于OSI参考模型的最低层。物理层的主要功能是利用物理传输介质为数据链路层提供物理连接,以透明地传送比特流。
2、数据链路层:数据链路层在物理层提供比特流传输服务的基础上,在通信实体之间建立数据链路连接,传送以帧为单位的数据,通过差错控制、流量控制方法,变有差错的物理线路为无差错的数据链路。
3、网络层:网络层主要任务是通过执行路由选择算法,为报文分组通过通信子网选择最适当的路径。它是OSI参考模型七层中最复杂的一层。
4、传输层:传输层是向用户提供可靠的端到端服务,透明地传送报文。
5、会话层:会话层的主要目的是组织同步的两个会话用户之间的对话,并管理数据的交换。
6、表示层:表示层主要用于处理两个通信系统间信息交换的表示方式,它包括数据格式变换、数据加密与解密、数据压缩与恢复等功能。
7、应用层:应用层是OSI参考模型的最高层。应用层不仅要提供应用进程所需要信息交换和远程操作,而且还要作为应用进程的用户代理,完成一些为进行语义上有意义的信息交换所必须的功能。
综上所述可知,ISO/OSI开放系统互联七层参考模型中,功能最复杂的一层是网络层。
按照OSI七层协议的描述,传输层与网络层在功能上最大区别是传输层提供进程通信能力。
分层模型各层对应的设备
分 层 | 设备 |
---|---|
应用层 | 计算机 |
传输层 | 防火墙 |
网络层 | 路由器 |
数据链路层 | 交换机 |
物理层 | 网卡 |
OSI模型vsTCP/IP模型
TCP/IP4层模型 | TCP/IP 5层模型 | OSI 7层模型 |
---|---|---|
应用层 | 应用层 | 应用层 表示层 会话层 |
传输层 | 传输层 | 传输层 |
网络层 | 网络层 | 网络层 |
网络接口层 | 数据链路层 物理层 | 数据链路层 物理层 |
TCP/IP协议族的组成
TCP/IP是一系列协议的集合,所以称之为TCP/IP协议簇
分层 | 协议 |
---|---|
应用层 | HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP |
传输层 | TCP UDP |
网络层 | ICMP IGMP IP(IPV4 IPV6) |
数据链路层 | 由底层网络定义的 |
1、数据链路层
负责帧数据的传递。(经过数据链路层封装的数据称为帧)
数据链路层两个常用的协议时ARP(地址解析协议)和RARP(逆地址解析协议)。它们实现了IP地址和机器物理地址之间的相互转换。
网络层使用IP地址寻址一台机器,而数据链路层使用物理地址寻址一台机器,因此网络层必须先将目标机器的IP地址转换为其物理地址,
才能使用数据链路层提供的服务,这就是ARP协议的用途。RARP协议仅用于网络上的某些无盘工作站(没有硬盘)。因缺乏存储设备,
无盘工作站无法记住自己的IP地址,但他们可以利用网卡上的物理地址来向网络管理者(服务器或网络管理软件)查询自身的IP地址。
运行RARP服务的网络管理者通常存有该网络上所有机器的物理地址到IP地址的映射。
2、网络层
负责数据怎样传递过去。 网络层实现数据包的选路和转发。WAN(广域网)通常使用众多分级的路由器来连接分散的主机或LAN(局域网),因此,
通讯的两台主机一般不是直接相连的,而是通过多个中间节点(路由器)连接的。网络层的任务就是选择这些中间节点,
已确定两台主机之间的通讯路径。同时,网络层对上层协议隐藏了网络拓扑连接的细节,使得在传输层和网络应用程序看来,
通讯的双方是直接相连的。
3、传输层
负责传输数据的控制(准确性、安全性)
传输层为两台主机上的应用程序提供端到端(end to end)的通信。与网络层使用的逐跳通信方式不同,传输层只关心通信的
起始端和目的端,而不在乎数据包的中转过程。
垂直的实线箭头表示TCP/IP协议族各层之间的实体通信,而水平的虚线箭头表示逻辑通信线路。传输层为应用程序封装了一条
端到端的逻辑通信链路,它负责数据的收发、链路的超时重传等。
传输层协议主要有三个:TCP 协议、UDP协议、SCTP协议。
4、应用层
负责数据的展示和获取。
数据链路层、网络层、传输层负责处理网络通信细节,这部分必须既稳定又高效,因此它们都在内核空间中实现。而应用层则在
用户空间中实现,因为它负责处理众多逻辑,比如文件传输、名称查询和网络管理等。如果应用层也在内核中实现,则会让内核变的
十分庞大。当然,也有少数服务器程序是在内核中实现的,这样代码就无须在用户空间和内核空间来回切换(主要是数据的复制),
极大地提高了工作效率。不过这种代码实现起来较复杂,不够灵活且不便于移植。