码迷,mamicode.com
首页 > 其他好文 > 详细

vpp接口数据结构

时间:2016-06-24 20:39:16      阅读:399      评论:0      收藏:0      [点我收藏+]

标签:接口   元素   

dpdk_device_t 字段描述

lockp 发送队列锁,当发送队列个数少于线程个数时往port发包需要加锁,lockp是一个数组,每个元素对应一个发送队列,即每个发送队列一把锁

device_index 为port分配的index,每个port一个

vlib_hw_if_index 该port对应的hw结构的索引

vlib_sw_if_index 该port对应的sw结构的索引

per_interface_next_index 通过插件设置的下一个节点的index,如果没有设置该字段,默认下一个节点为handoff

tx_vectors 发包缓存(数组),每个线程一个,每个数组大小为4096

rx_vectors 收包缓存(数组),每个接收队列一个,每个数组大小为256

d_trace_buffers trace用于存放mbuf数组

frames 用于分发包用的数组,每个线程一个,目前暂未使用

dev_type 设备类型:ETH、KNI、VHOST_USER

pmd 驱动类型:THUNDERX、E1000EM、IGB、IGBVF、IXGBE、IXGBEVF、I40E、I40EVF、VIRTIO、VICE

cpu_socket 该port所在的numa

admin_up port的管理状态

promisc 混杂模式

tx_q_used port发送队列个数

rx_q_used port接收队列个数

nb_rx_desc port接收队列大小(描述符个数)

nb_tx_desc Port发送队列大小(描述符个数)

cpu_socket_id_by_queue 收每个接收队列的核对应的socket

port_conf port的配置

tx_conf 发送队列配置

kni Kni口

kni_port_id Kni口id

vu_if_id

vhost-user相关字段

vu_vhost_dev

vu_is_running

vu_intf

af_packet_port_id AF_PACKET口id

link port状态

time_last_link_update 最近一次更新port状态的时间

stats port的统计计数

last_stats 上一次获取的port的统计技术

last_cleared_stats 上次清除的port的统计计数

xstats port扩展统计

last_cleared_xstats 上次清除的port的扩展统计计数

time_last_stats_update 最近一次更新port统计计数的时间

port_type Port的类型:1G、10G、40G、BOND、SWITCH、NETMAP、AF_PACKET

efd_agent efd功能相关

need_txlock 发包是否需要加锁


ethernet_interface_t 字段描述

flag_change Port的管理状态、混在模式等flag修改函数

driver_instance 暂未使用

address[6] Port的mac地址


vnet_hw_interface_t 字段描述

name hw接口名字

flags Hw接口状态:

VNET_HW_INTERFACE_FLAG_LINK_UP

hw_address hw接口mac地址

output_node_index Output节点的index

tx_node_index Tx节点的index

dev_class_index 设备类型索引:dpdk_device_class.index

dev_instance 设备实例索引:dpdk_device_t结构的索引

hw_class_index hw接口类型索引:

ethernet_hw_interface_class.index

hw_instance hw接口类型实例索引:ethernet_interface_t结构的索引

hw_if_index hw结构的索引

sw_if_index Sw结构的索引

max_rate_bits_per_sec 每秒传输速率,暂未使用

min_supported_packet_bytes 接口支持的最小包长,默认:64

max_supported_packet_bytes 接口支持的最大包长,默认:9216

min_packet_bytes 接口支持的最小包长,默认:64

max_packet_bytes 接口支持的最大包长,默认:9216

per_packet_overhead_bytes 额外的节点长度:20,目前没看到有用

max_l3_packet_bytes[] 三层的MRU/MTU值,默认:9000

sub_interface_sw_if_index_by_id 子接口索引哈希表,key为标签值,value为子接口索引

l2_if_count 如果为1,所有的包都走ethernet-input?

bond_info bond口用


vnet_sw_interface_t 字段描述

type sw接口类型: HARDWARE、

SUB

flags 标志位:ADMIN_UP、PUNT、PROXY_ARP、UNNUMBERED、BOND_SLAVE

sw_if_index sw接口索引

sup_sw_if_index 父接口索引

unnumbered_sw_if_index 无编号接口索引:

http://www.china-ccie.com/doc/

ip-unnumbered/ip-unnumbered_chs.html

link_speed 链路速率,暂未使用

output_feature_bitmap Output feature,暂时只有ipsec-output

hw_if_index/ sub 联合体,父接口时hw_if_index指向hw的索引,子接口时sub用来保存子接口相关信息



vnet_sub_interface_t 字段描述

id 标签id

eth .outer_vlan_id 外面标签id

eth .inner_vlan_id 内存标签id

eth .raw_flags/eth .flags

标志位:

no_tags:没有tag

one_tag:有一个tag

two_tags:有两个tag

dot1ad:0 = dot1q, 1=dot1ad

exact_match:

default_sub:默认子接口?

outer_vlan_id_any:匹配任意外层标签,未实现

inner_vlan_id_any:匹配任意内层标签,未实现



本文出自 “陈漂评的博客” 博客,请务必保留此出处http://chenpiaoping.blog.51cto.com/5631143/1792697

vpp接口数据结构

标签:接口   元素   

原文地址:http://chenpiaoping.blog.51cto.com/5631143/1792697

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!