summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author David Su <dysu@google.com> 2020-01-27 19:03:52 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2020-01-27 19:03:52 +0000
commitbe1fbb4eda3e175a693ef7dbb16e570e4e27d323 (patch)
treecba7a63e53b6c5ffb585f142d8ab1864d6c63810
parent752ef13ad3f9275dabfe99657ee0d2b9b7587001 (diff)
parent5ac3241775b538ebbb9d171f699952568843d154 (diff)
Merge "WifiInfo: Rename getters"
-rw-r--r--service/java/com/android/server/wifi/ClientModeImpl.java18
-rw-r--r--service/java/com/android/server/wifi/ExtendedWifiInfo.java16
-rw-r--r--service/java/com/android/server/wifi/VelocityBasedConnectedScore.java8
-rw-r--r--service/java/com/android/server/wifi/WifiNetworkSelector.java6
-rw-r--r--service/java/com/android/server/wifi/WifiScoreCard.java5
-rw-r--r--service/java/com/android/server/wifi/WifiScoreReport.java14
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java4
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/VelocityBasedConnectedScoreTest.java12
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java16
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiLinkLayerStatsTest.java32
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiNetworkSelectorTest.java26
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiScoreCardTest.java4
-rw-r--r--service/tests/wifitests/src/com/android/server/wifi/WifiScoreReportTest.java42
13 files changed, 109 insertions, 94 deletions
diff --git a/service/java/com/android/server/wifi/ClientModeImpl.java b/service/java/com/android/server/wifi/ClientModeImpl.java
index 147eaf0f91..09cc464934 100644
--- a/service/java/com/android/server/wifi/ClientModeImpl.java
+++ b/service/java/com/android/server/wifi/ClientModeImpl.java
@@ -1961,10 +1961,10 @@ public class ClientModeImpl extends StateMachine {
sb.append(" f=").append(mWifiInfo.getFrequency());
sb.append(" sc=").append(mWifiInfo.getScore());
sb.append(" link=").append(mWifiInfo.getLinkSpeed());
- sb.append(String.format(" tx=%.1f,", mWifiInfo.getTxSuccessRate()));
- sb.append(String.format(" %.1f,", mWifiInfo.getTxRetriesRate()));
- sb.append(String.format(" %.1f ", mWifiInfo.getTxBadRate()));
- sb.append(String.format(" rx=%.1f", mWifiInfo.getRxSuccessRate()));
+ sb.append(String.format(" tx=%.1f,", mWifiInfo.getSuccessfulTxPacketsPerSecond()));
+ sb.append(String.format(" %.1f,", mWifiInfo.getRetriedTxPacketsPerSecond()));
+ sb.append(String.format(" %.1f ", mWifiInfo.getLostTxPacketsPerSecond()));
+ sb.append(String.format(" rx=%.1f", mWifiInfo.getSuccessfulRxPacketsPerSecond()));
sb.append(String.format(" bcn=%d", mRunningBeaconCount));
report = reportOnTime();
if (report != null) {
@@ -2393,10 +2393,10 @@ public class ClientModeImpl extends StateMachine {
// Polling has completed, hence we won't have a score anymore
private void cleanWifiScore() {
- mWifiInfo.setTxBadRate(0);
- mWifiInfo.setTxSuccessRate(0);
- mWifiInfo.setTxRetriesRate(0);
- mWifiInfo.setRxSuccessRate(0);
+ mWifiInfo.setLostTxPacketsPerSecond(0);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0);
+ mWifiInfo.setRetriedTxPacketsRate(0);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(0);
mWifiScoreReport.reset();
mLastLinkLayerStats = null;
}
@@ -2557,7 +2557,7 @@ public class ClientModeImpl extends StateMachine {
mWifiInfo.setTrusted(config.trusted);
mWifiInfo.setOsuAp(config.osu);
if (config.fromWifiNetworkSpecifier || config.fromWifiNetworkSuggestion) {
- mWifiInfo.setAppPackageName(config.creatorName);
+ mWifiInfo.setRequestingPackageName(config.creatorName);
}
// Set meteredHint if scan result says network is expensive
diff --git a/service/java/com/android/server/wifi/ExtendedWifiInfo.java b/service/java/com/android/server/wifi/ExtendedWifiInfo.java
index 2ec3de6cbf..ef0ef0f74e 100644
--- a/service/java/com/android/server/wifi/ExtendedWifiInfo.java
+++ b/service/java/com/android/server/wifi/ExtendedWifiInfo.java
@@ -88,23 +88,23 @@ public class ExtendedWifiInfo extends WifiInfo {
double lastSampleWeight = Math.exp(-1.0 * timeDelta / FILTER_TIME_CONSTANT);
double currentSampleWeight = 1.0 - lastSampleWeight;
- setTxBadRate(getTxBadRate() * lastSampleWeight
+ setLostTxPacketsPerSecond(getLostTxPacketsPerSecond() * lastSampleWeight
+ (txbad - txBad) * 1000.0 / timeDelta
* currentSampleWeight);
- setTxSuccessRate(getTxSuccessRate() * lastSampleWeight
+ setSuccessfulTxPacketsPerSecond(getSuccessfulTxPacketsPerSecond() * lastSampleWeight
+ (txgood - txSuccess) * 1000.0 / timeDelta
* currentSampleWeight);
- setRxSuccessRate(getRxSuccessRate() * lastSampleWeight
+ setSuccessfulRxPacketsPerSecond(getSuccessfulRxPacketsPerSecond() * lastSampleWeight
+ (rxgood - rxSuccess) * 1000.0 / timeDelta
* currentSampleWeight);
- setTxRetriesRate(getTxRetriesRate() * lastSampleWeight
+ setRetriedTxPacketsRate(getRetriedTxPacketsPerSecond() * lastSampleWeight
+ (txretries - txRetries) * 1000.0 / timeDelta
* currentSampleWeight);
} else {
- setTxBadRate(0);
- setTxSuccessRate(0);
- setRxSuccessRate(0);
- setTxRetriesRate(0);
+ setLostTxPacketsPerSecond(0);
+ setSuccessfulTxPacketsPerSecond(0);
+ setSuccessfulRxPacketsPerSecond(0);
+ setRetriedTxPacketsRate(0);
mLastSource = source;
}
txBad = txbad;
diff --git a/service/java/com/android/server/wifi/VelocityBasedConnectedScore.java b/service/java/com/android/server/wifi/VelocityBasedConnectedScore.java
index 34201cd3ab..b7f45dbec1 100644
--- a/service/java/com/android/server/wifi/VelocityBasedConnectedScore.java
+++ b/service/java/com/android/server/wifi/VelocityBasedConnectedScore.java
@@ -150,12 +150,12 @@ public class VelocityBasedConnectedScore extends ConnectedScore {
if (mThresholdAdjustment < -7) return;
if (mFilteredRssi >= getAdjustedRssiThreshold() + 2.0) return;
if (Math.abs(mEstimatedRateOfRssiChange) >= 0.2) return;
- double txSuccessPps = wifiInfo.getTxSuccessRate();
- double rxSuccessPps = wifiInfo.getRxSuccessRate();
+ double txSuccessPps = wifiInfo.getSuccessfulTxPacketsPerSecond();
+ double rxSuccessPps = wifiInfo.getSuccessfulRxPacketsPerSecond();
if (txSuccessPps < mMinimumPpsForMeasuringSuccess) return;
if (rxSuccessPps < mMinimumPpsForMeasuringSuccess) return;
- double txBadPps = wifiInfo.getTxBadRate();
- double txRetriesPps = wifiInfo.getTxRetriesRate();
+ double txBadPps = wifiInfo.getLostTxPacketsPerSecond();
+ double txRetriesPps = wifiInfo.getRetriedTxPacketsPerSecond();
double probabilityOfSuccessfulTx = txSuccessPps / (txSuccessPps + txBadPps + txRetriesPps);
if (probabilityOfSuccessfulTx > 0.2) {
// May want this amount to vary with how close to threshold we are
diff --git a/service/java/com/android/server/wifi/WifiNetworkSelector.java b/service/java/com/android/server/wifi/WifiNetworkSelector.java
index f8edff1e51..e6fec73beb 100644
--- a/service/java/com/android/server/wifi/WifiNetworkSelector.java
+++ b/service/java/com/android/server/wifi/WifiNetworkSelector.java
@@ -232,8 +232,10 @@ public class WifiNetworkSelector {
* @return true if it has active Tx or Rx traffic, false otherwise.
*/
public static boolean hasActiveStream(WifiInfo wifiInfo, ScoringParams scoringParams) {
- return (wifiInfo.getTxSuccessRate() > scoringParams.getActiveTrafficPacketsPerSecond())
- || (wifiInfo.getRxSuccessRate() > scoringParams.getActiveTrafficPacketsPerSecond());
+ return (wifiInfo.getSuccessfulTxPacketsPerSecond()
+ > scoringParams.getActiveTrafficPacketsPerSecond())
+ || (wifiInfo.getSuccessfulRxPacketsPerSecond()
+ > scoringParams.getActiveTrafficPacketsPerSecond());
}
/**
diff --git a/service/java/com/android/server/wifi/WifiScoreCard.java b/service/java/com/android/server/wifi/WifiScoreCard.java
index 6c85fda064..8553f00230 100644
--- a/service/java/com/android/server/wifi/WifiScoreCard.java
+++ b/service/java/com/android/server/wifi/WifiScoreCard.java
@@ -337,8 +337,9 @@ public class WifiScoreCard {
}
private int geTxLinkSpeedWithSufficientTxRate(@NonNull ExtendedWifiInfo wifiInfo) {
- double txRate = wifiInfo.getTxSuccessRate() + wifiInfo.getTxBadRate()
- + wifiInfo.getTxRetriesRate();
+ double txRate = wifiInfo.getSuccessfulTxPacketsPerSecond()
+ + wifiInfo.getLostTxPacketsPerSecond()
+ + wifiInfo.getRetriedTxPacketsPerSecond();
int txSpeed = wifiInfo.getTxLinkSpeedMbps();
logd("txRate: " + txRate + " txSpeed: " + txSpeed);
return (txRate >= HEALTH_MONITOR_COUNT_MIN_TX_RATE) ? txSpeed : LINK_SPEED_UNKNOWN;
diff --git a/service/java/com/android/server/wifi/WifiScoreReport.java b/service/java/com/android/server/wifi/WifiScoreReport.java
index 5833e4410e..975ca0ff98 100644
--- a/service/java/com/android/server/wifi/WifiScoreReport.java
+++ b/service/java/com/android/server/wifi/WifiScoreReport.java
@@ -168,8 +168,10 @@ public class WifiScoreReport {
if (wifiInfo.getScore() > ConnectedScore.WIFI_TRANSITION_SCORE
&& score <= ConnectedScore.WIFI_TRANSITION_SCORE
- && wifiInfo.getTxSuccessRate() >= mScoringParams.getYippeeSkippyPacketsPerSecond()
- && wifiInfo.getRxSuccessRate() >= mScoringParams.getYippeeSkippyPacketsPerSecond()
+ && wifiInfo.getSuccessfulTxPacketsPerSecond()
+ >= mScoringParams.getYippeeSkippyPacketsPerSecond()
+ && wifiInfo.getSuccessfulRxPacketsPerSecond()
+ >= mScoringParams.getYippeeSkippyPacketsPerSecond()
) {
score = ConnectedScore.WIFI_TRANSITION_SCORE + 1;
}
@@ -304,10 +306,10 @@ public class WifiScoreReport {
int freq = wifiInfo.getFrequency();
int txLinkSpeed = wifiInfo.getLinkSpeed();
int rxLinkSpeed = wifiInfo.getRxLinkSpeedMbps();
- double txSuccessRate = wifiInfo.getTxSuccessRate();
- double txRetriesRate = wifiInfo.getTxRetriesRate();
- double txBadRate = wifiInfo.getTxBadRate();
- double rxSuccessRate = wifiInfo.getRxSuccessRate();
+ double txSuccessRate = wifiInfo.getSuccessfulTxPacketsPerSecond();
+ double txRetriesRate = wifiInfo.getRetriedTxPacketsPerSecond();
+ double txBadRate = wifiInfo.getLostTxPacketsPerSecond();
+ double rxSuccessRate = wifiInfo.getSuccessfulRxPacketsPerSecond();
String s;
try {
String timestamp = new SimpleDateFormat("MM-dd HH:mm:ss.SSS").format(new Date(now));
diff --git a/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java b/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java
index d1f09082f1..8e326d3f2f 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/ClientModeImplTest.java
@@ -3875,7 +3875,7 @@ public class ClientModeImplTest extends WifiBaseTest {
assertTrue(mCmi.getWifiInfo().isEphemeral());
assertTrue(mCmi.getWifiInfo().isTrusted());
assertEquals(OP_PACKAGE_NAME,
- mCmi.getWifiInfo().getAppPackageName());
+ mCmi.getWifiInfo().getRequestingPackageName());
}
/**
@@ -3892,7 +3892,7 @@ public class ClientModeImplTest extends WifiBaseTest {
assertTrue(mCmi.getWifiInfo().isEphemeral());
assertTrue(mCmi.getWifiInfo().isTrusted());
assertEquals(OP_PACKAGE_NAME,
- mCmi.getWifiInfo().getAppPackageName());
+ mCmi.getWifiInfo().getRequestingPackageName());
}
/**
diff --git a/service/tests/wifitests/src/com/android/server/wifi/VelocityBasedConnectedScoreTest.java b/service/tests/wifitests/src/com/android/server/wifi/VelocityBasedConnectedScoreTest.java
index ad890ebb7d..2f6bae47e9 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/VelocityBasedConnectedScoreTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/VelocityBasedConnectedScoreTest.java
@@ -114,9 +114,9 @@ public class VelocityBasedConnectedScoreTest extends WifiBaseTest {
public void allowLowRssiIfErrorRateIsLowAndSomeDataIsMoving() throws Exception {
mWifiInfo.setRssi(mRssiExitThreshold2GHz - 2);
mWifiInfo.setLinkSpeed(6); // Mbps
- mWifiInfo.setTxSuccessRate(2.1); // proportional to pps
- mWifiInfo.setTxBadRate(.5);
- mWifiInfo.setRxSuccessRate(2.1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(2.1); // proportional to pps
+ mWifiInfo.setLostTxPacketsPerSecond(.5);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(2.1);
for (int i = 0; i < 10; i++) {
mVelocityBasedConnectedScore.updateUsingWifiInfo(mWifiInfo,
mClock.getWallClockMillis());
@@ -140,9 +140,9 @@ public class VelocityBasedConnectedScoreTest extends WifiBaseTest {
public void disallowLowRssiIfDataIsNotMoving() throws Exception {
mWifiInfo.setRssi(mRssiExitThreshold2GHz - 1);
mWifiInfo.setLinkSpeed(6); // Mbps
- mWifiInfo.setTxSuccessRate(.1); // proportional to pps
- mWifiInfo.setTxBadRate(0);
- mWifiInfo.setRxSuccessRate(.1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(.1); // proportional to pps
+ mWifiInfo.setLostTxPacketsPerSecond(0);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(.1);
for (int i = 0; i < 10; i++) {
mVelocityBasedConnectedScore.updateUsingWifiInfo(mWifiInfo,
mClock.getWallClockMillis());
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java
index b222de0e8f..3e72c14b25 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiConnectivityManagerTest.java
@@ -1264,8 +1264,8 @@ public class WifiConnectivityManagerTest extends WifiBaseTest {
*/
@Test
public void checkSingleScanSettingsWhenConnectedWithLowDataRate() {
- mWifiInfo.setTxSuccessRate(0);
- mWifiInfo.setRxSuccessRate(0);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(0);
mWifiInfo.setRssi(SUFFICIENT_RSSI_THRESHOLD - 1);
final HashSet<Integer> channelList = new HashSet<>();
@@ -1305,8 +1305,8 @@ public class WifiConnectivityManagerTest extends WifiBaseTest {
*/
@Test
public void checkPartialScanRequestedWithHighDataRateWithoutFwRoaming() {
- mWifiInfo.setTxSuccessRate(mMinPacketRateActiveTraffic + 1);
- mWifiInfo.setRxSuccessRate(mMinPacketRateActiveTraffic + 1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(mMinPacketRateActiveTraffic + 1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(mMinPacketRateActiveTraffic + 1);
mWifiInfo.setRssi(SUFFICIENT_RSSI_THRESHOLD - 1);
final HashSet<Integer> channelList = new HashSet<>();
@@ -1350,8 +1350,8 @@ public class WifiConnectivityManagerTest extends WifiBaseTest {
*/
@Test
public void checkPartialScanRequestedWithHighRssiTxSpeedWithoutFwRoaming() {
- mWifiInfo.setTxSuccessRate(0.0);
- mWifiInfo.setTxSuccessRate(0.0);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0.0);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0.0);
mWifiInfo.setRssi(SUFFICIENT_RSSI_THRESHOLD + 1);
final HashSet<Integer> channelList = new HashSet<>();
@@ -1396,8 +1396,8 @@ public class WifiConnectivityManagerTest extends WifiBaseTest {
*/
@Test
public void checkSingleScanSettingsWhenConnectedWithHighDataRateNotInCache() {
- mWifiInfo.setTxSuccessRate(mMinPacketRateActiveTraffic + 1);
- mWifiInfo.setRxSuccessRate(mMinPacketRateActiveTraffic + 1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(mMinPacketRateActiveTraffic + 1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(mMinPacketRateActiveTraffic + 1);
mWifiInfo.setRssi(SUFFICIENT_RSSI_THRESHOLD + 1);
final HashSet<Integer> channelList = new HashSet<>();
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiLinkLayerStatsTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiLinkLayerStatsTest.java
index 608c76e132..b18d80b390 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiLinkLayerStatsTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiLinkLayerStatsTest.java
@@ -103,10 +103,10 @@ public class WifiLinkLayerStatsTest extends WifiBaseTest {
mWifiInfo.updatePacketRates(mWifiLinkLayerStats, mWifiLinkLayerStats.timeStampInMs);
}
// assertEquals(double, double, double) takes a tolerance as the third argument
- assertEquals((double) txg, mWifiInfo.getTxSuccessRate(), txg * 0.02);
- assertEquals((double) txr, mWifiInfo.getTxRetriesRate(), txr * 0.02);
- assertEquals((double) txb, mWifiInfo.getTxBadRate(), txb * 0.02);
- assertEquals((double) rxg, mWifiInfo.getRxSuccessRate(), rxg * 0.02);
+ assertEquals((double) txg, mWifiInfo.getSuccessfulTxPacketsPerSecond(), txg * 0.02);
+ assertEquals((double) txr, mWifiInfo.getRetriedTxPacketsPerSecond(), txr * 0.02);
+ assertEquals((double) txb, mWifiInfo.getLostTxPacketsPerSecond(), txb * 0.02);
+ assertEquals((double) rxg, mWifiInfo.getSuccessfulRxPacketsPerSecond(), rxg * 0.02);
assertEquals(mWifiInfo.txSuccess, n * txg);
assertEquals(mWifiInfo.txRetries, n * txr);
@@ -122,11 +122,11 @@ public class WifiLinkLayerStatsTest extends WifiBaseTest {
bumpCounters(mWifiLinkLayerStats, 999999999, 999999999, 999999999, 99999999);
mWifiLinkLayerStats.timeStampInMs = 999999999;
mWifiInfo.updatePacketRates(mWifiLinkLayerStats, mWifiLinkLayerStats.timeStampInMs);
- assertEquals(0.0, mWifiInfo.getTxSuccessRate(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulTxPacketsPerSecond(), 0.0001);
bumpCounters(mWifiLinkLayerStats, 1, 1, 1, 1);
mWifiLinkLayerStats.timeStampInMs += 1;
mWifiInfo.updatePacketRates(mWifiLinkLayerStats, mWifiLinkLayerStats.timeStampInMs);
- assertEquals(0.33, mWifiInfo.getTxSuccessRate(), 0.01);
+ assertEquals(0.33, mWifiInfo.getSuccessfulTxPacketsPerSecond(), 0.01);
}
/**
@@ -138,35 +138,35 @@ public class WifiLinkLayerStatsTest extends WifiBaseTest {
bumpCounters(mWifiLinkLayerStats, 999, 999, 999, 999);
mWifiLinkLayerStats.timeStampInMs = 999999999;
mWifiInfo.updatePacketRates(mWifiLinkLayerStats, mWifiLinkLayerStats.timeStampInMs);
- assertEquals(0.0, mWifiInfo.getTxSuccessRate(), 0.0001);
- assertEquals(0.0, mWifiInfo.getRxSuccessRate(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulTxPacketsPerSecond(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulRxPacketsPerSecond(), 0.0001);
bumpCounters(mWifiLinkLayerStats, 1_000_000_000, 777000, 66600, 1_000_100_000);
mWifiLinkLayerStats.timeStampInMs += 10_000;
mWifiInfo.updatePacketRates(mWifiLinkLayerStats, mWifiLinkLayerStats.timeStampInMs);
assertTrue("" + mWifiInfo + " " + mWifiLinkLayerStats,
- mWifiInfo.getTxSuccessRate() > 0.95e+8);
+ mWifiInfo.getSuccessfulTxPacketsPerSecond() > 0.95e+8);
assertTrue("" + mWifiInfo + " " + mWifiLinkLayerStats,
- mWifiInfo.getRxSuccessRate() > 0.95e+8);
+ mWifiInfo.getSuccessfulRxPacketsPerSecond() > 0.95e+8);
// Now update with traffic counters
mWifiLinkLayerStats.timeStampInMs += 10_000;
mWifiInfo.updatePacketRates(2_000_000_000L, 2_000_000_000L,
mWifiLinkLayerStats.timeStampInMs);
// Despite the increase, the rates should be zero after the change in source
- assertEquals(0.0, mWifiInfo.getTxSuccessRate(), 0.0001);
- assertEquals(0.0, mWifiInfo.getRxSuccessRate(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulTxPacketsPerSecond(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulRxPacketsPerSecond(), 0.0001);
assertEquals(0, mWifiInfo.txBad);
assertEquals(0, mWifiInfo.txRetries);
// Make sure that updates from this source work, too
mWifiLinkLayerStats.timeStampInMs += 10_000;
mWifiInfo.updatePacketRates(3_000_000_000L, 3_000_000_000L,
mWifiLinkLayerStats.timeStampInMs);
- assertTrue(mWifiInfo.getTxSuccessRate() > 0.95e+8);
- assertTrue(mWifiInfo.getRxSuccessRate() > 0.95e+8);
+ assertTrue(mWifiInfo.getSuccessfulTxPacketsPerSecond() > 0.95e+8);
+ assertTrue(mWifiInfo.getSuccessfulRxPacketsPerSecond() > 0.95e+8);
// Switch back to using link layer stats
mWifiLinkLayerStats.timeStampInMs += 10_000;
bumpCounters(mWifiLinkLayerStats, 1_000_000_000, 777000, 66600, 1_000_100_000);
mWifiInfo.updatePacketRates(mWifiLinkLayerStats, mWifiLinkLayerStats.timeStampInMs);
- assertEquals(0.0, mWifiInfo.getTxSuccessRate(), 0.0001);
- assertEquals(0.0, mWifiInfo.getRxSuccessRate(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulTxPacketsPerSecond(), 0.0001);
+ assertEquals(0.0, mWifiInfo.getSuccessfulRxPacketsPerSecond(), 0.0001);
}
}
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiNetworkSelectorTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiNetworkSelectorTest.java
index caa110f4d9..e6ad78a75d 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiNetworkSelectorTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiNetworkSelectorTest.java
@@ -496,8 +496,10 @@ public class WifiNetworkSelectorTest extends WifiBaseTest {
when(mWifiInfo.is5GHz()).thenReturn(true);
when(mWifiInfo.getFrequency()).thenReturn(5000);
when(mWifiInfo.getRssi()).thenReturn(levels[0]);
- when(mWifiInfo.getTxSuccessRate()).thenReturn(mMinPacketRateActiveTraffic - 1.0);
- when(mWifiInfo.getRxSuccessRate()).thenReturn(mMinPacketRateActiveTraffic + 1.0);
+ when(mWifiInfo.getSuccessfulTxPacketsPerSecond())
+ .thenReturn(mMinPacketRateActiveTraffic - 1.0);
+ when(mWifiInfo.getSuccessfulRxPacketsPerSecond())
+ .thenReturn(mMinPacketRateActiveTraffic + 1.0);
when(mClock.getElapsedSinceBootMillis()).thenReturn(SystemClock.elapsedRealtime()
+ WifiNetworkSelector.MINIMUM_NETWORK_SELECTION_INTERVAL_MS + 2000);
@@ -803,8 +805,8 @@ public class WifiNetworkSelectorTest extends WifiBaseTest {
public void testNoActiveStream() {
// Rssi after connected.
when(mWifiInfo.getRssi()).thenReturn(mThresholdQualifiedRssi2G + 1);
- when(mWifiInfo.getTxSuccessRate()).thenReturn(0.0);
- when(mWifiInfo.getRxSuccessRate()).thenReturn(0.0);
+ when(mWifiInfo.getSuccessfulTxPacketsPerSecond()).thenReturn(0.0);
+ when(mWifiInfo.getSuccessfulRxPacketsPerSecond()).thenReturn(0.0);
testStayOrTryToSwitch(
// Parameters for network1:
@@ -829,8 +831,8 @@ public class WifiNetworkSelectorTest extends WifiBaseTest {
public void testOsuIsSufficient() {
// Rssi after connected.
when(mWifiInfo.getRssi()).thenReturn(mThresholdQualifiedRssi5G - 1);
- when(mWifiInfo.getTxSuccessRate()).thenReturn(0.0);
- when(mWifiInfo.getRxSuccessRate()).thenReturn(0.0);
+ when(mWifiInfo.getSuccessfulTxPacketsPerSecond()).thenReturn(0.0);
+ when(mWifiInfo.getSuccessfulRxPacketsPerSecond()).thenReturn(0.0);
testStayOrTryToSwitch(
// Parameters for network1:
@@ -857,8 +859,10 @@ public class WifiNetworkSelectorTest extends WifiBaseTest {
public void testSufficientLinkQualityActiveStream() {
// Rssi after connected.
when(mWifiInfo.getRssi()).thenReturn(mThresholdQualifiedRssi5G + 1);
- when(mWifiInfo.getTxSuccessRate()).thenReturn(mMinPacketRateActiveTraffic - 1.0);
- when(mWifiInfo.getRxSuccessRate()).thenReturn(mMinPacketRateActiveTraffic * 2.0);
+ when(mWifiInfo.getSuccessfulTxPacketsPerSecond())
+ .thenReturn(mMinPacketRateActiveTraffic - 1.0);
+ when(mWifiInfo.getSuccessfulRxPacketsPerSecond())
+ .thenReturn(mMinPacketRateActiveTraffic * 2.0);
testStayOrTryToSwitch(
mThresholdQualifiedRssi5G + 1 /* rssi before connected */,
@@ -879,8 +883,10 @@ public class WifiNetworkSelectorTest extends WifiBaseTest {
public void testBadRssi() {
// Rssi after connected.
when(mWifiInfo.getRssi()).thenReturn(mThresholdQualifiedRssi2G - 1);
- when(mWifiInfo.getTxSuccessRate()).thenReturn(mMinPacketRateActiveTraffic + 1.0);
- when(mWifiInfo.getRxSuccessRate()).thenReturn(mMinPacketRateActiveTraffic - 1.0);
+ when(mWifiInfo.getSuccessfulTxPacketsPerSecond())
+ .thenReturn(mMinPacketRateActiveTraffic + 1.0);
+ when(mWifiInfo.getSuccessfulRxPacketsPerSecond())
+ .thenReturn(mMinPacketRateActiveTraffic - 1.0);
testStayOrTryToSwitch(
mThresholdQualifiedRssi2G + 1 /* rssi before connected */,
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiScoreCardTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiScoreCardTest.java
index 4b8095c5fa..ae71794e41 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiScoreCardTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiScoreCardTest.java
@@ -835,8 +835,8 @@ public class WifiScoreCardTest extends WifiBaseTest {
mWifiScoreCard.noteConnectionAttempt(mWifiInfo, -53, mWifiInfo.getSSID());
millisecondsPass(5000);
mWifiInfo.setTxLinkSpeedMbps(100);
- mWifiInfo.setTxSuccessRate(20.0);
- mWifiInfo.setTxRetriesRate(1.0);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(20.0);
+ mWifiInfo.setRetriedTxPacketsRate(1.0);
mWifiInfo.setRssi(-80);
millisecondsPass(1000);
mWifiScoreCard.noteSignalPoll(mWifiInfo);
diff --git a/service/tests/wifitests/src/com/android/server/wifi/WifiScoreReportTest.java b/service/tests/wifitests/src/com/android/server/wifi/WifiScoreReportTest.java
index c287632883..ee53c66308 100644
--- a/service/tests/wifitests/src/com/android/server/wifi/WifiScoreReportTest.java
+++ b/service/tests/wifitests/src/com/android/server/wifi/WifiScoreReportTest.java
@@ -254,8 +254,8 @@ public class WifiScoreReportTest extends WifiBaseTest {
public void allowLowRssiIfDataIsMoving() throws Exception {
mWifiInfo.setRssi(-80);
mWifiInfo.setLinkSpeed(6); // Mbps
- mWifiInfo.setTxSuccessRate(5.1); // proportional to pps
- mWifiInfo.setRxSuccessRate(5.1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(5.1); // proportional to pps
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(5.1);
for (int i = 0; i < 10; i++) {
mWifiScoreReport.calculateAndReportScore(mWifiInfo, mNetworkAgent, mWifiMetrics);
}
@@ -277,8 +277,8 @@ public class WifiScoreReportTest extends WifiBaseTest {
mWifiInfo.setLinkSpeed(6); // Mbps
mWifiInfo.setFrequency(5220);
mWifiScoreReport.enableVerboseLogging(true);
- mWifiInfo.setTxSuccessRate(0.1);
- mWifiInfo.setRxSuccessRate(0.1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0.1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(0.1);
for (int i = 0; i < 10; i++) {
mWifiScoreReport.calculateAndReportScore(mWifiInfo, mNetworkAgent, mWifiMetrics);
}
@@ -317,8 +317,8 @@ public class WifiScoreReportTest extends WifiBaseTest {
mWifiInfo.setLinkSpeed(6); // Mbps
mWifiInfo.setFrequency(5220);
mWifiScoreReport.enableVerboseLogging(true);
- mWifiInfo.setTxSuccessRate(0.1);
- mWifiInfo.setRxSuccessRate(0.1);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0.1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(0.1);
assertTrue(mScoringParams.update("rssi5=-83:-80:-66:-55"));
for (int r = -30; r >= -100; r -= 1) {
int rssi = Math.max(r, -80);
@@ -340,9 +340,11 @@ public class WifiScoreReportTest extends WifiBaseTest {
*/
@Test
public void allowTerribleRssiIfDataIsMovingWell() throws Exception {
- mWifiInfo.setTxSuccessRate(mScoringParams.getYippeeSkippyPacketsPerSecond() + 0.1);
- mWifiInfo.setRxSuccessRate(mScoringParams.getYippeeSkippyPacketsPerSecond() + 0.1);
- assertTrue(mWifiInfo.getTxSuccessRate() > 10);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(
+ mScoringParams.getYippeeSkippyPacketsPerSecond() + 0.1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(
+ mScoringParams.getYippeeSkippyPacketsPerSecond() + 0.1);
+ assertTrue(mWifiInfo.getSuccessfulTxPacketsPerSecond() > 10);
mWifiInfo.setFrequency(5220);
for (int r = -30; r >= -120; r -= 2) {
mWifiInfo.setRssi(r);
@@ -350,12 +352,14 @@ public class WifiScoreReportTest extends WifiBaseTest {
assertTrue(mWifiInfo.getScore() > ConnectedScore.WIFI_TRANSITION_SCORE);
}
// If the throughput dips, we should let go
- mWifiInfo.setRxSuccessRate(mScoringParams.getYippeeSkippyPacketsPerSecond() - 0.1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(
+ mScoringParams.getYippeeSkippyPacketsPerSecond() - 0.1);
mWifiScoreReport.calculateAndReportScore(mWifiInfo, mNetworkAgent, mWifiMetrics);
assertTrue(mWifiInfo.getScore() < ConnectedScore.WIFI_TRANSITION_SCORE);
// And even if throughput improves again, once we have decided to let go, disregard
// the good rates.
- mWifiInfo.setRxSuccessRate(mScoringParams.getYippeeSkippyPacketsPerSecond() + 0.1);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(
+ mScoringParams.getYippeeSkippyPacketsPerSecond() + 0.1);
mWifiScoreReport.calculateAndReportScore(mWifiInfo, mNetworkAgent, mWifiMetrics);
assertTrue(mWifiInfo.getScore() < ConnectedScore.WIFI_TRANSITION_SCORE);
}
@@ -464,10 +468,10 @@ public class WifiScoreReportTest extends WifiBaseTest {
mWifiInfo.setRssi(-65 + i);
mWifiInfo.setLinkSpeed(300);
mWifiInfo.setFrequency(5220);
- mWifiInfo.setTxSuccessRate(0.1 + i);
- mWifiInfo.setTxRetriesRate(0.2 + i);
- mWifiInfo.setTxBadRate(0.01 * i);
- mWifiInfo.setRxSuccessRate(0.3 + i);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0.1 + i);
+ mWifiInfo.setRetriedTxPacketsRate(0.2 + i);
+ mWifiInfo.setLostTxPacketsPerSecond(0.01 * i);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(0.3 + i);
mWifiScoreReport.calculateAndReportScore(mWifiInfo, mNetworkAgent, mWifiMetrics);
}
setupToGenerateAReportWhenPrintlnIsCalled();
@@ -486,10 +490,10 @@ public class WifiScoreReportTest extends WifiBaseTest {
mWifiInfo.setRssi(-65 + i % 20);
mWifiInfo.setLinkSpeed(300);
mWifiInfo.setFrequency(5220);
- mWifiInfo.setTxSuccessRate(0.1 + i % 100);
- mWifiInfo.setTxRetriesRate(0.2 + i % 100);
- mWifiInfo.setTxBadRate(0.0001 * i);
- mWifiInfo.setRxSuccessRate(0.3 + i % 200);
+ mWifiInfo.setSuccessfulTxPacketsPerSecond(0.1 + i % 100);
+ mWifiInfo.setRetriedTxPacketsRate(0.2 + i % 100);
+ mWifiInfo.setLostTxPacketsPerSecond(0.0001 * i);
+ mWifiInfo.setSuccessfulRxPacketsPerSecond(0.3 + i % 200);
mWifiScoreReport.calculateAndReportScore(mWifiInfo, mNetworkAgent, mWifiMetrics);
}
mWifiScoreReport.dump(null, mPrintWriter, null);