Files
NE_YuR/openflow/README.txt
2025-11-06 00:01:42 +08:00

25 lines
1.6 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

实现内容:
协议编号 - 协议类型 - 子协议类型 - 描述
1 - OFPT_FEATURES_REQUEST=5 - 无 - 获取交换机支持多少流表
2 - OFPT_GET_CONFIG_REQUEST=7 - 无 - 查询交换机配置
3 - OFPT_MULTIPART_REQUEST=18 - OFPMP_DESC=0 - 获取交换机版本信息,制造商家等信息
4 - OFPT_MULTIPART_REQUEST=18 - OFPMP_FLOW=1 - 获取交换机流表信息
5 - OFPT_MULTIPART_REQUEST=18 - OFPMP_AGGREGATE=2 - 获取交换机总流量统计
6 - OFPT_MULTIPART_REQUEST=18 - OFPMP_TABLE=3 - 获取交换机流统计表,动作,时间等
7 - OFPT_MULTIPART_REQUEST=18 - OFPMP_PORT_STATS=4 - 获取交换机端口计数统计
8 - OFPT_MULTIPART_REQUEST=18 - OFPMP_GROUP_FEATURES=8 - 获取交换机组特征
9 - OFPT_MULTIPART_REQUEST=18 - OFPMP_PORT_DESC=13 - 获取交换机端口信息
10 - OFPT_PACKET_OUT=13 - 无 - 处理控制器报文根据action动作输出
11 - OFPT_FLOW=14 - ADD=0 - 添加交换机流表规则
12 - OFPT_ROLE_REQUEST=24 - 无 - 配置交换机角色
openflow数据结构: ofp_v4.h
流表规则数据结构路径: fast_struct.h
OUTPUT调用发送函数: void nms_exec_action(u32 inport,u32 outport,struct eth_header *eth,int len,int hit_idx)/*最后参数-1表示未携带查表命中信息,此处仅做发送*/ inport 接收端口号 outport 输出端口号 eth 以太网报文 len 报文长度 hit_idx 命中消息类型
Flow_add调用添加函数: 新增一条规则,要求用户输入完整的规则数据结构,包括规则字段,掩码和相应动作,返回值为存储当前规则的索引值 int fast_add_rule(struct fast_rule *rule)