]>
Commit | Line | Data |
---|---|---|
53ddd40a BP |
1 | AT_BANNER([multipath link selection]) |
2 | ||
3 | # The test-multipath program prints a lot of output on stdout, but each of the | |
4 | # tests below ignores it because it will vary a bit depending on endianness and | |
5 | # floating point precision. test-multipath will output an error message on | |
6 | # stderr and return with exit code 1 if anything really goes wrong. In each | |
7 | # case, we list the (approximate) expected output in a comment to aid debugging | |
8 | # if the test does fail. | |
9 | ||
10 | AT_SETUP([modulo_n multipath link selection]) | |
eadd1644 | 11 | AT_CHECK([[ovstest test-multipath 'eth_src,50,modulo_n,1,0,NXM_NX_REG0[]']], |
53ddd40a BP |
12 | [0], [ignore]) |
13 | # 1 -> 2: disruption=0.50 (perfect=0.50); stddev/expected=0.0000 | |
14 | # 2 -> 3: disruption=0.66 (perfect=0.33); stddev/expected=0.0023 | |
15 | # 3 -> 4: disruption=0.75 (perfect=0.25); stddev/expected=0.0061 | |
16 | # 4 -> 5: disruption=0.80 (perfect=0.20); stddev/expected=0.0082 | |
17 | # 5 -> 6: disruption=0.83 (perfect=0.17); stddev/expected=0.0083 | |
18 | # 6 -> 7: disruption=0.86 (perfect=0.14); stddev/expected=0.0061 | |
19 | # 7 -> 8: disruption=0.88 (perfect=0.12); stddev/expected=0.0103 | |
20 | # 8 -> 9: disruption=0.89 (perfect=0.11); stddev/expected=0.0129 | |
21 | # 9 -> 10: disruption=0.90 (perfect=0.10); stddev/expected=0.0091 | |
22 | #10 -> 11: disruption=0.91 (perfect=0.09); stddev/expected=0.0114 | |
23 | #11 -> 12: disruption=0.91 (perfect=0.08); stddev/expected=0.0073 | |
24 | #12 -> 13: disruption=0.92 (perfect=0.08); stddev/expected=0.0165 | |
25 | #13 -> 14: disruption=0.93 (perfect=0.07); stddev/expected=0.0149 | |
26 | #14 -> 15: disruption=0.93 (perfect=0.07); stddev/expected=0.0127 | |
27 | #15 -> 16: disruption=0.94 (perfect=0.06); stddev/expected=0.0142 | |
28 | #16 -> 17: disruption=0.94 (perfect=0.06); stddev/expected=0.0098 | |
29 | #17 -> 18: disruption=0.94 (perfect=0.06); stddev/expected=0.0159 | |
30 | #18 -> 19: disruption=0.95 (perfect=0.05); stddev/expected=0.0121 | |
31 | #19 -> 20: disruption=0.95 (perfect=0.05); stddev/expected=0.0195 | |
32 | #20 -> 21: disruption=0.95 (perfect=0.05); stddev/expected=0.0120 | |
33 | #21 -> 22: disruption=0.95 (perfect=0.05); stddev/expected=0.0181 | |
34 | #22 -> 23: disruption=0.96 (perfect=0.04); stddev/expected=0.0222 | |
35 | #23 -> 24: disruption=0.96 (perfect=0.04); stddev/expected=0.0164 | |
36 | #24 -> 25: disruption=0.96 (perfect=0.04); stddev/expected=0.0146 | |
37 | #25 -> 26: disruption=0.96 (perfect=0.04); stddev/expected=0.0175 | |
38 | #26 -> 27: disruption=0.96 (perfect=0.04); stddev/expected=0.0231 | |
39 | #27 -> 28: disruption=0.96 (perfect=0.04); stddev/expected=0.0172 | |
40 | #28 -> 29: disruption=0.97 (perfect=0.03); stddev/expected=0.0211 | |
41 | #29 -> 30: disruption=0.97 (perfect=0.03); stddev/expected=0.0213 | |
42 | #30 -> 31: disruption=0.97 (perfect=0.03); stddev/expected=0.0253 | |
43 | #31 -> 32: disruption=0.97 (perfect=0.03); stddev/expected=0.0208 | |
44 | #32 -> 33: disruption=0.97 (perfect=0.03); stddev/expected=0.0223 | |
45 | #33 -> 34: disruption=0.97 (perfect=0.03); stddev/expected=0.0215 | |
46 | #34 -> 35: disruption=0.97 (perfect=0.03); stddev/expected=0.0201 | |
47 | #35 -> 36: disruption=0.97 (perfect=0.03); stddev/expected=0.0220 | |
48 | #36 -> 37: disruption=0.97 (perfect=0.03); stddev/expected=0.0221 | |
49 | #37 -> 38: disruption=0.97 (perfect=0.03); stddev/expected=0.0201 | |
50 | #38 -> 39: disruption=0.97 (perfect=0.03); stddev/expected=0.0215 | |
51 | #39 -> 40: disruption=0.97 (perfect=0.03); stddev/expected=0.0271 | |
52 | #40 -> 41: disruption=0.98 (perfect=0.02); stddev/expected=0.0272 | |
53 | #41 -> 42: disruption=0.98 (perfect=0.02); stddev/expected=0.0208 | |
54 | #42 -> 43: disruption=0.98 (perfect=0.02); stddev/expected=0.0226 | |
55 | #43 -> 44: disruption=0.98 (perfect=0.02); stddev/expected=0.0264 | |
56 | #44 -> 45: disruption=0.98 (perfect=0.02); stddev/expected=0.0233 | |
57 | #45 -> 46: disruption=0.98 (perfect=0.02); stddev/expected=0.0285 | |
58 | #46 -> 47: disruption=0.98 (perfect=0.02); stddev/expected=0.0246 | |
59 | #47 -> 48: disruption=0.98 (perfect=0.02); stddev/expected=0.0282 | |
60 | #48 -> 49: disruption=0.98 (perfect=0.02); stddev/expected=0.0233 | |
61 | #49 -> 50: disruption=0.98 (perfect=0.02); stddev/expected=0.0197 | |
62 | #50 -> 51: disruption=0.98 (perfect=0.02); stddev/expected=0.0317 | |
63 | #51 -> 52: disruption=0.98 (perfect=0.02); stddev/expected=0.0283 | |
64 | #52 -> 53: disruption=0.98 (perfect=0.02); stddev/expected=0.0282 | |
65 | #53 -> 54: disruption=0.98 (perfect=0.02); stddev/expected=0.0273 | |
66 | #54 -> 55: disruption=0.98 (perfect=0.02); stddev/expected=0.0283 | |
67 | #55 -> 56: disruption=0.98 (perfect=0.02); stddev/expected=0.0288 | |
68 | #56 -> 57: disruption=0.98 (perfect=0.02); stddev/expected=0.0263 | |
69 | #57 -> 58: disruption=0.98 (perfect=0.02); stddev/expected=0.0339 | |
70 | #58 -> 59: disruption=0.98 (perfect=0.02); stddev/expected=0.0262 | |
71 | #59 -> 60: disruption=0.98 (perfect=0.02); stddev/expected=0.0309 | |
72 | #60 -> 61: disruption=0.98 (perfect=0.02); stddev/expected=0.0285 | |
73 | #61 -> 62: disruption=0.98 (perfect=0.02); stddev/expected=0.0288 | |
74 | #62 -> 63: disruption=0.98 (perfect=0.02); stddev/expected=0.0298 | |
75 | #63 -> 64: disruption=0.98 (perfect=0.02); stddev/expected=0.0277 | |
76 | AT_CLEANUP | |
77 | ||
78 | AT_SETUP([hash_threshold multipath link selection]) | |
eadd1644 | 79 | AT_CHECK([[ovstest test-multipath 'eth_src,50,hash_threshold,1,0,NXM_NX_REG0[]']], |
53ddd40a BP |
80 | [0], [ignore]) |
81 | # 1 -> 2: disruption=0.50 (perfect=0.50); stddev/expected=0.0000 | |
82 | # 2 -> 3: disruption=0.50 (perfect=0.33); stddev/expected=0.0056 | |
83 | # 3 -> 4: disruption=0.50 (perfect=0.25); stddev/expected=0.0050 | |
84 | # 4 -> 5: disruption=0.50 (perfect=0.20); stddev/expected=0.0074 | |
85 | # 5 -> 6: disruption=0.50 (perfect=0.17); stddev/expected=0.0031 | |
86 | # 6 -> 7: disruption=0.50 (perfect=0.14); stddev/expected=0.0078 | |
87 | # 7 -> 8: disruption=0.50 (perfect=0.12); stddev/expected=0.0085 | |
88 | # 8 -> 9: disruption=0.50 (perfect=0.11); stddev/expected=0.0093 | |
89 | # 9 -> 10: disruption=0.50 (perfect=0.10); stddev/expected=0.0083 | |
90 | #10 -> 11: disruption=0.51 (perfect=0.09); stddev/expected=0.0110 | |
91 | #11 -> 12: disruption=0.50 (perfect=0.08); stddev/expected=0.0124 | |
92 | #12 -> 13: disruption=0.50 (perfect=0.08); stddev/expected=0.0143 | |
93 | #13 -> 14: disruption=0.50 (perfect=0.07); stddev/expected=0.0148 | |
94 | #14 -> 15: disruption=0.50 (perfect=0.07); stddev/expected=0.0099 | |
95 | #15 -> 16: disruption=0.50 (perfect=0.06); stddev/expected=0.0166 | |
96 | #16 -> 17: disruption=0.50 (perfect=0.06); stddev/expected=0.0099 | |
97 | #17 -> 18: disruption=0.50 (perfect=0.06); stddev/expected=0.0194 | |
98 | #18 -> 19: disruption=0.50 (perfect=0.05); stddev/expected=0.0169 | |
99 | #19 -> 20: disruption=0.50 (perfect=0.05); stddev/expected=0.0169 | |
100 | #20 -> 21: disruption=0.50 (perfect=0.05); stddev/expected=0.0185 | |
101 | #21 -> 22: disruption=0.50 (perfect=0.05); stddev/expected=0.0160 | |
102 | #22 -> 23: disruption=0.50 (perfect=0.04); stddev/expected=0.0236 | |
103 | #23 -> 24: disruption=0.50 (perfect=0.04); stddev/expected=0.0147 | |
104 | #24 -> 25: disruption=0.50 (perfect=0.04); stddev/expected=0.0195 | |
105 | #25 -> 26: disruption=0.50 (perfect=0.04); stddev/expected=0.0199 | |
106 | #26 -> 27: disruption=0.50 (perfect=0.04); stddev/expected=0.0227 | |
107 | #27 -> 28: disruption=0.50 (perfect=0.04); stddev/expected=0.0198 | |
108 | #28 -> 29: disruption=0.50 (perfect=0.03); stddev/expected=0.0216 | |
109 | #29 -> 30: disruption=0.50 (perfect=0.03); stddev/expected=0.0233 | |
110 | #30 -> 31: disruption=0.50 (perfect=0.03); stddev/expected=0.0266 | |
111 | #31 -> 32: disruption=0.51 (perfect=0.03); stddev/expected=0.0238 | |
112 | #32 -> 33: disruption=0.50 (perfect=0.03); stddev/expected=0.0194 | |
113 | #33 -> 34: disruption=0.50 (perfect=0.03); stddev/expected=0.0173 | |
114 | #34 -> 35: disruption=0.50 (perfect=0.03); stddev/expected=0.0223 | |
115 | #35 -> 36: disruption=0.50 (perfect=0.03); stddev/expected=0.0220 | |
116 | #36 -> 37: disruption=0.50 (perfect=0.03); stddev/expected=0.0237 | |
117 | #37 -> 38: disruption=0.50 (perfect=0.03); stddev/expected=0.0237 | |
118 | #38 -> 39: disruption=0.50 (perfect=0.03); stddev/expected=0.0251 | |
119 | #39 -> 40: disruption=0.50 (perfect=0.03); stddev/expected=0.0212 | |
120 | #40 -> 41: disruption=0.50 (perfect=0.02); stddev/expected=0.0267 | |
121 | #41 -> 42: disruption=0.50 (perfect=0.02); stddev/expected=0.0242 | |
122 | #42 -> 43: disruption=0.50 (perfect=0.02); stddev/expected=0.0222 | |
123 | #43 -> 44: disruption=0.50 (perfect=0.02); stddev/expected=0.0244 | |
124 | #44 -> 45: disruption=0.50 (perfect=0.02); stddev/expected=0.0231 | |
125 | #45 -> 46: disruption=0.50 (perfect=0.02); stddev/expected=0.0299 | |
126 | #46 -> 47: disruption=0.50 (perfect=0.02); stddev/expected=0.0263 | |
127 | #47 -> 48: disruption=0.50 (perfect=0.02); stddev/expected=0.0307 | |
128 | #48 -> 49: disruption=0.50 (perfect=0.02); stddev/expected=0.0253 | |
129 | #49 -> 50: disruption=0.50 (perfect=0.02); stddev/expected=0.0228 | |
130 | #50 -> 51: disruption=0.50 (perfect=0.02); stddev/expected=0.0273 | |
131 | #51 -> 52: disruption=0.50 (perfect=0.02); stddev/expected=0.0243 | |
132 | #52 -> 53: disruption=0.50 (perfect=0.02); stddev/expected=0.0268 | |
133 | #53 -> 54: disruption=0.50 (perfect=0.02); stddev/expected=0.0251 | |
134 | #54 -> 55: disruption=0.50 (perfect=0.02); stddev/expected=0.0297 | |
135 | #55 -> 56: disruption=0.50 (perfect=0.02); stddev/expected=0.0287 | |
136 | #56 -> 57: disruption=0.50 (perfect=0.02); stddev/expected=0.0299 | |
137 | #57 -> 58: disruption=0.50 (perfect=0.02); stddev/expected=0.0272 | |
138 | #58 -> 59: disruption=0.50 (perfect=0.02); stddev/expected=0.0295 | |
139 | #59 -> 60: disruption=0.50 (perfect=0.02); stddev/expected=0.0312 | |
140 | #60 -> 61: disruption=0.50 (perfect=0.02); stddev/expected=0.0361 | |
141 | #61 -> 62: disruption=0.50 (perfect=0.02); stddev/expected=0.0308 | |
142 | #62 -> 63: disruption=0.50 (perfect=0.02); stddev/expected=0.0283 | |
143 | #63 -> 64: disruption=0.50 (perfect=0.02); stddev/expected=0.0325 | |
144 | AT_CLEANUP | |
145 | ||
146 | AT_SETUP([hrw multipath link selection]) | |
eadd1644 | 147 | AT_CHECK([[ovstest test-multipath 'eth_src,50,hrw,1,0,NXM_NX_REG0[]']], |
53ddd40a BP |
148 | [0], [ignore]) |
149 | # 1 -> 2: disruption=0.50 (perfect=0.50); stddev/expected=0.0000 | |
150 | # 2 -> 3: disruption=0.33 (perfect=0.33); stddev/expected=0.0033 | |
151 | # 3 -> 4: disruption=0.25 (perfect=0.25); stddev/expected=0.0076 | |
152 | # 4 -> 5: disruption=0.20 (perfect=0.20); stddev/expected=0.0059 | |
153 | # 5 -> 6: disruption=0.17 (perfect=0.17); stddev/expected=0.0030 | |
154 | # 6 -> 7: disruption=0.14 (perfect=0.14); stddev/expected=0.0124 | |
155 | # 7 -> 8: disruption=0.13 (perfect=0.12); stddev/expected=0.0072 | |
156 | # 8 -> 9: disruption=0.11 (perfect=0.11); stddev/expected=0.0074 | |
157 | # 9 -> 10: disruption=0.10 (perfect=0.10); stddev/expected=0.0161 | |
158 | #10 -> 11: disruption=0.09 (perfect=0.09); stddev/expected=0.0055 | |
159 | #11 -> 12: disruption=0.08 (perfect=0.08); stddev/expected=0.0092 | |
160 | #12 -> 13: disruption=0.08 (perfect=0.08); stddev/expected=0.0134 | |
161 | #13 -> 14: disruption=0.07 (perfect=0.07); stddev/expected=0.0124 | |
162 | #14 -> 15: disruption=0.07 (perfect=0.07); stddev/expected=0.0156 | |
163 | #15 -> 16: disruption=0.06 (perfect=0.06); stddev/expected=0.0182 | |
164 | #16 -> 17: disruption=0.06 (perfect=0.06); stddev/expected=0.0150 | |
165 | #17 -> 18: disruption=0.06 (perfect=0.06); stddev/expected=0.0109 | |
166 | #18 -> 19: disruption=0.05 (perfect=0.05); stddev/expected=0.0162 | |
167 | #19 -> 20: disruption=0.05 (perfect=0.05); stddev/expected=0.0149 | |
168 | #20 -> 21: disruption=0.05 (perfect=0.05); stddev/expected=0.0148 | |
169 | #21 -> 22: disruption=0.05 (perfect=0.05); stddev/expected=0.0230 | |
170 | #22 -> 23: disruption=0.04 (perfect=0.04); stddev/expected=0.0208 | |
171 | #23 -> 24: disruption=0.04 (perfect=0.04); stddev/expected=0.0210 | |
172 | #24 -> 25: disruption=0.04 (perfect=0.04); stddev/expected=0.0228 | |
173 | #25 -> 26: disruption=0.04 (perfect=0.04); stddev/expected=0.0155 | |
174 | #26 -> 27: disruption=0.04 (perfect=0.04); stddev/expected=0.0208 | |
175 | #27 -> 28: disruption=0.04 (perfect=0.04); stddev/expected=0.0218 | |
176 | #28 -> 29: disruption=0.03 (perfect=0.03); stddev/expected=0.0193 | |
177 | #29 -> 30: disruption=0.03 (perfect=0.03); stddev/expected=0.0169 | |
178 | #30 -> 31: disruption=0.03 (perfect=0.03); stddev/expected=0.0163 | |
179 | #31 -> 32: disruption=0.03 (perfect=0.03); stddev/expected=0.0192 | |
180 | #32 -> 33: disruption=0.03 (perfect=0.03); stddev/expected=0.0212 | |
181 | #33 -> 34: disruption=0.03 (perfect=0.03); stddev/expected=0.0240 | |
182 | #34 -> 35: disruption=0.03 (perfect=0.03); stddev/expected=0.0227 | |
183 | #35 -> 36: disruption=0.03 (perfect=0.03); stddev/expected=0.0230 | |
184 | #36 -> 37: disruption=0.03 (perfect=0.03); stddev/expected=0.0183 | |
185 | #37 -> 38: disruption=0.03 (perfect=0.03); stddev/expected=0.0227 | |
186 | #38 -> 39: disruption=0.03 (perfect=0.03); stddev/expected=0.0255 | |
187 | #39 -> 40: disruption=0.03 (perfect=0.03); stddev/expected=0.0247 | |
188 | #40 -> 41: disruption=0.02 (perfect=0.02); stddev/expected=0.0228 | |
189 | #41 -> 42: disruption=0.02 (perfect=0.02); stddev/expected=0.0247 | |
190 | #42 -> 43: disruption=0.02 (perfect=0.02); stddev/expected=0.0265 | |
191 | #43 -> 44: disruption=0.02 (perfect=0.02); stddev/expected=0.0250 | |
192 | #44 -> 45: disruption=0.02 (perfect=0.02); stddev/expected=0.0258 | |
193 | #45 -> 46: disruption=0.02 (perfect=0.02); stddev/expected=0.0196 | |
194 | #46 -> 47: disruption=0.02 (perfect=0.02); stddev/expected=0.0235 | |
195 | #47 -> 48: disruption=0.02 (perfect=0.02); stddev/expected=0.0314 | |
196 | #48 -> 49: disruption=0.02 (perfect=0.02); stddev/expected=0.0293 | |
197 | #49 -> 50: disruption=0.02 (perfect=0.02); stddev/expected=0.0241 | |
198 | #50 -> 51: disruption=0.02 (perfect=0.02); stddev/expected=0.0291 | |
199 | #51 -> 52: disruption=0.02 (perfect=0.02); stddev/expected=0.0304 | |
200 | #52 -> 53: disruption=0.02 (perfect=0.02); stddev/expected=0.0307 | |
201 | #53 -> 54: disruption=0.02 (perfect=0.02); stddev/expected=0.0250 | |
202 | #54 -> 55: disruption=0.02 (perfect=0.02); stddev/expected=0.0290 | |
203 | #55 -> 56: disruption=0.02 (perfect=0.02); stddev/expected=0.0284 | |
204 | #56 -> 57: disruption=0.02 (perfect=0.02); stddev/expected=0.0272 | |
205 | #57 -> 58: disruption=0.02 (perfect=0.02); stddev/expected=0.0272 | |
206 | #58 -> 59: disruption=0.02 (perfect=0.02); stddev/expected=0.0304 | |
207 | #59 -> 60: disruption=0.02 (perfect=0.02); stddev/expected=0.0345 | |
208 | #60 -> 61: disruption=0.02 (perfect=0.02); stddev/expected=0.0251 | |
209 | #61 -> 62: disruption=0.02 (perfect=0.02); stddev/expected=0.0249 | |
210 | #62 -> 63: disruption=0.02 (perfect=0.02); stddev/expected=0.0285 | |
211 | #63 -> 64: disruption=0.02 (perfect=0.02); stddev/expected=0.0285 | |
212 | AT_CLEANUP | |
213 | ||
214 | AT_SETUP([iter_hash multipath link selection]) | |
eadd1644 | 215 | AT_CHECK([[ovstest test-multipath 'eth_src,50,iter_hash,1,0,NXM_NX_REG0[]']], |
53ddd40a BP |
216 | [0], [ignore]) |
217 | # 1 -> 2: disruption=0.50 (perfect=0.50); stddev/expected=0.0000 | |
218 | # 2 -> 3: disruption=0.42 (perfect=0.33); stddev/expected=0.0034 | |
219 | # 3 -> 4: disruption=0.25 (perfect=0.25); stddev/expected=0.0082 | |
220 | # 4 -> 5: disruption=0.42 (perfect=0.20); stddev/expected=0.0073 | |
221 | # 5 -> 6: disruption=0.17 (perfect=0.17); stddev/expected=0.0040 | |
222 | # 6 -> 7: disruption=0.14 (perfect=0.14); stddev/expected=0.0069 | |
223 | # 7 -> 8: disruption=0.13 (perfect=0.12); stddev/expected=0.0131 | |
224 | # 8 -> 9: disruption=0.45 (perfect=0.11); stddev/expected=0.0093 | |
225 | # 9 -> 10: disruption=0.10 (perfect=0.10); stddev/expected=0.0127 | |
226 | #10 -> 11: disruption=0.09 (perfect=0.09); stddev/expected=0.0134 | |
227 | #11 -> 12: disruption=0.08 (perfect=0.08); stddev/expected=0.0101 | |
228 | #12 -> 13: disruption=0.08 (perfect=0.08); stddev/expected=0.0127 | |
229 | #13 -> 14: disruption=0.07 (perfect=0.07); stddev/expected=0.0115 | |
230 | #14 -> 15: disruption=0.07 (perfect=0.07); stddev/expected=0.0100 | |
231 | #15 -> 16: disruption=0.06 (perfect=0.06); stddev/expected=0.0111 | |
232 | #16 -> 17: disruption=0.47 (perfect=0.06); stddev/expected=0.0137 | |
233 | #17 -> 18: disruption=0.05 (perfect=0.06); stddev/expected=0.0204 | |
234 | #18 -> 19: disruption=0.05 (perfect=0.05); stddev/expected=0.0082 | |
235 | #19 -> 20: disruption=0.05 (perfect=0.05); stddev/expected=0.0124 | |
236 | #20 -> 21: disruption=0.05 (perfect=0.05); stddev/expected=0.0203 | |
237 | #21 -> 22: disruption=0.05 (perfect=0.05); stddev/expected=0.0196 | |
238 | #22 -> 23: disruption=0.04 (perfect=0.04); stddev/expected=0.0183 | |
239 | #23 -> 24: disruption=0.04 (perfect=0.04); stddev/expected=0.0212 | |
240 | #24 -> 25: disruption=0.04 (perfect=0.04); stddev/expected=0.0176 | |
241 | #25 -> 26: disruption=0.04 (perfect=0.04); stddev/expected=0.0173 | |
242 | #26 -> 27: disruption=0.04 (perfect=0.04); stddev/expected=0.0159 | |
243 | #27 -> 28: disruption=0.03 (perfect=0.04); stddev/expected=0.0168 | |
244 | #28 -> 29: disruption=0.03 (perfect=0.03); stddev/expected=0.0190 | |
245 | #29 -> 30: disruption=0.03 (perfect=0.03); stddev/expected=0.0305 | |
246 | #30 -> 31: disruption=0.03 (perfect=0.03); stddev/expected=0.0282 | |
247 | #31 -> 32: disruption=0.03 (perfect=0.03); stddev/expected=0.0255 | |
248 | #32 -> 33: disruption=0.49 (perfect=0.03); stddev/expected=0.0220 | |
249 | #33 -> 34: disruption=0.03 (perfect=0.03); stddev/expected=0.0188 | |
250 | #34 -> 35: disruption=0.03 (perfect=0.03); stddev/expected=0.0203 | |
251 | #35 -> 36: disruption=0.03 (perfect=0.03); stddev/expected=0.0207 | |
252 | #36 -> 37: disruption=0.03 (perfect=0.03); stddev/expected=0.0261 | |
253 | #37 -> 38: disruption=0.03 (perfect=0.03); stddev/expected=0.0226 | |
254 | #38 -> 39: disruption=0.03 (perfect=0.03); stddev/expected=0.0233 | |
255 | #39 -> 40: disruption=0.03 (perfect=0.03); stddev/expected=0.0161 | |
256 | #40 -> 41: disruption=0.03 (perfect=0.02); stddev/expected=0.0303 | |
257 | #41 -> 42: disruption=0.02 (perfect=0.02); stddev/expected=0.0249 | |
258 | #42 -> 43: disruption=0.02 (perfect=0.02); stddev/expected=0.0262 | |
259 | #43 -> 44: disruption=0.02 (perfect=0.02); stddev/expected=0.0260 | |
260 | #44 -> 45: disruption=0.02 (perfect=0.02); stddev/expected=0.0266 | |
261 | #45 -> 46: disruption=0.02 (perfect=0.02); stddev/expected=0.0287 | |
262 | #46 -> 47: disruption=0.02 (perfect=0.02); stddev/expected=0.0213 | |
263 | #47 -> 48: disruption=0.02 (perfect=0.02); stddev/expected=0.0301 | |
264 | #48 -> 49: disruption=0.02 (perfect=0.02); stddev/expected=0.0230 | |
265 | #49 -> 50: disruption=0.02 (perfect=0.02); stddev/expected=0.0248 | |
266 | #50 -> 51: disruption=0.02 (perfect=0.02); stddev/expected=0.0203 | |
267 | #51 -> 52: disruption=0.02 (perfect=0.02); stddev/expected=0.0235 | |
268 | #52 -> 53: disruption=0.02 (perfect=0.02); stddev/expected=0.0340 | |
269 | #53 -> 54: disruption=0.02 (perfect=0.02); stddev/expected=0.0264 | |
270 | #54 -> 55: disruption=0.02 (perfect=0.02); stddev/expected=0.0292 | |
271 | #55 -> 56: disruption=0.02 (perfect=0.02); stddev/expected=0.0246 | |
272 | #56 -> 57: disruption=0.02 (perfect=0.02); stddev/expected=0.0270 | |
273 | #57 -> 58: disruption=0.02 (perfect=0.02); stddev/expected=0.0299 | |
274 | #58 -> 59: disruption=0.02 (perfect=0.02); stddev/expected=0.0307 | |
275 | #59 -> 60: disruption=0.02 (perfect=0.02); stddev/expected=0.0275 | |
276 | #60 -> 61: disruption=0.02 (perfect=0.02); stddev/expected=0.0289 | |
277 | #61 -> 62: disruption=0.02 (perfect=0.02); stddev/expected=0.0292 | |
278 | #62 -> 63: disruption=0.02 (perfect=0.02); stddev/expected=0.0292 | |
279 | #63 -> 64: disruption=0.02 (perfect=0.02); stddev/expected=0.0307 | |
280 | AT_CLEANUP | |
770f1f66 BP |
281 | |
282 | AT_SETUP([multipath action missing argument]) | |
283 | AT_CHECK([ovs-ofctl parse-flow actions=multipath], [1], [], | |
284 | [ovs-ofctl: : not enough arguments to multipath action | |
285 | ]) | |
286 | AT_CLEANUP | |
287 | ||
288 | AT_SETUP([multipath action bad fields]) | |
289 | AT_CHECK([ovs-ofctl parse-flow 'actions=multipath(xyzzy,50,modulo_n,1,0,NXM_NX_REG0[[]])'], [1], [], | |
290 | [ovs-ofctl: xyzzy,50,modulo_n,1,0,NXM_NX_REG0[[]]: unknown fields `xyzzy' | |
291 | ]) | |
292 | AT_CLEANUP | |
293 | ||
294 | AT_SETUP([multipath action bad algorithm]) | |
295 | AT_CHECK([ovs-ofctl parse-flow 'actions=multipath(eth_src,50,fubar,1,0,NXM_NX_REG0[[]])'], [1], [], | |
296 | [ovs-ofctl: eth_src,50,fubar,1,0,NXM_NX_REG0[[]]: unknown algorithm `fubar' | |
297 | ]) | |
298 | AT_CLEANUP | |
299 | ||
300 | AT_SETUP([multipath action bad n_links]) | |
301 | AT_CHECK([ovs-ofctl parse-flow 'actions=multipath(eth_src,50,modulo_n,0,0,NXM_NX_REG0[[]])'], [1], [], | |
302 | [ovs-ofctl: eth_src,50,modulo_n,0,0,NXM_NX_REG0[[]]: n_links 0 is not in valid range 1 to 65536 | |
303 | ]) | |
304 | AT_CLEANUP | |
305 | ||
770f1f66 BP |
306 | AT_SETUP([multipath action destination too narrow]) |
307 | AT_CHECK([ovs-ofctl parse-flow 'actions=multipath(eth_src,50,modulo_n,1024,0,NXM_NX_REG0[[0..7]])'], [1], [], | |
308 | [ovs-ofctl: eth_src,50,modulo_n,1024,0,NXM_NX_REG0[[0..7]]: 8-bit destination field has 256 possible values, less than specified n_links 1024 | |
309 | ]) | |
310 | AT_CLEANUP | |
311 |