diff --git a/lower-constraints.txt b/lower-constraints.txt
index 0f6c4483c..69c9e5e1c 100644
--- a/lower-constraints.txt
+++ b/lower-constraints.txt
@@ -1,5 +1,5 @@
 alabaster==0.7.10
-amqp==2.4.0
+amqp==2.4.1
 appdirs==1.3.0
 Babel==2.3.4
 bandit==1.1.0
diff --git a/releasenotes/notes/bump-amqp-version-due-to-tls-issue-e877b152eb101c15.yaml b/releasenotes/notes/bump-amqp-version-due-to-tls-issue-e877b152eb101c15.yaml
new file mode 100644
index 000000000..70ab62d99
--- /dev/null
+++ b/releasenotes/notes/bump-amqp-version-due-to-tls-issue-e877b152eb101c15.yaml
@@ -0,0 +1,16 @@
+---
+critical:
+  - |
+    In combination with amqp<=2.4.0, ``oslo.messaging`` was unreliable
+    when configured with TLS (as is generally recommended). Users would
+    see frequent errors such as this::
+
+      MessagingTimeout: Timed out waiting for a reply to message ID ae039d1695984addbfaaef032ce4fda3
+
+    Such issues would typically lead to downstream service timeouts,
+    with no recourse available other than disabling TLS altogether
+    (see `bug 1800957
+    <https://bugs.launchpad.net/oslo.messaging/+bug/1800957>`_).
+
+    The underlying issue is fixed in amqp version 2.4.1, which is now
+    the minimum version that ``oslo.messaging`` requires.
diff --git a/requirements.txt b/requirements.txt
index ae1db4da3..3c6eb93f1 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -26,7 +26,7 @@ PyYAML>=3.12 # MIT
 
 # rabbit driver is the default
 # we set the amqp version to ensure heartbeat works
-amqp>=2.4.0 # BSD
+amqp>=2.4.1 # BSD
 kombu!=4.0.2,>=4.0.0 # BSD
 
 # middleware