From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi1-x22d.google.com (mail-oi1-x22d.google.com [IPv6:2607:f8b0:4864:20::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 20C603B29D for ; Mon, 13 Mar 2023 05:41:44 -0400 (EDT) Received: by mail-oi1-x22d.google.com with SMTP id bg11so8944045oib.5 for ; Mon, 13 Mar 2023 02:41:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678700503; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Ch7HWlWHDY3/q2cyu5XicnOqqfn0ArV8aFKl51EndyE=; b=P8I86CmI4R0E1/dEUxQ4x3bSt8cia8HwOIXgd6MTVM7ZgfyhQYgy2WVy2uqCgsbcl0 UmimgmzmjscMQS4M8TWsddZIyWbBiSCv3io4Y/hMkJ2iTBjIOZpluJVsDqnn7xQ4mhAN NOIr9EEDz2FyooQUn2iO++9ERwCh9KoC2IjR2A+cAQk3FMkgHGsMZsv2/oJUnWrtJoVJ MG4vOtPd99pExSt5erOYYEU+/BcPx8FaG51QveyW59helcDe4NfKkXBpaPgrFqvMexqH gj/kK2ABCWOyLZ+8ypUAs90r7i0BCszGatfNb/faf4Pzt4StCMbXOk6aUnIaNU+xibw1 kO4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678700503; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Ch7HWlWHDY3/q2cyu5XicnOqqfn0ArV8aFKl51EndyE=; b=KYEnkhkutpCOlq1csMGERIN68KYn/e/nP4/ecZ2x9HdL/sNzxDw6vihNjVXln7mRRw PrFe8zI6MJbSSoelhE1SOQie7Db7vJaAi6cZAvGG4YeRj3iRxNAtpA6ld2e4EnZQ59uL Adb0vzEKZMdkPuf5mn8lhDXnbE038mdEXwOTSFtVe+bGiRoDWEgNT3e7gSW36XjNm6Ch GdqYamMPMDaQUA6wgFK6UccLS+OwRCUxJPaUKF7BQa9crMBl6jDNzfMxdgmaDliH4ulG 5T3nqKIlyc1YVTFSNhSTBP1yRxeHxCiRGg6NLZjAeHyn62ZgBcf7v7dzrJQxOkh/vvN6 36JA== X-Gm-Message-State: AO0yUKWQDuBTepPqlxBB2flHTX4oYuTsK+CsF1nNo0/cL4CVOyTtfRqe FvJbfKmpe0pd0VIoradqMGKPWt/Q37YmUZqNm4vFniIqXv0= X-Google-Smtp-Source: AK7set9lg6BLDHdmHPsopmDWkIm2eAXh8c2C2IsvGjFDJ+n0h4QWwe0d0sNmAyCmbCQ1DrtnakAPoy3GwvbFW0khdNY= X-Received: by 2002:a05:6808:9bb:b0:384:2495:851b with SMTP id e27-20020a05680809bb00b003842495851bmr10056253oig.7.1678700503202; Mon, 13 Mar 2023 02:41:43 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6358:6117:b0:104:5f30:ca51 with HTTP; Mon, 13 Mar 2023 02:41:42 -0700 (PDT) From: =?UTF-8?Q?David_Fern=C3=A1ndez?= Date: Mon, 13 Mar 2023 10:41:42 +0100 Message-ID: To: starlink@lists.bufferbloat.net Content-Type: text/plain; charset="UTF-8" Subject: Re: [Starlink] RFC: bufferbloat observability project X-BeenThere: starlink@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Starlink has bufferbloat. Bad." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Mar 2023 09:41:44 -0000 "in the past [...] protocols were documented by bit-layouts of packets" https://indico.esa.int/event/57/contributions/2701/attachments/2245/2598/Data_Modelling_with_ASN.1.pdf#page=4&zoom=auto,-278,13 ASN.1 compilers generate C code, though. > Date: Sun, 12 Mar 2023 14:56:58 -0400 (EDT) > From: "David P. Reed" > To: starlink@lists.bufferbloat.net > Subject: Re: [Starlink] RFC: bufferbloat observability project (Dave > Taht) > Message-ID: <1678647418.092929775@apps.rackspace.com> > Content-Type: text/plain; charset="utf-8" > > > I should have added this: I am aware of a full TCP stack implementation > implemented in Verilog. (In fact, my son built it, and it is in production > use on Wall St.). > > On Sunday, March 12, 2023 2:51pm, "David P. Reed" > said: > > > > Regarding unbounded queues > On Sunday, March 12, 2023 12:00pm, Dave Taht said: > >> Also it increasingly bothers me to see unbounded queues in so many new >> language libraries. > > > I disagree somewhat. Unbounded queueing is perfectly fine in a programming > language like Haskell, where there are no inherent semantics about timing - > a queue is an ordered list with append, and it's a GREAT way to formulate > many algorithms that process items in order. > > Where the problem with queues arises is in finite (bounded) real-time > programming systems. Which include network protocol execution machines. > > It's weird to me that people seem to think that languages intended for > data-transformation algorithms, parsers, ... are appropriate for programming > network switches, TCP/IP stacks, etc. It always has seemed weird beyond > belief. I mean, yeah, Go has queues and goroutines, but those aren't > real-time appropriate components. > > What may be the better thing to say is that it increasingly bothers you that > NO ONE seems to be willing to create a high-level programming abstraction > for highly concurrent interacting distributed machines. > > There actually are three commercial programming languages (which are about > at the level of C++ in abstraction, with the last maybe being at the level > of Haskell). > 1. Verilog > 2. VHDL > 3. BlueSpec > > For each one, there is a large community of programmers proficient in them. > You might also consider Erlang as a candidate, but I think its "queues" are > not what you want to see. > > Why doesn't IETF bother to try to delegate a team to create such an > expressive programming language or whatever? I'd suggest that starting with > Verilog might be a good idea. > > A caveat about my point: I write Verilog moderately well, and find it quite > expressive for modeling networking systems in my mind. I also write Haskell > quite well, and since BlueSpec draws on Haskell's model of computation I > find it easy to read, but I've not written much Haskell. > > To me, those who write networking code in C or C++ are stuck in the past > when protocols were documented by bit-layouts of packets and hand-waving > English "standards" without any way to verify correctness. We need to stop > worshipping those archaic RFCs as golden tablets handed down from gods. > > Who am I to criticize the academic networking gods, though?