<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//TaxonX//DTD Taxonomic Treatment Publishing DTD v0 20100105//EN" "../../nlm/tax-treatment-NS0.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:tp="http://www.plazi.org/taxpub" article-type="research-article" dtd-version="3.0" xml:lang="en">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">109</journal-id>
      <journal-id journal-id-type="index">urn:lsid:arphahub.com:pub:3dc5f44e-8666-58db-bc76-a455210e8891</journal-id>
      <journal-title-group>
        <journal-title xml:lang="en">JUCS - Journal of Universal Computer Science</journal-title>
        <abbrev-journal-title xml:lang="en">jucs</abbrev-journal-title>
      </journal-title-group>
      <issn pub-type="ppub">0948-695X</issn>
      <issn pub-type="epub">0948-6968</issn>
      <publisher>
        <publisher-name>Journal of Universal Computer Science</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3217/jucs-022-09-1203</article-id>
      <article-id pub-id-type="publisher-id">23504</article-id>
      <article-categories>
        <subj-group subj-group-type="heading">
          <subject>Research Article</subject>
        </subj-group>
        <subj-group subj-group-type="scientific_subject">
          <subject>C.2.3 - Network Operations</subject>
          <subject>I.2.6 - Learning</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Machine Learning Methods for Anomaly Detection in BACnet Networks</article-title>
      </title-group>
      <contrib-group content-type="authors">
        <contrib contrib-type="author" corresp="yes">
          <name name-style="western">
            <surname>Tonejc</surname>
            <given-names>Jernej</given-names>
          </name>
          <email xlink:type="simple">jernej.tonejc@fkie.fraunhofer.de</email>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Güttes</surname>
            <given-names>Sabrina</given-names>
          </name>
          <xref ref-type="aff" rid="A2">2</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Kobekova</surname>
            <given-names>Alexandra</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
        <contrib contrib-type="author" corresp="no">
          <name name-style="western">
            <surname>Kaur</surname>
            <given-names>Jaspreet</given-names>
          </name>
          <xref ref-type="aff" rid="A1">1</xref>
        </contrib>
      </contrib-group>
      <aff id="A1">
        <label>1</label>
        <addr-line content-type="verbatim">Fraunhofer FKIE, Bonn, Germany</addr-line>
        <institution>Fraunhofer FKIE</institution>
        <addr-line content-type="city">Bonn</addr-line>
        <country>Germany</country>
      </aff>
      <aff id="A2">
        <label>2</label>
        <addr-line content-type="verbatim">Bundeskartellamt, Bonn, Germany</addr-line>
        <institution>Bundeskartellamt</institution>
        <addr-line content-type="city">Bonn</addr-line>
        <country>Germany</country>
      </aff>
      <author-notes>
        <fn fn-type="corresp">
          <p>Corresponding author: Jernej Tonejc (<email xlink:type="simple">jernej.tonejc@fkie.fraunhofer.de</email>).</p>
        </fn>
        <fn fn-type="edited-by">
          <p>Academic editor: </p>
        </fn>
      </author-notes>
      <pub-date pub-type="collection">
        <year>2016</year>
      </pub-date>
      <pub-date pub-type="epub">
        <day>01</day>
        <month>09</month>
        <year>2016</year>
      </pub-date>
      <volume>22</volume>
      <issue>9</issue>
      <fpage>1203</fpage>
      <lpage>1224</lpage>
      <uri content-type="arpha" xlink:href="http://openbiodiv.net/E02F2B42-55F2-5059-A241-8655D6D94EAC">E02F2B42-55F2-5059-A241-8655D6D94EAC</uri>
      <uri content-type="zenodo_dep_id" xlink:href="https://zenodo.org/record/5505551">5505551</uri>
      <history>
        <date date-type="received">
          <day>08</day>
          <month>07</month>
          <year>2016</year>
        </date>
        <date date-type="accepted">
          <day>30</day>
          <month>08</month>
          <year>2016</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>Jernej Tonejc, Sabrina Güttes, Alexandra Kobekova, Jaspreet Kaur</copyright-statement>
        <license license-type="creative-commons-attribution" xlink:href="" xlink:type="simple">
          <license-p>This article is freely available under the J.UCS Open Content License.</license-p>
        </license>
      </permissions>
      <abstract>
        <label>Abstract</label>
        <p>In recent years, the volume and the complexity of data in Building Automation System networks have increased exponentially. As a result, a manual analysis of network traffic data has become nearly impossible. Even automated but supervised methods are problematic in practice since the large amount of data makes manual labeling, required to train the algorithms to differentiate between normal traffic and anomalies, impractical. This paper introduces a framework which allows the characterization of BACnet network traffic data by means of unsupervised machine learning techniques. Specifically, we use clustering, random forests, one-class support vector machines and support vector classifier, after a pre-processing step that includes principal components analysis for dimensionality reduction. We compare the effectiveness of the methods in detecting anomalies by performing experiments on BACnet network traffic data from various sources. We describe which of these unsupervised methods work best in specific scenarios since each method has its distinct advantages and disadvantages. In particular, we discuss which method is best suited to detect new types of anomalies (novelty detection), or which method most reliably and efficiently finds new attacks of a type that has been captured in the data previously.</p>
      </abstract>
    </article-meta>
  </front>
</article>
