From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7782B4589B; Thu, 29 Aug 2024 21:04:59 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 48D16402A5; Thu, 29 Aug 2024 21:04:59 +0200 (CEST) Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com [209.85.208.176]) by mails.dpdk.org (Postfix) with ESMTP id A64514028A for ; Thu, 29 Aug 2024 21:04:58 +0200 (CEST) Received: by mail-lj1-f176.google.com with SMTP id 38308e7fff4ca-2f3f99ccb76so738861fa.0 for ; Thu, 29 Aug 2024 12:04:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1724958298; x=1725563098; darn=dpdk.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=AvNnxJKZPqyFUloCte6ZDLmIoHXszTyxgpwfqDgutcQ=; b=ZsDUDjBr7b8fJwAV45cmQ3kA4ZjdVIJ9ZtWQl+RQGP+xEJPC6nvUso6E2cbRGpyp4f HEfF6lIca9JqT9IpdzY5VFIU2hGXBiuV1r7rI3DTO02C69JFZsTIGKx/UhnVcmTFtQin mgbrJ23+kuAV9mKvs7y8g7G9Vj+0wwKDJL/TY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724958298; x=1725563098; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AvNnxJKZPqyFUloCte6ZDLmIoHXszTyxgpwfqDgutcQ=; b=E+RAnrDlPNVSgU7foMIWMyK+NvKt8/R0io7WWimUWGlpG2z/ORjahA3qSuD1yYujcz NHTyEV76KT2ifSaDsWnrhj90a+l53IOlR+OCJNXxrBfimhEGoVXyHOztwSAa7agEE1ix ulSU9LwibMGzC7a5Rt6R+vda4lJ64Es6IpR8lph8Z196sKswRx0RVlvN/cow4Sz1B0vy h0Mb/2IzcTthooqpuUKlpo0QTPZBDGivU8LqHC88/b2gDmwe5qlTK8MzZ0iBtCvzkf5X 2hAisycCTXok3nBQ3L+XHEwbISZJejMRBYR6OhVbE8cIBYaQFJyF1R8b6lx0YuR1QJTr vLhw== X-Forwarded-Encrypted: i=1; AJvYcCXVBe8dhE0cVVjyz8Z9WxYF9L+4k+EpdZmAq08xzUr/wDR4eNPNpZVlw+SPG/bnQlABuU0=@dpdk.org X-Gm-Message-State: AOJu0YyNeA+x+PT1POvkuqX/izEQ8nf8z79zfZST0KZLjSHUcelS6pHc 4fLGSROqi7pQ8vssPRiGSXg/l/aJRxi8Ddu86GnROOqy71qjvQNAvW6/ZK2GGLaRR4Kxz1DO8R4 8YMFO6R7wRWOho/5a0dBOgIMoH0EqL7mFik+u9w== X-Google-Smtp-Source: AGHT+IEeCAP/m9icTnCx21+JYhex/rcIdd1Kd4pC5CXDGLw5xSNaeonUS30rojyU74rVELJi+KRDSV2J03lYHzFpNU4= X-Received: by 2002:a2e:a99b:0:b0:2ef:2d71:e23c with SMTP id 38308e7fff4ca-2f6103a4d21mr16512311fa.2.1724958297828; Thu, 29 Aug 2024 12:04:57 -0700 (PDT) MIME-Version: 1.0 References: <20240524183604.6925-1-npratte@iol.unh.edu> <20240726141307.14410-1-npratte@iol.unh.edu> <20240726141307.14410-3-npratte@iol.unh.edu> <7c2a0677-9815-4d6c-aeb8-6f35966db7d8@arm.com> In-Reply-To: <7c2a0677-9815-4d6c-aeb8-6f35966db7d8@arm.com> From: Nicholas Pratte Date: Thu, 29 Aug 2024 15:04:46 -0400 Message-ID: Subject: Re: [RFC PATCH v3 2/2] dts: Initial Implementation For Jumbo Frames Test Suite To: Alex Chapman Cc: probb@iol.unh.edu, dmarx@iol.unh.edu, jspewock@iol.unh.edu, luca.vizzarro@arm.com, yoan.picchi@foss.arm.com, Honnappa.Nagarahalli@arm.com, paul.szczepanek@arm.com, juraj.linkes@pantheon.tech, dev@dpdk.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Hi Alex, thanks for the review! See my comments below. > > +IP_HEADER_LEN =3D 20 > > +ETHER_STANDARD_FRAME =3D 1500 > > +ETHER_JUMBO_FRAME_MTU =3D 9000 > > For these constants, I am confused why one is "FRAME" and the other is > "MTU". The value of 'ETHER_STANDARD_FRAME' is 1500 (the standard MTU > size), it would make sense to rename it to 'ETHER_STANDARD_MTU', to keep > naming consistent. > > If the value was 1518 instead of 1500, then `ETHER_STANDARD_FRAME` would > be appropriate. You are correct! I will make the changes. > > Renaming 'ETHER_STANDARD_FRAME' to 'ETHER_STANDARD_MTU' would reduce > confusion here too. > e.g. > `testpmd.configure_port_mtu_all(ETHER_STANDARD_MTU)` > > Additionally, you state you are sending packets of sizes 1517 and 1518. > but you then call: > `self.send_packet_and_verify(ETHER_STANDARD_FRAME - 5)` > `self.send_packet_and_verify(ETHER_STANDARD_FRAME)` Ack. I must have missed the docstring when I adjusted the boundaries at which we test jumbo frame sizes ethernet overhead issues we've been having. Adding the +5, -5 bytes is sort of a temporary measure/placeholder while we wait to gather more information on how to properly assess and test the ethernet overhead issue. See my next comment for more clarification. > > Calculating to: > `self.send_packet_and_verify(1495)` > `self.send_packet_and_verify(1500)` > > Which is confusing. > I believe this is because you are accounting for the 4 bytes of VLAN's > in your calculations, but you might want to explain this. What the +5 bytes situation really is for, currently, is to assess the boundaries of a set MTU size, sorry for the confusion there. For example, if we have a MTU of 1500, some vendors assume an ethernet overhead of +22 bytes on top of the 1500 byte MTU (for a total frame size of 1522 bytes), and other vendors, such as Mellanox, add +18 bytes of ethernet overhead +1500 byte MTU (for a total frame size of 1518). The +5 tries to compensate for this by adding +5 or -5 bytes to properly test greater than or less than a 1500 byte MTU for all vendors, but this gets tricky when you are trying to run tests at the MTU size itself. If you look back to the oldest version I have of this suite, you'll see that each test case was originally sending 1499 byte packets, 1501 packets, and 1500 packets in some cases, but we can't run tests like this because of the differing assumptions from vendor to vendor (you can find the old suite in a different email thread, I messed up the sending of the series so I apologize for that). Here's the original version of this patch: https://inbox.dpdk.org/dev/20240524183604.6925-2-npratte@iol.unh.edu/ The calculation of ethernet overhead basically comes down to a single 'if' statement in testpmd's code. You can find this method in testpmd.c and do some digging if you're interested (look under 'app/test-pmd/testpmd.c' and search for 'get_eth_overhead') > > > Overall very solid and clean test suite, just wanted to get > clarification on a few areas =F0=9F=99=82. > Alex I wrote this test suite a while back when I was just starting out, and a lot of this information was new to me at the time, so it's not surprising to see some of the misuse of definitions you've laid out here; I appreciate the feedback! -Nicholas