TCP traffic between OpenHab2 and Philips Hue Bridge: DUP, Suprious Retrans, Out-of-order,

I have connected a Philips Hue (V2, the rectangular) bridge with OpenHAB2 running on a Raspberry Pi 3b+. The Hue is connected over fixed ethernet cable to my (Advanced Tomato) Router. The Raspberry Pi is connected over WiFi. Both share the same IP subnet 192.168.1.x with a dedicated “IOT” VLAN to keep the IOT traffic clearly separated from the rest of my network and to protect against intruders over IoT devices.

Now I am running tshark on the wifi interface on the Raspberry, and I observe LOTS of exchanges that show TCP retransmissions, TCP DUP, TCP Port numbers reused, TCP Dup Ack. Also I am a bit suprised about the amount of traffic flowing between the Hue Bridge and the RPi.

Any hints on where the TCP problems might be coming from?

Is there a way to reduce the frequency of exchanges between the Bridge and OpenHAB?

Below is an example trace … 192.168.1.142 is the hue bridge, 192.168.1.111 is the Raspberry with OpenHAB.

325342 10442.589073429 192.168.1.142 → 192.168.1.111 TCP 66 80 → 59468 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0 MSS=1460 SACK_PERM=1 WS=8

325343 10442.589213012 192.168.1.111 → 192.168.1.142 TCP 54 59468 → 80 [ACK] Seq=1 Ack=1 Win=29312 Len=0

325344 10442.590099261 192.168.1.111 → 192.168.1.142 HTTP 291 GET /api/10flPZSgRd3zKgrr6OtP5A1xwo1ixg7chbl2xLME/sensors HTTP/1.1 

325345 10442.599141124 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59468 [ACK] Seq=1 Ack=238 Win=30272 Len=0

325346 10442.619198128 192.168.1.142 → 192.168.1.111 TCP 1514 HTTP/1.1 200 OK [TCP segment of a reassembled PDU]

325347 10442.619255107 192.168.1.111 → 192.168.1.142 TCP 54 59468 → 80 [ACK] Seq=238 Ack=1461 Win=32128 Len=0

325348 10442.626689263 192.168.1.142 → 192.168.1.111 TCP 1514 80 → 59468 [ACK] Seq=1461 Ack=238 Win=30272 Len=1460 [TCP segment of a reassembled PDU]

325349 10442.626752701 192.168.1.111 → 192.168.1.142 TCP 54 59468 → 80 [ACK] Seq=238 Ack=2921 Win=35072 Len=0

325350 10442.628441813 192.168.1.142 → 192.168.1.111 TCP 1282 80 → 59468 [PSH, ACK] Seq=2921 Ack=238 Win=30272 Len=1228 [TCP segment of a reassembled PDU]

325351 10442.628484521 192.168.1.111 → 192.168.1.142 TCP 54 59468 → 80 [ACK] Seq=238 Ack=4149 Win=38016 Len=0

325352 10442.639998256 192.168.1.142 → 192.168.1.111 TCP 942 80 → 59468 [PSH, ACK] Seq=4149 Ack=238 Win=30272 Len=888 [TCP segment of a reassembled PDU]

325353 10442.640042683 192.168.1.111 → 192.168.1.142 TCP 54 59468 → 80 [ACK] Seq=238 Ack=5037 Win=40960 Len=0

325354 10442.640704661 192.168.1.142 → 192.168.1.111 HTTP 60 HTTP/1.1 200 OK (application/json)

325355 10442.641080963 192.168.1.111 → 192.168.1.142 TCP 54 59468 → 80 [FIN, ACK] Seq=238 Ack=5038 Win=40960 Len=0

325356 10442.647347829 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59468 [ACK] Seq=5038 Ack=239 Win=30272 Len=0

325357 10442.844547821 192.168.1.111 → 192.168.1.160 TCP 54 [TCP Retransmission] 1883 → 50117 [FIN, ACK] Seq=20 Ack=223 Win=29200 Len=0

325358 10442.884971203 192.168.1.160 → 192.168.1.111 TCP 54 50117 → 1883 [RST, ACK] Seq=223 Ack=21 Win=5840 Len=0

325359 10443.083402183 192.168.1.111 → 192.168.1.142 TCP 74 [TCP Port numbers reused] 59470 → 80 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1 TSval=1219923509 TSecr=0 WS=128

325360 10443.085680096 192.168.1.142 → 192.168.1.111 TCP 66 80 → 59470 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0 MSS=1460 SACK_PERM=1 WS=8

325361 10443.085850669 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=1 Ack=1 Win=29312 Len=0

325362 10443.086776084 192.168.1.111 → 192.168.1.142 HTTP 290 GET /api/10flPZSgRd3zKgrr6OtP5A1xwo1ixg7chbl2xLME/lights HTTP/1.1 

325363 10443.089154623 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59470 [ACK] Seq=1 Ack=237 Win=30272 Len=0

325364 10443.100385597 192.168.1.142 → 192.168.1.111 TCP 1514 HTTP/1.1 200 OK [TCP segment of a reassembled PDU]

325365 10443.100440284 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=237 Ack=1461 Win=32128 Len=0

325366 10443.102328928 192.168.1.142 → 192.168.1.111 TCP 1514 80 → 59470 [ACK] Seq=1461 Ack=237 Win=30272 Len=1460 [TCP segment of a reassembled PDU]

325367 10443.102383980 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=237 Ack=2921 Win=35072 Len=0

325368 10443.107582202 192.168.1.142 → 192.168.1.111 TCP 1282 80 → 59470 [PSH, ACK] Seq=2921 Ack=237 Win=30272 Len=1228 [TCP segment of a reassembled PDU]

325369 10443.107643504 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=237 Ack=4149 Win=38016 Len=0

325370 10443.110876208 192.168.1.142 → 192.168.1.111 TCP 1514 80 → 59470 [ACK] Seq=4149 Ack=237 Win=30272 Len=1460 [TCP segment of a reassembled PDU]

325371 10443.110921572 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=237 Ack=5609 Win=40960 Len=0

325372 10443.128449882 192.168.1.142 → 192.168.1.111 TCP 1514 80 → 59470 [ACK] Seq=5609 Ack=237 Win=30272 Len=1460 [TCP segment of a reassembled PDU]

325373 10443.128504204 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=237 Ack=7069 Win=43904 Len=0

325374 10443.137283151 192.168.1.142 → 192.168.1.111 TCP 705 80 → 59470 [PSH, ACK] Seq=7069 Ack=237 Win=30272 Len=651 [TCP segment of a reassembled PDU]

325375 10443.137327630 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [ACK] Seq=237 Ack=7720 Win=46720 Len=0

325376 10443.143078091 192.168.1.142 → 192.168.1.111 HTTP 60 HTTP/1.1 200 OK (application/json)

325377 10443.143475069 192.168.1.111 → 192.168.1.142 TCP 54 59470 → 80 [FIN, ACK] Seq=237 Ack=7721 Win=46720 Len=0

325378 10443.150060894 192.168.1.111 → 192.168.1.142 TCP 74 [TCP Port numbers reused] 59472 → 80 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1 TSval=1219923576 TSecr=0 WS=128

325379 10443.180438352 192.168.1.142 → 192.168.1.111 TCP 60 [TCP Retransmission] 80 → 59470 [FIN, ACK] Seq=7720 Ack=237 Win=30272 Len=0

325380 10443.180542415 192.168.1.111 → 192.168.1.142 TCP 66 [TCP Dup ACK 325377#1] 59470 → 80 [ACK] Seq=238 Ack=7721 Win=46720 Len=0 SLE=7720 SRE=7721

325381 10443.182751422 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59470 [ACK] Seq=7721 Ack=238 Win=30272 Len=0

325382 10443.183395484 192.168.1.142 → 192.168.1.111 TCP 66 80 → 59472 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0 MSS=1460 SACK_PERM=1 WS=8

325383 10443.183473504 192.168.1.111 → 192.168.1.142 TCP 54 59472 → 80 [ACK] Seq=1 Ack=1 Win=29312 Len=0

325384 10443.184444389 192.168.1.111 → 192.168.1.142 HTTP 291 GET /api/10flPZSgRd3zKgrr6OtP5A1xwo1ixg7chbl2xLME/sensors HTTP/1.1 

325385 10443.228619641 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59472 [ACK] Seq=1 Ack=238 Win=30272 Len=0

325386 10443.232228126 192.168.1.142 → 192.168.1.111 TCP 1514 HTTP/1.1 200 OK [TCP segment of a reassembled PDU]

325387 10443.232285990 192.168.1.111 → 192.168.1.142 TCP 54 59472 → 80 [ACK] Seq=238 Ack=1461 Win=32128 Len=0

325388 10443.234115727 192.168.1.142 → 192.168.1.111 TCP 1514 80 → 59472 [ACK] Seq=1461 Ack=238 Win=30272 Len=1460 [TCP segment of a reassembled PDU]

325389 10443.234182706 192.168.1.111 → 192.168.1.142 TCP 54 59472 → 80 [ACK] Seq=238 Ack=2921 Win=35072 Len=0

325390 10443.237523483 192.168.1.142 → 192.168.1.111 TCP 1282 80 → 59472 [PSH, ACK] Seq=2921 Ack=238 Win=30272 Len=1228 [TCP segment of a reassembled PDU]

325391 10443.237568483 192.168.1.111 → 192.168.1.142 TCP 54 59472 → 80 [ACK] Seq=238 Ack=4149 Win=38016 Len=0

325392 10443.239730094 192.168.1.142 → 192.168.1.111 TCP 942 80 → 59472 [PSH, ACK] Seq=4149 Ack=238 Win=30272 Len=888 [TCP segment of a reassembled PDU]

325393 10443.239771292 192.168.1.111 → 192.168.1.142 TCP 54 59472 → 80 [ACK] Seq=238 Ack=5037 Win=40960 Len=0

325394 10443.240521239 192.168.1.142 → 192.168.1.111 HTTP 60 HTTP/1.1 200 OK (application/json)

325395 10443.240904832 192.168.1.111 → 192.168.1.142 TCP 54 59472 → 80 [FIN, ACK] Seq=238 Ack=5038 Win=40960 Len=0

325396 10443.256219707 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59472 [ACK] Seq=5038 Ack=239 Win=30272 Len=0

325397 10443.746607369 192.168.1.111 → 192.168.1.142 TCP 74 59476 → 80 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1 TSval=1219924172 TSecr=0 WS=128

325398 10443.794713918 192.168.1.142 → 192.168.1.111 TCP 66 80 → 59476 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0 MSS=1460 SACK_PERM=1 WS=8

325399 10443.794895220 192.168.1.111 → 192.168.1.142 TCP 54 59476 → 80 [ACK] Seq=1 Ack=1 Win=29312 Len=0

325400 10443.795861417 192.168.1.111 → 192.168.1.142 HTTP 291 GET /api/10flPZSgRd3zKgrr6OtP5A1xwo1ixg7chbl2xLME/sensors HTTP/1.1 

325401 10443.923272752 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59476 [ACK] Seq=1 Ack=238 Win=30272 Len=0

325402 10444.026600215 192.168.1.142 → 192.168.1.111 TCP 1514 HTTP/1.1 200 OK [TCP segment of a reassembled PDU]

325403 10444.026680631 192.168.1.111 → 192.168.1.142 TCP 54 59476 → 80 [ACK] Seq=238 Ack=1461 Win=32128 Len=0

325404 10444.037003013 192.168.1.142 → 192.168.1.111 TCP 1514 80 → 59476 [ACK] Seq=1461 Ack=238 Win=30272 Len=1460 [TCP segment of a reassembled PDU]

325405 10444.037079211 192.168.1.111 → 192.168.1.142 TCP 54 59476 → 80 [ACK] Seq=238 Ack=2921 Win=35072 Len=0

325406 10444.064819485 192.168.1.142 → 192.168.1.111 TCP 1282 80 → 59476 [PSH, ACK] Seq=2921 Ack=238 Win=30272 Len=1228 [TCP segment of a reassembled PDU]

325407 10444.064901048 192.168.1.111 → 192.168.1.142 TCP 54 59476 → 80 [ACK] Seq=238 Ack=4149 Win=38016 Len=0

325408 10444.067136618 192.168.1.142 → 192.168.1.111 TCP 942 80 → 59476 [PSH, ACK] Seq=4149 Ack=238 Win=30272 Len=888 [TCP segment of a reassembled PDU]

325409 10444.067179430 192.168.1.111 → 192.168.1.142 TCP 54 59476 → 80 [ACK] Seq=238 Ack=5037 Win=40960 Len=0

325410 10444.067356461 192.168.1.142 → 192.168.1.111 HTTP 60 HTTP/1.1 200 OK (application/json)

325411 10444.067399430 192.168.1.142 → 192.168.1.111 TCP 60 [TCP Out-Of-Order] 80 → 59476 [FIN, ACK] Seq=5037 Ack=238 Win=30272 Len=0

325412 10444.067441617 192.168.1.111 → 192.168.1.142 TCP 66 59476 → 80 [ACK] Seq=238 Ack=5038 Win=40960 Len=0 SLE=5037 SRE=5038

325413 10444.067748388 192.168.1.111 → 192.168.1.142 TCP 54 59476 → 80 [FIN, ACK] Seq=238 Ack=5038 Win=40960 Len=0

325414 10444.102334538 192.168.1.142 → 192.168.1.111 TCP 60 80 → 59476 [ACK] Seq=5038 Ack=239 Win=30272 Len=0

^C325415 10444.571807904 192.168.1.111 → 192.168.1.142 TCP 74 [TCP Port numbers reused] 59478 → 80 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1 TSval=1219924998 TSecr=0 WS=128

325416 10444.575676805 192.168.1.142 → 192.168.1.111 TCP 66 80 → 59478 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0 MSS=1460 SACK_PERM=1 WS=8

I know this is an old thread but have you ever had a solution for this?
I have a setup with two houses where one is in Italy in a remote location with no cabled internet and the second one in the Netherlands. I’am using a mobile router in IT. System is setup with VPN server and two clients, one per house, running OH.
For persistence purposes I wanted Italian hue communicating directly with the OH system in NL this bumped my mobile internet trafic with 2Gig per day where I was hoping to reduce it!
Kind regards,
Will