The attached tcpdump traces are from armv7 and amd64 systems.  The problem
on the armv7 system is very reproducible even though the pypi.io site uses
different hosts at random.
It has been many years since I analysed tcp traces and then it was with
wireshark and so my abilities are lacking.  However I am suspicious about
the sequence of packets:

21:49:47.217013 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: S
891608003:891608003(0) win 16384 <mss 1460,nop,nop,sackOK,nop,wscale
6,nop,nop,timestamp 3208818117 0> (DF)
21:49:47.226246 151.101.64.223.https > op1bsdtest.graf.lan.39119: S
3712909619:3712909619(0) ack 891608004 win 28960 <mss 1460,sackOK,timestamp
447678784 3208818117,nop,wscale 9> (DF)
21:49:47.226339 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: . ack 1
win 256 <nop,nop,timestamp 3208818117 447678784> (DF)
21:49:47.312947 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P
1:210(209) ack 1 win 256 <nop,nop,timestamp 3208818117 447678784> (DF)
21:49:48.254031 151.101.64.223.https > op1bsdtest.graf.lan.39119: S
3712909619:3712909619(0) ack 891608004 win 28960 <mss 1460,sackOK,timestamp
44767904

It looks like far end missed an ack from the arm system.


-----Original Message-----
From: Mark Kettenis <mark.kette...@xs4all.nl> 
Sent: November 6, 2018 11:19 AM
To: s_g...@telus.net
Cc: s...@spacehopper.org; b...@openbsd.org
Subject: Re: fetch problem with //pypi.io/packages/source/

> From: <s_g...@telus.net>
> Date: Tue, 6 Nov 2018 10:50:20 -0800
> 
> Both system are on the same network, hub, router etc.  The amd system 
> is on Virtualbox on my PC and the arm system is an orangepi one.
> 
> >From the arm system:
> 
> op1bsdsnap1102#
> op1bsdsnap1102# ftp -d -o /dev/null https://pypi.io/ host pypi.io, 
> port https, path , save as /dev/null, auth none.
> Trying 151.101.0.223...
> Requesting https://pypi.io/

I can reproduce this on my Allwinner A20 system (Banana Pi) but on on NXP
i.MX6 (Cubox-i4).  That suggests this is a network driver bug.
However, my device is using dwge(4), whereas yours is using dwxe(4) isn't
it?  It isn't inconceivable that both drivers have the same bug though,
since the hardware is very similar.
op1bsdtest# tcpdump -w /tmp/tcpdump host op1bsdtest &
[1] 52565
op1bsdtest# tcpdump: listening on dwxe0, link-type EN10MB
op1bsdtest# ftp -d -o /dev/null https://pypi.io/
host pypi.io, port https, path , save as /dev/null, auth none.
Trying 151.101.64.223...
Requesting https://pypi.io/
^C
op1bsdtest# kill 52565

op1bsdtest# 257 packets received by filter
0 packets dropped by kernel

[1] + Done                 tcpdump -w /tmp/tcpdump host op1bsdtest
op1bsdtest# tcpdump -r /tmp/tcpdump
21:49:47.195546 op1bsdtest.graf.lan.34816 > one.one.one.one.domain: 34715+ A? 
pypi.io.(25)
21:49:47.206382 arp who-has op1bsdtest.graf.lan tell 192.168.1.253
21:49:47.206439 arp reply op1bsdtest.graf.lan is-at 02:81:b1:07:76:5e
21:49:47.206688 one.one.one.one.domain > op1bsdtest.graf.lan.34816: 34715 4/0/0 
A 151.101.64.223, A 151.101.128.223, A 151.101.192.223,(89) (DF)
21:49:47.207035 op1bsdtest.graf.lan.19454 > one.one.one.one.domain: 25855+ 
AAAA? pypi.io.(25)
21:49:47.216477 one.one.one.one.domain > op1bsdtest.graf.lan.19454: 25855 4/0/0 
AAAA 2a04:4e42::223, AAAA[|domain] (DF)
21:49:47.217013 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: S 
891608003:891608003(0) win 16384 <mss 1460,nop,nop,sackOK,nop,wscale 
6,nop,nop,timestamp 3208818117 0> (DF)
21:49:47.226246 151.101.64.223.https > op1bsdtest.graf.lan.39119: S 
3712909619:3712909619(0) ack 891608004 win 28960 <mss 1460,sackOK,timestamp 
447678784 3208818117,nop,wscale 9> (DF)
21:49:47.226339 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: . ack 1 win 
256 <nop,nop,timestamp 3208818117 447678784> (DF)
21:49:47.312947 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818117 447678784> (DF)
21:49:48.254031 151.101.64.223.https > op1bsdtest.graf.lan.39119: S 
3712909619:3712909619(0) ack 891608004 win 28960 <mss 1460,sackOK,timestamp 
447679041 3208818117,nop,wscale 9> (DF)
21:49:48.254167 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: . ack 1 win 
256 <nop,nop,timestamp 3208818119 447679041> (DF)
21:49:48.808299 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818120 447679041> (DF)
21:49:51.808301 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818126 447679041> (DF)
21:49:57.808390 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818138 447679041>
21:50:09.808355 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818162 447679041> (DF)
21:50:33.808376 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818210 447679041>
21:51:21.808360 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: P 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818306 447679041> (DF)
21:52:25.299393 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: F 210:210(0) 
ack 1 win 256 <nop,nop,timestamp 3208818433 447679041> (DF)
21:52:25.308549 151.101.64.223.https > op1bsdtest.graf.lan.39119: . ack 1 win 
57 <nop,nop,timestamp 447718303 3208818117,nop,nop,sack 1 {210:211} > (DF)
21:52:25.808437 op1bsdtest.graf.lan.39119 > 151.101.64.223.https: FP 1:210(209) 
ack 1 win 256 <nop,nop,timestamp 3208818434 447718303>
21:52:30.307847 arp who-has op1bsdtest.graf.lan tell 192.168.1.253
21:52:30.307874 arp reply op1bsdtest.graf.lan is-at 02:81:b1:07:76:5e
op1bsdtest#
obsdamdsnap# tcpdump -r /tmp/tcpdump
20:48:27.935710 obsdamdsnap.graf.lan.28816 > one.one.one.one.domain: 37118+ A? 
pypi.io.(25)
20:48:27.952281 one.one.one.one.domain > obsdamdsnap.graf.lan.28816: 37118 
4/0/0 A 151.101.192.223, A 151.101.0.223, A 151.101.64.223,(89) (DF)
20:48:27.952447 obsdamdsnap.graf.lan.37866 > one.one.one.one.domain: 4562+ 
AAAA? pypi.io.(25)
20:48:27.963843 one.one.one.one.domain > obsdamdsnap.graf.lan.37866: 4562 4/0/0 
AAAA 2a04:4e42:400::223, AAAA[|domain] (DF)
20:48:27.964418 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: S 
543517486:543517486(0) win 16384 <mss 1460,nop,nop,sackOK,nop,wscale 
6,nop,nop,timestamp 394003145 0> (DF)
20:48:27.973792 151.101.192.223.https > obsdamdsnap.graf.lan.36417: S 
1011254541:1011254541(0) ack 543517487 win 28960 <mss 1460,sackOK,timestamp 
2239920524 394003145,nop,wscale 9> (DF)
20:48:27.973892 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: . ack 1 win 
256 <nop,nop,timestamp 394003145 2239920524> (DF)
20:48:27.990635 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: P 
1:210(209) ack 1 win 256 <nop,nop,timestamp 394003145 2239920524> (DF)
20:48:28.000235 151.101.192.223.https > obsdamdsnap.graf.lan.36417: . ack 210 
win 59 <nop,nop,timestamp 2239920531 394003145> (DF)
20:48:28.004103 151.101.192.223.https > obsdamdsnap.graf.lan.36417: . 
1:1449(1448) ack 210 win 59 <nop,nop,timestamp 2239920532 394003145> (DF)
20:48:28.004289 151.101.192.223.https > obsdamdsnap.graf.lan.36417: . 
1449:2897(1448) ack 210 win 59 <nop,nop,timestamp 2239920532 394003145> (DF)
20:48:28.004339 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: . ack 2897 
win 212 <nop,nop,timestamp 394003145 2239920532> (DF)
20:48:28.004652 151.101.192.223.https > obsdamdsnap.graf.lan.36417: P 
2897:4296(1399) ack 210 win 59 <nop,nop,timestamp 2239920532 394003145> (DF)
20:48:28.004712 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: . ack 4296 
win 243 <nop,nop,timestamp 394003145 2239920532> (DF)
20:48:28.008246 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: P 
210:303(93) ack 4296 win 256 <nop,nop,timestamp 394003145 2239920532> (DF)
20:48:28.017904 151.101.192.223.https > obsdamdsnap.graf.lan.36417: P 
4296:4347(51) ack 303 win 59 <nop,nop,timestamp 2239920535 394003145> (DF)
20:48:28.018429 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: P 
303:354(51) ack 4347 win 256 <nop,nop,timestamp 394003145 2239920535> (DF)
20:48:28.074842 151.101.192.223.https > obsdamdsnap.graf.lan.36417: . ack 354 
win 59 <nop,nop,timestamp 2239920550 394003145> (DF)
20:48:28.075076 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: P 
354:448(94) ack 4347 win 256 <nop,nop,timestamp 394003145 2239920550> (DF)
20:48:28.084518 151.101.192.223.https > obsdamdsnap.graf.lan.36417: . ack 448 
win 59 <nop,nop,timestamp 2239920552 394003145> (DF)
20:48:28.084540 151.101.192.223.https > obsdamdsnap.graf.lan.36417: P 
4347:5045(698) ack 448 win 59 <nop,nop,timestamp 2239920552 394003145> (DF)
20:48:28.084559 151.101.192.223.https > obsdamdsnap.graf.lan.36417: P 
5045:5076(31) ack 448 win 59 <nop,nop,timestamp 2239920552 394003145> (DF)
20:48:28.084975 151.101.192.223.https > obsdamdsnap.graf.lan.36417: F 
5076:5076(0) ack 448 win 59 <nop,nop,timestamp 2239920552 394003145> (DF)
20:48:28.085204 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: . ack 5076 
win 244 <nop,nop,timestamp 394003145 2239920552> (DF)
20:48:28.085567 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: . ack 5077 
win 244 <nop,nop,timestamp 394003145 2239920552> (DF)
20:48:28.092827 obsdamdsnap.graf.lan.36417 > 151.101.192.223.https: F 
448:448(0) ack 5077 win 256 <nop,nop,timestamp 394003145 2239920552> (DF)
20:48:28.096459 obsdamdsnap.graf.lan.42026 > one.one.one.one.domain: 61097+ A? 
pypi.org.(26)
20:48:28.103523 151.101.192.223.https > obsdamdsnap.graf.lan.36417: . ack 449 
win 59 <nop,nop,timestamp 2239920557 394003145> (DF)
20:48:28.107027 one.one.one.one.domain > obsdamdsnap.graf.lan.42026: 61097 
4/0/0 A 151.101.0.223, A 151.101.64.223, A 151.101.128.223[|domain] (DF)
20:48:28.107583 obsdamdsnap.graf.lan.36617 > one.one.one.one.domain: 43649+ 
AAAA? pypi.org.(26)
20:48:28.117303 one.one.one.one.domain > obsdamdsnap.graf.lan.36617: 43649 
4/0/0 AAAA 2a04:4e42:200::223, AAAA[|domain] (DF)
20:48:28.118141 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: S 
513664210:513664210(0) win 16384 <mss 1460,nop,nop,sackOK,nop,wscale 
6,nop,nop,timestamp 3538902694 0> (DF)
20:48:28.127286 151.101.0.223.https > obsdamdsnap.graf.lan.28876: S 
2000445322:2000445322(0) ack 513664211 win 28960 <mss 1460,sackOK,timestamp 
448916468 3538902694,nop,wscale 9> (DF)
20:48:28.127427 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 1 win 
256 <nop,nop,timestamp 3538902694 448916468> (DF)
20:48:28.159986 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: P 1:211(210) 
ack 1 win 256 <nop,nop,timestamp 3538902694 448916468> (DF)
20:48:28.169710 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . ack 211 win 
59 <nop,nop,timestamp 448916478 3538902694> (DF)
20:48:28.171061 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
1:1449(1448) ack 211 win 59 <nop,nop,timestamp 448916479 3538902694> (DF)
20:48:28.171458 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
1449:2897(1448) ack 211 win 59 <nop,nop,timestamp 448916479 3538902694> (DF)
20:48:28.171508 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 2897 
win 233 <nop,nop,timestamp 3538902694 448916479> (DF)
20:48:28.171590 151.101.0.223.https > obsdamdsnap.graf.lan.28876: P 
2897:4296(1399) ack 211 win 59 <nop,nop,timestamp 448916479 3538902694> (DF)
20:48:28.173384 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: P 211:304(93) 
ack 4296 win 256 <nop,nop,timestamp 3538902694 448916479> (DF)
20:48:28.183382 151.101.0.223.https > obsdamdsnap.graf.lan.28876: P 
4296:4347(51) ack 304 win 59 <nop,nop,timestamp 448916482 3538902694> (DF)
20:48:28.183686 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: P 304:355(51) 
ack 4347 win 256 <nop,nop,timestamp 3538902694 448916482> (DF)
20:48:28.237619 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . ack 355 win 
59 <nop,nop,timestamp 448916496 3538902694> (DF)
20:48:28.237854 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: P 355:450(95) 
ack 4347 win 256 <nop,nop,timestamp 3538902694 448916496> (DF)
20:48:28.247017 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . ack 450 win 
59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.247940 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
4347:5795(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.248399 151.101.0.223.https > obsdamdsnap.graf.lan.28876: P 
5795:7135(1340) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.248420 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
7135:8583(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.248948 151.101.0.223.https > obsdamdsnap.graf.lan.28876: P 
8583:9923(1340) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.248968 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
9923:11371(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.249513 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
11371:12819(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.250092 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
12819:14267(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.250112 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
14267:15715(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.250273 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 7135 
win 212 <nop,nop,timestamp 3538902694 448916498> (DF)
20:48:28.250626 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 9923 
win 168 <nop,nop,timestamp 3538902694 448916498> (DF)
20:48:28.250905 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 12819 
win 123 <nop,nop,timestamp 3538902694 448916498> (DF)
20:48:28.250905 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
15715:17163(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.250905 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
17163:18611(1448) ack 450 win 59 <nop,nop,timestamp 448916498 3538902694> (DF)
20:48:28.251798 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 15715 
win 78 <nop,nop,timestamp 3538902694 448916498> (DF)
20:48:28.252184 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 18611 
win 33 <nop,nop,timestamp 3538902694 448916498> (DF)
20:48:28.260611 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
18611:20059(1448) ack 450 win 59 <nop,nop,timestamp 448916501 3538902694> (DF)
20:48:28.260690 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
20059:20703(644) ack 450 win 59 <nop,nop,timestamp 448916501 3538902694> (DF)
20:48:28.270915 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 20703 
win 44 <nop,nop,timestamp 3538902694 448916501> (DF)
20:48:28.280281 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
20703:22151(1448) ack 450 win 59 <nop,nop,timestamp 448916506 3538902694> (DF)
20:48:28.280962 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . 
22151:23519(1368) ack 450 win 59 <nop,nop,timestamp 448916506 3538902694> (DF)
20:48:28.282547 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 23519 
win 0 <nop,nop,timestamp 3538902694 448916506> (DF)
20:48:28.296104 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 23519 
win 87 <nop,nop,timestamp 3538902695 448916506> (DF)
20:48:28.296613 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 23519 
win 174 <nop,nop,timestamp 3538902695 448916506> (DF)
20:48:28.297017 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 23519 
win 256 <nop,nop,timestamp 3538902695 448916506> (DF)
20:48:28.305602 151.101.0.223.https > obsdamdsnap.graf.lan.28876: FP 
23519:23625(106) ack 450 win 59 <nop,nop,timestamp 448916512 3538902695> (DF)
20:48:28.305738 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: . ack 23626 
win 254 <nop,nop,timestamp 3538902695 448916512> (DF)
20:48:28.307994 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: P 450:481(31) 
ack 23626 win 256 <nop,nop,timestamp 3538902695 448916512> (DF)
20:48:28.314877 obsdamdsnap.graf.lan.28876 > 151.101.0.223.https: F 481:481(0) 
ack 23626 win 256 <nop,nop,timestamp 3538902695 448916512> (DF)
20:48:28.325236 151.101.0.223.https > obsdamdsnap.graf.lan.28876: . ack 482 win 
58 <nop,nop,timestamp 448916517 3538902695> (DF)
20:48:32.952147 arp who-has obsdamdsnap.graf.lan tell 192.168.1.253
20:48:32.952339 arp reply obsdamdsnap.graf.lan is-at 08:00:27:10:97:34

Reply via email to