0% found this document useful (0 votes)
6 views

module-1-introduction-to-distributed-net-centric-s_250203_025051

The document provides an introduction to distributed and net-centric systems, outlining their definitions, characteristics, motivations, and applications. It covers key aspects such as transparency, scalability, reliability, and fault tolerance, along with examples from cloud computing, peer-to-peer networks, and IoT. Additionally, it discusses career opportunities in net-centric computing and highlights the importance of security in these systems.

Uploaded by

yadakdavid67
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

module-1-introduction-to-distributed-net-centric-s_250203_025051

The document provides an introduction to distributed and net-centric systems, outlining their definitions, characteristics, motivations, and applications. It covers key aspects such as transparency, scalability, reliability, and fault tolerance, along with examples from cloud computing, peer-to-peer networks, and IoT. Additionally, it discusses career opportunities in net-centric computing and highlights the importance of security in these systems.

Uploaded by

yadakdavid67
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

INTRODUCTION TO DISTRIBUTED / NET-CENTRIC SYSTEMS

Learning Outcomes
By the end of this lecture, students will:
1. Gain a clear understanding of distributed systems and net-centric computing,
including their definitions, roles, architectures, and applications.
2. Explain the key characteristics of distributed systems, such as transparency,
scalability, reliability, concurrency, and fault tolerance.
3. Articulate the motivations and benefits of distributed computing, including
resource sharing, flexibility, modularity, scalability, and performance
enhancements.
4. Identify and discuss examples of distributed systems and net-centric computing
applications in domains like cloud computing, peer-to-peer networks, and IoT.
5. Explore career opportunities and the skills required for roles in net-centric
computing, including security solutions and architectural design.

1. Introduction to Distributed Systems


A distributed system is a collection of independent computers that appears to its users as
a single coherent system. These computers communicate and coordinate their actions
through a network to achieve a common goal. Examples include cloud services,
multiplayer online games, and e-commerce platforms.

Key Characteristics of Distributed Systems


1. Transparency:
✓ Access Transparency: Users interact with the system without worrying
about where resources are located.
✓ Location Transparency: Resources appear to be in the same location
regardless of their actual physical location.
✓ Replication Transparency: Users are unaware of data replication for
reliability or performance improvement.
✓ Concurrency Transparency: Multiple users can access the system
simultaneously without interference.
✓ Failure Transparency: The system continues to operate seamlessly even
when some components fail.
2. Scalability: Distributed systems can scale horizontally (adding more machines) or
vertically (upgrading hardware) to handle increased workload.
3. Reliability: Systems ensure continuous operation by implementing fault-tolerant
mechanisms, such as data replication and failover systems.
4. Concurrency: Multiple operations can occur simultaneously without compromising
system performance or data integrity.
5. Fault Tolerance: The ability to recover gracefully from partial failures and ensure
the system remains functional.

1
Motivations for Distributed Computing
1. Resource Sharing: Enables access to shared resources, such as files, databases,
and printers, across multiple systems.
2. Flexibility: Allows seamless integration of heterogeneous systems and adaptability
to changing requirements.
3. Modularity: Promotes breaking down large systems into smaller, manageable
components that can be developed and maintained independently.
4. Scalability: Facilitates the growth of applications and systems to accommodate
increasing user demands.
5. Performance: Distributed systems often provide faster processing by dividing
tasks across multiple machines, enabling parallel execution.

2. Introduction to Net-Centric Computing


• Definition: NCC is a distributed environment where applications and data are
downloaded from servers and exchanged with peers over a network, emphasizing
communication through open, wide-area networks like the Internet.
• Importance: It represents an evolution of client/server computing, enabling
collaboration, flexibility, and access to diverse information sources.
• Applications: World Wide Web, Computational Grids, IoT systems.

Subject Areas in Net-Centric Computing

Examples of Distributed / Net-centric Systems

Peer-to-Peer
Cloud Internet of
(P2P)
Computing: Things (IoT):
Networks:
Provides on-demand
Systems where nodes A network of
access to computing
act as both clients and interconnected
resources, such as
servers, sharing devices that collect
servers and storage,
resources directly. and exchange data.
over the Internet.

Examples: Amazon Examples: Smart


Web Services (AWS), Examples: BitTorrent, homes, connected
Google Cloud Platform blockchain networks. cars, and industrial
(GCP). IoT systems.

2
A. Web Applications
• Definition: Application software running on a web server accessed via a browser
with an active network connection.
• Components: Web server, application server, and database.
• Typical Workflow:
1. User sends a request through a browser.
2. Web server forwards the request to the application server.
3. Application server processes the request and interacts with the database.
4. Results are sent back to the web server.
5. Browser displays the response.
Development
• Front-End: Client-side development using HTML, CSS, and JavaScript.
• Back-End: Server-side programming with Python, Java, or Ruby.
Design
• User Interface (UI): Focuses on the look and feel.
• User Experience (UX): Enhances ease of use and satisfaction.
Security
Common threats include:
• SQL Injection (SQLi)
• Cross-Site Scripting (XSS)
• Denial of Service (DoS/DDoS)
Mitigation strategies: Encryption, authentication, and vulnerability patches

B. Cloud Computing
Introduction
Cloud computing provides services like storage, processing, and applications over the
Internet without user management of underlying infrastructure.
Types of Clouds
1. Public Cloud: Shared services like Microsoft Azure.
2. Private Cloud: Exclusive use within an organization.
3. Hybrid Cloud: Combines public and private features.
Service Models
1. Infrastructure as a Service (IaaS): On-demand access to hardware resources.
2. Software as a Service (SaaS): Access to software over the Internet.

3
3. Platform as a Service (PaaS): Tools for software development.

C. Semantic Web
Introduction
The Semantic Web enhances the existing Web by making data machine-understandable.
Role of Ontology
Ontologies structure data to make it interoperable and reusable across systems.
Supporting Languages
1. RDF: Resource Description Framework for data linking.
2. SPARQL: Query language for RDF data.
3. OWL: Web Ontology Language for logic-based descriptions.

Careers in Net-Centric Computing


1. Network Administrator
• Maintains and secures network infrastructure.
• Requires IT-related qualifications.
• Average Salary: $60,414 (U.S.).
2. Network Engineer
• Designs and implements networks.
• Requires advanced knowledge in networking and IT systems.
• Average Salary: $71,596 (U.S.).
3. Web Application Developer
• Develops and maintains web applications.
• Requires programming skills in front-end and back-end technologies.
• Average Salary: $81,840 (U.S.).

Security in Net-Centric Systems


• Challenges: SQL injection, DDoS attacks, Cross-site scripting.
• Solutions:
o Use of encryption.
o Regular patching.
o Secure API design.

4
Discussion Questions
1. What is Net-Centric Computing, and how does it differ from traditional
client/server computing?
2. Describe the roles of web servers, application servers, and databases in a web
application.
3. Compare and contrast the architectural models of distributed systems.
4. Discuss the advantages and disadvantages of public, private, and hybrid clouds.
5. What is the significance of ontologies in the Semantic Web?
6. How do distributed systems differ from traditional centralized systems?
7. What is the role of transparency in the usability of distributed systems?
8. Discuss the impact of fault tolerance on the reliability of distributed systems.
9. Provide examples of how scalability is achieved in distributed systems.
10. Identify real-world scenarios where distributed computing provides a clear
advantage over centralized computing.

Assessment Questions
Multiple Choice Questions
1. Which of the following is NOT a component of a web application?
a) Web server
b) Application server
c) Compiler
d) Database
Answer: c) Compiler
2. What is the main purpose of the Semantic Web?
a) Improve hardware communication.
b) Make network data machine-readable.
c) Transform web content into a machine-understandable format.
d) Reduce server load.
Answer: c) Transform web content into a machine-understandable format.

Short Answer Questions


1. Explain the role of IaaS in cloud computing.
Answer: IaaS allows users to rent IT infrastructure, such as servers and storage,
on a pay-as-you-go basis, providing scalability and cost efficiency.
2. List three common types of attacks against web applications and suggest one
mitigation strategy for each.
Answer:
o XSS: Sanitize user inputs.
o SQL Injection: Use prepared statements.

5
o DDoS: Implement load balancers and rate-limiting.
Essay Question
1. Discuss the role of Net-Centric Computing in modern distributed systems and its
impact on industries such as healthcare and finance.

Key Takeaways

• Net-Centric Computing integrates distributed environments and modern


technology to revolutionize industries.

• Security and efficient design are critical for ensuring the reliability of Net-Centric
systems.

• Career opportunities in NCC are vast, offering roles in network management,


engineering, and application development.Key Takeaways

• Distributed systems integrate multiple independent components to appear as a


single coherent system.

• Characteristics like transparency, scalability, and fault tolerance are essential for
the efficient functioning of distributed systems.

• Distributed computing is motivated by the need for resource sharing, flexibility,


modularity, scalability, and enhanced performance.

• Examples like cloud computing, peer-to-peer networks, and IoT showcase the
practical applications of distributed systems in modern technology.

Further Reading
• Books:
o "Distributed Systems: Principles and Paradigms" by Andrew S.
Tanenbaum.
o "Cloud Computing: Concepts, Technology & Architecture" by Thomas Erl.
• Web Resources:
o www.w3.org for Semantic Web technologies.
o www.coursera.org for courses on Cloud Computing and Distributed
Systems.

You might also like