source: lib/erftypes.h @ 2c743a7

4.0.1-hotfixescachetimestampsdevelopdpdk-ndagetsilivegetfragoffhelplibtrace4ndag_formatpfringrc-4.0.1rc-4.0.2rc-4.0.3rc-4.0.4ringdecrementfixringperformanceringtimestampfixes
Last change on this file since 2c743a7 was 2c743a7, checked in by Shane Alcock <salcock@…>, 12 years ago
  • Documented the erftypes header file and added some licensing
  • Also added a few new ERF types that have come about in recent DAG driver releases
  • Property mode set to 100644
File size: 3.4 KB
Line 
1/*
2 * This file is part of libtrace
3 *
4 * Copyright (c) 2007,2008,2009,2010 The University of Waikato, Hamilton,
5 * New Zealand.
6 *
7 * Authors: Daniel Lawson
8 *          Perry Lorier
9 *          Shane Alcock
10 *         
11 * All rights reserved.
12 *
13 * This code has been developed by the University of Waikato WAND
14 * research group. For further information please see http://www.wand.net.nz/
15 *
16 * libtrace is free software; you can redistribute it and/or modify
17 * it under the terms of the GNU General Public License as published by
18 * the Free Software Foundation; either version 2 of the License, or
19 * (at your option) any later version.
20 *
21 * libtrace is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24 * GNU General Public License for more details.
25 *
26 * You should have received a copy of the GNU General Public License
27 * along with libtrace; if not, write to the Free Software
28 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
29 *
30 * $Id$
31 *
32 */
33
34#ifndef _ERFTYPES_H_
35#define _ERFTYPES_H_
36
37/** @file
38 *
39 * @brief Header file containing all the possible GPP record types
40 *
41 * @author Daniel Lawson
42 * @author Perry Lorier
43 * @author Shane Alcock
44 *
45 * @version $Id$
46 */
47
48/* GPP record type defines - these can indicate the header that immediately
49 * follows the ERF header and/or an adjustment to the layout of the ERF header
50 * itself, e.g. due to the use of Coloring.
51 *
52 * NOTE: "Color" refers to the concept of marking packets based on matching
53 * a particular filter or classification */
54
55#define TYPE_LEGACY             0       /**< Legacy */
56#define TYPE_HDLC_POS           1       /**< PoS with HDLC framing */
57#define TYPE_ETH                2       /**< Ethernet */
58#define TYPE_ATM                3       /**< ATM Cell */
59#define TYPE_AAL5               4       /**< AAL5 Frame */
60#define TYPE_MC_HDLC            5       /**< Multi-channel HDLC */
61#define TYPE_MC_RAW             6       /**< Multi-channel Raw link record */
62#define TYPE_MC_ATM             7       /**< Multi-channel ATM Cell */
63#define TYPE_MC_RAW_CHANNEL     8       /**< Multi-channel Raw link data */
64#define TYPE_MC_AAL5            9       /**< Multi-channel AAL5 */
65
66/** PoS with HDLC framing and classification information in the loss counter
67 *  field */
68#define TYPE_COLOR_HDLC_POS     10     
69
70/** Ethernet with classification information in the loss counter field */
71#define TYPE_COLOR_ETH          11
72
73/** Multi-channel AAL2 */
74#define TYPE_MC_AAL2            12
75
76/** IP counter ERF record */
77#define TYPE_IP_COUNTER         13
78
79/** TCP flow counter ERF record */
80#define TYPE_TCP_FLOW_COUNTER   14
81
82/** PoS with HDLC framing with DSM color information in the loss counter field*/
83#define TYPE_DSM_COLOR_HDLC_POS 15
84
85/** Ethernet with DSM color information in the loss counter field */
86#define TYPE_DSM_COLOR_ETH      16
87
88/** Multi-channel HDLC with classification information in the loss counter
89 *  field */
90#define TYPE_COLOR_MC_HDLC_POS  17
91
92/** AAL2 Frame */
93#define TYPE_AAL2               18
94
95/** Colored PoS HDLC record with Hash load balancing */
96#define TYPE_COLOR_HASH_POS     19
97
98/** Colored Ethernet with Hash load balancing */
99#define TYPE_COLOR_HASH_ETH     20
100
101/** Infiniband */
102#define TYPE_INFINIBAND         21
103
104/** IPv4 */
105#define TYPE_IPV4               22
106
107/** IPv6 */
108#define TYPE_IPV6               23
109
110/** Raw link data, usually SONET or SDH */
111#define TYPE_RAW_LINK           24
112
113/** Padding record */
114#define TYPE_PAD                48
115#endif
Note: See TracBrowser for help on using the repository browser.