Flexibility and responsiveness is essential for Internet as a system. Without proper procedures for maintenance and without auditability, a system cannot be expected to be secure and reliable. Internet should be made responsive to changing conditions, support efficient deployment of upgrades, particularly in the event of disastrous system failure, performance degradation, changes in workload, or conditions of crisis etc., as advocated by the NGI Interim Study report. The systems should also be equipped with periodic self-test procedures in order to check the system’s integration and immunity against various malicious attacks.
Deployability means that it should be possible to easily distribute and combine new technologies in order to deploy them. A shared delivery methodology for software produced for and required by the NGI will allow the user to easily and instantly switch back and forth between different versions of both software and dependencies. It would also create a shared workflow across all of the NGI projects where one may consistently apply best practices such as continuous integration, code fuzzing and the creation of integrated test suites. The results and failures, as well as collisions across projects, for instance when two projects are working on incompatible patches to an operating system kernel in exactly the same place, would become immediately visible to anyone. These are but a few starting points, the overall goal is to converge systems and to create the distributed capability to make appropriate near-runtime modifications in the event of catastrophic system failure, degradation of performance, change in workload, and conditions of crisis.
NGI Interim and final reports recognize the need for R&D efforts to be deployable and maintainable in the context of actual Internet environment. A successful approach for NGI would be to create a universal and reliable path to automatable deployment even during development. The aim would be having a coordinated approach to get the needed deployments and upgrades on the Next Generation Internet by using realistic transition mechanisms, solving scalability issues, collecting feedback by real time data gathering, and encouraging the right network equipment upgrade capabilities and emergency response procedures. The goal is to ensure resilience, reliability, trustworthiness and sustainability of the NGI. The benefits of a maintainable Internet and increased deployability of NGI projects are-
- With a coordinated deployment strategy comes increased reusability of efforts and sharing of knowledge arises and beyond projects. Without that, there is a risk that NGI projects would not benefit from each other’s results, and not able to deal with overarching issues.
- Lower costs at the project level by shared infrastructure and setups, otherwise subprojects inside NGI will each invent different quality procedures and delivery.
- Prolonged unavailability cannot be prevented due to lack of a shared upgrade mechanism across NGI subproject. Thus a coordinated upgrade strategy will increase the efficiency of the overall infrastructure.
- Increase responsiveness and availability of the Internet
- Lower cost of deployment for users