wifi: Add a new main PHY switch trace fired upon CTS timeout

This commit is contained in:
Stefano Avallone
2025-02-06 16:16:01 +01:00
parent fb6eaeb648
commit d44a8a0baf
8 changed files with 338 additions and 301 deletions

View File

@@ -240,64 +240,6 @@ p ef
3103 -35 3112 -37 3125 -39 ct 3125 -3 l p ef
pom
gs
1 lj 19548 5971 m 20263 5971 l ps
gr
gs
19261 5971 m 19561 6071 l 19561 5871 l 19261 5971 l p ef
gr
gs
20550 5971 m 20250 5871 l 20250 6071 l 20550 5971 l p ef
gr
gs
0 lw 1 lj 19261 6671 m 19261 5771 l ps
gr
gs
0 lw 1 lj 20550 6671 m 20550 5771 l ps
gr
pum
19385 5796 t
39 0 m 39 -229 l 39 -250 39 -273 37 -298 ct 84 -298 l 86 -265 86 -244 86 -238 ct
88 -238 l 95 -263 105 -281 115 -290 ct 125 -299 140 -304 158 -304 ct 165 -304 172 -303 178 -301 ct
178 -256 l 172 -258 163 -258 152 -258 ct 131 -258 116 -250 105 -232 ct 94 -214 89 -189 89 -156 ct
89 0 l 39 0 l p ef
263 -138 m 263 -104 270 -78 284 -59 ct 298 -41 319 -31 346 -31 ct 368 -31 385 -36 398 -44 ct
411 -53 420 -64 424 -77 ct 468 -65 l 450 -18 409 6 346 6 ct 302 6 269 -7 246 -33 ct
222 -60 211 -99 211 -151 ct 211 -200 222 -238 246 -264 ct 269 -291 301 -304 344 -304 ct
432 -304 476 -251 476 -145 ct 476 -138 l 263 -138 l p
424 -176 m 422 -208 414 -231 400 -245 ct 387 -260 368 -267 343 -267 ct 319 -267 300 -259 286 -243 ct
272 -227 265 -204 264 -176 ct 424 -176 l p ef
713 0 m 713 -189 l 713 -218 709 -238 701 -249 ct 693 -260 679 -266 658 -266 ct
637 -266 620 -258 608 -241 ct 596 -225 589 -202 589 -173 ct 589 0 l 540 0 l
540 -235 l 540 -270 540 -291 538 -298 ct 585 -298 l 585 -298 586 -295 586 -291 ct
586 -287 586 -282 587 -277 ct 587 -272 587 -262 587 -247 ct 588 -247 l 599 -269 611 -283 625 -292 ct
639 -300 656 -304 675 -304 ct 698 -304 716 -300 729 -290 ct 742 -281 751 -267 756 -247 ct
757 -247 l 767 -268 780 -282 794 -291 ct 809 -300 827 -304 847 -304 ct 878 -304 899 -296 913 -279 ct
927 -263 934 -236 934 -199 ct 934 0 l 885 0 l 885 -189 l 885 -218 881 -238 873 -249 ct
865 -260 851 -266 830 -266 ct 808 -266 792 -258 780 -242 ct 768 -225 762 -203 762 -173 ct
762 0 l 713 0 l p ef
1168 -346 m 1168 -1 l 1116 -1 l 1116 -346 l 983 -346 l 983 -389 l
1302 -389 l 1302 -346 l 1168 -346 l p ef
1352 -362 m 1352 -409 l 1401 -409 l 1401 -362 l 1352 -362 l p
1352 0 m 1352 -298 l 1401 -298 l 1401 0 l 1352 0 l p ef
1651 0 m 1651 -189 l 1651 -218 1647 -238 1639 -249 ct 1631 -260 1617 -266 1596 -266 ct
1575 -266 1558 -258 1546 -241 ct 1534 -225 1527 -202 1527 -173 ct 1527 0 l 1478 0 l
1478 -235 l 1478 -270 1478 -291 1476 -298 ct 1523 -298 l 1523 -298 1524 -295 1524 -291 ct
1524 -287 1524 -282 1525 -277 ct 1525 -272 1525 -262 1525 -247 ct 1526 -247 l
1537 -269 1549 -283 1563 -292 ct 1577 -300 1594 -304 1613 -304 ct 1636 -304 1654 -300 1667 -290 ct
1680 -281 1689 -267 1694 -247 ct 1695 -247 l 1705 -268 1718 -282 1732 -291 ct
1747 -300 1765 -304 1785 -304 ct 1816 -304 1837 -296 1851 -279 ct 1865 -263 1872 -236 1872 -199 ct
1872 0 l 1823 0 l 1823 -189 l 1823 -218 1819 -238 1811 -249 ct 1803 -260 1789 -266 1768 -266 ct
1746 -266 1730 -258 1718 -242 ct 1706 -225 1700 -203 1700 -173 ct 1700 0 l 1651 0 l
p ef
1984 -138 m 1984 -104 1991 -78 2005 -59 ct 2019 -41 2040 -31 2067 -31 ct 2089 -31 2106 -36 2119 -44 ct
2132 -53 2141 -64 2145 -77 ct 2189 -65 l 2171 -18 2130 6 2067 6 ct 2023 6 1990 -7 1967 -33 ct
1943 -60 1932 -99 1932 -151 ct 1932 -200 1943 -238 1967 -264 ct 1990 -291 2022 -304 2065 -304 ct
2153 -304 2197 -251 2197 -145 ct 2197 -138 l 1984 -138 l p
2145 -176 m 2143 -208 2135 -231 2121 -245 ct 2108 -260 2089 -267 2064 -267 ct
2040 -267 2021 -259 2007 -243 ct 1993 -227 1986 -204 1985 -176 ct 2145 -176 l
p ef
pom
gs
1 lj 17084 2943 m 20320 2943 l ps
gr
gs
@@ -500,7 +442,7 @@ p ef
3787 -240 3786 -234 3786 -232 ct 3787 -232 l p ef
pom
pum
19465 8055 t
19539 8055 t
143 -2 m 128 2 112 4 96 4 ct 59 4 40 -17 40 -59 ct 40 -246 l 8 -246 l 8 -280 l
42 -280 l 56 -343 l 87 -343 l 87 -280 l 138 -280 l 138 -246 l 87 -246 l
87 -69 l 87 -56 89 -47 93 -41 ct 98 -36 105 -33 116 -33 ct 122 -33 131 -34 143 -37 ct
@@ -531,55 +473,46 @@ p ef
1282 -166 m 1279 -195 1272 -217 1259 -230 ct 1247 -244 1229 -251 1206 -251 ct
1183 -251 1165 -243 1152 -228 ct 1139 -213 1132 -192 1131 -166 ct 1282 -166 l
p ef
1446 -247 m 1446 -1 l 1400 -1 l 1400 -247 l 1360 -247 l 1360 -281 l
1400 -281 l 1400 -312 l 1400 -338 1405 -356 1417 -367 ct 1428 -378 1445 -384 1468 -384 ct
1481 -384 1492 -383 1501 -381 ct 1501 -345 l 1493 -347 1486 -348 1480 -348 ct
1468 -348 1460 -345 1454 -339 ct 1449 -333 1446 -322 1446 -306 ct 1446 -281 l
1501 -281 l 1501 -247 l 1446 -247 l p ef
1571 -130 m 1571 -98 1578 -73 1591 -56 ct 1604 -39 1624 -30 1649 -30 ct 1669 -30 1686 -34 1698 -42 ct
1710 -50 1718 -60 1722 -73 ct 1763 -61 l 1747 -17 1709 5 1649 5 ct 1608 5 1577 -7 1555 -32 ct
1533 -57 1522 -93 1522 -142 ct 1522 -188 1533 -223 1555 -248 ct 1577 -273 1607 -285 1647 -285 ct
1730 -285 1771 -236 1771 -137 ct 1771 -130 l 1571 -130 l p
1723 -166 m 1720 -195 1713 -217 1700 -230 ct 1688 -244 1670 -251 1647 -251 ct
1624 -251 1606 -243 1593 -228 ct 1580 -213 1573 -192 1572 -166 ct 1723 -166 l
1511 0 m 1456 0 l 1355 -280 l 1404 -280 l 1466 -98 l 1468 -91 1474 -70 1484 -36 ct
1493 -67 l 1503 -97 l 1566 -280 l 1616 -280 l 1511 0 l p ef
1653 -340 m 1653 -384 l 1700 -384 l 1700 -340 l 1653 -340 l p
1653 0 m 1653 -280 l 1700 -280 l 1700 0 l 1653 0 l p ef
2007 -140 m 2007 -91 1996 -55 1975 -31 ct 1953 -7 1922 5 1881 5 ct 1840 5 1809 -7 1788 -32 ct
1768 -57 1757 -93 1757 -140 ct 1757 -237 1799 -285 1882 -285 ct 1925 -285 1957 -273 1977 -250 ct
1997 -226 2007 -190 2007 -140 ct p
1958 -140 m 1958 -179 1952 -207 1941 -224 ct 1930 -242 1910 -251 1883 -251 ct
1856 -251 1836 -242 1824 -224 ct 1812 -206 1806 -178 1806 -140 ct 1806 -103 1812 -76 1824 -57 ct
1836 -39 1855 -29 1880 -29 ct 1908 -29 1928 -38 1940 -56 ct 1952 -74 1958 -102 1958 -140 ct
p ef
1831 0 m 1831 -215 l 1831 -234 1830 -256 1829 -280 ct 1873 -280 l 1874 -248 1875 -229 1875 -223 ct
1876 -223 l 1884 -247 1892 -263 1902 -272 ct 1911 -281 1925 -285 1943 -285 ct
1949 -285 1955 -284 1961 -282 ct 1961 -240 l 1955 -241 1947 -242 1937 -242 ct
1917 -242 1903 -234 1892 -217 ct 1882 -201 1877 -177 1877 -146 ct 1877 0 l 1831 0 l
2111 -280 m 2111 -103 l 2111 -84 2113 -70 2117 -60 ct 2120 -49 2126 -42 2134 -38 ct
2142 -33 2153 -31 2169 -31 ct 2191 -31 2209 -39 2222 -54 ct 2235 -69 2241 -91 2241 -118 ct
2241 -280 l 2288 -280 l 2288 -60 l 2288 -27 2288 -7 2289 0 ct 2245 0 l
2245 -1 2245 -3 2245 -7 ct 2244 -11 2244 -15 2244 -20 ct 2244 -25 2243 -34 2243 -48 ct
2242 -48 l 2232 -29 2219 -15 2205 -7 ct 2191 1 2174 5 2153 5 ct 2122 5 2100 -3 2086 -18 ct
2071 -33 2064 -58 2064 -94 ct 2064 -280 l 2111 -280 l p ef
2569 -77 m 2569 -51 2559 -31 2540 -16 ct 2520 -2 2492 5 2456 5 ct 2421 5 2394 -1 2376 -12 ct
2357 -24 2344 -42 2339 -66 ct 2380 -74 l 2384 -59 2392 -48 2404 -41 ct 2417 -34 2434 -30 2456 -30 ct
2480 -30 2497 -34 2508 -41 ct 2519 -49 2524 -59 2524 -74 ct 2524 -85 2520 -94 2513 -101 ct
2505 -108 2493 -113 2476 -118 ct 2443 -127 l 2416 -133 2397 -140 2386 -147 ct
2375 -153 2366 -162 2359 -171 ct 2353 -180 2350 -192 2350 -206 ct 2350 -231 2359 -251 2377 -264 ct
2395 -278 2422 -284 2457 -284 ct 2487 -284 2512 -279 2530 -268 ct 2548 -257 2560 -240 2564 -216 ct
2523 -211 l 2520 -223 2513 -232 2502 -239 ct 2491 -246 2475 -249 2457 -249 ct
2436 -249 2420 -246 2410 -239 ct 2400 -233 2395 -223 2395 -210 ct 2395 -203 2397 -196 2401 -191 ct
2405 -186 2411 -181 2420 -178 ct 2428 -174 2445 -169 2471 -163 ct 2495 -156 2513 -151 2524 -146 ct
2535 -140 2543 -134 2550 -128 ct 2556 -122 2561 -114 2564 -106 ct 2568 -98 2569 -88 2569 -77 ct
p ef
2008 0 m 2008 -215 l 2008 -234 2007 -256 2006 -280 ct 2050 -280 l 2051 -248 2052 -229 2052 -223 ct
2053 -223 l 2061 -247 2069 -263 2079 -272 ct 2088 -281 2102 -285 2120 -285 ct
2126 -285 2132 -284 2138 -282 ct 2138 -240 l 2132 -241 2124 -242 2114 -242 ct
2094 -242 2080 -234 2069 -217 ct 2059 -201 2054 -177 2054 -146 ct 2054 0 l 2008 0 l
2771 0 m 2771 -384 l 2817 -384 l 2817 0 l 2771 0 l p ef
2888 -340 m 2888 -384 l 2935 -384 l 2935 -340 l 2888 -340 l p
2888 0 m 2888 -280 l 2935 -280 l 2935 0 l 2888 0 l p ef
3184 0 m 3184 -177 l 3184 -196 3182 -210 3179 -220 ct 3175 -231 3169 -238 3161 -242 ct
3153 -247 3142 -249 3127 -249 ct 3104 -249 3086 -241 3074 -226 ct 3061 -211 3054 -189 3054 -162 ct
3054 0 l 3008 0 l 3008 -220 l 3008 -253 3007 -273 3006 -280 ct 3050 -280 l
3050 -279 3050 -277 3051 -273 ct 3051 -269 3051 -265 3051 -260 ct 3051 -255 3052 -246 3052 -232 ct
3053 -232 l 3064 -251 3076 -265 3090 -273 ct 3104 -281 3121 -285 3142 -285 ct
3173 -285 3195 -277 3210 -262 ct 3224 -247 3231 -222 3231 -186 ct 3231 0 l 3184 0 l
p ef
2218 -130 m 2218 -98 2225 -73 2238 -56 ct 2251 -39 2271 -30 2296 -30 ct 2316 -30 2333 -34 2345 -42 ct
2357 -50 2365 -60 2369 -73 ct 2410 -61 l 2394 -17 2356 5 2296 5 ct 2255 5 2224 -7 2202 -32 ct
2180 -57 2169 -93 2169 -142 ct 2169 -188 2180 -223 2202 -248 ct 2224 -273 2254 -285 2294 -285 ct
2377 -285 2418 -236 2418 -137 ct 2418 -130 l 2218 -130 l p
2370 -166 m 2367 -195 2360 -217 2347 -230 ct 2335 -244 2317 -251 2294 -251 ct
2271 -251 2253 -243 2240 -228 ct 2227 -213 2220 -192 2219 -166 ct 2370 -166 l
p ef
2653 -45 m 2644 -27 2633 -14 2619 -7 ct 2605 1 2587 5 2566 5 ct 2531 5 2505 -7 2488 -31 ct
2472 -55 2463 -91 2463 -139 ct 2463 -237 2497 -285 2566 -285 ct 2587 -285 2605 -282 2619 -274 ct
2633 -266 2644 -254 2653 -237 ct 2654 -237 l 2653 -268 l 2653 -384 l 2700 -384 l
2700 -58 l 2700 -29 2700 -10 2701 0 ct 2657 0 l 2656 -3 2656 -9 2655 -19 ct
2654 -29 2654 -38 2654 -45 ct 2653 -45 l p
2512 -140 m 2512 -101 2517 -73 2528 -56 ct 2538 -39 2555 -31 2578 -31 ct 2604 -31 2623 -40 2635 -58 ct
2647 -77 2653 -105 2653 -144 ct 2653 -181 2647 -208 2635 -225 ct 2623 -242 2604 -251 2578 -251 ct
2555 -251 2538 -242 2528 -225 ct 2517 -208 2512 -179 2512 -140 ct p ef
2919 0 m 2919 -384 l 2965 -384 l 2965 0 l 2919 0 l p ef
3035 -340 m 3035 -384 l 3082 -384 l 3082 -340 l 3035 -340 l p
3035 0 m 3035 -280 l 3082 -280 l 3082 0 l 3035 0 l p ef
3331 0 m 3331 -177 l 3331 -196 3329 -210 3326 -220 ct 3322 -231 3316 -238 3308 -242 ct
3300 -247 3289 -249 3274 -249 ct 3251 -249 3233 -241 3221 -226 ct 3208 -211 3201 -189 3201 -162 ct
3201 0 l 3155 0 l 3155 -220 l 3155 -253 3154 -273 3153 -280 ct 3197 -280 l
3197 -279 3197 -277 3198 -273 ct 3198 -269 3198 -265 3198 -260 ct 3198 -255 3199 -246 3199 -232 ct
3200 -232 l 3211 -251 3223 -265 3237 -273 ct 3251 -281 3268 -285 3289 -285 ct
3320 -285 3342 -277 3357 -262 ct 3371 -247 3378 -222 3378 -186 ct 3378 0 l 3331 0 l
p ef
3623 0 m 3528 -128 l 3494 -100 l 3494 0 l 3448 0 l 3448 -384 l 3494 -384 l
3494 -144 l 3617 -280 l 3671 -280 l 3558 -160 l 3677 0 l 3623 0 l
3476 0 m 3381 -128 l 3347 -100 l 3347 0 l 3301 0 l 3301 -384 l 3347 -384 l
3347 -144 l 3470 -280 l 3524 -280 l 3411 -160 l 3530 0 l 3476 0 l
p ef
pom
gs
@@ -746,46 +679,97 @@ gs
gr
pum
6885 5796 t
39 0 m 39 -229 l 39 -250 39 -273 37 -298 ct 84 -298 l 86 -265 86 -244 86 -238 ct
88 -238 l 95 -263 105 -281 115 -290 ct 125 -299 140 -304 158 -304 ct 165 -304 172 -303 178 -301 ct
178 -256 l 172 -258 163 -258 152 -258 ct 131 -258 116 -250 105 -232 ct 94 -214 89 -189 89 -156 ct
89 0 l 39 0 l p ef
263 -138 m 263 -104 270 -78 284 -59 ct 298 -41 319 -31 346 -31 ct 368 -31 385 -36 398 -44 ct
411 -53 420 -64 424 -77 ct 468 -65 l 450 -18 409 6 346 6 ct 302 6 269 -7 246 -33 ct
222 -60 211 -99 211 -151 ct 211 -200 222 -238 246 -264 ct 269 -291 301 -304 344 -304 ct
432 -304 476 -251 476 -145 ct 476 -138 l 263 -138 l p
424 -176 m 422 -208 414 -231 400 -245 ct 387 -260 368 -267 343 -267 ct 319 -267 300 -259 286 -243 ct
272 -227 265 -204 264 -176 ct 424 -176 l p ef
713 0 m 713 -189 l 713 -218 709 -238 701 -249 ct 693 -260 679 -266 658 -266 ct
637 -266 620 -258 608 -241 ct 596 -225 589 -202 589 -173 ct 589 0 l 540 0 l
540 -235 l 540 -270 540 -291 538 -298 ct 585 -298 l 585 -298 586 -295 586 -291 ct
586 -287 586 -282 587 -277 ct 587 -272 587 -262 587 -247 ct 588 -247 l 599 -269 611 -283 625 -292 ct
639 -300 656 -304 675 -304 ct 698 -304 716 -300 729 -290 ct 742 -281 751 -267 756 -247 ct
757 -247 l 767 -268 780 -282 794 -291 ct 809 -300 827 -304 847 -304 ct 878 -304 899 -296 913 -279 ct
927 -263 934 -236 934 -199 ct 934 0 l 885 0 l 885 -189 l 885 -218 881 -238 873 -249 ct
865 -260 851 -266 830 -266 ct 808 -266 792 -258 780 -242 ct 768 -225 762 -203 762 -173 ct
762 0 l 713 0 l p ef
1168 -346 m 1168 -1 l 1116 -1 l 1116 -346 l 983 -346 l 983 -389 l
1302 -389 l 1302 -346 l 1168 -346 l p ef
1352 -362 m 1352 -409 l 1401 -409 l 1401 -362 l 1352 -362 l p
1352 0 m 1352 -298 l 1401 -298 l 1401 0 l 1352 0 l p ef
1651 0 m 1651 -189 l 1651 -218 1647 -238 1639 -249 ct 1631 -260 1617 -266 1596 -266 ct
1575 -266 1558 -258 1546 -241 ct 1534 -225 1527 -202 1527 -173 ct 1527 0 l 1478 0 l
1478 -235 l 1478 -270 1478 -291 1476 -298 ct 1523 -298 l 1523 -298 1524 -295 1524 -291 ct
1524 -287 1524 -282 1525 -277 ct 1525 -272 1525 -262 1525 -247 ct 1526 -247 l
1537 -269 1549 -283 1563 -292 ct 1577 -300 1594 -304 1613 -304 ct 1636 -304 1654 -300 1667 -290 ct
1680 -281 1689 -267 1694 -247 ct 1695 -247 l 1705 -268 1718 -282 1732 -291 ct
1747 -300 1765 -304 1785 -304 ct 1816 -304 1837 -296 1851 -279 ct 1865 -263 1872 -236 1872 -199 ct
1872 0 l 1823 0 l 1823 -189 l 1823 -218 1819 -238 1811 -249 ct 1803 -260 1789 -266 1768 -266 ct
1746 -266 1730 -258 1718 -242 ct 1706 -225 1700 -203 1700 -173 ct 1700 0 l 1651 0 l
262 -82 m 262 -54 251 -32 230 -17 ct 209 -2 179 6 141 6 ct 104 6 75 0 55 -12 ct
35 -25 22 -44 16 -70 ct 59 -78 l 64 -62 72 -50 86 -43 ct 99 -36 117 -32 141 -32 ct
166 -32 184 -36 196 -43 ct 208 -51 213 -63 213 -78 ct 213 -90 209 -99 201 -107 ct
193 -114 180 -120 162 -125 ct 127 -134 l 98 -142 78 -149 66 -156 ct 54 -163 45 -172 38 -182 ct
31 -192 28 -204 28 -219 ct 28 -246 37 -267 57 -281 ct 76 -295 104 -303 141 -303 ct
174 -303 200 -297 220 -285 ct 239 -274 251 -255 256 -229 ct 212 -224 l 209 -237 202 -247 190 -254 ct
178 -261 161 -265 141 -265 ct 119 -265 102 -262 92 -255 ct 81 -248 76 -238 76 -224 ct
76 -215 78 -208 82 -203 ct 87 -197 93 -193 102 -189 ct 111 -185 129 -180 156 -173 ct
183 -166 202 -160 213 -155 ct 225 -149 234 -143 241 -136 ct 247 -129 252 -121 256 -112 ct
260 -103 262 -93 262 -82 ct p ef
320 -362 m 320 -409 l 369 -409 l 369 -362 l 320 -362 l p
320 0 m 320 -298 l 369 -298 l 369 0 l 320 0 l p ef
634 0 m 634 -189 l 634 -209 632 -224 628 -235 ct 625 -246 618 -254 610 -258 ct
602 -263 589 -266 573 -266 ct 549 -266 530 -257 516 -241 ct 503 -225 496 -202 496 -173 ct
496 0 l 446 0 l 446 -235 l 446 -270 446 -291 444 -298 ct 491 -298 l 491 -298 492 -295 492 -291 ct
492 -287 492 -282 493 -277 ct 493 -272 493 -262 493 -247 ct 494 -247 l 506 -268 519 -283 534 -291 ct
549 -300 567 -304 590 -304 ct 622 -304 646 -296 661 -280 ct 676 -263 684 -236 684 -199 ct
684 0 l 634 0 l p ef
796 -150 m 796 -111 802 -81 814 -62 ct 827 -43 846 -33 871 -33 ct 889 -33 903 -38 915 -48 ct
927 -57 934 -72 937 -92 ct 987 -88 l 983 -60 971 -37 951 -20 ct 930 -3 904 6 872 6 ct
831 6 799 -7 777 -34 ct 755 -60 744 -99 744 -149 ct 744 -200 755 -238 777 -264 ct
799 -291 831 -304 872 -304 ct 902 -304 928 -296 948 -280 ct 968 -264 980 -243 985 -215 ct
935 -211 l 932 -227 925 -241 915 -250 ct 905 -260 890 -265 870 -265 ct 844 -265 825 -256 813 -239 ct
802 -221 796 -192 796 -150 ct p ef
1077 -138 m 1077 -104 1084 -78 1098 -59 ct 1112 -41 1133 -31 1160 -31 ct 1182 -31 1199 -36 1212 -44 ct
1225 -53 1234 -64 1238 -77 ct 1282 -65 l 1264 -18 1223 6 1160 6 ct 1116 6 1083 -7 1060 -33 ct
1036 -60 1025 -99 1025 -151 ct 1025 -200 1036 -238 1060 -264 ct 1083 -291 1115 -304 1158 -304 ct
1246 -304 1290 -251 1290 -145 ct 1290 -138 l 1077 -138 l p
1238 -176 m 1236 -208 1228 -231 1214 -245 ct 1201 -260 1182 -267 1157 -267 ct
1133 -267 1114 -259 1100 -243 ct 1086 -227 1079 -204 1078 -176 ct 1238 -176 l
p ef
1984 -138 m 1984 -104 1991 -78 2005 -59 ct 2019 -41 2040 -31 2067 -31 ct 2089 -31 2106 -36 2119 -44 ct
2132 -53 2141 -64 2145 -77 ct 2189 -65 l 2171 -18 2130 6 2067 6 ct 2023 6 1990 -7 1967 -33 ct
1943 -60 1932 -99 1932 -151 ct 1932 -200 1943 -238 1967 -264 ct 1990 -291 2022 -304 2065 -304 ct
2153 -304 2197 -251 2197 -145 ct 2197 -138 l 1984 -138 l p
2145 -176 m 2143 -208 2135 -231 2121 -245 ct 2108 -260 2089 -267 2064 -267 ct
2040 -267 2021 -259 2007 -243 ct 1993 -227 1986 -204 1985 -176 ct 2145 -176 l
1532 -351 m 1489 -351 1456 -337 1432 -309 ct 1408 -282 1396 -244 1396 -196 ct
1396 -148 1409 -110 1433 -81 ct 1458 -52 1492 -37 1534 -37 ct 1589 -37 1630 -64 1657 -118 ct
1700 -97 l 1684 -63 1661 -38 1632 -20 ct 1604 -3 1570 6 1532 6 ct 1493 6 1459 -2 1430 -18 ct
1402 -35 1380 -58 1365 -88 ct 1350 -118 1343 -154 1343 -196 ct 1343 -258 1359 -306 1393 -341 ct
1426 -376 1472 -394 1532 -394 ct 1573 -394 1607 -386 1635 -370 ct 1663 -354 1683 -330 1696 -298 ct
1646 -281 l 1637 -304 1623 -321 1603 -333 ct 1583 -345 1559 -351 1532 -351 ct
p ef
1874 -3 m 1857 2 1841 4 1823 4 ct 1784 4 1764 -19 1764 -64 ct 1764 -263 l 1730 -263 l
1730 -299 l 1766 -299 l 1780 -366 l 1814 -366 l 1814 -299 l 1869 -299 l
1869 -263 l 1814 -263 l 1814 -74 l 1814 -60 1816 -50 1821 -44 ct 1825 -38 1833 -35 1845 -35 ct
1852 -35 1861 -37 1874 -39 ct 1874 -3 l p ef
2139 -82 m 2139 -54 2128 -32 2107 -17 ct 2086 -2 2056 6 2018 6 ct 1981 6 1952 0 1932 -12 ct
1912 -25 1899 -44 1893 -70 ct 1936 -78 l 1941 -62 1949 -50 1963 -43 ct 1976 -36 1994 -32 2018 -32 ct
2043 -32 2061 -36 2073 -43 ct 2085 -51 2090 -63 2090 -78 ct 2090 -90 2086 -99 2078 -107 ct
2070 -114 2057 -120 2039 -125 ct 2004 -134 l 1975 -142 1955 -149 1943 -156 ct
1931 -163 1922 -172 1915 -182 ct 1908 -192 1905 -204 1905 -219 ct 1905 -246 1914 -267 1934 -281 ct
1953 -295 1981 -303 2018 -303 ct 2051 -303 2077 -297 2097 -285 ct 2116 -274 2128 -255 2133 -229 ct
2089 -224 l 2086 -237 2079 -247 2067 -254 ct 2055 -261 2038 -265 2018 -265 ct
1996 -265 1979 -262 1969 -255 ct 1958 -248 1953 -238 1953 -224 ct 1953 -215 1955 -208 1959 -203 ct
1964 -197 1970 -193 1979 -189 ct 1988 -185 2006 -180 2033 -173 ct 2060 -166 2079 -160 2090 -155 ct
2102 -149 2111 -143 2118 -136 ct 2124 -129 2129 -121 2133 -112 ct 2137 -103 2139 -93 2139 -82 ct
p ef
2357 -346 m 2357 -1 l 2305 -1 l 2305 -346 l 2172 -346 l 2172 -389 l
2491 -389 l 2491 -346 l 2357 -346 l p ef
2541 -362 m 2541 -409 l 2590 -409 l 2590 -362 l 2541 -362 l p
2541 0 m 2541 -298 l 2590 -298 l 2590 0 l 2541 0 l p ef
2840 0 m 2840 -189 l 2840 -218 2836 -238 2828 -249 ct 2820 -260 2806 -266 2785 -266 ct
2764 -266 2747 -258 2735 -241 ct 2723 -225 2716 -202 2716 -173 ct 2716 0 l 2667 0 l
2667 -235 l 2667 -270 2667 -291 2665 -298 ct 2712 -298 l 2712 -298 2713 -295 2713 -291 ct
2713 -287 2713 -282 2714 -277 ct 2714 -272 2714 -262 2714 -247 ct 2715 -247 l
2726 -269 2738 -283 2752 -292 ct 2766 -300 2783 -304 2802 -304 ct 2825 -304 2843 -300 2856 -290 ct
2869 -281 2878 -267 2883 -247 ct 2884 -247 l 2894 -268 2907 -282 2921 -291 ct
2936 -300 2954 -304 2974 -304 ct 3005 -304 3026 -296 3040 -279 ct 3054 -263 3061 -236 3061 -199 ct
3061 0 l 3012 0 l 3012 -189 l 3012 -218 3008 -238 3000 -249 ct 2992 -260 2978 -266 2957 -266 ct
2935 -266 2919 -258 2907 -242 ct 2895 -225 2889 -203 2889 -173 ct 2889 0 l 2840 0 l
p ef
3173 -138 m 3173 -104 3180 -78 3194 -59 ct 3208 -41 3229 -31 3256 -31 ct 3278 -31 3295 -36 3308 -44 ct
3321 -53 3330 -64 3334 -77 ct 3378 -65 l 3360 -18 3319 6 3256 6 ct 3212 6 3179 -7 3156 -33 ct
3132 -60 3121 -99 3121 -151 ct 3121 -200 3132 -238 3156 -264 ct 3179 -291 3211 -304 3254 -304 ct
3342 -304 3386 -251 3386 -145 ct 3386 -138 l 3173 -138 l p
3334 -176 m 3332 -208 3324 -231 3310 -245 ct 3297 -260 3278 -267 3253 -267 ct
3229 -267 3210 -259 3196 -243 ct 3182 -227 3175 -204 3174 -176 ct 3334 -176 l
p ef
3700 -149 m 3700 -97 3689 -58 3666 -32 ct 3643 -7 3609 6 3566 6 ct 3522 6 3489 -7 3467 -34 ct
3445 -60 3434 -99 3434 -149 ct 3434 -252 3478 -304 3567 -304 ct 3613 -304 3646 -291 3668 -266 ct
3689 -241 3700 -202 3700 -149 ct p
3648 -149 m 3648 -190 3642 -220 3630 -239 ct 3617 -258 3597 -267 3568 -267 ct
3539 -267 3518 -257 3505 -238 ct 3492 -219 3486 -190 3486 -149 ct 3486 -110 3492 -80 3505 -60 ct
3518 -41 3538 -31 3565 -31 ct 3595 -31 3616 -40 3629 -59 ct 3642 -79 3648 -108 3648 -149 ct
p ef
3809 -298 m 3809 -109 l 3809 -89 3811 -74 3815 -63 ct 3819 -52 3825 -44 3834 -40 ct
3842 -35 3855 -32 3871 -32 ct 3895 -32 3914 -41 3927 -57 ct 3941 -73 3948 -96 3948 -125 ct
3948 -298 l 3998 -298 l 3998 -63 l 3998 -28 3998 -7 3999 0 ct 3952 0 l
3952 0 3952 -3 3952 -7 ct 3952 -11 3951 -16 3951 -21 ct 3951 -26 3951 -36 3950 -51 ct
3949 -51 l 3938 -30 3925 -15 3910 -7 ct 3895 2 3876 6 3854 6 ct 3821 6 3797 -2 3782 -18 ct
3767 -35 3760 -62 3760 -99 ct 3760 -298 l 3809 -298 l p ef
4189 -3 m 4172 2 4156 4 4138 4 ct 4099 4 4079 -19 4079 -64 ct 4079 -263 l 4045 -263 l
4045 -299 l 4081 -299 l 4095 -366 l 4129 -366 l 4129 -299 l 4184 -299 l
4184 -263 l 4129 -263 l 4129 -74 l 4129 -60 4131 -50 4136 -44 ct 4140 -38 4148 -35 4160 -35 ct
4167 -35 4176 -37 4189 -39 ct 4189 -3 l p ef
pom
gs
1 lj 4584 2943 m 7820 2943 l ps
@@ -1491,70 +1475,70 @@ gs
19250 2754 m 19250 3516 l ps
gr
pum
19285 3433 t
0.750 0.003 0.257 c 33 -316 m 33 -357 l 76 -357 l 76 -316 l 33 -316 l
19285 3437 t
0.750 0.003 0.257 c 33 -316 m 33 -358 l 76 -358 l 76 -316 l 33 -316 l
p
33 0 m 33 -260 l 76 -260 l 76 0 l 33 0 l p ef
308 0 m 308 -165 l 308 -182 306 -195 303 -205 ct 299 -214 294 -221 286 -225 ct
279 -229 268 -232 254 -232 ct 233 -232 217 -224 205 -210 ct 193 -196 187 -176 187 -151 ct
187 0 l 143 0 l 143 -205 l 143 -235 143 -253 142 -260 ct 183 -260 l 183 -259 183 -257 183 -254 ct
183 -250 184 -246 184 -242 ct 184 -237 184 -228 185 -216 ct 185 -216 l 195 -234 207 -246 220 -254 ct
233 -261 249 -265 269 -265 ct 297 -265 318 -258 331 -244 ct 345 -230 351 -206 351 -173 ct
351 0 l 308 0 l p ef
515 -2 m 501 2 486 4 472 4 ct 437 4 420 -16 420 -55 ct 420 -229 l 389 -229 l
389 -260 l 421 -260 l 434 -318 l 463 -318 l 463 -260 l 511 -260 l
511 -229 l 463 -229 l 463 -64 l 463 -52 465 -43 469 -38 ct 473 -33 480 -30 490 -30 ct
496 -30 504 -32 515 -34 ct 515 -2 l p ef
585 -121 m 585 -91 592 -68 604 -52 ct 616 -36 634 -27 658 -27 ct 677 -27 692 -31 703 -39 ct
715 -46 722 -56 726 -67 ct 764 -57 l 749 -16 713 5 658 5 ct 620 5 590 -6 570 -29 ct
550 -52 540 -86 540 -132 ct 540 -175 550 -208 570 -231 ct 590 -254 619 -265 656 -265 ct
733 -265 771 -219 771 -127 ct 771 -121 l 585 -121 l p
727 -154 m 724 -181 717 -201 706 -214 ct 694 -227 677 -233 656 -233 ct 635 -233 618 -226 606 -212 ct
594 -198 587 -179 586 -154 ct 727 -154 l p ef
826 0 m 826 -200 l 826 -218 826 -238 825 -260 ct 866 -260 l 867 -231 868 -213 868 -207 ct
869 -207 l 875 -229 883 -245 892 -253 ct 901 -261 914 -265 930 -265 ct 936 -265 942 -264 948 -263 ct
948 -223 l 942 -225 935 -225 925 -225 ct 907 -225 893 -218 884 -202 ct 874 -187 870 -164 870 -136 ct
870 0 l 826 0 l p ef
989 0 m 989 -200 l 989 -218 989 -238 988 -260 ct 1029 -260 l 1030 -231 1031 -213 1031 -207 ct
1032 -207 l 1038 -229 1046 -245 1055 -253 ct 1064 -261 1077 -265 1093 -265 ct
1099 -265 1105 -264 1111 -263 ct 1111 -223 l 1105 -225 1098 -225 1088 -225 ct
1070 -225 1056 -218 1047 -202 ct 1037 -187 1033 -164 1033 -136 ct 1033 0 l 989 0 l
33 0 m 33 -261 l 76 -261 l 76 0 l 33 0 l p ef
309 0 m 309 -166 l 309 -183 307 -196 304 -206 ct 301 -215 295 -222 288 -226 ct
280 -230 270 -232 255 -232 ct 234 -232 218 -225 206 -211 ct 194 -197 188 -177 188 -151 ct
188 0 l 144 0 l 144 -205 l 144 -236 144 -254 143 -261 ct 184 -261 l 184 -260 184 -258 184 -255 ct
184 -251 185 -247 185 -242 ct 185 -238 185 -229 186 -217 ct 186 -217 l 196 -235 208 -247 221 -255 ct
234 -262 250 -266 270 -266 ct 299 -266 319 -259 333 -245 ct 346 -230 353 -207 353 -174 ct
353 0 l 309 0 l p ef
520 -2 m 505 2 491 4 476 4 ct 441 4 424 -16 424 -55 ct 424 -229 l 393 -229 l
393 -261 l 425 -261 l 438 -320 l 467 -320 l 467 -261 l 515 -261 l
515 -229 l 467 -229 l 467 -65 l 467 -52 469 -43 473 -38 ct 477 -33 484 -31 495 -31 ct
500 -31 509 -32 520 -34 ct 520 -2 l p ef
590 -121 m 590 -91 596 -68 608 -52 ct 621 -36 639 -28 662 -28 ct 681 -28 696 -31 708 -39 ct
719 -46 727 -56 731 -68 ct 769 -57 l 753 -16 718 5 662 5 ct 624 5 594 -7 574 -30 ct
554 -53 544 -87 544 -132 ct 544 -175 554 -208 574 -231 ct 594 -254 623 -266 661 -266 ct
737 -266 776 -220 776 -127 ct 776 -121 l 590 -121 l p
731 -154 m 729 -182 722 -202 710 -215 ct 698 -228 682 -234 660 -234 ct 639 -234 622 -227 610 -213 ct
598 -199 591 -179 590 -154 ct 731 -154 l p ef
833 0 m 833 -200 l 833 -219 833 -239 832 -261 ct 873 -261 l 874 -232 875 -214 875 -208 ct
876 -208 l 883 -230 891 -245 900 -254 ct 909 -262 921 -266 938 -266 ct 943 -266 949 -265 955 -264 ct
955 -224 l 950 -225 942 -226 932 -226 ct 914 -226 900 -218 891 -203 ct 881 -187 877 -165 877 -136 ct
877 0 l 833 0 l p ef
998 0 m 998 -200 l 998 -219 998 -239 997 -261 ct 1038 -261 l 1039 -232 1040 -214 1040 -208 ct
1041 -208 l 1048 -230 1056 -245 1065 -254 ct 1074 -262 1086 -266 1103 -266 ct
1108 -266 1114 -265 1120 -264 ct 1120 -224 l 1115 -225 1107 -226 1097 -226 ct
1079 -226 1065 -218 1056 -203 ct 1046 -187 1042 -165 1042 -136 ct 1042 0 l 998 0 l
p ef
1195 -260 m 1195 -95 l 1195 -78 1196 -65 1200 -55 ct 1203 -46 1208 -39 1216 -35 ct
1223 -31 1234 -28 1248 -28 ct 1269 -28 1286 -36 1298 -50 ct 1310 -64 1316 -84 1316 -109 ct
1316 -260 l 1359 -260 l 1359 -55 l 1359 -25 1359 -7 1360 0 ct 1320 0 l
1319 -1 1319 -3 1319 -6 ct 1319 -10 1319 -14 1318 -18 ct 1318 -23 1318 -32 1318 -44 ct
1317 -44 l 1307 -26 1295 -14 1282 -6 ct 1269 1 1253 5 1234 5 ct 1205 5 1184 -2 1171 -16 ct
1158 -30 1151 -54 1151 -87 ct 1151 -260 l 1195 -260 l p ef
1645 -131 m 1645 -40 1614 5 1550 5 ct 1510 5 1483 -10 1469 -40 ct 1468 -40 l
1468 -39 1469 -25 1469 1 ct 1469 102 l 1425 102 l 1425 -207 l 1425 -234 1425 -252 1424 -260 ct
1466 -260 l 1466 -260 1466 -258 1466 -254 ct 1467 -250 1467 -244 1467 -235 ct
1468 -227 1468 -222 1468 -219 ct 1469 -219 l 1477 -235 1487 -246 1500 -254 ct
1512 -261 1529 -265 1550 -265 ct 1582 -265 1606 -254 1622 -233 ct 1638 -211 1645 -177 1645 -131 ct
1204 -261 m 1204 -95 l 1204 -78 1205 -65 1209 -55 ct 1212 -46 1218 -39 1225 -35 ct
1232 -31 1243 -29 1258 -29 ct 1278 -29 1295 -36 1307 -50 ct 1319 -64 1325 -84 1325 -110 ct
1325 -261 l 1368 -261 l 1368 -56 l 1368 -25 1369 -7 1370 0 ct 1329 0 l
1329 -1 1329 -3 1328 -6 ct 1328 -10 1328 -14 1328 -19 ct 1328 -23 1327 -32 1327 -44 ct
1326 -44 l 1316 -26 1305 -14 1292 -6 ct 1279 1 1262 5 1243 5 ct 1214 5 1193 -2 1180 -16 ct
1167 -31 1160 -54 1160 -87 ct 1160 -261 l 1204 -261 l p ef
1658 -132 m 1658 -40 1626 5 1562 5 ct 1522 5 1495 -10 1481 -40 ct 1480 -40 l
1480 -39 1481 -25 1481 1 ct 1481 103 l 1437 103 l 1437 -208 l 1437 -234 1437 -252 1436 -261 ct
1478 -261 l 1478 -260 1478 -258 1479 -254 ct 1479 -250 1479 -244 1480 -236 ct
1480 -228 1480 -222 1480 -219 ct 1481 -219 l 1489 -235 1499 -247 1512 -254 ct
1525 -262 1541 -266 1562 -266 ct 1594 -266 1618 -255 1634 -233 ct 1650 -212 1658 -178 1658 -132 ct
p
1600 -130 m 1600 -167 1595 -193 1585 -208 ct 1576 -224 1560 -232 1539 -232 ct
1521 -232 1508 -228 1498 -221 ct 1489 -214 1481 -202 1476 -187 ct 1471 -172 1469 -152 1469 -127 ct
1469 -93 1474 -68 1485 -51 ct 1496 -35 1514 -27 1538 -27 ct 1560 -27 1575 -35 1585 -51 ct
1595 -67 1600 -93 1600 -130 ct p ef
1798 -2 m 1784 2 1769 4 1755 4 ct 1720 4 1703 -16 1703 -55 ct 1703 -229 l 1672 -229 l
1672 -260 l 1704 -260 l 1717 -318 l 1746 -318 l 1746 -260 l 1794 -260 l
1794 -229 l 1746 -229 l 1746 -64 l 1746 -52 1748 -43 1752 -38 ct 1756 -33 1763 -30 1773 -30 ct
1779 -30 1787 -32 1798 -34 ct 1798 -2 l p ef
1867 -121 m 1867 -91 1874 -68 1886 -52 ct 1898 -36 1916 -27 1940 -27 ct 1959 -27 1974 -31 1985 -39 ct
1997 -46 2004 -56 2008 -67 ct 2046 -57 l 2031 -16 1995 5 1940 5 ct 1902 5 1872 -6 1852 -29 ct
1832 -52 1822 -86 1822 -132 ct 1822 -175 1832 -208 1852 -231 ct 1872 -254 1901 -265 1938 -265 ct
2015 -265 2053 -219 2053 -127 ct 2053 -121 l 1867 -121 l p
2009 -154 m 2006 -181 1999 -201 1988 -214 ct 1976 -227 1959 -233 1938 -233 ct
1917 -233 1900 -226 1888 -212 ct 1876 -198 1869 -179 1868 -154 ct 2009 -154 l
1612 -131 m 1612 -167 1608 -193 1598 -209 ct 1588 -224 1572 -232 1551 -232 ct
1534 -232 1520 -228 1511 -221 ct 1501 -214 1493 -203 1488 -187 ct 1483 -172 1481 -152 1481 -127 ct
1481 -93 1486 -68 1497 -51 ct 1508 -35 1526 -27 1550 -27 ct 1572 -27 1588 -35 1598 -51 ct
1607 -67 1612 -93 1612 -131 ct p ef
1813 -2 m 1798 2 1784 4 1769 4 ct 1734 4 1717 -16 1717 -55 ct 1717 -229 l 1686 -229 l
1686 -261 l 1718 -261 l 1731 -320 l 1760 -320 l 1760 -261 l 1808 -261 l
1808 -229 l 1760 -229 l 1760 -65 l 1760 -52 1762 -43 1766 -38 ct 1770 -33 1777 -31 1788 -31 ct
1793 -31 1802 -32 1813 -34 ct 1813 -2 l p ef
1884 -121 m 1884 -91 1890 -68 1902 -52 ct 1915 -36 1933 -28 1956 -28 ct 1975 -28 1990 -31 2002 -39 ct
2013 -46 2021 -56 2025 -68 ct 2063 -57 l 2047 -16 2012 5 1956 5 ct 1918 5 1888 -7 1868 -30 ct
1848 -53 1838 -87 1838 -132 ct 1838 -175 1848 -208 1868 -231 ct 1888 -254 1917 -266 1955 -266 ct
2031 -266 2070 -220 2070 -127 ct 2070 -121 l 1884 -121 l p
2025 -154 m 2023 -182 2016 -202 2004 -215 ct 1992 -228 1976 -234 1954 -234 ct
1933 -234 1916 -227 1904 -213 ct 1892 -199 1885 -179 1884 -154 ct 2025 -154 l
p ef
2273 -42 m 2265 -26 2254 -14 2241 -6 ct 2228 1 2211 4 2192 4 ct 2159 4 2134 -7 2119 -29 ct
2103 -51 2096 -84 2096 -129 ct 2096 -220 2128 -265 2192 -265 ct 2211 -265 2228 -261 2241 -254 ct
2254 -247 2265 -236 2273 -220 ct 2273 -220 l 2273 -249 l 2273 -357 l 2316 -357 l
2316 -54 l 2316 -27 2316 -9 2317 0 ct 2276 0 l 2276 -3 2275 -9 2274 -18 ct
2274 -27 2274 -35 2274 -42 ct 2273 -42 l p
2141 -131 m 2141 -94 2146 -68 2156 -53 ct 2165 -37 2181 -29 2203 -29 ct 2227 -29 2245 -37 2256 -54 ct
2267 -71 2273 -98 2273 -133 ct 2273 -168 2267 -193 2256 -209 ct 2245 -225 2227 -233 2203 -233 ct
2181 -233 2165 -225 2156 -209 ct 2146 -193 2141 -167 2141 -131 ct p ef
2290 -42 m 2282 -25 2271 -13 2258 -6 ct 2245 1 2228 5 2209 5 ct 2176 5 2152 -6 2136 -28 ct
2121 -51 2113 -84 2113 -129 ct 2113 -220 2145 -266 2209 -266 ct 2229 -266 2245 -262 2258 -255 ct
2271 -248 2282 -236 2290 -221 ct 2291 -221 l 2290 -250 l 2290 -358 l 2333 -358 l
2333 -54 l 2333 -26 2334 -9 2335 0 ct 2293 0 l 2293 -2 2292 -8 2292 -18 ct
2291 -27 2291 -35 2291 -42 ct 2290 -42 l p
2158 -131 m 2158 -94 2163 -68 2173 -52 ct 2182 -36 2198 -29 2220 -29 ct 2244 -29 2262 -37 2273 -54 ct
2284 -71 2290 -98 2290 -134 ct 2290 -168 2284 -194 2273 -210 ct 2262 -226 2245 -234 2220 -234 ct
2198 -234 2183 -226 2173 -210 ct 2163 -193 2158 -167 2158 -131 ct p ef
pom
gr
gs

View File

@@ -1530,20 +1530,22 @@ EMLSR clients:
* ``EmlsrUlTxopRtsSentByAuxPhyTrace``: main PHY is starting switching to another link to take over
an UL TXOP started by a TX capable aux PHY that transmitted an RTS frame on that link
* ``EmlsrTxopEndedTrace``: main PHY is starting switching because a (DL or UL) TXOP ended. This
trace has a parameter, remTime, whose value is set as follows. When a TXOP ends after a
successful transmission and aux PHYs do not switch link, the main PHY switches back to the
preferred link; in such a case, the remTime parameter is set to zero. However, a TXOP may end
due to a CTS timeout after that a TX capable aux PHY had sent an RTS to start an UL TXOP and
the main PHY may be switching when the CTS timeout occurs. If the main PHY switch cannot be
interrupted (see case a) in Fig. :ref:`fig-emlsr-txop-ended-trace`), which is the case with the
Default EMLSR Manager or with the Advanced EMLSR Manager when the ``InterruptSwitch`` attribute
is false, the remTime parameter is set to the remaining channel switch delay at the time the
TXOP ends. If the main PHY switch can be interrupted (see case b) in Fig.
:ref:`fig-emlsr-txop-ended-trace`), which is the case with the Advanced EMLSR Manager when the
``InterruptSwitch`` attribute is true, the remTime parameter indicates the time that was left
to complete the previous channel switch. Note that, in the latter case, this channel switch can
also occur when the aux PHYs switch link, as the main PHY returns to the link it was operating
on before starting the previous channel switch.
trace is called when aux PHYs do not switch link and the main PHY switches back to the preferred
link when a TXOP carried out on another link ends
* ``EmlsrRtsSentByAuxPhyCtsTimeoutTrace``: main PHY is starting switching after a CTS timeout
occurred on the link on which an RTS was transmitted to start an UL TXOP. This trace
has a parameter, sinceCtsTimeout, that provides the time elapsed since the CTS timeout occurred.
Normally, this trace is called when aux PHYs do not switch links, because the main PHY has to
return to the preferred link upon CTS timeout, because a TXOP did not start. In some cases, the
main PHY may be switching when CTS timeout occurs; this happens when an aux PHY that is TX
capable transmits an RTS and the main PHY starts switching to the aux PHY link. In such a case,
the main PHY completes the current link switch and then it starts switching to return back to
the preferred link (see case (a) in Fig. :ref:`fig-emlsr-txop-ended-trace`). If the
main PHY switch can be interrupted (see case (b) in Fig. :ref:`fig-emlsr-txop-ended-trace`),
which is the case with the Advanced EMLSR Manager when the ``InterruptSwitch`` attribute is
false, the previous switch is interrupted and the main PHY starts switching to the previous
link (in this case, the time elapsed since the CTS timeout occurred is zero). This holds true
for both the case aux PHYs do not switch link and the case aux PHYs switch link.
Ack manager
###########

View File

@@ -245,12 +245,20 @@ AdvancedEmlsrManager::DoGetDelayUntilAccessRequest(uint8_t linkId)
}
}
if (GetStaMac()->GetWifiPhy(linkId) == GetStaMac()->GetDevice()->GetPhy(GetMainPhyId()) &&
!m_auxPhyTxCapable && m_ccaLastPifs.IsPending())
auto phy = GetStaMac()->GetWifiPhy(linkId);
auto mainPhy = GetStaMac()->GetDevice()->GetPhy(m_mainPhyId);
if (phy == mainPhy)
{
// main PHY has got access on the link it switched to (because the aux PHY is not TX
// capable) before a PIFS interval was elapsed: do not start the TXOP now
return {false, Time{0}};
if (!m_auxPhyTxCapable && m_ccaLastPifs.IsPending())
{
// main PHY has got access on the link it switched to (because the aux PHY is not TX
// capable) before a PIFS interval was elapsed: do not start the TXOP now
return {false, Time{0}};
}
// UL TXOP is going to start
m_rtsStartingUlTxop[linkId] = {Simulator::Now(), false};
}
return {true, Time{0}};
@@ -329,6 +337,20 @@ AdvancedEmlsrManager::DoNotifyTxopEnd(uint8_t linkId)
// or
// - SwitchAuxPhy is false and there is an aux PHY to reconnect
std::shared_ptr<EmlsrMainPhySwitchTrace> traceInfo;
if (const auto it = m_rtsStartingUlTxop.find(linkId);
it != m_rtsStartingUlTxop.cend() && it->second.second)
{
// TXOP ended due to a CTS timeout following the RTS that started a TXOP
traceInfo = std::make_shared<EmlsrCtsAfterRtsTimeoutTrace>(Time{0});
m_rtsStartingUlTxop.erase(it);
}
else
{
traceInfo = std::make_shared<EmlsrTxopEndedTrace>();
}
// Note that the main PHY may be switching at the end of a TXOP when, e.g., the main PHY
// starts switching to a link on which an aux PHY gained a TXOP and sent an RTS, but the CTS
// is not received and the UL TXOP ends before the main PHY channel switch is completed.
@@ -342,17 +364,18 @@ AdvancedEmlsrManager::DoNotifyTxopEnd(uint8_t linkId)
!m_switchAuxPhy || m_mainPhySwitchInfo.end >= Simulator::Now(),
"Aux PHY next link ID should have a value when interrupting a main PHY switch");
uint8_t nextLinkId = m_switchAuxPhy ? m_mainPhySwitchInfo.from : GetMainPhyId();
const auto delay = mainPhy->IsStateSwitching() ? mainPhy->GetDelayUntilIdle() : Time{0};
SwitchMainPhy(nextLinkId,
false,
DONT_RESET_BACKOFF,
REQUEST_ACCESS,
EmlsrTxopEndedTrace(delay));
SwitchMainPhy(nextLinkId, false, DONT_RESET_BACKOFF, REQUEST_ACCESS, std::move(*traceInfo));
}
else
{
// delay link switch until current channel switching is completed
const auto delay = mainPhy->GetDelayUntilIdle();
if (auto info = std::dynamic_pointer_cast<EmlsrCtsAfterRtsTimeoutTrace>(traceInfo))
{
info->sinceCtsTimeout = delay;
}
Simulator::Schedule(delay, [=, this]() {
// request the main PHY to switch back to the preferred link only if in the meantime
// no TXOP started on another link (which will require the main PHY to switch link)
@@ -362,7 +385,7 @@ AdvancedEmlsrManager::DoNotifyTxopEnd(uint8_t linkId)
false,
DONT_RESET_BACKOFF,
REQUEST_ACCESS,
EmlsrTxopEndedTrace(delay));
std::move(*traceInfo));
}
});
}
@@ -412,7 +435,7 @@ AdvancedEmlsrManager::GetDelayUnlessMainPhyTakesOverUlTxop(uint8_t linkId)
// TXOP can be started, main PHY will be scheduled to switch by NotifyRtsSent as soon as the
// transmission of the RTS is notified
m_switchMainPhyOnRtsTx[linkId] = Simulator::Now();
m_rtsStartingUlTxop[linkId] = {Simulator::Now(), false};
return {true, Time{0}};
}

View File

@@ -188,6 +188,15 @@ std::pair<bool, Time>
DefaultEmlsrManager::DoGetDelayUntilAccessRequest(uint8_t linkId)
{
NS_LOG_FUNCTION(this << linkId);
auto phy = GetStaMac()->GetWifiPhy(linkId);
auto mainPhy = GetStaMac()->GetDevice()->GetPhy(m_mainPhyId);
if (phy == mainPhy)
{
// UL TXOP is going to start
m_rtsStartingUlTxop[linkId] = {Simulator::Now(), false};
}
return {true, Time{0}}; // start the TXOP
}
@@ -208,13 +217,24 @@ DefaultEmlsrManager::DoNotifyTxopEnd(uint8_t linkId)
{
NS_LOG_FUNCTION(this << linkId);
// switch main PHY to the previous link, if needed
if (!m_switchAuxPhy)
if (m_switchAuxPhy)
{
return; // nothing to do
}
// switch main PHY to the previous link, if needed
if (const auto it = m_rtsStartingUlTxop.find(linkId);
it != m_rtsStartingUlTxop.cend() && it->second.second)
{
// TXOP ended due to a CTS timeout following the RTS that started a TXOP
const auto mainPhy = GetStaMac()->GetDevice()->GetPhy(m_mainPhyId);
const auto delay = mainPhy->IsStateSwitching() ? mainPhy->GetDelayUntilIdle() : Time{0};
SwitchMainPhyBackToPreferredLink(linkId, EmlsrTxopEndedTrace(delay));
SwitchMainPhyBackToPreferredLink(linkId, EmlsrCtsAfterRtsTimeoutTrace(delay));
m_rtsStartingUlTxop.erase(it);
return;
}
SwitchMainPhyBackToPreferredLink(linkId, EmlsrTxopEndedTrace());
}
void
@@ -340,7 +360,7 @@ DefaultEmlsrManager::GetDelayUnlessMainPhyTakesOverUlTxop(uint8_t linkId)
// TXOP can be started, main PHY will be scheduled to switch by NotifyRtsSent as soon as the
// transmission of the RTS is notified
m_switchMainPhyOnRtsTx[linkId] = Simulator::Now();
m_rtsStartingUlTxop[linkId] = {Simulator::Now(), false};
return {true, Time{0}};
}
@@ -352,16 +372,23 @@ DefaultEmlsrManager::NotifyRtsSent(uint8_t linkId,
{
NS_LOG_FUNCTION(this << *rts << txVector);
const auto it = m_switchMainPhyOnRtsTx.find(linkId);
const auto it = m_rtsStartingUlTxop.find(linkId);
if (it == m_switchMainPhyOnRtsTx.cend() || it->second != Simulator::Now())
if (it == m_rtsStartingUlTxop.cend() || it->second.first != Simulator::Now())
{
// No request for main PHY to switch or obsolete request
return;
return; // Not an RTS starting an UL TXOP
}
it->second.second = true;
auto phy = GetStaMac()->GetWifiPhy(linkId);
auto mainPhy = GetStaMac()->GetDevice()->GetPhy(m_mainPhyId);
if (phy == mainPhy)
{
return; // RTS sent by the main PHY
}
// Main PHY shall terminate the channel switch at the end of CTS reception
auto mainPhy = GetStaMac()->GetDevice()->GetPhy(m_mainPhyId);
const auto delay = GetTimeToCtsEnd(linkId, txVector) - mainPhy->GetChannelSwitchDelay();
NS_ASSERT_MSG(delay.IsPositive(),
"RTS is being sent, but not enough time for main PHY to switch");
@@ -374,8 +401,13 @@ DefaultEmlsrManager::NotifyRtsSent(uint8_t linkId,
DONT_REQUEST_ACCESS,
EmlsrUlTxopRtsSentByAuxPhyTrace{});
});
}
m_switchMainPhyOnRtsTx.erase(it);
void
DefaultEmlsrManager::DoNotifyProtectionCompleted(uint8_t linkId)
{
NS_LOG_FUNCTION(this << linkId);
m_rtsStartingUlTxop.erase(linkId);
}
} // namespace ns3

View File

@@ -81,9 +81,9 @@ class DefaultEmlsrManager : public EmlsrManager
//!< the main PHY is operating has to connect a listener to
//!< when the main PHY is back operating on its previous link
EventId m_auxPhySwitchEvent; //!< event scheduled for an aux PHY to switch link
std::map<uint8_t, Time> m_switchMainPhyOnRtsTx; //!< link ID-indexed map of the time when an RTS
//!< that requires the main PHY to switch link
//!< is expected to be transmitted on the link
std::map<uint8_t, std::pair<Time, bool>>
m_rtsStartingUlTxop; //!< link ID-indexed map indicating the time when an UL TXOP is going
//!< to start and whether it is starting with an RTS
private:
/**
@@ -111,6 +111,7 @@ class DefaultEmlsrManager : public EmlsrManager
void DoNotifyIcfReceived(uint8_t linkId) override;
void DoNotifyUlTxopStart(uint8_t linkId) override;
void DoNotifyTxopEnd(uint8_t linkId) override;
void DoNotifyProtectionCompleted(uint8_t linkId) override;
};
} // namespace ns3

View File

@@ -753,6 +753,8 @@ EmlsrManager::NotifyProtectionCompleted(uint8_t linkId)
SetSleepStateForAllAuxPhys(true);
}
}
DoNotifyProtectionCompleted(linkId);
}
void

View File

@@ -604,6 +604,14 @@ class EmlsrManager : public Object
*/
virtual void DoNotifyUlTxopStart(uint8_t linkId) = 0;
/**
* Notify the subclass that protection (if required) is completed and data frame exchange can
* start on the given link.
*
* @param linkId the ID of the given link
*/
virtual void DoNotifyProtectionCompleted(uint8_t linkId) = 0;
/**
* Notify the subclass of the end of a TXOP on the given link.
*
@@ -734,61 +742,58 @@ struct EmlsrUlTxopRtsSentByAuxPhyTrace
/**
* Struct to trace that main PHY switched when a (DL or UL) TXOP ended.
*
* This trace is normally called when aux PHYs do not switch link and the main PHY switches back to
* the preferred link when a TXOP carried out on another link ends. In such a case, the remTime
* field is set to zero.
*
* Note that the main PHY may be already switching when the TXOP ends; this happens, e.g., when the
* main PHY starts switching to a link on which an aux PHY gained a TXOP and sent an RTS, but the
* CTS is not received and the UL TXOP ends before the main PHY channel switch is completed. In this
* case, the main PHY switch is postponed until the previous switch is completed and the remTime
* field is set to the remaining channel switch delay at the time the TXOP ends:
* This trace is called when aux PHYs do not switch link and the main PHY switches back to the
* preferred link when a TXOP carried out on another link ends.
*/
struct EmlsrTxopEndedTrace : public EmlsrMainPhySwitchTraceImpl<EmlsrTxopEndedTrace>
{
static constexpr std::string_view m_name = "TxopEnded"; //!< trace name
};
/**
* Struct to trace that main PHY started switching after a CTS timeout occurred on the link on
* which an RTS was transmitted to start an UL TXOP. Provides the time elapsed since the
* CTS timeout occurred.
*
* |-- main PHY switch --|
* |----- to link 1 -----|
* ┌───────────┐
* │ CTS │
* ────────────────────────┬───────────┬───┴X──────────┴─────────────────────────────
* [link 1] │ RTS │ │-remTime-│
* └───────────┘ │ |-- main PHY switch --|
* [link 1] │ RTS │ │-elapsed-│
* └───────────┘ │-- time--|-- main PHY switch --|
* │ |- to preferred link -|
* CTS timeout
* CTS timeout
*
* Note also that the Advanced EMLSR manager may allow a main PHY switch to be interrupted. If this
* option is enabled and the main PHY is switching when the TXOP ends, the previous switch is
* interrupted and the main PHY starts switching to the preferred link (in this case, the remTime
* field indicates the time that was left to complete the previous switch). Also note that, with
* the Advanced EMLSR manager, this trace may also be called when aux PHYs switch link. This happens
* when the TXOP ends while the main PHY is switching; in this case, the previous switch is
* interrupted and the main PHY returns to the link on which it was operating before the previous
* switch.
* Normally, this trace is called when aux PHYs do not switch links, because the main PHY has to
* return to the preferred link upon CTS timeout, because a TXOP did not start. In some cases, the
* main PHY may be switching when CTS timeout occurs; this happens when an aux PHY that is TX
* capable transmits an RTS and the main PHY starts switching to the aux PHY link (the start time
* of the main PHY switch is computed such that the main PHY switch ends slightly after the
* reception of the CTS). In such a case, the main PHY completes the current link switch and then
* it starts switching to return back to the preferred link.
*
* |-- main PHY switch --|
* |----- to link 1 -----|(interrupted)
* ┌───────────┐
* │ CTS │
* ────────────────────────┬───────────┬───┴X──────────┴─────────────────────────────
* [link 1] │ RTS │ │-remTime-│
* └───────────┘ │-- main PHY switch --|
* │- to preferred link -|
* CTS timeout
* Note that the Advanced EMLSR manager may allow a main PHY switch to be interrupted. If this
* option is enabled and the main PHY is switching when CTS timeout occurs, the previous switch is
* interrupted and the main PHY starts switching to the previous link (in this case, the time
* elapsed since the CTS timeout occurred is zero). This holds true for both the case aux PHYs do
* not switch link and the case aux PHYs switch link.
*/
struct EmlsrTxopEndedTrace : public EmlsrMainPhySwitchTraceImpl<EmlsrTxopEndedTrace>
struct EmlsrCtsAfterRtsTimeoutTrace
: public EmlsrMainPhySwitchTraceImpl<EmlsrCtsAfterRtsTimeoutTrace>
{
static constexpr std::string_view m_name = "TxopEnded"; //!< trace name
static constexpr std::string_view m_name = "CtsAfterRtsTimeout"; //!< trace name
Time remTime; //!< the remaining time (at TXOP end) until the main PHY completes the
//!< channel switch, in case the main PHY is completing a previous switch
//!< when the TXOP ends
Time sinceCtsTimeout; //!< time elapsed since CTS timeout occurred
/**
* Constructor provided because this struct is not an aggregate (it has a base struct), hence
* we cannot use designated initializers.
*
* @param t the value for the sinceTxopEnd field
* @param elapsed the value for the sinceCtsTimeout field
*/
EmlsrTxopEndedTrace(const Time& t)
: remTime(t)
EmlsrCtsAfterRtsTimeoutTrace(const Time& elapsed)
: sinceCtsTimeout(elapsed)
{
}
};

View File

@@ -3110,19 +3110,6 @@ EmlsrUlTxopTest::CheckBlockAck(const WifiConstPsduMap& psduMap,
if (m_staMacs[0]->GetLinkForPhy(m_mainPhyId) != linkId)
{
Simulator::Schedule(txDuration + TimeStep(1), [=, this]() {
// check the traced remaining time before calling CheckMainPhyTraceInfo
if (const auto traceInfoIt = m_traceInfo.find(0);
traceInfoIt != m_traceInfo.cend() &&
traceInfoIt->second->GetName() == "TxopEnded")
{
const auto& traceInfo =
static_cast<const EmlsrTxopEndedTrace&>(*traceInfoIt->second);
NS_TEST_EXPECT_MSG_EQ(
traceInfo.remTime,
Time{0},
"Expected null remaining time because TXOP ended regularly");
}
CheckMainPhyTraceInfo(0, "TxopEnded", linkId, m_mainPhyId);
});
}
@@ -3518,24 +3505,25 @@ EmlsrUlTxopTest::CheckCtsFrames(Ptr<const WifiMpdu> mpdu,
// aux PHYs are put to sleep if and only if CTS is not corrupted
// (causing the end of the TXOP)
CheckAuxPhysSleepMode(m_staMacs[0], !doCorruptCts);
// if CTS is corrupted, TXOP ends and the main PHY switches back
// to the preferred link
// if CTS is corrupted, TXOP ends and the main PHY switches back to the preferred
// link
if (doCorruptCts)
{
// check the traced remaining time before calling CheckMainPhyTraceInfo
// check the traced elapsed time since CTS timeout before calling
// CheckMainPhyTraceInfo
if (const auto traceInfoIt = m_traceInfo.find(0);
traceInfoIt != m_traceInfo.cend() &&
traceInfoIt->second->GetName() == "TxopEnded")
traceInfoIt->second->GetName() == "CtsAfterRtsTimeout")
{
const auto& traceInfo =
static_cast<const EmlsrTxopEndedTrace&>(*traceInfoIt->second);
NS_TEST_EXPECT_MSG_GT(traceInfo.remTime,
static_cast<const EmlsrCtsAfterRtsTimeoutTrace&>(*traceInfoIt->second);
NS_TEST_EXPECT_MSG_GT(traceInfo.sinceCtsTimeout,
Time{0},
"Expected non-zero remaining time because main PHY "
"was switching when TXOP ended");
"was switching when CTS timeout occurred");
}
CheckMainPhyTraceInfo(0, "TxopEnded", linkId, m_mainPhyId);
CheckMainPhyTraceInfo(0, "CtsAfterRtsTimeout", linkId, m_mainPhyId);
}
});
}