Switch to unified view

a b/src/CS/DC_VM.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
16
// Author: Kewin Rausch <kewin.rausch@create-net.org>
17
//
18
// NOTES:
19
// This module describes a single VM in the DataCenter use-case.
20
// Servers can be owned by only one Tenant per time.
21
//
22
// Colors of the IPC reflect the use case layers.
23
// Link: https://wiki.ict-pristine.eu/wp2/d21/D21-Datnet-RINA
24
25
package rina.CS;
26
27
import rina.Common.Test;
28
import rina.DAF.ApplicationProcess;
29
import rina.DAF.DA.DIFAllocator;
30
import rina.DIF.IPCProcess;
31
import rina.DAF.IRM.IPCResourceManager;
32
33
module DC_VM
34
{
35
    parameters:
36
        @display("i=device/terminal;bgb=214,348");
37
        @node;
38
39
    gates:
40
        inout medium;
41
42
    submodules:
43
        AP: ApplicationProcess {
44
            @display("p=58,43");
45
        }
46
47
        difAllocator: DIFAllocator {
48
            @display("p=156,43;i=,grey");
49
        }
50
51
        ipcResourceManager: IPCResourceManager {
52
            @display("p=110,121");
53
        }
54
55
        TenantIPC: IPCProcess {
56
            @display("p=110,211;i=,#0080FF");
57
        }
58
59
        ShimIPC: IPCProcess {
60
            @display("p=110,293;i=,#800000");
61
        }
62
63
    connections allowunconnected:
64
        ShimIPC.southIo++ <--> medium;
65
        ShimIPC.northIo++ <--> TenantIPC.southIo++;
66
}