Network traffic limits on x2gd.medium

0

We have setup redis on x2gd.medium with 2 to 5 ec2 instances connected within the same region https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/memory-optimized-instances.html indicates it has a baseline of .5Gbps. From the network In/Out monitoring, it seems we are averaging about .35Gbps with some minor peaks. https://photos.app.goo.gl/rkizVakGQpZo8v5q6

Yet we are observing constant increasing of

     ethtool -S ens5
     bw_in_allowance_exceeded: 314
     bw_out_allowance_exceeded: 281794

Our setup is fairly vanilla

  • ubuntu/images/hvm-ssd/ubuntu-focal-20.04-arm64-server-20220419 ami-0d70a59d7191a8079
  • add-apt-repository -y ppa:redislabs/redis
  • apt-get -y update
  • apt-get install -y nvme-cli
  • apt-get -y install redis
uname -a
Linux ip-10-0-0-41 5.13.0-1022-aws #24~20.04.1-Ubuntu SMP Thu Apr 7 22:14:11 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux

redis-cli -v
redis-cli 7.0.0

modinfo ena
filename:       /lib/modules/5.13.0-1022-aws/kernel/drivers/net/ethernet/amazon/ena/ena.ko
license:        GPL
description:    Elastic Network Adapter (ENA)
author:         Amazon.com, Inc. or its affiliates
srcversion:     066F20794698BA58475C910
alias:          pci:v00001D0Fd0000EC21sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd0000EC20sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd00001EC2sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd00000EC2sv*sd*bc*sc*i*
alias:          pci:v00001D0Fd00000051sv*sd*bc*sc*i*
depends:
intree:         Y
name:           ena
vermagic:       5.13.0-1022-aws SMP mod_unload modversions aarch64

Question:

  1. How can we know more about this "hidden networking credits" that seems to be limiting our bandwidth to avoid exceeding the allowance?
3 Antworten
0
Akzeptierte Antwort

Hello Freedom_AWS,

To piggyback off of GaryKo_AWS, the most likely reason for the allowance exceeded increments and under baseline utilization is due to microbursting. An example of this would be if there is a microburst lasting 10 seconds that is above the BW allowance, then there are no more microbursts and utilization under .5 gbps for 4 minutes and 50 seconds. The CloudWatch metric period of 5 minutes will show the lower utilization and will not reflect the microburst due to CW not being granular enough while still incrementing the bw_out_allowance_exceeded. To monitor throughput / PPS at a more granular level and get more visibility into what is happening, use OS tools to monitor network statistics.

Here is a more in depth guide about it.

profile pictureAWS
Nick
beantwortet vor 2 Jahren
profile pictureAWS
EXPERTE
Toni_S
überprüft vor 2 Jahren
0

An instance receives the maximum number of network I/O credits at launch. That is the number (Burst bandwidth) you can find from the userguide. When the instance exhausts its network I/O credits, it returns to its baseline bandwidth. A running instance earns network I/O credits whenever it uses less network bandwidth than its baseline bandwidth. A stopped instance does not earn network I/O credits. Instance burst is on a best effort basis, even when the instance has credits available, as burst bandwidth is a shared resource. (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html)

In order to achieve higher baseline network bandwidth, I would recommend you change your instance size, and perform regularly benchmark on the bandwidth between instances using tools like iperf.

AWS
beantwortet vor 2 Jahren
  • Hi,

    We got the same info from the AWS documents. However, it doesn't make much sense that we are under the .5Gbps baseline for the past 3 days, yet we are still seeing increasing allowance_exceeded

    Wed Jun  8 08:48:52 UTC 2022
         bw_in_allowance_exceeded: 330
         bw_out_allowance_exceeded: 325692
    
0

Following up on this, we have split the traffic to two r6gd.medium server with .5Gbps each, which unfortunately we are still seeing continue increasing of

bw_out_allowance_exceeded

This is really frustrating where we are not able to find/configure an instance that we won't be overcharged for stuff that we won't be utilizing.

beantwortet vor 2 Jahren

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen