From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6A46CC433ED for ; Fri, 23 Apr 2021 09:17:40 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9855F61352 for ; Fri, 23 Apr 2021 09:17:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9855F61352 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:49750 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lZrwQ-0000e4-Bv for qemu-devel@archiver.kernel.org; Fri, 23 Apr 2021 05:17:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37800) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lZrvP-0008Pe-7Z for qemu-devel@nongnu.org; Fri, 23 Apr 2021 05:16:35 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:30650) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lZrvK-0000hC-GL for qemu-devel@nongnu.org; Fri, 23 Apr 2021 05:16:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1619169388; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=o2epj5cx2PXwSw98RVwKpXJs2zl0DSdcv6Js5quoOHw=; b=i1f3R3K8SxuP+t6klEln6EucV/lnVH6tuqcB1c6azfna1je84lfo72RbvjeH3B3+qA73cd WqMc4UwOfhMuOvVcVVkY4sIEty6O8WZtCSEbB12LfgwOwtND8CWkhcUqzK6W+Y3reo/7Og z4xj4MlSbBlKroYqezAuRPgC/vPRk/4= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-290-1-HqIjHLOW2XyzS07UO4BA-1; Fri, 23 Apr 2021 05:16:26 -0400 X-MC-Unique: 1-HqIjHLOW2XyzS07UO4BA-1 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A829A81744F; Fri, 23 Apr 2021 09:16:25 +0000 (UTC) Received: from redhat.com (ovpn-112-17.ams2.redhat.com [10.36.112.17]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B9B381865D; Fri, 23 Apr 2021 09:16:24 +0000 (UTC) Date: Fri, 23 Apr 2021 10:16:21 +0100 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= To: Ralph Schmieder Subject: Re: socket.c added support for unix domain socket datagram transport Message-ID: References: <1C0E1BC5-904F-46B0-8044-68E43E67BE60@gmail.com> MIME-Version: 1.0 In-Reply-To: <1C0E1BC5-904F-46B0-8044-68E43E67BE60@gmail.com> User-Agent: Mutt/2.0.5 (2021-01-21) X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=berrange@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Received-SPF: pass client-ip=170.10.133.124; envelope-from=berrange@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= Cc: qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" On Fri, Apr 23, 2021 at 08:56:48AM +0200, Ralph Schmieder wrote: > Hey... new to this list. I was looking for a way to use Unix domain sockets as a network transport between local VMs. > > I'm part of a team where we run dozens if not hundreds of VMs on a single compute instance which are highly interconnected. > > In the current implementation, I use UDP sockets (e.g. something like > > -netdev id=bla,type=socket,udp=localhost:1234,localaddr=localhost:5678) > > which works great. > > The downside of this approach is that I need to keep track of all the UDP ports in use and that there's a potential for clashes. Clearly, having Unix domain sockets where I could store the sockets in the VM's directory would be much easier to manage. > > However, even though there is some AF_UNIX support in net/socket.c, it's > > - not configurable > - it doesn't work > > As a side note, I tried to pass in an already open FD, but that didn't work either. > > So, I added some code which does work for me... e.g. > > - can specify the socket paths like -netdev id=bla,type=socket,unix=/tmp/in:/tmp/out > - it does forward packets between two Qemu instances running back-to-back > > I'm wondering if this is of interest for the wider community and, if so, how to proceed. As a general rule, any place in QEMU that supports sockets, ought to support all of IPv4, IPv6 and UNIX sockets. Where there are gaps it generally just needs someone motivated to provide a patch. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|