CSC481 · TU past paper
Introduction to Cloud Computing 2080 question paper
The complete TU 2080 exam paper for Introduction to Cloud Computing (CSC481), all 12 questions with solved model answers written to the mark scheme.
Tap a question to open its answer.
- 110 marksTypes of cloud and its Cloud servicesHideAnswer
What is cloud computing? Describe cloud service models?[10]
Cloud Computing and Cloud Service Models
Part 1: What is Cloud Computing? (4 marks)
Cloud computing is the delivery of computing resources -- including hardware, software, storage, networks, and interfaces -- over the Internet as managed third-party services, rather than maintaining them locally on personal computers or on-premises servers.
As stated in the notes: "The Cloud in cloud computing is a set of hardware, Network, storage, interfaces etc. that enable the delivery of computing as service."
The term "cloud" is used as a metaphor for the Internet. When users access cloud services, they are essentially connecting to a network of servers located in data centers around the world.
Key Characteristics of Cloud Computing
Characteristic Description On-Demand Service Users can arrange computing resources (processing, storage, applications) without human intervention, according to their need. Broad Network Access Services are accessible over the Internet and can be accessed by various devices from anywhere. Measured Service Services follow a pay-per-use pricing model; users are charged based on actual consumption of resources such as storage, bandwidth, or processing time. Scalable Architecture Users can scale up hardware, storage, and other requirements according to time and need to handle increased workloads. Location Independent Cloud services can be accessed from anywhere with an internet connection. Security and Data Protection Cloud providers employ robust security measures to protect data and ensure user privacy. Brief History
- 1999: Salesforce.com introduced the concept of delivering enterprise applications via a simple website.
- 2006: Amazon Web Services (AWS) provided cloud-based services including storage and computation; Amazon launched Elastic Compute Cloud (EC2).
- 2009: Google and others offered browser-based enterprise applications (e.g., Google Apps); mature virtualization technologies changed the cloud landscape.
Part 2: Cloud Service Models (6 marks)
Cloud service models define what type of service is delivered to the user. There are three primary cloud service models:
1. Infrastructure as a Service (IaaS)
Definition: IaaS provides virtualized computing infrastructure -- such as virtual machines, storage, and networking -- over the Internet. The user manages the operating system, middleware, and applications, while the provider manages the underlying physical hardware.
Key Features:
- Provides raw computing resources (servers, storage, networking)
- Users have maximum control over the infrastructure
- Highly scalable and flexible
- Billed on a pay-per-use basis
Examples:
- Amazon EC2 (Elastic Compute Cloud)
- Microsoft Azure Virtual Machines
- Google Compute Engine
Use Case: A company that wants to run its own custom applications without purchasing physical servers uses IaaS to rent virtual servers from a cloud provider.
2. Platform as a Service (PaaS)
Definition: PaaS provides a platform and environment that allows developers to build, test, deploy, and manage applications without worrying about the underlying infrastructure (hardware or operating systems). The provider manages the infrastructure and runtime environment.
Key Features:
- Provides development tools, databases, middleware, and runtime environments
- Developers focus only on writing code and deploying applications
- Reduces complexity of managing infrastructure
- Supports the full application development lifecycle
Examples:
- Google App Engine
- Microsoft Azure App Service
- Heroku
Use Case: A software development team uses PaaS to develop and deploy a web application without managing servers or operating systems.
3. Software as a Service (SaaS)
Definition: SaaS delivers ready-to-use software applications over the Internet on a subscription basis. Users access the application through a web browser without installing or maintaining any software locally.
Key Features:
- No installation or maintenance required by the user
- Accessible from any device with an internet connection
- Provider manages everything: infrastructure, platform, and application
- Typically subscription-based pricing
Examples:
- Salesforce (CRM)
- Google Workspace (Gmail, Google Docs)
- Microsoft Office 365
- Zoom
Use Case: A business uses Gmail (SaaS) for email communication without managing any email servers or software installations.
Comparison of Cloud Service Models
User Manages: IaaS --> OS, Middleware, Runtime, Applications PaaS --> Applications only SaaS --> Nothing (only uses the software) Provider Manages: IaaS --> Hardware, Networking, Virtualization PaaS --> Hardware, Networking, OS, Middleware, Runtime SaaS --> EverythingFeature IaaS PaaS SaaS Control High Medium Low Flexibility High Medium Low Ease of Use Low Medium High Managed By User OS + Apps Apps only Nothing Example AWS EC2 Google App Engine Gmail
Summary
Cloud computing enables on-demand delivery of IT resources over the Internet with pay-per-use pricing. Its three service models -- IaaS, PaaS, and SaaS -- represent increasing levels of abstraction and ease of use, allowing organizations to choose the model that best fits their technical needs and business goals. Together, these models form the foundation of modern cloud-based IT infrastructure.
- 210 marksThread programmingHideAnswer
What is thread? Why multi-threading is used? Describe how thread programming is done in cloud.[10]
--- A thread is the smallest unit of execution within a process. It is a lightweight sub-process that shares the same memory space and resources (such as code, data, and files) of its parent process but executes independently. Multiple t...
- 310 marksImplementation Levels of Virtualization StHideAnswer
Discuss different implementation levels of virtualization. What are the benefits of virtualization?[10]
Virtualization in cloud computing refers to the technique of creating virtual versions or representations of various computing resources, such as servers, storage devices, networks, and operating systems. It involves abstracting the phys...
- 45 marksBenefits and challenges of cloud computingHideAnswer
What are the major advantages of cloud computing? [5]
Cloud computing offers several significant advantages to individuals and organizations. The major advantages are described below: --- Users can arrange and access computing resources such as processing power, storage, and applications wi...
- 55 marksCloud design and implementation using SOA,HideAnswer
Explain the role of SOA while developing cloud applications. [5]
Service-Oriented Architecture (SOA) is an architectural style for designing and developing software systems where functionality is grouped into interoperable, loosely coupled, and reusable units called services. Each service performs a s...
- 65 marksLoad balancingHideAnswer
What is load balancing? How is load balancing done? [5]
Load Balancing
Definition
Load balancing refers to the process of distributing a set of tasks over a set of resources with the aim of making their overall processing more efficient. It optimizes the response time and avoids unevenly overloading some compute nodes while other nodes are left idle. In the context of networking and cloud computing, it refers to distributing incoming network traffic across a group of backend servers.
How Load Balancing is Done
Load balancing is typically performed using the following approaches and techniques:
1. Load Balancer (Hardware/Software)
A dedicated load balancer sits between the client and the backend server pool. It receives all incoming requests and forwards them to an appropriate server based on a chosen algorithm.
Client Requests | [Load Balancer] / | \ [S1] [S2] [S3] <-- Backend Servers2. Common Load Balancing Algorithms
Algorithm Description Round Robin Requests are distributed to each server in turn, one after another Least Connection New request is sent to the server with the fewest active connections IP Hash Client IP address is used to determine which server receives the request Weighted Round Robin Servers with higher capacity are assigned more requests proportionally Random Requests are assigned to servers randomly 3. Health Monitoring
The load balancer continuously monitors the health of backend servers. If a server goes down or becomes unresponsive, the load balancer stops sending traffic to it and redirects requests to healthy servers.
4. Session Persistence (Sticky Sessions)
In some cases, the load balancer ensures that a particular client is always directed to the same server during a session, maintaining session continuity.
5. DNS-Based Load Balancing
Multiple IP addresses are associated with a single domain name. DNS resolves the domain to different IPs for different clients, distributing the load geographically.
Benefits of Load Balancing
- Improves response time and performance
- Prevents any single server from becoming a bottleneck
- Provides high availability and fault tolerance
- Enables scalability by adding more servers to the pool
- Keeps idle nodes from wasting resources
Summary: Load balancing distributes workloads evenly across multiple servers using algorithms like Round Robin or Least Connection, managed by a load balancer, ensuring efficiency, reliability, and optimal resource utilization.
- 75 marksCloud Security issues, challenges and RiskHideAnswer
What are the challenges and risk in cloud security? [5]
Cloud security involves protecting data, applications, and infrastructure hosted in cloud environments. The following are the key challenges and risks: --- Unauthorized access to sensitive data stored in the cloud is a significant concer...
- 85 marksData and application SecurityHideAnswer
How data and application security is enforced in cloud? [5]
When organizations move to the cloud, ensuring the security of both data and applications becomes a critical concern. Cloud security must be incorporated into the architectural design from the ground up, covering data at every stage of i...
- 95 marksInfrastructure as serviceHideAnswer
Describe Amazon EC2 and its features. [5]
Amazon Elastic Compute Cloud (EC2) is a commercial web service launched by Amazon in 2006 as part of Amazon Web Services (AWS). It allows users to rent computer systems online to run their computer applications. EC2 is a foundational exa...
- 105 marksAppEngineHideAnswer
Discuss the core components of AppEngine. [5]
AppEngine (Google App Engine / GAE) is a cloud computing Platform as a Service (PaaS) that allows developers to create and run web applications on Google-managed data centers. It supports multiple languages including Go, PHP, Java, Pytho...
- 115 marksAzures PlatformHideAnswer
Explain the storage services provided by Windows Azure. [5]
Windows Azure (now known as Microsoft Azure Platform) is a public cloud computing platform developed by Microsoft that provides IaaS, PaaS, and SaaS solutions including storage, networking, analytics, and virtual computing. Azure offers ...
- 125 marksBusiness and Consumer applicationsHideAnswer
Mention how business and scientific applications can be benefited from cloud computing. [5]
Benefits of Cloud Computing for Business and Scientific Applications
Business Applications
Cloud computing provides significant advantages for modern business organizations:
1. 24/7 Availability and Accessibility Every organization requires cloud business applications to grow their business and ensure services are available 24*7 to their users. Tools like Mailchimp, Salesforce, Slack, and PayPal demonstrate how businesses rely on cloud platforms for continuous operations.
2. Cost Effectiveness (Pay-Per-Use Model) Cloud computing services are offered on a pay-per-use or usage-based pricing model. Businesses are charged only based on their actual consumption of resources such as storage, bandwidth, or processing time. This eliminates the need for heavy upfront investment in hardware and infrastructure.
3. Scalable Business Operations Businesses can scale up hardware, storage, and other requirements according to time and need. During peak business periods (e.g., festive sales), resources can be increased instantly and reduced afterward, ensuring cost optimization.
4. Software and Application Access Businesses can utilize commercial software applications or develop and remotely host custom-built applications without maintaining local servers. This supports functions like marketing, customer relationship management (CRM), and payment processing.
5. Data Storage and Backup Cloud computing allows businesses to store information on the cloud and access it using the internet at any time. Services like Google Workspace, Box.com, and Mozy ensure data is backed up securely and is always accessible.
Scientific Applications
Cloud computing equally benefits research and scientific communities:
1. Access to High-End Computing Resources Cloud services provide access to advanced software applications and high-end networks of server computers. Scientists can perform complex computations (e.g., simulations, data modeling) without owning expensive supercomputers.
2. On-Demand Processing Power Scientists can demand processing power and storage according to their need without human intervention. Large-scale scientific experiments (e.g., genomics, climate modeling) that require massive computation can be run on-demand.
3. Virtual IT Infrastructure Cloud computing allows researchers to configure and utilize remote third-party servers as extensions to their local IT network. This means research institutions can run experiments remotely without physical infrastructure constraints.
4. Collaboration and Broad Network Access Cloud services are accessible over the internet from anywhere and from various devices. This enables global scientific collaboration, allowing researchers from different locations to share data, tools, and results in real time.
5. Network Storage for Research Data Scientists can backup or archive large volumes of research data across the internet to a provider without needing to know the physical location of storage. This is critical for managing big data generated in fields like astronomy, bioinformatics, and physics.
Summary Table
Feature Business Benefit Scientific Benefit Pay-per-use Reduces IT costs Affordable HPC access Scalability Handles business growth Scales for large experiments Storage Data backup and CRM Research data archiving Accessibility 24/7 service availability Global collaboration Virtual IT Custom app hosting Remote server usage In conclusion, cloud computing transforms both business and scientific domains by providing flexible, cost-effective, and powerful computing resources over the internet, eliminating the need for expensive local infrastructure.