前置条件:需有iFogSim环境,和对iFogSim的基础概念有所了解。可阅读前两篇文章。
/* 创建雾设备接口 */
private static FogDevice createFogDevice(String nodeName,
long mips,
int ram,
long upBw,
long downBw,
int level,
double ratePerMips,
double busyPower,
double idlePower)
在创建底层级的雾设备时,关联的IoT设备(传感器和驱动器)也需要创建,代表着感应间隔的Transmit Distribution对象在创建IoT传感器时需要设置,此外传感器和驱动器的创建需要引用application id 和 broker id。
/*创建传感器接口*/
public Sensor(String name,
String tupleType,
int userId,
String appId,
Distribution transmitDistribution)
/*创建驱动器接口*/
public Actuator(String name,
int userId,
String appId,
String actuatorType)
/*AppModule的创建接口*/
public AppModule(int id,
String name,
String appId,
int userId,
double mips,
int ram,
long bw,
long size,
String vmm,
CloudletScheduler cloudletScheduler,
Map<Pair<String, String>, SelectivityModel> selectivityMap)
/*AppEdge的创建接口*/
public AppEdge(String source,
String destination,
double tupleCpuLength,
double tupleNwLength,
String tupleType,
int direction,
int edgeType)
/*AppLoop的创建接口*/
public AppLoop(List<String> modules)
/*控制组件的创建接口*/
public Controller(String name,
List<FogDevice> fogDevices,
List<Sensor> sensors,
List<Actuator> actuators)
原文:https://www.cnblogs.com/Pomelos/p/14878383.html