stix_schema_spy 1.3 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/config/1.2/stix/campaign.xsd +2 -2
  3. data/config/1.2/stix/cybox/cybox_common.xsd +2700 -2700
  4. data/config/1.2/stix/cybox/cybox_core.xsd +1145 -1145
  5. data/config/1.2/stix/cybox/cybox_default_vocabularies.xsd +5180 -5180
  6. data/config/1.2/stix/cybox/extensions/location/ciq_address_3.0.xsd +27 -27
  7. data/config/1.2/stix/cybox/extensions/platform/cpe2.3.xsd +34 -34
  8. data/config/1.2/stix/cybox/external/cpe_2.3/xml.xsd +145 -145
  9. data/config/1.2/stix/cybox/external/oasis_ciq_3.0/xlink-2003-12-31.xsd +90 -90
  10. data/config/1.2/stix/cybox/objects/API_Object.xsd +55 -55
  11. data/config/1.2/stix/cybox/objects/ARP_Cache_Object.xsd +98 -98
  12. data/config/1.2/stix/cybox/objects/AS_Object.xsd +50 -50
  13. data/config/1.2/stix/cybox/objects/Account_Object.xsd +501 -501
  14. data/config/1.2/stix/cybox/objects/Address_Object.xsd +127 -127
  15. data/config/1.2/stix/cybox/objects/Archive_File_Object.xsd +134 -134
  16. data/config/1.2/stix/cybox/objects/Artifact_Object.xsd +212 -212
  17. data/config/1.2/stix/cybox/objects/Code_Object.xsd +417 -417
  18. data/config/1.2/stix/cybox/objects/Custom_Object.xsd +42 -42
  19. data/config/1.2/stix/cybox/objects/DNS_Cache_Object.xsd +53 -53
  20. data/config/1.2/stix/cybox/objects/DNS_Query_Object.xsd +164 -164
  21. data/config/1.2/stix/cybox/objects/DNS_Record_Object.xsd +92 -92
  22. data/config/1.2/stix/cybox/objects/Device_Object.xsd +65 -65
  23. data/config/1.2/stix/cybox/objects/Disk_Object.xsd +117 -117
  24. data/config/1.2/stix/cybox/objects/Disk_Partition_Object.xsd +199 -199
  25. data/config/1.2/stix/cybox/objects/Domain_Name_Object.xsd +57 -57
  26. data/config/1.2/stix/cybox/objects/Email_Message_Object.xsd +278 -278
  27. data/config/1.2/stix/cybox/objects/File_Object.xsd +397 -397
  28. data/config/1.2/stix/cybox/objects/GUI_Dialogbox_Object.xsd +41 -41
  29. data/config/1.2/stix/cybox/objects/GUI_Object.xsd +40 -40
  30. data/config/1.2/stix/cybox/objects/GUI_Window_Object.xsd +46 -46
  31. data/config/1.2/stix/cybox/objects/HTTP_Session_Object.xsd +633 -633
  32. data/config/1.2/stix/cybox/objects/Hostname_Object.xsd +45 -45
  33. data/config/1.2/stix/cybox/objects/Image_File_Object.xsd +124 -124
  34. data/config/1.2/stix/cybox/objects/Library_Object.xsd +114 -114
  35. data/config/1.2/stix/cybox/objects/Link_Object.xsd +36 -36
  36. data/config/1.2/stix/cybox/objects/Linux_Package_Object.xsd +75 -75
  37. data/config/1.2/stix/cybox/objects/Memory_Object.xsd +141 -141
  38. data/config/1.2/stix/cybox/objects/Mutex_Object.xsd +40 -40
  39. data/config/1.2/stix/cybox/objects/Network_Connection_Object.xsd +540 -540
  40. data/config/1.2/stix/cybox/objects/Network_Flow_Object.xsd +1559 -1559
  41. data/config/1.2/stix/cybox/objects/Network_Packet_Object.xsd +2934 -2934
  42. data/config/1.2/stix/cybox/objects/Network_Route_Entry_Object.xsd +155 -155
  43. data/config/1.2/stix/cybox/objects/Network_Route_Object.xsd +93 -93
  44. data/config/1.2/stix/cybox/objects/Network_Socket_Object.xsd +529 -529
  45. data/config/1.2/stix/cybox/objects/Network_Subnet_Object.xsd +64 -64
  46. data/config/1.2/stix/cybox/objects/PDF_File_Object.xsd +595 -595
  47. data/config/1.2/stix/cybox/objects/Pipe_Object.xsd +40 -40
  48. data/config/1.2/stix/cybox/objects/Port_Object.xsd +40 -40
  49. data/config/1.2/stix/cybox/objects/Process_Object.xsd +199 -199
  50. data/config/1.2/stix/cybox/objects/Product_Object.xsd +65 -65
  51. data/config/1.2/stix/cybox/objects/SMS_Message_Object.xsd +79 -79
  52. data/config/1.2/stix/cybox/objects/Semaphore_Object.xsd +50 -50
  53. data/config/1.2/stix/cybox/objects/Socket_Address_Object.xsd +50 -50
  54. data/config/1.2/stix/cybox/objects/System_Object.xsd +410 -410
  55. data/config/1.2/stix/cybox/objects/URI_Object.xsd +62 -62
  56. data/config/1.2/stix/cybox/objects/URL_History_Object.xsd +104 -104
  57. data/config/1.2/stix/cybox/objects/Unix_File_Object.xsd +164 -164
  58. data/config/1.2/stix/cybox/objects/Unix_Network_Route_Entry_Object.xsd +56 -56
  59. data/config/1.2/stix/cybox/objects/Unix_Pipe_Object.xsd +36 -36
  60. data/config/1.2/stix/cybox/objects/Unix_Process_Object.xsd +143 -143
  61. data/config/1.2/stix/cybox/objects/Unix_User_Account_Object.xsd +78 -78
  62. data/config/1.2/stix/cybox/objects/Unix_Volume_Object.xsd +41 -41
  63. data/config/1.2/stix/cybox/objects/User_Account_Object.xsd +110 -110
  64. data/config/1.2/stix/cybox/objects/User_Session_Object.xsd +60 -60
  65. data/config/1.2/stix/cybox/objects/Volume_Object.xsd +235 -235
  66. data/config/1.2/stix/cybox/objects/Whois_Object.xsd +430 -430
  67. data/config/1.2/stix/cybox/objects/Win_Computer_Account_Object.xsd +135 -135
  68. data/config/1.2/stix/cybox/objects/Win_Critical_Section_Object.xsd +40 -40
  69. data/config/1.2/stix/cybox/objects/Win_Driver_Object.xsd +270 -270
  70. data/config/1.2/stix/cybox/objects/Win_Event_Log_Object.xsd +137 -137
  71. data/config/1.2/stix/cybox/objects/Win_Event_Object.xsd +80 -80
  72. data/config/1.2/stix/cybox/objects/Win_Executable_File_Object.xsd +1311 -1311
  73. data/config/1.2/stix/cybox/objects/Win_File_Object.xsd +269 -269
  74. data/config/1.2/stix/cybox/objects/Win_Filemapping_Object.xsd +175 -175
  75. data/config/1.2/stix/cybox/objects/Win_Handle_Object.xsd +351 -351
  76. data/config/1.2/stix/cybox/objects/Win_Hook_Object.xsd +152 -152
  77. data/config/1.2/stix/cybox/objects/Win_Kernel_Hook_Object.xsd +109 -109
  78. data/config/1.2/stix/cybox/objects/Win_Kernel_Object.xsd +128 -128
  79. data/config/1.2/stix/cybox/objects/Win_Mailslot_Object.xsd +56 -56
  80. data/config/1.2/stix/cybox/objects/Win_Memory_Page_Region_Object.xsd +198 -198
  81. data/config/1.2/stix/cybox/objects/Win_Mutex_Object.xsd +42 -42
  82. data/config/1.2/stix/cybox/objects/Win_Network_Route_Entry_Object.xsd +200 -200
  83. data/config/1.2/stix/cybox/objects/Win_Network_Share_Object.xsd +205 -205
  84. data/config/1.2/stix/cybox/objects/Win_Pipe_Object.xsd +73 -73
  85. data/config/1.2/stix/cybox/objects/Win_Prefetch_Object.xsd +113 -113
  86. data/config/1.2/stix/cybox/objects/Win_Process_Object.xsd +174 -174
  87. data/config/1.2/stix/cybox/objects/Win_Registry_Key_Object.xsd +290 -290
  88. data/config/1.2/stix/cybox/objects/Win_Semaphore_Object.xsd +42 -42
  89. data/config/1.2/stix/cybox/objects/Win_Service_Object.xsd +287 -287
  90. data/config/1.2/stix/cybox/objects/Win_System_Object.xsd +126 -126
  91. data/config/1.2/stix/cybox/objects/Win_System_Restore_Object.xsd +207 -207
  92. data/config/1.2/stix/cybox/objects/Win_Task_Object.xsd +755 -755
  93. data/config/1.2/stix/cybox/objects/Win_Thread_Object.xsd +146 -146
  94. data/config/1.2/stix/cybox/objects/Win_User_Account_Object.xsd +73 -73
  95. data/config/1.2/stix/cybox/objects/Win_Volume_Object.xsd +161 -161
  96. data/config/1.2/stix/cybox/objects/Win_Waitable_Timer_Object.xsd +90 -90
  97. data/config/1.2/stix/cybox/objects/X509_Certificate_Object.xsd +275 -275
  98. data/config/1.2/stix/data_marking.xsd +5 -5
  99. data/config/1.2/stix/exploit_target.xsd +2 -2
  100. data/config/1.2/stix/incident.xsd +1 -1
  101. data/config/1.2/stix/indicator.xsd +6 -6
  102. data/config/1.2/stix/report.xsd +6 -6
  103. data/config/1.2/stix/stix_common.xsd +22 -22
  104. data/config/1.2/stix/stix_core.xsd +7 -7
  105. data/config/1.2/stix/stix_default_vocabularies.xsd +8 -8
  106. data/config/1.2/stix/ttp.xsd +1 -1
  107. data/lib/stix_schema_spy/models/has_children.rb +3 -3
  108. data/lib/stix_schema_spy/version.rb +1 -1
  109. metadata +2 -2
@@ -1,1559 +1,1559 @@
1
- <?xml version='1.0' encoding='UTF-8'?>
2
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:SocketAddressObj="http://cybox.mitre.org/objects#SocketAddressObject-1" xmlns:NetFlowObj="http://cybox.mitre.org/objects#NetworkFlowObject-2" xmlns:PacketObj="http://cybox.mitre.org/objects#PacketObject-2" xmlns:AddressObj="http://cybox.mitre.org/objects#AddressObject-2" xmlns:cyboxCommon="http://cybox.mitre.org/common-2" targetNamespace="http://cybox.mitre.org/objects#NetworkFlowObject-2" elementFormDefault="qualified" version="2.1">
3
- <xs:annotation>
4
- <xs:documentation>This schema was originally developed by The MITRE Corporation. The CybOX XML Schema implementation is maintained by The MITRE Corporation and developed by the open CybOX Community. For more information, including how to get involved in the effort and how to submit change requests, please visit the CybOX website at http://cybox.mitre.org.</xs:documentation>
5
- <xs:appinfo>
6
- <schema>Network_Flow_Object</schema>
7
- <version>2.1</version>
8
- <date>01/22/2014</date>
9
- <short_description>The following specifies the fields and types that compose this defined CybOX Object type. Each defined object is an extension of the abstract ObjectPropertiesType, defined in CybOX Common. For more information on this extension mechanism, please see the CybOX Specification. This document is intended for developers and assumes some familiarity with XML. </short_description>
10
- <terms_of_use>Copyright (c) 2012-2014, The MITRE Corporation. All rights reserved. The contents of this file are subject to the terms of the CybOX License located at http://cybox.mitre.org/about/termsofuse.html. See the CybOX License for the specific language governing permissions and limitations for use of this schema. When distributing copies of the CybOX Schema, this license header must be included.</terms_of_use>
11
- </xs:appinfo>
12
- </xs:annotation>
13
- <xs:import namespace="http://cybox.mitre.org/objects#PacketObject-2" schemaLocation="Network_Packet_Object.xsd"/>
14
- <xs:import namespace="http://cybox.mitre.org/objects#AddressObject-2" schemaLocation="Address_Object.xsd"/>
15
- <xs:import namespace="http://cybox.mitre.org/common-2" schemaLocation="../cybox_common.xsd"/>
16
- <xs:import namespace="http://cybox.mitre.org/objects#SocketAddressObject-1" schemaLocation="Socket_Address_Object.xsd"/>
17
- <xs:element name="Network_Flow_Object" type="NetFlowObj:NetworkFlowObjectType">
18
- <xs:annotation>
19
- <xs:documentation>The Network_Flow_Object object provides a summary of network traffic, expressed as flows of multiple packets instead of individual packets, without the packet payload data (i.e. the actual data that was uploaded/downloaded to and from the Dest IP to Source IP as included in packet monitoring tools, such as Wireshark).</xs:documentation>
20
- </xs:annotation>
21
- </xs:element>
22
- <xs:complexType name="NetworkFlowObjectType">
23
- <xs:annotation>
24
- <xs:documentation>Defines the fields necessary to summarize network traffic, expressed as flows of multiple packets. Does not include the packet payload data (i.e. the actual data that was uploaded/downloaded to and from the Dest IP to Source IP as included in packet monitoring tools, such as Wireshark).</xs:documentation>
25
- </xs:annotation>
26
- <xs:complexContent>
27
- <xs:extension base="cyboxCommon:ObjectPropertiesType">
28
- <xs:sequence>
29
- <xs:element name="Network_Flow_Label" type="NetFlowObj:NetworkFlowLabelType" minOccurs="0" maxOccurs="1">
30
- <xs:annotation>
31
- <xs:documentation>Represents elements common to all flow records formats - either expressed as a 5-tuple or an extended 7-tuple (actually an 8-tuple because for organizational reasons, we include the egress interface index). Because these fields are defined here, they are excluded from the fields associated directly with each different flow record format type.</xs:documentation>
32
- </xs:annotation>
33
- </xs:element>
34
- <xs:choice minOccurs="0" maxOccurs="1">
35
- <xs:element name="Unidirectional_Flow_Record" type="NetFlowObj:UnidirectionalRecordType" minOccurs="0" maxOccurs="1">
36
- <xs:annotation>
37
- <xs:documentation>Represents flow-record formats that capture data in one direction only (e.g., Netflow v9).</xs:documentation>
38
- </xs:annotation>
39
- </xs:element>
40
- <xs:element name="Bidirectional_Flow_Record" type="NetFlowObj:BidirectionalRecordType" minOccurs="0" maxOccurs="1">
41
- <xs:annotation>
42
- <xs:documentation>Represents flow-record formats that capture data in both directions (e.g., YAF).</xs:documentation>
43
- </xs:annotation>
44
- </xs:element>
45
- </xs:choice>
46
- </xs:sequence>
47
- </xs:extension>
48
- </xs:complexContent>
49
- </xs:complexType>
50
- <xs:complexType name="NetworkLayerInfoType">
51
- <xs:annotation>
52
- <xs:documentation>Network layer information (relative to the OSI network model) which is typically captured in all types of network flow records.</xs:documentation>
53
- </xs:annotation>
54
- <xs:sequence>
55
- <xs:element name="Src_Socket_Address" type="SocketAddressObj:SocketAddressObjectType" minOccurs="0">
56
- <xs:annotation>
57
- <xs:documentation>Represents the source IP socket address, consisting of an IP address and port number, for the network flow expressed. Note that not all flow protocols support IPv6 addresses.</xs:documentation>
58
- </xs:annotation>
59
- </xs:element>
60
- <xs:element name="Dest_Socket_Address" type="SocketAddressObj:SocketAddressObjectType" minOccurs="0">
61
- <xs:annotation>
62
- <xs:documentation>Represents the destination IP socket address, consisting of an IP address and port number, for the network flow expressed. Note that not all flow protocols support IPv6 addresses.</xs:documentation>
63
- </xs:annotation>
64
- </xs:element>
65
- <xs:element name="IP_Protocol" type="PacketObj:IANAAssignedIPNumbersType" minOccurs="0">
66
- <xs:annotation>
67
- <xs:documentation>The IP Protocol of the network flow. This is usually TCP, UDP, or SCTP, but can include others as represented in NetFlow as an integer from 0 to 255. Please refer to http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml for reference.</xs:documentation>
68
- </xs:annotation>
69
- </xs:element>
70
- </xs:sequence>
71
- </xs:complexType>
72
- <xs:complexType name="NetworkFlowLabelType">
73
- <xs:annotation>
74
- <xs:documentation>The NetworkFlowLabelType contains elements that are common to all flow record formats. It builds off of network layer information (a 5-tuple that commonly defines a flow) and includes ingress and egress interface indexes and IP protocol information (not present if all flow record formats). Egress information is usually not thought of as part of the extended 7-tuple, but we include it for organizational purposes. Because these fields are defined here, they are excluded from the fields associated directly with each different flow record format type.</xs:documentation>
75
- </xs:annotation>
76
- <xs:complexContent>
77
- <xs:extension base="NetFlowObj:NetworkLayerInfoType">
78
- <xs:sequence minOccurs="0" maxOccurs="1">
79
- <xs:element name="Ingress_Interface_Index" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
80
- <xs:annotation>
81
- <xs:documentation>Represents the index (in SNMP, by default) of the network interface card where the flows entered the router.</xs:documentation>
82
- </xs:annotation>
83
- </xs:element>
84
- <xs:element name="Egress_Interface_Index" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
85
- <xs:annotation>
86
- <xs:documentation>Represents the index (in SNMP, by default) of the network interface card where the flows leave the router.</xs:documentation>
87
- </xs:annotation>
88
- </xs:element>
89
- <xs:element name="IP_Type_Of_Service" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
90
- <xs:annotation>
91
- <xs:documentation>Type of service field from the IP header. Specifies the IP Type of Service (ToS). See RFC 1349 for more information.</xs:documentation>
92
- </xs:annotation>
93
- </xs:element>
94
- </xs:sequence>
95
- </xs:extension>
96
- </xs:complexContent>
97
- </xs:complexType>
98
- <xs:complexType name="UnidirectionalRecordType">
99
- <xs:annotation>
100
- <xs:documentation>Netflow record formats that capture traffic in one direction.</xs:documentation>
101
- </xs:annotation>
102
- <xs:choice minOccurs="0" maxOccurs="1">
103
- <xs:element name="IPFIX_Message" type="NetFlowObj:IPFIXMessageType" minOccurs="0" maxOccurs="1">
104
- <xs:annotation>
105
- <xs:documentation>Represents an Internet Protocol Flow Information eXport (IPFIX) protocol. IPFIX is based on NetFlow v9. Has several extensions such as Enterprise-defined fields types and variable length fields. See RFC 5101 for more information.</xs:documentation>
106
- </xs:annotation>
107
- </xs:element>
108
- <xs:element name="NetflowV9_Export_Packet" type="NetFlowObj:NetflowV9ExportPacketType" minOccurs="0" maxOccurs="1">
109
- <xs:annotation>
110
- <xs:documentation>Represents the Netflow V9 flow record format. See RFC 3954 (Netflow v9) for more information.</xs:documentation>
111
- </xs:annotation>
112
- </xs:element>
113
- <xs:element name="NetflowV5_Packet" type="NetFlowObj:NetflowV5PacketType" minOccurs="0" maxOccurs="1">
114
- <xs:annotation>
115
- <xs:documentation>Represents the NetFlow v5 flow record format, which is commonly used to represent network flow data.</xs:documentation>
116
- </xs:annotation>
117
- </xs:element>
118
- <xs:element name="SiLK_Record" type="NetFlowObj:SiLKRecordType" minOccurs="0" maxOccurs="1">
119
- <xs:annotation>
120
- <xs:documentation>Represents a network flow record in the System for Internet-Level Knowledge (SiLK) format, developed by CERT at Carnegie Mellon University (CMU)'s Software Engineering Institute (SEI) as part of the NetSA security suite. See http://tools.netsa.cert.org/silk/analysis-handbook.pdf for more information.</xs:documentation>
121
- </xs:annotation>
122
- </xs:element>
123
- </xs:choice>
124
- </xs:complexType>
125
- <xs:complexType name="BidirectionalRecordType">
126
- <xs:annotation>
127
- <xs:documentation>Network record formats that capture traffic in both directions. Later, we plan to add Argus as a network flow format type. Argus supports bidirectional flows, and as such, is usually used as an alternative to NetFlow v5 analysis via SiLK (http://www.qosient.com/argus/).</xs:documentation>
128
- </xs:annotation>
129
- <xs:choice minOccurs="0" maxOccurs="1">
130
- <xs:element name="YAF_Record" type="NetFlowObj:YAFRecordType" minOccurs="0" maxOccurs="1">
131
- <xs:annotation>
132
- <xs:documentation>Represents flow records generated via YAF (Yet Another Flowmeter), a bidirectional network flow meter. See http://www.usenix.org/event/lisa10/tech/full_papers/Inacio.pdf or http://tools.netsa.cert.org/yaf/index.html for more information.</xs:documentation>
133
- </xs:annotation>
134
- </xs:element>
135
- </xs:choice>
136
- </xs:complexType>
137
- <xs:complexType name="IPFIXMessageType">
138
- <xs:annotation>
139
- <xs:documentation>The IPFIX protocol provides IP flow information. http://tools.ietf.org/html/rfc5101.</xs:documentation>
140
- </xs:annotation>
141
- <xs:sequence>
142
- <xs:element name="Message_Header" type="NetFlowObj:IPFIXMessageHeaderType" minOccurs="0" maxOccurs="1">
143
- <xs:annotation>
144
- <xs:documentation>The Message Header is the first part of an IPFIX Message, which provides basic information about the message, such as the IPFIX version, length of the message, message sequence number, etc. http://tools.ietf.org/html/rfc5101.</xs:documentation>
145
- </xs:annotation>
146
- </xs:element>
147
- <xs:sequence minOccurs="0" maxOccurs="1">
148
- <xs:element name="Set" type="NetFlowObj:IPFIXSetType" minOccurs="0" maxOccurs="unbounded">
149
- <xs:annotation>
150
- <xs:documentation>Set is a generic term for a collection of records that have a similar structure. In an IPFIX Message, one or more Sets follow the Message Header. http://tools.ietf.org/html/rfc5101.</xs:documentation>
151
- </xs:annotation>
152
- </xs:element>
153
- </xs:sequence>
154
- </xs:sequence>
155
- </xs:complexType>
156
- <xs:complexType name="IPFIXMessageHeaderType">
157
- <xs:annotation>
158
- <xs:documentation>This type represents the message header for the IPFIX format. For more information about each of the fields, please refer to RFC 5101 (http://tools.ietf.org/html/rfc5101) under the heading, "Message Header Field Descriptions." Note that common elements are included in the Network_Flow_Label.</xs:documentation>
159
- </xs:annotation>
160
- <xs:sequence minOccurs="0">
161
- <xs:element name="Version" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="0a" minOccurs="0" maxOccurs="1">
162
- <xs:annotation>
163
- <xs:documentation>Indicates the version number of Flow Record format exported in this message. The value of this field is 0x000a for the current version, incrementing by one the version used in the NetFlow services export version 9 [see RFC3954].</xs:documentation>
164
- </xs:annotation>
165
- </xs:element>
166
- <xs:element name="Byte_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
167
- <xs:annotation>
168
- <xs:documentation>Indicates the total byte length of the IPFIX Message, measured in octets, including Message Header and Set(s).</xs:documentation>
169
- </xs:annotation>
170
- </xs:element>
171
- <xs:element name="Export_Timestamp" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
172
- <xs:annotation>
173
- <xs:documentation>Indicates the time, in seconds, since 0000 UTC Jan 1, 1970, at which the IPFIX message header leaves the Exporter.</xs:documentation>
174
- </xs:annotation>
175
- </xs:element>
176
- <xs:element name="Sequence_Number" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
177
- <xs:annotation>
178
- <xs:documentation>Indicates the incremental sequence counter modulo 2^32 of all IPFIX Data Records sent on this PR-SCTP stream from the current Observation Domain by the Exporting Process. This value SHOULD be used by the Collecting Process to identify whether any IPFIX Data Records have been missed. Template and Options Template Records do not increase the Sequence Number.</xs:documentation>
179
- </xs:annotation>
180
- </xs:element>
181
- <xs:element name="Observation_Domain_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
182
- <xs:annotation>
183
- <xs:documentation>Indicates a 32-bit identifier of the Observation Domain that is locally unique to the Exporting Process. See RFC 5101 under Observation Domain ID for more information.</xs:documentation>
184
- </xs:annotation>
185
- </xs:element>
186
- </xs:sequence>
187
- </xs:complexType>
188
- <xs:complexType name="IPFIXSetType">
189
- <xs:annotation>
190
- <xs:documentation>Represents the possible sets of records that can be represented in an IPFIX message. See RFC 5101 and look for the terms "Template Set", "Options Template Set", and "Data Set", for more information.</xs:documentation>
191
- </xs:annotation>
192
- <xs:choice minOccurs="0" maxOccurs="unbounded">
193
- <xs:element name="Template_Set" type="NetFlowObj:IPFIXTemplateSetType" minOccurs="0" maxOccurs="1">
194
- <xs:annotation>
195
- <xs:documentation>Indicates a collection of one or more Template Records that have been grouped together in an IPFIX message.</xs:documentation>
196
- </xs:annotation>
197
- </xs:element>
198
- <xs:element name="Options_Template_Set" type="NetFlowObj:IPFIXOptionsTemplateSetType" minOccurs="0" maxOccurs="1">
199
- <xs:annotation>
200
- <xs:documentation>Indicates a collection of one or more Options Template Records that have been grouped together in an IPFIX message.</xs:documentation>
201
- </xs:annotation>
202
- </xs:element>
203
- <xs:element name="Data_Set" type="NetFlowObj:IPFIXDataSetType" minOccurs="0" maxOccurs="1">
204
- <xs:annotation>
205
- <xs:documentation>Indicates one or more Data Records, of the same type, that have been grouped together in an IPFIX message. Each Data Record is previously defined by a Template Record or an Options Template Record.</xs:documentation>
206
- </xs:annotation>
207
- </xs:element>
208
- </xs:choice>
209
- </xs:complexType>
210
- <xs:complexType name="IPFIXTemplateSetType">
211
- <xs:annotation>
212
- <xs:documentation>Specifies the regions of a Template Set, of which there are three: the Set Header, the collection of Template Records, and the optional padding at the end of the Template Set. See RFC 5101 under Set Format, which is section 3.3.1, for more information.</xs:documentation>
213
- </xs:annotation>
214
- <xs:sequence>
215
- <xs:element name="Set_Header" type="NetFlowObj:IPFIXSetHeaderType" minOccurs="0" maxOccurs="1">
216
- <xs:annotation>
217
- <xs:documentation>Indicates the Set Header region, which is 32-bit region containing the 16-bit fields Set ID and Length.</xs:documentation>
218
- </xs:annotation>
219
- </xs:element>
220
- <xs:element name="Template_Record" type="NetFlowObj:IPFIXTemplateRecordType" minOccurs="0" maxOccurs="unbounded">
221
- <xs:annotation>
222
- <xs:documentation>Indicates the region of Template Records. These are the same fields referenced in the IPFIXTemplateRecordType.</xs:documentation>
223
- </xs:annotation>
224
- </xs:element>
225
- <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
226
- <xs:annotation>
227
- <xs:documentation>Indicates the optional Padding at the end of a Template Set. As mentioned in RFC 5101, the Exporting Process MAY insert some padding octets, so that the subsequent Set starts at an aligned boundary. For security reasons, the padding octet(s) MUST be composed of zero (0) valued octets, and the padding length MUST be shorter than any allowable record in this Set. For more information see RFC 5101 under Padding.</xs:documentation>
228
- </xs:annotation>
229
- </xs:element>
230
- </xs:sequence>
231
- </xs:complexType>
232
- <xs:complexType name="IPFIXOptionsTemplateSetType">
233
- <xs:annotation>
234
- <xs:documentation>Specifies the regions of an Options Template Set, of which there are three: the Set Header, the collection of Options Template Records, and the optional padding at the end of the Options Template Set. See RFC 5101 under Set Format, which is section 3.3.1, for more information.</xs:documentation>
235
- </xs:annotation>
236
- <xs:sequence>
237
- <xs:element name="Set_Header" type="NetFlowObj:IPFIXSetHeaderType" minOccurs="0" maxOccurs="1">
238
- <xs:annotation>
239
- <xs:documentation>Indicates the Set Header region, which is 32-bit region containing the 16-bit fields Set ID and Length, in that order. These are the same fields referenced in the IPFIXSetHeaderType.</xs:documentation>
240
- </xs:annotation>
241
- </xs:element>
242
- <xs:element name="Options_Template_Record" type="NetFlowObj:IPFIXOptionsTemplateRecordType" minOccurs="0" maxOccurs="unbounded">
243
- <xs:annotation>
244
- <xs:documentation>Indicates the region of Options Template Records. These are the same fields referenced in the IPFIXOptionsTemplateRecordType.</xs:documentation>
245
- </xs:annotation>
246
- </xs:element>
247
- <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
248
- <xs:annotation>
249
- <xs:documentation>Indicates the optional Padding at the end of an Options Template Set. As mentioned in RFC 5101, the Exporting Process MAY insert some padding octets, so that the subsequent Set starts at an aligned boundary. For security reasons, the padding octet(s) MUST be composed of zero (0) valued octets, and the padding length MUST be shorter than any allowable record in this Set. For more information see RFC 5101 under Padding.</xs:documentation>
250
- </xs:annotation>
251
- </xs:element>
252
- </xs:sequence>
253
- </xs:complexType>
254
- <xs:complexType name="IPFIXDataSetType">
255
- <xs:annotation>
256
- <xs:documentation>Specifies the regions of a Data Set, of which there are three: the Set Header, the collection of Data Records, and the optional padding at the end of the Data Set. See RFC 5101 under Set Format, which is section 3.3.1, for more information.</xs:documentation>
257
- </xs:annotation>
258
- <xs:sequence>
259
- <xs:element name="Set_Header" type="NetFlowObj:IPFIXSetHeaderType" minOccurs="0" maxOccurs="1">
260
- <xs:annotation>
261
- <xs:documentation>Indicates the Set Header region, which is 32-bit region containing the 16-bit fields Set ID and Length, appended in that order. These are the same fields referenced in the IPFIXSetHeaderType.</xs:documentation>
262
- </xs:annotation>
263
- </xs:element>
264
- <xs:element name="Data_Record" type="NetFlowObj:IPFIXDataRecordType" minOccurs="0" maxOccurs="unbounded">
265
- <xs:annotation>
266
- <xs:documentation>Indicates the region of Data Records, which consist of a series of field values without a header, according to RFC 5101, section 3.4.3.</xs:documentation>
267
- </xs:annotation>
268
- </xs:element>
269
- <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
270
- <xs:annotation>
271
- <xs:documentation>Indicates the optional Padding at the end of a Data Set. As mentioned in RFC 5101, the Exporting Process MAY insert some padding octets, so that the subsequent Set starts at an aligned boundary. For security reasons, the padding octet(s) MUST be composed of zero (0) valued octets, and the padding length MUST be shorter than any allowable record in this Set. For more information see RFC 5101 under Padding.</xs:documentation>
272
- </xs:annotation>
273
- </xs:element>
274
- </xs:sequence>
275
- </xs:complexType>
276
- <xs:complexType name="IPFIXSetHeaderType">
277
- <xs:annotation>
278
- <xs:documentation>Defines the elements of the IPFIX set header.</xs:documentation>
279
- </xs:annotation>
280
- <xs:sequence>
281
- <xs:element name="Set_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
282
- <xs:annotation>
283
- <xs:documentation>Indicates a 16-bit value that identifies the set. The values of 0 and 1 are not used for historical reasons according to RFC 3954. Otherwise, a value of 2 is reserved for the Template Set and 3 is reserved for the Option Template Set. All other values from 4 to 255 are reserved for future use.</xs:documentation>
284
- </xs:annotation>
285
- </xs:element>
286
- <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
287
- <xs:annotation>
288
- <xs:documentation>Total length of the set, in octets, including the set header, all records, and the optional padding. Because an individual Set MAY contain multiple records, the Length value MUST be used to determine the position of the next Set. http://tools.ietf.org/html/rfc5101.</xs:documentation>
289
- </xs:annotation>
290
- </xs:element>
291
- </xs:sequence>
292
- </xs:complexType>
293
- <xs:complexType name="IPFIXTemplateRecordType">
294
- <xs:annotation>
295
- <xs:documentation>Specifies the regions of a Template Record, of which there are two: the Template Record Header, and the Field Specifiers. See RFC 5101 under Template Record Format, section 3.4.1, for more information.</xs:documentation>
296
- </xs:annotation>
297
- <xs:sequence>
298
- <xs:element name="Template_Record_Header" type="NetFlowObj:IPFIXTemplateRecordHeaderType" minOccurs="0" maxOccurs="1">
299
- <xs:annotation>
300
- <xs:documentation>Indicates the Template Record Header region, which is a 32-bit region containing the 16-bit fields Template ID (&gt; 255) and Field Count, appended in that order. These are the same fields referenced in the IPFIXTemplateRecordHeaderType.</xs:documentation>
301
- </xs:annotation>
302
- </xs:element>
303
- <xs:element name="Field_Specifier" type="NetFlowObj:IPFIXTemplateRecordFieldSpecifiersType" minOccurs="0" maxOccurs="unbounded">
304
- <xs:annotation>
305
- <xs:documentation>Indicates the region of Field Specifiers. These are the same fields referenced in the IPFIXTemplateRecordFieldSpecifiersType.</xs:documentation>
306
- </xs:annotation>
307
- </xs:element>
308
- </xs:sequence>
309
- </xs:complexType>
310
- <xs:complexType name="IPFIXTemplateRecordHeaderType">
311
- <xs:annotation>
312
- <xs:documentation>Specifies the fields in a Template Record Header, Template_ID and Field_Count, as explained in RFC 5101, section 3.4.1.</xs:documentation>
313
- </xs:annotation>
314
- <xs:sequence>
315
- <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
316
- <xs:annotation>
317
- <xs:documentation>Specifies a unique Template ID which is numbered 256-65535 since IDs 0-255 are reserved for Template Sets, Options Template Sets, and other reserved Sets yet to be created.</xs:documentation>
318
- </xs:annotation>
319
- </xs:element>
320
- <xs:element name="Field_Count" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
321
- <xs:annotation>
322
- <xs:documentation>Specifies the number of fields in this Template Record.</xs:documentation>
323
- </xs:annotation>
324
- </xs:element>
325
- </xs:sequence>
326
- </xs:complexType>
327
- <xs:complexType name="IPFIXTemplateRecordFieldSpecifiersType">
328
- <xs:annotation>
329
- <xs:documentation>Specifies the fields in a Template Record Field Specifier, as explained in RFC 5101, section 3.2.</xs:documentation>
330
- </xs:annotation>
331
- <xs:sequence>
332
- <xs:element name="Enterprise_Bit" type="xs:boolean" minOccurs="0" maxOccurs="1">
333
- <xs:annotation>
334
- <xs:documentation>Specifies the Enterprise bit, either 0 or 1. If this bit is zero, the Information Element Identifier identifies an IETF-specified Information Element, and the four-octet Enterprise Number field SHOULD NOT be present. If this bit is one, the Information Element identifier identifies an enterprise-specific Information Element, and the Enterprise Number filed SHOULD be present. NOTE: While it is legal to use "true" and "false" here, this value SHOULD be set to 0 or 1 for consistency with RFC 5101.</xs:documentation>
335
- </xs:annotation>
336
- </xs:element>
337
- <xs:element name="Information_Element_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
338
- <xs:annotation>
339
- <xs:documentation>Specifies the 15-bit (NOT 16-bit) Information Element ID referring to the type of Information Element, as shown in RFC 5102.</xs:documentation>
340
- </xs:annotation>
341
- </xs:element>
342
- <xs:element name="Field_Length" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
343
- <xs:annotation>
344
- <xs:documentation>Specifies the 16-bit Field Length, in octets, of the corresponding encoded Information Element as defined in RFC 5102. The field length may be smaller than the definition in RFC 5102 if the reduced size encoding is used (see Section 6.2 of RFC 5101). The value 65535 is reserved for variable length Information Elements.</xs:documentation>
345
- </xs:annotation>
346
- </xs:element>
347
- <xs:element name="Enterprise_Number" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
348
- <xs:annotation>
349
- <xs:documentation>Specifies the 32-bit IANA Enterprise Number of the authority defining the Information Element identifier in this Template Record. Information Element Identifiers 1.2 and 2.1 are defined by the IETF (Enterprise bit = 0) and, therefore, do not need an Enterprise Number to identify them.</xs:documentation>
350
- </xs:annotation>
351
- </xs:element>
352
- </xs:sequence>
353
- </xs:complexType>
354
- <xs:complexType name="IPFIXOptionsTemplateRecordType">
355
- <xs:annotation>
356
- <xs:documentation>Specifies the regions of an Options Template Record, of which there are two: the Options Template Record Header, and the Field Specifiers. See RFC 5101 under Options Template Record Format, section 3.4.2.2, for more information.</xs:documentation>
357
- </xs:annotation>
358
- <xs:sequence>
359
- <xs:element name="Options_Template_Record_Header" type="NetFlowObj:IPFIXOptionsTemplateRecordHeaderType" minOccurs="0" maxOccurs="1">
360
- <xs:annotation>
361
- <xs:documentation>Indicates the Options Template Record Header region, which is a 48-bit region containing the 16-bit fields Template ID, Field Count, and Scope Field Count, appended in that order.</xs:documentation>
362
- </xs:annotation>
363
- </xs:element>
364
- <xs:element name="Field_Specifier" type="NetFlowObj:IPFIXOptionsTemplateRecordFieldSpecifiersType" minOccurs="0" maxOccurs="unbounded">
365
- <xs:annotation>
366
- <xs:documentation>Indicates the region of Field Specifiers. These are the same fields referenced in the IPFIXOptionsTemplateRecordFieldSpecifiersType.</xs:documentation>
367
- </xs:annotation>
368
- </xs:element>
369
- </xs:sequence>
370
- </xs:complexType>
371
- <xs:complexType name="IPFIXOptionsTemplateRecordHeaderType">
372
- <xs:annotation>
373
- <xs:documentation>Defines the header of an options template record.</xs:documentation>
374
- </xs:annotation>
375
- <xs:sequence>
376
- <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
377
- <xs:annotation>
378
- <xs:documentation>Specifies a unique Template ID which is numbered 256-65535 since IDs 0-255 are reserved for Template Sets, Options Template Sets, and other reserved Sets yet to be created.</xs:documentation>
379
- </xs:annotation>
380
- </xs:element>
381
- <xs:element name="Field_Count" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
382
- <xs:annotation>
383
- <xs:documentation>Specifies the number of fields in this Options Template Record, INCLUDING the Scope Fields.</xs:documentation>
384
- </xs:annotation>
385
- </xs:element>
386
- <xs:element name="Scope_Field_Count" type="cyboxCommon:PositiveIntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
387
- <xs:annotation>
388
- <xs:documentation>Specifies the number of scope fields in this Options Template Record, which is NONZERO. The Scope Fields are normal Fields except that they are interpreted as scope at the Collector.</xs:documentation>
389
- </xs:annotation>
390
- </xs:element>
391
- </xs:sequence>
392
- </xs:complexType>
393
- <xs:complexType name="IPFIXOptionsTemplateRecordFieldSpecifiersType">
394
- <xs:annotation>
395
- <xs:documentation>Specifies the fields in an Options Template Record Field Specifier, as explained in RFC 5101, sections 3.2 and 3.4.2.2. It consists of two sequences: Scope Fields and Option Fields, appended together.</xs:documentation>
396
- </xs:annotation>
397
- <xs:sequence>
398
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
399
- <xs:element name="Scope_Enterprise_Bit" type="xs:boolean" minOccurs="0" maxOccurs="1">
400
- <xs:annotation>
401
- <xs:documentation>Specifies the Scope Enterprise bit, either 0 or 1. If this bit is zero, the Information Element Identifier identifies an IETF-specified Information Element, and the four-octet Enterprise Number field SHOULD NOT be present. If this bit is one, the Information Element identifier identifies an enterprise-specific Information Element, and the Enterprise Number filed SHOULD be present. NOTE: While it is legal to use "true" and "false" here, this value SHOULD be set to 0 or 1 for consistency with RFC 5101.</xs:documentation>
402
- </xs:annotation>
403
- </xs:element>
404
- <xs:element name="Scope_Information_Element_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
405
- <xs:annotation>
406
- <xs:documentation>Specifies the 15-bit (NOT 16-bit) Scope Information Element ID referring to the type of Information Element, as shown in RFC 5102.</xs:documentation>
407
- </xs:annotation>
408
- </xs:element>
409
- <xs:element name="Scope_Field_Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
410
- <xs:annotation>
411
- <xs:documentation>Specifies the 16-bit Scope Field Length, in octets, of the corresponding encoded Information Element as defined in RFC 5102. The field length may be smaller than the definition in RFC 5102 if the reduced size encoding is used (see Section 6.2 of RFC 5101). The value 65535 is reserved for variable length Information Elements.</xs:documentation>
412
- </xs:annotation>
413
- </xs:element>
414
- <xs:element name="Scope_Enterprise_Number" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
415
- <xs:annotation>
416
- <xs:documentation>Specifies the 32-bit IANA Scope Enterprise Number of the authority defining the Information Element identifier in this Template Record. Information Element Identifiers 1.2 and 2.1 are defined by the IETF (Enterprise bit = 0) and, therefore, do not need an Enterprise Number to identify them.</xs:documentation>
417
- </xs:annotation>
418
- </xs:element>
419
- </xs:sequence>
420
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
421
- <xs:element name="Option_Enterprise_Bit" type="xs:boolean" minOccurs="0" maxOccurs="1">
422
- <xs:annotation>
423
- <xs:documentation>Specifies the Option Enterprise bit, either 0 or 1. If this bit is zero, the Information Element Identifier identifies an IETF-specified Information Element, and the four-octet Enterprise Number field SHOULD NOT be present. If this bit is one, the Information Element identifier identifies an enterprise-specific Information Element, and the Enterprise Number filed SHOULD be present. NOTE: While it is legal to use "true" and "false" here, this value SHOULD be set to 0 or 1 for consistency with RFC 5101.</xs:documentation>
424
- </xs:annotation>
425
- </xs:element>
426
- <xs:element name="Option_Information_Element_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
427
- <xs:annotation>
428
- <xs:documentation>Specifies the 15-bit (NOT 16-bit) Option Information Element ID referring to the type of Information Element, as shown in RFC 5102.</xs:documentation>
429
- </xs:annotation>
430
- </xs:element>
431
- <xs:element name="Option_Field_Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
432
- <xs:annotation>
433
- <xs:documentation>Specifies the 16-bit Option Field Length, in octets, of the corresponding encoded Information Element as defined in RFC 5102. The field length may be smaller than the definition in RFC 5102 if the reduced size encoding is used (see Section 6.2 of RFC 5101). The value 65535 is reserved for variable length Information Elements.</xs:documentation>
434
- </xs:annotation>
435
- </xs:element>
436
- <xs:element name="Option_Enterprise_Number" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
437
- <xs:annotation>
438
- <xs:documentation>Specifies the 32-bit IANA Option Enterprise Number of the authority defining the Information Element identifier in this Template Record. Information Element Identifiers 1.2 and 2.1 are defined by the IETF (Enterprise bit = 0) and, therefore, do not need an Enterprise Number to identify them.</xs:documentation>
439
- </xs:annotation>
440
- </xs:element>
441
- </xs:sequence>
442
- </xs:sequence>
443
- </xs:complexType>
444
- <xs:complexType name="IPFIXDataRecordType">
445
- <xs:annotation>
446
- <xs:documentation>Data records are sent in data sets. A data record consists of only one more Field values.</xs:documentation>
447
- </xs:annotation>
448
- <xs:sequence>
449
- <xs:element name="Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="unbounded">
450
- <xs:annotation>
451
- <xs:documentation>Indicates the individual Field Value, which need not be 16-bit. The Template ID to which the Field Values belong to is encoded in the Data Set Header field "Set ID", i.e. "Set ID" = "Template ID".</xs:documentation>
452
- </xs:annotation>
453
- </xs:element>
454
- </xs:sequence>
455
- </xs:complexType>
456
- <xs:complexType name="NetflowV9ExportPacketType">
457
- <xs:annotation>
458
- <xs:documentation>Netflow v9 was developed by Cisco and provides access to IP flow information. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
459
- </xs:annotation>
460
- <xs:sequence>
461
- <xs:element name="Packet_Header" type="NetFlowObj:NetflowV9PacketHeaderType" minOccurs="0" maxOccurs="1">
462
- <xs:annotation>
463
- <xs:documentation>Specifies the Packet Header, which is the first part of an Export Packet. The Packet Header provides basic information about the packet such as the NetFlow version, number of records contained within the packet, and sequence numbering. See RFC 3954 for more information.</xs:documentation>
464
- </xs:annotation>
465
- </xs:element>
466
- <xs:sequence>
467
- <xs:element name="Flow_Set" type="NetFlowObj:NetflowV9FlowSetType" minOccurs="0" maxOccurs="unbounded">
468
- <xs:annotation>
469
- <xs:documentation>Specifies a FlowSet, which is a collection of Flow Records that have similar structure. In an Export Packet, one or more FlowSets follow the Packet Header. There are three different types of FlowSets, as defined in RFC 3954: a Template FlowSet, Options Template FlowSet and Data FlowSet.</xs:documentation>
470
- </xs:annotation>
471
- </xs:element>
472
- </xs:sequence>
473
- </xs:sequence>
474
- </xs:complexType>
475
- <xs:complexType name="NetflowV9PacketHeaderType">
476
- <xs:annotation>
477
- <xs:documentation>Header fields defined for Netflow v9. Note that common elements are included in the Network_Flow_Label. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
478
- </xs:annotation>
479
- <xs:sequence>
480
- <xs:element name="Version" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="09" minOccurs="0" maxOccurs="1">
481
- <xs:annotation>
482
- <xs:documentation>Specifies the version of flow record format exported in this packet. The value of this field is 9 for the Netflow v9.</xs:documentation>
483
- </xs:annotation>
484
- </xs:element>
485
- <xs:element name="Record_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
486
- <xs:annotation>
487
- <xs:documentation>Specifies the total number of records in the Export Packet, which is the sum of Options FlowSet records, Template FlowSet records, and Data FlowSet records. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
488
- </xs:annotation>
489
- </xs:element>
490
- <xs:element name="Sys_Up_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
491
- <xs:annotation>
492
- <xs:documentation>Specifies the time in milliseconds since this device was first booted.</xs:documentation>
493
- </xs:annotation>
494
- </xs:element>
495
- <xs:element name="Unix_Secs" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
496
- <xs:annotation>
497
- <xs:documentation>Specifies the time in seconds since 0000 UTC 1970 at which the Export Packet leaves the Exporter.</xs:documentation>
498
- </xs:annotation>
499
- </xs:element>
500
- <xs:element name="Sequence_Number" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
501
- <xs:annotation>
502
- <xs:documentation>Incremental sequence counter of all Export Packets sent from the current Observation Domain by the Exporter. This value MUST be cumulative, and SHOULD be used by the Collector to identify whether any Export Packets have been missed. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
503
- </xs:annotation>
504
- </xs:element>
505
- <xs:element name="Source_ID" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
506
- <xs:annotation>
507
- <xs:documentation>Specifies a 32-bit value that identifies the Exporter Observation Domain. NetFlow Collectors SHOULD use the combination of the source IP address and the Source ID field to separate different export streams originating from the same Exporter.</xs:documentation>
508
- </xs:annotation>
509
- </xs:element>
510
- </xs:sequence>
511
- </xs:complexType>
512
- <xs:complexType name="NetflowV9FlowSetType">
513
- <xs:annotation>
514
- <xs:documentation>In an Export Packet, one or more FlowSets follow the Packet Header. There are three different types of FlowSets, as defined in RFC 3954: a Template FlowSet, Options Template FlowSet and Data FlowSet.</xs:documentation>
515
- </xs:annotation>
516
- <xs:choice minOccurs="0" maxOccurs="unbounded">
517
- <xs:element name="Template_Flow_Set" type="NetFlowObj:NetflowV9TemplateFlowSetType" minOccurs="0" maxOccurs="1">
518
- <xs:annotation>
519
- <xs:documentation>One of the essential elements in the NetFlow format is the Template FlowSet. Templates greatly enhance the flexibility of the Flow Record format because they allow the NetFlow Collector to process Flow Records without necessarily knowing the interpretation of all the data in the Flow Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
520
- </xs:annotation>
521
- </xs:element>
522
- <xs:element name="Options_Template_Flow_Set" type="NetFlowObj:NetflowV9OptionsTemplateFlowSetType" minOccurs="0" maxOccurs="1">
523
- <xs:annotation>
524
- <xs:documentation>Specifies an Options Template FlowSet, which is one or more Options Template Records that have been grouped together in an Export Packet.</xs:documentation>
525
- </xs:annotation>
526
- </xs:element>
527
- <xs:element name="Data_Flow_Set" type="NetFlowObj:NetflowV9DataFlowSetType" minOccurs="0" maxOccurs="1">
528
- <xs:annotation>
529
- <xs:documentation>Specifies a Data FlowSet, which is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record.</xs:documentation>
530
- </xs:annotation>
531
- </xs:element>
532
- </xs:choice>
533
- </xs:complexType>
534
- <xs:complexType name="NetflowV9TemplateFlowSetType">
535
- <xs:annotation>
536
- <xs:documentation>Provides the format of the Template FlowSet.</xs:documentation>
537
- </xs:annotation>
538
- <xs:sequence>
539
- <xs:element name="Flow_Set_ID" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="00" minOccurs="0" maxOccurs="1">
540
- <xs:annotation>
541
- <xs:documentation>Specifies the FlowSet ID, which is fixed to 0 for the Template FlowSet.</xs:documentation>
542
- </xs:annotation>
543
- </xs:element>
544
- <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
545
- <xs:annotation>
546
- <xs:documentation>Length is the sum of the lengths of the FlowSet ID, the Length itself, and all Template Records within this FlowSet.</xs:documentation>
547
- </xs:annotation>
548
- </xs:element>
549
- <xs:element name="Template_Record" type="NetFlowObj:NetflowV9TemplateRecordType" minOccurs="0" maxOccurs="unbounded">
550
- <xs:annotation>
551
- <xs:documentation>Specifies the Template Record region, which includes the template ID, field count, field type, and field length.</xs:documentation>
552
- </xs:annotation>
553
- </xs:element>
554
- </xs:sequence>
555
- </xs:complexType>
556
- <xs:complexType name="NetflowV9TemplateRecordType">
557
- <xs:annotation>
558
- <xs:documentation>Specifies the Template Record region, which includes the template ID, field count, field type, and field length.</xs:documentation>
559
- </xs:annotation>
560
- <xs:sequence>
561
- <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
562
- <xs:annotation>
563
- <xs:documentation>Specifies a unique Template ID for the Template Record. IDs in the range 0-255 are reserved for Template FlowSets, Options FlowSets, and other reserved Sets yet to be created. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
564
- </xs:annotation>
565
- </xs:element>
566
- <xs:element name="Field_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
567
- <xs:annotation>
568
- <xs:documentation>Specifies the number of fields in this Template Record.</xs:documentation>
569
- </xs:annotation>
570
- </xs:element>
571
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
572
- <xs:annotation>
573
- <xs:documentation>Number of fields corresponds to Count field.</xs:documentation>
574
- </xs:annotation>
575
- <xs:element name="Field_Type" type="NetFlowObj:NetflowV9FieldType" minOccurs="0" maxOccurs="1">
576
- <xs:annotation>
577
- <xs:documentation>Specifies a numeric value that represents the type of the field. Refer to the "Field Type Definitions" section in RFC 3954 for descriptions of these types.</xs:documentation>
578
- </xs:annotation>
579
- </xs:element>
580
- <xs:element name="Field_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
581
- <xs:annotation>
582
- <xs:documentation>Specifies the length of the corresponding field type, in bytes.</xs:documentation>
583
- </xs:annotation>
584
- </xs:element>
585
- </xs:sequence>
586
- </xs:sequence>
587
- </xs:complexType>
588
- <xs:complexType name="NetflowV9FieldType">
589
- <xs:annotation>
590
- <xs:documentation>NetflowV9FieldType specifies possible fields types for Netflow v9, via a union of the NetflowV9FieldTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
591
- </xs:annotation>
592
- <xs:simpleContent>
593
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
594
- <xs:simpleType>
595
- <xs:union memberTypes="NetFlowObj:NetflowV9FieldTypeEnum xs:string"/>
596
- </xs:simpleType>
597
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
598
- <xs:annotation>
599
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
600
- </xs:annotation>
601
- </xs:attribute>
602
- </xs:restriction>
603
- </xs:simpleContent>
604
- </xs:complexType>
605
- <xs:simpleType name="NetflowV9FieldTypeEnum">
606
- <xs:annotation>
607
- <xs:documentation>This enumeration describe the field types in NetFlow Version 9. Only the first 20 have been enumerated so far. Please see Section 8 in http://www.ietf.org/rfc/rfc3954.txt for the complete list (79 in total).</xs:documentation>
608
- </xs:annotation>
609
- <xs:restriction base="xs:string">
610
- <xs:enumeration value="IN_BYTES(1)">
611
- <xs:annotation>
612
- <xs:documentation>The IN_BYTES(1) field represents the incoming counter with length N x 8 bits for number of bytes associated with an IP Flow.</xs:documentation>
613
- </xs:annotation>
614
- </xs:enumeration>
615
- <xs:enumeration value="IN_PKTS(2)">
616
- <xs:annotation>
617
- <xs:documentation>The IN_PKTS(2) field represents the incoming counter with length N x 8 bits for the number of packets associated with an IP Flow.</xs:documentation>
618
- </xs:annotation>
619
- </xs:enumeration>
620
- <xs:enumeration value="FLOWS(3)">
621
- <xs:annotation>
622
- <xs:documentation>The FLOWS(3) field represents the number of flows that were aggregated; default for N is 4.</xs:documentation>
623
- </xs:annotation>
624
- </xs:enumeration>
625
- <xs:enumeration value="PROTOCOL(4)">
626
- <xs:annotation>
627
- <xs:documentation>The PROTOCOL(4) field represents the IP protocol byte.</xs:documentation>
628
- </xs:annotation>
629
- </xs:enumeration>
630
- <xs:enumeration value="SRC_TOS(5)">
631
- <xs:annotation>
632
- <xs:documentation>The TOS(5) field represents the Type of Service byte setting when entering incoming interface.</xs:documentation>
633
- </xs:annotation>
634
- </xs:enumeration>
635
- <xs:enumeration value="TCP_FLAGS(6)">
636
- <xs:annotation>
637
- <xs:documentation>The TCP_FLAGS(6) field is cumulative of all the TCP flags seen for this flow.</xs:documentation>
638
- </xs:annotation>
639
- </xs:enumeration>
640
- <xs:enumeration value="L4_SRC_PORT(7)">
641
- <xs:annotation>
642
- <xs:documentation>The L4_SRC_PORT(7) field represents the TCP/UDP source port number i.e.: FTP, Telnet, or equivalent.</xs:documentation>
643
- </xs:annotation>
644
- </xs:enumeration>
645
- <xs:enumeration value="IPV4_SRC_ADDR(8)">
646
- <xs:annotation>
647
- <xs:documentation>The IPV4_SRC_ADDR(8) field represents the IPv4 source address.</xs:documentation>
648
- </xs:annotation>
649
- </xs:enumeration>
650
- <xs:enumeration value="SRC_MASK(9)">
651
- <xs:annotation>
652
- <xs:documentation>The SRC_MASK(9) field represents the number of contiguous bits in the source address subnet mask i.e.: the submask in slash notation.</xs:documentation>
653
- </xs:annotation>
654
- </xs:enumeration>
655
- <xs:enumeration value="INPUT_SNMP(10)">
656
- <xs:annotation>
657
- <xs:documentation>The INPUT_SNMP(10) field represents the number of contiguous bits in the source address subnet mask i.e.: the submask in slash notation.</xs:documentation>
658
- </xs:annotation>
659
- </xs:enumeration>
660
- <xs:enumeration value="L4_DST_PORT(11)">
661
- <xs:annotation>
662
- <xs:documentation>The LP_DST_PORT(11) field represents the TCP/UDP destination port number i.e.: FTP, Telnet, or equivalent.</xs:documentation>
663
- </xs:annotation>
664
- </xs:enumeration>
665
- <xs:enumeration value="IPV4_DST_ADDR(12)">
666
- <xs:annotation>
667
- <xs:documentation>The IPV4_DST_ADDR(12) field represents the IPv4 destination address.</xs:documentation>
668
- </xs:annotation>
669
- </xs:enumeration>
670
- <xs:enumeration value="DST_MASK(13)">
671
- <xs:annotation>
672
- <xs:documentation>The DST_MASK(13) field represents the number of contiguous bits in the destination address subnet mask i.e.: the submask in slash notation.</xs:documentation>
673
- </xs:annotation>
674
- </xs:enumeration>
675
- <xs:enumeration value="OUTPUT_SNMP(14)">
676
- <xs:annotation>
677
- <xs:documentation>The OUTPUT_SNMP(14) field represents the output interface index; default for N is 2 but higher values could be used.</xs:documentation>
678
- </xs:annotation>
679
- </xs:enumeration>
680
- <xs:enumeration value="IPV4_NEXT_HOP(15)">
681
- <xs:annotation>
682
- <xs:documentation>The IPV4_NEXT_HOP(15) field represents the IPv4 address of next-hop router.</xs:documentation>
683
- </xs:annotation>
684
- </xs:enumeration>
685
- <xs:enumeration value="SRC_AS(16)">
686
- <xs:annotation>
687
- <xs:documentation>The SRC_AS(16) field represents the source BGP autonomous system number where N could be 2 or 4.</xs:documentation>
688
- </xs:annotation>
689
- </xs:enumeration>
690
- <xs:enumeration value="DST_AS(17)">
691
- <xs:annotation>
692
- <xs:documentation>The DST_AS(17) field represents the destination BGP autonomous system number where N could be 2 or 4.</xs:documentation>
693
- </xs:annotation>
694
- </xs:enumeration>
695
- <xs:enumeration value="BGP_IPV4_NEXT_HOP(18)">
696
- <xs:annotation>
697
- <xs:documentation>The BGP_IPV4_NEXT_HOP(18) field represents the next-hop router's IP in the BGP domain.</xs:documentation>
698
- </xs:annotation>
699
- </xs:enumeration>
700
- <xs:enumeration value="MUL_DST_PKTS(19)">
701
- <xs:annotation>
702
- <xs:documentation>The MUL_DST_PKTS(19) field represents the IP multicast outgoing packet counter with length N x 8 bits for packets associated with the IP Flow.</xs:documentation>
703
- </xs:annotation>
704
- </xs:enumeration>
705
- <xs:enumeration value="MUL_DST_BYTES(20)">
706
- <xs:annotation>
707
- <xs:documentation>The MUL_DST_BYTES(20) field represents the IP multicast outgoing byte counter with length N x 8 bits for bytes associated with the IP Flow.</xs:documentation>
708
- </xs:annotation>
709
- </xs:enumeration>
710
- </xs:restriction>
711
- </xs:simpleType>
712
- <xs:complexType name="NetflowV9OptionsTemplateFlowSetType">
713
- <xs:annotation>
714
- <xs:documentation>Specifies an Options Template FlowSet, which is one or more Options Template Records that have been grouped together in an Export Packet.</xs:documentation>
715
- </xs:annotation>
716
- <xs:sequence>
717
- <xs:element name="Flow_Set_ID" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="01" minOccurs="0" maxOccurs="1">
718
- <xs:annotation>
719
- <xs:documentation>Specifies the FlowSet ID, which is fixed to 1 for the Options Template FlowSet.</xs:documentation>
720
- </xs:annotation>
721
- </xs:element>
722
- <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
723
- <xs:annotation>
724
- <xs:documentation>Specifies the total length of this FlowSet, in octets, including the set header, all records, and the optional padding.</xs:documentation>
725
- </xs:annotation>
726
- </xs:element>
727
- <xs:element name="Options_Template_Record" type="NetFlowObj:NetflowV9OptionsTemplateRecordType" minOccurs="0" maxOccurs="unbounded">
728
- <xs:annotation>
729
- <xs:documentation>Specifies the Options Template Record region, which includes the Option Scope Length, Option Length, and fields specifying the Scope field type and Scope field length.</xs:documentation>
730
- </xs:annotation>
731
- </xs:element>
732
- <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
733
- <xs:annotation>
734
- <xs:documentation>Specifies the number of padding bytes to be inserted so that the subsequent FlowSet starts at a 4-byte aligned boundary. It is important to note that the Length field includes the padding bytes. Padding SHOULD be using zeros.</xs:documentation>
735
- </xs:annotation>
736
- </xs:element>
737
- </xs:sequence>
738
- </xs:complexType>
739
- <xs:complexType name="NetflowV9OptionsTemplateRecordType">
740
- <xs:annotation>
741
- <xs:documentation>Specifies the Options Template Record region, which includes the Option Scope Length, Option Length, and fields specifying the Scope field type and Scope field length.</xs:documentation>
742
- </xs:annotation>
743
- <xs:sequence>
744
- <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
745
- <xs:annotation>
746
- <xs:documentation>Specifies the template ID of this Options Template, which must be greater than 255.</xs:documentation>
747
- </xs:annotation>
748
- </xs:element>
749
- <xs:element name="Option_Scope_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
750
- <xs:annotation>
751
- <xs:documentation>Specifies the length of bytes of any Scope field definition contained in the Options Template Record.</xs:documentation>
752
- </xs:annotation>
753
- </xs:element>
754
- <xs:element name="Option_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
755
- <xs:annotation>
756
- <xs:documentation>Specifies the length of bytes of any options field definitions contained in this Options Template Record.</xs:documentation>
757
- </xs:annotation>
758
- </xs:element>
759
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
760
- <xs:element name="Scope_Field_Type" type="NetFlowObj:NetflowV9ScopeFieldType" minOccurs="0" maxOccurs="1">
761
- <xs:annotation>
762
- <xs:documentation>Specifies the relevant portion of the Exporter/NetFlow process to which the Options Template Record refers. Currently defined values include 1 for System, 2 for Interface, 3 for Line Card, 4 for Cache, and 5 for Template. More information can be found in RFC 3954.</xs:documentation>
763
- </xs:annotation>
764
- </xs:element>
765
- <xs:element name="Scope_Field_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
766
- <xs:annotation>
767
- <xs:documentation>Specifies the length (in bytes) of the Scope field as it would appear in an Options Data Record.</xs:documentation>
768
- </xs:annotation>
769
- </xs:element>
770
- </xs:sequence>
771
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
772
- <xs:element name="Option_Field_Type" type="NetFlowObj:NetflowV9FieldType" minOccurs="0" maxOccurs="1">
773
- <xs:annotation>
774
- <xs:documentation>Specifies the type of field that would appear in the Options Template Record. More information can be found in RFC 3954.</xs:documentation>
775
- </xs:annotation>
776
- </xs:element>
777
- <xs:element name="Option_Field_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
778
- <xs:annotation>
779
- <xs:documentation>Specifies the length (in bytes) of the Option field.</xs:documentation>
780
- </xs:annotation>
781
- </xs:element>
782
- </xs:sequence>
783
- </xs:sequence>
784
- </xs:complexType>
785
- <xs:complexType name="NetflowV9ScopeFieldType">
786
- <xs:annotation>
787
- <xs:documentation>NetflowV9ScopeFieldType specifies scope field types for Netflow v9, via a union of the NetflowV9ScopeFieldTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
788
- </xs:annotation>
789
- <xs:simpleContent>
790
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
791
- <xs:simpleType>
792
- <xs:union memberTypes="NetFlowObj:NetflowV9ScopeFieldTypeEnum xs:string"/>
793
- </xs:simpleType>
794
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
795
- <xs:annotation>
796
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
797
- </xs:annotation>
798
- </xs:attribute>
799
- </xs:restriction>
800
- </xs:simpleContent>
801
- </xs:complexType>
802
- <xs:simpleType name="NetflowV9ScopeFieldTypeEnum">
803
- <xs:annotation>
804
- <xs:documentation>These describe the scope field types, found in the relevant portion of the NetFlow process to which the options record refers. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
805
- </xs:annotation>
806
- <xs:restriction base="xs:string">
807
- <xs:enumeration value="System(1)">
808
- <xs:annotation>
809
- <xs:documentation>Indicates the System scope field type.</xs:documentation>
810
- </xs:annotation>
811
- </xs:enumeration>
812
- <xs:enumeration value="Interface(2)">
813
- <xs:annotation>
814
- <xs:documentation>Indicates the Interface scope field type.</xs:documentation>
815
- </xs:annotation>
816
- </xs:enumeration>
817
- <xs:enumeration value="LineCard(3)">
818
- <xs:annotation>
819
- <xs:documentation>Indicates the Line Card scope field type.</xs:documentation>
820
- </xs:annotation>
821
- </xs:enumeration>
822
- <xs:enumeration value="Cache(4)">
823
- <xs:annotation>
824
- <xs:documentation>Indicates the NetFlow Cache scope field type.</xs:documentation>
825
- </xs:annotation>
826
- </xs:enumeration>
827
- <xs:enumeration value="Template(5)">
828
- <xs:annotation>
829
- <xs:documentation>Describes the Template scope field type.</xs:documentation>
830
- </xs:annotation>
831
- </xs:enumeration>
832
- </xs:restriction>
833
- </xs:simpleType>
834
- <xs:complexType name="NetflowV9DataFlowSetType">
835
- <xs:annotation>
836
- <xs:documentation>Specifies a Data FlowSet, which is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
837
- </xs:annotation>
838
- <xs:sequence>
839
- <xs:element name="Flow_Set_ID_Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
840
- <xs:annotation>
841
- <xs:documentation>Specifies the FlowSet ID, which corresponds to the Template ID from a Template Flow Set or an Options Template Flow Set.</xs:documentation>
842
- </xs:annotation>
843
- </xs:element>
844
- <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
845
- <xs:annotation>
846
- <xs:documentation>Specifies the length of this FlowSet.</xs:documentation>
847
- </xs:annotation>
848
- </xs:element>
849
- <xs:element name="Data_Record" type="NetFlowObj:NetflowV9DataRecordType" minOccurs="0" maxOccurs="unbounded">
850
- <xs:annotation>
851
- <xs:documentation>The remainder of the Data FlowSet is a collection of Flow Data Record(s), each containing a set of field values. The Type and Length of the fields have been previously defined in the Template Record referenced by the FlowSet ID or Template ID. Specifies either a template flow set or an options template flow set. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
852
- </xs:annotation>
853
- </xs:element>
854
- <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
855
- <xs:annotation>
856
- <xs:documentation>Specifies the padding bytes used so that the subsequent FlowSet starts at a 4-byte aligned boundary. It is important to note that the Length field includes the padding bytes. Padding SHOULD be using zeros.</xs:documentation>
857
- </xs:annotation>
858
- </xs:element>
859
- </xs:sequence>
860
- </xs:complexType>
861
- <xs:complexType name="NetflowV9DataRecordType">
862
- <xs:annotation>
863
- <xs:documentation>A Data FlowSet is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
864
- </xs:annotation>
865
- <xs:choice minOccurs="0" maxOccurs="1">
866
- <xs:annotation>
867
- <xs:documentation/>
868
- </xs:annotation>
869
- <xs:sequence>
870
- <xs:element name="Flow_Data_Record" type="NetFlowObj:FlowDataRecordType" minOccurs="0" maxOccurs="unbounded">
871
- <xs:annotation>
872
- <xs:documentation>Specifies a Flow Data Record, which corresponds to a FieldType defined in the Template Record. Each one will have multiple values associated with it.</xs:documentation>
873
- </xs:annotation>
874
- </xs:element>
875
- </xs:sequence>
876
- <xs:sequence>
877
- <xs:element name="Options_Data_Record" type="NetFlowObj:OptionsDataRecordType" minOccurs="0" maxOccurs="unbounded">
878
- <xs:annotation>
879
- <xs:documentation>Specifies an Options Data Record, which Corresponds to a previously defined Options Template Record.</xs:documentation>
880
- </xs:annotation>
881
- </xs:element>
882
- </xs:sequence>
883
- </xs:choice>
884
- </xs:complexType>
885
- <xs:complexType name="FlowDataRecordType">
886
- <xs:annotation>
887
- <xs:documentation>A Flow Data Record is a data record that contains values of the Flow parameters corresponding to a Template Record.</xs:documentation>
888
- </xs:annotation>
889
- <xs:sequence minOccurs="0" maxOccurs="1">
890
- <xs:element name="Flow_Record_Collection_Element" type="NetFlowObj:FlowCollectionElementType" minOccurs="0" maxOccurs="unbounded">
891
- <xs:annotation>
892
- <xs:documentation>For each flow record, field values are listed.</xs:documentation>
893
- </xs:annotation>
894
- </xs:element>
895
- </xs:sequence>
896
- </xs:complexType>
897
- <xs:complexType name="FlowCollectionElementType">
898
- <xs:annotation>
899
- <xs:documentation>Field values are associated with each record in the collection of a flow data record.</xs:documentation>
900
- </xs:annotation>
901
- <xs:sequence minOccurs="0">
902
- <xs:element name="Flow_Record_Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="unbounded">
903
- <xs:annotation>
904
- <xs:documentation>Set of fields values for a given Flow Data Record.</xs:documentation>
905
- </xs:annotation>
906
- </xs:element>
907
- </xs:sequence>
908
- </xs:complexType>
909
- <xs:complexType name="OptionsDataRecordType">
910
- <xs:annotation>
911
- <xs:documentation>The data record that contains values and scope information of the Flow measurement parameters, corresponding to an Options Template Record.</xs:documentation>
912
- </xs:annotation>
913
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
914
- <xs:element name="Scope_Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
915
- <xs:annotation>
916
- <xs:documentation>Corresponds to a previously defined Options Template Record.</xs:documentation>
917
- </xs:annotation>
918
- </xs:element>
919
- <xs:sequence minOccurs="0" maxOccurs="1">
920
- <xs:element name="Option_Record_Collection_Element" type="NetFlowObj:OptionCollectionElementType" minOccurs="0" maxOccurs="unbounded">
921
- <xs:annotation>
922
- <xs:documentation>For each option data record, field values are listed.</xs:documentation>
923
- </xs:annotation>
924
- </xs:element>
925
- </xs:sequence>
926
- </xs:sequence>
927
- </xs:complexType>
928
- <xs:complexType name="OptionCollectionElementType">
929
- <xs:annotation>
930
- <xs:documentation>Field values are associated with each option in the collection of an option data record.</xs:documentation>
931
- </xs:annotation>
932
- <xs:sequence minOccurs="0">
933
- <xs:element name="Option_Record_Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="unbounded">
934
- <xs:annotation>
935
- <xs:documentation>Set of field values for a given Options Data Record.</xs:documentation>
936
- </xs:annotation>
937
- </xs:element>
938
- </xs:sequence>
939
- </xs:complexType>
940
- <xs:complexType name="NetflowV5PacketType">
941
- <xs:annotation>
942
- <xs:documentation>Defines the contents of a Netflow v5 packet. As of 2012, Netflow v5 is still the most commonly used network flow format. Netflow v5 was developed by Cisco. http://netflow.caligare.com/netflow_v5.htm.</xs:documentation>
943
- </xs:annotation>
944
- <xs:sequence>
945
- <xs:element name="Flow_Header" type="NetFlowObj:NetflowV5FlowHeaderType" minOccurs="0">
946
- <xs:annotation>
947
- <xs:documentation>Elements of a netflow v5 header.</xs:documentation>
948
- </xs:annotation>
949
- </xs:element>
950
- <xs:sequence minOccurs="0">
951
- <xs:element name="Flow_Record" type="NetFlowObj:NetflowV5FlowRecordType" maxOccurs="30">
952
- <xs:annotation>
953
- <xs:documentation>See Network_Flow_Label for other common fields. Padding of 0-bytes is not captured. REF: http://netflow.caligare.com/netflow_v5.htm REF: http://tools.netsa.cert.org/silk/faq.html#ipfix-fields.</xs:documentation>
954
- </xs:annotation>
955
- </xs:element>
956
- </xs:sequence>
957
- </xs:sequence>
958
- </xs:complexType>
959
- <xs:complexType name="NetflowV5FlowHeaderType">
960
- <xs:annotation>
961
- <xs:documentation>Defines elements of a netflow v5 header. http://netflow.caligare.com/netflow_v5.htm.</xs:documentation>
962
- </xs:annotation>
963
- <xs:sequence>
964
- <xs:element name="Version" type="cyboxCommon:HexBinaryObjectPropertyType" default="05" minOccurs="0" maxOccurs="1">
965
- <xs:annotation>
966
- <xs:documentation>Specifies the NetFlow export format version number, which defaults to 5 in this case.</xs:documentation>
967
- </xs:annotation>
968
- </xs:element>
969
- <xs:element name="Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
970
- <xs:annotation>
971
- <xs:documentation>Specifies the number of flows exported in the packet (1-30).</xs:documentation>
972
- </xs:annotation>
973
- </xs:element>
974
- <xs:element name="Sys_Up_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
975
- <xs:annotation>
976
- <xs:documentation>Specifies the current time in milliseconds since the export device booted.</xs:documentation>
977
- </xs:annotation>
978
- </xs:element>
979
- <xs:element name="Unix_Secs" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
980
- <xs:annotation>
981
- <xs:documentation>Specifies the current time in milliseconds since 0000 UTC 1970.</xs:documentation>
982
- </xs:annotation>
983
- </xs:element>
984
- <xs:element name="Unix_Nsecs" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
985
- <xs:annotation>
986
- <xs:documentation>Specifies the residual in nanoseconds since 0000 UTC 1970.</xs:documentation>
987
- </xs:annotation>
988
- </xs:element>
989
- <xs:element name="Flow_Sequence" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
990
- <xs:annotation>
991
- <xs:documentation>Specifies the sequence counter of total flows seen.</xs:documentation>
992
- </xs:annotation>
993
- </xs:element>
994
- <xs:element name="Engine_Type" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
995
- <xs:annotation>
996
- <xs:documentation>Specifies the type of flow-switching engine.</xs:documentation>
997
- </xs:annotation>
998
- </xs:element>
999
- <xs:element name="Engine_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1000
- <xs:annotation>
1001
- <xs:documentation>Specifies the slot number of the flow-switching engine.</xs:documentation>
1002
- </xs:annotation>
1003
- </xs:element>
1004
- <xs:element name="Sampling_Interval" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1005
- <xs:annotation>
1006
- <xs:documentation>Specifies the sampling interval field, which consists of the first two bits holding the sampling mode, with the remaining 14 bits holding the value of the sampling interval.</xs:documentation>
1007
- </xs:annotation>
1008
- </xs:element>
1009
- </xs:sequence>
1010
- </xs:complexType>
1011
- <xs:complexType name="NetflowV5FlowRecordType">
1012
- <xs:annotation>
1013
- <xs:documentation>Defines elements of a Netflow v5 flow record. Recall that the seven elements that define the flow itself (e.g., source IP address) are provided in NetworkFlowLabelType. https://bto.bluecoat.com/packetguide/8.6/info/netflow5-records.htm.</xs:documentation>
1014
- </xs:annotation>
1015
- <xs:sequence>
1016
- <xs:element name="Nexthop_IPv4_Addr" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1017
- <xs:annotation>
1018
- <xs:documentation>Represents the IP address of the next hop router.</xs:documentation>
1019
- </xs:annotation>
1020
- </xs:element>
1021
- <xs:element name="Packet_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1022
- <xs:annotation>
1023
- <xs:documentation>Represents the number of packets in the flow.</xs:documentation>
1024
- </xs:annotation>
1025
- </xs:element>
1026
- <xs:element name="Byte_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1027
- <xs:annotation>
1028
- <xs:documentation>Represents the total number of bytes in the flow.</xs:documentation>
1029
- </xs:annotation>
1030
- </xs:element>
1031
- <xs:element name="SysUpTime_Start" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1032
- <xs:annotation>
1033
- <xs:documentation>Represents the SysUpTime at start of flow: the total time in milliseconds starting from when the first packet in the flow was seen.</xs:documentation>
1034
- </xs:annotation>
1035
- </xs:element>
1036
- <xs:element name="SysUpTime_End" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1037
- <xs:annotation>
1038
- <xs:documentation>Represents the SysUpTime at end of flow: when the last packet in the flow was seen.</xs:documentation>
1039
- </xs:annotation>
1040
- </xs:element>
1041
- <xs:element name="Padding1" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0">
1042
- <xs:annotation>
1043
- <xs:documentation>One byte of padding.</xs:documentation>
1044
- </xs:annotation>
1045
- </xs:element>
1046
- <xs:element name="TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1047
- <xs:annotation>
1048
- <xs:documentation>Specifies the union of all TCP flags observed over the life of the flow.</xs:documentation>
1049
- </xs:annotation>
1050
- </xs:element>
1051
- <xs:element name="Src_Autonomous_System" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1052
- <xs:annotation>
1053
- <xs:documentation>Specifies the source autonomous system number, either origin or peer.</xs:documentation>
1054
- </xs:annotation>
1055
- </xs:element>
1056
- <xs:element name="Dest_Autonomous_System" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1057
- <xs:annotation>
1058
- <xs:documentation>Specifies the destination autonomous system number, either origin or peer.</xs:documentation>
1059
- </xs:annotation>
1060
- </xs:element>
1061
- <xs:element name="Src_IP_Mask_Bit_Count" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1062
- <xs:annotation>
1063
- <xs:documentation>Specifies the source address prefix mask bits.</xs:documentation>
1064
- </xs:annotation>
1065
- </xs:element>
1066
- <xs:element name="Dest_IP_Mask_Bit_Count" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1067
- <xs:annotation>
1068
- <xs:documentation>Specifies the destination address prefix mask bits.</xs:documentation>
1069
- </xs:annotation>
1070
- </xs:element>
1071
- <xs:element name="Padding2" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1072
- <xs:annotation>
1073
- <xs:documentation>Unused (zero) bytes, which is used for purposes of padding.</xs:documentation>
1074
- </xs:annotation>
1075
- </xs:element>
1076
- </xs:sequence>
1077
- </xs:complexType>
1078
- <xs:complexType name="SiLKRecordType">
1079
- <xs:annotation>
1080
- <xs:documentation>System for Internet-Level Knowledge (CMU/SEI). The fields are taken from a list shown in http://tools.netsa.cert.org/silk/rwcut.html. Fields common to all network flows are defined in NetworkFlowLabelType (e.g., source IP, SNMP ingress, etc.). For additional references, see http://tools.netsa.cert.org/silk/analysis-handbook.pdf, http://tools.netsa.cert.org/silk/faq.html#ipfix-fields.</xs:documentation>
1081
- </xs:annotation>
1082
- <xs:sequence>
1083
- <xs:element name="Packet_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1084
- <xs:annotation>
1085
- <xs:documentation>Represents the number of packets in the flow.</xs:documentation>
1086
- </xs:annotation>
1087
- </xs:element>
1088
- <xs:element name="Byte_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1089
- <xs:annotation>
1090
- <xs:documentation>Represents the number of Layer 3 bytes in the packets of the flow.</xs:documentation>
1091
- </xs:annotation>
1092
- </xs:element>
1093
- <xs:element name="TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1094
- <xs:annotation>
1095
- <xs:documentation>Specifies the union of all TCP flags observed over the life of the flow.</xs:documentation>
1096
- </xs:annotation>
1097
- </xs:element>
1098
- <xs:element name="Start_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1099
- <xs:annotation>
1100
- <xs:documentation>Represents the SysUpTime at start of flow, i.e. the total time in milliseconds starting from when the router booted. There is another element "Start_Time+msec" which is the starting time of flow including milliseconds, but milliseconds are the resolution of Start_Time unless the -legacy-timestamps switch is specified, so "Start_Time+msec" is not defined separately.</xs:documentation>
1101
- </xs:annotation>
1102
- </xs:element>
1103
- <xs:element name="Duration" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1104
- <xs:annotation>
1105
- <xs:documentation>Specifies the duration of the flow. There is another element "Duration+msec" which is the starting time of flow including milliseconds, but milliseconds are the resolution of Duration unless the -legacy-timestamps switch is specified, so "Duration+msec" is not defined separately.</xs:documentation>
1106
- </xs:annotation>
1107
- </xs:element>
1108
- <xs:element name="End_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1109
- <xs:annotation>
1110
- <xs:documentation>Represents the SysUpTime at end of flow. There is another element "End_Time+msec" which is the starting time of flow including milliseconds, but milliseconds are the resolution of End_Time unless the -legacy-timestamps switch is specified, so "End_Time+msec" is not defined separately.</xs:documentation>
1111
- </xs:annotation>
1112
- </xs:element>
1113
- <xs:element name="Sensor_Info" type="NetFlowObj:SiLKSensorInfoType" minOccurs="0" maxOccurs="1">
1114
- <xs:annotation>
1115
- <xs:documentation>Defines the fields associated with the sensor at the collection point.</xs:documentation>
1116
- </xs:annotation>
1117
- </xs:element>
1118
- <xs:element name="ICMP_Type" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1119
- <xs:annotation>
1120
- <xs:documentation>ICMP type for ICMP flows. Empty for non-ICMP flows.</xs:documentation>
1121
- </xs:annotation>
1122
- </xs:element>
1123
- <xs:element name="ICMP_Code" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1124
- <xs:annotation>
1125
- <xs:documentation>ICMP code for ICMP flows. Empty for non-ICMP flows.</xs:documentation>
1126
- </xs:annotation>
1127
- </xs:element>
1128
- <xs:element name="Router_Next_Hop_IP" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1129
- <xs:annotation>
1130
- <xs:documentation>Router next hop IP.</xs:documentation>
1131
- </xs:annotation>
1132
- </xs:element>
1133
- <xs:element name="Initial_TCP_Flags" type="PacketObj:TCPFlagsType" minOccurs="0" maxOccurs="1">
1134
- <xs:annotation>
1135
- <xs:documentation>TCP flags on first packet in the flow.</xs:documentation>
1136
- </xs:annotation>
1137
- </xs:element>
1138
- <xs:element name="Session_TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1139
- <xs:annotation>
1140
- <xs:documentation>bit-wise OR of TCP flags over all packets except the first in the flow.</xs:documentation>
1141
- </xs:annotation>
1142
- </xs:element>
1143
- <xs:element name="Flow_Attributes" type="NetFlowObj:SiLKFlowAttributesType" minOccurs="0" maxOccurs="1">
1144
- <xs:annotation>
1145
- <xs:documentation>Flow attributes set by the flow generator.</xs:documentation>
1146
- </xs:annotation>
1147
- </xs:element>
1148
- <xs:element name="Flow_Application" type="PacketObj:IANAPortNumberRegistryType" minOccurs="0" maxOccurs="1">
1149
- <xs:annotation>
1150
- <xs:documentation>Based on an examination of payload contents, this value = the port number traditionally used for that type of traffic (21 for FTP traffic even if actually routed over port 80). Documentation (http://tools.netsa.cert.org/silk/rwcut.html) says this is a "guess as to the content of the flow".</xs:documentation>
1151
- </xs:annotation>
1152
- </xs:element>
1153
- <xs:element name="Src_IP_Type" type="NetFlowObj:SiLKAddressType" minOccurs="0" maxOccurs="1">
1154
- <xs:annotation>
1155
- <xs:documentation>The type of the source IP in terms of whether the address is routable, external, etc.</xs:documentation>
1156
- </xs:annotation>
1157
- </xs:element>
1158
- <xs:element name="Dest_IP_Type" type="NetFlowObj:SiLKAddressType" minOccurs="0" maxOccurs="1">
1159
- <xs:annotation>
1160
- <xs:documentation>The type of the destination IP in terms of whether the address is routable, external, etc.</xs:documentation>
1161
- </xs:annotation>
1162
- </xs:element>
1163
- <xs:element name="Src_Country_Code" type="NetFlowObj:SiLKCountryCodeType" minOccurs="0" maxOccurs="1">
1164
- <xs:annotation>
1165
- <xs:documentation>A two-letter country code denoting the country of location of the source IP address.</xs:documentation>
1166
- </xs:annotation>
1167
- </xs:element>
1168
- <xs:element name="Dest_Country_Code" type="NetFlowObj:SiLKCountryCodeType" minOccurs="0" maxOccurs="1">
1169
- <xs:annotation>
1170
- <xs:documentation>A two-letter country code denoting the country of location of the destination IP address.</xs:documentation>
1171
- </xs:annotation>
1172
- </xs:element>
1173
- <xs:element name="Src_MAPNAME" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1174
- <xs:annotation>
1175
- <xs:documentation>User defined string for integrating external information into SiLK records. See documentation on SiLK pmap filter for details (defined in the prefix map associated with MAPNAME).</xs:documentation>
1176
- </xs:annotation>
1177
- </xs:element>
1178
- <xs:element name="Dest_MAPNAME" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1179
- <xs:annotation>
1180
- <xs:documentation>User defined string for integrating external information into SiLK records. See documentation on SiLK pmap filter for details (defined in the prefix map associated with MAPNAME).</xs:documentation>
1181
- </xs:annotation>
1182
- </xs:element>
1183
- </xs:sequence>
1184
- </xs:complexType>
1185
- <xs:complexType name="SiLKFlowAttributesType">
1186
- <xs:annotation>
1187
- <xs:documentation>SiLKFlowAttributesType specifies SiLK flow attributes, via a union of the SiLKFlowAttributesTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1188
- </xs:annotation>
1189
- <xs:simpleContent>
1190
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1191
- <xs:simpleType>
1192
- <xs:union memberTypes="NetFlowObj:SiLKFlowAttributesTypeEnum xs:string"/>
1193
- </xs:simpleType>
1194
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1195
- <xs:annotation>
1196
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1197
- </xs:annotation>
1198
- </xs:attribute>
1199
- </xs:restriction>
1200
- </xs:simpleContent>
1201
- </xs:complexType>
1202
- <xs:simpleType name="SiLKFlowAttributesTypeEnum">
1203
- <xs:annotation>
1204
- <xs:documentation>The SiLKFlowAttributesTypeEnum specifies the flow attributes set by the flow generator. This is field 28 of the rwstats options. See http://tools.netsa.cert.org/silk/rwstats.html for more information.</xs:documentation>
1205
- </xs:annotation>
1206
- <xs:restriction base="xs:string">
1207
- <xs:enumeration value="F (FIN flag)">
1208
- <xs:annotation>
1209
- <xs:documentation>Indicates that the flow generator saw additional packets in this flow following a packet with a FIN flag (excluding ACK packets).</xs:documentation>
1210
- </xs:annotation>
1211
- </xs:enumeration>
1212
- <xs:enumeration value="T (Timeout)">
1213
- <xs:annotation>
1214
- <xs:documentation>Indicates that the flow generator prematurely created a record for a long-running connection due to a timeout. (When the flow generator yaf(1) is run with the --silk switch, it will prematurely create a flow and mark it with T if the byte count of the flow cannot be stored in a 32-bit value.).</xs:documentation>
1215
- </xs:annotation>
1216
- </xs:enumeration>
1217
- <xs:enumeration value="C (Continuation)">
1218
- <xs:annotation>
1219
- <xs:documentation>Indicates that the flow generator created this flow as a continuation of long-running connection, where the previous flow for this connection met a timeout (or a byte threshold in the case of yaf).</xs:documentation>
1220
- </xs:annotation>
1221
- </xs:enumeration>
1222
- </xs:restriction>
1223
- </xs:simpleType>
1224
- <xs:complexType name="SiLKAddressType">
1225
- <xs:annotation>
1226
- <xs:documentation>SiLKAddressType specifies SiLK address types, via a union of the SiLKAddressTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1227
- </xs:annotation>
1228
- <xs:simpleContent>
1229
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1230
- <xs:simpleType>
1231
- <xs:union memberTypes="NetFlowObj:SiLKAddressTypeEnum xs:string"/>
1232
- </xs:simpleType>
1233
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1234
- <xs:annotation>
1235
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1236
- </xs:annotation>
1237
- </xs:attribute>
1238
- </xs:restriction>
1239
- </xs:simpleContent>
1240
- </xs:complexType>
1241
- <xs:simpleType name="SiLKAddressTypeEnum">
1242
- <xs:annotation>
1243
- <xs:documentation>Environment variable allows user to specify the address type mapping file. A partial, typical list is currently given--see http://tools.netsa.cert.org/silk/addrtype.html for more information.</xs:documentation>
1244
- </xs:annotation>
1245
- <xs:restriction base="xs:string">
1246
- <xs:enumeration value="non-routable (0)">
1247
- <xs:annotation>
1248
- <xs:documentation>Denotes a (non-routable) IP address.</xs:documentation>
1249
- </xs:annotation>
1250
- </xs:enumeration>
1251
- <xs:enumeration value="internal(1)">
1252
- <xs:annotation>
1253
- <xs:documentation>Denotes an IP address internal to the monitored network.</xs:documentation>
1254
- </xs:annotation>
1255
- </xs:enumeration>
1256
- <xs:enumeration value="routable_external(2)">
1257
- <xs:annotation>
1258
- <xs:documentation>Denotes an IP address external to the monitored network.</xs:documentation>
1259
- </xs:annotation>
1260
- </xs:enumeration>
1261
- </xs:restriction>
1262
- </xs:simpleType>
1263
- <xs:complexType name="SiLKCountryCodeType">
1264
- <xs:annotation>
1265
- <xs:documentation>SiLKCountryCodeType specifies country codes used by SiLK, via a union of the SiLKCountryCodeTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1266
- </xs:annotation>
1267
- <xs:simpleContent>
1268
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1269
- <xs:simpleType>
1270
- <xs:union memberTypes="NetFlowObj:SiLKCountryCodeTypeEnum xs:string"/>
1271
- </xs:simpleType>
1272
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1273
- <xs:annotation>
1274
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1275
- </xs:annotation>
1276
- </xs:attribute>
1277
- </xs:restriction>
1278
- </xs:simpleContent>
1279
- </xs:complexType>
1280
- <xs:simpleType name="SiLKCountryCodeTypeEnum">
1281
- <xs:annotation>
1282
- <xs:documentation>Environment variable allows user to specify a country code mapping file. No enumerations are currently defined.</xs:documentation>
1283
- </xs:annotation>
1284
- <xs:restriction base="xs:string"/>
1285
- </xs:simpleType>
1286
- <xs:complexType name="SiLKSensorInfoType">
1287
- <xs:annotation>
1288
- <xs:documentation>Defines elements associated with a SiLK sensor.</xs:documentation>
1289
- </xs:annotation>
1290
- <xs:sequence>
1291
- <xs:element name="Sensor_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1292
- <xs:annotation>
1293
- <xs:documentation>Name or ID of sensor at the collection point.</xs:documentation>
1294
- </xs:annotation>
1295
- </xs:element>
1296
- <xs:element name="Class" type="NetFlowObj:SiLKSensorClassType" minOccurs="0" maxOccurs="1">
1297
- <xs:annotation>
1298
- <xs:documentation>By default, only one "all" class. Others can be configured.</xs:documentation>
1299
- </xs:annotation>
1300
- </xs:element>
1301
- <xs:element name="Type" type="NetFlowObj:SiLKDirectionType" minOccurs="0" maxOccurs="1">
1302
- <xs:annotation>
1303
- <xs:documentation>Specifies the direction of traffic, which is enumerated by SiLKDirectionType.</xs:documentation>
1304
- </xs:annotation>
1305
- </xs:element>
1306
- </xs:sequence>
1307
- </xs:complexType>
1308
- <xs:complexType name="SiLKDirectionType">
1309
- <xs:annotation>
1310
- <xs:documentation>SiLKType specifies direction of SiLK traffic, via a union of the SiLKDirectionTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1311
- </xs:annotation>
1312
- <xs:simpleContent>
1313
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1314
- <xs:simpleType>
1315
- <xs:union memberTypes="NetFlowObj:SiLKDirectionTypeEnum xs:string"/>
1316
- </xs:simpleType>
1317
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1318
- <xs:annotation>
1319
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1320
- </xs:annotation>
1321
- </xs:attribute>
1322
- </xs:restriction>
1323
- </xs:simpleContent>
1324
- </xs:complexType>
1325
- <xs:simpleType name="SiLKDirectionTypeEnum">
1326
- <xs:annotation>
1327
- <xs:documentation>Enumerates direction of traffic. Not all are currently enumerated.</xs:documentation>
1328
- </xs:annotation>
1329
- <xs:restriction base="xs:string">
1330
- <xs:enumeration value="in">
1331
- <xs:annotation>
1332
- <xs:documentation>Denotes inbound traffic relative to a sensor.</xs:documentation>
1333
- </xs:annotation>
1334
- </xs:enumeration>
1335
- <xs:enumeration value="inweb">
1336
- <xs:annotation>
1337
- <xs:documentation>Denotes inbound web traffic relative to a sensor. SiLK categorizes a flow as web if the protocol is TCP and either the source port or destination port is one of 80, 443, or 8080.</xs:documentation>
1338
- </xs:annotation>
1339
- </xs:enumeration>
1340
- <xs:enumeration value="innull">
1341
- <xs:annotation>
1342
- <xs:documentation>Denotes null inbound traffic relative to a sensor.</xs:documentation>
1343
- </xs:annotation>
1344
- </xs:enumeration>
1345
- <xs:enumeration value="out">
1346
- <xs:annotation>
1347
- <xs:documentation>Denotes outbound traffic relative to a sensor.</xs:documentation>
1348
- </xs:annotation>
1349
- </xs:enumeration>
1350
- <xs:enumeration value="outweb">
1351
- <xs:annotation>
1352
- <xs:documentation>Denotes outbound web traffic relative to a sensor. SiLK categorizes a flow as web if the protocol is TCP and either the source port or destination port is one of 80, 443, or 8080.</xs:documentation>
1353
- </xs:annotation>
1354
- </xs:enumeration>
1355
- <xs:enumeration value="outnull">
1356
- <xs:annotation>
1357
- <xs:documentation>Denotes null outbound traffic relative to a sensor.</xs:documentation>
1358
- </xs:annotation>
1359
- </xs:enumeration>
1360
- </xs:restriction>
1361
- </xs:simpleType>
1362
- <xs:complexType name="SiLKSensorClassType">
1363
- <xs:annotation>
1364
- <xs:documentation>SiLKSensorClassType specifies the sensor class, via a union of the SiLKSensorClassTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1365
- </xs:annotation>
1366
- <xs:simpleContent>
1367
- <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1368
- <xs:simpleType>
1369
- <xs:union memberTypes="NetFlowObj:SiLKSensorClassTypeEnum xs:string"/>
1370
- </xs:simpleType>
1371
- <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1372
- <xs:annotation>
1373
- <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1374
- </xs:annotation>
1375
- </xs:attribute>
1376
- </xs:restriction>
1377
- </xs:simpleContent>
1378
- </xs:complexType>
1379
- <xs:simpleType name="SiLKSensorClassTypeEnum">
1380
- <xs:annotation>
1381
- <xs:documentation>Enumerates SiLK sensor classes. Currently just one class (all) is defined.</xs:documentation>
1382
- </xs:annotation>
1383
- <xs:restriction base="xs:string">
1384
- <xs:enumeration value="all">
1385
- <xs:annotation>
1386
- <xs:documentation>Defines sensor class "all".</xs:documentation>
1387
- </xs:annotation>
1388
- </xs:enumeration>
1389
- </xs:restriction>
1390
- </xs:simpleType>
1391
- <xs:complexType name="YAFRecordType">
1392
- <xs:annotation>
1393
- <xs:documentation>YAF (Yet Another Flowmeter) is bidirectional network flow meter. It processes packet data from pcap(3) dumpfiles as generated by tcpdump(1) or via live capture from an interface using pcap(3) into bidirectional flows, then exports those flows to IPFIX. (REF: http://www.usenix.org/event/lisa10/tech/full_papers/Inacio.pdf).</xs:documentation>
1394
- </xs:annotation>
1395
- <xs:sequence>
1396
- <xs:element name="Flow" type="NetFlowObj:YAFFlowType" minOccurs="0" maxOccurs="1">
1397
- <xs:annotation>
1398
- <xs:documentation>The elements in a YAF record have been separated based on flow direction. These elements are defined for the general forward flow.</xs:documentation>
1399
- </xs:annotation>
1400
- </xs:element>
1401
- <xs:element name="Reverse_Flow" type="NetFlowObj:YAFReverseFlowType" minOccurs="0" maxOccurs="1">
1402
- <xs:annotation>
1403
- <xs:documentation>Some elements in a YAF record correspond to the reverse flow. These elements are given here.</xs:documentation>
1404
- </xs:annotation>
1405
- </xs:element>
1406
- </xs:sequence>
1407
- </xs:complexType>
1408
- <xs:complexType name="YAFFlowType">
1409
- <xs:annotation>
1410
- <xs:documentation>These elements of a YAF record correspond to the flow generally or to the forward portion of the flow. Elements common to all network flow objects are defined in the NetworkFlowLabelType (src ip address, ingress/egress interface).</xs:documentation>
1411
- </xs:annotation>
1412
- <xs:sequence>
1413
- <xs:element name="Flow_Start_Milliseconds" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1414
- <xs:annotation>
1415
- <xs:documentation>Flow start time in milliseconds since 1970-01-01 00:00:00 UTC.</xs:documentation>
1416
- </xs:annotation>
1417
- </xs:element>
1418
- <xs:element name="Flow_End_Milliseconds" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1419
- <xs:annotation>
1420
- <xs:documentation>Flow end time in milliseconds since 1970-01-01 00:00:00 UTC.</xs:documentation>
1421
- </xs:annotation>
1422
- </xs:element>
1423
- <xs:element name="Octet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1424
- <xs:annotation>
1425
- <xs:documentation>Number of octets in packets in forward direction of flow. May be encoded in 4 octets using IPFIX reduced-length encoding.</xs:documentation>
1426
- </xs:annotation>
1427
- </xs:element>
1428
- <xs:element name="Packet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1429
- <xs:annotation>
1430
- <xs:documentation>Number of packets in forward direction of flow.</xs:documentation>
1431
- </xs:annotation>
1432
- </xs:element>
1433
- <xs:element name="Flow_End_Reason" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1434
- <xs:annotation>
1435
- <xs:documentation>The reason for Flow termination. It may contain SiLK-specific tags. The range of values may include the following: 0x01: idle timeout (the Flow was terminated because it was considered to be idle). 0x02: active timeout (the Flow was terminated for reporting purposes while it was still active, for example, after the maximum lifetime of unreported Flows was reached). 0x03: end of Flow detected (the Flow was terminated because the Metering Process detected signals indicating the end of the Flow, for example, the TCP FIN flag.) 0x04: forced end (the Flow was terminated because of some external event, for example, a shutdown of the Metering Process initiated by a network management application.) 0x05: lack of resources (the Flow was terminated because of lack of resources available to the Metering Process and/or the Exporting Process.) See http://www.iana.org/assignments/ipfix/ipfix.xml for more information.</xs:documentation>
1436
- </xs:annotation>
1437
- </xs:element>
1438
- <xs:element name="SiLK_App_Label" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1439
- <xs:annotation>
1440
- <xs:documentation>The SiLK_App_Label is the port number that is traditionally used for that type of traffic (see the /etc/services file on most UNIX systems). For example, traffic that the flow generator recognizes as FTP will have a value of 21, even if that traffic is being routed through the standard HTTP/web port (80).</xs:documentation>
1441
- </xs:annotation>
1442
- </xs:element>
1443
- <xs:element name="Payload_Entropy" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1444
- <xs:annotation>
1445
- <xs:documentation>Shannon Entropy calculation of the forward payload data. The calculation generates a real number value between 0.0 and 8.0. That number is then converted into an 8-bit integer value between 0 and 255. Roughly, numbers above 230 are generally compressed (or encrypted) and numbers centered around approximately 140 are English text. Lower numbers carry even less information content.</xs:documentation>
1446
- </xs:annotation>
1447
- </xs:element>
1448
- <xs:element name="ML_App_Label" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1449
- <xs:annotation>
1450
- <xs:documentation>Machine-learning app label.</xs:documentation>
1451
- </xs:annotation>
1452
- </xs:element>
1453
- <xs:element name="TCP_Flow" type="NetFlowObj:YAFTCPFlowType" minOccurs="0" maxOccurs="1">
1454
- <xs:annotation>
1455
- <xs:documentation>Contains TCP-related information of the network flow.</xs:documentation>
1456
- </xs:annotation>
1457
- </xs:element>
1458
- <xs:element name="Vlan_ID_MAC_Addr" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1459
- <xs:annotation>
1460
- <xs:documentation>The MAC address.</xs:documentation>
1461
- </xs:annotation>
1462
- </xs:element>
1463
- <xs:element name="Passive_OS_Fingerprinting" type="cyboxCommon:PlatformSpecificationType" minOccurs="0" maxOccurs="1">
1464
- <xs:annotation>
1465
- <xs:documentation>OS name and version.</xs:documentation>
1466
- </xs:annotation>
1467
- </xs:element>
1468
- <xs:element name="First_Packet_Banner" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1469
- <xs:annotation>
1470
- <xs:documentation>First forward packet IP payload.</xs:documentation>
1471
- </xs:annotation>
1472
- </xs:element>
1473
- <xs:element name="Second_Packet_Banner" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0">
1474
- <xs:annotation>
1475
- <xs:documentation>Second forward packet IP payload.</xs:documentation>
1476
- </xs:annotation>
1477
- </xs:element>
1478
- <xs:element name="N_Bytes_Payload" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1479
- <xs:annotation>
1480
- <xs:documentation>Initial n bytes of forward direction of applications payload.</xs:documentation>
1481
- </xs:annotation>
1482
- </xs:element>
1483
- </xs:sequence>
1484
- </xs:complexType>
1485
- <xs:complexType name="YAFReverseFlowType">
1486
- <xs:annotation>
1487
- <xs:documentation>These elements correspond to the reverse flow captured by in YAF record.</xs:documentation>
1488
- </xs:annotation>
1489
- <xs:sequence>
1490
- <xs:element name="Reverse_Octet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1491
- <xs:annotation>
1492
- <xs:documentation>Number of octets in packets in reverse direction of flow. May be encoded in 4 octets using IPFIX reduced-length encoding.</xs:documentation>
1493
- </xs:annotation>
1494
- </xs:element>
1495
- <xs:element name="Reverse_Packet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1496
- <xs:annotation>
1497
- <xs:documentation>Number of packets in reverse direction of flow.</xs:documentation>
1498
- </xs:annotation>
1499
- </xs:element>
1500
- <xs:element name="Reverse_Payload_Entropy" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1501
- <xs:annotation>
1502
- <xs:documentation>Shannon Entropy calculation of the reverse payload data. The calculation generates a real number value between 0.0 and 8.0. That number is then converted into an 8-bit integer value between 0 and 255. Roughly, numbers above 230 are generally compressed (or encrypted) and numbers centered around approximately 140 are English text. Lower numbers carry even less information content.</xs:documentation>
1503
- </xs:annotation>
1504
- </xs:element>
1505
- <xs:element name="Reverse_Flow_Delta_Milliseconds" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1506
- <xs:annotation>
1507
- <xs:documentation>RTT of initial handshake.</xs:documentation>
1508
- </xs:annotation>
1509
- </xs:element>
1510
- <xs:element name="TCP_Reverse_Flow" type="NetFlowObj:YAFTCPFlowType" minOccurs="0" maxOccurs="1">
1511
- <xs:annotation>
1512
- <xs:documentation>The associated elements relate to the reverse packets of the flow.</xs:documentation>
1513
- </xs:annotation>
1514
- </xs:element>
1515
- <xs:element name="Reverse_Vlan_ID_MAC_Addr" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1516
- <xs:annotation>
1517
- <xs:documentation>Reverse MAC address.</xs:documentation>
1518
- </xs:annotation>
1519
- </xs:element>
1520
- <xs:element name="Reverse_Passive_OS_Fingerprinting" type="cyboxCommon:PlatformSpecificationType" minOccurs="0" maxOccurs="1">
1521
- <xs:annotation>
1522
- <xs:documentation>OS name and version of the reverse flow.</xs:documentation>
1523
- </xs:annotation>
1524
- </xs:element>
1525
- <xs:element name="Reverse_First_Packet" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1526
- <xs:annotation>
1527
- <xs:documentation>First reverse packet IP payload.</xs:documentation>
1528
- </xs:annotation>
1529
- </xs:element>
1530
- <xs:element name="Reverse_N_Bytes_Payload" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1531
- <xs:annotation>
1532
- <xs:documentation>Initial n bytes of reverse direction of flow payload.</xs:documentation>
1533
- </xs:annotation>
1534
- </xs:element>
1535
- </xs:sequence>
1536
- </xs:complexType>
1537
- <xs:complexType name="YAFTCPFlowType">
1538
- <xs:annotation>
1539
- <xs:documentation>Contains TCP-related information of the network flow.</xs:documentation>
1540
- </xs:annotation>
1541
- <xs:sequence>
1542
- <xs:element name="TCP_Sequence_Number" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1543
- <xs:annotation>
1544
- <xs:documentation>TCP sequence number.</xs:documentation>
1545
- </xs:annotation>
1546
- </xs:element>
1547
- <xs:element name="Initial_TCP_Flags" type="PacketObj:TCPFlagsType" minOccurs="0" maxOccurs="1">
1548
- <xs:annotation>
1549
- <xs:documentation>TCP flags of the first packet.</xs:documentation>
1550
- </xs:annotation>
1551
- </xs:element>
1552
- <xs:element name="Union_TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1553
- <xs:annotation>
1554
- <xs:documentation>The union of the TCP flags of the 2...nth packet.</xs:documentation>
1555
- </xs:annotation>
1556
- </xs:element>
1557
- </xs:sequence>
1558
- </xs:complexType>
1559
- </xs:schema>
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:SocketAddressObj="http://cybox.mitre.org/objects#SocketAddressObject-1" xmlns:NetFlowObj="http://cybox.mitre.org/objects#NetworkFlowObject-2" xmlns:PacketObj="http://cybox.mitre.org/objects#PacketObject-2" xmlns:AddressObj="http://cybox.mitre.org/objects#AddressObject-2" xmlns:cyboxCommon="http://cybox.mitre.org/common-2" targetNamespace="http://cybox.mitre.org/objects#NetworkFlowObject-2" elementFormDefault="qualified" version="2.1">
3
+ <xs:annotation>
4
+ <xs:documentation>This schema was originally developed by The MITRE Corporation. The CybOX XML Schema implementation is maintained by The MITRE Corporation and developed by the open CybOX Community. For more information, including how to get involved in the effort and how to submit change requests, please visit the CybOX website at http://cybox.mitre.org.</xs:documentation>
5
+ <xs:appinfo>
6
+ <schema>Network_Flow_Object</schema>
7
+ <version>2.1</version>
8
+ <date>01/22/2014</date>
9
+ <short_description>The following specifies the fields and types that compose this defined CybOX Object type. Each defined object is an extension of the abstract ObjectPropertiesType, defined in CybOX Common. For more information on this extension mechanism, please see the CybOX Specification. This document is intended for developers and assumes some familiarity with XML. </short_description>
10
+ <terms_of_use>Copyright (c) 2012-2014, The MITRE Corporation. All rights reserved. The contents of this file are subject to the terms of the CybOX License located at http://cybox.mitre.org/about/termsofuse.html. See the CybOX License for the specific language governing permissions and limitations for use of this schema. When distributing copies of the CybOX Schema, this license header must be included.</terms_of_use>
11
+ </xs:appinfo>
12
+ </xs:annotation>
13
+ <xs:import namespace="http://cybox.mitre.org/objects#PacketObject-2" schemaLocation="Network_Packet_Object.xsd"/>
14
+ <xs:import namespace="http://cybox.mitre.org/objects#AddressObject-2" schemaLocation="Address_Object.xsd"/>
15
+ <xs:import namespace="http://cybox.mitre.org/common-2" schemaLocation="../cybox_common.xsd"/>
16
+ <xs:import namespace="http://cybox.mitre.org/objects#SocketAddressObject-1" schemaLocation="Socket_Address_Object.xsd"/>
17
+ <xs:element name="Network_Flow_Object" type="NetFlowObj:NetworkFlowObjectType">
18
+ <xs:annotation>
19
+ <xs:documentation>The Network_Flow_Object object provides a summary of network traffic, expressed as flows of multiple packets instead of individual packets, without the packet payload data (i.e. the actual data that was uploaded/downloaded to and from the Dest IP to Source IP as included in packet monitoring tools, such as Wireshark).</xs:documentation>
20
+ </xs:annotation>
21
+ </xs:element>
22
+ <xs:complexType name="NetworkFlowObjectType">
23
+ <xs:annotation>
24
+ <xs:documentation>Defines the fields necessary to summarize network traffic, expressed as flows of multiple packets. Does not include the packet payload data (i.e. the actual data that was uploaded/downloaded to and from the Dest IP to Source IP as included in packet monitoring tools, such as Wireshark).</xs:documentation>
25
+ </xs:annotation>
26
+ <xs:complexContent>
27
+ <xs:extension base="cyboxCommon:ObjectPropertiesType">
28
+ <xs:sequence>
29
+ <xs:element name="Network_Flow_Label" type="NetFlowObj:NetworkFlowLabelType" minOccurs="0" maxOccurs="1">
30
+ <xs:annotation>
31
+ <xs:documentation>Represents elements common to all flow records formats - either expressed as a 5-tuple or an extended 7-tuple (actually an 8-tuple because for organizational reasons, we include the egress interface index). Because these fields are defined here, they are excluded from the fields associated directly with each different flow record format type.</xs:documentation>
32
+ </xs:annotation>
33
+ </xs:element>
34
+ <xs:choice minOccurs="0" maxOccurs="1">
35
+ <xs:element name="Unidirectional_Flow_Record" type="NetFlowObj:UnidirectionalRecordType" minOccurs="0" maxOccurs="1">
36
+ <xs:annotation>
37
+ <xs:documentation>Represents flow-record formats that capture data in one direction only (e.g., Netflow v9).</xs:documentation>
38
+ </xs:annotation>
39
+ </xs:element>
40
+ <xs:element name="Bidirectional_Flow_Record" type="NetFlowObj:BidirectionalRecordType" minOccurs="0" maxOccurs="1">
41
+ <xs:annotation>
42
+ <xs:documentation>Represents flow-record formats that capture data in both directions (e.g., YAF).</xs:documentation>
43
+ </xs:annotation>
44
+ </xs:element>
45
+ </xs:choice>
46
+ </xs:sequence>
47
+ </xs:extension>
48
+ </xs:complexContent>
49
+ </xs:complexType>
50
+ <xs:complexType name="NetworkLayerInfoType">
51
+ <xs:annotation>
52
+ <xs:documentation>Network layer information (relative to the OSI network model) which is typically captured in all types of network flow records.</xs:documentation>
53
+ </xs:annotation>
54
+ <xs:sequence>
55
+ <xs:element name="Src_Socket_Address" type="SocketAddressObj:SocketAddressObjectType" minOccurs="0">
56
+ <xs:annotation>
57
+ <xs:documentation>Represents the source IP socket address, consisting of an IP address and port number, for the network flow expressed. Note that not all flow protocols support IPv6 addresses.</xs:documentation>
58
+ </xs:annotation>
59
+ </xs:element>
60
+ <xs:element name="Dest_Socket_Address" type="SocketAddressObj:SocketAddressObjectType" minOccurs="0">
61
+ <xs:annotation>
62
+ <xs:documentation>Represents the destination IP socket address, consisting of an IP address and port number, for the network flow expressed. Note that not all flow protocols support IPv6 addresses.</xs:documentation>
63
+ </xs:annotation>
64
+ </xs:element>
65
+ <xs:element name="IP_Protocol" type="PacketObj:IANAAssignedIPNumbersType" minOccurs="0">
66
+ <xs:annotation>
67
+ <xs:documentation>The IP Protocol of the network flow. This is usually TCP, UDP, or SCTP, but can include others as represented in NetFlow as an integer from 0 to 255. Please refer to http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml for reference.</xs:documentation>
68
+ </xs:annotation>
69
+ </xs:element>
70
+ </xs:sequence>
71
+ </xs:complexType>
72
+ <xs:complexType name="NetworkFlowLabelType">
73
+ <xs:annotation>
74
+ <xs:documentation>The NetworkFlowLabelType contains elements that are common to all flow record formats. It builds off of network layer information (a 5-tuple that commonly defines a flow) and includes ingress and egress interface indexes and IP protocol information (not present if all flow record formats). Egress information is usually not thought of as part of the extended 7-tuple, but we include it for organizational purposes. Because these fields are defined here, they are excluded from the fields associated directly with each different flow record format type.</xs:documentation>
75
+ </xs:annotation>
76
+ <xs:complexContent>
77
+ <xs:extension base="NetFlowObj:NetworkLayerInfoType">
78
+ <xs:sequence minOccurs="0" maxOccurs="1">
79
+ <xs:element name="Ingress_Interface_Index" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
80
+ <xs:annotation>
81
+ <xs:documentation>Represents the index (in SNMP, by default) of the network interface card where the flows entered the router.</xs:documentation>
82
+ </xs:annotation>
83
+ </xs:element>
84
+ <xs:element name="Egress_Interface_Index" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
85
+ <xs:annotation>
86
+ <xs:documentation>Represents the index (in SNMP, by default) of the network interface card where the flows leave the router.</xs:documentation>
87
+ </xs:annotation>
88
+ </xs:element>
89
+ <xs:element name="IP_Type_Of_Service" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
90
+ <xs:annotation>
91
+ <xs:documentation>Type of service field from the IP header. Specifies the IP Type of Service (ToS). See RFC 1349 for more information.</xs:documentation>
92
+ </xs:annotation>
93
+ </xs:element>
94
+ </xs:sequence>
95
+ </xs:extension>
96
+ </xs:complexContent>
97
+ </xs:complexType>
98
+ <xs:complexType name="UnidirectionalRecordType">
99
+ <xs:annotation>
100
+ <xs:documentation>Netflow record formats that capture traffic in one direction.</xs:documentation>
101
+ </xs:annotation>
102
+ <xs:choice minOccurs="0" maxOccurs="1">
103
+ <xs:element name="IPFIX_Message" type="NetFlowObj:IPFIXMessageType" minOccurs="0" maxOccurs="1">
104
+ <xs:annotation>
105
+ <xs:documentation>Represents an Internet Protocol Flow Information eXport (IPFIX) protocol. IPFIX is based on NetFlow v9. Has several extensions such as Enterprise-defined fields types and variable length fields. See RFC 5101 for more information.</xs:documentation>
106
+ </xs:annotation>
107
+ </xs:element>
108
+ <xs:element name="NetflowV9_Export_Packet" type="NetFlowObj:NetflowV9ExportPacketType" minOccurs="0" maxOccurs="1">
109
+ <xs:annotation>
110
+ <xs:documentation>Represents the Netflow V9 flow record format. See RFC 3954 (Netflow v9) for more information.</xs:documentation>
111
+ </xs:annotation>
112
+ </xs:element>
113
+ <xs:element name="NetflowV5_Packet" type="NetFlowObj:NetflowV5PacketType" minOccurs="0" maxOccurs="1">
114
+ <xs:annotation>
115
+ <xs:documentation>Represents the NetFlow v5 flow record format, which is commonly used to represent network flow data.</xs:documentation>
116
+ </xs:annotation>
117
+ </xs:element>
118
+ <xs:element name="SiLK_Record" type="NetFlowObj:SiLKRecordType" minOccurs="0" maxOccurs="1">
119
+ <xs:annotation>
120
+ <xs:documentation>Represents a network flow record in the System for Internet-Level Knowledge (SiLK) format, developed by CERT at Carnegie Mellon University (CMU)'s Software Engineering Institute (SEI) as part of the NetSA security suite. See http://tools.netsa.cert.org/silk/analysis-handbook.pdf for more information.</xs:documentation>
121
+ </xs:annotation>
122
+ </xs:element>
123
+ </xs:choice>
124
+ </xs:complexType>
125
+ <xs:complexType name="BidirectionalRecordType">
126
+ <xs:annotation>
127
+ <xs:documentation>Network record formats that capture traffic in both directions. Later, we plan to add Argus as a network flow format type. Argus supports bidirectional flows, and as such, is usually used as an alternative to NetFlow v5 analysis via SiLK (http://www.qosient.com/argus/).</xs:documentation>
128
+ </xs:annotation>
129
+ <xs:choice minOccurs="0" maxOccurs="1">
130
+ <xs:element name="YAF_Record" type="NetFlowObj:YAFRecordType" minOccurs="0" maxOccurs="1">
131
+ <xs:annotation>
132
+ <xs:documentation>Represents flow records generated via YAF (Yet Another Flowmeter), a bidirectional network flow meter. See http://www.usenix.org/event/lisa10/tech/full_papers/Inacio.pdf or http://tools.netsa.cert.org/yaf/index.html for more information.</xs:documentation>
133
+ </xs:annotation>
134
+ </xs:element>
135
+ </xs:choice>
136
+ </xs:complexType>
137
+ <xs:complexType name="IPFIXMessageType">
138
+ <xs:annotation>
139
+ <xs:documentation>The IPFIX protocol provides IP flow information. http://tools.ietf.org/html/rfc5101.</xs:documentation>
140
+ </xs:annotation>
141
+ <xs:sequence>
142
+ <xs:element name="Message_Header" type="NetFlowObj:IPFIXMessageHeaderType" minOccurs="0" maxOccurs="1">
143
+ <xs:annotation>
144
+ <xs:documentation>The Message Header is the first part of an IPFIX Message, which provides basic information about the message, such as the IPFIX version, length of the message, message sequence number, etc. http://tools.ietf.org/html/rfc5101.</xs:documentation>
145
+ </xs:annotation>
146
+ </xs:element>
147
+ <xs:sequence minOccurs="0" maxOccurs="1">
148
+ <xs:element name="Set" type="NetFlowObj:IPFIXSetType" minOccurs="0" maxOccurs="unbounded">
149
+ <xs:annotation>
150
+ <xs:documentation>Set is a generic term for a collection of records that have a similar structure. In an IPFIX Message, one or more Sets follow the Message Header. http://tools.ietf.org/html/rfc5101.</xs:documentation>
151
+ </xs:annotation>
152
+ </xs:element>
153
+ </xs:sequence>
154
+ </xs:sequence>
155
+ </xs:complexType>
156
+ <xs:complexType name="IPFIXMessageHeaderType">
157
+ <xs:annotation>
158
+ <xs:documentation>This type represents the message header for the IPFIX format. For more information about each of the fields, please refer to RFC 5101 (http://tools.ietf.org/html/rfc5101) under the heading, "Message Header Field Descriptions." Note that common elements are included in the Network_Flow_Label.</xs:documentation>
159
+ </xs:annotation>
160
+ <xs:sequence minOccurs="0">
161
+ <xs:element name="Version" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="0a" minOccurs="0" maxOccurs="1">
162
+ <xs:annotation>
163
+ <xs:documentation>Indicates the version number of Flow Record format exported in this message. The value of this field is 0x000a for the current version, incrementing by one the version used in the NetFlow services export version 9 [see RFC3954].</xs:documentation>
164
+ </xs:annotation>
165
+ </xs:element>
166
+ <xs:element name="Byte_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
167
+ <xs:annotation>
168
+ <xs:documentation>Indicates the total byte length of the IPFIX Message, measured in octets, including Message Header and Set(s).</xs:documentation>
169
+ </xs:annotation>
170
+ </xs:element>
171
+ <xs:element name="Export_Timestamp" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
172
+ <xs:annotation>
173
+ <xs:documentation>Indicates the time, in seconds, since 0000 UTC Jan 1, 1970, at which the IPFIX message header leaves the Exporter.</xs:documentation>
174
+ </xs:annotation>
175
+ </xs:element>
176
+ <xs:element name="Sequence_Number" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
177
+ <xs:annotation>
178
+ <xs:documentation>Indicates the incremental sequence counter modulo 2^32 of all IPFIX Data Records sent on this PR-SCTP stream from the current Observation Domain by the Exporting Process. This value SHOULD be used by the Collecting Process to identify whether any IPFIX Data Records have been missed. Template and Options Template Records do not increase the Sequence Number.</xs:documentation>
179
+ </xs:annotation>
180
+ </xs:element>
181
+ <xs:element name="Observation_Domain_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
182
+ <xs:annotation>
183
+ <xs:documentation>Indicates a 32-bit identifier of the Observation Domain that is locally unique to the Exporting Process. See RFC 5101 under Observation Domain ID for more information.</xs:documentation>
184
+ </xs:annotation>
185
+ </xs:element>
186
+ </xs:sequence>
187
+ </xs:complexType>
188
+ <xs:complexType name="IPFIXSetType">
189
+ <xs:annotation>
190
+ <xs:documentation>Represents the possible sets of records that can be represented in an IPFIX message. See RFC 5101 and look for the terms "Template Set", "Options Template Set", and "Data Set", for more information.</xs:documentation>
191
+ </xs:annotation>
192
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
193
+ <xs:element name="Template_Set" type="NetFlowObj:IPFIXTemplateSetType" minOccurs="0" maxOccurs="1">
194
+ <xs:annotation>
195
+ <xs:documentation>Indicates a collection of one or more Template Records that have been grouped together in an IPFIX message.</xs:documentation>
196
+ </xs:annotation>
197
+ </xs:element>
198
+ <xs:element name="Options_Template_Set" type="NetFlowObj:IPFIXOptionsTemplateSetType" minOccurs="0" maxOccurs="1">
199
+ <xs:annotation>
200
+ <xs:documentation>Indicates a collection of one or more Options Template Records that have been grouped together in an IPFIX message.</xs:documentation>
201
+ </xs:annotation>
202
+ </xs:element>
203
+ <xs:element name="Data_Set" type="NetFlowObj:IPFIXDataSetType" minOccurs="0" maxOccurs="1">
204
+ <xs:annotation>
205
+ <xs:documentation>Indicates one or more Data Records, of the same type, that have been grouped together in an IPFIX message. Each Data Record is previously defined by a Template Record or an Options Template Record.</xs:documentation>
206
+ </xs:annotation>
207
+ </xs:element>
208
+ </xs:choice>
209
+ </xs:complexType>
210
+ <xs:complexType name="IPFIXTemplateSetType">
211
+ <xs:annotation>
212
+ <xs:documentation>Specifies the regions of a Template Set, of which there are three: the Set Header, the collection of Template Records, and the optional padding at the end of the Template Set. See RFC 5101 under Set Format, which is section 3.3.1, for more information.</xs:documentation>
213
+ </xs:annotation>
214
+ <xs:sequence>
215
+ <xs:element name="Set_Header" type="NetFlowObj:IPFIXSetHeaderType" minOccurs="0" maxOccurs="1">
216
+ <xs:annotation>
217
+ <xs:documentation>Indicates the Set Header region, which is 32-bit region containing the 16-bit fields Set ID and Length.</xs:documentation>
218
+ </xs:annotation>
219
+ </xs:element>
220
+ <xs:element name="Template_Record" type="NetFlowObj:IPFIXTemplateRecordType" minOccurs="0" maxOccurs="unbounded">
221
+ <xs:annotation>
222
+ <xs:documentation>Indicates the region of Template Records. These are the same fields referenced in the IPFIXTemplateRecordType.</xs:documentation>
223
+ </xs:annotation>
224
+ </xs:element>
225
+ <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
226
+ <xs:annotation>
227
+ <xs:documentation>Indicates the optional Padding at the end of a Template Set. As mentioned in RFC 5101, the Exporting Process MAY insert some padding octets, so that the subsequent Set starts at an aligned boundary. For security reasons, the padding octet(s) MUST be composed of zero (0) valued octets, and the padding length MUST be shorter than any allowable record in this Set. For more information see RFC 5101 under Padding.</xs:documentation>
228
+ </xs:annotation>
229
+ </xs:element>
230
+ </xs:sequence>
231
+ </xs:complexType>
232
+ <xs:complexType name="IPFIXOptionsTemplateSetType">
233
+ <xs:annotation>
234
+ <xs:documentation>Specifies the regions of an Options Template Set, of which there are three: the Set Header, the collection of Options Template Records, and the optional padding at the end of the Options Template Set. See RFC 5101 under Set Format, which is section 3.3.1, for more information.</xs:documentation>
235
+ </xs:annotation>
236
+ <xs:sequence>
237
+ <xs:element name="Set_Header" type="NetFlowObj:IPFIXSetHeaderType" minOccurs="0" maxOccurs="1">
238
+ <xs:annotation>
239
+ <xs:documentation>Indicates the Set Header region, which is 32-bit region containing the 16-bit fields Set ID and Length, in that order. These are the same fields referenced in the IPFIXSetHeaderType.</xs:documentation>
240
+ </xs:annotation>
241
+ </xs:element>
242
+ <xs:element name="Options_Template_Record" type="NetFlowObj:IPFIXOptionsTemplateRecordType" minOccurs="0" maxOccurs="unbounded">
243
+ <xs:annotation>
244
+ <xs:documentation>Indicates the region of Options Template Records. These are the same fields referenced in the IPFIXOptionsTemplateRecordType.</xs:documentation>
245
+ </xs:annotation>
246
+ </xs:element>
247
+ <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
248
+ <xs:annotation>
249
+ <xs:documentation>Indicates the optional Padding at the end of an Options Template Set. As mentioned in RFC 5101, the Exporting Process MAY insert some padding octets, so that the subsequent Set starts at an aligned boundary. For security reasons, the padding octet(s) MUST be composed of zero (0) valued octets, and the padding length MUST be shorter than any allowable record in this Set. For more information see RFC 5101 under Padding.</xs:documentation>
250
+ </xs:annotation>
251
+ </xs:element>
252
+ </xs:sequence>
253
+ </xs:complexType>
254
+ <xs:complexType name="IPFIXDataSetType">
255
+ <xs:annotation>
256
+ <xs:documentation>Specifies the regions of a Data Set, of which there are three: the Set Header, the collection of Data Records, and the optional padding at the end of the Data Set. See RFC 5101 under Set Format, which is section 3.3.1, for more information.</xs:documentation>
257
+ </xs:annotation>
258
+ <xs:sequence>
259
+ <xs:element name="Set_Header" type="NetFlowObj:IPFIXSetHeaderType" minOccurs="0" maxOccurs="1">
260
+ <xs:annotation>
261
+ <xs:documentation>Indicates the Set Header region, which is 32-bit region containing the 16-bit fields Set ID and Length, appended in that order. These are the same fields referenced in the IPFIXSetHeaderType.</xs:documentation>
262
+ </xs:annotation>
263
+ </xs:element>
264
+ <xs:element name="Data_Record" type="NetFlowObj:IPFIXDataRecordType" minOccurs="0" maxOccurs="unbounded">
265
+ <xs:annotation>
266
+ <xs:documentation>Indicates the region of Data Records, which consist of a series of field values without a header, according to RFC 5101, section 3.4.3.</xs:documentation>
267
+ </xs:annotation>
268
+ </xs:element>
269
+ <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
270
+ <xs:annotation>
271
+ <xs:documentation>Indicates the optional Padding at the end of a Data Set. As mentioned in RFC 5101, the Exporting Process MAY insert some padding octets, so that the subsequent Set starts at an aligned boundary. For security reasons, the padding octet(s) MUST be composed of zero (0) valued octets, and the padding length MUST be shorter than any allowable record in this Set. For more information see RFC 5101 under Padding.</xs:documentation>
272
+ </xs:annotation>
273
+ </xs:element>
274
+ </xs:sequence>
275
+ </xs:complexType>
276
+ <xs:complexType name="IPFIXSetHeaderType">
277
+ <xs:annotation>
278
+ <xs:documentation>Defines the elements of the IPFIX set header.</xs:documentation>
279
+ </xs:annotation>
280
+ <xs:sequence>
281
+ <xs:element name="Set_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
282
+ <xs:annotation>
283
+ <xs:documentation>Indicates a 16-bit value that identifies the set. The values of 0 and 1 are not used for historical reasons according to RFC 3954. Otherwise, a value of 2 is reserved for the Template Set and 3 is reserved for the Option Template Set. All other values from 4 to 255 are reserved for future use.</xs:documentation>
284
+ </xs:annotation>
285
+ </xs:element>
286
+ <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
287
+ <xs:annotation>
288
+ <xs:documentation>Total length of the set, in octets, including the set header, all records, and the optional padding. Because an individual Set MAY contain multiple records, the Length value MUST be used to determine the position of the next Set. http://tools.ietf.org/html/rfc5101.</xs:documentation>
289
+ </xs:annotation>
290
+ </xs:element>
291
+ </xs:sequence>
292
+ </xs:complexType>
293
+ <xs:complexType name="IPFIXTemplateRecordType">
294
+ <xs:annotation>
295
+ <xs:documentation>Specifies the regions of a Template Record, of which there are two: the Template Record Header, and the Field Specifiers. See RFC 5101 under Template Record Format, section 3.4.1, for more information.</xs:documentation>
296
+ </xs:annotation>
297
+ <xs:sequence>
298
+ <xs:element name="Template_Record_Header" type="NetFlowObj:IPFIXTemplateRecordHeaderType" minOccurs="0" maxOccurs="1">
299
+ <xs:annotation>
300
+ <xs:documentation>Indicates the Template Record Header region, which is a 32-bit region containing the 16-bit fields Template ID (&gt; 255) and Field Count, appended in that order. These are the same fields referenced in the IPFIXTemplateRecordHeaderType.</xs:documentation>
301
+ </xs:annotation>
302
+ </xs:element>
303
+ <xs:element name="Field_Specifier" type="NetFlowObj:IPFIXTemplateRecordFieldSpecifiersType" minOccurs="0" maxOccurs="unbounded">
304
+ <xs:annotation>
305
+ <xs:documentation>Indicates the region of Field Specifiers. These are the same fields referenced in the IPFIXTemplateRecordFieldSpecifiersType.</xs:documentation>
306
+ </xs:annotation>
307
+ </xs:element>
308
+ </xs:sequence>
309
+ </xs:complexType>
310
+ <xs:complexType name="IPFIXTemplateRecordHeaderType">
311
+ <xs:annotation>
312
+ <xs:documentation>Specifies the fields in a Template Record Header, Template_ID and Field_Count, as explained in RFC 5101, section 3.4.1.</xs:documentation>
313
+ </xs:annotation>
314
+ <xs:sequence>
315
+ <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
316
+ <xs:annotation>
317
+ <xs:documentation>Specifies a unique Template ID which is numbered 256-65535 since IDs 0-255 are reserved for Template Sets, Options Template Sets, and other reserved Sets yet to be created.</xs:documentation>
318
+ </xs:annotation>
319
+ </xs:element>
320
+ <xs:element name="Field_Count" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
321
+ <xs:annotation>
322
+ <xs:documentation>Specifies the number of fields in this Template Record.</xs:documentation>
323
+ </xs:annotation>
324
+ </xs:element>
325
+ </xs:sequence>
326
+ </xs:complexType>
327
+ <xs:complexType name="IPFIXTemplateRecordFieldSpecifiersType">
328
+ <xs:annotation>
329
+ <xs:documentation>Specifies the fields in a Template Record Field Specifier, as explained in RFC 5101, section 3.2.</xs:documentation>
330
+ </xs:annotation>
331
+ <xs:sequence>
332
+ <xs:element name="Enterprise_Bit" type="xs:boolean" minOccurs="0" maxOccurs="1">
333
+ <xs:annotation>
334
+ <xs:documentation>Specifies the Enterprise bit, either 0 or 1. If this bit is zero, the Information Element Identifier identifies an IETF-specified Information Element, and the four-octet Enterprise Number field SHOULD NOT be present. If this bit is one, the Information Element identifier identifies an enterprise-specific Information Element, and the Enterprise Number filed SHOULD be present. NOTE: While it is legal to use "true" and "false" here, this value SHOULD be set to 0 or 1 for consistency with RFC 5101.</xs:documentation>
335
+ </xs:annotation>
336
+ </xs:element>
337
+ <xs:element name="Information_Element_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
338
+ <xs:annotation>
339
+ <xs:documentation>Specifies the 15-bit (NOT 16-bit) Information Element ID referring to the type of Information Element, as shown in RFC 5102.</xs:documentation>
340
+ </xs:annotation>
341
+ </xs:element>
342
+ <xs:element name="Field_Length" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
343
+ <xs:annotation>
344
+ <xs:documentation>Specifies the 16-bit Field Length, in octets, of the corresponding encoded Information Element as defined in RFC 5102. The field length may be smaller than the definition in RFC 5102 if the reduced size encoding is used (see Section 6.2 of RFC 5101). The value 65535 is reserved for variable length Information Elements.</xs:documentation>
345
+ </xs:annotation>
346
+ </xs:element>
347
+ <xs:element name="Enterprise_Number" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
348
+ <xs:annotation>
349
+ <xs:documentation>Specifies the 32-bit IANA Enterprise Number of the authority defining the Information Element identifier in this Template Record. Information Element Identifiers 1.2 and 2.1 are defined by the IETF (Enterprise bit = 0) and, therefore, do not need an Enterprise Number to identify them.</xs:documentation>
350
+ </xs:annotation>
351
+ </xs:element>
352
+ </xs:sequence>
353
+ </xs:complexType>
354
+ <xs:complexType name="IPFIXOptionsTemplateRecordType">
355
+ <xs:annotation>
356
+ <xs:documentation>Specifies the regions of an Options Template Record, of which there are two: the Options Template Record Header, and the Field Specifiers. See RFC 5101 under Options Template Record Format, section 3.4.2.2, for more information.</xs:documentation>
357
+ </xs:annotation>
358
+ <xs:sequence>
359
+ <xs:element name="Options_Template_Record_Header" type="NetFlowObj:IPFIXOptionsTemplateRecordHeaderType" minOccurs="0" maxOccurs="1">
360
+ <xs:annotation>
361
+ <xs:documentation>Indicates the Options Template Record Header region, which is a 48-bit region containing the 16-bit fields Template ID, Field Count, and Scope Field Count, appended in that order.</xs:documentation>
362
+ </xs:annotation>
363
+ </xs:element>
364
+ <xs:element name="Field_Specifier" type="NetFlowObj:IPFIXOptionsTemplateRecordFieldSpecifiersType" minOccurs="0" maxOccurs="unbounded">
365
+ <xs:annotation>
366
+ <xs:documentation>Indicates the region of Field Specifiers. These are the same fields referenced in the IPFIXOptionsTemplateRecordFieldSpecifiersType.</xs:documentation>
367
+ </xs:annotation>
368
+ </xs:element>
369
+ </xs:sequence>
370
+ </xs:complexType>
371
+ <xs:complexType name="IPFIXOptionsTemplateRecordHeaderType">
372
+ <xs:annotation>
373
+ <xs:documentation>Defines the header of an options template record.</xs:documentation>
374
+ </xs:annotation>
375
+ <xs:sequence>
376
+ <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
377
+ <xs:annotation>
378
+ <xs:documentation>Specifies a unique Template ID which is numbered 256-65535 since IDs 0-255 are reserved for Template Sets, Options Template Sets, and other reserved Sets yet to be created.</xs:documentation>
379
+ </xs:annotation>
380
+ </xs:element>
381
+ <xs:element name="Field_Count" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
382
+ <xs:annotation>
383
+ <xs:documentation>Specifies the number of fields in this Options Template Record, INCLUDING the Scope Fields.</xs:documentation>
384
+ </xs:annotation>
385
+ </xs:element>
386
+ <xs:element name="Scope_Field_Count" type="cyboxCommon:PositiveIntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
387
+ <xs:annotation>
388
+ <xs:documentation>Specifies the number of scope fields in this Options Template Record, which is NONZERO. The Scope Fields are normal Fields except that they are interpreted as scope at the Collector.</xs:documentation>
389
+ </xs:annotation>
390
+ </xs:element>
391
+ </xs:sequence>
392
+ </xs:complexType>
393
+ <xs:complexType name="IPFIXOptionsTemplateRecordFieldSpecifiersType">
394
+ <xs:annotation>
395
+ <xs:documentation>Specifies the fields in an Options Template Record Field Specifier, as explained in RFC 5101, sections 3.2 and 3.4.2.2. It consists of two sequences: Scope Fields and Option Fields, appended together.</xs:documentation>
396
+ </xs:annotation>
397
+ <xs:sequence>
398
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
399
+ <xs:element name="Scope_Enterprise_Bit" type="xs:boolean" minOccurs="0" maxOccurs="1">
400
+ <xs:annotation>
401
+ <xs:documentation>Specifies the Scope Enterprise bit, either 0 or 1. If this bit is zero, the Information Element Identifier identifies an IETF-specified Information Element, and the four-octet Enterprise Number field SHOULD NOT be present. If this bit is one, the Information Element identifier identifies an enterprise-specific Information Element, and the Enterprise Number filed SHOULD be present. NOTE: While it is legal to use "true" and "false" here, this value SHOULD be set to 0 or 1 for consistency with RFC 5101.</xs:documentation>
402
+ </xs:annotation>
403
+ </xs:element>
404
+ <xs:element name="Scope_Information_Element_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
405
+ <xs:annotation>
406
+ <xs:documentation>Specifies the 15-bit (NOT 16-bit) Scope Information Element ID referring to the type of Information Element, as shown in RFC 5102.</xs:documentation>
407
+ </xs:annotation>
408
+ </xs:element>
409
+ <xs:element name="Scope_Field_Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
410
+ <xs:annotation>
411
+ <xs:documentation>Specifies the 16-bit Scope Field Length, in octets, of the corresponding encoded Information Element as defined in RFC 5102. The field length may be smaller than the definition in RFC 5102 if the reduced size encoding is used (see Section 6.2 of RFC 5101). The value 65535 is reserved for variable length Information Elements.</xs:documentation>
412
+ </xs:annotation>
413
+ </xs:element>
414
+ <xs:element name="Scope_Enterprise_Number" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
415
+ <xs:annotation>
416
+ <xs:documentation>Specifies the 32-bit IANA Scope Enterprise Number of the authority defining the Information Element identifier in this Template Record. Information Element Identifiers 1.2 and 2.1 are defined by the IETF (Enterprise bit = 0) and, therefore, do not need an Enterprise Number to identify them.</xs:documentation>
417
+ </xs:annotation>
418
+ </xs:element>
419
+ </xs:sequence>
420
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
421
+ <xs:element name="Option_Enterprise_Bit" type="xs:boolean" minOccurs="0" maxOccurs="1">
422
+ <xs:annotation>
423
+ <xs:documentation>Specifies the Option Enterprise bit, either 0 or 1. If this bit is zero, the Information Element Identifier identifies an IETF-specified Information Element, and the four-octet Enterprise Number field SHOULD NOT be present. If this bit is one, the Information Element identifier identifies an enterprise-specific Information Element, and the Enterprise Number filed SHOULD be present. NOTE: While it is legal to use "true" and "false" here, this value SHOULD be set to 0 or 1 for consistency with RFC 5101.</xs:documentation>
424
+ </xs:annotation>
425
+ </xs:element>
426
+ <xs:element name="Option_Information_Element_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
427
+ <xs:annotation>
428
+ <xs:documentation>Specifies the 15-bit (NOT 16-bit) Option Information Element ID referring to the type of Information Element, as shown in RFC 5102.</xs:documentation>
429
+ </xs:annotation>
430
+ </xs:element>
431
+ <xs:element name="Option_Field_Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
432
+ <xs:annotation>
433
+ <xs:documentation>Specifies the 16-bit Option Field Length, in octets, of the corresponding encoded Information Element as defined in RFC 5102. The field length may be smaller than the definition in RFC 5102 if the reduced size encoding is used (see Section 6.2 of RFC 5101). The value 65535 is reserved for variable length Information Elements.</xs:documentation>
434
+ </xs:annotation>
435
+ </xs:element>
436
+ <xs:element name="Option_Enterprise_Number" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
437
+ <xs:annotation>
438
+ <xs:documentation>Specifies the 32-bit IANA Option Enterprise Number of the authority defining the Information Element identifier in this Template Record. Information Element Identifiers 1.2 and 2.1 are defined by the IETF (Enterprise bit = 0) and, therefore, do not need an Enterprise Number to identify them.</xs:documentation>
439
+ </xs:annotation>
440
+ </xs:element>
441
+ </xs:sequence>
442
+ </xs:sequence>
443
+ </xs:complexType>
444
+ <xs:complexType name="IPFIXDataRecordType">
445
+ <xs:annotation>
446
+ <xs:documentation>Data records are sent in data sets. A data record consists of only one more Field values.</xs:documentation>
447
+ </xs:annotation>
448
+ <xs:sequence>
449
+ <xs:element name="Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="unbounded">
450
+ <xs:annotation>
451
+ <xs:documentation>Indicates the individual Field Value, which need not be 16-bit. The Template ID to which the Field Values belong to is encoded in the Data Set Header field "Set ID", i.e. "Set ID" = "Template ID".</xs:documentation>
452
+ </xs:annotation>
453
+ </xs:element>
454
+ </xs:sequence>
455
+ </xs:complexType>
456
+ <xs:complexType name="NetflowV9ExportPacketType">
457
+ <xs:annotation>
458
+ <xs:documentation>Netflow v9 was developed by Cisco and provides access to IP flow information. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
459
+ </xs:annotation>
460
+ <xs:sequence>
461
+ <xs:element name="Packet_Header" type="NetFlowObj:NetflowV9PacketHeaderType" minOccurs="0" maxOccurs="1">
462
+ <xs:annotation>
463
+ <xs:documentation>Specifies the Packet Header, which is the first part of an Export Packet. The Packet Header provides basic information about the packet such as the NetFlow version, number of records contained within the packet, and sequence numbering. See RFC 3954 for more information.</xs:documentation>
464
+ </xs:annotation>
465
+ </xs:element>
466
+ <xs:sequence>
467
+ <xs:element name="Flow_Set" type="NetFlowObj:NetflowV9FlowSetType" minOccurs="0" maxOccurs="unbounded">
468
+ <xs:annotation>
469
+ <xs:documentation>Specifies a FlowSet, which is a collection of Flow Records that have similar structure. In an Export Packet, one or more FlowSets follow the Packet Header. There are three different types of FlowSets, as defined in RFC 3954: a Template FlowSet, Options Template FlowSet and Data FlowSet.</xs:documentation>
470
+ </xs:annotation>
471
+ </xs:element>
472
+ </xs:sequence>
473
+ </xs:sequence>
474
+ </xs:complexType>
475
+ <xs:complexType name="NetflowV9PacketHeaderType">
476
+ <xs:annotation>
477
+ <xs:documentation>Header fields defined for Netflow v9. Note that common elements are included in the Network_Flow_Label. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
478
+ </xs:annotation>
479
+ <xs:sequence>
480
+ <xs:element name="Version" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="09" minOccurs="0" maxOccurs="1">
481
+ <xs:annotation>
482
+ <xs:documentation>Specifies the version of flow record format exported in this packet. The value of this field is 9 for the Netflow v9.</xs:documentation>
483
+ </xs:annotation>
484
+ </xs:element>
485
+ <xs:element name="Record_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
486
+ <xs:annotation>
487
+ <xs:documentation>Specifies the total number of records in the Export Packet, which is the sum of Options FlowSet records, Template FlowSet records, and Data FlowSet records. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
488
+ </xs:annotation>
489
+ </xs:element>
490
+ <xs:element name="Sys_Up_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
491
+ <xs:annotation>
492
+ <xs:documentation>Specifies the time in milliseconds since this device was first booted.</xs:documentation>
493
+ </xs:annotation>
494
+ </xs:element>
495
+ <xs:element name="Unix_Secs" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
496
+ <xs:annotation>
497
+ <xs:documentation>Specifies the time in seconds since 0000 UTC 1970 at which the Export Packet leaves the Exporter.</xs:documentation>
498
+ </xs:annotation>
499
+ </xs:element>
500
+ <xs:element name="Sequence_Number" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
501
+ <xs:annotation>
502
+ <xs:documentation>Incremental sequence counter of all Export Packets sent from the current Observation Domain by the Exporter. This value MUST be cumulative, and SHOULD be used by the Collector to identify whether any Export Packets have been missed. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
503
+ </xs:annotation>
504
+ </xs:element>
505
+ <xs:element name="Source_ID" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
506
+ <xs:annotation>
507
+ <xs:documentation>Specifies a 32-bit value that identifies the Exporter Observation Domain. NetFlow Collectors SHOULD use the combination of the source IP address and the Source ID field to separate different export streams originating from the same Exporter.</xs:documentation>
508
+ </xs:annotation>
509
+ </xs:element>
510
+ </xs:sequence>
511
+ </xs:complexType>
512
+ <xs:complexType name="NetflowV9FlowSetType">
513
+ <xs:annotation>
514
+ <xs:documentation>In an Export Packet, one or more FlowSets follow the Packet Header. There are three different types of FlowSets, as defined in RFC 3954: a Template FlowSet, Options Template FlowSet and Data FlowSet.</xs:documentation>
515
+ </xs:annotation>
516
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
517
+ <xs:element name="Template_Flow_Set" type="NetFlowObj:NetflowV9TemplateFlowSetType" minOccurs="0" maxOccurs="1">
518
+ <xs:annotation>
519
+ <xs:documentation>One of the essential elements in the NetFlow format is the Template FlowSet. Templates greatly enhance the flexibility of the Flow Record format because they allow the NetFlow Collector to process Flow Records without necessarily knowing the interpretation of all the data in the Flow Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
520
+ </xs:annotation>
521
+ </xs:element>
522
+ <xs:element name="Options_Template_Flow_Set" type="NetFlowObj:NetflowV9OptionsTemplateFlowSetType" minOccurs="0" maxOccurs="1">
523
+ <xs:annotation>
524
+ <xs:documentation>Specifies an Options Template FlowSet, which is one or more Options Template Records that have been grouped together in an Export Packet.</xs:documentation>
525
+ </xs:annotation>
526
+ </xs:element>
527
+ <xs:element name="Data_Flow_Set" type="NetFlowObj:NetflowV9DataFlowSetType" minOccurs="0" maxOccurs="1">
528
+ <xs:annotation>
529
+ <xs:documentation>Specifies a Data FlowSet, which is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record.</xs:documentation>
530
+ </xs:annotation>
531
+ </xs:element>
532
+ </xs:choice>
533
+ </xs:complexType>
534
+ <xs:complexType name="NetflowV9TemplateFlowSetType">
535
+ <xs:annotation>
536
+ <xs:documentation>Provides the format of the Template FlowSet.</xs:documentation>
537
+ </xs:annotation>
538
+ <xs:sequence>
539
+ <xs:element name="Flow_Set_ID" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="00" minOccurs="0" maxOccurs="1">
540
+ <xs:annotation>
541
+ <xs:documentation>Specifies the FlowSet ID, which is fixed to 0 for the Template FlowSet.</xs:documentation>
542
+ </xs:annotation>
543
+ </xs:element>
544
+ <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
545
+ <xs:annotation>
546
+ <xs:documentation>Length is the sum of the lengths of the FlowSet ID, the Length itself, and all Template Records within this FlowSet.</xs:documentation>
547
+ </xs:annotation>
548
+ </xs:element>
549
+ <xs:element name="Template_Record" type="NetFlowObj:NetflowV9TemplateRecordType" minOccurs="0" maxOccurs="unbounded">
550
+ <xs:annotation>
551
+ <xs:documentation>Specifies the Template Record region, which includes the template ID, field count, field type, and field length.</xs:documentation>
552
+ </xs:annotation>
553
+ </xs:element>
554
+ </xs:sequence>
555
+ </xs:complexType>
556
+ <xs:complexType name="NetflowV9TemplateRecordType">
557
+ <xs:annotation>
558
+ <xs:documentation>Specifies the Template Record region, which includes the template ID, field count, field type, and field length.</xs:documentation>
559
+ </xs:annotation>
560
+ <xs:sequence>
561
+ <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
562
+ <xs:annotation>
563
+ <xs:documentation>Specifies a unique Template ID for the Template Record. IDs in the range 0-255 are reserved for Template FlowSets, Options FlowSets, and other reserved Sets yet to be created. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
564
+ </xs:annotation>
565
+ </xs:element>
566
+ <xs:element name="Field_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
567
+ <xs:annotation>
568
+ <xs:documentation>Specifies the number of fields in this Template Record.</xs:documentation>
569
+ </xs:annotation>
570
+ </xs:element>
571
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
572
+ <xs:annotation>
573
+ <xs:documentation>Number of fields corresponds to Count field.</xs:documentation>
574
+ </xs:annotation>
575
+ <xs:element name="Field_Type" type="NetFlowObj:NetflowV9FieldType" minOccurs="0" maxOccurs="1">
576
+ <xs:annotation>
577
+ <xs:documentation>Specifies a numeric value that represents the type of the field. Refer to the "Field Type Definitions" section in RFC 3954 for descriptions of these types.</xs:documentation>
578
+ </xs:annotation>
579
+ </xs:element>
580
+ <xs:element name="Field_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
581
+ <xs:annotation>
582
+ <xs:documentation>Specifies the length of the corresponding field type, in bytes.</xs:documentation>
583
+ </xs:annotation>
584
+ </xs:element>
585
+ </xs:sequence>
586
+ </xs:sequence>
587
+ </xs:complexType>
588
+ <xs:complexType name="NetflowV9FieldType">
589
+ <xs:annotation>
590
+ <xs:documentation>NetflowV9FieldType specifies possible fields types for Netflow v9, via a union of the NetflowV9FieldTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
591
+ </xs:annotation>
592
+ <xs:simpleContent>
593
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
594
+ <xs:simpleType>
595
+ <xs:union memberTypes="NetFlowObj:NetflowV9FieldTypeEnum xs:string"/>
596
+ </xs:simpleType>
597
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
598
+ <xs:annotation>
599
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
600
+ </xs:annotation>
601
+ </xs:attribute>
602
+ </xs:restriction>
603
+ </xs:simpleContent>
604
+ </xs:complexType>
605
+ <xs:simpleType name="NetflowV9FieldTypeEnum">
606
+ <xs:annotation>
607
+ <xs:documentation>This enumeration describe the field types in NetFlow Version 9. Only the first 20 have been enumerated so far. Please see Section 8 in http://www.ietf.org/rfc/rfc3954.txt for the complete list (79 in total).</xs:documentation>
608
+ </xs:annotation>
609
+ <xs:restriction base="xs:string">
610
+ <xs:enumeration value="IN_BYTES(1)">
611
+ <xs:annotation>
612
+ <xs:documentation>The IN_BYTES(1) field represents the incoming counter with length N x 8 bits for number of bytes associated with an IP Flow.</xs:documentation>
613
+ </xs:annotation>
614
+ </xs:enumeration>
615
+ <xs:enumeration value="IN_PKTS(2)">
616
+ <xs:annotation>
617
+ <xs:documentation>The IN_PKTS(2) field represents the incoming counter with length N x 8 bits for the number of packets associated with an IP Flow.</xs:documentation>
618
+ </xs:annotation>
619
+ </xs:enumeration>
620
+ <xs:enumeration value="FLOWS(3)">
621
+ <xs:annotation>
622
+ <xs:documentation>The FLOWS(3) field represents the number of flows that were aggregated; default for N is 4.</xs:documentation>
623
+ </xs:annotation>
624
+ </xs:enumeration>
625
+ <xs:enumeration value="PROTOCOL(4)">
626
+ <xs:annotation>
627
+ <xs:documentation>The PROTOCOL(4) field represents the IP protocol byte.</xs:documentation>
628
+ </xs:annotation>
629
+ </xs:enumeration>
630
+ <xs:enumeration value="SRC_TOS(5)">
631
+ <xs:annotation>
632
+ <xs:documentation>The TOS(5) field represents the Type of Service byte setting when entering incoming interface.</xs:documentation>
633
+ </xs:annotation>
634
+ </xs:enumeration>
635
+ <xs:enumeration value="TCP_FLAGS(6)">
636
+ <xs:annotation>
637
+ <xs:documentation>The TCP_FLAGS(6) field is cumulative of all the TCP flags seen for this flow.</xs:documentation>
638
+ </xs:annotation>
639
+ </xs:enumeration>
640
+ <xs:enumeration value="L4_SRC_PORT(7)">
641
+ <xs:annotation>
642
+ <xs:documentation>The L4_SRC_PORT(7) field represents the TCP/UDP source port number i.e.: FTP, Telnet, or equivalent.</xs:documentation>
643
+ </xs:annotation>
644
+ </xs:enumeration>
645
+ <xs:enumeration value="IPV4_SRC_ADDR(8)">
646
+ <xs:annotation>
647
+ <xs:documentation>The IPV4_SRC_ADDR(8) field represents the IPv4 source address.</xs:documentation>
648
+ </xs:annotation>
649
+ </xs:enumeration>
650
+ <xs:enumeration value="SRC_MASK(9)">
651
+ <xs:annotation>
652
+ <xs:documentation>The SRC_MASK(9) field represents the number of contiguous bits in the source address subnet mask i.e.: the submask in slash notation.</xs:documentation>
653
+ </xs:annotation>
654
+ </xs:enumeration>
655
+ <xs:enumeration value="INPUT_SNMP(10)">
656
+ <xs:annotation>
657
+ <xs:documentation>The INPUT_SNMP(10) field represents the number of contiguous bits in the source address subnet mask i.e.: the submask in slash notation.</xs:documentation>
658
+ </xs:annotation>
659
+ </xs:enumeration>
660
+ <xs:enumeration value="L4_DST_PORT(11)">
661
+ <xs:annotation>
662
+ <xs:documentation>The LP_DST_PORT(11) field represents the TCP/UDP destination port number i.e.: FTP, Telnet, or equivalent.</xs:documentation>
663
+ </xs:annotation>
664
+ </xs:enumeration>
665
+ <xs:enumeration value="IPV4_DST_ADDR(12)">
666
+ <xs:annotation>
667
+ <xs:documentation>The IPV4_DST_ADDR(12) field represents the IPv4 destination address.</xs:documentation>
668
+ </xs:annotation>
669
+ </xs:enumeration>
670
+ <xs:enumeration value="DST_MASK(13)">
671
+ <xs:annotation>
672
+ <xs:documentation>The DST_MASK(13) field represents the number of contiguous bits in the destination address subnet mask i.e.: the submask in slash notation.</xs:documentation>
673
+ </xs:annotation>
674
+ </xs:enumeration>
675
+ <xs:enumeration value="OUTPUT_SNMP(14)">
676
+ <xs:annotation>
677
+ <xs:documentation>The OUTPUT_SNMP(14) field represents the output interface index; default for N is 2 but higher values could be used.</xs:documentation>
678
+ </xs:annotation>
679
+ </xs:enumeration>
680
+ <xs:enumeration value="IPV4_NEXT_HOP(15)">
681
+ <xs:annotation>
682
+ <xs:documentation>The IPV4_NEXT_HOP(15) field represents the IPv4 address of next-hop router.</xs:documentation>
683
+ </xs:annotation>
684
+ </xs:enumeration>
685
+ <xs:enumeration value="SRC_AS(16)">
686
+ <xs:annotation>
687
+ <xs:documentation>The SRC_AS(16) field represents the source BGP autonomous system number where N could be 2 or 4.</xs:documentation>
688
+ </xs:annotation>
689
+ </xs:enumeration>
690
+ <xs:enumeration value="DST_AS(17)">
691
+ <xs:annotation>
692
+ <xs:documentation>The DST_AS(17) field represents the destination BGP autonomous system number where N could be 2 or 4.</xs:documentation>
693
+ </xs:annotation>
694
+ </xs:enumeration>
695
+ <xs:enumeration value="BGP_IPV4_NEXT_HOP(18)">
696
+ <xs:annotation>
697
+ <xs:documentation>The BGP_IPV4_NEXT_HOP(18) field represents the next-hop router's IP in the BGP domain.</xs:documentation>
698
+ </xs:annotation>
699
+ </xs:enumeration>
700
+ <xs:enumeration value="MUL_DST_PKTS(19)">
701
+ <xs:annotation>
702
+ <xs:documentation>The MUL_DST_PKTS(19) field represents the IP multicast outgoing packet counter with length N x 8 bits for packets associated with the IP Flow.</xs:documentation>
703
+ </xs:annotation>
704
+ </xs:enumeration>
705
+ <xs:enumeration value="MUL_DST_BYTES(20)">
706
+ <xs:annotation>
707
+ <xs:documentation>The MUL_DST_BYTES(20) field represents the IP multicast outgoing byte counter with length N x 8 bits for bytes associated with the IP Flow.</xs:documentation>
708
+ </xs:annotation>
709
+ </xs:enumeration>
710
+ </xs:restriction>
711
+ </xs:simpleType>
712
+ <xs:complexType name="NetflowV9OptionsTemplateFlowSetType">
713
+ <xs:annotation>
714
+ <xs:documentation>Specifies an Options Template FlowSet, which is one or more Options Template Records that have been grouped together in an Export Packet.</xs:documentation>
715
+ </xs:annotation>
716
+ <xs:sequence>
717
+ <xs:element name="Flow_Set_ID" type="cyboxCommon:HexBinaryObjectPropertyType" fixed="01" minOccurs="0" maxOccurs="1">
718
+ <xs:annotation>
719
+ <xs:documentation>Specifies the FlowSet ID, which is fixed to 1 for the Options Template FlowSet.</xs:documentation>
720
+ </xs:annotation>
721
+ </xs:element>
722
+ <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
723
+ <xs:annotation>
724
+ <xs:documentation>Specifies the total length of this FlowSet, in octets, including the set header, all records, and the optional padding.</xs:documentation>
725
+ </xs:annotation>
726
+ </xs:element>
727
+ <xs:element name="Options_Template_Record" type="NetFlowObj:NetflowV9OptionsTemplateRecordType" minOccurs="0" maxOccurs="unbounded">
728
+ <xs:annotation>
729
+ <xs:documentation>Specifies the Options Template Record region, which includes the Option Scope Length, Option Length, and fields specifying the Scope field type and Scope field length.</xs:documentation>
730
+ </xs:annotation>
731
+ </xs:element>
732
+ <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
733
+ <xs:annotation>
734
+ <xs:documentation>Specifies the number of padding bytes to be inserted so that the subsequent FlowSet starts at a 4-byte aligned boundary. It is important to note that the Length field includes the padding bytes. Padding SHOULD be using zeros.</xs:documentation>
735
+ </xs:annotation>
736
+ </xs:element>
737
+ </xs:sequence>
738
+ </xs:complexType>
739
+ <xs:complexType name="NetflowV9OptionsTemplateRecordType">
740
+ <xs:annotation>
741
+ <xs:documentation>Specifies the Options Template Record region, which includes the Option Scope Length, Option Length, and fields specifying the Scope field type and Scope field length.</xs:documentation>
742
+ </xs:annotation>
743
+ <xs:sequence>
744
+ <xs:element name="Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
745
+ <xs:annotation>
746
+ <xs:documentation>Specifies the template ID of this Options Template, which must be greater than 255.</xs:documentation>
747
+ </xs:annotation>
748
+ </xs:element>
749
+ <xs:element name="Option_Scope_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
750
+ <xs:annotation>
751
+ <xs:documentation>Specifies the length of bytes of any Scope field definition contained in the Options Template Record.</xs:documentation>
752
+ </xs:annotation>
753
+ </xs:element>
754
+ <xs:element name="Option_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
755
+ <xs:annotation>
756
+ <xs:documentation>Specifies the length of bytes of any options field definitions contained in this Options Template Record.</xs:documentation>
757
+ </xs:annotation>
758
+ </xs:element>
759
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
760
+ <xs:element name="Scope_Field_Type" type="NetFlowObj:NetflowV9ScopeFieldType" minOccurs="0" maxOccurs="1">
761
+ <xs:annotation>
762
+ <xs:documentation>Specifies the relevant portion of the Exporter/NetFlow process to which the Options Template Record refers. Currently defined values include 1 for System, 2 for Interface, 3 for Line Card, 4 for Cache, and 5 for Template. More information can be found in RFC 3954.</xs:documentation>
763
+ </xs:annotation>
764
+ </xs:element>
765
+ <xs:element name="Scope_Field_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
766
+ <xs:annotation>
767
+ <xs:documentation>Specifies the length (in bytes) of the Scope field as it would appear in an Options Data Record.</xs:documentation>
768
+ </xs:annotation>
769
+ </xs:element>
770
+ </xs:sequence>
771
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
772
+ <xs:element name="Option_Field_Type" type="NetFlowObj:NetflowV9FieldType" minOccurs="0" maxOccurs="1">
773
+ <xs:annotation>
774
+ <xs:documentation>Specifies the type of field that would appear in the Options Template Record. More information can be found in RFC 3954.</xs:documentation>
775
+ </xs:annotation>
776
+ </xs:element>
777
+ <xs:element name="Option_Field_Length" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
778
+ <xs:annotation>
779
+ <xs:documentation>Specifies the length (in bytes) of the Option field.</xs:documentation>
780
+ </xs:annotation>
781
+ </xs:element>
782
+ </xs:sequence>
783
+ </xs:sequence>
784
+ </xs:complexType>
785
+ <xs:complexType name="NetflowV9ScopeFieldType">
786
+ <xs:annotation>
787
+ <xs:documentation>NetflowV9ScopeFieldType specifies scope field types for Netflow v9, via a union of the NetflowV9ScopeFieldTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
788
+ </xs:annotation>
789
+ <xs:simpleContent>
790
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
791
+ <xs:simpleType>
792
+ <xs:union memberTypes="NetFlowObj:NetflowV9ScopeFieldTypeEnum xs:string"/>
793
+ </xs:simpleType>
794
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
795
+ <xs:annotation>
796
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
797
+ </xs:annotation>
798
+ </xs:attribute>
799
+ </xs:restriction>
800
+ </xs:simpleContent>
801
+ </xs:complexType>
802
+ <xs:simpleType name="NetflowV9ScopeFieldTypeEnum">
803
+ <xs:annotation>
804
+ <xs:documentation>These describe the scope field types, found in the relevant portion of the NetFlow process to which the options record refers. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
805
+ </xs:annotation>
806
+ <xs:restriction base="xs:string">
807
+ <xs:enumeration value="System(1)">
808
+ <xs:annotation>
809
+ <xs:documentation>Indicates the System scope field type.</xs:documentation>
810
+ </xs:annotation>
811
+ </xs:enumeration>
812
+ <xs:enumeration value="Interface(2)">
813
+ <xs:annotation>
814
+ <xs:documentation>Indicates the Interface scope field type.</xs:documentation>
815
+ </xs:annotation>
816
+ </xs:enumeration>
817
+ <xs:enumeration value="LineCard(3)">
818
+ <xs:annotation>
819
+ <xs:documentation>Indicates the Line Card scope field type.</xs:documentation>
820
+ </xs:annotation>
821
+ </xs:enumeration>
822
+ <xs:enumeration value="Cache(4)">
823
+ <xs:annotation>
824
+ <xs:documentation>Indicates the NetFlow Cache scope field type.</xs:documentation>
825
+ </xs:annotation>
826
+ </xs:enumeration>
827
+ <xs:enumeration value="Template(5)">
828
+ <xs:annotation>
829
+ <xs:documentation>Describes the Template scope field type.</xs:documentation>
830
+ </xs:annotation>
831
+ </xs:enumeration>
832
+ </xs:restriction>
833
+ </xs:simpleType>
834
+ <xs:complexType name="NetflowV9DataFlowSetType">
835
+ <xs:annotation>
836
+ <xs:documentation>Specifies a Data FlowSet, which is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
837
+ </xs:annotation>
838
+ <xs:sequence>
839
+ <xs:element name="Flow_Set_ID_Template_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
840
+ <xs:annotation>
841
+ <xs:documentation>Specifies the FlowSet ID, which corresponds to the Template ID from a Template Flow Set or an Options Template Flow Set.</xs:documentation>
842
+ </xs:annotation>
843
+ </xs:element>
844
+ <xs:element name="Length" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
845
+ <xs:annotation>
846
+ <xs:documentation>Specifies the length of this FlowSet.</xs:documentation>
847
+ </xs:annotation>
848
+ </xs:element>
849
+ <xs:element name="Data_Record" type="NetFlowObj:NetflowV9DataRecordType" minOccurs="0" maxOccurs="unbounded">
850
+ <xs:annotation>
851
+ <xs:documentation>The remainder of the Data FlowSet is a collection of Flow Data Record(s), each containing a set of field values. The Type and Length of the fields have been previously defined in the Template Record referenced by the FlowSet ID or Template ID. Specifies either a template flow set or an options template flow set. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
852
+ </xs:annotation>
853
+ </xs:element>
854
+ <xs:element name="Padding" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
855
+ <xs:annotation>
856
+ <xs:documentation>Specifies the padding bytes used so that the subsequent FlowSet starts at a 4-byte aligned boundary. It is important to note that the Length field includes the padding bytes. Padding SHOULD be using zeros.</xs:documentation>
857
+ </xs:annotation>
858
+ </xs:element>
859
+ </xs:sequence>
860
+ </xs:complexType>
861
+ <xs:complexType name="NetflowV9DataRecordType">
862
+ <xs:annotation>
863
+ <xs:documentation>A Data FlowSet is one or more records, of the same type, that are grouped together in an Export Packet. Each record is either a Flow Data Record or an Options Data Record previously defined by a Template Record or an Options Template Record. http://www.ietf.org/rfc/rfc3954.txt.</xs:documentation>
864
+ </xs:annotation>
865
+ <xs:choice minOccurs="0" maxOccurs="1">
866
+ <xs:annotation>
867
+ <xs:documentation/>
868
+ </xs:annotation>
869
+ <xs:sequence>
870
+ <xs:element name="Flow_Data_Record" type="NetFlowObj:FlowDataRecordType" minOccurs="0" maxOccurs="unbounded">
871
+ <xs:annotation>
872
+ <xs:documentation>Specifies a Flow Data Record, which corresponds to a FieldType defined in the Template Record. Each one will have multiple values associated with it.</xs:documentation>
873
+ </xs:annotation>
874
+ </xs:element>
875
+ </xs:sequence>
876
+ <xs:sequence>
877
+ <xs:element name="Options_Data_Record" type="NetFlowObj:OptionsDataRecordType" minOccurs="0" maxOccurs="unbounded">
878
+ <xs:annotation>
879
+ <xs:documentation>Specifies an Options Data Record, which Corresponds to a previously defined Options Template Record.</xs:documentation>
880
+ </xs:annotation>
881
+ </xs:element>
882
+ </xs:sequence>
883
+ </xs:choice>
884
+ </xs:complexType>
885
+ <xs:complexType name="FlowDataRecordType">
886
+ <xs:annotation>
887
+ <xs:documentation>A Flow Data Record is a data record that contains values of the Flow parameters corresponding to a Template Record.</xs:documentation>
888
+ </xs:annotation>
889
+ <xs:sequence minOccurs="0" maxOccurs="1">
890
+ <xs:element name="Flow_Record_Collection_Element" type="NetFlowObj:FlowCollectionElementType" minOccurs="0" maxOccurs="unbounded">
891
+ <xs:annotation>
892
+ <xs:documentation>For each flow record, field values are listed.</xs:documentation>
893
+ </xs:annotation>
894
+ </xs:element>
895
+ </xs:sequence>
896
+ </xs:complexType>
897
+ <xs:complexType name="FlowCollectionElementType">
898
+ <xs:annotation>
899
+ <xs:documentation>Field values are associated with each record in the collection of a flow data record.</xs:documentation>
900
+ </xs:annotation>
901
+ <xs:sequence minOccurs="0">
902
+ <xs:element name="Flow_Record_Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="unbounded">
903
+ <xs:annotation>
904
+ <xs:documentation>Set of fields values for a given Flow Data Record.</xs:documentation>
905
+ </xs:annotation>
906
+ </xs:element>
907
+ </xs:sequence>
908
+ </xs:complexType>
909
+ <xs:complexType name="OptionsDataRecordType">
910
+ <xs:annotation>
911
+ <xs:documentation>The data record that contains values and scope information of the Flow measurement parameters, corresponding to an Options Template Record.</xs:documentation>
912
+ </xs:annotation>
913
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
914
+ <xs:element name="Scope_Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
915
+ <xs:annotation>
916
+ <xs:documentation>Corresponds to a previously defined Options Template Record.</xs:documentation>
917
+ </xs:annotation>
918
+ </xs:element>
919
+ <xs:sequence minOccurs="0" maxOccurs="1">
920
+ <xs:element name="Option_Record_Collection_Element" type="NetFlowObj:OptionCollectionElementType" minOccurs="0" maxOccurs="unbounded">
921
+ <xs:annotation>
922
+ <xs:documentation>For each option data record, field values are listed.</xs:documentation>
923
+ </xs:annotation>
924
+ </xs:element>
925
+ </xs:sequence>
926
+ </xs:sequence>
927
+ </xs:complexType>
928
+ <xs:complexType name="OptionCollectionElementType">
929
+ <xs:annotation>
930
+ <xs:documentation>Field values are associated with each option in the collection of an option data record.</xs:documentation>
931
+ </xs:annotation>
932
+ <xs:sequence minOccurs="0">
933
+ <xs:element name="Option_Record_Field_Value" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="unbounded">
934
+ <xs:annotation>
935
+ <xs:documentation>Set of field values for a given Options Data Record.</xs:documentation>
936
+ </xs:annotation>
937
+ </xs:element>
938
+ </xs:sequence>
939
+ </xs:complexType>
940
+ <xs:complexType name="NetflowV5PacketType">
941
+ <xs:annotation>
942
+ <xs:documentation>Defines the contents of a Netflow v5 packet. As of 2012, Netflow v5 is still the most commonly used network flow format. Netflow v5 was developed by Cisco. http://netflow.caligare.com/netflow_v5.htm.</xs:documentation>
943
+ </xs:annotation>
944
+ <xs:sequence>
945
+ <xs:element name="Flow_Header" type="NetFlowObj:NetflowV5FlowHeaderType" minOccurs="0">
946
+ <xs:annotation>
947
+ <xs:documentation>Elements of a netflow v5 header.</xs:documentation>
948
+ </xs:annotation>
949
+ </xs:element>
950
+ <xs:sequence minOccurs="0">
951
+ <xs:element name="Flow_Record" type="NetFlowObj:NetflowV5FlowRecordType" maxOccurs="30">
952
+ <xs:annotation>
953
+ <xs:documentation>See Network_Flow_Label for other common fields. Padding of 0-bytes is not captured. REF: http://netflow.caligare.com/netflow_v5.htm REF: http://tools.netsa.cert.org/silk/faq.html#ipfix-fields.</xs:documentation>
954
+ </xs:annotation>
955
+ </xs:element>
956
+ </xs:sequence>
957
+ </xs:sequence>
958
+ </xs:complexType>
959
+ <xs:complexType name="NetflowV5FlowHeaderType">
960
+ <xs:annotation>
961
+ <xs:documentation>Defines elements of a netflow v5 header. http://netflow.caligare.com/netflow_v5.htm.</xs:documentation>
962
+ </xs:annotation>
963
+ <xs:sequence>
964
+ <xs:element name="Version" type="cyboxCommon:HexBinaryObjectPropertyType" default="05" minOccurs="0" maxOccurs="1">
965
+ <xs:annotation>
966
+ <xs:documentation>Specifies the NetFlow export format version number, which defaults to 5 in this case.</xs:documentation>
967
+ </xs:annotation>
968
+ </xs:element>
969
+ <xs:element name="Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
970
+ <xs:annotation>
971
+ <xs:documentation>Specifies the number of flows exported in the packet (1-30).</xs:documentation>
972
+ </xs:annotation>
973
+ </xs:element>
974
+ <xs:element name="Sys_Up_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
975
+ <xs:annotation>
976
+ <xs:documentation>Specifies the current time in milliseconds since the export device booted.</xs:documentation>
977
+ </xs:annotation>
978
+ </xs:element>
979
+ <xs:element name="Unix_Secs" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
980
+ <xs:annotation>
981
+ <xs:documentation>Specifies the current time in milliseconds since 0000 UTC 1970.</xs:documentation>
982
+ </xs:annotation>
983
+ </xs:element>
984
+ <xs:element name="Unix_Nsecs" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
985
+ <xs:annotation>
986
+ <xs:documentation>Specifies the residual in nanoseconds since 0000 UTC 1970.</xs:documentation>
987
+ </xs:annotation>
988
+ </xs:element>
989
+ <xs:element name="Flow_Sequence" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
990
+ <xs:annotation>
991
+ <xs:documentation>Specifies the sequence counter of total flows seen.</xs:documentation>
992
+ </xs:annotation>
993
+ </xs:element>
994
+ <xs:element name="Engine_Type" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
995
+ <xs:annotation>
996
+ <xs:documentation>Specifies the type of flow-switching engine.</xs:documentation>
997
+ </xs:annotation>
998
+ </xs:element>
999
+ <xs:element name="Engine_ID" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1000
+ <xs:annotation>
1001
+ <xs:documentation>Specifies the slot number of the flow-switching engine.</xs:documentation>
1002
+ </xs:annotation>
1003
+ </xs:element>
1004
+ <xs:element name="Sampling_Interval" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1005
+ <xs:annotation>
1006
+ <xs:documentation>Specifies the sampling interval field, which consists of the first two bits holding the sampling mode, with the remaining 14 bits holding the value of the sampling interval.</xs:documentation>
1007
+ </xs:annotation>
1008
+ </xs:element>
1009
+ </xs:sequence>
1010
+ </xs:complexType>
1011
+ <xs:complexType name="NetflowV5FlowRecordType">
1012
+ <xs:annotation>
1013
+ <xs:documentation>Defines elements of a Netflow v5 flow record. Recall that the seven elements that define the flow itself (e.g., source IP address) are provided in NetworkFlowLabelType. https://bto.bluecoat.com/packetguide/8.6/info/netflow5-records.htm.</xs:documentation>
1014
+ </xs:annotation>
1015
+ <xs:sequence>
1016
+ <xs:element name="Nexthop_IPv4_Addr" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1017
+ <xs:annotation>
1018
+ <xs:documentation>Represents the IP address of the next hop router.</xs:documentation>
1019
+ </xs:annotation>
1020
+ </xs:element>
1021
+ <xs:element name="Packet_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1022
+ <xs:annotation>
1023
+ <xs:documentation>Represents the number of packets in the flow.</xs:documentation>
1024
+ </xs:annotation>
1025
+ </xs:element>
1026
+ <xs:element name="Byte_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1027
+ <xs:annotation>
1028
+ <xs:documentation>Represents the total number of bytes in the flow.</xs:documentation>
1029
+ </xs:annotation>
1030
+ </xs:element>
1031
+ <xs:element name="SysUpTime_Start" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1032
+ <xs:annotation>
1033
+ <xs:documentation>Represents the SysUpTime at start of flow: the total time in milliseconds starting from when the first packet in the flow was seen.</xs:documentation>
1034
+ </xs:annotation>
1035
+ </xs:element>
1036
+ <xs:element name="SysUpTime_End" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1037
+ <xs:annotation>
1038
+ <xs:documentation>Represents the SysUpTime at end of flow: when the last packet in the flow was seen.</xs:documentation>
1039
+ </xs:annotation>
1040
+ </xs:element>
1041
+ <xs:element name="Padding1" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0">
1042
+ <xs:annotation>
1043
+ <xs:documentation>One byte of padding.</xs:documentation>
1044
+ </xs:annotation>
1045
+ </xs:element>
1046
+ <xs:element name="TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1047
+ <xs:annotation>
1048
+ <xs:documentation>Specifies the union of all TCP flags observed over the life of the flow.</xs:documentation>
1049
+ </xs:annotation>
1050
+ </xs:element>
1051
+ <xs:element name="Src_Autonomous_System" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1052
+ <xs:annotation>
1053
+ <xs:documentation>Specifies the source autonomous system number, either origin or peer.</xs:documentation>
1054
+ </xs:annotation>
1055
+ </xs:element>
1056
+ <xs:element name="Dest_Autonomous_System" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1057
+ <xs:annotation>
1058
+ <xs:documentation>Specifies the destination autonomous system number, either origin or peer.</xs:documentation>
1059
+ </xs:annotation>
1060
+ </xs:element>
1061
+ <xs:element name="Src_IP_Mask_Bit_Count" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1062
+ <xs:annotation>
1063
+ <xs:documentation>Specifies the source address prefix mask bits.</xs:documentation>
1064
+ </xs:annotation>
1065
+ </xs:element>
1066
+ <xs:element name="Dest_IP_Mask_Bit_Count" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1067
+ <xs:annotation>
1068
+ <xs:documentation>Specifies the destination address prefix mask bits.</xs:documentation>
1069
+ </xs:annotation>
1070
+ </xs:element>
1071
+ <xs:element name="Padding2" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1072
+ <xs:annotation>
1073
+ <xs:documentation>Unused (zero) bytes, which is used for purposes of padding.</xs:documentation>
1074
+ </xs:annotation>
1075
+ </xs:element>
1076
+ </xs:sequence>
1077
+ </xs:complexType>
1078
+ <xs:complexType name="SiLKRecordType">
1079
+ <xs:annotation>
1080
+ <xs:documentation>System for Internet-Level Knowledge (CMU/SEI). The fields are taken from a list shown in http://tools.netsa.cert.org/silk/rwcut.html. Fields common to all network flows are defined in NetworkFlowLabelType (e.g., source IP, SNMP ingress, etc.). For additional references, see http://tools.netsa.cert.org/silk/analysis-handbook.pdf, http://tools.netsa.cert.org/silk/faq.html#ipfix-fields.</xs:documentation>
1081
+ </xs:annotation>
1082
+ <xs:sequence>
1083
+ <xs:element name="Packet_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1084
+ <xs:annotation>
1085
+ <xs:documentation>Represents the number of packets in the flow.</xs:documentation>
1086
+ </xs:annotation>
1087
+ </xs:element>
1088
+ <xs:element name="Byte_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1089
+ <xs:annotation>
1090
+ <xs:documentation>Represents the number of Layer 3 bytes in the packets of the flow.</xs:documentation>
1091
+ </xs:annotation>
1092
+ </xs:element>
1093
+ <xs:element name="TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1094
+ <xs:annotation>
1095
+ <xs:documentation>Specifies the union of all TCP flags observed over the life of the flow.</xs:documentation>
1096
+ </xs:annotation>
1097
+ </xs:element>
1098
+ <xs:element name="Start_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1099
+ <xs:annotation>
1100
+ <xs:documentation>Represents the SysUpTime at start of flow, i.e. the total time in milliseconds starting from when the router booted. There is another element "Start_Time+msec" which is the starting time of flow including milliseconds, but milliseconds are the resolution of Start_Time unless the -legacy-timestamps switch is specified, so "Start_Time+msec" is not defined separately.</xs:documentation>
1101
+ </xs:annotation>
1102
+ </xs:element>
1103
+ <xs:element name="Duration" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1104
+ <xs:annotation>
1105
+ <xs:documentation>Specifies the duration of the flow. There is another element "Duration+msec" which is the starting time of flow including milliseconds, but milliseconds are the resolution of Duration unless the -legacy-timestamps switch is specified, so "Duration+msec" is not defined separately.</xs:documentation>
1106
+ </xs:annotation>
1107
+ </xs:element>
1108
+ <xs:element name="End_Time" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1109
+ <xs:annotation>
1110
+ <xs:documentation>Represents the SysUpTime at end of flow. There is another element "End_Time+msec" which is the starting time of flow including milliseconds, but milliseconds are the resolution of End_Time unless the -legacy-timestamps switch is specified, so "End_Time+msec" is not defined separately.</xs:documentation>
1111
+ </xs:annotation>
1112
+ </xs:element>
1113
+ <xs:element name="Sensor_Info" type="NetFlowObj:SiLKSensorInfoType" minOccurs="0" maxOccurs="1">
1114
+ <xs:annotation>
1115
+ <xs:documentation>Defines the fields associated with the sensor at the collection point.</xs:documentation>
1116
+ </xs:annotation>
1117
+ </xs:element>
1118
+ <xs:element name="ICMP_Type" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1119
+ <xs:annotation>
1120
+ <xs:documentation>ICMP type for ICMP flows. Empty for non-ICMP flows.</xs:documentation>
1121
+ </xs:annotation>
1122
+ </xs:element>
1123
+ <xs:element name="ICMP_Code" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1124
+ <xs:annotation>
1125
+ <xs:documentation>ICMP code for ICMP flows. Empty for non-ICMP flows.</xs:documentation>
1126
+ </xs:annotation>
1127
+ </xs:element>
1128
+ <xs:element name="Router_Next_Hop_IP" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1129
+ <xs:annotation>
1130
+ <xs:documentation>Router next hop IP.</xs:documentation>
1131
+ </xs:annotation>
1132
+ </xs:element>
1133
+ <xs:element name="Initial_TCP_Flags" type="PacketObj:TCPFlagsType" minOccurs="0" maxOccurs="1">
1134
+ <xs:annotation>
1135
+ <xs:documentation>TCP flags on first packet in the flow.</xs:documentation>
1136
+ </xs:annotation>
1137
+ </xs:element>
1138
+ <xs:element name="Session_TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1139
+ <xs:annotation>
1140
+ <xs:documentation>bit-wise OR of TCP flags over all packets except the first in the flow.</xs:documentation>
1141
+ </xs:annotation>
1142
+ </xs:element>
1143
+ <xs:element name="Flow_Attributes" type="NetFlowObj:SiLKFlowAttributesType" minOccurs="0" maxOccurs="1">
1144
+ <xs:annotation>
1145
+ <xs:documentation>Flow attributes set by the flow generator.</xs:documentation>
1146
+ </xs:annotation>
1147
+ </xs:element>
1148
+ <xs:element name="Flow_Application" type="PacketObj:IANAPortNumberRegistryType" minOccurs="0" maxOccurs="1">
1149
+ <xs:annotation>
1150
+ <xs:documentation>Based on an examination of payload contents, this value = the port number traditionally used for that type of traffic (21 for FTP traffic even if actually routed over port 80). Documentation (http://tools.netsa.cert.org/silk/rwcut.html) says this is a "guess as to the content of the flow".</xs:documentation>
1151
+ </xs:annotation>
1152
+ </xs:element>
1153
+ <xs:element name="Src_IP_Type" type="NetFlowObj:SiLKAddressType" minOccurs="0" maxOccurs="1">
1154
+ <xs:annotation>
1155
+ <xs:documentation>The type of the source IP in terms of whether the address is routable, external, etc.</xs:documentation>
1156
+ </xs:annotation>
1157
+ </xs:element>
1158
+ <xs:element name="Dest_IP_Type" type="NetFlowObj:SiLKAddressType" minOccurs="0" maxOccurs="1">
1159
+ <xs:annotation>
1160
+ <xs:documentation>The type of the destination IP in terms of whether the address is routable, external, etc.</xs:documentation>
1161
+ </xs:annotation>
1162
+ </xs:element>
1163
+ <xs:element name="Src_Country_Code" type="NetFlowObj:SiLKCountryCodeType" minOccurs="0" maxOccurs="1">
1164
+ <xs:annotation>
1165
+ <xs:documentation>A two-letter country code denoting the country of location of the source IP address.</xs:documentation>
1166
+ </xs:annotation>
1167
+ </xs:element>
1168
+ <xs:element name="Dest_Country_Code" type="NetFlowObj:SiLKCountryCodeType" minOccurs="0" maxOccurs="1">
1169
+ <xs:annotation>
1170
+ <xs:documentation>A two-letter country code denoting the country of location of the destination IP address.</xs:documentation>
1171
+ </xs:annotation>
1172
+ </xs:element>
1173
+ <xs:element name="Src_MAPNAME" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1174
+ <xs:annotation>
1175
+ <xs:documentation>User defined string for integrating external information into SiLK records. See documentation on SiLK pmap filter for details (defined in the prefix map associated with MAPNAME).</xs:documentation>
1176
+ </xs:annotation>
1177
+ </xs:element>
1178
+ <xs:element name="Dest_MAPNAME" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1179
+ <xs:annotation>
1180
+ <xs:documentation>User defined string for integrating external information into SiLK records. See documentation on SiLK pmap filter for details (defined in the prefix map associated with MAPNAME).</xs:documentation>
1181
+ </xs:annotation>
1182
+ </xs:element>
1183
+ </xs:sequence>
1184
+ </xs:complexType>
1185
+ <xs:complexType name="SiLKFlowAttributesType">
1186
+ <xs:annotation>
1187
+ <xs:documentation>SiLKFlowAttributesType specifies SiLK flow attributes, via a union of the SiLKFlowAttributesTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1188
+ </xs:annotation>
1189
+ <xs:simpleContent>
1190
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1191
+ <xs:simpleType>
1192
+ <xs:union memberTypes="NetFlowObj:SiLKFlowAttributesTypeEnum xs:string"/>
1193
+ </xs:simpleType>
1194
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1195
+ <xs:annotation>
1196
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1197
+ </xs:annotation>
1198
+ </xs:attribute>
1199
+ </xs:restriction>
1200
+ </xs:simpleContent>
1201
+ </xs:complexType>
1202
+ <xs:simpleType name="SiLKFlowAttributesTypeEnum">
1203
+ <xs:annotation>
1204
+ <xs:documentation>The SiLKFlowAttributesTypeEnum specifies the flow attributes set by the flow generator. This is field 28 of the rwstats options. See http://tools.netsa.cert.org/silk/rwstats.html for more information.</xs:documentation>
1205
+ </xs:annotation>
1206
+ <xs:restriction base="xs:string">
1207
+ <xs:enumeration value="F (FIN flag)">
1208
+ <xs:annotation>
1209
+ <xs:documentation>Indicates that the flow generator saw additional packets in this flow following a packet with a FIN flag (excluding ACK packets).</xs:documentation>
1210
+ </xs:annotation>
1211
+ </xs:enumeration>
1212
+ <xs:enumeration value="T (Timeout)">
1213
+ <xs:annotation>
1214
+ <xs:documentation>Indicates that the flow generator prematurely created a record for a long-running connection due to a timeout. (When the flow generator yaf(1) is run with the --silk switch, it will prematurely create a flow and mark it with T if the byte count of the flow cannot be stored in a 32-bit value.).</xs:documentation>
1215
+ </xs:annotation>
1216
+ </xs:enumeration>
1217
+ <xs:enumeration value="C (Continuation)">
1218
+ <xs:annotation>
1219
+ <xs:documentation>Indicates that the flow generator created this flow as a continuation of long-running connection, where the previous flow for this connection met a timeout (or a byte threshold in the case of yaf).</xs:documentation>
1220
+ </xs:annotation>
1221
+ </xs:enumeration>
1222
+ </xs:restriction>
1223
+ </xs:simpleType>
1224
+ <xs:complexType name="SiLKAddressType">
1225
+ <xs:annotation>
1226
+ <xs:documentation>SiLKAddressType specifies SiLK address types, via a union of the SiLKAddressTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1227
+ </xs:annotation>
1228
+ <xs:simpleContent>
1229
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1230
+ <xs:simpleType>
1231
+ <xs:union memberTypes="NetFlowObj:SiLKAddressTypeEnum xs:string"/>
1232
+ </xs:simpleType>
1233
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1234
+ <xs:annotation>
1235
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1236
+ </xs:annotation>
1237
+ </xs:attribute>
1238
+ </xs:restriction>
1239
+ </xs:simpleContent>
1240
+ </xs:complexType>
1241
+ <xs:simpleType name="SiLKAddressTypeEnum">
1242
+ <xs:annotation>
1243
+ <xs:documentation>Environment variable allows user to specify the address type mapping file. A partial, typical list is currently given--see http://tools.netsa.cert.org/silk/addrtype.html for more information.</xs:documentation>
1244
+ </xs:annotation>
1245
+ <xs:restriction base="xs:string">
1246
+ <xs:enumeration value="non-routable (0)">
1247
+ <xs:annotation>
1248
+ <xs:documentation>Denotes a (non-routable) IP address.</xs:documentation>
1249
+ </xs:annotation>
1250
+ </xs:enumeration>
1251
+ <xs:enumeration value="internal(1)">
1252
+ <xs:annotation>
1253
+ <xs:documentation>Denotes an IP address internal to the monitored network.</xs:documentation>
1254
+ </xs:annotation>
1255
+ </xs:enumeration>
1256
+ <xs:enumeration value="routable_external(2)">
1257
+ <xs:annotation>
1258
+ <xs:documentation>Denotes an IP address external to the monitored network.</xs:documentation>
1259
+ </xs:annotation>
1260
+ </xs:enumeration>
1261
+ </xs:restriction>
1262
+ </xs:simpleType>
1263
+ <xs:complexType name="SiLKCountryCodeType">
1264
+ <xs:annotation>
1265
+ <xs:documentation>SiLKCountryCodeType specifies country codes used by SiLK, via a union of the SiLKCountryCodeTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1266
+ </xs:annotation>
1267
+ <xs:simpleContent>
1268
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1269
+ <xs:simpleType>
1270
+ <xs:union memberTypes="NetFlowObj:SiLKCountryCodeTypeEnum xs:string"/>
1271
+ </xs:simpleType>
1272
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1273
+ <xs:annotation>
1274
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1275
+ </xs:annotation>
1276
+ </xs:attribute>
1277
+ </xs:restriction>
1278
+ </xs:simpleContent>
1279
+ </xs:complexType>
1280
+ <xs:simpleType name="SiLKCountryCodeTypeEnum">
1281
+ <xs:annotation>
1282
+ <xs:documentation>Environment variable allows user to specify a country code mapping file. No enumerations are currently defined.</xs:documentation>
1283
+ </xs:annotation>
1284
+ <xs:restriction base="xs:string"/>
1285
+ </xs:simpleType>
1286
+ <xs:complexType name="SiLKSensorInfoType">
1287
+ <xs:annotation>
1288
+ <xs:documentation>Defines elements associated with a SiLK sensor.</xs:documentation>
1289
+ </xs:annotation>
1290
+ <xs:sequence>
1291
+ <xs:element name="Sensor_ID" type="cyboxCommon:StringObjectPropertyType" minOccurs="0" maxOccurs="1">
1292
+ <xs:annotation>
1293
+ <xs:documentation>Name or ID of sensor at the collection point.</xs:documentation>
1294
+ </xs:annotation>
1295
+ </xs:element>
1296
+ <xs:element name="Class" type="NetFlowObj:SiLKSensorClassType" minOccurs="0" maxOccurs="1">
1297
+ <xs:annotation>
1298
+ <xs:documentation>By default, only one "all" class. Others can be configured.</xs:documentation>
1299
+ </xs:annotation>
1300
+ </xs:element>
1301
+ <xs:element name="Type" type="NetFlowObj:SiLKDirectionType" minOccurs="0" maxOccurs="1">
1302
+ <xs:annotation>
1303
+ <xs:documentation>Specifies the direction of traffic, which is enumerated by SiLKDirectionType.</xs:documentation>
1304
+ </xs:annotation>
1305
+ </xs:element>
1306
+ </xs:sequence>
1307
+ </xs:complexType>
1308
+ <xs:complexType name="SiLKDirectionType">
1309
+ <xs:annotation>
1310
+ <xs:documentation>SiLKType specifies direction of SiLK traffic, via a union of the SiLKDirectionTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1311
+ </xs:annotation>
1312
+ <xs:simpleContent>
1313
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1314
+ <xs:simpleType>
1315
+ <xs:union memberTypes="NetFlowObj:SiLKDirectionTypeEnum xs:string"/>
1316
+ </xs:simpleType>
1317
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1318
+ <xs:annotation>
1319
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1320
+ </xs:annotation>
1321
+ </xs:attribute>
1322
+ </xs:restriction>
1323
+ </xs:simpleContent>
1324
+ </xs:complexType>
1325
+ <xs:simpleType name="SiLKDirectionTypeEnum">
1326
+ <xs:annotation>
1327
+ <xs:documentation>Enumerates direction of traffic. Not all are currently enumerated.</xs:documentation>
1328
+ </xs:annotation>
1329
+ <xs:restriction base="xs:string">
1330
+ <xs:enumeration value="in">
1331
+ <xs:annotation>
1332
+ <xs:documentation>Denotes inbound traffic relative to a sensor.</xs:documentation>
1333
+ </xs:annotation>
1334
+ </xs:enumeration>
1335
+ <xs:enumeration value="inweb">
1336
+ <xs:annotation>
1337
+ <xs:documentation>Denotes inbound web traffic relative to a sensor. SiLK categorizes a flow as web if the protocol is TCP and either the source port or destination port is one of 80, 443, or 8080.</xs:documentation>
1338
+ </xs:annotation>
1339
+ </xs:enumeration>
1340
+ <xs:enumeration value="innull">
1341
+ <xs:annotation>
1342
+ <xs:documentation>Denotes null inbound traffic relative to a sensor.</xs:documentation>
1343
+ </xs:annotation>
1344
+ </xs:enumeration>
1345
+ <xs:enumeration value="out">
1346
+ <xs:annotation>
1347
+ <xs:documentation>Denotes outbound traffic relative to a sensor.</xs:documentation>
1348
+ </xs:annotation>
1349
+ </xs:enumeration>
1350
+ <xs:enumeration value="outweb">
1351
+ <xs:annotation>
1352
+ <xs:documentation>Denotes outbound web traffic relative to a sensor. SiLK categorizes a flow as web if the protocol is TCP and either the source port or destination port is one of 80, 443, or 8080.</xs:documentation>
1353
+ </xs:annotation>
1354
+ </xs:enumeration>
1355
+ <xs:enumeration value="outnull">
1356
+ <xs:annotation>
1357
+ <xs:documentation>Denotes null outbound traffic relative to a sensor.</xs:documentation>
1358
+ </xs:annotation>
1359
+ </xs:enumeration>
1360
+ </xs:restriction>
1361
+ </xs:simpleType>
1362
+ <xs:complexType name="SiLKSensorClassType">
1363
+ <xs:annotation>
1364
+ <xs:documentation>SiLKSensorClassType specifies the sensor class, via a union of the SiLKSensorClassTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
1365
+ </xs:annotation>
1366
+ <xs:simpleContent>
1367
+ <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
1368
+ <xs:simpleType>
1369
+ <xs:union memberTypes="NetFlowObj:SiLKSensorClassTypeEnum xs:string"/>
1370
+ </xs:simpleType>
1371
+ <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
1372
+ <xs:annotation>
1373
+ <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
1374
+ </xs:annotation>
1375
+ </xs:attribute>
1376
+ </xs:restriction>
1377
+ </xs:simpleContent>
1378
+ </xs:complexType>
1379
+ <xs:simpleType name="SiLKSensorClassTypeEnum">
1380
+ <xs:annotation>
1381
+ <xs:documentation>Enumerates SiLK sensor classes. Currently just one class (all) is defined.</xs:documentation>
1382
+ </xs:annotation>
1383
+ <xs:restriction base="xs:string">
1384
+ <xs:enumeration value="all">
1385
+ <xs:annotation>
1386
+ <xs:documentation>Defines sensor class "all".</xs:documentation>
1387
+ </xs:annotation>
1388
+ </xs:enumeration>
1389
+ </xs:restriction>
1390
+ </xs:simpleType>
1391
+ <xs:complexType name="YAFRecordType">
1392
+ <xs:annotation>
1393
+ <xs:documentation>YAF (Yet Another Flowmeter) is bidirectional network flow meter. It processes packet data from pcap(3) dumpfiles as generated by tcpdump(1) or via live capture from an interface using pcap(3) into bidirectional flows, then exports those flows to IPFIX. (REF: http://www.usenix.org/event/lisa10/tech/full_papers/Inacio.pdf).</xs:documentation>
1394
+ </xs:annotation>
1395
+ <xs:sequence>
1396
+ <xs:element name="Flow" type="NetFlowObj:YAFFlowType" minOccurs="0" maxOccurs="1">
1397
+ <xs:annotation>
1398
+ <xs:documentation>The elements in a YAF record have been separated based on flow direction. These elements are defined for the general forward flow.</xs:documentation>
1399
+ </xs:annotation>
1400
+ </xs:element>
1401
+ <xs:element name="Reverse_Flow" type="NetFlowObj:YAFReverseFlowType" minOccurs="0" maxOccurs="1">
1402
+ <xs:annotation>
1403
+ <xs:documentation>Some elements in a YAF record correspond to the reverse flow. These elements are given here.</xs:documentation>
1404
+ </xs:annotation>
1405
+ </xs:element>
1406
+ </xs:sequence>
1407
+ </xs:complexType>
1408
+ <xs:complexType name="YAFFlowType">
1409
+ <xs:annotation>
1410
+ <xs:documentation>These elements of a YAF record correspond to the flow generally or to the forward portion of the flow. Elements common to all network flow objects are defined in the NetworkFlowLabelType (src ip address, ingress/egress interface).</xs:documentation>
1411
+ </xs:annotation>
1412
+ <xs:sequence>
1413
+ <xs:element name="Flow_Start_Milliseconds" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1414
+ <xs:annotation>
1415
+ <xs:documentation>Flow start time in milliseconds since 1970-01-01 00:00:00 UTC.</xs:documentation>
1416
+ </xs:annotation>
1417
+ </xs:element>
1418
+ <xs:element name="Flow_End_Milliseconds" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1419
+ <xs:annotation>
1420
+ <xs:documentation>Flow end time in milliseconds since 1970-01-01 00:00:00 UTC.</xs:documentation>
1421
+ </xs:annotation>
1422
+ </xs:element>
1423
+ <xs:element name="Octet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1424
+ <xs:annotation>
1425
+ <xs:documentation>Number of octets in packets in forward direction of flow. May be encoded in 4 octets using IPFIX reduced-length encoding.</xs:documentation>
1426
+ </xs:annotation>
1427
+ </xs:element>
1428
+ <xs:element name="Packet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1429
+ <xs:annotation>
1430
+ <xs:documentation>Number of packets in forward direction of flow.</xs:documentation>
1431
+ </xs:annotation>
1432
+ </xs:element>
1433
+ <xs:element name="Flow_End_Reason" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1434
+ <xs:annotation>
1435
+ <xs:documentation>The reason for Flow termination. It may contain SiLK-specific tags. The range of values may include the following: 0x01: idle timeout (the Flow was terminated because it was considered to be idle). 0x02: active timeout (the Flow was terminated for reporting purposes while it was still active, for example, after the maximum lifetime of unreported Flows was reached). 0x03: end of Flow detected (the Flow was terminated because the Metering Process detected signals indicating the end of the Flow, for example, the TCP FIN flag.) 0x04: forced end (the Flow was terminated because of some external event, for example, a shutdown of the Metering Process initiated by a network management application.) 0x05: lack of resources (the Flow was terminated because of lack of resources available to the Metering Process and/or the Exporting Process.) See http://www.iana.org/assignments/ipfix/ipfix.xml for more information.</xs:documentation>
1436
+ </xs:annotation>
1437
+ </xs:element>
1438
+ <xs:element name="SiLK_App_Label" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1439
+ <xs:annotation>
1440
+ <xs:documentation>The SiLK_App_Label is the port number that is traditionally used for that type of traffic (see the /etc/services file on most UNIX systems). For example, traffic that the flow generator recognizes as FTP will have a value of 21, even if that traffic is being routed through the standard HTTP/web port (80).</xs:documentation>
1441
+ </xs:annotation>
1442
+ </xs:element>
1443
+ <xs:element name="Payload_Entropy" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1444
+ <xs:annotation>
1445
+ <xs:documentation>Shannon Entropy calculation of the forward payload data. The calculation generates a real number value between 0.0 and 8.0. That number is then converted into an 8-bit integer value between 0 and 255. Roughly, numbers above 230 are generally compressed (or encrypted) and numbers centered around approximately 140 are English text. Lower numbers carry even less information content.</xs:documentation>
1446
+ </xs:annotation>
1447
+ </xs:element>
1448
+ <xs:element name="ML_App_Label" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1449
+ <xs:annotation>
1450
+ <xs:documentation>Machine-learning app label.</xs:documentation>
1451
+ </xs:annotation>
1452
+ </xs:element>
1453
+ <xs:element name="TCP_Flow" type="NetFlowObj:YAFTCPFlowType" minOccurs="0" maxOccurs="1">
1454
+ <xs:annotation>
1455
+ <xs:documentation>Contains TCP-related information of the network flow.</xs:documentation>
1456
+ </xs:annotation>
1457
+ </xs:element>
1458
+ <xs:element name="Vlan_ID_MAC_Addr" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1459
+ <xs:annotation>
1460
+ <xs:documentation>The MAC address.</xs:documentation>
1461
+ </xs:annotation>
1462
+ </xs:element>
1463
+ <xs:element name="Passive_OS_Fingerprinting" type="cyboxCommon:PlatformSpecificationType" minOccurs="0" maxOccurs="1">
1464
+ <xs:annotation>
1465
+ <xs:documentation>OS name and version.</xs:documentation>
1466
+ </xs:annotation>
1467
+ </xs:element>
1468
+ <xs:element name="First_Packet_Banner" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1469
+ <xs:annotation>
1470
+ <xs:documentation>First forward packet IP payload.</xs:documentation>
1471
+ </xs:annotation>
1472
+ </xs:element>
1473
+ <xs:element name="Second_Packet_Banner" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0">
1474
+ <xs:annotation>
1475
+ <xs:documentation>Second forward packet IP payload.</xs:documentation>
1476
+ </xs:annotation>
1477
+ </xs:element>
1478
+ <xs:element name="N_Bytes_Payload" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1479
+ <xs:annotation>
1480
+ <xs:documentation>Initial n bytes of forward direction of applications payload.</xs:documentation>
1481
+ </xs:annotation>
1482
+ </xs:element>
1483
+ </xs:sequence>
1484
+ </xs:complexType>
1485
+ <xs:complexType name="YAFReverseFlowType">
1486
+ <xs:annotation>
1487
+ <xs:documentation>These elements correspond to the reverse flow captured by in YAF record.</xs:documentation>
1488
+ </xs:annotation>
1489
+ <xs:sequence>
1490
+ <xs:element name="Reverse_Octet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1491
+ <xs:annotation>
1492
+ <xs:documentation>Number of octets in packets in reverse direction of flow. May be encoded in 4 octets using IPFIX reduced-length encoding.</xs:documentation>
1493
+ </xs:annotation>
1494
+ </xs:element>
1495
+ <xs:element name="Reverse_Packet_Total_Count" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1496
+ <xs:annotation>
1497
+ <xs:documentation>Number of packets in reverse direction of flow.</xs:documentation>
1498
+ </xs:annotation>
1499
+ </xs:element>
1500
+ <xs:element name="Reverse_Payload_Entropy" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1501
+ <xs:annotation>
1502
+ <xs:documentation>Shannon Entropy calculation of the reverse payload data. The calculation generates a real number value between 0.0 and 8.0. That number is then converted into an 8-bit integer value between 0 and 255. Roughly, numbers above 230 are generally compressed (or encrypted) and numbers centered around approximately 140 are English text. Lower numbers carry even less information content.</xs:documentation>
1503
+ </xs:annotation>
1504
+ </xs:element>
1505
+ <xs:element name="Reverse_Flow_Delta_Milliseconds" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0">
1506
+ <xs:annotation>
1507
+ <xs:documentation>RTT of initial handshake.</xs:documentation>
1508
+ </xs:annotation>
1509
+ </xs:element>
1510
+ <xs:element name="TCP_Reverse_Flow" type="NetFlowObj:YAFTCPFlowType" minOccurs="0" maxOccurs="1">
1511
+ <xs:annotation>
1512
+ <xs:documentation>The associated elements relate to the reverse packets of the flow.</xs:documentation>
1513
+ </xs:annotation>
1514
+ </xs:element>
1515
+ <xs:element name="Reverse_Vlan_ID_MAC_Addr" type="AddressObj:AddressObjectType" minOccurs="0" maxOccurs="1">
1516
+ <xs:annotation>
1517
+ <xs:documentation>Reverse MAC address.</xs:documentation>
1518
+ </xs:annotation>
1519
+ </xs:element>
1520
+ <xs:element name="Reverse_Passive_OS_Fingerprinting" type="cyboxCommon:PlatformSpecificationType" minOccurs="0" maxOccurs="1">
1521
+ <xs:annotation>
1522
+ <xs:documentation>OS name and version of the reverse flow.</xs:documentation>
1523
+ </xs:annotation>
1524
+ </xs:element>
1525
+ <xs:element name="Reverse_First_Packet" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1526
+ <xs:annotation>
1527
+ <xs:documentation>First reverse packet IP payload.</xs:documentation>
1528
+ </xs:annotation>
1529
+ </xs:element>
1530
+ <xs:element name="Reverse_N_Bytes_Payload" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1531
+ <xs:annotation>
1532
+ <xs:documentation>Initial n bytes of reverse direction of flow payload.</xs:documentation>
1533
+ </xs:annotation>
1534
+ </xs:element>
1535
+ </xs:sequence>
1536
+ </xs:complexType>
1537
+ <xs:complexType name="YAFTCPFlowType">
1538
+ <xs:annotation>
1539
+ <xs:documentation>Contains TCP-related information of the network flow.</xs:documentation>
1540
+ </xs:annotation>
1541
+ <xs:sequence>
1542
+ <xs:element name="TCP_Sequence_Number" type="cyboxCommon:IntegerObjectPropertyType" minOccurs="0" maxOccurs="1">
1543
+ <xs:annotation>
1544
+ <xs:documentation>TCP sequence number.</xs:documentation>
1545
+ </xs:annotation>
1546
+ </xs:element>
1547
+ <xs:element name="Initial_TCP_Flags" type="PacketObj:TCPFlagsType" minOccurs="0" maxOccurs="1">
1548
+ <xs:annotation>
1549
+ <xs:documentation>TCP flags of the first packet.</xs:documentation>
1550
+ </xs:annotation>
1551
+ </xs:element>
1552
+ <xs:element name="Union_TCP_Flags" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0" maxOccurs="1">
1553
+ <xs:annotation>
1554
+ <xs:documentation>The union of the TCP flags of the 2...nth packet.</xs:documentation>
1555
+ </xs:annotation>
1556
+ </xs:element>
1557
+ </xs:sequence>
1558
+ </xs:complexType>
1559
+ </xs:schema>