二层设备与三层设备的区别--总结-阿里云开发者社区

开发者社区> 云计算> 正文

二层设备与三层设备的区别--总结

简介:

1、前言

  说来惭愧,我是学软件出生的,误打误撞去了一家搞网络设备的公司。本来对网络不熟悉,只知道一些基础的知识。虽然在公司主要是搞应用层开发,但是毕竟是网络公司,不懂网络肯定是不行的。为此要很下心来学习一些网络知识,从最基本的开始。网络设备最重要的是对报文转发和控制。高性能搞并发的转发报文需要很强的技术。目前炒的比较火的sdn(软件定义网络),将网络转发和控制分开,移到应用层。技术很先进,容易跟踪定位问他。例如intel的开发的dpdk,目前已经被很多公司采用。今天从简单的二层口和三层口学习起。

2、计算机网络

  学过计算机网络的人都知道,网络是分层次的。执行流程与邮局非常类似。例如从省寄信到某个乡村,邮局顺序一次是省邮局、市邮局、县邮局、镇邮局。一级一级的,最终送到乡村。iso给出网络标准是七层,而实际网络则是四层,即物理层、数据链路层、网络层、应用层。传统的网络设备通常工作在数据链路层和网络层,例如交换机、路由器。而目前有些网络控制设备则工作在应用层,这种设备用于对应用层的报文进行分析,进行应用识别和审计。

3、二层设备和三层设备

  二层设备是工作数据链路层的设备。二层交换机可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下: 
(1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的; 
(2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口; 
(3) 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上; 
(4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。 
不断的循环这个过程,对于全网的MAC地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。

  三层设备是工作在网络层的设备。路由器是最常用的三层设备,利用不同网络的ID号(即IP地址)来确定数据转发的地址。IP地址是在软件中实现的,描述的是设备所在的网络,有时这些第三层的地址也称为协议地址或者网络地址。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

其他文章