Home
Getting Started - Community RTI Connext Users
Contents
1. v Pixels per tick Y Axis Unit Packets Tick Y sce Amo 10 5 0 10 0s 15 0s 20 0s 25 0s 30 0s 35 0s t gt X Axis Figure 6 3 Protocol Hierarchy 6 4 Fr 6 5650 paci es fon end Pack NV Frame Y Linux cooked mode capture gt Internet Protocol gt Y User Datagram Protocol Data Routing Information Protocol RealTime Publish Subscribe Wire Protocol 100 00 100 00 100 00 100 00 4 69 v Remote Procedure Call 21 88 Yellow Pages Service 21 88 Domain Name Service 6 25 lt NetBIOS Datagram Service 10 16 V SMB Server Message Block Protocol 10 16 V SMB MailSlot Protocol 10 16 Microsoft Windows Browser Protocol 10 16 NetBIOS Name Service 7 03 Hypertext Transfer Protocol 12 50 Network Time Protocol 1 56 128 25957 128 25957 128 25957 128 25957 7636 3960 3252 3252 966 3353 3353 3353 3353 846 5304 184 0 005 0 005 0 005 0 005 0 001 0 001 0 001 0 000 0 001 0 001 0 001 0 001 0 000 0 001 0 000 0 0 0 0 13 16 0 0 0 0 3252 966 3353 5304 184 0 000 0 000 0 000 0 000 0 000 0 001 0 000 0 000 0 000 0 000 0 001 0 000 0 001 0 000 Providing Information to RTI Support 6 3 Providing Information to RTI Support If you ever need to contact RTI support for an issue related to Connext the captured packets will help RTI support diagnose the problem faster especially when accompa
2. 3 Consider turning these off see Note 4 Start capturing packets e If Hide capture info dialog is selected click Stop on the Capture win dow or use the j button located on the far right of the main window s tool bar you may need to resize the main window to see it e If Hide capture info dialog is not selected click Stop in the Capture Dia log window With the steps above you will capture all the packets that come through your selected interface Such an indiscriminate capture session may yield hundreds or thousands of packets While modern computers are amazingly fast processing each captured packet does take a certain amount of time Filtering out uninteresting packets can help you squeeze the most out of your computer Therefore we suggest that you apply a capture filter so that Wireshark only captures the type of packets you want to see Simply enter a valid capture filter string in the Capture Filter box see Figure 4 1 before you press Capture Table 4 1 provides some examples For more information see Wireshark s documentation Help Wireshark Online User s Guide Table 4 1 Example Capture Filters To Capture Enter Capture only RTPS udp 8 4 0x52545053 or ip 6 2 amp Ox1FFF 0 Only UDP packets udp Only UDP multicast packets udp and ip multicast Only non UDP multicast udp and not ip multicast Only UDP from to 10 10 1 192 udp and host 10
3. ENTITYID_BUILTIN_SUBSCRIPTIONS_WRITER 0x000004c2 O Data m keyHashsuffix 0x00000304 CApplication defined reader with key 0x000003 O submessage writerseqNumber 1 an B serializedbata E PID TOPIC NAME Example Foo EB PID TYPE NAME Foo E PID RELIABILITY BEST EFFORT RELIABILITY QOS E PID RECV QUEUE SIZE deprecated 0x00000400 E PID TIME BASED FILTER 0 sec v Hj PID LIVELINESS kind AUTOMATIC LIVELINESS QOS lease duration INFINITE T Be ee eee I DTD DIIDARTI TTY VOI ATTI C NIDARTI TTY ANS n io Raw data gt a P PAPAE PUR POR OR NOR SS intemet Protocol ip 20 bytes D 65 The Packet List pane on top lists the sequence of captured submessages The middle pane shows a decoded view of a selected packet The bottom pane shows the raw data ia any selected field in a packet You can customize these views from the View menu To change which columns are displayed select Edit Preferences User Interface Columns Available Documentation 1 1 Available Documentation I RTI Wireshark Release Notes Please see RTI_Wireshark_ReleaseNotes pdf for system requirements installation instructions and other important information 21 RTI Core Libraries and Utilities User s Manual This document provides details on the Connext API and describes how RTPS packets are used by Connext based applications In particular you should review the Discovery chapter Open lt NDDSHOME gt doc pdf RTI_CoreLibrariesAndUtilities UsersManual pdf
4. nied by a Connext log created with a high verbosity setting See the RTI Core Libraries and Utilities User s Manual s Troubleshooting chapter for more information on setting verbosity 6 5 sesn IDOYODId 9 Practical Uses with RTI Applications
5. this information is available in the Real Time Publish Subscribe Wire Pro tocol Specification see Available Documentation Section 1 1 This chapter includes the following sections L RTPS Submessage Types Section 5 1 LI Displaying Packets Section 5 2 LJ Analyzing Packets from Connext Applications Section 5 3 5 1 Sjo onpg BulzAjouy G Analyzing RTPS Packets 5 1 Figure 5 1 5 2 5 2 RTPS Submessage Types Each RTPS packet message consists of a header and one or more submessages When you display captured packets the Info column seen in Figure 5 1 lists the types of submessages in each packet Analyzing Packets 239 192 1 Oxdada640 PF SE Oa640e Ox18 1192 1 x0a0a640e 0x18880 020856 10 282 1 0x0a0a640e Ox18880 ACKNACK 021401 sd a Ek rmn us Ox0a0a640e 0x18880 DATACW 021616 sL0 Bs L C OxOa0a640e 0x18880 DATA 022254 Be Ne 39 192 1 0x0a0a640e Ox18880 DATA 140703 sO 92 1 OxOa0a640e 0x18880 DATA 711920 10 10 5 4282 1 OxOaQ0a640e 0x18880 HEARTBEAT 992846 LO i 492 1 0x0a0a640e Ox18880 HEARTBEAT 022182 Be 5 282 1 OxOaQ0a640e 0x18880 NOKEY DATA 022386 Ee LO Lp 0x0a0a6402 Ox18880 NOKEY DATA 022576 10 10 100 14 239 192 1 RTPS 0x0a0a640e Ox18880 NOKEY DATA 239 ata 22 The Info column shows you what submessages are in each packet The highlighted packet contains a Reader announcement Table 5 1 lists the submessages you may see in the Info Column The detail
6. where NDDSHOME is where you installed Connext L1 RTPS Specification Please see http www omg org spec DDSI 2 1 J Wireshark online help There is extensive online help included with Wireshark Select Help Contents from the menubar for a detailed user s guide in HTML format L Wireshark User s Guide This PDF document describes how to use Wireshark s fea tures It is not included in the installation but can be downloaded from Wire shark s website www wireshark org docs Note that it may pertain to a slightly different version of Wireshark 1 2 Reading Guide We suggest that you read the documentation in the following order 1 Read this chapter to become familiar with the system requirements LJ Read the RTI Wireshark Release Notes I Follow the steps in Chapter 2 Installation J Read Chapter 4 Capturing RTPS Packets for a quick overview of how to capture RTPS packets J Read Chapter 5 Analyzing RTPS Packets to learn how to analyze each type of RTPS packet by looking at sample files of captured RTPS packets During this process you will need to reference the Real Time Publish Subscribe Wire Protocol Specification I Read Chapter 6 Practical Uses with RTI Applications for ideas on how to use Wireshark during Connext application development uoyonpoiu Introduction l Consult the Wireshark online help and user s guide for information on other fea tures 1 3 How to Get Support Technical sup
7. 100 10 20 1 86 RTPS2 INFO_DST ACKNACK Table 5 4 Analysis of User Data Sample Trace Direction Packet Description Data packet sent to the reader containing both INFO_TS and DATA submessages Packet has sequence number 2 expand the Appl App2 protocol tree in the Packet Details pane and check the writerSeqNumber value as seen in Figure 5 8 2 HEARTBEAT from writer to reader ACKNACK to acknowledge all data packets up to but not including sequence number 3 expand the protocol tree in the PERI Ene 2 Packet Details pane and check the readerSNState bitmapBase value 4 Another data packet sequence number 3 Appl gt App2 5 HEARTBEAT from writer to reader App1l lt App2 6 ACKNACK to acknowledge packet 4 7 Another data packet sequence number 4 App1 App2 8 HEARTBEAT from writer to reader App1 lt App2 9 ACKNACK to acknowledge packet 7 5 13 Sjo onpg BulzAjouy G Analyzing RTPS Packets Figure 5 7 User Data Sample Packet Flow App App 2 5 14 Analyzing Packets from Connext Applications Figure 5 8 Examining Packet Details Select a packet in the Packet List No Protocol GUID prefix Info 1 1 EE 1 2 2 000907 10 20 1 86 10 10 30 100 RTPS2 INFO_DST HEARTBEAT 3 2 001181 10 10 30 100 10 20 1 86 RTPS2 INFO_DST ACKNACK 4 4 000938 10 20 1 86 10 10 30 100 RTPS2 INFO_TS DATA 5 5 003878 10 20 1 86 10 10 30 100 RTPS2 INFO_DST HEARTBEA
8. HEARTBEAT 14 239 192 1 2 RTPS 0xO0a0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT EFI 330 103 3 3 nne Av An Nalan 0119000 _Lurantmrat Displaying RTPS and RTPS2 Messages Table 5 2 briefly describes the meaning of each field that can be used in a display filter for RTPS To display packets for RTPS2 change the prefix from rtps to rtps2 These fields can also be used in coloring rules see Section 5 2 2 To display both RTPS and RIPS2 rules must include both versions logically OR ed together For details on the meaning of these fields see the Real Time Publish Subscribe Wire Protocol Specification see Available Documentation Section 1 1 Table 5 2 Display Filter Fields for RTPS Messages Field Description Header fields rtps version Protocol version major minor rtps version minor Protocol minor version rtps version major Protocol major version rtps domain id Domain ID of this communication see note below rtps participant idx Participant index see note below rtps traffic nature Nature of the traffic see note below rtps vendorld Vendor ID 5 7 Sjo onpg BulzAjouy G Analyzing RTPS Packets Table 5 2 Display Filter Fields for RTPS Messages Field Description 7 GUID Prefix of the packet this does NOT match a GUID rtps guidPrefix Prefix from a submessage rtps hostId Host ID c
9. QoS Bit 1 Bit 0 Text 0 0 zz 0 1 D 1 0 U 1 1 UD Where bit 0 Disposed flag and bit 1 Unregistered flag For example you may see DATA p __ DATA p _D DATA_BATCH Contains information regarding the values of a batch of application data objects Contains a fragment of information regarding the value of an application Data object DATA_FRAG In RTI Data Distribution Service 4 2e and higher and in Connext 4 5f and higher a new format is used captured submessages of the earlier format are displayed as DATA FRAG deprecated DATA SESSION Contains information regarding the value of an application Data object when sent by a multi channel Writer Sjo onpg BulzAjouy S Analyzing RTPS Packets Table 5 1 RTPS 2 x Submessage Types Submessage Type Description GAP Describes the information that is no longer relevant to Readers HEARTBEAT Describes the information that is available in a Writer HEARTBEAT BATCH Describes the information that is available in a Writer for batched data HEARTBEAT_SESSION Describes the information that is available in a multi channel Writer HEARTBEAT_VIRTUAL Describes the information that is available from virtual Writers INFO_SOURCE Provides information about the source from which subsequent Entity submessages originated INFO_DESTINATION Provides information about the final destination of subsequent Entity submessages INFO_
10. already installed it will be installed with Wireshark If it is already installed you will be asked if you want to re install WinPcap or skip the WinPcap installation You can safely skip re installing WinPcap Installing Wireshark on Linux Red Hat Systems Install Wireshark using the Red Hat Package Manager RPM 1 Login as super user 2 cd lt location of the distribution file gt 3 rpm i Wireshark lt version gt lt architecture gt rpm For more information on installing RPMs please see http www rpm org Installing Wireshark on Linux Debian Systems Install Wireshark using Debian packages Note that at least two packages need to be installed a common package and either a Wireshark or Tshark package The Wireshark package installs the GUI version while the Tshark package installs a terminal based non GUI version You can install either one of these packages or both For more information on Debian packages please see http packages debian org 1 Login as super user 2 Enter cd location of distribution files 3 Enter dpkg i Wireshark common version architecture deb 4 To install Wireshark enter dpkg i Wireshark lt version gt lt architecture gt deb 5 To install Tshark enter dpkg i Tshark lt version gt lt architecture gt deb Installing Wireshark on Solaris Systems 2 5 2 6 Installing Wireshark on Solaris Systems Before Installation L Make sure you have
11. installed the required packages listed in Section 1 1 in the Release Notes J Make sure you have modified the font cache configuration file and rebuilt the font cache see Section 1 1 1 in the Release Notes L J Make sure you have root privileges Installation 1 cd location of distribution file gt 2 gunzip Wireshark lt version gt lt architecture gt gz 3 pkgadd d Wireshark lt version gt lt architecture gt Uninstalling Wireshark J To uninstall from a Linux Red Hat system while logged in as root enter rpm e wireshark 1 To uninstall from a Linux Debian system while logged in as root a To uninstall the common package dpkg r wireshark wireshark common b To uninstall Wireshark dpkg r wireshark_common wireshark c To uninstall Tshark dpkg r wireshark_common tshark LJ To uninstall from a Solaris system while logged in as root enter pkgrm wireshark LJ To uninstall from a Windows system From the Start menu select Control Panel Add Remove Programs or Programs and Features Wireshark 2 3 UONDI DISUI Zz Installation 2 4 Chapter 3 Starting Wireshark Important To capture packets from the network you must run Wireshark as root administrator On Linux systems usr bin wireshark amp On Solaris systems usr local bin wireshark amp On Windows systems Use the Start menu to select Wireshark Alternatively on Linux and Solaris systems to capture with Tshark the termi
12. prime ARP tables and to see if the locators are reachable destina tions Since there is no other Connext application in the system in the same domain these locators are unreachable as packets 3 and 4 Because the participant is newly created it sends its information to each locator as packets 5 and 6 These are to unreachable destinations packets 7 and 8 It then again sends its information packets 9 and 10 in accor dance to its initial_participant_announcement QoS of 1 Again these are to unreachable destinations packets 11 and 12 App1 lt App2 13 18 Similar to the writer participant when the reader participant starts Connext announces the new participant Note the destination of the writer participant is reachable so no unreachable destination packets are generated 5 18 Analyzing Packets from Connext Applications Table 5 5 Analysis of Sample File s Packets Direction Packet Description App1 App2 19 20 When the writer participant learns about the new reader participant it uses HEARTBEATs and ACKNACKs from its builtin discovery endpoints to tell the reader participant about the writer and readers it has First it tells the reader participant about its builtin participant liveliness reader packet 19 and writer packet 20 21 22 Repeat announcements about the writer participant which reduce the chance that the newly created reader participan
13. ways See the Wireshark User s Guide for details To understand the elements in the strings refer to the Real Time Publish Subscribe Wire Protocol Specification see Available Docu mentation Section 1 1 Figure 5 5 shows a sample display Figure 5 5 Using Coloring Rules UU UZUSIO IU lIU lUU lI4 PEL E R PEE R RTPS UXUAUabI UE UXISSSU ACKNACK 21 0 021401 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 DATA w 22 0 021616 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 DATA 23 0 022254 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 DATA 24 0 140703 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 DATA 25 2 711920 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 HEARTBEAT 26 2 992846 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 HEARTBEAT 27 3 022182 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 NOKEY DATA 28 4 022386 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 NOKEY DATA 29 5 022576 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 NOKEY DATA 30 5 713828 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 HEARTBEAT 31 5 993371 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 HEARTBEAT 32 5 993520 10 10 100 14 239 192 1 2 RTPS 0x0a0a6408 0x18880 ACKNACK 33 5 993643 10 10 100 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 ACKNACK 5 10 Coloring rules make is easy to see different types of submessages To create a new coloring rule 1 Select View Co
14. 0 RTPS2 INFO DST HEARTBEAT 24 5 446911 10 10 100 65 10 10 30 100 RTPS2 INFO DST HEARTBEAT 25 5 446963 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 26 5 447070 10 10 100 65 10 10 30 100 RTPS2 INFO DST ACKNACK 27 5 447220 10 10 100 65 10 10 30 100 RTPS2 INFO DST ACKNACK 28 5 447630 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 29 5 447871 10 10 30 100 10 10 100 65 RTPS2 INFO TS DATA p 30 5 447886 10 10 30 100 10 10 100 65 RTPS2 INFO TS DATA p 31 5 447909 10 10 30 100 10 10 100 65 RTPS2 INFO DST HEARTBEAT 32 5 448129 10 10 30 100 10 10 100 65 RTPS2 INFO DST HEARTBEAT 33 5 448144 10 10 30 100 10 10 100 65 RTPS2 INFO DST HEARTBEAT 34 5 448154 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 35 5 448374 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 36 5 448588 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 37 5 448606 10 10 30 100 10 10 100 65 RTPS2 INFO DST HEARTBEAT 38 5 448617 10 10 30 100 10 10 100 65 RTPS2 INFO DST HEARTBEAT 39 5 449305 10 10 100 65 10 10 30 100 RTPS2 INFO DST HEARTBEAT 40 5 449490 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 41 5 457424 10 10 100 65 10 10 30 100 RTPS2 INFO DST ACKNACK 42 5 457532 10 10 100 65 10 10 30 100 RTPS2 INFO DST HEARTBEAT 43 5 457603 10 10 100 65 10 10 30 100 RTPS2 INFO DST HEARTBEAT 44 5 457623 10 10 30 100 10 10 100 65 RTPS2 INFO TS INFO DST DATA r HEARTBEAT 45 5 457695 10 10 100 65 10 10 30 100 RTPS2 INFO TS
15. 10 1 192 Only packets from IP 10 10 100 14 to 10 10 100 74 addresses src host 10 10 100 14 and dst host 10 10 100 74 Note Wireshark does not validate capture filter strings as they are entered It will not alert you about an incorrect expression until after you press the Capture button It may be helpful for you to test your capture filter string with Wireshark s argument to try a capture filter expression See Help Manual Pages wireshark For help analyzing captured RTPS packets see Chapter 5 4 3 18 9Dq 6uunjdpo 7 Capturing RTPS Packets 4 4 Chapter 5 Analyzing RTPS Packets This chapter will help you interpret the submessages within captured RTPS packets There are two levels of analysis that you may be interested in I A high level understanding of what is transpiring during a sequence of captured RTPS packets This chapter will help you learn to read a sequence of packets by walking through the provided sample capture files You may also find it helpful to review the Discovery chapter in the RTI Core Libraries and Utilities User s Manual L A more in depth understanding of an individual packers contents This chapter will show you how to display the decoded contents of individual packets Wireshark decodes each RTPS packet and shows you the value for each field in the packet s structure While the low level details of a packet s contents are beyond the scope of this manual
16. 10 20 1 86 is running a Connext publishing application Appl l Host 2 10 10 30 100 is running a Connext subscribing application App2 J The QoS for the writer and the reader have been set up to use Reliable communi cations I Appl writes user data every 4 seconds To create the sample capture file Wireshark started capturing packets on the subscrib ing host after the discovery process completed using the following capture filter rtps2 amp amp ip src 10 10 30 100 ip dst 10 10 30 100 Figure 5 6 shows the packets captured by Wireshark which includes three types of RTPS packets Data from the writer to the reader IJ Acknowledgements from the reader to the writer L Heartbeats sent regularly from the writer to the reader Analyzing Packets from Connext Applications Table 5 4 and Figure 5 7 describe the trace shown in Figure 5 6 Figure 5 6 User Data Sample Packets No Time Source Destination Protocol GUID prefix Info 1 0 000000 20 10 INFO_TS DATA 2 2 000907 10 20 1 86 10 10 30 100 RTPS2 INFO_DST HEARTBEAT 3 2 001181 10 10 30 100 10 20 1 86 RTPS2 INFO_DST ACKNACK 4 4 000938 10 20 1 86 10 10 30 100 RTPS2 INFO_TS DATA 5 5 003878 10 20 1 86 10 10 30 100 RTPS2 INFO_DST HEARTBEAT 6 5 004171 10 10 30 100 10 20 1 86 RTPS2 INFO_DST ACKNACK 7 8 001939 10 20 1 86 10 10 30 100 RTPS2 INFO_TS DATA 8 8 005850 10 20 1 86 10 10 30 100 RTPS2 INFO_DST HEARTBEAT 9 8 006104 10 10 30
17. File Open command to open the file discoveryTrace pkt see Section 5 3 for its location The sample file contains a sequence of RTPS packets that illustrate the protocol when two applications use best effort communications to send receive data This scenario involves two hosts each running one Connext application J Host 1 10 10 100 65 is running a Connext publishing application Appl 1 Host 2 10 10 30 100 is running a Connext subscribing application App2 l Both applications have a maximum participant index of 1 and have each other in their initial peer list LJ All but one QoS are at default values this default includes the use of automatic discovery via the default UDPv4 transport The one non default QoS is having both applications initial participant announcements set to 1 as this reduces the number of redundant announcements in the example trace Wireshark was set up to start capturing packets before either application was started The publishing application was started first followed about 6 seconds later by the sub scribing application Figure 5 9 shows the packets captured by Wireshark Let s walk through the RTPS packets to understand what occurred in this sequence Table 5 5 describes what happened non RTPS packets are omitted In the table the term meta DATA refers to DATA packets containing meta discovery data as opposed to user data Analyzing Packets from Connext Applications Figure 5 9 Disco
18. INFO DST DATA w HEARTBEAT 46 5 457796 10 10 100 65 10 10 30 100 RTPS2 INFO DST ACKNACK 47 5 457948 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 48 5 458131 10 10 100 65 10 10 30 100 RTPS2 INFO DST ACKNACK 49 5 458150 10 10 30 100 10 10 100 65 RTPS2 INFO DST ACKNACK 50 5 460151 10 10 100 65 10 10 30 100 RTPS2 PING 51 8 037246 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA 52 12 037962 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA 53 16 037869 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA 5 17 Analyzing RTPS Packets Table 5 5 Analysis of Sample File s Packets Direction Packet Description App1 App2 When the writer participant starts Connext announces the creation of a new participant to all potential participants in the initial_peer_list Potential participants are initially calculated as for each peer in initial peer list peer participant i where i lt maximum participant index Since the participant s maximum participant index is 1 and the initial_peer_list contains only 10 10 30 100 the potential participant list is 10 10 30 100 participant 0 10 10 30 100 participant 1 Since each participant gets its own receive locator we send separate but identical packets to each potential participant listening on its own locator Before sending packets with participant information the participant sends to each receive locator a PING packet as packets 1 and 2 These packets serve to
19. REPLY Provides information about where to reply to the entities that appear in subsequent submessages The locator provided is limited to contain a single UDPv4 address and port INFO_REPLY2 Provides information about where to reply to the entities that appear in subsequent submessages The list of locators provided allows for any transport type and can accommodate 16 byte addresses INFO TS Provides a source timestamp for subsequent Entity submessages NACK FRAG Provides information on the state of a Reader to a Writer Contains information regarding the value of an application Data object that cannot be referenced by a key NOKEY DATA In Connext 4 5 and higher as well as RTI Data Distribution Service 4 2e and higher this submessage is not used NOKEY DATA FRAG Contains a fragment of information regarding the value of an application data object that cannot be referenced by a key In Connext 4 5 and higher as well as RTI Data Distribution Service 4 2e and higher this submessage is not used PAD Provides padding to meet any desired memory alignment requirements a INFO TS is an abbreviation for INFOTIMESTAMP 5 2 1 Using a Display Filter A display filter only shows packets that match a certain set of criteria You may want to start by showing only RTPS packets Wireshark provides a display filter for just this pur pose There are also predefined filters for displaying just discovery m
20. T 6 5 004171 10 10 30 100 10 20 1 86 RTPS2 INFO_DST ACKNACK 7 8 001939 10 20 1 86 10 10 30 100 RTPS2 INFO_TS DATA 8 8 005850 10 20 1 86 10 10 30 100 RTPS2 INFO_DST HEARTBEAT 9 8 006104 10 10 30 100 10 20 1 86 RTPS2 INFO_DST ACKNACK Frame 1 106 bytes on wire 106 bytes captured Ethernet II Src Vmware 91 8e 6e 00 0c 29 91 8e 6e Dst D Link 8e 9c 06 00 15 e9 8e 9c 06 Internet Protocol Src 10 20 1 86 10 20 1 86 Dst 10 10 30 100 10 10 30 100 User Datagram Protocol Src Port 37224 37224 Dst Port 18411 18411 Real Time Publish subscribe wire Protocol 2 x E Protocol version 2 1 major 2 minor 1 vendor Real Time Innovations Inc guidPrefix 0a140156 00000625 00000001 hostid 0a140156 appId 00000625 counter 00000001 Default port mapping UNICAST_USERTRAFFIC domainId 44 participantIdx 0 Submessage INFO TS Submessage DATA submessageId DATA 0x15 Flags 0x05 _____D_E octetsToNextHeader 28 Extra flags 0000000000000000 Octets to inline Qos 16 readerEntityId ENTITYID UNKNOWN 0x00000000 writerEntityId 0x80000003 Application defined writer no key 0x800000 writerSegNumber 2 amp serializedData encapsulation kind R LE encapsulation options 0000 serializedData 01000008 m mE mmm D E m m Expand the submessage details to see the sequence number and other details 5 15 Analyzing RTPS Packets 5 3 2 5 16 Analyzing the Discovery Data Sample Trace Use the
21. Using Wireshark with RTI Connext Getting Started Guide Version 1 2 3 20120831 f t Your systems Working as one 2005 2012 Real Time Innovations Inc All rights reserved Printed in U S A First printing August 2012 Trademarks Real Time Innovations RTI and Connext are trademarks or registered trademarks of Real Time Innovations Inc All other trademarks used in this document are the property of their respective owners Copy and Use Restrictions No part of this publication may be reproduced stored in a retrieval system or transmitted in any form including electronic mechanical photocopy and facsimile without the prior written permission of Real Time Innovations Inc RTI Connext software is furnished under and subject to the RTI software license agreement The software may be used or copied only under the terms of the license agreement Wireshark is Open Source software released under the terms of the GNU General Public License version 2 as published by the Free Software Foundation Technical Support Real Time Innovations Inc 232 E Java Drive Sunnyvale CA 94089 Phone 408 990 7444 Email support rti com Website https support rti com Contents Meise mERTTPP 1 1 1 1 Available Document ti n d nee rre rere dee e e ext rai 1 3 1 2 Reading Guide nee am mete rete ee e Ha e dee e edere re 1 3 1 3 Howto Get Support inssi iier di
22. d no writers App1 App2 39 Initial HEARTBEAT from participant liveliness writer of no samples written App1 lt App2 40 ACKNACK from participant liveliness reader of no samples received App1 App2 41 ACKNACK from writer participant for reader participant to resend the meta DATA for its reader 42 43 Further HEARTBEATS from the reader participant Sjo onpg BulzAjouy Ss Analyzing RTPS Packets Table 5 5 Analysis of Sample File s Packets Direction Packet Description Resent meta DATA about the reader sent in response to the ACKNACK of App1 lt App2 44 packet 41 A resent meta DATA about the writer sent in response to the ACKNACK of App1 App2 45 packet 36 App1 lt App2 46 49 ACKNACKs that all resent DATA was received successfully 50 PING from the application writer to the application reader s locator Appl App2 TP 51 53 Writer finally sends user DATA to the reader 5 20 Chapter 6 Practical Uses with RTI Applications This chapter offers a few suggestions on how Wireshark can be used during Connext application development L Debugging Discovery Problems Section 6 1 1 Visualizing Your System Section 6 2 m Providing Information to RTI Support Section 6 3 6 1 Debugging Discovery Problems While many object discovery problems are difficult to diagnose others are quite obvi ous once you use the right diagnostic tool
23. der entity ID rtps sm wrentityId Writer entity ID as it appear in a submessage rtps sm wrentityId entityKey entityKey field of the writer entity ID rtps sm wrentityId entityKind entityKind field of the writer entity ID rtps sm seqNumber Writer sequence number Displaying Packets Table 5 2 Display Filter Fields for RTPS Messages Field Description Parameters rtps param id Parameter ID rtps param length Parameter length rtps param ntpTime Any generic ntpTime used in any parameter rtps param ntpTime sec Second part of a ntpTime rtps param ntpTime fraction Fraction part of a ntpTime rtps param topicName Topic associated with a PID TOPIC rtps param strength Value of the strength parameter in a PID_STRENGTH rtps param typeName Value of PID TYPE NAME rtps param userData Raw data of PID USER DATA rtps param groupData Raw data of PID GROUP DATA rtps param topicData Raw data of PID TOPIC DATA rtps param contentFilterName Value of the content filter as sent in a PID_CONTENT_FILTER_PROPERTY parameter rtps param relatedTopicName Value of the related topic name as sent in a PID_CONTENT_FILTER_PROPERTY parameter rtps param filterName Value of the filter name as sentina PID_CONTENT_FILTER_PROPERTY parameter rtps issueData Value of the issue data transferred in the packets Note T
24. et analyzer that supports many network protocols including Real Time Publish Subscribe RTPS the wire protocol used by RTI Connext formerly RTI Data Distribution Service middleware Wireshark can be used to capture and analyze RTPS packets from Connext applications It supports RTPS 2 1 and lower and is specifically tailored to make RTPS packet analysis easier by including 1 A set of predefined filters to quickly select different groups of packets from the RTPS protocol IH A column in the Packet List that shows the GUID Prefix for each RTPS packet This value uniquely identifies a DomainParticipant within a Domain J Coloring rules that highlight important RTPS packets Packets not strictly related to Connext traffic are grayed out Network packet and traffic analyzers are used during application development and dis tributed system configuration to monitor the packets over the network You can use fil ters to capture specific types of packets then analyze the captured packets This manual will help you use Wireshark to analyze RTPS packets This analysis will give you information on two levels IJ A high level look at the RTPS submessages that are flowing between your Con next applications LI A detailed look at the contents of individual packets Wireshark s main window makes it easy to see both views Figure 1 1 shows the main window and points out some important features uoygonpoiu Introduction Figure 1 1 Wi
25. eta traffic or just user data traffic Displaying Packets To display RTPS packets only 1 In the main window clear anything you have in the filter text box with the Clear button then click the Filter button 2 Select the preconfigured filter named Only RTPS packets 3 Click OK to close the Filter Expression window Figure 5 2 Selecting a Display Filter Wireshark Display Filter Filter 1 Select a Only meta traffic predefined filter Only user traffic Only RTPS packets Only NDDSPING packets Packets with topic info Data Writer Announce Data Reader Announce Participant Announce Data Writer Destruction Data Reader Destruction Dartirinant Nectrictinn Only RTPS packets mwa agen Expression 2 Click OK 5 5 Analyzing RTPS Packets As another example let s look at how to display only RTPS packets that contain HEARTBEAT submessages To display HEARTBEAT packets only 1 Clear anything you have in the filter text box with the Clear button then click the Expression button 2 In the new Filter Expression window scroll down in the Field name list until you see RTPS Expand the RTPS tree click the sign to see the choices for this protocol as seen in Figure 5 3 Figure 5 3 Creating a Display Filter Scroll down to RTPS or RTPS2 Click the sign to expand the tree Use these fields to create a disp
26. ete Hi die nd Eco tede de 1 4 PAE at 0 0 10 vere E 2 1 2 1 Before Installation ee at ce has he a ite ete ten 2 1 22 Installing Wireshark on Windows Systems eee eee 2 1 23 Installing Wireshark on Linux Red Hat Systems sse 2 2 24 Installing Wireshark on Linux Debian Systems sees eee 2 2 25 Installing Wireshark on Solaris Systems sse eee eee nene 2 3 2 6 Uninstalling Wireshatk adi ete et eet reete e aiar 2 3 Starting Wireshark d 3 1 Capturing RTPS PACKels aura 4 1 Analyzing RTPS Packets sese essen ennenen 5 1 5 1 RIPSSubmessage Iyp s u siue eret eene ths tede Pete e ferie a 5 2 5 2 Displaying Packets unisci a E 5 2 52 1 Using a Display Filter encontre e cae e re eer ee te 5 4 52 2 Color Coding Packets italia 5 10 53 Analyzing Packets from Connext Applications 5 11 5 3 1 Analyzing the User Data Sample Trace i 5 12 532 Analyzing the Discovery Data Sample Trace i 5 16 6 Practical Uses with RTI APPliCGHONS sssssss 1 2 222022222 22220 20220 00000 02 6 1 6 1 Debugging Discovery Problems see eene eene nennen nnns 6 1 6 2 Misualizing Your System nete e B peo tea e ee e aed eee etri 6 3 6 3 Providing Information to RTI Support sees eee eee ee eene 6 5 Chapter 1 Introduction Wireshark is a network pack
27. fic_nature field in the decoded packet to see how the packet is being used A subscriber reciprocally declares its reader object with another DATA packet to all concerned participants This happens before the writer application starts pub lishing user data Connext uses separate built in objects to announce and dis cover readers vs writers so it s important to check the writerEntityId of the DATA packet to confirm that the participants in question have discovered the reader writer correctly Lastly it s important to check whether the topic and type declared in the meta data of the reader matches that in the meta data of the writer Assuming that nei ther party is deliberately ignoring certain Entities e g Participant Topic DataReader DataWriter if all these were acknowledged with ACKNACK packets the reader participant should at this point be ready to accept user data from the writer and the writer will send the data to the reader Exactly when the data will appear on the wire will depend on when the writer writes the next sample as well as the QoS of both the reader and writer The writer is writing your data but the reader is not able to access that data when it calls read or take In this case you should check your QoS settings Compare the writer s QoS against the reader s Perhaps the minimum_separation in the TimeBasedFilter QosPolicy of the reader is inadvertently filtering out received issues J Once a writer is
28. he domain_id participant_idx and traffic_nature are described in the latest RTPS 2 specification The values of traffic_nature correspond to the following kinds of traffic LJ 10 Meta Traffic Unicast LJ 11 User Traffic Unicast LJ 0 Meta Traffic Multicast LJ 1 User Traffic Multicast Important The packet decoder assumes the applications are using the default value for the receive_port Therefore it is important to note that if the receive_port has been explicitly changed in the locators receive_port field of the TransportUnicast or Trans portMulticast QosPolicy then the domain_id participant_idx and traffic_nature val ues will be calculated incorrectly in this case these three fields should not be used in 5 9 Sjo onpg BulzAjouy G Analyzing RTPS Packets display filters nor assumed to be correct in the decoded packet view We expect this changing of the receive_port to be a rare occurrence 5 2 2 Color Coding Packets Wireshark allows you to display packets in different colors Coloring rules are based on the same criteria used to create display filters described in Section 5 2 1 For instance you can show discovery related packets in blue and user data packets in green Unlike display filters coloring rules do not hide captured packets Wireshark includes RTPS related coloring rules that are automatically enabled they are listed in Table 5 3 You can turn them off change the colors or edit them in other
29. k User s Guide or online help Figure 5 4 Filtering by Submessage Type 1 Use the Expression button to help you 2 Click Apply enter a filter Filter I rtps sm id Ox v Expression cear say TR L S a 3 0 007812 4 0 008461 5 0 008605 6 0 008741 10 0 009665 12 0 010088 13 0 010232 3 Now only 16 0 011622 packets 25 2 711920 ate 5 containing a ER e HEARTBEAT 31 5 993371 are 39 8 999946 displayed 43 12 005536 53 19 609355 54 19 610037 55 19 610180 56 19 610317 RAEE 0 100 1 200 1007 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 aan 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT T 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0x0a0a640e Ox18880 HEARTBEAT 14 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS Ox0a0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS OxOa0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0xOa0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0xOa0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS Ox0a0a640e Ox18880 HEARTBEAT 14 239 192 1 2 RTPS Ox0a0a640e Qx18880 HEARTBEAT 14 239 192 1 2 RTPS OxQada640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0x0a0a640e 0x18880 HEARTBEAT 14 239 102 1 2 RTPS OxQa0a640e 0x18880 HEARTBEAT 14 239 192 1 2 RTPS 0xO0a0a640e 0x18880
30. k boxes for Update list of packets in real time and Hide capture info dialog are selected by default However these features can slow down the capture process and increase the chance of missing packets We recom mend deselecting these two check boxes to limit the risk of missing packets 4 Click Start to start the capture session 4 1 189Dqg 6uunjdp2 7 Capturing RTPS Packets Figure 4 1 Starting a Capture Session Select which B oca eTwor Interface to use Wi from this pull Interface Marvell Gigabit Ethernet Controller Device NPF_ B4D2A077 DF1C 4BDE B509 8D016C289DC5 E down selection IP address 192 168 2 5 box Link layer header type Ethernet Buffer size 1 megabyte s Wireless Settings 7 Capture packets in promiscuous mode 7 Limit each packet to 68 bytes 2 Optionally Capture Flies I enter a capture filter 4 2 Capture File s File 7 Use multiple files Next file ever 1 H megabyte s Next file every 1 minute s Ring buffer with 2 files Stop capture after 1 H file s Stop Capture E after 1 7 after T 7 after 1 minute s 5 To stop the capture la Display Options 7 Update list of packets in real time V Automatic scrolling in live capture V Hide capture info dialog Name Resolution V Enable MAC name resolution 7 Enable network name resolution V Enable transport name resolution
31. lay filter N A m Wireshark Filter Expression Field name E RTPS c rtps version version RTPS protocol version n rtps version major major RTPS major protoc rtps version minor minor RTPS minor proto rtps domain id domain id Domain ID rtps participant idx participant idx Participa L rtps traffic nature traffic nature Nature of tt rtps vendorld vendorld Unique identifier of 1 rtps guidPrefix guidPrefix GuidPrefix of the F rtps hostId hostid Sub component hostld rtps appld appld Sub component appld of rtps appld instanceld appld instanceld insta rtps appld appKind appid appKind appKind rtps sm id submessageld defines the type of rtps sm flags flags bitmask representing the r In the Field name list select rtps sm id In the Relation list select In the Predefined values list select HEARTBEAT Click OK to close the Filter Expression window Relation is present E gt lt a Value unsigned 1 byte 0x7 Predefined values PAD DATA NOKEY_DATA ACKNACK HEARTBEAT GAP INFO_TS INFO_SRC INFO_REPLY_IP4 INFO_DST INFO_REPLY Range offset length a Jie Click Apply in the main window to apply the new filter Now you will see only RTPS messages that contain a HEARTBEAT submessage as shown in Figure 5 4 Displaying Packets Wireshark also allows you to save filter expressions for future use For more information see the Wireshar
32. loring Rules then click the New button to open an Edit Color Filter window Enter a name for the color filter such as HeartBeatPackets Enter a color filter expression using the same syntax as for a display filter If you need help click the Expression button For examples see Table 5 3 4 Select foreground text and background colors for packets that match the filter expression Tip To select a color click in the color selection triangle use the colored circle to quickly change the contents of the triangle Analyzing Packets from Connext Applications Table 5 3 5 3 Default Coloring Rules Coloring Rule String RTI DDSPing green udp 16 23 rtiddsping rtps sm wrEntityId entityKind 0x02 rtps sm wrEntityId entityKind 0x03 User tratti red rtps2 sm wrEntityId entityKind 0x02 rtps2 sm wrEntityId entityKind 0x03 rtps sm wrEntityId entityKind 0xc2 f rtps sm wrEntityId entityKind 0xc3 Mera trame blue rtps2 sm wrEntityId entityKind 0xc2 rtps2 sm wrEntityId entityKind 0xc3 Non RTPS traffic gray Irtps amp amp rtps2 5 Click OK to close the Edit Color Filter window 6 Click Apply in the Coloring Rules window Tip The order of the coloring rules is important The rules are applied in the order in which they appear in the dialog box So if there are two rules that are true for the same packet the first will be
33. nal based version of Wireshark run tshark from the same paths as above On Windows systems you can start tshark from lt installation directory gt tshark 3 1 sjoxopg Bundy E Starting Wireshark 3 2 Chapter 4 Capturing RTPS Packets This chapter describes how to capture RIPS packets that are sent across a network After capturing packets use the information in Chapter 5 to analyze them Wireshark will automatically capture all RTPS packets from the wire You can create additional filters to refine the scope of your captures For example you can create filters to capture packets from specific nodes addresses ports protocols etc This chapter provides basic instructions on using capture filters and a few examples For more information see the Wireshark User s Guide or online documentation To capture all types of packets while running a Connext application 1 Login as super user on Linux Solaris systems or administrator on Windows systems 2 Start Wireshark 3 Select Capture Options from the menubar Figure 4 1 shows a sample Capture Options window The defaults in the Capture Option window may very well suit your needs they will capture all packets sent to the selected interface Then you can filter the displayed results with a display filter as described in Section 5 2 1 If you want to change any of the defaults for this window see the Wireshark User s Guide or online help Note The chec
34. omponent of the packet GUID Prefix rtps appId App ID component of the packet GUID Prefix rtps appld instanceld Instance ID of the App Id component of the packet GUID Prefix rtps appld appKind App Kind of the App Id component of the packet GUID Prefix Submessage specific fields rtps sm id Submessage type see Table 5 1 rtps sm flags Byte representing the submessage flags rtps sm octectsToTextHeader rtps sm guidPrefix Value of the octetsToNextHeader from the submessage header Generic GUID Prefix that appears inside a submessage this does not match the GUID Prefix of the packet header rtps sm guidPrefix hostId Host ID component of the submessage GUID Prefix rtps sm guidPrefix appId App ID component of the submessage GUID Prefix rtps sm guidPrefix appld instanceld Instanceld component of the App ID of the submessage GUID Prefix rtps sm guidPrefix appId appKind Object kind component of the App ID of the submessage GUID Prefix rtps sm entityId Object entity ID as it appear in a DATA submessage keyHashSuffix rtps sm entityId entityKey entityKey field of the object entity ID rtps sm entityId entityKind entityKind field of the object entity ID rtps sm rdentityId Reader entity ID as it appear in a submessage rtps sm rdentityId entityKey entityKey field of the reader entity ID rtps sm rdentityId entityKind entityKind field of the rea
35. port for Wireshark is provided by RTI send e mail to support rti com Wireshark is an open source product For information about Wireshark support please visit www wireshark org Chapter 2 Installation 2 1 2 2 Wireshark is automatically installed by the RTI Connext Professional Edition installer Use the installation instructions in this chapter only if you are installing Wireshark indepen dently not through the Connext Professional Edition installer To install Wireshark you need to login as super user on Linux and Solaris systems or as administrator on Windows systems You will also need super user administrator access to capture packets With normal user access you will be able to run Wireshark but only to view previously saved capture files Before Installation If you have Ethereal Wireshark or RTI Protocol Analyzer with Wireshark installed we highly recommend that you remove them before installing KTTS distribution of Wire shark See Uninstalling Wireshark Section 2 6 Installing Wireshark on Windows Systems 1 Right click on the distribution file Wireshark lt version gt Win32 exe and select Run as Administrator This will install Wireshark and Tshark a terminal based non GUI version of Wireshark in the same path The default installation path is C Program Files Wireshark 2 1 UONDI DISUI Zz Installation 2 3 2 4 2 2 2 Wireshark requires WinPcap 4 1 If WinPcap 4 1 is not
36. re being sent what portion of total network bandwidth RTPS packets are taking up which hosts are talking to others and how much bandwidth is being used to do so In our sending too fast example you may find that the RTPS packets are being dropped at a host with a relatively slow reader In some extreme cases even Wireshark may not see all the packets sent because the network card on the sniffing machine itself dropped them Figure 6 1 UDP Conversations UDP Conversations 239 255 255 250 1900 ash 1024 5304 0 5304 mammothDHCP100198 6001 255 255 255 255 6001 6672 12 si 0 mammothDHCP10074 34063 10 10 1 160 53 8 966 4 353 4 613 targets 520 10 10 255 255 520 6 456 6 456 0 0 235 10 9 9 7400 __ ety 32 3196 4 792 0 0 4 792 235 10 9 9 7400 ety 26 3194 4 792 0 0 4 792 235 10 9 9 7400 ety 32 3197 4 792 0 0 4 792 10 10 1 192 1023 mammothDHCP10074 874 4 336 2 144 2 192 235 10 9 9 7400 ety 32 3198 4 792 0 0 4 792 235 10 9 9 7400 ety 26 3195 4 792 0 0 4 792 rushmore 138 10 10 255 255 138 3 798 3 798 0 0 nasl 137 10 10 255 255 137 3 282 3 282 0 0 mammothDHCP100162 137 10 10 255 255 137 3 282 3 282 0 0 mammothDHCP100165 137 10 10 255 255 137 3 282 3 282 0 0 301n3101 32 90 4A Wa 9 arr AID d OANA n DNA n AA 6 3 sesn IDOYODId 9 Practical Uses with RTI Applications Figure 6 2 O Graph L su Style Style Style Line Line Line Line ELLER v v
37. reshark s Main Window GUID Prefix Column only available in RTI s distribution of Wireshark File Edit View Go Capture Analyze Statistics Help Sa ai Gi ai co x SSS ee ee Tess Sall AS x aE nn 0 A S EN RTPS 0x0a0a640e 0 DATACr K RTPS OxQada640e 0x1 ACKNACK Packet 020856 RTPS 0x0a0a640e 0x18880 ACKNACK sequence 021401 RTPS 0x0a0a640e 0x18880 DATACW Qi5 with 021616 RTPS OxQa0a640e 0x18880 DATA a H 022254 RTPS Ox0a0a640e 0x18880 DATA automatic 140703 RTPS 0x0a0a640e 0x18880 DATA o color 711920 RTPS Ox0a0a640e 0x18880 HEARTBEAT N 992846 RTPS Ox0a0a640e 0x18880 HEARTBEAT O coding of 022182 RTPS 0x0a0a640e 0x18880 NOKEY DATA O RTPS 022386 RTPS Ox0a0a640e 0x18880 NOKEY DATA a 022576 RTPS OxQa0a640e 0x18880 NOKEY DATA packets 713828 RTPS 0x0a0a640e 0x18880 HEARTBEAT 993371 RTPS OxQa0a640e 0x18880 HEARTBEAT 993520 RTPS OxQa0a640e Ox18880 ACKNACK Y 993643 RTPS 0x0a0a640e 0x18880 AC CK A E Protocol odir 1 1 major 1 RTPS minor 1 Header vendor Real Time Innovations Inc N E guidPrefix 0a0a640e 18880001 hostId 0a0a640e appId 18880001 ManagedApplication 188800 T 5 E Default port mapping domainId 29 participantIdx 4294967 nature 09 E Submessage DATA o submessageId DATA 0x02 Q FE lags 0x04 C gt oe ADEJ 4 OctetsTONextHeader 160 oO t8 readerEntityId ENTITYID UNKNOWN 0x00000000 X Hj writerEntityId
38. s By inspecting all RTPS packets with Wire shark you may be able to narrow the problem down to one of the following The participants are not discovering each other In this case you will see periodic sending of DATA packets but no response from the other host that is not being discovered The participants have discovered each other but their contained readers writers are not getting hooked up correctly In this case you may see HEARTBEAT and ACKNACK packets for the reserved meta data representing the reader and writer from one participant to another but the other participant is not respond ing back in accordance to the RTPS protocol II The objects have all discovered each other but the writer is not sending user data In this case you will see the discovery protocol complete successfully but not see DATA packets containing user data from the writer 6 1 sesn IDOYODId 9 Practical Uses with RTI Applications 6 2 When a participant containing a writer sends meta data to other participants and those other participants respond with ACKNACK packets to acknowledge those discovery packets all you can say is that the declaration for that writer was received by all participants in the system But just because a participant is writ ing DATA packets does not necessarily mean it is writing your application s user data Connext also uses DATA packets to propagate internal object information When in doubt check the traf
39. s of each type of submessage are described in the Real Time Publish Subscribe Wire Protocol Specification Displaying Packets Wireshark has two features that make it easy to focus on packets with a particular set of values I Display filters limit the display to just packets that meet a set of criteria See Section 5 2 1 LI Coloring rules allow you to color code packets based on a set of criteria so they stand out more in the full packet list See Section 5 2 2 For more information on filters and colors select Help Wireshark Online User s Guide from the menubar Displaying Packets Table 5 1 RTPS 2 x Submessage Types Submessage Type Description ACKNACK Provides information on the state of a Reader to a Writer ACKNACK BATCH Provides information on the state of a Reader to a Writer for batched data ACKNACK SESSION Provides information on the state of a Reader to a multi channel Writer Contains information regarding the value of an application Data object The information is a fixed string with the following format 1 23 Where 1 a letter representing the entity ID P upper case DomainParticipant t Built in topic writer w built in publication writer r built in subscription writer p lower case built in participant writer m peer to peer participant message writer DATA unknown writer 2 3 two letters that describe the last two bits of the statusInfo inline
40. t will drop the reply from the writer participant 23 24 HEARTBEATS telling the reader participant how many readers 0 and writers 1 it has The reader participant will know from this that it has to get a meta DATA from the writer Note to be precise each meta DATA reflects a change to the state of the writer or reader The number of writer samples would increase if the writer was changed or deleted 25 Writer participant packet 22 for reader participant index 1 was not reachable because the reader participant was created with participant id 0 26 27 ACKNACKs telling the reader participant that builtin discovery readers for publications and subscriptions are created App1 lt App2 28 Reader participant begins to announce its builtin discovery endpoints after having received the writer participant s announcements ACKNACK from the reader participant s builtin participant liveliness reader 29 30 Re announcements of reader participant info triggered by receiving the writer announcements 31 35 Initial HEARTBEATs and ACKNACKs from the reader participant s builtin discovery endpoints indicating it has one reader and no writers 36 37 38 ACKNACK in response to HEARTBEAT packet 24 requesting that the writer participant s builtin publication writer resend the meta DATA for its writer HEARTBEATs sent in response to writer ACKNACKs announcing that the reader participant has one reader an
41. used and the second one ignored You can use the Up and Down buttons on the dialog to change the order of the rules Analyzing Packets from Connext Applications RIT s distribution of Wireshark includes two files that contain packets captured from Connext 4 5f applications userDataTrace pkt A short trace of captured user data packets This shows the flow of packets in an established system after all the objects have discovered each other discoveryTrace pkt A longer trace of the packets sent during the discovery startup process The location of the sample files depends on your operating system L Linux usr share wireshark I Solaris usr local share wireshark Windows WiresharkKHOME Vti where lt WiresharkHOME gt is where Wire shark is installed Sjo onpg BulzAjouy Ss Analyzing RTPS Packets 5 3 1 5 12 By looking at these sample files you will learn how to 1 Load a captured sequence of packets from a file I Understand the flow of RTPS messages by looking at a sample sequence 1 View the contents of individual RTPS packets Analyzing the User Data Sample Trace Use the File Open command to open the file userDataTrace pkt see Section 5 3 for its location The sample file contains a sequence of RTPS packets that illustrate the protocol when two applications use reliable communications to send receive data This scenario involves two hosts each running a Connext application I Host 1
42. very Data Sample File 0 000045 10 10 100 10 10 30 100 PING 2 3 0 000130 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 4 0 000161 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 5 0 008788 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA p 6 0 008801 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA p 7 0 009079 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 8 0 009098 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 9 0 017908 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA p 10 0 017923 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA p 11 0 018227 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 12 0 018254 10 10 30 100 10 10 100 65 ICMP Destination unreachable Port unreachable 13 5 423355 10 10 30 100 10 10 100 65 RTPS2 PING 14 5 423415 10 10 30 100 10 10 100 65 RTPS2 PING 15 5 423977 10 10 30 100 10 10 100 65 RTPS2 INFO TS DATA p 16 5 424000 10 10 30 100 10 10 100 65 RTPS2 INFO TS DATA p 17 5 427251 10 10 30 100 10 10 100 65 RTPS2 INFO TS DATA p 18 5 427271 10 10 30 100 10 10 100 65 RTPS2 INFO TS DATA p 19 5 441956 10 10 100 65 10 10 30 100 RTPS2 INFO DST ACKNACK 20 5 446546 10 10 100 65 10 10 30 100 RTPS2 INFO DST HEARTBEAT 21 5 446635 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA p 22 5 446664 10 10 100 65 10 10 30 100 RTPS2 INFO TS DATA p 23 5 446779 10 10 100 65 10 10 30 10
43. writing user data to a data reader the initial discovery phase is over But there can be an anti discovery problem depending on the Liveliness QoS Connext may purge a remote entity that it considers to be stale Regardless of what kind of liveliness setting you use the main idea is to ensure that your participant and its entities renew their liveliness automatically or manually within the declared duration A classic symptom of communication ceasing due to a liveliness expiration is that a participant stops sending its periodic partici pant DATA packet See the RTI Core Libraries and Utilities User s Manual or online documentation for information about the Liveliness QosPolicy NOTE Connext can log more detailed information about what it is doing at higher verbosity settings See the RTI Core Libraries and Utilities User s Manual s Troubleshooting chapter for more information on setting verbosity Visualizing Your System 6 2 Visualizing Your System Once your applications are communicating tuning Connext to maximize performance may require an in depth understanding of your network A visual understanding of Connext network usage is very valuable for system tuning For example you may be sending data as fast as Connext will allow and wonder why the reader cannot keep up Wireshark itself offers many statistical analysis tools under the Statistics menu As Figures 6 1 through 6 3 show you can see how many RTPS packets a
Download Pdf Manuals
Related Search
Related Contents
サステナビリティ報告書 2008 フリーボックス Fiche 1 TFS - mA Copyright © All rights reserved.
Failed to retrieve file