Software defined environments: An introduction

During the past few years, enterprises have been increasingly aggressive in moving mission-critical and performance-sensitive applications to the cloud, while at the same time many new mobile, social, and analytics applications are directly developed and operated on cloud computing platforms. These two movements are encouraging the shift of the value proposition of cloud computing from cost reduction to simultaneous agility and optimization. These requirements (agility and optimization) are driving the recent disruptive trend of software defined computing, for which the entire computing infrastructure--compute, storage and network--is becoming software defined and dynamically programmable. The key elements within software defined environments include capability-based resource abstraction, goal-based and policy-based workload definition, and outcome-based continuous mapping of the workload to the available resources. Furthermore, software defined environments provide the tooling and capabilities to compose workloads from existing components that are then continuously and autonomously mapped onto the underlying programmable infrastructure. These elements enable software defined environments to achieve agility, efficiency, and continuous outcome-optimized provisioning and management, plus continuous assurance for resiliency and security. This paper provides an overview and introduction to the key elements and challenges of software defined environments.

[1]  Randy H. Katz,et al.  Above the Clouds: A Berkeley View of Cloud Computing , 2009 .

[2]  Fernando M. V. Ramos,et al.  Towards secure and dependable software-defined networks , 2013, HotSDN '13.

[3]  Radu Prodan,et al.  A survey and taxonomy of infrastructure as a service and web hosting cloud providers , 2009, 2009 10th IEEE/ACM International Conference on Grid Computing.

[4]  Aameek Singh,et al.  Server-storage virtualization: Integration and load balancing in data centers , 2008, 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis.

[5]  H. Franke,et al.  Software defined infrastructures , 2014, IBM J. Res. Dev..

[6]  Robert Wallner,et al.  Introduction: IBM zEnterprise systems and technology , 2012 .

[7]  Frederica Darema,et al.  Memory access patterns of parallel scientific programs , 1987, SIGMETRICS '87.

[8]  Scott Devine,et al.  Bringing Virtualization to the x86 Architecture with the Original VMware Workstation , 2012, TOCS.

[9]  Renato Recio,et al.  Software defined networking to support the software defined environment , 2014, IBM J. Res. Dev..

[10]  Lingjia Tang,et al.  Heterogeneity in “Homogeneous” Warehouse-Scale Computers: A Performance Opportunity , 2011, IEEE Computer Architecture Letters.

[11]  Wanjiun Liao,et al.  Software defined networks [Guest Editorial] , 2013, IEEE Communications Magazine.

[12]  Martín Casado,et al.  Rethinking enterprise network control , 2009, TNET.

[13]  Sam Hartman,et al.  Security Requirements in the Software Defined Networking Model , 2013 .

[14]  Andrew Warfield,et al.  Xen and the art of virtualization , 2003, SOSP '03.

[15]  Michael H. Kalantar,et al.  Weaver: Language and runtime for software defined environments , 2014, IBM J. Res. Dev..

[16]  Robert P. Goldberg,et al.  Formal requirements for virtualizable third generation architectures , 1973, SOSP 1973.

[17]  Yang Song,et al.  Efficient and agile storage management in software defined environments , 2014, IBM J. Res. Dev..

[18]  Simon Moser,et al.  Software defined environments based on TOSCA in IBM cloud implementations , 2014, IBM J. Res. Dev..

[19]  Gerald J. Popek,et al.  Formal requirements for virtualizable third generation architectures , 1974, SOSP '73.

[20]  Aameek Singh,et al.  Server-storage virtualization: integration and load balancing in data centers , 2008, HiPC 2008.

[21]  Asser N. Tantawi,et al.  Workload orchestration and optimization for software defined environments , 2014, IBM J. Res. Dev..