04 client server technology
DESCRIPTION
Database Management SystemTRANSCRIPT
Instructor: FOR-IAN V. [email protected]
Client-server computing or networking is a distributed application architecture that partitions tasks or work loads between service providers (servers) and service requesters, called clients.
Often clients and servers operate over a computer network on separate hardware
A server is a high-performance host that is a registering unit and shares its resources with clients.
A client does not share any of its resources, but requests a server's content or service function.
Client-server describes the relationship between two computer programs in which one program, the client program, makes a service request to another, the server program.
Standard networked functions such as email exchange, web access and database access, are based on the client-server model.
The client-server model has become one of the central ideas of network computing. .
Many business applications being written today use the client-server model.
Each instance of the client software can send data requests to one or more connected servers. In turn, the servers can accept these requests, process them, and return the requested information to the client.
1. Clients
2. Servers
This type of architecture is sometimes referred to as two-tier.
It allows devices to share files and resources.
The interaction between client and server is often described using sequence diagrams. Sequence diagrams are standardized in the Unified Modeling Language.
1. Web Browsers
2. E-mail Client3. Online Chat Client
1. Web Servers
2. FTP Servers3. Application Servers
4. Database Servers
5. Name Servers
6. Mail Servers
7. Print Servers
8. Terminal Servers
Another type of network architecture is known as peer-to-peer, because each host or instance of the program can simultaneously act as both a client and a server, and because each has equivalent responsibilities and status. Peer-to-peer architectures are often abbreviated by P2P.
Another type of network architecture is known as peer-to-peer, because each host or instance of the program can simultaneously act as both a client and a server, and because each has equivalent responsibilities and status. Peer-to-peer architectures are often abbreviated by P2P.
Both client-server and P2P architectures are in wide usage today. Details may be found in Comparison of Centralized (Client-Server) and Decentralized (Peer-to-Peer) Networking.
While classic client-server architecture requires one of the communication endpoints to act as a server, which is much harder to implement, Client-Queue-Client allows all endpoints to be simple clients, while the server consists of some external software, which also acts as passive queue (one software instance passes its query to another instance to queue, e.g. database, and then this other instance pulls it from database, makes a response, passes it to database etc.).
1. A client-server architecture enables the roles and responsibilities of a computing system to be distributed among several independent computers that are known to each other only through a network.
2. All the data is stored on the servers, which generally have far greater security controls than most clients.
3. Since data storage is centralized, updates to that data are far easier to administer than what would be possible under a P2P paradigm.
4. Many mature client-server technologies are already available which were designed to ensure security, friendliness of the user interface, and ease of use.
5. It functions with multiple different clients of different capabilities.
1. Traffic congestion on the network has been an issue since the inception of the client-server paradigm.
2. The client-server paradigm lacks the robustness of a good P2P network.
Computer networks can be classified into two broad categories: 1. Local Area Network
A LAN is a communications network enables data exchange between devices within a small geographic area. Here, devices mostly refer to computers and peripheral devices such as printer.
2. Wide Area Network
A WAN usually consists of a local connection of LANs and spreads over a much larger geographical area, sometimes even spanning the globe.
The Open Systems Interconnection Reference Model (OSI Reference Model or OSI Model) is an abstract description for layered communications and computer network protocol design.
It was developed as part of the Open Systems Interconnection (OSI) initiative.
It divides network architecture into seven layers which, from top to bottom
1. Physical2. Data Link3. Network 4. Transport5. Session6. Presentation7. Application
A layer is a collection of conceptually similar
functions that provide services to the layer above it
and receives service from the layer below it.
On each layer an instance provides services to the
instances at the layer above and requests service
from the layer below.
Conceptionally two instances at one layer are
connected by a horizontal protocol connection on
that layer.
- 1977, work on a layered model of network architecture was started and the International Organization for Standardization (ISO) began to develop its OSI framework architecture
- two major components: an abstract model of networking,
called the Basic Reference Model or seven-layer model,
and a set of specific protocols
- All aspects of OSI design evolved from experiences with the CYCLADES network, which also influenced Internet design.
- In ISO 7498 Model new design was documented and the networking system is divided into layers.
- One or more entities implement its functionality and each entity interacts directly only with the layer immediately beneath it, and provides facilities for use by the layer above it.
- Protocols enable an entity in one host to interact with a corresponding entity at the same layer in another host.
The Physical Layer is the first and lowest layer in the seven-layer OSI model of computer networking.
The Physical Layer comprises the basic hardware transmission technologies of a network.
The Physical Layer defines the means of transmitting
raw bits rather than logical data packets over a physical
link connecting network nodes.
The Physical Layer provides an electrical, mechanical, and procedural interface to the transmission medium.
1. Transmission format, which can be either digital or analog.
2. Physical transmission medium, which refers to whether bits of data are transmitted as electrical or optical signals.
3. Data encoding, which emphasizes what signal patterns represent ones and zeroes and the synchronization between sending and receiving devices.
4. Physical medium attachment, which deals with wiring and pin layouts connectors.
V.92 telephone network modems IRDA Physical Layer USB Physical Layer Firewire EIA RS-232, EIA-422, EIA-423, RS-449, RS-485 ITU Recommendations: see ITU-T DSL ISDN T1 and other T-carrier links, and E1 and other E-carrier links
10BASE-T, 10BASE2, 10BASE5, 100BASE-TX, 100BASE-FX, 100BASE-T, 1000BASE-T, 1000BASE-SX and other varieties of the Ethernet physical layer Varieties of 802.11 SONET/SDH GSM Um radio interface physical layer Bluetooth Physical Layer IEEE 802.11x Wi-Fi Physical Layers TransferJet Physical Layer Etherloop ARINC 818 Avionics Digital Video Bus G.hn/G.9960 Physical Layer
Networks transfer data in “chunks” or packets, of a certain size
Data link layer forms data packets Manages their movement at each node in the network Adds the appropriate addresses of the source and destination nodes
In PC-based LANs, it is at this layer that protocols like Token Ring and Ethernet are implemented
Functions are often performed by network interface cards (NICs) installed in computers
Network Layer provides the functional and procedural means of transferring variable length data sequences from a source to a destination via one or more networks
Performs network routing functions, fragmentation, reassembly, and report delivery error reports
Routers operate at this layer—sending data throughout the extended network and making the Internet possible
The logical addressing scheme is hierarchical The Internet Protocol (IP) is the best known examples of Layer 3
The Transport Layer controls the reliability of a given link through flow control, segmentation/ desegmentation, and error control
Typical examples of Layer 4 are the Transmission Control Protocol (TCP) and User Datagram Protocol (UDP)
Five classes of connection-mode transport protocols ranging from class 0 to class 4
Table 4.1 - Detailed characteristics of TP0-4 classes
Responsible for establishing virtual connections between processes running on different computers
Connection is called a session Programmers interface to the network It handles functions such name recognition, administration, and security in a network
NetBIOS Extended User Interface (NETBEUI) is commonly used protocol for the session layer
Responsible for the delivery and formatting of information to the application layer for further processing or display
Transform the format sent by the application layer into a common format
Translates the common format to a format chosen by a application layer
Terminal emulation is performed at this layer The lowest layer at which application programmers consider data structure and presentation, instead of simply sending data in form of datagrams or packets between hosts
Network Operating System (NOS) software resides at this layer
NOS software offers network services and provides the application layer with independence from lower-level details
Many application bypass the NOS to interact directly with the session or transport layer for greater control over network resources
It serves as the user interface through which network resources can be accessed In TCP/IP, the Application Layer contains all protocols and methods that fall into the realm of process-to- process communications via an Internet Protocol (IP) network using the Transport Layer protocols to establish underlying host-to-host connections
1. Resource sharing2. Remote file access3. Remote printer access4. Inter-process communication port5. Remote procedure call support6. Network management7. Directory services8. Electronic messaging including e-mail messaging
Telnet Hypertext Transfer Protocol (HTTP) File Transfer Protocol (FTP) Simple Mail Transfer Protocol (SMTP)
9P, Plan 9 from Bell Labs distributed file system protocolAFP, Apple Filing ProtocolAPPC, Advanced Program-to-Program CommunicationAMQP, Advanced Message Queuing ProtocolBitTorrentAtom Publishing ProtocolBOOTP, Bootstrap ProtocolCFDP, Coherent File Distribution ProtocolDDS, Data Distribution ServiceDHCP, Dynamic Host Configuration Protocol
DeviceNetDNS, Domain Name System (Service) ProtocoleDonkeyENRP, Endpoint Handlespace Redundancy ProtocolFastTrack (KaZaa, Grokster, iMesh)Finger, User Information ProtocolFreenetFTAM, File Transfer Access and ManagementFTP, File Transfer ProtocolGopher, Gopher protocolHL7, Health Level Seven
HTTP, Hypertext Transfer ProtocolH.323, Packet-Based Multimedia Communications SystemIMAP, IMAP4, Internet Message Access Protocol (version 4)IRCP, Internet Relay Chat ProtocolKademliaLDAP, Lightweight Directory Access ProtocolLPD, Line Printer Daemon ProtocolMIME (S-MIME), Multipurpose Internet Mail Extensions and Secure MIME
ModbusNetconfNFS, Network File SystemNIS, Network Information ServiceNNTP, Network News Transfer ProtocolNTCIP, National Transportation Communications for Intelligent Transportation System ProtocolNTP, Network Time ProtocolOSCAR, AOL Instant Messenger ProtocolPNRP, Peer Name Resolution Protocol
POP, POP3, Post Office Protocol (version 3)Rlogin, Remote Login in UNIX SystemsRTPS, Real Time Publish SubscribeRTSP, Real Time Streaming ProtocolSAP, Session Announcement ProtocolSDP, Session Description ProtocolSIP, Session Initiation ProtocolSLP, Service Location ProtocolSMB, Server Message BlockSMTP, Simple Mail Transfer ProtocolSNMP, Simple Network Management Protocol
SNTP, Simple Network Time ProtocolSSH, Secure ShellSSMS, Secure SMS Messaging ProtocolRDP, Remote Desktop ProtocolTCAP, Transaction Capabilities Application PartTDS, Tabular Data StreamTELNET, Terminal Emulation Protocol of TCP/IPTFTP, Trivial File Transfer ProtocolTSP, Time Stamp ProtocolVTP, Virtual Terminal Protocol
Waka, an HTTP replacement protocolWhois (and RWhois), Remote Directory Access ProtocolWebDAVX.400, Message Handling Service ProtocolX.500, Directory Access Protocol (DAP)XMPP, Extensible Messaging and Presence Protocol
Example of neither OSI Reference Model nor OSI protocols specify any programming interfaces