Science Computer Science
CS6250 EXAM 2 QUESTIONS WITH COMPLETE SOLUTIONS 2026/2027 LATEST
UPDATE
L7: What spurred the development of Software Defined > SDN arose to make CN more programmable
Networking (SDN)? > Networks are complex/difficult to manage due to the diversity of equipment on the
network and proprietary technologies for the equipment
> These made them highly complex, slow to innovate, and drove up the costs of running
a network.
SDN divides the network into two planes (separation of tasks):
1. control plane
2. data plane.
L7: What are the three phases in the history of SDN? 1. Active networks
2. Control and data plane separation
3. OpenFlow API and network operating systems
1/35
,3/25/26, 3:28 PM
L7: Summarize each phase in the history of SDN. 1. Active networks
2. Control and data plane separation
3. OpenFlow API and network operating systems
Active networks
> Researchers wanted to test new ideas to improve network services. This required
standardization of new protocols by the IETF which was a slow/frustrating process.
> More active networks which wanted to open up network control.
> Community belief: simplicity of the network core was vital to internet success.
The pushes that encouraged active networking:
> Reduction in computation cost
> PL Advancement (like java)
> Advances in rapid code compilation and formal methods.
Active networking envisioned unified control that could replace individually managing
these boxes.
Active networks made three major contributions related to SDN:
> Programmable functions in the network to lower the barrier of innovation
> Introduced the idea of using programmable networks to overcome the slow speed of
innovation in networking.
Active networking produced a framework that described a platform that would support
experimentation with different programming models. This led to network visualization.
Active networking was more involved in redesigning the architecture of networks, so not
as much emphasis was given to performance and security. Since there were no specific
short-term problems that active networks solved, it was harder to see widespread
deployment.
The next efforts had a more focused scope and distinguished between control and data
planes. This difference made it easier to focus on innovation in a specific plane and inflict
widespread change.
Control and data plane separation
> Network operators were looking for better network-management functions such as
control over paths to deliver traffic.
> Identified that the challenge in network management depended on the way existing
routers and switches tightly integrated the control and data planes.
> Efforts the separate the two began:
>> Higher link speeds in backbone networks led vendors to implement packet forwarding
2/35
,3/25/26, 3:28 PM
directly in the hardware
>> ISPs found it hard to meet the increasing demands for greater reliability and new
services.
Two main innovations: Open interface between control and data planes AND logically
centralized control of the network
Differed from active networking, it:
> Focused on spurring innovation by/for network administrators rather than end
users/researchers.
> Emphasized programmability in the control domain rather than the data domain.
> Worked to network-wide visibility rather than device
Attempts to separate control and data planes resulted in two concepts used in further
SDN design:
> Logically centralized control using an open interface to the data plane.
> Distributed state management - There was skepticism to moving away from a simple
network where all have a common view of the network state to one where the router only
had a local view of the outcome of route-selection. This concept of separation of planes
helped researchers think clearly about distributed state management.
OpenFlow API and network operating systems
> OpenFlow was born out of interest in the idea of network experimentation at scale, by
researchers and funding agencies.
> OpenFlow built on the existing hardware and enabled more functions than earlier route
controllers. Enabled immediate deployment.
The basic working of an OpenFlow switch: Each switch contains a table of packet-
handling rules. Each rule has a pattern, list of actions, set of counters and a priority. When
an OpenFlow switch receives a packet, it determines the highest priority matching rule,
performs the associated action and increments the counter.
OpenFlow was adopted in the industry, unlike its predecessors.
Companies started investing more in programmers to write control programs, and less in
proprietary switches that could not support new features easily. This allowed many
smaller players to become competitive in the market by supporting capabilities like
OpenFlow.
Key effects that OpenFlow had were:
Generalizing network devices and functions
Vision of a network operating systems
Distributed state management techniquesr
3/35
, 3/25/26, 3:28 PM
Expanded History Active networks
Intro
Slow and frustrating process to standardize protocols fostered the push for active
networks trying to open up network control
Active networks with their network API went against the concept of keeping the core
simple
2 types of programming models in active networking:
Capsule model - carried in-band in data packets
Programmable router/switch model - established by out-of-band mechanisms
Technology push - The pushes that encouraged active networking were:
Reduction in computation cost (more processing into the network).
Advancement in programming languages. (Java: platform portability, code execution
safety, and VM (virtual machine) technology to protect the active node in case of
misbehaving programs).
Advances in rapid code compilation and formal methods.
Funding from agencies such as DARPA (U.S. Defense Advanced Research Projects
Agency) for a collection promoted interoperability among projects. There were no short-
term use cases.
Use pull - The use pulls for active networking were:
Network service provider frustration concerning the long timeline to develop and deploy
new network services.
Third party interests to add value by implementing control at a more individualistic nature.
This meant dynamically meeting the needs of specific applications or network conditions.
Researchers’ interest in having a network that would support large-scale
experimentation.
Unified control over middleboxes. Active networking envisioned unified control that
could replace individually managing these boxes.
Active networks contributions related to SDN:
Programmable functions in the network to lower the barrier to innovation.
While many early visions for SDN concentrated on increasing programmability of the
control-plane, active networks focused on the programmability of the data-plane.
The concept of isolating experimental traffic from normal traffic has emerged from active
networking and is heavily used in OpenFlow and other SDN technologies.
Network virtualization, and the ability to demultiplex to software programs based on
packet headers.
The vision of a unified architecture for middlebox orchestration.
Conclusion:
Did not see widespread deployment because it didn't solve a specific short-term problem
and was too ambitious. It also did not focus on performance and security.
Control and data plane separation
Intro
This phase was different from active networking in several ways:
4/35