博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二层设备与三层设备的区别--总结
阅读量:7030 次
发布时间:2019-06-28

本文共 1007 字,大约阅读时间需要 3 分钟。

1、前言

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

2、计算机网络

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

3、二层设备和三层设备

  二层设备是工作数据链路层的设备。二层交换机可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:

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

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

转载于:https://www.cnblogs.com/Anker/p/4034087.html

你可能感兴趣的文章
利用ES6进行Promise封装总结
查看>>
ES10 特性的完整指南
查看>>
学习threejs走过的坑
查看>>
ThinkSNS+的 SPA(H5)安装教程
查看>>
C++回声服务器_5-多进程版本
查看>>
CSS外边距折叠引发的问题
查看>>
【LeetCode】贪心算法--划分字母区间(763)
查看>>
Android 抖音爆红的口红挑战爬坑总结
查看>>
怎么就没发现华为Mate20 pro有这么多神奇功能!这波黑科技盘它!
查看>>
vue-cli3.0 vue.config.js 配置详解
查看>>
EOSIO 指南(启动你的节点并设置)
查看>>
一文带你看懂cookie,面试前端不用愁
查看>>
Electron + Antd + Mobx 环境搭建
查看>>
我从来不理解JavaScript闭包,直到有人这样向我解释它...
查看>>
在CentOS7上安装RabbitMQ
查看>>
作为大众熟知的电商应用,京东如何构建风控体系架构?
查看>>
js运行机制及异步编程(二)
查看>>
typescript文档化工具——Typedoc
查看>>
JS数据结构0x004:链表
查看>>
以太坊钱包开发系列1 - 创建钱包账号
查看>>