热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

路由器_路由器的结构

篇首语:本文由编程笔记#小编为大家整理,主要介绍了路由器的结构相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了路由器的结构相关的知识,希望对你有一定的参考价值。




路由器的构成



  1. 路由器是一组具有多个端口输入和多个端口输出的专用计算机。任务就是分组转发:从路由器的某一个输入端口收到的分组,按照分组要去的目的地(目的网络),把该分组从路由器某个合适的输出端口转发给下一跳路由器。

2.image



  1. 由图可知:路由器组成部分可分为:



    1. 路由选择部分(也叫控制部分):核心是路由选择处理机,根据所选定的路由选择协议构造出路由表,同时定期的和相邻路由器交换路由表信息,并不断更新维护自己的路由表信息。



    2. 分组转发部分:由三部分组成:



      1. 交换结构:又称为交换组织:根据转发表对分组进行处理,将某个端口进入的分组从一个合适的输出端口转发出去

      2. 一组输入端和一组输出端:输入端口中的查找和转发功能是最重要的。为了使交换功能分散化,往往把复制的转发表放在每一个输入端口中(如图虚线部分),路由选择处理机负责对各个转发表的副本进行更新,这些副本称之为影子副本,分散交换可以避免在路由器的某一点出现瓶颈。

      线速:由于路由器必须要以很高的速率转发分组。最理想的情况是输入端口的处理速度能够跟得上线路把分组擦混送到路由器的速率,这种速率称之为线速。



    3. 当一个分组正在查找路由表时候,后面又紧跟着从这个输入端收到的另一个分组,这个后面的分组必须要在队列中排队等待,因此产生了一定的时延。



    4. image



    5. 输出端口从交换结构中接收到分组,然后把他们发送到路由器外面的线路上。在网络层的处理模块中有一个缓冲区(队列),当交换结构传过来的分组的速率超过输出数据链路层的发送速率时,来不及发送的分组就必须暂时的放到这个队列中。数据链路层处理模块把分组加上链路层的首部和尾部,交给物理层发送到外部线路。



    6. image



    7. 从以上来看:分组在路由器的输入端和输出端可能都会在缓冲队列中排队等待处理,若分组的处理速度赶不上分组进入缓冲队列的速度,则队列的存储空间最终对会减少到零,一旦减少到零,这就使得后面进入队列的分组由于没有存储空间而被丢弃掉。以前我们提出的分组丢失就是发生在路由器中的输入或者输出队列产生溢出的时候。当然,设备的断电等自然只能因素也会导致分组丢失。



    8. 交换结构:



      1. 交换结构是把一个分组藏一个输入端运输到适合的输出端口。实现交换结构总共有三种方法:

        1. 通过存储器

        2. 通过总线

        3. 通过互联网络









推荐阅读
  • 小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限
    小王详解:内部网络中最易理解的NAT原理剖析,挑战你的认知极限 ... [详细]
  • 探讨Redis的最佳应用场景
    本文将深入探讨Redis在不同场景下的最佳应用,包括其优势和适用范围。 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • 在多线程环境中,IpcChannel的性能表现并未如预期般优于Tcp和Http通道。实际测试结果显示,在IIS6中通过Remoting创建的Ipc通道,其速度比Tcp通道慢了约20倍。本文详细分析了这一现象的原因,并提出了针对性的优化建议,以提升IpcChannel在高并发场景下的性能表现。 ... [详细]
  • 本文是Java并发编程系列的开篇之作,将详细解析Java 1.5及以上版本中提供的并发工具。文章假设读者已经具备同步和易失性关键字的基本知识,重点介绍信号量机制的内部工作原理及其在实际开发中的应用。 ... [详细]
  • 本指南详细介绍了如何利用华为云对象存储服务构建视频点播(VoD)平台。通过结合开源技术如Ceph、WordPress、PHP和Nginx,用户可以高效地实现数据存储、内容管理和网站搭建。主要内容涵盖华为云对象存储系统的配置步骤、性能优化及安全设置,为开发者提供全面的技术支持。 ... [详细]
  • 深入解析 Synchronized 锁的升级机制及其在并发编程中的应用
    深入解析 Synchronized 锁的升级机制及其在并发编程中的应用 ... [详细]
  • Python多线程编程技巧与实战应用详解 ... [详细]
  • 深入解析CAS机制:全面替代传统锁的底层原理与应用
    本文深入探讨了CAS(Compare-and-Swap)机制,分析了其作为传统锁的替代方案在并发控制中的优势与原理。CAS通过原子操作确保数据的一致性,避免了传统锁带来的性能瓶颈和死锁问题。文章详细解析了CAS的工作机制,并结合实际应用场景,展示了其在高并发环境下的高效性和可靠性。 ... [详细]
  • C++ 异步编程中获取线程执行结果的方法与技巧及其在前端开发中的应用探讨
    本文探讨了C++异步编程中获取线程执行结果的方法与技巧,并深入分析了这些技术在前端开发中的应用。通过对比不同的异步编程模型,本文详细介绍了如何高效地处理多线程任务,确保程序的稳定性和性能。同时,文章还结合实际案例,展示了这些方法在前端异步编程中的具体实现和优化策略。 ... [详细]
  • 在当今的软件开发领域,分布式技术已成为程序员不可或缺的核心技能之一,尤其在面试中更是考察的重点。无论是小微企业还是大型企业,掌握分布式技术对于提升工作效率和解决实际问题都至关重要。本周的Java架构师实战训练营中,我们深入探讨了Kafka这一高效的分布式消息系统,它不仅支持发布订阅模式,还能在高并发场景下保持高性能和高可靠性。通过实际案例和代码演练,学员们对Kafka的应用有了更加深刻的理解。 ... [详细]
  • 观察 | 求职体验:收到录用通知的公司通常不深究技术细节,而那些详细追问的公司往往没有后续进展
    观察 | 求职体验:收到录用通知的公司通常不深究技术细节,而那些详细追问的公司往往没有后续进展 ... [详细]
  • 如何利用Java 5 Executor框架高效构建和管理线程池
    Java 5 引入了 Executor 框架,为开发人员提供了一种高效管理和构建线程池的方法。该框架通过将任务提交与任务执行分离,简化了多线程编程的复杂性。利用 Executor 框架,开发人员可以更灵活地控制线程的创建、分配和管理,从而提高服务器端应用的性能和响应能力。此外,该框架还提供了多种线程池实现,如固定线程池、缓存线程池和单线程池,以适应不同的应用场景和需求。 ... [详细]
  • 在使用 SQL Server 时,连接故障是用户最常见的问题之一。通常,连接 SQL Server 的方法有两种:一种是通过 SQL Server 自带的客户端工具,例如 SQL Server Management Studio;另一种是通过第三方应用程序或开发工具进行连接。本文将详细分析导致连接故障的常见原因,并提供相应的解决策略,帮助用户有效排除连接问题。 ... [详细]
author-avatar
空灵一_一_379
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有