Switch to unified view

a b/examples/FatTreeTopologyPref/FatTreeTopologyPref.ned
1
//
2
// This program is free software: you can redistribute it and/or modify
3
// it under the terms of the GNU Lesser General Public License as published by
4
// the Free Software Foundation, either version 3 of the License, or
5
// (at your option) any later version.
6
// 
7
// This program is distributed in the hope that it will be useful,
8
// but WITHOUT ANY WARRANTY; without even the implied warranty of
9
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10
// GNU Lesser General Public License for more details.
11
// 
12
// You should have received a copy of the GNU Lesser General Public License
13
// along with this program.  If not, see http://www.gnu.org/licenses/.
14
// 
15
// Author: Kewin Rausch <kewin.rausch@create-net.org>
16
// Description: Provides a small DC example using RINA.
17
18
package rina.examples.FatTreeTopologyPref;
19
20
import rina.CS.*;
21
import rina.DAF.IRM.ConnectionTable;
22
import rina.DIF.EFCP.DTCP.*;
23
24
25
network FatTreeTopologyPref
26
{
27
    @display("bgb=1060,668");
28
29
    types:
30
    submodules:
31
32
        AS1: InteriorRouterNInt {
33
            @display("p=149,237");
34
        }
35
        AS2: InteriorRouterNInt {
36
            @display("p=422,237");
37
        }
38
        TOR1: InteriorRouterNInt {
39
            @display("p=149,425");
40
        }
41
        TOR2: InteriorRouterNInt {
42
            @display("p=422,425");
43
        }
44
45
        Server11: Host1AP {
46
            @display("p=67,598");
47
        }
48
        Server12: Host1AP {
49
            @display("p=149,598");
50
        }
51
        Server21: Host1AP {
52
            @display("p=340,598");
53
        }
54
        Server23: Host1AP {
55
            @display("p=504,598");
56
        }
57
58
        Server13: Host1AP {
59
            @display("p=225,598");
60
        }
61
        Server22: Host1AP {
62
            @display("p=422,598");
63
        }
64
        AS3: InteriorRouterNInt {
65
            @display("p=660,237");
66
        }
67
        AS4: InteriorRouterNInt {
68
            @display("p=933,237");
69
        }
70
        Server31: Host1AP {
71
            @display("p=578,598");
72
        }
73
        Server32: Host1AP {
74
            @display("p=660,598");
75
        }
76
        Server33: Host1AP {
77
            @display("p=736,598");
78
        }
79
        Server41: Host1AP {
80
            @display("p=851,598");
81
        }
82
        Server42: Host1AP {
83
            @display("p=933,598");
84
        }
85
        Server43: Host1AP {
86
            @display("p=1015,598");
87
        }
88
89
        TOR3: InteriorRouterNInt {
90
            @display("p=660,425");
91
        }
92
        TOR4: InteriorRouterNInt {
93
            @display("p=933,425");
94
        }
95
96
        AS5: InteriorRouterNInt {
97
            @display("p=420,67");
98
        }
99
        AS6: InteriorRouterNInt {
100
            @display("p=658,67");
101
        }
102
    connections:
103
104
        AS1.medium++ <--> TOR1.medium++;
105
        AS1.medium++ <--> TOR2.medium++;
106
        AS1.medium++ <--> AS5.medium++;
107
108
        AS2.medium++ <--> TOR1.medium++;
109
        AS2.medium++ <--> TOR2.medium++;
110
        AS2.medium++ <--> AS6.medium++;
111
112
        AS3.medium++ <--> TOR3.medium++;
113
        AS3.medium++ <--> TOR4.medium++;
114
        AS3.medium++ <--> AS5.medium++;
115
116
        AS4.medium++ <--> TOR3.medium++;
117
        AS4.medium++ <--> TOR4.medium++;
118
        AS4.medium++ <--> AS6.medium++;
119
120
        AS5.medium++ <--> AS6.medium++;
121
122
        Server11.medium <--> TOR1.medium++;
123
        Server12.medium <--> TOR1.medium++;
124
        Server13.medium <--> TOR1.medium++;
125
126
        Server21.medium <--> TOR2.medium++;
127
        Server22.medium <--> TOR2.medium++;
128
        Server23.medium <--> TOR2.medium++;
129
130
        Server31.medium <--> TOR3.medium++;
131
        Server32.medium <--> TOR3.medium++;
132
        Server33.medium <--> TOR3.medium++;
133
134
        Server41.medium <--> TOR4.medium++;
135
        Server42.medium <--> TOR4.medium++;
136
        Server43.medium <--> TOR4.medium++;
137
138
}