欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    L3 hwapi BCM56338芯片实现分析Word文件下载.docx

    • 资源ID:13875362       资源大小:1.31MB        全文页数:16页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    L3 hwapi BCM56338芯片实现分析Word文件下载.docx

    1、1.3. 参考资料BCM56500 Programmers Register Reference GuideBCM56330 Theory of OperationsLayer 3 Lookups and Enhancements2. 硬件实现原理2.1. 硬件表2.1.1. L3_ENTRY描述: L3_ENTRY是以下四个表的统称:L3_ENTRY_IPV4_UNICAST,L3_ENTRY_IPV4_MULTICAST,L3_ENTRY_IPV6_UNICAST,L3_ENTRY_IPV6_MULTICAST,通过KEY_TYPE的设置,来分别作为上面四个表 最小索引: 最大索引:819

    2、1 地址:根据不同表的类型,地址不同L3_ENTRY_IPV4_UNICAST 如下图:L3_ENTRY_IPV4_MULTICAST 如下图L3_ENTRY_IPV6_UNICAST 如下图L3_ENTRY_IPV6_MULTICAST 如下图2.1.2. ING_L3_NEXT_HOP 描述:该表定义了路由报文的下一跳相关信息(出端口)。0x10A100002.1.3. EGR_L3_NEXT_HOP该表定义了路由报文的下一跳相关信息(下一跳目的MAC,intf)。0x03B100002.1.4. EGR_L3_INTF 该表定义了路由报文的下一跳相关信息(下一跳源MAC,出端口vlan)

    3、。40950x03B200002.1.5. L3_ECMP_COUNT 该表定义了等价路由的个数。20470x10AA00002.1.6. L3_ECMP 该表定义了等价路由的NEXT_HOP_INDEX信息。0x10A000002.2. BCM56338 L3功能的硬件实现流程图BCM56338 L3功能的硬件实现流程如图 2所示。图 2 BCM56338 L3功能的硬件实现流程图如图 2所示,BCM56338 L3功能的硬件实现流程主要由以下几步组成: 在L3_ENTRY表中查找DIP,如果找到,根据NEXT_HOP_INDEX信息,找ING_L3_NEXT_HOP表和EGR_L3_NEX

    4、T_HOP表,获取L3转发路径相关信息; 如果L3_ENTRY中未找到,则在lpm表中寻找; 如果是等价路由,那么在lpm表中,获取ECMP_PTR信息,指向L3_ECMP表和L3_ECMP_COUNT表,获取等价路径的NEXT_HOP_INDEX信息;3. 软件实现原理3.1. bcm56338 L3部分功能软件结构目前在ITN201上实现了bcm56338的L3转发功能,软件接口函数代码集中在cesw_asspipn201_sspsrcbcmIpHw.c中,功能函数代码集中在cesw_asspipn201_sspsrcbcmRoute.c中。3.2. bcm56338 L3部分软件功能实现

    5、方案分析3.2.1. 接口ROS_HW_SV_IP_ROUTING实现方案分析接口功能:接口ROS_HW_SV_IP_ROUTING实现L3转发功能的使能与关闭3.2.1.1. 实现原理: bcm_tms_l3_enable_set。3.2.1.2. 硬件关系图3.2.1.3. 特殊要求与实现3.2.1.4. SDK与SSP支持情况SDK提供(1) bcm_l3_enable_set ()(2) bcm_arp_to_cpu_enable ()(3) bcm_l3_info ()(4) bcm_l2_addr_get()(5)bcm_l2_addr_add()其中,bcm_l3_enable_

    6、set设置port表的V4L3_ENABLE和V6L3_ENABLE;bcm_arp_to_cpu_enable设置arp报文上交cpu;bcm_l3_info获取芯片支持的最大intf数量;bcm_l2_addr_get根据intf获取的mac和vlan id,查找L2_ENTRY,bcm_l2_addr_add将这些查找到的entry的L3标志位置1。3.2.2. 接口ROS_HW_SS_ROUTE_INFO实现方案分析添加intf信息,并保存3.2.2.1. 实现原理: bcm_tms_route_info_set。3.2.2.2. 硬件关系图3.2.2.3. 特殊要求与实现3.2.2.

    7、4. SDK与SSP支持情况(1) bcm_l3_intf_create ()3.2.3. 接口ROS_HW_SS_ROUTE_DEST实现方案分析配置目的路由3.2.3.1. 实现原理: bcm_tms_route_dest_set。3.2.3.2. 硬件关系图3.2.3.3. 特殊要求与实现3.2.3.4. SDK与SSP支持情况(1) bcm_l3_egress_create ()(2)bcm_l3_ip_add()(3)bcm_l3_defip_add()(4)bcm_l3_egress_multipath_add()(5)bcm_l3_egress_multipath_create(

    8、)bcm_l3_egress_create()负责创建三层出接口,包括写ING_L3_NEXT_HOP表和HOP表;bcm_l3_ip_add(),创建主机直连路由的时候,使用该函数。最终调用到函数bcm_xgs3_l3_add(),该函数中调用三个函数,分别是:_bcm_xgs3_nh_init_add(),用来获取next hop index;_bcm_xgs3_l3_add(),该函数写L3_ENTRY表;bcm_xgs3_host_as_route(),如果L3_ENTRY写满,不能再写了,执行刚才的函数,写到最长前缀匹配表中。如果是主机路由,并且非直连,或者是网络路由,就要写到最长前

    9、缀匹配表中。此时分三种情况:一种是新创建的路由,即原路由不存在,则调用bcm_l3_defip_add函数,此时除了添加必要的信息,比如目的ip地址,下一跳ip地址,还需要传递BCM_L3_D_HIT,BCM_L3_ADD_TO_ARL这两个宏下去,还需要传递bcm_l3_egress_create创建的egr_intf下去;一种是原来就存在的路由,而且是等价路由,那么就只需要将新的路由信息添加到等价组当中就可以,bcm_l3_egress_multipath_add()函数来实现这个功能。该函数实现流程如下:调用bcm_xgs3_l3_egress_multipath_get()函数,来获取

    10、原来等价路径的结构;将传递下来的intf添加到获取的等价组的最后;调用bcm_xgs3_l3_egress_multipath_creat()函数来替换原来的等价组,替换的功能,是通过传递的BCM_L3_REPLACE宏和BCM_L3_WITH_ID来实现的;一种是原来存在的路由,但是不是等价路由,也就是只有一条路径,此时流程是:先用bcm_l3_defip_get()函数,各get出原来的路由信息,目的是得到原来的intf;利用bcm_l3_egress_multipath_create()函数,以bcm_l3_egress_create创建的egr_intf为参数,创建等价组,bcm_l3

    11、_egress_multipath_create()函数在bcm_l3_egress_multipath_add()函数中也会被调用,区别就是传递的宏不一样,实现的功能就不一样;调用bcm_l3_egress_multipath_add()函数,将get出来的原来路由信息中的intf,加入到刚刚创建的等价组当中;调用bcm_l3_defip_add()函数,更新原来的路由信息为等价路由,功能实现靠的也是两个宏,即BCM_L3_MULTIPATH和BCM_L3_REPLACE。3.2.4. 接口ROS_HW_SS_ROUTE_DEST_UPDATE实现方案分析更新目的路由3.2.4.1. 实现原

    12、理: bcm_tms_route_dest_update。3.2.4.2. 硬件关系图3.2.4.3. 特殊要求与实现3.2.4.4. SDK与SSP支持情况(2)bcm_l3_egress_get()先调用bcm_l3_egress_get()获取原来的egress相关信息,包括出端口,vlan,intf信息,再利用bcm_l3_egress_create ()更新原来的egress信息。同样,也是靠宏BCM_L3_REPLACE宏BCM_L3_WITH_ID来实现的3.2.5. 接口ROS_HW_SV_ROUTE_DEST_DEL_ALL实现方案分析删除所有目的路由3.2.5.1. 实现原理: bcm_tms_route_dest_all_delete。3.2.5.2. 硬件关系图3.2.5.3. 特殊要求与实现3.2.5.4. SDK与SSP支持情况SSP提供(1) bcm_l3table_del_all ()(2) bcm_defip_del_all()(1) _bcm_xgs3_l3_del_match ()(2)_bcm_fbx_lpm_update_match ()(3)bcm_l3_egress_multipath_destroy()(4)bcm_


    注意事项

    本文(L3 hwapi BCM56338芯片实现分析Word文件下载.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开