zoukankan      html  css  js  c++  java
  • 网络二层,三层的区别和寻址过程

    二 三层地址
    -ip网络到网络
    -MAC主机到主机

    交换机与HUB

    HUB
    HUB又称集线器,是物理层的设备,是一层设备,连二层设备都算不上,二层设备指能识别mac地址的设备,三层设备指能识别ip地址的设备。
    作用:把连接所有主机的网线连接到一个网络设备上,设备只起对电信号转发作用,不对电信号进行另外处理。

    它的功能具体的说就是全端口转发,这就是很致命的安全问题,所有要发出去的数据包和接收的数据包,HUB都会给所有连接设备的主机,这种网络环境是不安全的,网络环境内别的主机如果想侦听数据包的内容,就能对其进行侦听,HUB默认工作在非混杂模式,网络环境的主机会对mac地址和ip进行比对,如果不是匹配的主机就会丢弃数据包,但是如果你在网络环境内的一台主机安装抓包工具,抓包工具可以把网卡制录为混杂模式,既然是混杂模式,网络环境内的任一主机就能对数据包进行监听。

    使用HUB会造成网络环境内的主机的性能下降,为什么呢,前面我们已经知道,HUB默认工作在非混杂模式下,就算本机没有多少的网络请求,但是你要对网络环境里每一个的主机发送接收数据包进行mac地址和ip比对,你要判断这是不是发给你的数据包,你该接收的数据包,会占用系统资源。


    交换机
    交换机是二层设备
    交换机根据学习地址转发
    在交换机的网络环境里,网络环境的任一主机开机,就会向网络环境里所有的设备发送一个免费的arp,里面包含了自己的MAC地址。 交换机的每一个网络接口里面有一小块内存,它会保存它接口下主机第一次发送数据包里的源MAC地址,交换机会将所有的MAC地址记录在一起,构成一个列表,这样你在二层寻址就会方便很多,另外交换机只会对广播包全端口转发,如果是单播的话,只会发给目标端口,在HUB里面所有主机共享带宽,在交换机双方可以独享带宽。

    二层局域网寻址过程
    在局域网内部用广播寻址
    寻址基于广播
    如果局域网里的一台电脑要发信息给另一台主机
    先进行寻址 寻址的方法就是向网络发送一个广播
    网络里的主机和网关都能接收到信息
    如果主机比对发现数据包是发给它的
    就会把自己的mac地址回复给发广播的主机
    当拿到目标的MAC地址后
    下次通信将发送具体数据包给网卡已经固化的主机
    (在数据包的包头里面固化mac地址)
    只能目标主机才能接收到数据包 比较自己网卡的mac地址和发来的数据包的地址 匹配一致就接收数据包
    补充:mac地址是48位二进制数的字符串,6个字节,用冒号分割,前三个字节是厂家ID,后三个字节是设备ID)

    三层网络寻址过程
    本机发送数据包,在本网段没有发现目标主机,就会发给网关设备
    在这里,本机是不知道自己网段的网关的mac地址的,首先进行二层寻址,前面我们已经知道,网关设备也会接收到广播,所有设备都会比对,网关设备对比确定MAC地址后,发现是发给自己的数据包,就会给本机返回数据包。第二次发送数据包会在IP头加上目标的IP,MAC头写上本地网关的ip地址,通过HUB或者交换机把数据包转发给网关,网关接收来自一个网络接口的数据包,根据其中所含的目的IP地址。再进行路由和转发。


    二层交换机:

    二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中.

    具体如下:
    (1)当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上;
    (2)再去读取包头中的目的MAC地址,并在地址表中查找相应的端口;
    (3)如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上.

    三层交换机: 三层交换技术就是将路由技术与交换技术合二为一的技术。在对第一个数据流进行路由后,它将会产生一个MAC地址与IP地址的映射表,当同样的数据流再次通过时,将根据此表直接从二层通过而不是再次路由,从而消除了路由器进行路由选择而造成网络的延迟,提高了数据包转发的效率.

    路由器:传统地,路由器工作于OSI七层协议中的第三层,其主要任务是接收来自一个网络接口的数据包,根据其中所含的目的地址,决定转发到下一个目的地址。因此,路由器首先得在转发路由表中查找它的目的地址,若找到了目的地址,就在数据包的帧格前添加下一个MAC地址,同时IP数据包头的TTL(Time To Live)域也开始减数,并重新计算校验和。当数据包被送到输出端口时,它需要按顺序等待,以便被传送到输出链路上。
    路由器在工作时能够按照某种路由通信协议查找设备中的路由表。如果到某一特定节点有一条以上的路径,则基本预先确定的路由准则是选择最优(或最经济)的传输路径。由于各种网络段和其相互连接情况可能会因环境变化而变化,因此路由情况的信息一般也按所使用的路由信息协议的规定而定时更新。

    主要区别:二层交换机工作在数据链路层,三层交换机工作在网络层,路由器工作在网络层。

    具体区别如下:

    二层交换机和三层交换机的区别
    三层交换机使用了三层交换技术
    简单地说,三层交换技术就是:二层交换技术+三层转发技术。它解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。
    什么是三层交换
    三层交换(也称多层交换技术,或IP交换技术)是相对于传统交换概念而提出的。众所周知,传统的交换技术是在OSI网络标准模型中的第二层——数据链路层进行*作的,而三层交换技术是在网络模型中的第三层实现了数据包的高速转发。简单地说,三层交换技术就是:二层交换技术+三层转发技术。
    三层交换技术的出现,解决了局域网中网段划分之后,网段中子网必须依赖路由器进行管理的局面,解决了传统路由器低速、复杂所造成的网络瓶颈问题。
    其原理是:假设两个使用IP协议的站点A、B通过第三层交换机进行通信,发送站点A在开始发送时,把自己的IP地址与B站的IP地址比较,判断B站是否与自己在同一子网内。若目的站B与发送站A在同一子网内,则进行二层的转发。若两个站点不在同一子网内,如发送站A要与目的站B通信,发送站A要向“缺省网关”发出ARP(地址解析)封包,而“缺省网关”的IP地址其实是三层交换机的三层交换模块。当发送站A对“缺省网关”的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP请求,B站得到此ARP请求后向三层交换模块回复其MAC地址,三层交换模块保存此地址并回复给发送站A,同时将B站的MAC地址发送到二层交换引擎的MAC地址表中。从这以后,当A向B发送的数据包便全部交给二层交换处理,信息得以高速交换。由于仅仅在路由过程中才需要三层处理,绝大部分数据都通过二层交换转发,因此三层交换机的速度很快,接近二层交换机的速度,同时比相同路由器的价格低很多。

    第二层交换机和路由器的区别
    传统交换机从网桥发展而来,属于OSI第二层即数据链路层设备。它根据MAC地址寻址,通过站表选择路由,站表的建立和维护由交换机自动进行。路由器属于OSI第三层即网络层设备,它根据IP地址进行寻址,通过路由表路由协议产生。交换机最大的好处是快速,由于交换机只须识别帧中MAC地址,直接根据MAC地址产生选择转发端口算法简单,便于ASIC实现,因此转发速度极高。但交换机的工作机制也带来一些问题。
    1.回路:根据交换机地址学习和站表建立算法,交换机之间不允许存在回路。一旦存在回路,必须启动生成树算法,阻塞掉产生回路的端口。而路由器的路由协议没有这个问题,路由器之间可以有多条通路来平衡负载,提高可靠性。
    2.负载集中:交换机之间只能有一条通路,使得信息集中在一条通信链路上,不能进行动态分配,以平衡负载。而路由器的路由协议算法可以避免这一点,OSPF路由协议算法不但能产生多条路由,而且能为不同的网络应用选择各自不同的最佳路由。
    3.广播控制:交换机只能缩小冲突域,而不能缩小广播域。整个交换式网络就是一个大的广播域,广播报文散到整个交换式网络。而路由器可以隔离广播域,广播报文不能通过路由器继续进行广播。
    4.子网划分:交换机只能识别MAC地址。MAC地址是物理地址,而且采用平坦的地址结构,因此不能根据MAC地址来划分子网。而路由器识别IP地址,IP地址由网络管理员分配,是逻辑地址且IP地址具有层次结构,被划分成网络号和主机号,可以非常方便地用于划分子网,路由器的主要功能就是用于连接不同的网络。
    5.保密问题:虽说交换机也可以根据帧的源MAC地址、目的MAC地址和其他帧中内容对帧实施过滤,但路由器根据报文的源IP地址、目的IP地址、TCP端口地址等内容对报文实施过滤,更加直观方便。
    6.介质相关:交换机作为桥接设备也能完成不同链路层和物理层之间的转换,但这种转换过程比较复杂,不适合ASIC实现,势必降低交换机的转发速度。因此目前交换机主要完成相同或相似物理介质和链路协议的网络互连,而不会用来在物理介质和链路层协议相差甚元的网络之间进行互连。而路由器则不同,它主要用于不同网络之间互连,因此能连接不同物理介质、链路层协议和网络层协议的网络。路由器在功能上虽然占据了优势,但价格昂贵,报文转发速度低。 近几年,交换机为提高性能做了许多改进,其中最突出的改进是虚拟网络和三层交换。
    划分子网可以缩小广播域,减少广播风暴对网络的影响。路由器每一接口连接一个子网,广播报文不能经过路由器广播出去,连接在路由器不同接口的子网属于不同子网,子网范围由路由器物理划分。对交换机而言,每一个端口对应一个网段,由于子网由若干网段构成,通过对交换机端口的组合,可以逻辑划分子网。广播报文只能在子网内广播,不能扩散到别的子网内,通过合理划分逻辑子网,达到控制广播的目的。由于逻辑子网由交换机端口任意组合,没有物理上的相关性,因此称为虚拟子网,或叫虚拟网。虚拟网技术不用路由器就解决了广播报文的隔离问题,且虚拟网内网段与其物理位置无关,即相邻网段可以属于不同虚拟网,而相隔甚远的两个网段可能属于不同虚拟网,而相隔甚远的两个网段可能属于同一个虚拟网。不同虚拟网内的终端之间不能相互通信,增强了对网络内数据的访问控制。
    交换机和路由器是性能和功能的矛盾体,交换机交换速度快,但控制功能弱,路由器控制性能强,但报文转发速度慢。解决这个矛盾的最新技术是三层交换,既有交换机线速转发报文能力,又有路由器良好的控制功能。

    第三层交换机和路由器的区别
    在第三层交换技术出现之前,几乎没有必要将路由功能器件和路由器区别开来,他们完全是相同的:提供路由功能正在路由器的工作,然而,现在第三层交换机完全能够执行传统路由器的大多数功能。作为网络互连的设备,第三层交换机具有以下特征:
    1.转发基于第三层地址的业务流;
    2.完全交换功能;
    3.可以完成特殊服务,如报文过滤或认证;
    4.执行或不执行路由处理。

  • 相关阅读:
    【转】 java中Class对象详解和类名.class, class.forName(), getClass()区别
    106. Construct Binary Tree from Inorder and Postorder Traversal
    105. Construct Binary Tree from Preorder and Inorder Traversal
    107. Binary Tree Level Order Traversal II
    109. Convert Sorted List to Binary Search Tree
    108. Convert Sorted Array to Binary Search Tree
    110. Balanced Binary Tree
    STL容器迭代器失效问题讨论
    113. Path Sum II
    112. Path Sum
  • 原文地址:https://www.cnblogs.com/-wenli/p/9630261.html
Copyright © 2011-2022 走看看