|
@@ 159-206 (lines=48) @@
|
| 156 |
|
return BinaryData(b'') |
| 157 |
|
|
| 158 |
|
|
| 159 |
|
class AggregateStatsRequest(GenericStruct): |
| 160 |
|
"""Body for ofp_stats_request of type OFPST_AGGREGATE.""" |
| 161 |
|
|
| 162 |
|
#: ID of table to read (from ofp_table_stats) OFPTT_ALL for all tables. |
| 163 |
|
table_id = UBInt8() |
| 164 |
|
#: Align to 32 bits. |
| 165 |
|
pad = Pad(3) |
| 166 |
|
#: Require matching entries to include this as an output port. A value of |
| 167 |
|
#: OFPP_ANY indicates no restriction. |
| 168 |
|
out_port = UBInt32() |
| 169 |
|
#: Require matching entries to include this as an output group. A value of |
| 170 |
|
#: OFPG_ANY indicates no restriction. |
| 171 |
|
out_group = UBInt32() |
| 172 |
|
#: Align to 64 bits |
| 173 |
|
pad2 = Pad(4) |
| 174 |
|
#: Require matching entries to contain this cookie value |
| 175 |
|
cookie = UBInt64() |
| 176 |
|
#: Mask used to restrict the cookie bits that must match. A value of 0 |
| 177 |
|
#: indicates no restriction. |
| 178 |
|
cookie_mask = UBInt64() |
| 179 |
|
#: Fields to match. Variable size. |
| 180 |
|
match = Match() |
| 181 |
|
|
| 182 |
|
def __init__(self, table_id=Table.OFPTT_ALL, out_port=PortNo.OFPP_ANY, |
| 183 |
|
out_group=Group.OFPG_ANY, cookie=0, cookie_mask=0, |
| 184 |
|
match=None): |
| 185 |
|
"""Create a AggregateStatsRequest with the optional parameters below. |
| 186 |
|
|
| 187 |
|
Args: |
| 188 |
|
table_id (int): ID of table to read (from ofp_table_stats) |
| 189 |
|
OFPTT_ALL for all tables. |
| 190 |
|
out_port (int): Require matching entries to include this as an |
| 191 |
|
output port. A value of OFPP_ANY indicates no restriction. |
| 192 |
|
out_group (int): Require matching entries to include this as an |
| 193 |
|
output group. A value of OFPG_ANY indicates no restriction. |
| 194 |
|
cookie (int): Require matching entries to contain this cookie value |
| 195 |
|
cookie_mask (int): Mask used to restrict the cookie bits that must |
| 196 |
|
match. A value of 0 indicates no restriction. |
| 197 |
|
match (~pyof.v0x04.common.flow_match.Match): |
| 198 |
|
Fields to match. Variable size |
| 199 |
|
""" |
| 200 |
|
super().__init__() |
| 201 |
|
self.table_id = table_id |
| 202 |
|
self.out_port = out_port |
| 203 |
|
self.out_group = out_group |
| 204 |
|
self.cookie = cookie |
| 205 |
|
self.cookie_mask = cookie_mask |
| 206 |
|
self.match = Match() if match is None else match |
| 207 |
|
|
| 208 |
|
|
| 209 |
|
class FlowStatsRequest(GenericStruct): |
|
@@ 209-247 (lines=39) @@
|
| 206 |
|
self.match = Match() if match is None else match |
| 207 |
|
|
| 208 |
|
|
| 209 |
|
class FlowStatsRequest(GenericStruct): |
| 210 |
|
"""Body for ofp_stats_request of type OFPST_FLOW.""" |
| 211 |
|
|
| 212 |
|
table_id = UBInt8() |
| 213 |
|
#: Align to 32 bits. |
| 214 |
|
pad = Pad(3) |
| 215 |
|
out_port = UBInt32() |
| 216 |
|
out_group = UBInt32() |
| 217 |
|
pad2 = Pad(4) |
| 218 |
|
cookie = UBInt64() |
| 219 |
|
cookie_mask = UBInt64() |
| 220 |
|
match = Match() |
| 221 |
|
|
| 222 |
|
def __init__(self, table_id=Table.OFPTT_ALL, out_port=PortNo.OFPP_ANY, |
| 223 |
|
out_group=Group.OFPG_ANY, cookie=0, cookie_mask=0, |
| 224 |
|
match=None): |
| 225 |
|
"""Create a FlowStatsRequest with the optional parameters below. |
| 226 |
|
|
| 227 |
|
Args: |
| 228 |
|
table_id (int): ID of table to read (from pyof_table_stats) |
| 229 |
|
0xff for all tables or 0xfe for emergency. |
| 230 |
|
out_port (:class:`int`, :class:`~pyof.v0x04.common.port.PortNo`): |
| 231 |
|
Require matching entries to include this as an output port. |
| 232 |
|
A value of :attr:`.PortNo.OFPP_ANY` indicates no restriction. |
| 233 |
|
out_group: Require matching entries to include this as an output |
| 234 |
|
group. A value of :attr:`Group.OFPG_ANY` indicates no |
| 235 |
|
restriction. |
| 236 |
|
cookie: Requires matching entries to contain this cookie value |
| 237 |
|
cookie_mask: Mask used to restrict the cookie bits that must match. |
| 238 |
|
A value of 0 indicates no restriction. |
| 239 |
|
match (~pyof.v0x04.common.flow_match.Match): Fields to match. |
| 240 |
|
""" |
| 241 |
|
super().__init__() |
| 242 |
|
self.table_id = table_id |
| 243 |
|
self.out_port = out_port |
| 244 |
|
self.out_group = out_group |
| 245 |
|
self.cookie = cookie |
| 246 |
|
self.cookie_mask = cookie_mask |
| 247 |
|
self.match = Match() if match is None else match |
| 248 |
|
|
| 249 |
|
|
| 250 |
|
class PortStatsRequest(GenericStruct): |