频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

三层以太网交换机CPU收发包问题的分析

来源: 作者: 出处:巧巧读书 2007-05-28 进入讨论组
下一页 1 2 3 

讨论组http://group.qqread.com

摘要:三层以太网交换机发展迅速,一方面网络设备的带宽及交换容量大幅提升,另一方面设备所支持的协议种类也随着用户的需求不断增加。如何在大业务量的网络环境下确保各设备之间协议包的正常交互,是以太网交换机设计面临的重要问题。

文章以基于ASIC的三层以太网交换机为例,从CPU负载、软硬件队列配置、CPU和交换芯片的通信机制等方面入手,讨论并分析在多进程环境中与CPU收发包功能相关的一些典型问题,得到解决办法。解决方法对于网络处理器(NP)同样适用。

关键词:三层以太网交换机 CPU 中断 轮询 直接存储器存取 队列调度

在当前的三层以太网交换设备中,报文的二层交换和三层路由主要由交换芯片和网络处理器完成,CPU基本上不参与交换和路由过程,主要完成管理和控制交换芯片的功能[1]。

在这种情况下,CPU的负载主要来自以下几个方面:协议的定时驱动、用户的配置驱动、外部事件的驱动。其中,外部事件的驱动最为随机,无法预料。典型的外部事件包括端口的连接/断开(Up/Down),媒体访问控制(MAC)地址消息的上报(包括学习、老化、迁移等),CPU通过直接存储器存取(DMA)收到包,CPU通过DMA发包等。

在以上所列的外部事件中,又以CPU通过DMA收到包之后的处理最为复杂。因为数据包由低层上送到上层软件时,各协议的处理动作千差万别,可能会涉及到发包、端口操作、批量的表操作等。所以,只有处理好CPU的收发包的相关问题,才能使相关的上层协议正常交互,从而使交换机稳定、高效地运行。

1 可能涉及到的问题

以下就CPU收发包可能涉及的各个方面分别说明。

下面的分析都基于典型的CPU收发包机制:CPU端口分队列,通过DMA接收,采用环形队列等。

1.1 CPU的负载与收包节奏控制

根据交换机处理数据包的能力,决定单位时间上送到CPU的包的个数;决定了单位时间上送多少个包给CPU后,再考虑上送数据包的节奏。

假设通过评估,确定了单位时间上送CPU数据包的上限,例如每秒x个数据包。

三层以太网交换机CPU收发包问题的分析(图一)

图1

图1给出了两种典型的处理手段:匀速上报CPU、突发(Burst)方式上报CPU,下面分别分析一下这两种方式的优劣:

(1)匀速上报CPU

数据包匀速上报CPU时,对CPU队列的冲击较小,而且对CPU队列的缓冲能力要求不高,CPU队列不必做得很大。

三层以太网交换机CPU收发包问题的分析(图二)【责编:Youping】
更多文章 更多内容请看三层交换技术专题交换机与路由器密码恢复交换机的选购专题,或进入讨论组讨论。
下一页 1 2 3 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章