网络基础:(一)OSI模型分层概述

admin 2021年12月06日 842次浏览

1、基础概念

  • 广播域

    广播域是同一个网段下所有设备组成的集合,这些设备都将侦听该网段中发送的所有广播。在网络中,可以使用路由器将大的广播域分割为多个小的广播域,因为路由器不转发广播。

  • 冲突域

    在同一个网段中,如果有两台主机同时发送数据,那么将产生冲突,而使得这两台主机必须分别重传数据,从而导致数据传输效率低下,在早期使用网络集线器组建局域网时,这种情况较为常见,因为连接到同一网络集线器下的所有主机都处于同一个冲突域中,且为同一个广播域。在现在网络中,已经使用交换机替代了网络集线器,而交换机的每一个端口都属于一个独立的冲突域**(仍然所有的设备都处于同一个广播域)**,因此也就不存在多台设备同时发送分组时产生冲突的情况,从而提高了数据的传输效率。

2、OSI模型

网络刚面世时,通常只有同一家制造商生产的计算机才能彼此通信,OSI模型旨在以协议的形式帮助厂商生产可互操作的网络设备和软件 让不同厂商的网络能够协同工作。

2.1、OSI参考模型的优点

  • 将网络通信过程划分为更小、更简单的组建,这有助于组建的开发、设计和故障排除
  • 通过标准化组件,让多家厂商可以协作开发
  • OSI定义了模型每层执行的功能,从而鼓励了行业的标准化
  • 让不同类型的网络硬件和软件能够彼此通信
  • 避免对一层的修改影响其他层,从而避免妨碍开发工作

2.2、OSI模型各分层简介

自顶向下分别是:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层

2.2.1、应用层

应用层是用户和计算机交流的场所,仅当需要马上访问网络时,这一层才发挥作用。应用层是让应用程序将消息沿协议栈向下传输,从而充当了应用层序和下一层之间的接口。应用层还负责确定目标通信方的可用性,并判断是否有足够的资源进行想要的通信

2.2.2、表示层

表示层的作用是向应用层提供数据,并负责数据转换和代码格式化

2.2.3、会话层

会话层负责在表示层实体之间建立、管理和终止会话,还对设备或节点之间的会话进行控制,它协调和组织系统之间的通信

在这一层中,提供了三种传输方式:单工、半双工、全双工

2.2.4、传输层

1、概述

传输层将数据进行分段并重组为数据流。工作于传输层的服务,将上层应用产生的数据进行分段和重组,并将它们合并到同一个数据流中。它们提供了端到端的数据传输服务,并可以在互联的网络上的发送主机和接收主机之间建立逻辑连接。(常见的TCP/UDP就工作于该层)

传输层负责提供以下机制:对上层应用程序进行多路复用、建立会话及拆除虚电路,同时还提供了透明的数据传输,从而对高层隐藏随网络而异的信息

2、可靠传输(TCP)技术介绍
  • 流量控制

    数据的完整性有传输层保证,这是通过流量控制及允许应用程序请求在系统之间进行可靠的数据传输实现的,流量控制可避免作为发送方的主机让作为接收方的主机的缓存溢出

    流量控制可以实现的目标:

    • 收到数据后,向发送方确认
    • 重传所有未得到确认的数据段
    • 数据段到达目的地后,按正确的顺序排列它们
    • 确保数据流量不超过处理能力,以避免拥塞、过载和数据丢失
  • 面向连接的通信

    在可靠的传输操作中,要传输数据的设备建立一个到远程设备的面向连接的通信会话。传输设备首先与其对等系统建立面向连接的会话,这个过程称之为呼叫建立或三次握手,然后开始传输数据。数据传输完毕后,将进行呼叫终止,以拆除虚电路

    当主机收到大量数据包,超出其处理能力时,接收方会将这些数据包存在缓冲区中,同时接收方向发送方发出“未准备好”的信号,从而避免数据泛滥或数据丢失;当处理完缓冲区中的数据后,向发送方发送“准备就绪”的信号,在发送方收到该信号时,将继续发送数据

    在面向连接的可靠数据传输中,数据包到达接收主机的顺序和发送方发送的顺序完全相同,若顺序不同,则传输失败;在数据传输过程中,有任何数据段丢失、重复和受损,传输也将失败

    面向连接的传输特征:

    • 建立虚电路(三次握手)
    • 使用排序技术
    • 使用确认
    • 使用流量控制
  • 窗口技术

    如果每次数据传输都要等到收到接收方发出的确认信号后再发送下一组数据,那么数据的传输将变得缓慢,因此可以在收到确认信号前向接受发发送更多的数据量称为窗口(单位为字节),窗口的大小控制了一方传输给另一方的信息量。

    例如窗口大小为1时,发送方每传输一个数据后,都要等到收到确认信号后,再发送下一个数据;如果窗口大小为3,那么就可以在发送3个数据后,再等待确认信号,在收到确认信号后,再发送三个数据,以此类推。如果接收方未收到所有应该确认的字节,那么接收方将缩小窗口,以改善通信会话

  • 确认

    使用确认和重传,可以实现数据的不重复和丢失,该方法要求接收方再收到数据后,向发送方发送一条确认消息,发送方记录每一个以字节为单位的数据段,将其发送后等待确认,而暂不发送下一条数据。发送数据段后,发送方将启用定时器,如果在定时器到期后仍未收到接收方的确认,那么就重传该数据段

    示例:发送方发送7个字节的数据给接收方

    • 发送方发送1、2、3数据段,接收方发送请求数据段4,说明前面3个数据段全部收到了
    • 发送方收到确认后,发送4、5、6数据段,如果5号数据段没有到达,那么接收方请求重传该数据段,发送方重传该5号数据段,并等待确认
    • 发送方收到确认后,发送7号数据段

2.2.5、网络层

网络层管理设备的编址、跟踪设备在网络中的位置,并确定最佳的数据传输路径,因此,网络层位于不同网络中的设备之间传输数据流(路由器工作于该层)

2.2.6、数据链路层

该层提供数据的物理传输,并处理错误通知、网络拓扑和流量控制,该层使用硬件地址(MAC)确保报文传输到LAN中的正确设备。该层还将把来自网络层的报文封装成帧,并添加定制的报文头(源MAC地址和目标MAC地址)

2.2.7、物理层

物理层主要接收和发送比特信号,直接与通信介质交流,表现为高低电平信号