Primetime ISP speeds: LocalNet vs Elisa vs DNA

Scheduled Ookla speed tests, 8 Feb – 24 Aug 2026 · 15,808 server measurements over 192 days with data · times in Europe/Helsinki · all rates in decimal Mbps

This report tracks a long-running problem on a LocalNet (Local Loop Oy) 1000/1000 Mbps fiber connection in Kauhava: every evening around primetime, throughput collapsed and packet loss appeared, degrading VoIP and remote work.

Two connections at other sites, behind identical customer hardware, are measured on the same schedule as controls: Elisa 1000/1000 in Ylivieska and DNA 600/100 in Espoo. Each connection is tested against the same 4 Helsinki-area Ookla servers 7 times a day — 9 since 20 August, when two extra evening slots were added to map the congestion window. A fourth connection, Bahnhof 1000/1000 at a second Ylivieska site, joined on 19 August; it still sits behind an old router sized for a 50/50 VDSL line, so its numbers measure that hardware, not the ISP (see below).

The short version: in February 2026 LocalNet's primetime download was routinely around half the subscribed rate (median 523 Mbps at 19–21 h — just 318 Mbps at 21:15 — with the worst tenth of tests below 82 Mbps) and 7.4% of primetime tests saw ≥1% packet loss. The congestion sat in LocalNet's upstream links: speeds toward SuomiCom stayed at line rate all along while every other direction collapsed.

Fixes in February–March restored most download performance, but from 9 April a new upload bottleneck appeared at 21:15, lasting into July. A decisive (unannounced) improvement landed on 19 June; July was nearly clean.

On 9–11 August the congestion returned in both directions, and the new test series shows it deepening. On 20–22 August the whole evening degrades — every slot from 20:15 to 22:15 collapses in both directions, with 19:15 and 23:15 partially hit — bottoming out at 21:15 on 22 August at 63–72 Mbps down and 55–76 up toward the congested directions. That is the worst single-slot collapse since February. On 23 August the window widened rather than eased: the collapse ran unbroken from 17:15 to 22:15 — six slots, both directions — where on the preceding evenings it had set in at 19:15 or later.

An independent SmokePing alert log tells the same story, dating the June fix to the day and showing the August regression never pausing. Elisa and DNA showed no primetime degradation beyond a few percent — and essentially zero packet loss — throughout.

LocalNet primetime download, February
523 Mbps
median · worst 10% below 82 Mbps — on a 1,000 Mbps line
LocalNet primetime download, July
920 Mbps
median · worst 10% below 793 Mbps
LocalNet primetime tests with ≥1% packet loss
7.4%
Elisa and DNA: one test each (~0.03%) over the whole period
Slowest LocalNet run
4.7 Mbps
10 Feb 21:15 toward Elisa Helsinki — 0.47% of subscribed speed

The evening dip, hour by hour

LocalNet (1000M)Elisa (1000M)DNA (600M)
0%25%50%75%100%01:1507:1513:1517:1519:1521:1523:15LocalNet 75%
Median download over the full period, as % of the subscribed rate — the honest way to compare a 600 Mbps plan with 1000 Mbps plans.
Table view — medians by slot (Mbps)
Median measured speed by daily test slot, all servers, full period (20:15 and 22:15 slots exist only since 20 Aug — regression days only)
SlotLocalNet down (Mbps)Elisa down (Mbps)DNA down (Mbps)LocalNet up (Mbps)Elisa up (Mbps)DNA up (Mbps)
01:1592992958393879898
07:1592994058593880298
13:1592893357793879496
17:1592793156493879696
19:1591893054693479594
20:1539892753229475397
21:1574892452092379691
22:1536493054124375195
23:1592492255093480192

All three ISPs deliver ~92–97% of plan off-peak. At 21:15 LocalNet's median falls to 74.8% — and that's the median over the whole period, including the good months. DNA dips mildly (to 86.7%); Elisa barely moves.

Two extra evening slots (20:15, 22:15) were added on 20 August to map the congestion window. With only regression evenings behind them so far, their medians aren't comparable to these full-period lines (LocalNet: 398 and 364 Mbps down), so they appear in the table only.

Where the congestion sits

FebMarAprMayJunJulAugSuomiCom (Espoo)936938938938938938938DNA Welho (Helsinki)323350829760884902796Telia (Helsinki)356494883867902918820Elisa (Helsinki)390510878898911918873
LocalNet primetime download (19:15 & 21:15) by test server and month.
Table view — median Mbps
LocalNet median download (Mbps) at 19:15 & 21:15 by test server and month
ServerFebMarAprMayJunJulAug
SuomiCom (Espoo)936938938938938938938
DNA Welho (Helsinki)323350829760884902796
Telia (Helsinki)356494883867902918820
Elisa (Helsinki)390510878898911918873

The tell: tests toward SuomiCom (Espoo) ran at ~937 Mbps in every month — the access line itself was never the problem. Congestion was in LocalNet's interconnects toward the rest of the internet (DNA Welho, Telia and Elisa directions), matching the ISP's own diagnosis of saturated upstream/metro capacity.

Six months of primetime downloads, day by day

02505007501,000MarAprMayJunJulAugISP fixes doneCGNAT moved off“Phase 1” migrationLoss alerts collapseRegressionNew series
LocalNet, 19:15 & 21:15 runs (8 measurements/day): daily median line, band spans best-to-worst run. Annotations mark ISP-side events from the support thread. (Gap: no tests 13–18 August.)
Table view — daily values (Mbps)
DateMedian MbpsMin MbpsMax Mbps
2026-02-087849927
2026-02-0925733935
2026-02-10915927
2026-02-1189168940
2026-02-1258554936
2026-02-13816353939
2026-02-14551204936
2026-02-15522166940
2026-02-16898144938
2026-02-1742197940
2026-02-18327213938
2026-02-1932672932
2026-02-20508188937
2026-02-21611144936
2026-02-22528256945
2026-02-23598387936
2026-02-24506282938
2026-02-25578280941
2026-02-26908323939
2026-02-2780879937
2026-02-28841124940
2026-03-01399149941
2026-03-02860251939
2026-03-03884225941
2026-03-04882336938
2026-03-05901152940
2026-03-06900196940
2026-03-07539278938
2026-03-08435161938
2026-03-09913241931
2026-03-10896259939
2026-03-11802259938
2026-03-12884345939
2026-03-13535273938
2026-03-14389120939
2026-03-15258107939
2026-03-16787431939
2026-03-17904604937
2026-03-18905197940
2026-03-19837185939
2026-03-20626298941
2026-03-21200112940
2026-03-2226356939
2026-03-23289156940
2026-03-24252183939
2026-03-25736282939
2026-03-26809202939
2026-03-27818302940
2026-03-28882288938
2026-03-29818283934
2026-03-30864298937
2026-03-31877171941
2026-04-0190098938
2026-04-02902298937
2026-04-03914858938
2026-04-04912796940
2026-04-05884351940
2026-04-06596118940
2026-04-07923847938
2026-04-08877127939
2026-04-09915266938
2026-04-10888403940
2026-04-11851510939
2026-04-12900495938
2026-04-13916520941
2026-04-14911239940
2026-04-15904207938
2026-04-16694158938
2026-04-17914210940
2026-04-18879772942
2026-04-19393259937
2026-04-20919366940
2026-04-21915740941
2026-04-22917884939
2026-04-23924832938
2026-04-24924834938
2026-04-25848613939
2026-04-26428278939
2026-04-27543324935
2026-04-28914225938
2026-04-29912827936
2026-04-30915889938
2026-05-01926896936
2026-05-02918714940
2026-05-03875139938
2026-05-04923300940
2026-05-05809266939
2026-05-06914330938
2026-05-07923542939
2026-05-08910373939
2026-05-09891170938
2026-05-10818126940
2026-05-11899384939
2026-05-12552133939
2026-05-1383066937
2026-05-14922463938
2026-05-15923773939
2026-05-16920669939
2026-05-17891592938
2026-05-18921674943
2026-05-19908734938
2026-05-20910661939
2026-05-21522263939
2026-05-22835292938
2026-05-23912595940
2026-05-24915377938
2026-05-25907693938
2026-05-26905599939
2026-05-27913322941
2026-05-28757167938
2026-05-29908412938
2026-05-30920717942
2026-05-31844222937
2026-06-01913330937
2026-06-02910390935
2026-06-03926722940
2026-06-04900403940
2026-06-05920241944
2026-06-06894601939
2026-06-07910788942
2026-06-08913207938
2026-06-09516189939
2026-06-10922231940
2026-06-11888182937
2026-06-12920557940
2026-06-13914243937
2026-06-14904207939
2026-06-15783617939
2026-06-16916723938
2026-06-17922804938
2026-06-18922906938
2026-06-19927911935
2026-06-20921898939
2026-06-21916578936
2026-06-22910243940
2026-06-23904222939
2026-06-24918789941
2026-06-25905231938
2026-06-26913636938
2026-06-27921893938
2026-06-28888372939
2026-06-29926589939
2026-06-30906296938
2026-07-01919908946
2026-07-02913479938
2026-07-03921883943
2026-07-04907580938
2026-07-05915400940
2026-07-06924902939
2026-07-07845495940
2026-07-08924879938
2026-07-09920835938
2026-07-10932902940
2026-07-11927898939
2026-07-12904444938
2026-07-13922898938
2026-07-14922898939
2026-07-15932912939
2026-07-16926870940
2026-07-17917882938
2026-07-18918892938
2026-07-20911894942
2026-07-21917621937
2026-07-22921860939
2026-07-23928896938
2026-07-24914838935
2026-07-25897611933
2026-07-26626295938
2026-07-27926233940
2026-07-28904494938
2026-07-29921913938
2026-07-30925905938
2026-07-31919848943
2026-08-01930904941
2026-08-02916854939
2026-08-03904530938
2026-08-04922872940
2026-08-05910345943
2026-08-06916327938
2026-08-07909414937
2026-08-08916881936
2026-08-09922138937
2026-08-10841137937
2026-08-11605118943
2026-08-19910296939
2026-08-20390120940
2026-08-21707337942
2026-08-2284363940
2026-08-23299135940

February: median ~520 Mbps with worst runs under 10 Mbps, then stepwise recovery after the mid-February fixes and the 23 March “Phase 1” traffic migration. Deep dips grow rarer through spring, and in July the worst tenth of primetime runs stayed above 793 Mbps. The 9–11 August regression is still active in the new series and getting worse: every evening 19–23 August dips, on 22 August the 21:15 runs toward the congested directions fell to 63–72 Mbps, and on 23 August the collapse had already begun at 17:15 (162–421 Mbps) and held through 22:15, leaving a primetime median of 299 Mbps for the day.

The second bottleneck: upload at 21:15

02505007501,000MarAprMayJunJulAugUpload congestion beginsMostly recoveredRegressionNew series
LocalNet 21:15 upload (4 server runs/day): daily median line, band spans best-to-worst run.
Table view — daily values (Mbps)
DateMedian MbpsMin MbpsMax Mbps
2026-02-08884783936
2026-02-09898821941
2026-02-10502351604
2026-02-11911909925
2026-02-12921904931
2026-02-13933930937
2026-02-14926924939
2026-02-15926920935
2026-02-16928912937
2026-02-17925911932
2026-02-18931924934
2026-02-19667414935
2026-02-20927921931
2026-02-21927914934
2026-02-22929927938
2026-02-23929924935
2026-02-24930927939
2026-02-25927925936
2026-02-26929926938
2026-02-27912858931
2026-02-28928902934
2026-03-01930925937
2026-03-02928927938
2026-03-03930921934
2026-03-04931927937
2026-03-05930928938
2026-03-06932930938
2026-03-07929924938
2026-03-08927920935
2026-03-09926916934
2026-03-10930922933
2026-03-11927924931
2026-03-12927924939
2026-03-13928925930
2026-03-14930924938
2026-03-15928925936
2026-03-16930922937
2026-03-17926910941
2026-03-18928926935
2026-03-19930923936
2026-03-20932928933
2026-03-21923913929
2026-03-22900537929
2026-03-23930926932
2026-03-24931924942
2026-03-25934931934
2026-03-26929927934
2026-03-27932927938
2026-03-28931929935
2026-03-29928925939
2026-03-30930925934
2026-03-31929920935
2026-04-01929924932
2026-04-02930927941
2026-04-03934933937
2026-04-04931924932
2026-04-05931926938
2026-04-06931923934
2026-04-07930927931
2026-04-08910837932
2026-04-09385270916
2026-04-10448304937
2026-04-11692594935
2026-04-12440370938
2026-04-13622439936
2026-04-14317177937
2026-04-15234216938
2026-04-16274190938
2026-04-17263215938
2026-04-18873725937
2026-04-19252243936
2026-04-20472379937
2026-04-21644472938
2026-04-22902877938
2026-04-23847679938
2026-04-24849657937
2026-04-25611486938
2026-04-26290242933
2026-04-27319233937
2026-04-28269203935
2026-04-29922891938
2026-04-30937889946
2026-05-01937921938
2026-05-02742486938
2026-05-03161119937
2026-05-04442317938
2026-05-05372232938
2026-05-06448306938
2026-05-07603514938
2026-05-08453341938
2026-05-09288213936
2026-05-10230193935
2026-05-11388364936
2026-05-12251122938
2026-05-1310082914
2026-05-14378287937
2026-05-15798583938
2026-05-16846583938
2026-05-17440280938
2026-05-18803487934
2026-05-19693425938
2026-05-20695522929
2026-05-21347226938
2026-05-22476419928
2026-05-23462412936
2026-05-24453399937
2026-05-25765699938
2026-05-26490397937
2026-05-27349266938
2026-05-28275126930
2026-05-29373308938
2026-05-30531336938
2026-05-31247176938
2026-06-01308270938
2026-06-02432396938
2026-06-03746399938
2026-06-04521352907
2026-06-05291209938
2026-06-06652592938
2026-06-07678536938
2026-06-08216184935
2026-06-09430323938
2026-06-10344276936
2026-06-11204142936
2026-06-12624339938
2026-06-13380303938
2026-06-14203168938
2026-06-15392285938
2026-06-16717546938
2026-06-17494413936
2026-06-18938935943
2026-06-19938935945
2026-06-20938936946
2026-06-21484400933
2026-06-22230218938
2026-06-23234183928
2026-06-24897554937
2026-06-25337285937
2026-06-26775416941
2026-06-27937936944
2026-06-28318255938
2026-06-29625496936
2026-06-30315278939
2026-07-01937930940
2026-07-02530421939
2026-07-03806562938
2026-07-04540324938
2026-07-05302270937
2026-07-06930897938
2026-07-07480336939
2026-07-08926887939
2026-07-09935906945
2026-07-10938931945
2026-07-11938935946
2026-07-12366312937
2026-07-13868719938
2026-07-14938891943
2026-07-15938926946
2026-07-16937932938
2026-07-17935796945
2026-07-20864323937
2026-07-21420332939
2026-07-22757615938
2026-07-23936916939
2026-07-24842703931
2026-07-25658542937
2026-07-26178144934
2026-07-27445222938
2026-07-28459413936
2026-07-29936829942
2026-07-30906695942
2026-07-31766657938
2026-08-01936926940
2026-08-02696520936
2026-08-03449295938
2026-08-04802692938
2026-08-05280184939
2026-08-06310276938
2026-08-07405281935
2026-08-08707669937
2026-08-09173140938
2026-08-10146111938
2026-08-11130102935
2026-08-19339313937
2026-08-20129102939
2026-08-21318296938
2026-08-227355938
2026-08-23151117937

Upload was clean while downloads were at their worst — then collapsed from 9 April, exactly as download recovered: the congestion moved rather than disappeared. May–June medians at 21:15 sat between 200 and 700 Mbps on a 1000 Mbps plan. During that spring episode only the 21:15 slot was affected — by 19:15 and 23:15 upload was back at ~938 Mbps.

The August regression is broader: on 20–22 August upload collapsed across the whole evening, 19:15 through 22:15 — on 21–22 August even the 23:15 runs dropped to 340–635 Mbps — and 22 August's 21:15 runs hit 55–76 Mbps toward the congested directions. On 23 August upload was down to 187–254 Mbps already at 17:15, ran at 117–172 at 21:15, and had still not recovered by 23:15 (668–806 Mbps).

Month by month at the worst hour

LocalNetElisaDNA
0%25%50%75%100%Feb32%Mar38%Apr82%May71%Jun82%Jul91%Aug65%
Median download at 21:15 as % of subscribed rate.
Table view — 21:15 download, median and p10 (Mbps)
Download at 21:15 (Mbps): monthly median and 10th percentile
MonthLocalNet medianElisa medianDNA medianLocalNet p10Elisa p10DNA p10
Feb31891451067886414
Mar383921511170901403
Apr825918521245900304
May714919510195896373
Jun825928527252903422
Jul914930534566918442
Aug651927523137908420

LocalNet climbs from 32% of plan in February to 91% in July, while Elisa (91–93%) and DNA (85–89%) barely change. The improvement is real, but even July doesn't reach the controls' consistency. And August's regression drags the 21:15 median back to 65%, with the worst tenth below 137 Mbps.

Packet loss — the original complaint

0%5%10%15%20%16.7%MarAprMayJunJulAug
Share of LocalNet tests each week reporting ≥1% packet loss (any time of day).
Table view — weekly loss
LocalNet weekly packet loss (tests with loss measurement)
WeekTests ≥1% lossMean lossMax loss
2026-02-0216.7%0.62%3.7%
2026-02-0914.6%0.67%14.2%
2026-02-165.4%0.15%1.5%
2026-02-233.4%0.09%1.3%
2026-03-022.0%0.07%1.3%
2026-03-092.7%0.1%1.6%
2026-03-164.1%0.09%1.9%
2026-03-230.7%0.07%1.3%
2026-03-308.8%0.19%3.7%
2026-04-067.5%0.17%2.7%
2026-04-135.0%0.1%2.8%
2026-04-204.8%0.1%2.6%
2026-04-276.8%0.13%2.2%
2026-05-044.8%0.1%2.0%
2026-05-114.8%0.1%2.0%
2026-05-188.2%0.17%3.8%
2026-05-2510.9%0.21%3.4%
2026-06-017.5%0.15%2.5%
2026-06-086.2%0.11%2.2%
2026-06-153.4%0.08%2.5%
2026-06-220.0%0.03%0.6%
2026-06-294.1%0.1%1.7%
2026-07-062.7%0.05%1.8%
2026-07-131.7%0.03%1.3%
2026-07-202.1%0.06%1.5%
2026-07-270.7%0.04%1.3%
2026-08-034.1%0.09%1.5%
2026-08-102.3%0.07%1.0%
2026-08-174.2%0.12%1.61%
2026-08-240.0%0%0%

Loss follows the same arc as throughput: worst in February (peaking at 16.7% of tests, single runs up to 14.2% loss), tapering through spring, near-zero after late June, ticking up again in August.

Unlike February, the August regression shows up mainly as lost throughput — new-series runs top out at 1.6% loss even while speeds collapse. Across the whole period 4.86% of LocalNet tests saw ≥1% loss; Elisa and DNA logged one such test each (0.03%).

The alert log tells the same story

050100150200MarAprMayJunJulAug198First full day“Phase 1” migrationLoss alerts collapseRegression
Time spent in a SmokePing “Loss” alert per day, in 5-minute probe slots, summed over the paths involving the LocalNet connection — independent latency monitoring from seven vantage points (complete local days only, 15 Mar – 23 Aug).
Table view — weekly alert counts
Time in alert per week, in 5-minute slots; raise counts kept for reference (complete local days, 15 Mar – 23 Aug; the first week is partial)
WeekLocalNet-related (slots)LocalNet-related (raised)All other (slots)
2026-03-0931292
2026-03-165684419
2026-03-2311310713
2026-03-3032831730
2026-04-062832459
2026-04-132552399
2026-04-20259239701
2026-04-2727125842
2026-05-0431430611
2026-05-11351318208
2026-05-18451420581
2026-05-2533531417
2026-06-012992898
2026-06-0842640920
2026-06-152322090
2026-06-2260571,484
2026-06-2992890
2026-07-0648466
2026-07-13696918
2026-07-2060609
2026-07-2783780
2026-08-03989342
2026-08-1022119536
2026-08-1722020394

A second, independent witness, measured as time in alert rather than alert counts, so sustained loss weighs what it lasted. Most episodes span a single 5-minute round; the tail reaches over an hour.

LocalNet-related paths spent ~45 slots a day in alert until 18 June — the peak, 198 slots (16.5 hours), on 19 Mar — then fell off a cliff on 19 June: 51, 43, 5, 5 across 17–20 June. That is the same unannounced fix the speed tests see, dated to the day. After the 9 August regression the time in alert tripled from July's ~10 to ~30 slots a day, and it bridges the 13–18 August speed-test gap at ~23 slots a day: the regression never paused. The widened evening of 23 August is the worst day since the June fix — 69 slots, 5.8 hours.

44% of the alert time falls between 19:00 and midnight. And 2,265 of the 5,030 alert episodes involve LocalNet's data center seen from vantage points outside the LocalNet line — the degradation is visible from the rest of the internet, not just from the customer's side.

In fairness to LocalNet: latency under load

0 ms100 ms200 ms300 ms400 msLocalNet9 msElisa148 msDNA346 msBahnhof23 ms
Median latency over the whole measurement period: idle (faint dot) vs during a download (solid dot).
Table view — latency
Median latency: idle vs under load, full period, all servers (Bahnhof: since 19 Aug only)
ISPIdle (ms)Loaded, download (ms)Loaded, upload (ms)
LocalNet7.09.18.7
Elisa13.9147.814.9
DNA10.8346.430.5
Bahnhof11.122.721.5

Outside the congested hours LocalNet's connection is excellent: latency stays at ~9 ms even under full download load. Elisa's rises to ~150 ms and DNA's to ~346 ms under load (bufferbloat), which hurts interactive use during large transfers.

Bahnhof holds ~22 ms — though its undersized router caps throughput well below the line rate, which itself limits queue build-up. A congestion-free LocalNet line remains the best of the set.

New in the rotation: Bahnhof (Ylivieska/TPY)

A fourth connection — Bahnhof, subscribed 1000/1000 Mbps, at a second Ylivieska site — joined the schedule on 19 August. Its numbers should not yet be read as ISP performance: the site still has an old Cisco C897VA-M-K9 router, obtained for the 50/50 VDSL line the connection replaced, which tops out around 200–250 Mbps of routed traffic.

The first days of tests show a stable hardware-bound profile: ~215 Mbps toward the DNA Welho and Telia servers and ~300–350 Mbps toward Elisa and SuomiCom, identical at every hour, with no primetime dip, zero packet loss, and a well-behaved ~22 ms loaded latency.

Once the router is replaced with an EdgeRouter 4 (matching the other sites), Bahnhof joins the charts as a proper 1000/1000 comparison, and the swap date will be marked on the timeline.

Side-by-side summary

LocalNetElisaDNABahnhof †
Subscribed (down/up, Mbps)1000 / 10001000 / 1000600 / 1001000 / 1000
Median download, all slots925 Mbps931 Mbps566 Mbps274 Mbps
Median upload, all slots936 Mbps797 Mbps96 Mbps257 Mbps
Median download, primetime904 Mbps926 Mbps532 Mbps274 Mbps
10th pct download, primetime256 Mbps903 Mbps424 Mbps213 Mbps
Tests with ≥1% packet loss4.86%0.03%0.03%0.0%
Median idle latency7.0 ms13.9 ms10.8 ms11.1 ms
Median loaded latency (down)9.1 ms147.8 ms346.4 ms22.7 ms
Measurements (server runs)5,2705,2095,157168

† Bahnhof: 168 measurements since 19 August, behind a Cisco C897VA-M-K9 sized for a 50/50 VDSL line — its throughput figures reflect that router's routing capacity (~200–350 Mbps), not the 1000/1000 line.

Timeline: complaint to (partial) resolution

From the support thread with LocalNet (“Pakettikatoa iltaisin”, Jun 2025 – Jun 2026) and from the measurement data.

2025-05-16
Evening packet loss on LocalNet first appears in the customer’s monitoring (SmokePing), daily 18–24.
2025-06-09
Issue reported to LocalNet: daily evening packet loss, VoIP quality degraded.
2025-08-11
Telia core team applies fixes; helps some customers, not all.
2025-10-30
Telia admits a metro device carrying part of LocalNet traffic is at its capacity limit.
2026-01-20
LocalNet opens direct peering with Microsoft; promises more routing capacity.
2026-02-07
Cron-driven speed tests begin (this dataset). Same weekend LocalNet brings up new FNE transit (AS47605); initially blackholes some routes.
2026-02-14
LocalNet: batch of fixes complete. Speeds start improving.
2026-03-02
LocalNet reports CGNAT customers (the largest traffic mass) moved off the congested path; promises more within ~2 weeks and end of March.
2026-03-23
LocalNet: “Phase 1 complete” — bulk of traffic moved to another device. Interface upgrades still pending.
2026-04-09
Data: a new bottleneck appears — upload at 21:15 starts collapsing (median some evenings under 300 Mbps). Persists through June.
2026-06-19
Data & monitoring: loss alerts collapse — LocalNet-related time in alert falls from 43 five-minute slots on 18 June to 5 on the 19th, against ~45/day (peak 198) before, and stays near ~8/day for the rest of the month; primetime downloads hold near line rate. No announced change.
2026-08-09
Data: regression — 9–11 Aug show renewed heavy primetime congestion in both directions.
2026-08-19
New test series begins (JSON format, per-server runs); Bahnhof 1000/1000 at a second Ylivieska site (TPY) joins as a fourth connection. That evening’s 21:15 runs confirm the regression is still active: 296–601 Mbps down, 313–348 up toward the congested directions, SuomiCom untouched.
2026-08-20
Two extra evening slots (20:15 and 22:15) added to the schedule to map the congestion window. They immediately show it spans the whole evening: on 20–22 August the 20:15–22:15 slots collapse in both directions, 19:15 and 23:15 are partially degraded, and SuomiCom stays at line rate throughout. The worst single-slot collapse since February lands on 22 August: 63–72 Mbps down, 55–76 up at 21:15.
2026-08-23
Data: the congestion window widens. Every slot from 17:15 to 22:15 collapses in both directions — 162–421 Mbps down already at 17:15, 135–313 down and 117–172 up at 21:15 — while SuomiCom holds line rate throughout. The monitoring agrees: 69 five-minute slots in alert, the worst day since the June fix.

Method

From 7 February 2026, a cron job has run the Ookla Speedtest CLI seven times daily — at 01:15, 07:15, 13:15, 17:15, 19:15, 21:15 and 23:15 (Europe/Helsinki); since 20 August two extra evening slots at 20:15 and 22:15 make it nine. Each run tests first the LocalNet connection, then Elisa (+1 min), then DNA (+2 min), and since 19 August also Bahnhof (+3 min).

The connections are at different sites — LocalNet in Kauhava (KAU), Elisa in Ylivieska (PRY), DNA in Espoo (ESP), Bahnhof at a second Ylivieska site (TPY) — behind identical customer equipment (Ubiquiti EdgeRouter 4, gigabit LAN) except Bahnhof (see its section). All test toward the same four fixed servers: SuomiCom (Espoo), DNA Welho, Telia and Elisa (all Helsinki). Differences in evening behavior therefore reflect the ISPs' networks, not the measurement setup; absolute idle latencies do differ with distance to Helsinki.

The data comes in two series: the original text logs (8 February – 12 August, one file per run) and, after a 6-day pause, a new JSON series (from 19 August, one Ookla JSON result per server via speedtest -f json -b -s <id>). This report covers 8 February – 24 August 2026: 15,808 measurements; 33 scheduled runs in the old series produced no result (measurement-host gaps, e.g. 18–20 July) and are excluded. The connection under test is identified from the ISP field reported by the test itself.

Subscribed rates: LocalNet 1000/1000, Elisa 1000/1000, DNA 600/100, Bahnhof 1000/1000 Mbps. Units: the old text logs report rates in mebibits per second (“Mibps”), while the JSON series reports bytes/s (decimal). All old-series rates have been converted ×1.048576, so every figure in this report is in decimal Mbps — the unit Ookla and the ISPs use. (The initial 19 August publication mistakenly read the old logs as decimal Mbps, understating all rates by ~4.9%; relative comparisons were unaffected.)

Packet loss isn't reported by every server/run (3,961 of 15,808 measurements lack it — most often toward the DNA Welho server); loss statistics use only tests that reported it. Latency figures are Ookla's idle and loaded (during transfer) measurements; for the JSON series the loaded figure is the IQM. All aggregates are medians unless noted, computed per measurement (server run).

The alert chart comes from a separate SmokePing mesh, independent of the speed tests; its master sits on a different line entirely — a second, separate Elisa connection at the Ylivieska PR site. Every 5 minutes it pings its targets from seven vantage points: Kauhava (behind the LocalNet line), Lappeenranta (on a DNA connection), Avaruus.net and Hetzner in Helsinki, AWS Stockholm, Linode London, and the master's own site. Targets include each site's router, the routers' uplink gateways, hosts in LocalNet's data center, and DNS infrastructure in Finland and abroad.

An edge-triggered Loss alert is raised when a target shows non-zero packet loss in two polling rounds within 30 minutes, and stays raised while the pattern keeps matching (pattern >0%,*4*,>0%, unchanged since June 2025; the target set is unchanged since 11 March 2026, apart from the dead data-center host described below, removed on 23 August).

The chart measures time in alert. Raised/cleared events are paired into episodes per target and vantage; each day's value is the number of 5-minute probe slots those episodes cover, summed over the paths that involve the LocalNet connection — measured from Kauhava, targeting the Kauhava routers or their uplinks, or targeting LocalNet's data center from any vantage point. Alerts still open when the SmokePing service restarts never log a “cleared”, so episodes are closed at service boundaries. A journal export is taken whenever the exporting script runs, which leaves the journal's first and last calendar days partial; the series covers complete local days only (15 Mar – 23 Aug here), so no bar stands for a fraction of a day.

Two exclusions keep the series about congestion. One data-center test host went silent on 5 April and has not returned; a dead host re-raises from every vantage after each service restart, which is an artifact, not congestion. And an episode is attributed to the far end when its target is simultaneously in alert from two or more non-Kauhava vantages — a 10-hour nameserver outage elsewhere on 26 June is the far end's problem even when the Kauhava path also alerts on it. Such episodes count under “all other paths”.

Raised-alert counts remain in the table view for reference. The source is the SmokePing master's systemd journal, whose retention horizon is 14 March 2026 — the worse February period predates it and survives only in the complaint thread's counts.

Changelog

2026-08-19
Initial publication, covering 8 February – 12 August 2026.
2026-08-20
Fixed Mbps vs Mibps confusion — the old logs are in mebibits/s, so all rates are now converted to decimal Mbps (~4.9% higher than initially published; comparisons unaffected). Incorporated the new JSON test series (from 19 August) and added the Bahnhof comparison, currently behind inferior local equipment originally sized for a 50/50 VDSL line. Data extended to 20 August.
2026-08-22
Data extended to 22 August. Two extra evening test slots (20:15 and 22:15, since 20 August) added to the schedule and the slot table; the hourly chart keeps the original seven slots for comparability. The August regression deepened — the new slots show the congestion window spans the whole evening, and 22 August saw the worst single-slot collapse since February.
2026-08-23
Added an independent SmokePing alert dataset (the monitoring master's journal, from 14 March) and a new alert chart. It corroborates the 19–20 June fix and the 9 August regression, and bridges the 13–18 August speed-test gap. Method section extended accordingly. Later the same day: alert measure switched from raised-alert counts to time in alert (5-minute slots), which weights sustained loss honestly; a dead test host and far-end outages are now excluded, and raise counts remain in the table view. Data extended to 23 August. Intro, Method, the alert section and all chart captions restructured for readability — short captions describe each figure, the analysis sits in body prose; no content changes.
2026-08-24
Data extended to 24 August, alert journal included. The congestion window widened on 23 August — the collapse now runs unbroken from 17:15 to 22:15 — and that evening is the worst day in the alert log since the June fix. Later the same day: the alert series was trimmed to complete local days, so the journal's partial first and last days no longer appear as quiet days. The “Loss alerts collapse” marker moved from 20 to 19 June, the day the drop actually happens.
Last updated 24 August 2026, from the speed-test archive (txt series 8 Feb – 12 Aug; JSON series from 19 Aug), the SmokePing alert journal (14 Mar – 24 Aug) and the LocalNet support thread PDF. Data: kimmo.suominen.com/stuff/speed.