all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager] status/metrics: make MTU configurable
@ 2020-10-29  7:32 Fabian Grünbichler
  2020-10-29  8:12 ` [pve-devel] applied: " Thomas Lamprecht
  0 siblings, 1 reply; 2+ messages in thread
From: Fabian Grünbichler @ 2020-10-29  7:32 UTC (permalink / raw)
  To: pve-devel

since some users don't even have a full 1500 (and some systems might
have links with bigger MTU and not require as much fragmentation).

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
As reported in
https://forum.proxmox.com/threads/error-message-too-long-in-external-metric.64642/

tested by configuring various values and looking at tcpdump output

 PVE/Status/Graphite.pm |  1 +
 PVE/Status/InfluxDB.pm |  1 +
 PVE/Status/Plugin.pm   | 13 ++++++++++++-
 3 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/PVE/Status/Graphite.pm b/PVE/Status/Graphite.pm
index 41839a43..1b196c24 100644
--- a/PVE/Status/Graphite.pm
+++ b/PVE/Status/Graphite.pm
@@ -50,6 +50,7 @@ sub options {
     return {
 	server => {},
 	port => { optional => 1 },
+	mtu => { optional => 1 },
 	proto => { optional => 1 },
 	timeout => { optional => 1 },
 	path => { optional => 1 },
diff --git a/PVE/Status/InfluxDB.pm b/PVE/Status/InfluxDB.pm
index c7bc15a9..589a4936 100644
--- a/PVE/Status/InfluxDB.pm
+++ b/PVE/Status/InfluxDB.pm
@@ -28,6 +28,7 @@ sub options {
     return {
 	server => {},
 	port => {},
+	mtu => { optional => 1 },
 	disable => { optional => 1 },
    };
 }
diff --git a/PVE/Status/Plugin.pm b/PVE/Status/Plugin.pm
index d6fba529..7b27d8fc 100644
--- a/PVE/Status/Plugin.pm
+++ b/PVE/Status/Plugin.pm
@@ -33,6 +33,14 @@ my $defaultData = {
 	    type => 'integer',
 	    description => "server network port",
 	},
+	mtu => {
+	    type => 'integer',
+	    description => "MTU for metrics transmission over UDP",
+	    default => 1500,
+	    min => 512,
+	    maximum => 64*1024,
+	    optional => 1,
+	},
     },
 };
 
@@ -69,7 +77,10 @@ sub _disconnect {
 # UDP cannot do more than 64k at once. Overwrite for different protocol limits.
 sub _send_batch_size {
     my ($class, $cfg) = @_;
-    return 1450; # assume 1500 MTU, empty IPv6 UDP packet needs 48 bytes overhead
+
+    # default to 1500 MTU, empty IPv6 UDP packet needs 48 bytes overhead 
+    my $mtu = $cfg->{mtu} // 1500;
+    return $mtu - 50;
 }
 
 # call with the smalles $data chunks possible
-- 
2.20.1





^ permalink raw reply	[flat|nested] 2+ messages in thread

* [pve-devel] applied: [PATCH manager] status/metrics: make MTU configurable
  2020-10-29  7:32 [pve-devel] [PATCH manager] status/metrics: make MTU configurable Fabian Grünbichler
@ 2020-10-29  8:12 ` Thomas Lamprecht
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Lamprecht @ 2020-10-29  8:12 UTC (permalink / raw)
  To: Proxmox VE development discussion, Fabian Grünbichler

On 29.10.20 08:32, Fabian Grünbichler wrote:
> since some users don't even have a full 1500 (and some systems might
> have links with bigger MTU and not require as much fragmentation).
> 
> Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
> ---
> As reported in
> https://forum.proxmox.com/threads/error-message-too-long-in-external-metric.64642/
> 
> tested by configuring various values and looking at tcpdump output
> 
>  PVE/Status/Graphite.pm |  1 +
>  PVE/Status/InfluxDB.pm |  1 +
>  PVE/Status/Plugin.pm   | 13 ++++++++++++-
>  3 files changed, 14 insertions(+), 1 deletion(-)
> 
>

applied, thanks!





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-10-29  8:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-29  7:32 [pve-devel] [PATCH manager] status/metrics: make MTU configurable Fabian Grünbichler
2020-10-29  8:12 ` [pve-devel] applied: " Thomas Lamprecht

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal