Re: [Wish] should we remove the support for http redirections on initial PUT request?

Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com> Mon, 13 September 2021 17:13 UTC

Return-Path: <sergio.garcia.murillo@gmail.com>
X-Original-To: wish@ietfa.amsl.com
Delivered-To: wish@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 456C53A0CB4 for <wish@ietfa.amsl.com>; Mon, 13 Sep 2021 10:13:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qEaiJ7gQd-P3 for <wish@ietfa.amsl.com>; Mon, 13 Sep 2021 10:13:06 -0700 (PDT)
Received: from mail-pg1-x52d.google.com (mail-pg1-x52d.google.com [IPv6:2607:f8b0:4864:20::52d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 955AC3A0CB1 for <wish@ietf.org>; Mon, 13 Sep 2021 10:13:06 -0700 (PDT)
Received: by mail-pg1-x52d.google.com with SMTP id n18so10040546pgm.12 for <wish@ietf.org>; Mon, 13 Sep 2021 10:13:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Jbh+6ZISv+2I5/ZlgKqZuOU6N4t000JkH6Vj31GDFkM=; b=kBVnQdVUM3mkOJF9Ivmss9ijMEvPm9VPwr+VG1ZP0rCjaNrGevMwdc8cMQcMNETQml mjfpqFSQsi1U53i3BRtp9E/ZowMMH4yPo26uHrFHe42M3kf+SIQE86avSkqvF4DDVgXp F64udg2EgARoCNOfZ+EHK0C95aVHtAXZ/Fk1Vuv8eXcn2TXrmtdWwYP8gnuXoxSUTuRf NXjn4l7JltdWvxsJvWj2JsfRWD8gGMnsQk3QP4yCPB2PkMpxVcTA4//h1u3nThtEM5Lx kb7dYiKdKD31GuenuYmISzrs71TS8V+JnE2Hh9Uo0zvigNQf+aMA11iiHVZOXCGb3lv8 hXEA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Jbh+6ZISv+2I5/ZlgKqZuOU6N4t000JkH6Vj31GDFkM=; b=jhU3KugKH1aVjZhbbyy90aRF0QuPgUreCwf0uKqPPQR0gNOQGcjMf8gmdIM3rVYbYn rLNHx1QBPl7aJ2cnGQt9/c+8q99208JhEYx6QYwijicfueaPGB6GC+DE3yKmQjjHsRdn llkKw6I9jrLg7OUoTnwCZ/wB1B4yejN4RlcHkkRivKRnyVKnY2GEN04PjXxV3Ah0g8+q 1MjFl9GBESN+7Zd3Bm0fkZgO/VdMen6YYIoRgR4bOHR6KfwQSXqsyjWl1CnfKxDIg3dZ JcYUFOLgW5wkuxaOOBLMwYmdCuQWOBfa8HFIzPo3926DhoFgJTPOIGAlMwSJpl5K6LOI 7r1Q==
X-Gm-Message-State: AOAM533frWsBbEGt0m4L+gxY3pHiBi6GPukVQSC2y/J5Z8Mt1P5c7+yV vW7YOF7foo9ex5Vi9EmkRy8yYBf2k2qOo0aSO7Q=
X-Google-Smtp-Source: ABdhPJysD10/KFAbJ5n5P0pt3E3Ht0CFls8VI2sDU9I6LuWlAkxT9sogfggcrAuQvtlP2i63x1Q/yAwSHEWoJQQFcXI=
X-Received: by 2002:a63:e413:: with SMTP id a19mr12065644pgi.408.1631553183405; Mon, 13 Sep 2021 10:13:03 -0700 (PDT)
MIME-Version: 1.0
References: <CA+ag07ZM3_UYYSZpRuyJ0ONy9g_C3sYYXVSqVEk-SdUK9tcPOQ@mail.gmail.com> <87fsu8foia.wl-jch@irif.fr> <CAABnt0Pr758_1dXnxUq1iD8br-9L6ktHvPGVj4FQBAxXi0iW6g@mail.gmail.com>
In-Reply-To: <CAABnt0Pr758_1dXnxUq1iD8br-9L6ktHvPGVj4FQBAxXi0iW6g@mail.gmail.com>
From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
Date: Mon, 13 Sep 2021 19:12:52 +0200
Message-ID: <CA+ag07bq08LbaH7uvx30nZELpJN+KS8EUpzjmi6k0zBRiYXhhA@mail.gmail.com>
To: Matt Ward <mattward@mux.com>
Cc: Juliusz Chroboczek <jch@irif.fr>, WISH List <wish@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000eddca905cbe39352"
Archived-At: <https://mailarchive.ietf.org/arch/msg/wish/Q6Uu9eOMU9LiGUv-qefWkvuLuy0>
Subject: Re: [Wish] should we remove the support for http redirections on initial PUT request?
X-BeenThere: wish@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: WebRTC Ingest Signaling over HTTPS <wish.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/wish>, <mailto:wish-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/wish/>
List-Post: <mailto:wish@ietf.org>
List-Help: <mailto:wish-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/wish>, <mailto:wish-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 13 Sep 2021 17:13:10 -0000

El lun, 13 sept 2021 a las 19:07, Matt Ward (<mattward@mux.com>) escribió:

> I think this decision to require 307 support in a client is trading off
> client and server complexity. I think the place to start answering this
> question is to empathize with a couple different server architectures.
>
> 1- All-in-One - In this case all the pieces are bundled into a single
> server. This means the WHIP endpoint/resource and the media server all
> reside in a single process/process tree. Scaling is done by moving to
> larger machines as Juliusz mentions they have done successfully. In this
> case, a 307 from one server to another server makes scaling a bit easier.
>
> 2- Decoupled - In this case, the WHIP endpoint and media server are
> decoupled and scaled independently. The WHIP endpoint is basically load
> balanced the way most people approach this for API servers. In handling the
> request for the WHIP endpoint, a media server is allocated + SDP crafted
> directly in the WHIP endpoint. This allocation and SDP reply pointing to
> the correct media server is the load balancing layer for this system and
> therefore a 307 is not necessary.
>
> I'd expect a lot of implementations to follow closer to architecture 1
> than 2, as this more closely aligns with what we see today in the open
> source SFU space. If we believe this, we may desire keeping the 307
> support. Web browsers support this without any additional effort (fetch
> follows redirects just fine. Native clients may have a more diverse set of
> HTTP stacks, but most of the iOS + Android apps I have worked on have no
> problem at all following 307s.
>
>>
>>
I added the 307 redirection because I was going to implement 2) decoupled
myself, but when implementing it, I found that it was much easier for me to
just do a request from the balancer to the media server forwarding the SDP
offer and sending back the sdp answer back to the client than sending the
307 redirect response. It would also be more effective as I can get rid of
one round trip and avoid the client having the SDP twice.

Regarding the support in libraries, please double check that the
redirection is done with PUT and a body, because we have found that this
may not be a common practice.

Best regards
Sergio