|
145 | 145 | <list style='hanging'> |
146 | 146 | <t hangText='SHB:'>Section Header Block</t> |
147 | 147 | <t hangText='IDB:'>Interface Description Block</t> |
148 | | - <t hangText='ISB:'>Interface Statistics Block</t> |
| 148 | + <t hangText='ISB:'>Interface Statistics Block</t> |
149 | 149 | <t hangText='EPB:'>Enhanced Packet Block</t> |
150 | 150 | <t hangText='SPB:'>Simple Packet Block</t> |
151 | | - <t hangText='NRB:'>Name Resolution Block</t> |
| 151 | + <t hangText='NRB:'>Name Resolution Block</t> |
| 152 | + <t hangText='CIB:'>Capture Information Block</t> |
152 | 153 | <t hangText='CB:'>Custom Block</t> |
153 | 154 | </list> |
154 | 155 |
|
|
267 | 268 | capture has been made. If this appears in a file, an Interface |
268 | 269 | Description Block is also required, before this block.</t> |
269 | 270 |
|
| 271 | + <t><xref target="section_cib">Capture Information Block</xref>: it |
| 272 | + defines how to store some capture information (such as location, |
| 273 | + orientation, velocity and associated errors, as well as rf frequencies |
| 274 | + and channels)</t> |
| 275 | + |
270 | 276 | <t><xref target="section_custom_block">Custom Block</xref>: it |
271 | 277 | contains vendor-specific data in a portable fashion.</t> |
272 | 278 |
|
@@ -1269,6 +1275,11 @@ Section Header |
1269 | 1275 | <c>4</c> |
1270 | 1276 | <c>8</c> |
1271 | 1277 | <c>no</c> |
| 1278 | + |
| 1279 | + <c>epb_cib</c> |
| 1280 | + <c>4</c> |
| 1281 | + <c>4</c> |
| 1282 | + <c>no</c> |
1272 | 1283 | </texttable> |
1273 | 1284 |
|
1274 | 1285 | <t> |
@@ -1306,6 +1317,10 @@ Section Header |
1306 | 1317 |
|
1307 | 1318 | <t>Example: '0'.</t> |
1308 | 1319 |
|
| 1320 | + <t hangText="epb_cib:"><vspace blankLines="0"/>The epb_cib |
| 1321 | + option indicates the Capture Information Block ID to be associated |
| 1322 | + with this packet, allowing the addition of capture related metadata.</t> |
| 1323 | + |
1309 | 1324 | </list> |
1310 | 1325 | </t> |
1311 | 1326 |
|
@@ -1828,6 +1843,168 @@ Section Header |
1828 | 1843 |
|
1829 | 1844 | </section> |
1830 | 1845 |
|
| 1846 | + <section anchor="section_cib" title="Capture Information Block"> |
| 1847 | + |
| 1848 | + <t>The Capture Information Block (CIB) is used to support the addition |
| 1849 | + of metadata associated with capture interfaces or packets, including |
| 1850 | + location, orientation, velocity and related errors, as well as wireless |
| 1851 | + channel and medium options. |
| 1852 | + This block can be associated with a specific interface and applied to all |
| 1853 | + packets received on this interface, or to (a) specific packet(s). |
| 1854 | + If applied to an interface, this block effects all capture blocks following |
| 1855 | + until it is superseded by a new CIB applied to the same interface. |
| 1856 | + </t> |
| 1857 | + |
| 1858 | + <t> |
| 1859 | + Tools that write / read the capture file associate an incrementing 32-bit |
| 1860 | + number (starting from '0') to each Capture Information Block, called |
| 1861 | + the CIB ID for the CIB in question. This number is unique within each Section |
| 1862 | + and identifies the CIB that is referred to in an epb_cip option; it is only |
| 1863 | + unique inside the current section, so, two Sections can have different |
| 1864 | + CIBs identified by the same CIB ID values. This unique identifier |
| 1865 | + is referenced by other blocks, such as Enhanced Packet Blocks, to indicate the |
| 1866 | + CIB to which the block refers. |
| 1867 | + </t> |
| 1868 | + |
| 1869 | + <t>The format of the Capture Information Block is shown in <xref |
| 1870 | + target="format_cib"/>.</t> |
| 1871 | + |
| 1872 | + <figure anchor="format_cib" title="Capture Information Block Format"> |
| 1873 | + <artwork xml:space="preserve" name="" type="" align="center" alt="" width="" height=""> |
| 1874 | + 0 1 2 3 |
| 1875 | + 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 |
| 1876 | + +---------------------------------------------------------------+ |
| 1877 | + 0 | Block Type = 0x00000006 | |
| 1878 | + +---------------------------------------------------------------+ |
| 1879 | + 4 | Block Total Length | |
| 1880 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 1881 | + 8 / / |
| 1882 | + / Options (variable) / |
| 1883 | + / / |
| 1884 | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| 1885 | + | Block Total Length | |
| 1886 | + +---------------------------------------------------------------+ |
| 1887 | + </artwork> |
| 1888 | + </figure> |
| 1889 | + <t>The fields have the following meaning: |
| 1890 | + <list style="symbols"> |
| 1891 | + |
| 1892 | + <t>Block Type: The block type of the Capture Information Block is |
| 1893 | + 6.</t> |
| 1894 | + |
| 1895 | + <t>Block Total Length: total size of this block, as described in |
| 1896 | + <xref target="section_block"/>.</t> |
| 1897 | + |
| 1898 | + <t>Options: optionally, a list of options (formatted according to |
| 1899 | + the rules defined in <xref target="section_opt"/>) can be present.</t> |
| 1900 | + |
| 1901 | + </list> |
| 1902 | + </t> |
| 1903 | + |
| 1904 | + <t>All the statistic fields are defined as options in order to deal |
| 1905 | + with systems that do not have a complete set of statistics. Therefore, |
| 1906 | + In addition to the options defined in <xref target="section_opt"/>, |
| 1907 | + the following options are valid within this block:</t> |
| 1908 | + |
| 1909 | + <texttable anchor="options_cib" title="Capture Information Block Options"> |
| 1910 | + <ttcol align="left">Name</ttcol> |
| 1911 | + <ttcol align="left">Code</ttcol> |
| 1912 | + <ttcol align="left">Length</ttcol> |
| 1913 | + <ttcol align="left">Multiple allowed?</ttcol> |
| 1914 | + |
| 1915 | + <c>interface_id</c> |
| 1916 | + <c>1</c> |
| 1917 | + <c>4</c> |
| 1918 | + <c>no</c> |
| 1919 | + |
| 1920 | + <c>global_location</c> |
| 1921 | + <c>2</c> |
| 1922 | + <c>12</c> |
| 1923 | + <c>no</c> |
| 1924 | + |
| 1925 | + <c>global_location_error</c> |
| 1926 | + <c>3</c> |
| 1927 | + <c>12</c> |
| 1928 | + <c>no</c> |
| 1929 | + |
| 1930 | + <c>orientation</c> |
| 1931 | + <c>4</c> |
| 1932 | + <c>12</c> |
| 1933 | + <c>no</c> |
| 1934 | + |
| 1935 | + <c>orientation_error</c> |
| 1936 | + <c>5</c> |
| 1937 | + <c>12</c> |
| 1938 | + <c>no</c> |
| 1939 | + |
| 1940 | + <c>velocity</c> |
| 1941 | + <c>6</c> |
| 1942 | + <c>12</c> |
| 1943 | + <c>no</c> |
| 1944 | + |
| 1945 | + <c>velocity_error</c> |
| 1946 | + <c>7</c> |
| 1947 | + <c>12</c> |
| 1948 | + <c>no</c> |
| 1949 | + </texttable> |
| 1950 | + |
| 1951 | + <t> |
| 1952 | + <list hangIndent="8" style="hanging"> |
| 1953 | + |
| 1954 | + <t hangText="cib_interface_id:"><vspace blankLines="0"/>The |
| 1955 | + interface_id option specifies the interface these statistics refers |
| 1956 | + to; the correct interface will be the one whose Interface |
| 1957 | + Description Block (within the current Section of the file) is |
| 1958 | + identified by same number (see <xref target="section_idb"/>) of |
| 1959 | + this field.</t> |
| 1960 | + |
| 1961 | + <t hangText="cib_global_location"><vspace blankLines="0"/>The |
| 1962 | + cib_global_location option specifies the location of the packet |
| 1963 | + capture or interface; location is stored as three 32-bit floats |
| 1964 | + representing latitude and longitude in degrees, and altitude in |
| 1965 | + metres.</t> |
| 1966 | + |
| 1967 | + <t>Example: TODO</t> |
| 1968 | + |
| 1969 | + <t hangText="cib_global_location_error"><vspace blankLines="0"/>The |
| 1970 | + global_location_error option specifies the error in location capture, |
| 1971 | + this is stored as three 32-bit floats in the same order and |
| 1972 | + representation as cib_location</t> |
| 1973 | + |
| 1974 | + <t>Example: TODO</t> |
| 1975 | + |
| 1976 | + <t hangText="cib_orientation"><vspace blankLines="0"/>The |
| 1977 | + cib_orientation option specifies the location of the packet |
| 1978 | + capture or interface; location is stored as three 32-bit floats |
| 1979 | + representing yaw, pitch, and roll in radians.</t> |
| 1980 | + |
| 1981 | + <t>Example: TODO</t> |
| 1982 | + |
| 1983 | + <t hangText="cib_orientation_error"><vspace blankLines="0"/>The |
| 1984 | + orientation_error option specifies the error in orientation capture, |
| 1985 | + this is stored as three 32-bit floats in the same order and |
| 1986 | + representation as cib_orientation</t> |
| 1987 | + |
| 1988 | + <t>Example: TODO</t> |
| 1989 | + |
| 1990 | + <t hangText="cib_velocity"><vspace blankLines="0"/>The |
| 1991 | + cib_velocity option specifies the location of the packet |
| 1992 | + capture or interface; location is stored as three 32-bit floats |
| 1993 | + representing yaw, pitch, and roll in radians.</t> |
| 1994 | + |
| 1995 | + <t>Example: TODO</t> |
| 1996 | + |
| 1997 | + <t hangText="cib_velocity_error"><vspace blankLines="0"/>The |
| 1998 | + cib_velocity_error option specifies the error in velocity capture, |
| 1999 | + this is stored as three 32-bit floats in the same order and |
| 2000 | + representation as cib_velocity</t> |
| 2001 | + |
| 2002 | + <t>Example: TODO</t> |
| 2003 | + |
| 2004 | + </list> |
| 2005 | + </t> |
| 2006 | + |
| 2007 | + </section> |
1831 | 2008 |
|
1832 | 2009 | <section anchor="section_custom_block" title="Custom Block"> |
1833 | 2010 |
|
|
0 commit comments