bdi-network-resilience

Comments on formulas

9/7/2014 11:27:52 PM

Details

diff --git a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/AnomalyDetectionCapability.java b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/AnomalyDetectionCapability.java
index ed2c9fa..3c6066d 100644
--- a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/AnomalyDetectionCapability.java
+++ b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/AnomalyDetectionCapability.java
@@ -64,6 +64,8 @@ public class AnomalyDetectionCapability extends RouterAgentCapability implements
 				belief(new OverUsageCause(outlier, link), true);
 			}
 
+			// Exists ip.(OverUsageCause(ip, link) AND not(Restricted(ip)) --> not RegularUsage(link)
+			// nExists ip.(OverUsageCause(ip, link) AND not(Restricted(ip)) --> RegularUsage(link)
 			boolean exists = false;
 			Set<Belief<?, ?>> overUsageCauseBeliefs = getBeliefBase()
 					.getBeliefsByType(OverUsageCause.class);
@@ -110,6 +112,7 @@ public class AnomalyDetectionCapability extends RouterAgentCapability implements
 
 	@Override
 	public void generateGoals(GoalUpdateSet goalUpdateSet) {
+		// Anomalous(ip) AND not Restricted(ip) --> goal(Restricted(ip)) AND goal(belief(Anomalous(ip))
 		Set<Belief<?, ?>> anomalousIpBeliefs = getBeliefBase()
 				.getBeliefsByType(Anomalous.class);
 		for (Belief<?, ?> belief : anomalousIpBeliefs) {
diff --git a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/ClassifierCapability.java b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/ClassifierCapability.java
index 36575d3..501f153 100644
--- a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/ClassifierCapability.java
+++ b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/ClassifierCapability.java
@@ -64,6 +64,8 @@ public class ClassifierCapability extends RouterAgentCapability implements
 				belief(new Threat(flow), true);
 			}
 
+			// Exists flow.(threat(flow) AND ip = dst(flow)) --> not Benign(ip) 
+			// nExists flow.(threat(flow) AND ip = dst(flow)) --> Benign(ip)
 			boolean exists = false;
 			Set<Belief<?, ?>> threatBeliefs = getBeliefBase().getBeliefsByType(
 					Threat.class);
@@ -111,6 +113,7 @@ public class ClassifierCapability extends RouterAgentCapability implements
 
 	@Override
 	public void generateGoals(GoalUpdateSet goalUpdateSet) {
+		// Threat(flow) --> goal(ThreatResponded(flow))
 		Set<Belief<?, ?>> threatBeliefs = getBeliefBase().getBeliefsByType(
 				Threat.class);
 		for (Belief<?, ?> belief : threatBeliefs) {
diff --git a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/LinkMonitorCapability.java b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/LinkMonitorCapability.java
index e3d336d..b69dbbc 100644
--- a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/LinkMonitorCapability.java
+++ b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/LinkMonitorCapability.java
@@ -70,6 +70,7 @@ public class LinkMonitorCapability extends RouterAgentCapability implements
 
 	@Override
 	public void generateGoals(GoalUpdateSet goalUpdateSet) {
+		// OverUsage(link) AND not AttackPrevented(link) --> goal(AttackPrevent(link)) AND goal(belief(RegularUsage(link)))
 		Set<Belief<?, ?>> overUsageBeliefs = getBeliefBase().getBeliefsByType(
 				OverUsage.class);
 		for (Belief<?, ?> belief : overUsageBeliefs) {
diff --git a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/RateLimiterCapability.java b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/RateLimiterCapability.java
index eb76c0b..6fa2259 100644
--- a/network-resilience/src/br/ufrgs/inf/bdinetr/agent/RateLimiterCapability.java
+++ b/network-resilience/src/br/ufrgs/inf/bdinetr/agent/RateLimiterCapability.java
@@ -75,6 +75,7 @@ public class RateLimiterCapability extends RouterAgentCapability implements
 			belief(new ThreatResponded(flow), true);
 			belief(new Threat(flow), null);
 
+			// nExists flow'.(Threat(flow') AND dst(flow) = dst(flow')) --> Benign(dst(flow))
 			boolean exists = false;
 			Set<Belief<?, ?>> threatBeliefs = getBeliefBase().getBeliefsByType(
 					Threat.class);
@@ -111,6 +112,7 @@ public class RateLimiterCapability extends RouterAgentCapability implements
 			belief(new RateLimited(ip), true);
 			belief(new Restricted(ip), true);
 
+			// OverUsageCause(ip, link) --> ~OverUsageCause(ip, link)
 			Set<Belief<?, ?>> overUsageCauseBeliefs = getBeliefBase()
 					.getBeliefsByType(OverUsageCause.class);
 			Set<OverUsageCause> causedByIp = new HashSet<>();
@@ -126,6 +128,7 @@ public class RateLimiterCapability extends RouterAgentCapability implements
 				}
 			}
 
+			// nExists ip'.(was OverUsageCause(ip, link) AND OverUsageCause(ip', link)) --> RegularUsage(link))
 			for (OverUsageCause overUsageCause : causedByIp) {
 				boolean exists = false;
 				for (Belief<?, ?> belief : overUsageCauseBeliefs) {