所谓OSI,即Open System Interconnect ,开放系统互联模型。
        OSI可以分为七层,即从下到上,物理层--数据链路层--网络层--传输层--会话层--表示层--应用层
每层各不干扰,通过接口进行通讯。分层结构有助于我们学习和研究,对于厂家来说,只要专注于某些层的设备的生产,而不用考虑别的层的影响。有助于产品的研发和竞争。
       但OSI模型还是参考模型。在实际中并没有应用。而是采用TCP/IP模型。TCP/IP模型与OSI模型有对应的关系,也是采用分层结构。
       TCP/IP分为四层,分别为:网络接入层--网络互联层--传输层--应用层。
       网络接入层对应OSI的物理层和数据连路层
       网络互联层对应OSI的网络层
       传输层对应OSI的传输层
       应用层对应OSI的会话层,表示层和应用层
 
物理层:定义了数据传输的介质,如双绞线,同轴线缆,光纤等,物理层负责把上层传来的数据通过各种编码(比如曼彻斯特编码,不归零编码等)转换为0和1,以便能在各种介质上传输。或者将传来的0和1码转换为字符,再传递给上层处理。在现阶段,我们在物理层方面,我们不用过多的关注,我们只需要知道有哪些技术标准。具体的我们可以通过查阅书籍来了解。
        数据链路层:数据链路层又分为LLC(逻辑链路控制)和MAC(介质访问控制)子层。LLC负责和网络层通讯,而MAC负责和物理层通讯。这里说说MAC地址,MAC地址是以太网通讯的基础,数据的传送就是靠MAC地址来传送的。MAC地址有48位组层,即6个字节,可以表示为00-00-00-00-00-00或者0000:0000:0000,前三个字节是组织唯一代码(即组织分配给每个生产厂家的代码),后三个字节是厂家分配的。交换机就是利用MAC表来进行过滤,转发和泛洪的。
        各种局域网络可能采用不同的技术标准,为了使他们能够相通,数据链路层对数据采用了相同的帧结构,现在主要为8+6+6+2+46-1500+2的结构形式,8为8个字节的同步码,6为6个字节目的MAC地址,下个6为6个字节的源MAC地址,2为2个字节的长度/类型,46-1500为上层的数据的字节数,2为FCS(循环校验码)。同步码为了与以前10Mbit/s网络通讯而设置的,因为10Mbit/s网络通讯之前必须先同步,而现在100Mbit/s网络是不用先同步的。目的和源MAC地址则为数据的所要传送的目的的MAC地址和是谁发送的MAC地址。FCS为了保证数据的真确性而设的一个校验码。
 
 这次谈谈数据链路层设备的设备-交换机。借个图来简要讲解下。 我们都知道MAC地址在局域网中数据传输的重要性。交换机利用MAC地址起到过滤、转发和泛洪的作用。那交换机如何学习到MAC地址的呢?假设PC0要和PC1,PC0和PC2,PC0和PC3通讯,其通讯过程是怎么的呢?
         首先我们要明确交换机要起到利用MAC地址过滤、转发和泛洪,那么交换机必须能够识别帧,要不交换机怎么能够读取帧里面的目的MAC地址和源MAC地址。再次,交换机学习MAC地址,是通过读取帧的源MAC地址来学习的,然后将MAC地址出入MAC表,比如:当某个帧从交换机端口1进入,那么交换机就会读取此帧的源MAC地址,将此MAC地址与端口1对应并存入交换机MAC地址表。交换机通过目的MAC地址和MAC地址表比较,决定对该帧进行过滤、转发或者泛洪的处理。
          当PC0与PC1通讯,PC0发送数据帧,当数据帧到达Hub0后,数据帧被Hub泛洪,那么数据帧就会从端口2和3转发出去,当数据帧到达Switch0的端口1后,交换机读取帧的目的源MAC地址,与自己MAC地址表进行比较,这里分两种情况,假如MAC地址表中存在目的MAC地址(即PC1的MAC地址),由于PC1的MAC地址也是通过端口1可以到达,此时交换机则会对此数据帧进行过滤。