Closed phongvu0403 closed 3 years ago
-In the update function in the network.py file, when the SFC exceeds their TTL, will the environment be changed? For example, those SFCs return CPU, Memory, Bandwidth resources to the nodes that the SFCs have embedded into.
Yes, all blocked resources are released and freed up when an SFC exceeds its TTL and leaves the network. The same goes if an SFC request is rejected - no resources are blocked.
-About results: I understand an episode is a set of states from the beginning to the last (from the first SFC that joins the system until the last SFC leaves the system). In the following episodes, the agent is better trained based on the experience gained from the previous episodes. Do I understand that correctly?
Yes, exactly. In this setting, there's no really natural definition of an episode, but most RL approaches are still focused on the episodic rather than continuous setting. Hence, we defined an episode is as a given number of SFC request arrivals. The agent learns during the episode and continues to use and improve its learned policy in the following episodes.
I hope this answers your questions?
@stwerner97 @NilsLuca Please correct me if I'm wrong.
Thank you for this answer. May I ask one more question: When I assign a specific SFC to the system, how do I know which VNFs in that SFC are embedded in which respective node. Thanh you again!
Good question. To be honest, I'm not sure.
@stwerner97 @NilsLuca Could one of you answer this? In the example results, I couldn't find any information on the actual placement; surely that's recorded somewhere? Could you also add 1-2 sentences to the Readme, describing the result format, eg, how/where to find the computed placement/embedding? Thanks!
If I recall correctly, VNF placements are recorded only internally in env.sfc_embedding
which maps SFC objects to lists of placement decisions (node indices) but removes them once their TTL passed. If you want to add embeddings to our logging class NFVDeepMonitor
extending its step
method would likely be the easiest way. If you are interested I can look into it at the end of the month 👍
Thank you very much! I am really interested in this problem. I will wait until the end of the month.
Tabulating of placement decisions added in #3.
@stwerner97 Nice! Could you make a small example to illustrate what that means for using NFVdeep and retrieving its results?
Hello, thank you for this very wonderful project. This is also what I was looking for for my graduate project. I have a few questions you can answer these are: -In the update function in the network.py file, when the SFC exceeds their TTL, will the environment be changed? For example, those SFCs return CPU, Memory, Bandwidth resources to the nodes that the SFCs have embedded into. -About results: I understand an episode is a set of states from the beginning to the last (from the first SFC that joins the system until the last SFC leaves the system). In the following episodes, the agent is better trained based on the experience gained from the previous episodes. Do I understand that correctly? Thanks in advance!!!