Issue 19508: Some constants specified in PSM table 9.4 conflict with the ones used in wireshark (ddsi-rtps-rtf) Source: Real-Time Innovations (Dr. Gerardo Pardo-Castellote, Ph.D., gerardo(at)rti.com) Nature: Uncategorized Issue Severity: Summary: In table 9.4 the the PSM RTPS define ReliabilityKind_t defines  RELIABLE as having the value 3. However the Wireshark packet dissector defines ReliabilityKind_t RELIABLE as having the value 2. In table 9.4 the PSM RTPS specification defines LOCATOR_KIND_UDPv6 having the value 2. However the Wireshark packet dissector defines LOCATOR_KIND_UDPv6 as having the value 8. The vendors interoperate and used Wireshark to fine-tune their discovery therefore they are actually using the Wireshark-defined values rather than the ones in table 9.4 Proposed resolution: Modify Table 9.4 entry for ReliabilityKind_t from: #define RELIABLE 3 to #define RELIABLE 2 Modify Table 9.4 entry for Locator_t from: #define LOCATOR_KIND_UDPv6 2 to #define LOCATOR_KIND_UDPv6 8 Resolution: Revised Text: Actions taken: July 3, 2014: received issue Discussion: End of Annotations:===== ogle-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to :content-type; bh=anTTv5uDe10eLBXWncwlN87DMHjgGAr0cG7M9LxRCg8=; b=EsF0H2yo83LmZuPCXD53o1lxoQshhjnwaPKo7czVJr/Sl/HBsONTgY9RyDs2XAgQB/ 7dsct6fMa0s1UqFuoNE4FDQiyolLJsa95rKCt/8djHLmWlRo7e2TE8TykSUXaR7o6bVg O0VKV3wftTqmDSs4TWIYvwKezSmTUFfC8cbzw8pqt1ZR1K8mDFS0kMgcTAR5XWTHR9XZ E7D3GKvFpkV+SRtFaeK+PO85PCGxyIIoBJM3gNJS9lyzZdAeS/cqFUQatf8IfHMvQKL9 OBhp4GPSJxb8837vqGQ8tUp0Cqm9RiXFdihbdHLZNnotnqPEb9Y8bEd4RdXX2qdmmTJT sUvg== X-Gm-Message-State: ALoCoQmSIKfXmLOSigT10o2CJ2vCEjNlCQ15k5uXmNai7QBPdHWIsDl/1+fO+2qZRQxuVLxHxx86 X-Received: by 10.42.184.196 with SMTP id cl4mr13439817icb.0.1404429117052; Thu, 03 Jul 2014 16:11:57 -0700 (PDT) From: Gerardo Pardo Date: Thu, 3 Jul 2014 16:11:36 -0700 Subject: ddsi-rtps-rtf issue: Some constants specified in PSM table 9.4 conflict with the ones used in wireshark To: issues@omg.org X-Virus-Scanned: amavisd-new at omg.org Summary: In table 9.4 the the PSM RTPS define ReliabilityKind_t defines  RELIABLE as having the value 3. However the Wireshark packet dissector defines ReliabilityKind_t RELIABLE as having the value 2. In table 9.4 the PSM RTPS specification defines LOCATOR_KIND_UDPv6 having the value 2. However the Wireshark packet dissector defines LOCATOR_KIND_UDPv6 as having the value 8. The vendors interoperate and used Wireshark to fine-tune their discovery therefore they are actually using the Wireshark-defined values rather than the ones in table 9.4 Proposed resolution: Modify Table 9.4 entry for ReliabilityKind_t from: #define RELIABLE 3 to #define RELIABLE 2 Modify Table 9.4 entry for Locator_t from: #define LOCATOR_KIND_UDPv6 2 to #define LOCATOR_KIND_UDPv6 8 Date: Fri, 31 Oct 2014 10:42:29 -0500 From: Adam Mitz User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 To: ddsi-rtps-rtf@omg.org Subject: [Issue 19508] Some constants specified in PSM table 9.4 conflict with the ones used in wireshark X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at ociweb.com X-Spam-Status: No, hits=-101.6 tagged_above=-300.0 required=2.0 tests=BAYES_00, USER_IN_WHITELIST X-Spam-Level: X-Virus-Scanned: amavisd-new at omg.org I'm not opposed to making changes here but I'm concerned with considering Wireshark as authoritative. There are plenty of bugs in there too... ReliabilityKind_t really should be removed from RTPS spec since DDS spec already has ReliabilityQosPolicyKind. Unfortunately the existing practice doesn't match up. DDS: Best Effort is 0, Reliable is 1 RTPS spec: Best Effort is 1, Reliable is 3 RTPS actual usage: Best Effort is 1, Reliable is 2 So for this one, we'll have to go with Gerardo's proposed resolution. In addition, edit table 9.12 to indicate that the encoding of PID_RELIABILITY is not based on the DDS structure ReliabilityQosPolicy. For Locator_t's UDPv6 constant, I don't agree with changing it to match wireshark. We have in OpenDDS: const long LOCATOR_KIND_UDPv6 = 2; as per the published formal spec. The alternate value (8) could be added along with the existing value.