diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java
index f5c92645490ac230cc1d9da5a1333a329d7b0385..43dca92409f4dc28e87e8883417efa05045ec22f 100644
--- a/router/java/src/net/i2p/router/RouterVersion.java
+++ b/router/java/src/net/i2p/router/RouterVersion.java
@@ -18,7 +18,7 @@ public class RouterVersion {
     /** deprecated */
     public final static String ID = "Monotone";
     public final static String VERSION = CoreVersion.VERSION;
-    public final static long BUILD = 20;
+    public final static long BUILD = 21;
 
     /** for example "-test" */
     public final static String EXTRA = "";
diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java
index 259f30af1819a7da3425c1862c7ce85da8a4d572..b1d37ab1db64f45a5279524a552bd7d4b7ab1277 100644
--- a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java
+++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java
@@ -915,6 +915,11 @@ public class NTCPConnection implements Closeable {
      *  @since 0.9.36
      */
     private int getPaddingSize(int dataSize, int availForPad) {
+        // since we're calculating with percentages, get at least a
+        // 0-16 range with the default 0% min 6% max,
+        // even for small dataSize.
+        if (dataSize < 256)
+            dataSize = 256;
         // what we want to send, calculated in proportion to data size
         int minSend = (int) (dataSize * _paddingConfig.getSendMin());
         int maxSend = (int) (dataSize * _paddingConfig.getSendMax());