Most Software Defined Networks (SDN) traffic engineering applications use excessive and frequent global monitoring in order to find the optimal Quality-of-Service (QoS) paths for the current state of the network. In this work, we present the motivations, architecture and initial evaluation of a SDN application called Cognitive Routing Engine (CRE) which is able to find near-optimal paths for a user-specified QoS while using a very small monitoring overhead compared to global monitoring which is required to guarantee that optimal paths are found. Smaller monitoring overheads bring the advantage of smaller response time for the SDN controllers and switches. The initial evaluation of CRE on a SDN representation of the GEANT academic network shows that it is possible to find near-optimal paths with a small optimality gap of 1.65 while using 9.5 times less monitoring.
The Cognitive Routing Engine developed in this paper is similar to the routing algorithm that is used in Cognitive Packet Networks (CPNs) @cite_2 @cite_14 @cite_7 @cite_5 but with the significant and important differences that in CPN, each router runs its own routing and learning algorithm for every source-destination pair and QoS requirement and, the routers collect the network state through the use of smart packets and their associated acknowledgment packets. This is in contrast with CRE which runs in a logically centralized manner on top of the SDN controller and uses exclusively OF mechanisms to gather network state. Hence, CRE can be viewed as a SDN-compatible version of CPN and can be used with the large number of SDN-enabled switches that has already been deployed. CPN has been used successful in various settings @cite_10 , for e.g., traffic engineering @cite_15 , routing in wireless @cite_1 and sensor @cite_4 networks and defence against Denial-of-Service (DoS) attacks @cite_8 .
@cite_14 @cite_4 @cite_7 @cite_8 @cite_1 @cite_2 @cite_5 @cite_15 @cite_10
2029528936 2107377751 1980352564 2010941377 2137686796 2163879575
Abstract We discuss a packet network architecture called a cognitive packet network (CPN), in which intelligent capabilities for routing and flow control are moved towards the packets, rather than being concentrated in the nodes and protocols. Our architecture contains “smart” and “dumb” packets, as well as acknowledgement packets. Smart CPN packets route themselves, and learn to avoid congestion and losses from their own observations about the network and from the experience of other packets. They use a reinforcement learning algorithm to route themselves based on a goal function which has been assigned to them for each connection. Dumb CPN packets of a specific quality of service (QoS) class use routes which have been selected by the smart packets (SPs) of that class. Acknowledgement (ACK) packets are generated by the destination when an SP arrives there; the ACK heads back to the source of the SP along the inverse route and is used to update mailboxes in CPN routers, as well as to provide source routing information for dumb packets. We first summarize the basic concepts behind CPN, and present simulations illustrating their performance for different QoS goals, and analytical results for best and worst case performance. We then describe a test-bed network we have designed and implemented in order to demonstrate these ideas. We provide measurement data on the test-bed to illustrate the capacity of the network to adapt to changes in traffic load and to failures of links. Finally, we use measurements to evaluate the impact of the ratio of smart to dumb packets on the end-to-end delay experienced by all of the packets. Denial of service attacks, viruses and worms are common tools for malicious adversarial behaviour in networks. We propose the use of our autonomic routing protocol, the cognitive packet network (CPN), as a means to defend nodes from distributed denial of service (DDoS) attacks, where one or more attackers generate flooding traffic from multiple sources towards selected nodes or IP addresses. We use both analytical and simulation modelling, and experiments on our CPN testbed, to evaluate the advantages and disadvantages of our approach in the presence of imperfect detection of DDoS attacks, and of false alarms. Abstract This paper proposes a new energy efficient algorithm to find and maintain routes in mobile ad hoc networks. The proposal borrows the notion of learning from a previous research on cognitive packet networks (CPN) to create a robust routing protocol. Our idea uses smart packets that exploit the use of unicasts and broadcasts to search for routes. Because unicasts impose lower overall overhead, their use is preferred. Smart packets learn how to make good unicast routing decisions by employing a combined goal function which considers both the energy stored in the nodes and path delay. The end result is a dynamic discovery of paths that offer an equilibrium between low-delay routes and an efficient use of network resources that extends the working lifetime of the network. We propose cognitive packet networks (CPN) in which intelligent capabilities for routing and flow control are concentrated in the packets, rather than in the nodes and protocols. Cognitive packets within a CPN route themselves. They are assigned goals before entering the network and pursue these goals adaptively. Cognitive packets learn from their own observations about the network and from the experience of other packets with whom they exchange information via mailboxes. Cognitive packets rely minimally on routers. This paper describes CPN and shows how learning can support intelligent behavior of cognitive packets. Reliability, security, scalability and QoS (quality-of-service) have become key issues as we envision the future Internet. The paper presents the "cognitive packet network" (CPN) architecture in which intelligent peer-to-peer routing is carried out with the help of "smart packets" based on best-effort QoS goals. Since packetized voice has stringent QoS requirements, we then discuss the choice of a "goal" and "reward" function for this application and present experiments we have conducted for "voice over CPN". Its performance is detailed via several measurements, and the resulting QoS is compared with that of the IP routing protocol under identical conditions showing the gain resulting from the use of CPN. Current and future multimedia networks require connections under specific quality of service (QoS) constraints which can no longer be provided by the best-effort Internet. Therefore, ‘smarter’ networks have been proposed in order to cover this need. The cognitive packet network (CPN) is a routing protocol that provides QoS-driven routing and performs self-improvement in a distributed manner, by learning from the experience of special packets, which gather on-line QoS measurements and discover new routes. The CPN was first introduced in 1999 and has been used in several applications since then. Here we provide a comprehensive survey of its variations, applications and experimental performance evaluations.