the absence of autoimmune threats to the hosting system (no risk that the immune system
attacks the system it is supposed to protect). With this specification, our problem breaks down
quite naturally into the following five simple sub problems.
The first subproblem is that of providing an unambiguous definition of self and non-self
system components in the framework of a computer network. For the innate immune system,
self-system components are innate components, that is, components that are there at birth;
everything else is held to be non-self, and will be attacked. The problem is to define what an
innate component is in the context of a running network of computers. Our solution is that of
considering innate, – meaning “self”, – all processes running on a network before it is
connected to the internet.
The second subproblem is that of modeling digital macrophages capable of detecting and
eliminating computer infections. Our macrophages are running processes that monitor the
activities of the server, and kill any non-self process.
The third subproblem is that of providing digital macrophages with the capability of
recognizing new infections. A new infection is defined as an unknown attack that exploits
some system bug, and generates at least one new running process. Any non-self process of
this kind will have to be recognized and killed by our macrophages.
The fourth subproblem is that of automatically repairing previous infections based on
system bugs.
The fifth subproblem is that of making sure that our approach does not cause autoimmune
pathologies, that is, that the macrophages do not attack and/or kill self system components.
Our solution to these problems and the engineering of its implementation are discussed in
Section 4. The next section presents a short introduction to the innate immune system, and
may be skipped by readers already familiar with it.
3 The Innate Immune System
The immune system is a multi-layered defense system that evolved to protect living
organisms from diseases. Several layers of defense interact to shelter the body from
pathogenic intruders; these layers mainly consist of physical and chemical barriers, and
specialized cells that can recognize and/or kill antigens.
The mechanical and chemical barriers provide the first line of defense in the fight against
antigens; most importantly skin, mucous secretions, and enzymes, with their changing pH and
temperature features. Bacterial colonies present on the skin surface are in general unable to
pass the through the skin barrier, though a skin injury may allow the bacteria to enter the
body. In this case, as a consequence of the trauma, the cells surrounding the injured area
release a range of chemicals; this causes local blood vessel dilation. This in turn brings more
blood to the area to help the healing process. The blood released into the affected tissue
causes swelling, and signals the inflammatory cells, the phagocytes, to gather at the trauma
site. The phagocytes can recognize antigen particles and engulf them, in a process called
phagocytosis.
The second line of defense is the innate immune system. It consists of a family of cells,
collectively called phagocytes (more specifically, macrophages, neutrofils, monocytes,
basophiles, etc.), which recognizes, attacks, engulfs, and finally kills antigens. The innate, or
native, response is a non antigen-specific barrier of the immune system, meant to fight against
any infection without the need of previous immunization. Its response consists in actions of
two different types: rapid action, which lasts from four minutes to four hours, performed by
macrophages, and medium-to-slow action, performed either via inflammation, or by natural
killer (NK) cells.
Macrophages play a key role in the destruction of microorganisms. They are a type of
white blood cell that behaves like a patrol cell, as it engulfs and kills foreign infectious