OFパケットをデコードして遊んでみた
table features をデコードしてみると、こんな感じになっていました。 requestのクセに結構複雑ですね。しかもこれまだ途中なんですよね。 propertiesのあたりが後9倍くらいは複雑になるかもしれませんです。
未だOF1.3の仕様書の読み込みが足りていない模様。 これは本当にrequestメッセージなのか…??
do_decode table_features {:ok, [version: 4, type: :multipart_request, xid: 0, body: [flags: [:more], body: [[table_id: 0, name: "Flow Table 0x00", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil, nil, nil, nil]], [table_id: 1, name: "Flow Table 0x01", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 2, name: "Flow Table 0x02", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 3, name: "Flow Table 0x03", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 4, name: "Flow Table 0x04", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 5, name: "Flow Table 0x05", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 6, name: "Flow Table 0x06", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 7, name: "Flow Table 0x07", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 8, name: "Flow Table 0x08", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]], [table_id: 9, name: "Flow Table 0x09", matadata_match: <<255, 255, 255, 255, 255, 255, 255, 255>>, metadata_write: <<255, 255, 255, 255, 255, 255, 255, 255>>, max_entries: 16777216, properties: [[instruction_ids: [goto_table: 131076, write_actions: 262148, clear_actions: 393220]], nil, nil, nil, nil, nil, nil, nil]]]]], ""} ````