picoquic supports 3 test cases of connection migration.

```
  -f migration_mode     Force client to migrate to start migration:
                        -f 1  test NAT rebinding,
                        -f 2  test CNXID renewal,
                        -f 3  test migration to new address.
```

ATS passed `-f 2` and `-f 3`, but failed on `-f 1`.

Debug logs of ATS is below
```
[Sep 27 14:39:24.754] {0x70000b309000} DEBUG: <QUICPacketHandler.cc:242 
(_recv_packet)>  (quic_sec)                       [8a898384-d3ee8c82] recv LH 
packet from 127.0.0.1:63750 size=1252
[Sep 27 14:39:24.754] {0x70000b309000} DEBUG: <QUICPacketHandler.cc:305 
(_recv_packet)>  (quic_sec)                       [8a898384-d3ee8c82] client 
initial dcid=d3ee8c8259882d11
[Sep 27 14:39:24.754] {0x70000b309000} DEBUG: <QUICNetVConnection.cc:105 
(init)>         (quic_net)                       [8a898384-08bfc615] 
dcid=8a8983845d8732f2 scid=08bfc615e0f069433e2fe8d603afaf0c3a98
...
[Sep 27 14:39:24.879] {0x70000b2f7000} DEBUG: <HQSessionAccept.cc:56 (accept)>  
         (hq)                             [8a898384-08bfc615] accepted 
connection from 127.0.0.1:63750 transport type = 6
[Sep 27 14:39:24.879] {0x70000b2f7000} DEBUG: <QUICNetVConnection.cc:1738 
(_switch_to_e> (quic_net)                       [8a898384-08bfc615] Enter 
state_connection_established
[Sep 27 14:39:24.879] {0x70000b2f7000} DEBUG: <QUICNetVConnection.cc:1739 
(_switch_to_e> (quic_net)                       [8a898384-08bfc615] Negotiated 
cipher suite: TLS_AES_256_GCM_SHA384
...
[Sep 27 14:39:24.888] {0x70000b2f7000} DEBUG: <QUICPacketHandler.cc:129 
(_send_packet)>  (quic_sec)                       [8a898384-08bfc615] send LH 
packet to 127.0.0.1:63750 size=949
[Sep 27 14:39:24.955] {0x70000b309000} DEBUG: <QUICPacketHandler.cc:270 
(_recv_packet)>  (quic_sec)                       [00000000-08bfc615] recv SH 
packet from 127.0.0.1:49808 size=146
[Sep 27 14:39:24.955] {0x70000b309000} DEBUG: <QUICPacketHandler.cc:270 
(_recv_packet)>  (quic_sec)                       [00000000-08bfc615] recv SH 
packet from 127.0.0.1:49808 size=1440
...
[Sep 27 14:39:25.211] {0x70000b2f7000} DEBUG: <QUICPacketHandler.cc:129 
(_send_packet)>  (quic_sec)                       [8a898384-00000000] send SH 
packet to 127.0.0.1:63750 size=891
[Sep 27 14:39:25.470] {0x70000b309000} DEBUG: <QUICPacketHandler.cc:270 
(_recv_packet)>  (quic_sec)                       [00000000-08bfc615] recv SH 
packet from 127.0.0.1:49808 size=148
...
```

It looks like the client changed port from `63750` to `49808` (NAT rebinding 
simulation), but ATS keep sending packets to old port.


[ Full content available at: 
https://github.com/apache/trafficserver/issues/4326 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to