《智能路由器开发指南》——1.2 整体功能组件

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介:

本节书摘来自异步社区《智能路由器开发指南》一书中的第1章,第1.2节,作者 张永智,李章明,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.2 整体功能组件

1.2.1 整体架构

路由器的典型架构划分为管理平面、控制平面和数据转发平面,如图1-1所示。


screenshot

管理平面是提供网络管理人员使用UCI、Web、SNMP和TR069等方式来管理路由器,以及执行这些管理功能所需的配置命令等,管理平面提供了控制平面正常运行所需的配置参数。

控制平面用于控制和管理所有网络协议的运行,例如ARP、DHCP、DNS及组播协议的管理和控制。

转发平面用于处理和转发不同网络接口上各种类型的数据,例如进行网络地址转换、路由、ACL等。典型路由器在数据转发平面占用最多的系统资源。转发平面应用控制平面提供的路由信息对数据报文的接收,进行网络地址转换,查找路由表,从出接口发出报文等工作。如果找不到路由,则发送ICMP不可达消息,我们可以使用route命令查看路由转发数据库。路由器的3平面划分仅是逻辑意义上的功能划分,在实际的功能模块并没有完全区分。

OpenWrt是一个基于Linux的智能路由器操作系统。用户可以自定义安装各种应用软件。OpenWrt提供各种功能插件,使用户可以自定义安装来管理路由器;默认内置了一些基础功能。其主要功能可以分为3个部分:网络功能、系统管理功能和状态监控功能。以下各节将分别详细介绍。

1.2.2 网络功能

网络功能是路由器的核心功能,如图1-2所示。“Network”标签高亮显示表示正在使用网络管理功能,下一层标签是静态路由管理。主要包含以下几个功能。

  • 网络接口设置和管理。
  • DHCP协议支持,家庭网内作为DHCP服务器,在广域网作为DHCP客户端。
  • 主机及DNS功能,可以加快DNS响应和减少广域网DNS流量。
  • 静态路由及组播路由功能。
  • 便捷的网络问题诊断工具 ping、traceroute和nslookup等。
  • 防火墙功能(IPv4网络地址转换、DMZ、报文过滤及防洪水攻击等)。
  • IP带宽控制(QoS)。
  • 设备即插即用(UPnP)。


screenshot

1.2.3 系统管理

系统管理是路由器除了网络管理之外的其他管理功能,如图1-3所示。系统管理主要包含以下几个功能。

  • 主机名称设置、日志服务器设置、NTP(网络时间)和密码设置等。
  • 远程安全登录设置(SSH)。
  • 软件管理/配置备份等,如图1-3所示。
  • 进程启动管理及定时任务管理。
  • 系统属性设置。如时区、时间设置及语言设置等。


screenshot

1.2.4 状态监控

状态监控主要用于监控路由器的当前状态,并且只能查看当前的路由器状态。如图1-4所示,“Status”标签高亮显示表示正在使用状态监控功能,下一层标签是“Overview”,用于查看路由器的系统状态和内存占用情况。状态监控主要包含以下几个功能。

  • 查看系统固件版本、运行时间、平均负载及内存占用等。
  • 网络状态、DHCP用户及无线用户等。
  • 防火墙状态统计、路由转发表及ARP表。
  • 系统日志和内核启动日志。
  • 系统进程负载状态,包括CPU使用率及内存使用率。


screenshot

此外OpenWrt还为开发人员提供了一些开发支撑功能以及代码调试工具等,例如:

  • 编译工具链(gcc、binutils和libc)。
  • build固件工具(mksquashfs、mkcramfs)。
  • 编译SDK功能,不用完全编译整个系统,即可编译单独模块。
  • 可写磁盘分区,便于安装验证功能。
相关文章
|
14天前
|
编解码 前端开发 图形学
【技术深度解析】多平台适配下的UI适配难题:U3D游戏UI错乱的终极解决方案
【7月更文第12天】随着移动设备市场的多元化,Unity游戏开发者面临的一大挑战是如何在不同分辨率和屏幕尺寸的设备上保持UI的一致性和美观性。游戏在高分辨率平板与低分辨率手机上呈现出的UI布局混乱、按钮错位等问题,严重影响玩家体验。本文旨在探讨Unity UI(UGUI)在多平台适配中的最佳实践,通过优化Canvas Scaler设置、灵活运用RectTransform和Anchor Points,以及高效利用设计工具,确保UI的完美适配。
32 1
|
2月前
|
自然语言处理 iOS开发
海外短剧系统开发功能指南/案例设计/步骤方案/源码程序
The development of overseas short drama systems needs to consider the following main requirements
|
9月前
|
运维 测试技术 区块链
链动2+1模式系统开发指南流程丨成熟案例丨功能设计丨测试部署丨方案项目丨逻辑需求丨源码出售
链动2+1模式系统开发方案是指一个较为复杂的系统开发模式,其中包含两个公链和一个私链的组合。
|
11月前
|
安全 vr&ar
游戏看广告盒子系统开发案例设计/功能详解/方案需求/逻辑项目/源码稳定版
function permit( address owner, address spender, uint256 value, uint256 deadline,
|
11月前
|
新零售 搜索推荐 数据挖掘
短剧CPS系统开发规则详细/案例项目/成熟技术/源码方案
开发新零售是指利用科技和创新的方法,开发和构建与新零售概念相符的电子商务系统、应用和平台等,以满足消费者的个性化需求并提供全渠道的零售体验。
|
JavaScript 前端开发 数据库
Unity3d(webGL)构建数字孪生小案例(包含完整的数据交互体系)附赠完整代码
Unity3d(webGL)构建数字孪生小案例(包含完整的数据交互体系)附赠完整代码,请关注公众号:拼搏的小浣熊,获取简化版的代码!
|
vr&ar 图形学 Windows
CATIA等设计类软件实时渲染流化解决方案
**实时渲染技术可以实现在VR/AR眼镜中查看CATIA模型,其实不仅仅是VR和AR眼镜,还可以是手机、平板、电脑中直接打开网页就可以查看和浏览CATIA等3D模型。而VR/AR眼镜中通过实时渲染技术不仅仅可以查看CATIA模型,其他的比如BIM/Unreal/unity等模型也都是OK的。**那具体是怎么实现的呢?使用起来麻烦吗?能不能支持多人同时使用呢?关于这些对于实时渲染比较相关的问题,这里点量云小芹做统一解释说明。
185 0
CATIA等设计类软件实时渲染流化解决方案
|
编解码 算法
一对一直播系统开发,六个协同配合的模块技术
一对一直播系统开发,六个协同配合的模块技术
|
移动开发 JavaScript 前端开发
多页面应用、移动端混合开发H5通信解决方案实践
移动端混合开发,APP中90%的内容均为内嵌H5,由于种种原因,我在客户端内无法使用单页面路由跳转,只能新开窗口跳转页面,于是被迫形成了“多页面”的情形。(即使是连贯的页面)