Subject: |
Re: Question PVA environment variable |
From: |
"Kasemir, Kay via Core-talk" <core-talk at aps.anl.gov> |
To: |
Michael Davidsaver <mdavidsaver at gmail.com>, "Bellister, ,Jesse" <jesseb at slac.stanford.edu>, "Williams Jr., Ernest L." <ernesto at slac.stanford.edu> |
Cc: |
EPICS core-talk <core-talk at aps.anl.gov>, "Shroff, Kunal" <shroffk at bnl.gov>, "Zelazny, Michael Stanley" <zelazny at slac.stanford.edu> |
Date: |
Thu, 17 Nov 2022 14:42:16 +0000 |
Thanks for figuring this out!!
So pvAccessJava now always uses IPv4 for the UDP socket. The newer Java implementation which supports IPv4 and IPv6 creates separate sockets for INET(4) vs. INET6 UDP, trying to join the local multicast group only from the the IPv4 socket, which seems to always
succeed.
I guess eventually we'll need a way to disable the IPv4 code, but don't expect that soon.
From: Michael Davidsaver <mdavidsaver at gmail.com>
Sent: Wednesday, November 16, 2022 11:38 PM
To: Bellister, ,Jesse <jesseb at slac.stanford.edu>; Williams Jr., Ernest L. <ernesto at slac.stanford.edu>
Cc: EPICS core-talk <core-talk at aps.anl.gov>; Zelazny, Michael Stanley <zelazny at slac.stanford.edu>; Kasemir, Kay <kasemirk at ornl.gov>; Shroff, Kunal <shroffk at bnl.gov>
Subject: [EXTERNAL] Re: Question PVA environment variable
On 11/16/22 16:30, Bellister, ,Jesse wrote:
> Hi all,
>
> One further update. The specific commit which fixed the issue was this one here:
>
> hxxps://github.com/epics-base/epicsCoreJava/pull/93 <hxxps://github.com/epics-base/epicsCoreJava/pull/93>
>
> This was confirmed by undoing that one change while leaving everything else the same, which resulted in seeing the incorrect multicast traffic again.
>
> Based on the date of the change, it appears that versions of epicsCoreJava prior to 7.0.7 would exhibit the behavior we were seeing, and anything from that commit onward should be fine (including 7.0.7 and 7.0.8).
I suspect there were other variables at play.
Perhaps the formerly ubiquitous preferIPv4Stack
property effected the default ProtocolFamily?
> -Djava.net.preferIPv4Stack=true
Also, did you be chance see this message being logged?
> Failed to initialize local multicast, funcionality disabled
hxxps://github.com/epics-base/epicsCoreJava/issues/129
> Thanks!
> Jesse
>
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> *From:* Core-talk <core-talk-bounces at aps.anl.gov> on behalf of Bellister, ,Jesse via Core-talk <core-talk at aps.anl.gov>
> *Sent:* Wednesday, November 16, 2022 12:23 AM
> *To:* Williams Jr., Ernest L. <ernesto at slac.stanford.edu>; Michael Davidsaver <mdavidsaver at gmail.com>
> *Cc:* EPICS core-talk <core-talk at aps.anl.gov>; Zelazny, Michael Stanley <zelazny at slac.stanford.edu>
> *Subject:* Re: Question PVA environment variable
> We were using the 7.0.2 build of epicsCoreJava, which included version 5.1.2 of the epics-pvaccess jar.
>
> This version was causing pv name query re-transmits to go out on the physical network interface, instead of just being confined to the local loopback as expected. This resulted in flooding the network with multicast traffic for erroneous name queries. Multicast
traffic is expected as per the pvAccess specification
>
>> When a client or server receives a packet containing a Search message with flagged "sent as unicast" it may resend this as a multicast to "224.0.0.128"
>> through the loopback interface ("127.0.0.1").
>
> But it should always be confined to the loopback.
>
> After updating to 7.0.8 which includes version 5.1.7 of the epics-pvaccess jar, the issue appears to be resolved. What specifically changed to resolve the issue between the versions is still being investigated.
>
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> *From:* Williams Jr., Ernest L. <ernesto at slac.stanford.edu>
> *Sent:* Wednesday, November 16, 2022 12:14 AM
> *To:* Michael Davidsaver <mdavidsaver at gmail.com>
> *Cc:* Kim, Kukhee <khkim at slac.stanford.edu>; Zelazny, Michael Stanley <zelazny at slac.stanford.edu>; EPICS core-talk <core-talk at aps.anl.gov>; Bellister, ,Jesse <jesseb at slac.stanford.edu>; Williams Jr., Ernest L. <ernesto at slac.stanford.edu>
> *Subject:* Re: Question PVA environment variable
> This issue is only happening with epicsCoreJava package we were using
>
> Jesse, please copy in the details here
> Jesse is also in contact with Kunal and Kay
>
> Sent from my iPhone
>
>> On Nov 15, 2022, at 11:11, Michael Davidsaver <mdavidsaver at gmail.com> wrote:
>>
>> I realize I forgot to CC the core-talk list.
>>
>>> On 11/9/22 06:51, Michael Davidsaver wrote:
>>>> On 11/8/22 22:37, Kim, Kukhee wrote:
>>>> Hi Michael,
>>>>
>>>> Thank you so much for your advice.
>>>> The multicast address is: 224.0.0.128
>>> Ah, right... This address is used by PVA instead of something like caRepeater.
>>> It should only be sent via the loopback interface through.
>>> You can run "ip maddr" to see that 224.0.0.128 appears for the "lo" interface,
>>> but not for any others.
>>>> $ ip maddr
>>>> 1: lo
>>>> inet 224.0.0.128 users 2
>>>> inet 224.0.0.1
>>>> inet6 ff02::1
>>>> inet6 ff01::1
>>> ...
>>> Are you seeing packets with this destination address actually going out on a wire?
>>>> We have PVA address setup as the followings:
>>>>
>>>> EPICS_PVA_ADDR_LIST='<broadcast addr for subnet> 255.255.255.255'
>>>> EPICS_PVA_AUTO_ADDR_LIST=NO
>>>> EPICS_PVA_BROADCAST_PORT=5076
>>>> EPICS_PVA_SERVER_PORT=507
>>>>
>>>> Hi Ernest and Mike,
>>>>
>>>> Can we capture the packet which goes to the multicast address to recognize searching or beacon?
>>>>
>>>> Thank you for your help. I will update you.
>>>>
>>>> Thank you.
>>>> Best regards,
>>>> Kukhee
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>>> *From:* Michael Davidsaver <mdavidsaver at gmail.com>
>>>> *Sent:* Tuesday, November 8, 2022 9:14 PM
>>>> *To:* Kim, Kukhee <khkim at slac.stanford.edu>
>>>> *Cc:* Zelazny, Michael Stanley <zelazny at slac.stanford.edu>; core-talk at aps.anl.gov <core-talk at aps.anl.gov>
>>>> *Subject:* Re: Question PVA environment variable
>>>> On 11/8/22 13:00, Kim, Kukhee via Core-talk wrote:
>>>>> Hi Everyone,
>>>>>
>>>>> We just realized that some of our servers send out packets to port 5076 in multicasting address.
>>>>
>>>> What multicast address(es) are you seeing?
>>>>
>>>> Can you look (with packet capture) to see if these are
>>>> search or beacon messages?
>>>>
>>>>
>>>>> Since, the multicasting address is used for some of specific services, we would like to prevent the PVA, PVXS traffic to the multicasting address.
>>>>
>>>> PVXS should not send any multicast traffic by default.
>>>> (we have no assigned addresses to use for PVA)
>>>>
>>>>
>>>>> Is there any PVA environment variables to control it?
>>>>
>>>> hxxps://mdavidsaver.github.io/pvxs/netconfig.html <hxxps://mdavidsaver.github.io/pvxs/netconfig.html> <hxxps://mdavidsaver.github.io/pvxs/netconfig.html <hxxps://mdavidsaver.github.io/pvxs/netconfig.html>>
>>>>
>>>> There are a couple, all of the form EPICS_PVA*_ADDR_LIST
>>>>
>>>>
>>>>> Thank you so much for your help and support!
>>>>>
>>>>> Best regards,
>>>>> Kukhee
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Kukhee Kim | *Engineering Physicist *
>>>>>
>>>>> Advanced Controls Department
>>>>>
>>>>> SLAC National Accelerator Laboratory | Menlo Park, CA
>>>>>
>>>>> p: 650.926.4912 | m: 669.300.8192 | email: khkim at slac.stanford.edu
>>>>>
>>>>
>>
|
- References:
- Question PVA environment variable Kim, Kukhee via Core-talk
- Re: Question PVA environment variable Michael Davidsaver via Core-talk
- Re: Question PVA environment variable Michael Davidsaver via Core-talk
- Re: Question PVA environment variable Williams Jr., Ernest L. via Core-talk
- Re: Question PVA environment variable Bellister, ,Jesse via Core-talk
- Re: Question PVA environment variable Bellister, ,Jesse via Core-talk
- Re: Question PVA environment variable Michael Davidsaver via Core-talk
- Navigate by Date:
- Prev:
Build failed: EPICS Base 7 base-7.0-709 AppVeyor via Core-talk
- Next:
Compression record returns double value for field "N" over channel access Georg Weiss via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
<2022>
2023
2024
- Navigate by Thread:
- Prev:
Re: Question PVA environment variable Michael Davidsaver via Core-talk
- Next:
Build failed in Jenkins: epics-base-7.0-win64 #346 APS Jenkins via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
<2022>
2023
2024
|