ThesisPDF Available

Tietoturvallisten verkkojen suunnittelu graafiteorian avulla

Authors:

Abstract and Figures

Graafiteoria tutkii graafien eli verkkojen ominaisuuksia. Graafit ovat erinomainen työkalu tietoliikenneverkkojen suunnitteluun, analysointiin ja optimointiin. Tietoliikenneverkossa on eriarvoisia komponentteja, jotka vaativat eri määrän tietoturvaa riippuen niiden luonteesta. Tietoturvaan sisältyvät kaikki keinot, joilla pyritään estämään tiedon tuhoutuminen, muuttuminen tai päätyminen vääriin käsiin. Samalla kuitenkin tiedon täytyy olla niiden saatavilla, joilla on siihen oikeus. Tässä tutkielmassa luodaan graafeille algoritmi puut, jolla voidaan lisätä verkon tietoturvaa ja luotettavuutta. Graafi koostuu solmujoukosta ja viivajoukosta. Virittävä puu on aligraafi, joka on yhtenäinen ja piiritön sekä sisältää alkuperäisen graafin kaikki solmut. Graafin viivoille voi laittaa painoarvoja, jotka kuvaavat hintaa joka kuluu kyseisen viivan käyttämiseen. Kevein virittävä puu painotetulle graafille on sellainen, jonka viivojen painoarvojen summa on pienin mahdollinen. Keveimmän virittävän puun voi etsiä esimerkiksi Kruskalin tai Primin algoritmeilla. Tietoliikenneverkkoa voi mallintaa graafilla siten, että solmut ovat jotain verkon komponentteja kuten tietokone, tulostin tai tietokanta. Viivoilla voimme merkitä sallittuja yhteyksiä verkon komponenttien välillä. Jokaisella solmulla on tärkeysarvo, eli mitä pienempi arvo solmulla on, sitä tärkeämpää sen suojaus on. Ohjelmiston määrittelemä tietoliikenneverkko (Software-Defined Networking) on uudehko lähestymistapa tietoliikenneverkon suunnitteluun, luomiseen ja hallintaan. SDN-verkossa kaikki laitteet voivat olla suoraan yhteyksissä toisiinsa. Aikaisemman verkkoliikennedatan perusteella voidaan antaa viivoille reaalisen arvon nollasta yhteen, antaen sitä pienemmän mitä käytetympi yhteys. Lisäksi voidaan tärkeyden perusteella antaa solmuille kokonaislukuarvo esimerkiksi yhdestä viiteen, siten että pieni luku on arvokkaampi. Seuraavaksi jokaisen viivan painoarvoon voidaan lisätä sen päätesolmujen tärkeysarvojen erotus, jonka merkitystä voi säädellä turvakertoimella. Kun tämä painotettu graafi on luotu, voidaan siihen soveltaa puut algoritmia. Muodostetaan pienin virittävä puu ja sitten muodostetaan toinen pienin virittävä puu siten, että se on viivariippumaton ensimmäisen puun kanssa. Yhdistämällä nämä kaksi toisistaan riippumatonta puuta saadaan muodostetuttua verkko, jossa kaikkien solmujen aste on vähintään kaksi, eikä minkään yksittäisen viivan poistaminen katkaise verkkoa. Tämän tutkielman päätulos on uusi algoritmi puut, joka luo ohjelmiston määrittelemistä tietoliikenneverkoista tietoturvallisia ja luotettavia verkkoja, joissa haittaohjelmien eteneminen on hankalaa. Turvaluokitusten tuoma segmentointi suojaa kriittisiä osia verkon heikommin suojatummista osista leviämistä uhista. Haittaohjelmien leviäminen turva-asteikossa alaspäin vie aikaa ja uhkaan ehtii reagoida ennen kuin suuria tuhoja pääsee tapahtumaan. Algoritmi tuottaa täydellisistä graafeista 2-viivayhtenäisiä verkkoja yhdistämällä kaksi keskenään viivariippumatonta virittävää puuta. Ohjelmiston määrittelemä tietoliikenneverkkoa ajatellen 2-viivayhtenäisyys on erinomainen ominaisuus. Verkosta voi milloin tahansa poistaa halutun viivan eli ei halutun yhteyden kahden koneen välillä siten, että verkko pysyy yhtenäisenä.
No caption available
… 
No caption available
… 
No caption available
… 
Content may be subject to copyright.
Tietoturvallisten verkkojen suunnittelu
graateorian avulla
FM-tutkielma
Visa Vallivaara
1800283
Matemaattisten tieteiden laitos
Oulun yliopisto
Syksy 2014
Esipuhe
Tämä gradu on tehty Teknologian tutkimuskeskus VTT:llä tietoturvan tut-
kimustiimissä vuosien 2013-2014 aikana. Opinnäytetyöni on osa Tekesin ja
Euroopan unionin rahoittamaa projektia
SaSER
, Safe and Secure European
Routing. Projektin päätavoiteena on tutkia ja kehittää eurooppalaisten tieto-
verkkojen turvallisuutta, varmuutta ja luotettavuutta suojaamalla ne ulkoisia
ja sisäisiä hyökkäyksiä vastaan. Projektia on tehty yhteistyössä saksalaisten
ja ranskalaisten tutkijoiden sekä monien kansainvälisten yritysten kanssa.
Tämän gradun osalta haluan kiittää tiimikavereitani kaikesta avusta ja
erityisesti crypto tohtoriamme Kimmo Halusta. Kiitokset myös työn ohjaaji-
na toimineille lehtori Erkki Laitiselle ja tutkijatohtori Leena Pasaselle. Monia
on myös kiitettävä kannustuksesta, jonka ansiosta sain tutkimukseni valmiik-
si ajallaan.
Oulussa 18.8.2014
Visa Vallivaara
1
Sisältö
Johdanto 3
1 Graaen teoriaa 4
1.1 Graan ominaisuuksia . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Puugraa ............................. 8
1.3 Painotettugraa ......................... 10
2 Algoritmeja graafeille 11
2.1 Dijkstran algoritmi . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Kruskalin algoritmi . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 Priminalgoritmi ......................... 14
3 Tietoturvallinen tietoliikenneverkko 16
3.1 Tietoliikenneverkon mallintaminen . . . . . . . . . . . . . . . 16
3.2 Graan yhtenäisyyden määritelmiä . . . . . . . . . . . . . . . 18
4 Algoritmin analysointi 19
4.1 Pseudoalgoritmi.......................... 19
4.2 Puutalgoritmi .......................... 21
4.3 Tulosten analysointi . . . . . . . . . . . . . . . . . . . . . . . 22
5 Loppupäätelmät 24
Lähdeluettelo 25
2
Johdanto
Tietomurrot lisääntyvät nopealla vauhdilla johtuen uusista kehittyneemmistä
hyökkäystekniikoista, joilla saa luvattoman yhteyden tietoverkkoon. Datavar-
kaudet ja hyökkäysyritykset ovat yleisiä ongelmia nykyajan organisaatiolla.
Tämä luo tarpeita erilaisten ratkaisujen ytämiseksi verkkojen tietoturvan
ja luotettavuuden parantamiseksi.
Tietoliikenneverkossa on eriarvoisia komponentteja, jotka vaativat eri mää-
rän tietoturvaa riippuen niiden luonteesta. Arvokkaimpia ovat yleensä tieto-
kannat, joissa säilytetään luottamuksellista ja arvokasta informaatiota. Ver-
kon arvokkaat osat halutaan suojata mahdollisimman hyvin ja eräs suojaus-
keino on sijoittaa ne verkon rakenteessa kaikkein suojaisimpaan kolkkaan,
kauas Internetistä tulevista uhista. Vaikka jokin haittaohjelma saisikin osan
verkon koneista saastutettua, voidaan silti välttyä katastrolta mikäli verkon
topologia on estänyt haittaohjelmien leviämisen kriittisiin osiin. Esimerkiksi
Filiol et al. (2007) ovat tutkineet tietokonematojen leviämistä tietoverkoissa
ja havainneet, että reititys topologialla voi olla erittäin suuri vaikutus ma-
tojen leviämiseen [1]. Verkko ei kumminkaan saa olla liian putkimainen tai
hajanainen sujuvan tiedonsiirron mahdollistamiseksi.
Tässä gradussa lähdetään ratkaisemaan näitä ongelmia graateorian avul-
la. Graat ovat erinomainen työkalu tietoverkkojen mallintamiseen sekä op-
timointiin. Graaen avulla pystytään tutkimaan ja analysoimaan verkkojen
topologiaa ja niitä on käytetty paljon verkkojen optimointiin. Kuten Ahmat
(2009) on tutkinut graateorian avulla isojen monimutkaisten verkkojen rei-
tittämiseen ja tarkkailuun liittyviä optimointiongelmia ja on yttänyt, että
suurin osa näistä ongelmista on NP-täydellisiä tai NP-vaikeita [2].
Kun graalla kuvataan tietoverkkoa, niin jokainen graan solmu on jo-
kin verkon komponentti, kuten tietokone. Viivoilla voimme merkitä sallittuja
yhteyksiä verkon komponenttien välillä. Jokaisella solmulla on tärkeysarvo,
eli mitä pienempi arvo solmulla on, sitä tärkeämpää sen suojaus on. Voim-
me antaa myös viivoille painoarvon, joka voi kertoa joko paljonko yhteyttä
normaalisti käytetään tai sitten etäisyyden komponenttien välillä isossa ver-
kossa. yttämällä näitä painoarvoja voimme muokata verkon topologian
paremmaksi siten, että arvokkaat solmut ovat mahdollisimman suojassa ja
vilkkaasti keskenään kommunikoivat koneet ovat lähellä toisiaan.
Tämän tutkielman ensimmäisessä kappaleessa käydään läpi graaen pe-
rusomaisuuksia ja määritelmiä. Toisessa kappaleessa perehdytään algoritmei-
hin joita käytämme graaen optimoinnissa. Kolmannessa kappaleessa esitel-
lään verkkojen tietoturva ominaisuuksia. Neljännessä kappaleessa sovelletaan
algoritmeja verkkoihin ja analysoidaan tuloksia. Viimeisessä kappaleessa on
yhteenveto tämän tutkielman tuloksista.
3
1736
G =(V
G
,E
G
) V
G
E
GG
|V
G
| |E
G
|
V
G={A,B,C,D} E
G={a,b,c,d,e,f,g} |V
G
|=4 |E
G
|=7
u v u v
E
GV
G
v uv
uv v
v (v) v
A B
a A A (A) =5
G =(V
G
,E
G
) H =(V
H,E
H)
G∪H =(V
GV
H,E
GE
H)
1736
G =(V
G
,E
G
) (v)
E
G
2|E
G
|=
vV
G
(v)
P(n):=
n
i=1
(v
i
)=2|E
G
|
P(1)
(V
G
) =2
|E
G
|=1 P(k)
G |E
G
|= k
(V
G
)=2k G e H =(V
G
,E
G
e) e
|E
H|= k+1
(V
H)=2k+2=2(k+1)
P(k+1)
V
1V
2
G=(V
G
,E
G
)
2|E
G
|=
vV
G
(v)=
vV
1
(v)+
vV
2
(v)
2|E
G
|
G H G = H V
G= V
H
E
G= E
H
G
G
G
a b
W G
W :v
1−v
2···−v
k+1 V
G|W|= k
W :v
1→v
k+1
P:v
1
v
2
···v
k+1
v
1=v
2··=v
k+1 v P
P v
C
C:v
1−v
2···−v
kv
1=v
2··=v
k1 v
1=v
k
P
1P
2
W :
ABDAC |W |=4 P
1:CDB
P
2:C−A−B
C:A−B−D−C−A |P|=4
u v
u v
u v
v
0−v
1···−v
kv
0=u v
k=v k=1 v
0−v
1
k2
v
0···−v
i
···−v
j
···−v
k
v
i
=v
ji=j v
i
v
j
G
v u v u d(v,u) =min{k|v→u}
d(v,u) =
u v
v u G
G
d(v,u)<∞ v,u∈V
G
(A) =5 (B) =3 (C) =3 (D)=3
K
n=(V
K,E
K) |V
K|= n
v (v)=
n−1 n
n2
Kuva 2: Tietoliikenneverkko joka muodostaa puugraan.
1.2 Puugraa
Puut ovat yksinkertaisten graaen erikoistapauksia. Puun mallisilla graafeilla
on hyviä käytännön sovelluksia niiden yksinkertaisemman rakenteen ansiosta,
kuten organisaatiokaavioiden tarkastelu tai siirtoverkkojen minimointi. Ne
ovat myös perusmalli erilaisille tietorakenteille. Esimerkiksi Kuvassa 2 on
tietoliikenneverkko, jolla on puurakenne.
Määritelmä 1.17.
Puu
T= (VT, ET)
on yhtenäinen piiritön graa.
Määritelmä 1.18.
Puussa olevaa solmua, jonka aste on yksi, kutsutaan
lehdeksi
.
Määritelmä 1.19.
Graa
H= (VH, EH)
on graan
G= (VG, EG)
aligraa
,
jos
VHVG
ja
EHEG
. Voidaan merkitä
HG
. Jos
HG
ja
VH=VG
niin tällöin graa
H
on graan
G
virittävä aligraa
.
Lemma 1.20.
Jokainen puun aligraafeista on myös puu.
Todistus.
Tehdään vastaoletus: puun aligraa ei ole puu, eli siinä on oltava
piiri.
Mutta jos aligraassa on piiri, on sen oltava myös alkuperäisessä graassa.
Tästä seuraa ristiriita, koska alkuperäinen graa on puu jossa ei ole piirejä.
8
n n−1
P(n)={ n n
1 }
P(1)
P(k)
T v T
v T
k 1
v
T k P(k+1)
T G T⊆G
G
G
T G
T
T
T
G
α=(V
G
,E
G
,α) α :
E
GR
+
P:v
1
v
2
···v
k+1 α(P)=
k
i=1
α(v
i
v
i+1
)
v u
d(v,u) =min{α(P)|P:v u}
G
α
T
s v
G
α
S
s u
V
Gs S
s
O(|E|+|V|
2
) O(|E|+|V|log|V|)
s Min(V
G
)
v V
G
α(sv) v
(G
α=(V
G
,E
G
),s)
vV
G
d(s,v):=
d(s,s):=0
S:=
V
G=∅
v:=Min(V
G
)
V
G:=V
G{v}
S:=Sv
u∈S
d(s,u)>d(s,v)+α(vu)
d(s,u):=d(s,v)+α(vu)
1956
O(|E|log|V|)
(G
α=(V
G
,E
G
))
T
α:=
vV
G
S(v):=v
E
Gα(E
G
)
|E
T
|< |V
G
|−1
S(v)= S(u)
T
α=T
α(u,v)
S=S(u)S(v)
T
T=(V
T
,E
T
) V
T=V
G
|E
T
|= |V
G
|1 T |V
T
|= |E
T
|+1
T
S
m E
Gm
T =(V
T
,E
T
)
G
αS
m⊆E
T
P(m) ={
T=(V
T
,E
T
) G
αS
m E
TS
m E
Gm
}
m =0 S
0= E
T
m = k
P(k)
T=(V
T
,E
T
)
S
k E
Te S
k
e∈ E
TS
k+1 =(S
k{e})⊆ E
TP(k+1)
e/∈E
TE
T{e}
e
∈(E
TS
k+1
) e e
T e
e T
=(V
T
,E
T
) E
T
=(E
T{e
}){e}
T
T
T
S
k+1 E
T
P(k+1)
T
G
α
n V
G
n−1 e= E
G−S
S n−1
S
H1,H2,...,H10
1929
1956
1957 1958
G
αs
T Min(V
G
) v
V
Gα(uv) u∈T v/∈T
v e
T
O(|E|+|V|log|V|)
(G
α=(V
G
,E
G
),s)
T:=
vV
G
d(T,v):=
d(T,s):=0
V
G=∅
(v,e):=Min(V
G
)
T:=(V
T{v},E
T{e})
V
G:=V
G{v}
u∈V
Gv
α(vu)<d(T,u)
d(T,u):=α(vu)
T
T=(V
T
,E
T
)
T uv∈E
iv/∈V
i1
,u∈V
i1
|V
T
|= |V
G
| |E
T
|= |V
G
|−1 T G
α
T=(V
T
,E
T
)
G
α
T T
G
αT=T
T=T
e
k=vu
T
P
v u T
e
P
(k 1)
e
e
k
α(e
)≥α(e
k
) e
e
k
e
e
kT
T T
Kuva 6: Erilaisten tietoliikenneverkkojen topologia graafeja.
3 Tietoturvallinen tietoliikenneverkko
Tietoturva on käsitteenä erittäin laaja. Siihen sisältyvät kaikki keinot, joil-
la pyritään estämään tiedon tuhoutuminen, muuttuminen tai päätyminen
vääriin käsiin. Samalla kuitenkin tiedon ytyy olla niiden saatavilla, joilla
on siihen oikeus. Luottamuksellista tietoa yritetään varastaa organisaatiolta
käyttämällä erilaisia hyökkäystekniikoita kuten tietojenkalastelu, välistäve-
tohyökkäys, troijalaiset ja muut haittaohjelmat.
3.1 Tietoliikenneverkon mallintaminen
Ohjelmiston määrittelemä tietoliikenneverkko, englanniksi Software-Dened
Networking (
SDN
), on uudehko lähestymistapa tietoliikenneverkon suunnit-
teluun, luomiseen ja hallintaan. Perusidea on se, että
SDN
erottaa toisis-
taan verkon hallinnan eli "aivot"ja pakettiliikenteen välitystason hallinnan
eli "lihakset". Tämä tarkoittaa sitä, että teoriassa kaikki verkon laitteet voi-
vat olla suoraan yhteyksissä toisiinsa, kuten ydellisessä graassa. Tämän
tyyppistä verkkoa on helpompi optimoida ja sen rakennetta pystyy hetkessä
muuttamaan, koska verkon fyysiset rakenteet eivät ole rajoitteena. Tämän
tutkielman laajuuteen ei kuuluu perehtyä tämän syvällisemmin
SDN
verk-
koarkkitehtuurin teoriaan.
Tietoliikenneverkkoa voi mallintaa graalla, siten että solmut ovat jotain
verkon komponentteja joilla on MAC osoite, kuten tietokone, tulostin tai tie-
tokanta. Viivoilla voidaan merkitä sallittuja yhteyksiä verkon komponenttien
16
K
n=(V,E)
|V
K|= n |E
K|= n(n1)/2
7 9 v
1927
G λ(G)
λ(G)=min{|F|,F⊆E
GG−F }
G λ(G) =k
v,uV
Gk v→u
v G
v G G
G
G v
1v
2
G
v
1v
2v v
v
1v
2
K
10
G
α=(V
G
,E
G
) |V
G
|= n |E
G
|= m
cZ
+
V
G=(v
i
,c
i
) i=1,...,n
p∈[0,1]
E
G=(e
j
,p
j
) j=1,...,m s∈R
+
s <c−1
s= c 1
s>c−1
T
(G
α=(V
G=(v,c),E
G=(e,p)),s)
v
i
v
jE
G
α(v
i
v
j
)=p
ij
+|k
i
−k
j
|/s
T
1= (G
α
)
E
G=E
G−E
T
1
T
2= (G
α
)
H =T
1T
2
H
G
C s
H = (G,C,s,method)
n= (C,1);
j=2:n
i=1:(j−1)
G(j,i) =G(j,i)+abs(C(i,1)−C(j,1))/s;
G= (G);
i=1:n
(i)= (
a
+i−1) 2 (C(i,1))]);
T= (G,
,method);
G= G−T
H = (G,
,method)+T;
(H100)/100
G=tril(rand(n,n),1)
C=randi(c,n,1) n c
10
[0,1]
s=4
26 7 1
26
1 s=6
2000
H
H λ(H) =2
2
Kuva 11: Muuten sama verkko kuin Kuvassa 10, paitsi turvakerroin on
6
.
lyy, jolloin verkon muokkausta voi tarvittaessa jatkaa viiva kerrallaan. Tai
voimme nostaa poistetun viivan painoarvoa ja muodostaa uuden verkon al-
kuperäisellä algoritmilla, jolloin kyseinen yhteys jää pois.
Lisäksi testauksissa havaittiin, että saadut verkot ovat usein myös sepa-
roitumattomia. Jolloin graasta voisi poistaa myös minkä tahansa solmun
siten että graa pysyy yhtenäisenä. Mutta graain voi syntyä irrotuspiste,
jos graa on suuri ja turvakerroin on valittu siten että se painottaa tietotur-
vaominaisuuksia, kuten Kuvassa 10. Vaihtelemalla turvakerrointa sekä tieto-
turvaluokkien määriä voi generoida useita erilaisia verkkoja ja valita niistä
separoitumattoman tai vähiten irtopisteitä sisältävän.
Jos graa on
2
-viivayhtenäinen mutta ei separoitumaton, voidaan siitä
poistaa saastunut solmu
v
kutistamalla se sellaisen viereisen solmun
u
kanssa,
jolla on sitä lähinnä oleva turvaluokitus. Kutistus voidaan tehdä siten että
kaikki solmuun
v
kytköksissä olevat viivat yhdistetään solmuun
u
yksi viiva
kerrallaan, jolloin verkko pysyy jatkuvasti yhtenäisenä. Tämän jälkeen voi
tarvittaessa laskea
puut
algoritmilla uuden verkon ilman saastunutta solmua,
ja lisätä siihen kuuluvat viivat verkkoon ja poistaa vanhat viivat.
23
2
2
Lähdeluettelo
[1] É. Filiol, E. Franc, A. Gubbioli, B. Moquet and G. Roblot:
Combina-
torial optimisation of worm propagation on an unknown network
. Engi-
neering and Technology, World Academy of Science, 2007.
[2] K. Ahmat:
Graph Theory and Optimization Problems for Very Large
Networks
. City University of New York, United States, 2009.
[3] R.R. Kadesch:
Problem Solving Across the Disciplines
. Prentice Hall,
United States, 1997.
[4] K. Rosen:
Discrete mathematics and its applications
. Pages 429-607.
New York : McGraw-Hill, 1995.
[5] E.W. Dijkstra:
A note on two problems in connexion with graphs
. Pages
269271. Numerische Mathematik 1, 1959.
[6] M.L. Fredman and R. Tarjan:
Fibonacci heaps and their uses in improved
network optimization algorithms
. Pages 338346. Annual Symposium on
Foundations of Computer Science 25, 1984
[7] J.B. Kruskal:
On the Shortest Spanning Subtree of a Graph and the
Traveling Salesman Problem
. Pages 48-50. Proceedings of the American
Mathematical Society 7, 1956.
[8] R. Prim:
Shortest Connection Networks and Some Generalizations
. pa-
ges 1389-1401. Bell System Technical Journal 36, 1957.
[9] E. Weisstein:
Vertex Contraction
. A Wolfram Web Resource,
http://mathworld.wolfram.com/VertexContraction.html, 2014.
[10] R. Diestel:
Graph Theory
. Third edition. Berlin : Springer, 2005
[11] W-K. Chen:
Theory of Nets: Flows in Networks
. New York : John Wiley
& Sons, 1990.
25
... But the network should not be too tubular or scattered to enable a smooth data transfer. In the Master's Thesis graph theory [2] was used to solve these problems. In this short paper from the Thesis, most of the mathematical theories and all the proofs were left out. ...
Conference Paper
Full-text available
Graph theory studies the properties of graphs and networks. Graphs are an excellent tool for designing, analysing and optimizing data networks. In a data network there are unequal components, which need different amount of information security depending on their properties. Information security includes all measures which try to prevent destruction, manipulation or stealing of information. But at the same time the information must be available for those who have the permission to access it. Computer network can be modeled with graph, where vertices are components of network such as computer, switch or database. With edges we can illustrate allowed connections between those components. Every vertex has importance value; the smaller value means that the protection of the component is more important. Software-defined networking (SDN) is a quite new approach to designing, creating and controlling computer networks. In a software-defined network all components can be directly connected. The main result of this Thesis is the algorithm twintrees, which makes software defined networks more secure and reliable, where it is hard for malware to advance. Security levels make the network segmented, which protects critical parts from threats which could spread from the less protected parts of the network. It takes time for malware to spread from higher levels to lower levels and thus it is easier to react to threat before any catastrophic happens. The algorithm, which this Thesis represents, transfers full graphs to 2-edge-connected graphs by combining two independent spanning trees. For software designed network the 2-edge-connectivity is an excellent property. With this property it is possible to remove any connection between two components so that the network remains still connected.
Article
Full-text available
Graph theory provides a primary tool for analyzing and designing computer communication networks. In the past few decades, Graph theory has been used to study various types of networks, including the Internet, wide Area Networks, Local Area Networks, and networking protocols such as border Gateway Protocol, Open shortest Path Protocol, and Networking Networks. In this paper, we present some key graph theory concepts used to represent different types of networks. Then we describe how networks are modeled to investigate problems related to network protocols. Finally, we present some of the tools used to generate graph for representing practical networks.
Article
Worm propagation profiles have significantly changed since 2003-2004: sudden world outbreaks like Blaster or Slammer have progressively disappeared and slower but stealthier worms appeared since, most of them for botnets dissemination. Decreased worm virulence results in more difficult detection. In this paper, we describe a stealth worm propagation model which has been extensively simulated and analysed on a huge virtual network. The main features of this model is its ability to infect any Internet-like network in a few seconds, whatever may be its size while greatly limiting the reinfection attempt overhead of already infected hosts. The main simulation results shows that the combinatorial topology of routing may have a huge impact on the worm propagation and thus some servers play a more essential and significant role than others. The real-time capability to identify them may be essential to greatly hinder worm propagation.
Article
In this paper we develop a new data structure for implementing heaps (priority queues). Our structure, Fibonacci heaps (abbreviated F-heaps), extends the binomial queues proposed by Vuillemin and studied further by Brown. F-heaps support arbitrary deletion from an n-item heap in O(log n) amortized time and all other standard heap operations in O(1) amortized time. Using F-heaps we are able to obtain improved running times for several network optimization algorithms. In particular, we obtain the following worst-case bounds, where n is the number of vertices and m the number of edges in the problem graph: O(n log n + m) for the single-source shortest path problem with nonnegative edge lengths, improved from O(mlog(m/n+2)n);O(n2log n + nm) for the all-pairs shortest path problem, improved from O(nm log(m/n+2)n);O(n2log n + nm) for the assignment problem (weighted bipartite matching), improved from O(nmlog(m/n+2)n);O(m&bgr;(m, n)) for the minimum spanning tree problem, improved from O(mlog log(m/n+2)n); where &bgr;(m, n) = min {i &uharl; log(i)n ≤ m/n}. Note that &bgr;(m, n) ≤ log*n if m ≥ n.Of these results, the improved bound for minimum spanning trees is the most striking, although all the results give asymptotic improvements for graphs of appropriate densities.
On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. Pages 48-50
J.B. Kruskal: On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. Pages 48-50. Proceedings of the American Mathematical Society 7, 1956.