diff options
author | Keith Winstein <keithw@mit.edu> | 2012-08-13 14:26:53 +0300 |
---|---|---|
committer | Keith Winstein <keithw@mit.edu> | 2012-08-13 14:26:53 +0300 |
commit | 82830344ca4f45a28ed358fa34272ca00f809ca8 (patch) | |
tree | 8b8e310a9b4512f855df19fa3830279a62c65988 | |
parent | 89da6105aa4c94e563661a0c684d457c5427c54e (diff) |
Hop ports when missing E2E2E connectivity, even if downlink working.
-rw-r--r-- | src/network/network.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/network/network.cc b/src/network/network.cc index a5cc510..dbfd585 100644 --- a/src/network/network.cc +++ b/src/network/network.cc @@ -360,6 +360,8 @@ string Connection::recv( void ) uint16_t now = timestamp16(); double R = timestamp_diff( now, p.timestamp_reply ); + last_heard = timestamp(); /* trigger on end-to-end-to-end connectivity */ + if ( R < 5000 ) { /* ignore large values, e.g. server was Ctrl-Zed */ if ( !RTT_hit ) { /* first measurement */ SRTT = R; @@ -377,7 +379,7 @@ string Connection::recv( void ) /* auto-adjust to remote host */ has_remote_addr = true; - last_heard = last_association = timestamp(); + last_association = timestamp(); if ( server ) { /* only client can roam */ if ( (remote_addr.sin_addr.s_addr != packet_remote_addr.sin_addr.s_addr) |