FACULTY OF INFORMATION AND COMMUNICATION TECHNOLOGY DCOMP 217 DISTRIBUTED SYSTEMS Title Issue Date Due Date Lecturer/Examiner Name of Student/s Student ID No. Class Semester/Year : Distributed Systems : week 4 : week 11 : Mr Kamara : Nour S. Haidara : 905003395 : BIT3101 : Semester Seven Academic Honesty Policy Statement I/We, hereby attest that contents of this attachment are my own work. Referenced works, articles, art, programs, papers or parts thereof are acknowledged at the end of this paper. This includes data excerpted from CD-ROMs, the Internet, other private networks, and other people’s disk of the computer system. Student’s Signature : LECTURER’S COMMMENTS/GRADE: Date: 12/5/2025 for office use only upon receive Remark DATE : TIME : RECEIVER’S NAME : 1 Contents Introduction: Background on the Selected Scenario: Netflix Content Delivery................. 2 Problem Statement ....................................................................................................................2 Objectives of a Distributed Solution (Netflix Open Connect) ..............................................3 Literature Review................................................................................................................ 4 Literature Review: Challenges in System Design and the Emergence of Distributed Solutions for Content Delivery .....................................................................................................................4 System Design .................................................................................................................... 8 Challenges of Existing Centralized Systems..................................................................................9 The Need for a Distributed Solution.......................................................................................... 10 Simulation Development .................................................................................................. 12 Technologies used and development methodology ................................................................. 12 Expected benefits ...................................................................................................................... 13 Final Report ...................................................................................................................... 13 Bibliography ..................................................................................................................... 15 2 Introduction: Background on the Selected Scenario: Netflix Content Delivery The scenario revolves around Netflix's global content delivery challenge, which became increasingly prominent with the massive growth in Netflix streaming since 2011. As Netflix became a significant portion of overall internet traffic, the traditional methods of content delivery faced considerable strain. The core problem was efficiently and reliably delivering high-quality video content to millions of members worldwide, across tens of thousands of device and network configurations. Initially, content delivery relied on a more centralized approach or independent Content Delivery Networks (CDNs), which involved content traveling long distances and through multiple networks. This "long haul" delivery model presented significant issues, including high costs for Internet Service Providers (ISPs) due to international infrastructure, increased latency, and a higher probability of network congestion and "packet loss," leading to a degraded user experience (e.g., buffering or lower video quality). The very essence of the internet, as a "network of networks," highlighted the need for cooperation between content providers and ISPs to ensure a seamless experience for the end-user. Problem Statement The central problem addressed by Netflix's Open Connect initiative is the inefficient and potentially unreliable delivery of high-volume video content to a globally distributed user base through a traditional internet infrastructure that was not designed to handle such scale and demand. More specifically, the key issues a non-distributed (or less distributed) system would face include: 3 Network Congestion and Packet Loss: When content is served from a distant, single source, it must traverse numerous routers and networks. This increases the chances of encountering congested links, leading to discarded data packets and a poor streaming experience. High Transit and Backhaul Costs for ISPs: ISPs incur significant expenses for long-haul and international network capacity to fetch content from remote origin servers. Suboptimal User Experience: Increased latency and buffering due to geographical distance and network inefficiencies directly impact the quality of experience for Netflix members. Lack of Scalability: A centralized delivery model struggles to scale economically and efficiently with the exponential growth of content consumption and user demand. Limited Control and Flexibility: ISPs have less control over how and when the large volume of Netflix traffic enters their networks, potentially leading to peak-hour bandwidth strain. Objectives of a Distributed Solution (Netflix Open Connect) To overcome these challenges, Netflix developed and implemented Open Connect, a highly distributed content delivery network, with the following primary objectives: 1. Localize Netflix Traffic: Bring Netflix TV shows and movies as close as possible to members, minimizing the network and geographical distances video bits must travel. This is achieved by deploying Open Connect Appliances (OCAs) directly within ISP networks or at Internet Exchange Points (IXPs). 2. Improve User Experience: Ensure members have a consistently highquality video experience from wherever they are in the world by reducing latency, buffering, and video quality degradation. 3. Enhance Network Efficiency for ISPs: Reduce transit charges and the need for expensive international backhaul capacity for ISP partners. By offloading Netflix traffic locally, Open Connect minimizes the burden on upstream network capacity. 4 4. Optimize Bandwidth Usage: Implement sophisticated video compression and encoding techniques to deliver high-quality content using the least amount of data, further reducing traffic across networks. 5. Increase Network Resilience and Reliability: By distributing content across thousands of OCAs, the system becomes more resilient to individual component failures, as traffic can be redirected to other available servers. 6. Foster Collaboration with ISPs: Work directly and collaboratively with ISPs to manage and optimize content delivery, benefiting both Netflix and its mutual customers. 7. Enable Proactive Content and Software Updates: Utilize off-peak fill windows to proactively download content and software updates to OCAs, preventing additional strain on network capacity during peak hours. Literature Review Literature Review: Challenges in System Design and the Emergence of Distributed Solutions for Content Delivery This literature review synthesizes key concepts and challenges in traditional system design, highlighting the imperative shift towards distributed solutions, particularly in the context of large-scale content delivery. Drawing insights from discussions on distributed systems characteristics and a specific case study of Netflix's Open Connect, this review identifies critical problems faced by centralized architectures and articulates how distributed paradigms provide effective resolutions. 1. Challenges of Traditional Centralized Systems Traditional, often monolithic or centralized, system architectures, while simpler to design and manage in smaller scales, face significant limitations when confronted with modern demands for global reach, high availability, and massive data throughput. Several inherent challenges make these systems increasingly untenable for large-scale applications: Heterogeneity: Modern computing environments are inherently diverse, comprising a myriad of hardware platforms, operating systems, 5 programming languages, and communication protocols. A centralized system struggles to seamlessly interoperate across this vast and evolving ecosystem, leading to compatibility issues and integration complexities. Concurrency Management: As user bases expand and simultaneous requests become the norm, managing concurrent access to shared resources within a single system becomes a substantial hurdle. Inadequate concurrency control can lead to data inconsistencies, deadlocks, and severe performance bottlenecks. Lack of Fault Tolerance: Centralized systems represent a single point of failure. The breakdown of a critical component, such as a server or a database, can render the entire system inoperable, leading to significant downtime and loss of service. This vulnerability underscores the need for architectures that can withstand partial failures without complete system collapse. Scalability Limitations: Scaling a centralized system to accommodate growing user numbers and increasing data volumes is often a non-linear and expensive process. Vertical scaling (upgrading existing hardware) has physical and economic limits, while horizontal scaling (adding more machines) is difficult to implement efficiently in a monolithic design. Consequently, performance degrades disproportionately with increased load. Performance and Latency Issues: For geographically dispersed users, content served from a distant central server incurs high network latency. Data must traverse numerous network hops, increasing transmission times and vulnerability to congestion. This leads to a degraded user experience, particularly for latency-sensitive applications like real-time communication or high-definition video streaming, where buffering and quality reduction become prevalent. Operational Costs: Maintaining an extensive, long-haul network infrastructure to connect distant users to a centralized data source is financially intensive for service providers. This includes costs associated with international transit and backhaul capacity. 6 Market Control and "Termination Monopoly": In scenarios involving content delivery, Internet Service Providers (ISPs) can exercise a "termination monopoly" over the last mile of content delivery to consumers. This allows for potential anti-competitive practices, such as "double-charging" content providers for traffic already paid for by endusers, or intentionally inducing congestion to coerce content providers into costly direct peering agreements. Such practices not only harm content providers but also limit consumer choice and degrade overall internet quality. 2. The Imperative for Distributed Solutions The inherent limitations of centralized systems have driven the widespread adoption of distributed computing paradigms. A distributed system, defined as a collection of independent computers that communicate and coordinate their actions solely by message passing, presents itself as a robust solution to the challenges. Key motivations for constructing distributed systems include: Enhanced Reliability and Availability: By distributing components and replicating data across multiple nodes, distributed systems can tolerate individual component failures without interrupting the entire service. This redundancy ensures high availability and resilience, crucial for missioncritical applications. Superior Scalability: Distributed architectures are designed for horizontal scaling, allowing for the seamless addition of more computing resources to handle increasing loads. This enables systems to expand efficiently and economically, ensuring sustained performance as demand grows. Improved Performance and Reduced Latency: By enabling parallel execution of tasks and the geographical distribution of resources and data, distributed systems can significantly reduce latency and improve overall system performance. This is particularly vital for delivering content and services to a global audience. Resource Sharing and Collaboration: Distributed systems inherently facilitate the sharing of physical and logical resources across a network. They also enable collaborative work and the natural distribution of 7 information, fostering efficiency and innovation across diverse user groups. Transparency: A well-designed distributed system aims to provide various forms of transparency (e.g., access, location, failure, concurrency, replication, migration, performance, scaling) to users and developers, making the underlying distribution largely invisible and simplifying interaction. 3. Content Delivery Networks (CDNs) as a Distributed Solution: The Netflix Open Connect Model Content Delivery Networks (CDNs) represent a prominent application of distributed systems principles, specifically addressing the challenges of largescale content distribution. Netflix's Open Connect exemplifies a highly evolved, purpose-built CDN that directly tackles the problems identified with traditional content delivery: Localized Traffic Delivery: Open Connect strategically deploys "Open Connect Appliances" (OCAs)—purpose-built servers—at Internet Exchange Points (IXPs) and directly within ISP networks worldwide. This brings Netflix's extensive content catalog geographically closer to its members, drastically reducing the "network and geographical distances that video bits must travel." Optimized User Experience: By localizing content, Open Connect minimizes latency and the risk of network congestion and packet loss. This translates directly to a consistently high-quality video streaming experience for Netflix members, characterized by less buffering and higher resolutions. Significant Cost Savings for ISPs: The cooperative model, with Netflix providing OCAs free of charge to ISPs, eliminates or significantly reduces the transit charges ISPs would otherwise incur for fetching content over long distances. This localized traffic offloads a substantial burden from ISP backbone networks, contributing to overall internet efficiency. Bandwidth Efficiency: Beyond physical proximity, Netflix employs advanced video compression and encoding techniques. These innovations 8 ensure that high-quality video streams consume the least possible amount of data, further optimizing bandwidth usage across the entire network. Increased Resilience and Availability: The distributed nature of thousands of OCAs across 142 countries ensures high availability. If one OCA or network path experiences an issue, client devices can be seamlessly steered to an optimal alternative, guaranteeing uninterrupted service. Proactive Content Updates: Netflix leverages predictive algorithms to preposition content and software updates to OCAs during off-peak hours. This proactive caching minimizes bandwidth strain during peak usage times and ensures that popular content is readily available. Collaborative Partnership: Open Connect embodies a cooperative approach between content providers and ISPs. By directly engaging with ISPs and offering solutions that mutually benefit both parties (improved quality for consumers, cost savings for ISPs), it promotes a sustainable ecosystem for online content delivery. Conclusion The evolution of digital services, characterized by exponential growth in user numbers and data volumes, has exposed critical vulnerabilities and inefficiencies in traditional centralized system architectures. The shift towards distributed systems is not merely a technological trend but a fundamental necessity for achieving the reliability, scalability, performance, and cost-effectiveness required by modern applications. Content Delivery Networks, as exemplified by Netflix's Open Connect, stand as a testament to the power of distributed computing in addressing complex, real-world challenges, transforming the landscape of global content delivery, and fostering a more efficient and resilient internet ecosystem. System Design Existing systems face several challenges that highlight the critical need for distributed solutions. These challenges can be broadly categorized and are addressed by the principles and practical implementations of distributed computing. 9 Fig1:System Architecture for the Netflix CDN Challenges of Existing Centralized Systems Based on the provided documents, the challenges of traditional, often centralized, systems include: Heterogeneity: Systems must cope with diverse hardware, operating systems, communication architectures, programming languages, software interfaces, security measures, and information representations. Ensuring interoperability across these varied components is a significant challenge for non-distributed systems. Concurrency: In systems where multiple users or processes access shared resources, managing simultaneous requests without conflicts is complex and critical for proper functioning. Fault Tolerance: A single point of failure in a centralized system can lead to the entire system crashing. Traditional systems struggle to ensure that the failure of one component does not bring down the whole system. Scalability: As the number of users or the volume of data grows, traditional systems often struggle to maintain efficiency and performance. Scaling up a centralized system can be costly and complex. 10 Performance and Latency: When content or services are located far from the end-user, data must travel through many networks and routers, leading to increased delays (latency) and potential congestion. This can result in a poor user experience, especially for demanding applications like video streaming. Cost of Infrastructure: Building and maintaining international networks for content delivery, especially over long distances, is expensive. "Termination Monopoly": Internet Service Providers (ISPs) can exert control over traffic delivery to consumers within their networks. This can lead to potential issues like "double-charging" content providers for traffic their customers have already paid for or creating perverse incentives where ISPs might allow congestion to force content providers to pay for direct connections. fig2:Termination Monopoly (reduces cost) The Need for a Distributed Solution Distributed systems offer solutions to these challenges by leveraging multiple interconnected computers to work cooperatively. The benefits and reasons for adopting distributed solutions include: Enhanced Reliability and Availability: By replicating data and services across different locations, distributed systems can ensure long-term 11 preservation and data backup. If one component fails, others can continue to operate, preventing system-wide outages. Improved Scalability: Distributed systems are inherently designed to handle increasing loads and users by distributing computational tasks and allowing for the addition of more resources. This makes them more efficient and responsive to growing demand. Increased Performance through Content Proximity: Solutions like Content Delivery Networks (CDNs), which are distributed networks of local servers, move content closer to consumers. This significantly reduces geographic distance, minimizes the number of routers data must traverse, and alleviates congestion, leading to better delivery times and a higher quality of experience for users. Fig3: Transit (improves scalability, performance, and reliability) Cost Efficiency: By moving content closer to consumers, CDNs can reduce the transit costs for ISPs, enabling more efficient delivery traffic and 12 potentially freeing up long-haul network infrastructure for other critical services. Transparency: Distributed systems aim to hide the complexities of distribution from users and application programmers, making the system appear as a single, coherent entity. This includes transparency in access, location, failures, replication, migration, concurrency, and performance. Resource Sharing and Collaboration: Distributed systems facilitate sharing resources like printers and databases among many users, reducing ownership costs. They also enable collaborative work and the inherent distribution of information across different individuals and locations. Handling Increased Demand: As demonstrated during the COVID-19 pandemic, distributed solutions like CDNs were crucial in helping internet networks adapt to massively increased loads and meet the demand for high-speed broadband and online services. In summary, the limitations of centralized systems in handling heterogeneity, ensuring reliability, scaling efficiently, and providing optimal performance, especially in content delivery, necessitate the adoption of distributed solutions. These solutions, exemplified by CDNs like Netflix's Open Connect, provide a robust, scalable, and efficient framework for modern internet services. Simulation Development Technologies used and development methodology For the simulation of a content delivery network, I used Cisco Packet Tracer to draw the topologies, to configure the ports and the interfaces allowing connecting connectivity, cost reduction, security and scalability within the network, hence enhancing the performance of the overall network. To complete the configurations, I drew inspiration from Cisco’s online resources and YouTube tutorial videos. For the security of the system, I configured an ASA server which acts as a firewall within the Netflix network to protect it from outside threats. I implemented technologies such as DMZ, AAA, SSH, VLAN segmentation, NAT, ACL, inspection policy and address translation. The DMZ serves to protect (by creating a buffer zone) Netflix’s internal network from public facing services like the services of the Point of Presence server. The AAA allows the identification 13 and the filtering of network’s inner workings base on privacy levels. The SSH in this case will encrypt any data that is transmitted within network. The content is encrypted using symmetric encryption algorithms such as AES where the public and private keys are the same. Hence it will allow faster transmission of the cryptogram and enhance performance. The NAT will create a common IP address for connecting multiple devices to a network hence, so ensuring the privacy of the individual IP addresses on the individual devices. The inspection policy will in turn act as a standardizing blueprint for the network. Identifying areas of improvements and managing risks efficiently. For where the Netflix server communicates with a ISP’s Server for respond to a user’s content request we implemented a reverse proxy server technology. A reverse proxy is a server that sits in front of one or more web servers, intercepting requests from clients and forwarding them to the appropriate web servers. This setup is different from a forward proxy, which sits in front of clients and forwards their requests to web servers. Expected benefits Load balancing Caching Layered security Optimized performance Scalability Final Report Netflix faced significant challenges in delivering high-quality video content to a global audience due to the limitations of traditional, centralized content delivery systems. These systems struggled with issues such as network congestion, high latency, scalability limitations, fault tolerance, and high operational costs. The growing demand for seamless streaming required a more efficient, scalable, and resilient solution. To address these challenges, Netflix developed Open Connect, a highly distributed Content Delivery Network (CDN). This system deploys Open Connect Appliances (OCAs) in strategic global locations, such as Internet 14 Exchange Points (IXPs) and within ISP networks, to bring content closer to end users. Key benefits of the distributed solution include: Enhanced User Experience: Reduced latency and buffering, improving video quality. Cost Efficiency for ISPs: Minimizing transit and backhaul costs. Scalability: Seamless horizontal scaling to meet increasing demand. Reliability and Fault Tolerance: High availability due to distributed architecture. Security: Implementation of advanced network security techniques (ASA firewall, DMZ, AAA, SSH, NAT, ACL). Collaboration with ISPs: A mutually beneficial model supporting ISP networks. The project also involved simulation using Cisco Packet Tracer, demonstrating configurations that enhance security, performance, and scalability through technologies like firewalls, VLAN segmentation, NAT, and reverse proxy servers. Overall, Netflix Open Connect exemplifies how distributed systems can efficiently address the limitations of centralized models, ensuring superior content delivery and user satisfaction. 15 Bibliography Bilha, T., 2025. Distributed Systems Chapter 1 , Gaborone, Botswana: LUCT. Buyya, K. P. a. R., 2007. [Online] Available at: http://www.hit.bme.hu/~jakab/edu/litr/CDN/CDN-Taxonomy.pdf [Accessed 2025]. Netflix, 2025. Open Connect. [Online] Available at: https://openconnect.netflix.com/en/ [Accessed 1 June 2025].what Pallis, A. V. a. G., 2003. "Content delivery networks: status and trends,". In: Internet Computing. s.l.:IEEE.
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )