The document summarizes key concepts relating to networking models and applications. It discusses centralized, decentralized, and distributed network models, and how they differ in their structure and ownership of resources. It also covers client-server and peer-to-peer network architectures, describing clients as devices that request services from servers, which provide and manage shared resources. Specific examples like file sharing, content distribution networks, and web-based applications are mentioned.
The document summarizes key concepts relating to networking models and applications. It discusses centralized, decentralized, and distributed network models, and how they differ in their structure and ownership of resources. It also covers client-server and peer-to-peer network architectures, describing clients as devices that request services from servers, which provide and manage shared resources. Specific examples like file sharing, content distribution networks, and web-based applications are mentioned.
Applications: Dr. SHUCHITA UPADHYAYA BHASIN Professor Department of Computer Science & Applications CONTENTS
• Centralized, Decentralized, and Distributed
• Client-Server and Peer-to-Peer • File sharing & Web- based • Content Distribution Networks
By Dr. Shuchita Upadhyaya Bhasin
DECENTRALIZED CENTRALIZED • In a decentralized network, there are multiple In a centralized network, all users connect to a centralized owners who own a copy of the specific server. resource/information. If a server crashes, another owner/server could provide that data because he The server then stores data, gives access to holds the exact replica of the resource. information or updates it. • Decentralization may however result in duplication The most basic scenario is a webserver. Users of data, which can lead to data inconsistencies connect to this server via a website and interact within an organization. Decentralization can also be with it. expensive in terms of increased costs for hardware, Pros: maintenance, support, and operation since each department in an organization has its own system. Easy to setup • A decentralised system is a system in which lower Easy maintainable level components operate on local information to Easy to use for developers accomplish global goals. Cons: Pros: If the server crashes, the system is not Increased performance in comparison with centralized available systems, because servers could be placed all over the Security risks world Fail-safety Latency problems for users who want to connect to a server that is far away. For Cons: Maintenance costs example, a user that connects from the USA to Security risks a webserver to Europe normally has long loading times.
By Dr. Shuchita Upadhyaya Bhasin
Distributed Networks
• A distributed network takes the
decentralized system to the next level. • There are no more centralized owners. Now, everyone could get a copy of the resource if he wants to. • In addition to that, everyone has equal access to data, but user privileges can be enabled if needed. Pros: Transparent Secure Scalable Fail-safety Cons: Hard to develop Maintenance costs
By Dr. Shuchita Upadhyaya Bhasin
CLIENT-SERVER Client–server model of computing is a distributed application structure that partitions tasks or workloads between service providers, called servers, and service requesters, called clients. Often clients and servers communicate over a computer network on separate hardware, but both client and server may reside in the same system also. A server machine is a host that is running one or more server programs which share its resources with clients. Servers are powerful computers or processes dedicated to managing disk drives (file servers), printers (print servers), or network traffic (network servers). A client does not share any of its resources, but requests a server's content or service function. Clients therefore initiate communication sessions with servers which await Central data management: Data is stored on a (listen to) incoming requests. server, which can be used or manipulated from different clients. Clients are PCs or workstations on which users run applications. Clients rely on servers for resources, such as files, devices, and even processing Specific types of servers include web servers, power. ftp servers, application servers, database Server: As a provider of services the server must compute requests and servers, name servers, mail servers, file has to return the results. The decision to outsource a service from an servers, print servers, and terminal servers. application in the form of a server can have different reasons:
By Dr. Shuchita Upadhyaya Bhasin
Client: • Thin clients have a specialized operating system and are usually • A client is typically a device or a process diskless (no hard disk for local storage). which uses the service of one or more • They use the network to access their applications dynamically. servers. • For example, if you need a word processor, a copy of a word • Since clients are often the interface processing application is downloaded from an application between server-information and people, service provider’s network server to your NC (thin client) and clients are designed for information stored in the NC’s memory (RAM). input and visualization of information. • Any documents you create are uploaded to and saved on the • Early clients had only the task to display ASP’s server. the application that was running on the server and to forward inputs of the user • The idea behind thin client technology is to offer businesses or to the server. All computations were/are organizations a tremendous reduction in cost. done on the server. Such a system is • By incorporating a massive server, or server “farm”, with user known as a thin client and the concept NCs, companies can save money compared with purchasing fully is known as thin client computing. loaded PCs for each user and dealing with their management • Collectively called network computers and maintenance. (NCs), these devices are inexpensive • A thin client has limited local resources in terms of hardware network access units with functionality and software that allows some applications to be executed, but they are not as complete as • A thick client is functionally rich in terms of hardware and what it could be on a traditional PC or software. Thick clients are capable of storing and executing their workstation. own applications as well as network centric ones. Thick client typically refers to a personal computer. By Dr. Shuchita Upadhyaya Bhasin • Client-Server architectures can be Flat architecture Hierarchical architecture
classified into flat and hierarchical. If
the Client-Server model is flat, all clients communicate only with a single server . • If the Client-Server model is hierarchical the servers of one level are acting as clients to higher level servers. Users accessing banking services from their computer use • Functions such as email exchange, web a web browser client to send a request to a web server at access and database access, are built a bank. on the client–server model. That program may in turn forward the request to its own database client program that sends a request to a • For example, a web browser is a client database server at another bank computer to retrieve the account information. program running on a user's computer The balance is returned to the bank database client, which that may access information stored on in turn serves it back to the web browser client displaying a web server on the Internet. the results to the user.
By Dr. Shuchita Upadhyaya Bhasin
Advantages • In most cases, a client–server architecture Disadvantages enables the roles and responsibilities of a computing system to be distributed among Client-Server-Systems are very expensive and several independent computers that are known to need a lot of maintenance. each other only through a network. The server constitutes a single point of • This creates an additional advantage to this failure. If failures on the server occur, it is architecture: greater ease of maintenance. For possible that the system suffers heavy delay example, it is possible to replace, repair, upgrade, or complete breaks down, which can or even relocate a server while its clients remain potentially block hundreds of clients from both unaware and unaffected by that change. working with their data or their applications. • All data is stored on the servers, which generally As the number of simultaneous client have far greater security controls than most requests to a given server increases, the clients. Servers can better control access and server can become overloaded. resources, to guarantee that only those clients with the appropriate permissions may access and change data. • Since data storage is centralized, updates to that data are far easier to administer. • All the data are processed on the server, and only the results are returned to the client. This reduces the amount of network traffic between the server and the client machine, improving network performance.
By Dr. Shuchita Upadhyaya Bhasin
PEER-TO-PEER • Peer-to-peer network is a distributed network architecture, where the participants of the network share a part of their resources, which are accessible by other peers directly. • The resources encompass computing power, data (storage and content), network bandwidth, and presence (computers, humans and other resources). • In peer-to-peer architectures, each host Nodes in peer-to-peer networks do not only act as or instance of the program can clients, but they exhibit server functions as well. simultaneously act as both a client and a server, and each has equivalent This is why nodes or peers have been described as responsibilities and status. SERVENTS (SERVer + cliENTS). • The major drawbacks of client/server Peer-to-Peer systems can be classified into four systems in comparison with peer-to-peer classes, namely distributed computing (e.g., is that the client/server models suffer SETI@home), file sharing (e.g., Gnutella, Napster, from inefficient allocation of resources Freenet), communication and collaboration (e.g., and limited scalability which can result in Jabber, MSN Messenger) and platforms (e.g., JXTA, bottlenecks and eventually in single points .NET). of failure. By Dr. Shuchita Upadhyaya Bhasin Advantages Disadvantages • In a pure Peer-to-Peer architecture there is no single point of failure, which means, if one peer • Today many applications need a high security breaks down, the rest of the peers are still able to standard, which is not satisfied by current communicate. Peer-to-Peer solutions. • Peer-to-Peer provides the opportunity to take • The connections between the peers are advantage of unused resources such as processing normally not designed for high throughput power for computations and storage capacity. rates, even if the coverage of ADSL and Cable modem connections is increasing. • In Client-Server architectures, the centralized system bears the majority of the cost of the • A centralized system or a Client-Server system system. In Peer-to-Peer, all peers help spread the will work as long as the service provider keeps cost, e.g. Napster used the file storage space of it up and running. If peers start to abandon a participating peers to store all the files. Peer-to-Peer system, services will not be available to anyone. • Peer-to-Peer allows preventing bottleneck, such as traffic overload in central server architecture, • Most search engines work best when they can because Peer-to-Peer can distribute data and search a central database rather than launch balance request across the net without using a a meta search of peers. This problem is central server. circumvented by the hybrid Peer-to-Peer architecture • There is better scalability due to a lack of centralized control. A new peer can be added easily to the system without increasing load on any central facility. • In P2P networks, clients provide resources, which may include bandwidth, storage space, and computing power. As nodes arrive and demand on the system increases, the total capacity of the system also increases. By Dr. Shuchita Upadhyaya Bhasin Applications • In bioinformatics, drug candidate identification • File Sharing and Content Distribution: Peer-to-peer content distribution is the • The sciencenet P2P search engine. most well-known application area of peer- • Skype, one of the most widely used internet to-peer systems and it contains file sharing phone applications is using P2P technology. systems (e.g. Napster, Gnutella, eDonkey, Skype is a peer-to-peer VoIP(Voice over IP) G2, FastTrack), distributed storage application that provides telephony, IM and audio conferencing via a peer-to-peer system. applications (e.g. Freenet) and content delivery networks (e.g.Giraffic, Kontiki, • Instant messaging, telephony and online Ignite, RedSwoosh chat • Domain Name System for Internet • Software publication and distribution information retrieval (Linux, several games); via file sharing • Cloud computing. networks. • Grid Computing: Grid computing is the • Delivery of TV content over a P2P network coordinated use of resources – computers, (P2PTV) processor capacity, sensors, software, storage capacity and data – which is being shared • Peercasting for multicasting streams. within a dynamic and continuously changing • Research like the Chord project, the PAST group of individuals, institutions and resources. storage utility, the P-Grid, and the CoopNet . • Spotify uses a peer-to-peer network along with streaming servers to stream music to its desktop music player
By Dr. Shuchita Upadhyaya Bhasin
FILE SHARING File sharing systems are divided into two • To avoid problems of client-server model where groups: centralization of resources to be shared was Pure P2P systems and hybrid P2P systems. highlighted, Peer-to-Peer (P2P) computing In pure P2P systems all peers are equal and emerged to make services and applications each peer is acting both as a client and as a server. In such systems any peer can be distributed, decentralized, and perhaps foremost, removed from the network without affecting operation of the network. self-organizing Gnutella and FreeNet are examples of pure P2P systems. • With the growing desire to instantaneously On the other hand, in hybrid P2P systems access software, music, movies etc. P2P file- majority of peers are equal, but some peers sharing provides an inexpensive and quick (and have special functions and are called servers. E.g. is Napster, the first and widely known P2P many a times illegal!) means of access to such file sharing system, these special peers were commodities. used for searching purposes. With P2P file-sharing numerous peers • P2P file-sharing contributes to a major fraction participate in the file-sharing community. of traffic in today’s Internet. Thus, each peer functions as a server, contributing resources to the community, • A distributed file-system is a particular example as well as functioning as a client – of an application, or service, that can be requesting files. efficiently implemented using peer-to-peer technology By Dr. Shuchita Upadhyaya Bhasin WEB-BASED • Web-Based model is a communication • The Web is based on three main model that has emerged as a result of standard technological components: the Internet and its World Wide Web A language for specifying the contents and (WWW) service. layout of pages that are displayed by web browsers. • As a model, the Web can be viewed as Uniform Resource Locators (URLs), which a collection of Internet-based clients identify documents and other resources and servers that speak the same stored as part of the Web. language, namely, the Hypertext A client-server architecture, with standard Transfer Protocol (HTTP). rules for interaction (for eg.,HTTP) by which browsers and other clients fetch • Through commonly available web documents and other resources from web browser software such as Netscape and servers. Internet Explorer, users use the Web to retrieve and view documents of many types, to listen to audio streams and view video streams, and to interact with an unlimited set of services.
By Dr. Shuchita Upadhyaya Bhasin
Content Distribution Network • Content distribution network—also known as a content delivery network—is a large, geographically distributed network of specialized servers that accelerate the delivery of web content and rich media to internet- connected devices. • CDN (Content Delivery Network) is a highly-distributed platform of servers that helps minimize delays in loading web page content by reducing the physical distance between the server and the user. This helps users around the world view the same high-quality content without slow loading times. • Without a CDN, content origin servers must respond to every single end user request. This results in significant traffic to the origin and subsequent load, thereby increasing the chances for origin failure if the traffic spikes are exceedingly high or if the load is persistent. • By responding to end user requests in place of the origin and in closer physical and network proximity to The primary technique that a content distribution the end user, a CDN offloads traffic from content servers network (CDN) uses to speed the delivery of web and improves the web experience, thus benefiting both the content provider and its end users. content to end users is edge caching, which entails • The world's largest content distribution network, owned storing replicas of static text, image, audio, and video and operated by Akamai, spans approximately 300,000 content in multiple servers around the "edges" of the servers in more than 130 countries and within more internet, so that user requests can be served by a than 1,500 networks around the world. nearby edge server rather than by a far-off origin server.
By Dr. Shuchita Upadhyaya Bhasin
EXERCISE 1. Explain the various networking models that originated along with advances in networking technologies. 2. Distinguish between client-server model and peer-to-peer model of networking. 3. Derive the similarity between peer-to-peer model and file sharing model. 4. Explain decentralized, centralized and distributed systems. 5. Bring out the similarity or distinction between client-server and web based models of networking. 6. What is a Content Distribution Network?