Minutes for NMRG at IETF-94
minutes-94-nmrg-3
Meeting Minutes | Network Management (nmrg) RG | |
---|---|---|
Date and time | 2015-11-02 08:10 | |
Title | Minutes for NMRG at IETF-94 | |
State | Active | |
Other versions | plain text | |
Last updated | 2015-11-19 |
minutes-94-nmrg-3
***** Minutes of the 38th NMRG meeting - IETF-94 (Yokohama, Japan) Special session on Managing Networks of Adaptive and Cooperative Agents Session Chair: Laurent Ciavaglia Monday (November 2nd, 2015) 2-hour session: 17:10-19:10 Afternoon Session III, Room 413 1. Session introduction - 10 min 17:00 - 17:10, by Laurent Ciavaglia (session chair) https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-1.pdf Thanks to the note takers (John and Pierre), and jabber scribe (?). The IETF Note Well applies for the meeting. Laurent presented the Agenda. The main goal of the meeting is to identify topics of high interest for further research and investigations by the network management community, highlighting the potential needs for future standardization. To this end, the meeting will have a few (5) short presentations and hopefully enough time for open and fruitful discussions. 2. Population Management in Clouds is a Do-It-Yourself Technology - 20 min 17:10 - 17:30, by Marat Zhanikeev https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-0.pdf The presentation will end up connecting to standards and topics outlined in the call (cf slide #2). Most things are heterogeneous environments and the complexity problem arises from this heterogeneity. A network of DCs is a cloud; a network of clouds is a federation. This creates inherent heterogeneity in software; everyone talks and sends different types of data. Cloudify - putting the cloud platform into the device. We are still at a relative large abstraction (e.g., DCs or intelligent vehicles). Next is desktops/notebooks. Probably should NOT cloudify anything below a sensor; smartphones and sensors may or may not be cloudified. Bert: if you say you can use your phone, this is another device, but this provides yet another point of failure. It is more complex than simply having devices speak IPv6. Marat: IPv6 is not working today. The purpose of Cloudlets is to move processing to the edge to help mitigate this. Fundamental problem is complexity. OSPF optimizes one parameter for one physical graph, and is NP-hard. VNE maps one virtual graph on top of a physical graph, so is even more complex. There are two solutions to the complexity problem: non-cooperative vs. cooperative (clouds/networks can implement local awareness features to improve self-optimization). Non-cooperative way is based on probing the cloud, migrating some services to gradually optimize, and repeating. Cooperative way uses Local Hardware Awareness. For example, different types of caching methods can be defined. Because of hotspot traffic, cut-through circuits are key. Such circuits are similar to Y.mnm (Y.2173), which is made of two key parts: active probing and distributed management. Self-optimization, whether non-cooperative or cooperative, is based on probing and developing intelligence to optimize. 3. Intent Based NEtwork MODeling (IBNEMO) - 20 min 17:30 - 17:50, by Bert Wijnen https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-3.pdf Users can build applications with a few set of commands (80/20 rule) without having to specify all of the details of the configuration of devices, flow entries, tunneling, ACLs, etc. NEMO app guides the user to program their service. The NEMO engine will translate this into a form that NEs can use. NEMO defines a very small model (3 object types) with some behavior that is used to create a simple domain-specific language (DSL). This lets the use specify high-level goals. The NEMO engine is network middleware that translates the DSL into network configuration from the user 'intent'. NEMO talks to SDN controller(s) and could talk to any other control interfaces. NEMO is an OpenDaylight project, and part of the Beryllium release. Showed a simple script for bandwidth-on-demand DOCSIS example. NEMO project has defined an Eclipse plug-in that highlights NEMO keywords. The input gets parsed and turned into a NEMO REST API. Available in Hackathon. NEMO can dynamically update the network behavior if it gets an alert. Question: should NEMO also monitor the network? Marat: is there a market? Bert: ... Marat: are agents coordinated? Bert: no, it is a centralized application Marat: are graphs supported Bert: not directly, though nodes and flows are 4. SUPA Declarative Model - 20 min 17:50 - 18:10, by Jun Bi https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-4.pdf Goal: declarative, high-level request. Express what should be done without telling how. Example: want to travel from A to B - don't care which transportation method is offered as long as it is within a prescribed budget and meets conditions (e.g., arrive before a certain time). Policy is used to manage service behavior. Policy defines rules for governing managed objects and service relationships. There are two types of policies: ECA and Goal Policies. ECA defines a set of actions to take if the conditions are met; event says when to evaluate the condition. This explicitly defines what next state to transition to. Goal (declarative) policies express what should be done, but not how to accomplish the goal. This results in specifying criteria for choosing a set of states, any of which is acceptable. Hence, rationality is generated by the planner. Declarative: only describe the constraints, no information on how to achieve the desired state. Example: Seven Bridges of Konigsberg. Procedural is extremely complex; declarative is simple. Policy rules can manage the behavior of managed entities. They are defining a declarative (i.e., logic-based) policy demo, where an external interface and API is used to program a core engine that accepts declarative and ECA policies. It outputs a solution in YANG. Demo on Thursday at Bits and Bytes. Laurent: How to get from High Level Policy to Low Level Policy? Tina: ?Use the conditions to create ECA level Policy. Bert: ...? Tina : You can embed Yang in the policy. 5. Towards trustworthy interworking of autonomous agents - 20 min 18:10 - 18:30, by Pierre Peloso https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-5.pdf This is about how you can build trust into behavior of autonomous agents. Autonomous: an agent keeps its own decision-making process. Learning agent: agents that can also perform reasoning (e.g., learn beliefs about the environment). Analogy: Agents are people playing instruments, but they collectively make music under guidance of conductor. John: this is a blending of choreography and orchestration. Pierre: yes. We must therefore be able to trust what the agent is doing. Characterize-Test-Verify-Certify the performance and conformance of the function/system wrt referential functions. We also need to ensure that trusted agents can work together, even if each agent has its own goal. This means they need to be coordinated, and resolve their own conflicts. There are eight approaches, consisting of two types of conflict maps (static and dynamic), two different schemes (static and dynamic) that can each be centralized or distributed. Example context: radio access networks using SON. Challenge: rapidly varying traffic. Solution: Dynamically adapting network. Induced Issues: chaos in network due to conflicts, caused by competition between autonomous behaviors (e.g., two SONs will fight over the same radio resources). Challenge #1: identify conflicts, both prior to deployment and after deployment. Must avoid false positives without missing true positives. Made a static conflict map of parameters, controls, KPIs, unified metrics, and controls. This doesn't take into account things like overlapping base station coverage. Another way to do this is to wait until agents are deployed, and then use self-description from autonomic functions to make inventory of metrics monitored, of actions performed, and how they are computed. Build graphs showing control loops, and identify conflicting control loops. Yet another way is during deployment, after the agents are running, by being able to either find new dependencies between metrics or being able to determine that different autonomic functions are conflicting. For example, infer conflicts on monitored metrics. Challenge #2: coordination mechanisms. Self-orchestration: each agent provides an estimated utility for the next time slot, and an orchestrator gives the token to the agent having the highest utility. Hierarchical optimization: one control loop has precedence over others (e.g., via time). This is a family of operations. Centralized multi-objective optimization: aggregation of the weighted utilities of each agent, find a Pareto optimal solution. A "super-agent" decides. Use of control theory: weight each control loop. Marat: Comment to use attractors to achieve coordination? Bert: are they open source implementations and are those available? Laurent: in the frame of the EU funded project UNIVERSELF (www.univerself-project.eu), software has been developed and showcased. The open source availability has to be checked. If interested, please contact me. 6. Reconciling autonomic networking with agent-based modelling - 20 min 18:30 - 18:50, by Dimitri Papadimitriou https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-6.pdf Note: due to technical issues, Dimitri was not able to give the presentation remotely. Laurent presented the slides on behalf of Dimitri. Adaptivity: the ability to react and/or change decisions in a timely and cost-effective manner when events occur that affect the delivery of services. An agent-based model consists of a set of agents, with their attributes and behaviors, as well as their interactions. The goal of autonomics is to hide, or reduce, complexity. However, the goal of agents is to model emergent behavior (i.e., produce complexity). Agent-based model (ABM): primary goal is to search for explanatory insight into the collective behavior of agents (which don't necessarily need to be "intelligent"); the ability of agents to be autonomous fits a-priori self-X principles by hiding real complexity to the “outsider” and handle more and more complexity on their own. ABM, technique to model decentralized optimization/decision problem solving with agents having individual goals and constraints, negotiate to reach a global satisfactory/ acceptable state. - Fits policy framework (map state to action and enforcement) - Example: DCOP, ACO, particle swarm optimization But only if some level of cooperation can be considered. Then autonomic management framework (and objectives) coupled to agent-based model leads to distributed version of constraint optimization problems as main research goal. Otherwise, if selfish behavior (thus, self-interested agents) considered as main characteristic of Internet environments then (non-cooperative) game theoretic models for distributed optimization would better fit this objective (but does it still fit the autonomic framework ?) No questions received. 7. Open discussion - 20 min 18:50 - 19:10 https://www.ietf.org/proceedings/94/slides/slides-94-nmrg-2.pdf Laurent highlighted some items/ideas to discuss: Towards smarter, more powerful network operations... (cf slide #2) New (autonomic) functionalities? ; Human in the loop, reliability, trust? ; (vertical) Integration? Agent <-> Node, Operator <-> Agent ; Application domains? 5G, IoT … ; First areas in need for standards? Bert: what do we want the nmrg to do in the short term? Laurent: possibly a report, or possibly a wider event. why not an article to IETF journal? We could also document the problem space/challenges and/or use cases/techniques. Develop link with other research/working groups, other organizations, other communities. cf slide #3. Marat is suggesting that networks advertise their functions It isn't what the agents want, it is what the network can provide. You need a coordination function to do this. Similar to the three problems of social engineering: cognition, coordination, cooperation. Marat: what is meant by coordination w/r economy and draws a parallel with economy concepts. Pierre: what about conflicts in the intents (i.e requesting agents to do congestion avoidance on one side and others to do energy efficiency while their utility metrics do contradict). End of the meeting, thanks to the presenters, the note takers and jabber scribe, and to all the participants! *****