Protokollen eller klient - servermiljøet angir en transaksjonsmåte (ofte gjennom et nettverk ) mellom flere programmer eller prosesser : en, kjent som klienten , sender forespørsler; den andre, kalt en server , venter på og svarer på klientforespørsler. Serveren her tilbyr en tjeneste til klienten. I forlengelsen refererer klienten ofte til datamaskinen som klientprogramvaren kjøres på, og serveren, datamaskinen som serverprogramvaren kjøres på. Servermaskiner har vanligvis mer kapasitet enn PC-er innen datakraft , inngangs- og nettverkstilkoblinger , slik at de kan svare effektivt på et stort antall klienter. Klienter er ofte personlige datamaskiner eller individuelle terminaler (telefon, nettbrett), men ikke alltid. En server kan svare på forespørsler fra flere klienter. Noen ganger kan klienten og serveren være på samme maskin.
Det finnes et bredt utvalg av servere og klienter, avhengig av behovene eller tjenestene som skal leveres: en webserver publiserer websider som nettlesere krever ; en e-postserver sender e-post til e- postklienter ; en filserver gjør det mulig å dele filer i et nettverk med maskinene som ber om det; en databaseserver lar klienter hente data som er lagret i en database , etc.
Klienten og serveren må selvfølgelig bruke den samme kommunikasjonsprotokollen ved transportlaget til OSI-modellen. Vi snakker ofte om en tjeneste for å betegne funksjonaliteten som tilbys av en serverprosess. Oppmerksomhet, selv om det ofte er forvirret, er imidlertid begrepene program- eller klientprosess og program- eller serverprosess forskjellige fra maskinens. Faktisk kan en enkelt datamaskin kjøre både et serverprogram og et klientprogram. Denne konfigurasjonen brukes mer til testformål, eller ganske vanlig i Linux- verdenen .
Kjennetegn ved et serverprogram :
Kjennetegn ved et klientprogram :
Karakteristika for deres utveksling protokoll :
Organiseringen av en klient - servermiljø er forskjellig avhengig av hvilken type av nettverksarkitektur klienten .
En peer-to-peer- arkitektur ( peer-to-peer eller P2P på engelsk) er en klient - servermiljø der hvert tilkoblet program sannsynligvis vil spille rollen som klient og server. Programmet er en klient når det ber om og henter data, og blir en server når det gir data.
To-lags arkitekturI utgangspunktet er forholdet mellom en klient og en server mellom to prosesser, to programvare eller to maskiner. Man kan snakke om en to-lags arkitektur eller en to-lags arkitektur ( to-lags arkitektur på engelsk). I dette tilfellet ber klienten om en ressurs fra serveren som leverer den direkte fra sine egne ressurser, uten å be om andre maskiner.
En tre-lags arkitektur eller en tre-lags arkitektur ( tre-lags arkitektur engelsk) legger til et nivå for å spesialisere servere, noe som gir en fordel med fleksibilitet, sikkerhet og ytelse:
Det skal bemerkes at applikasjonsserveren her er en klient til dataserveren.
N- nivå arkitekturEt arkitektonisk N-nivå eller arkitektonisk tredje N ( N-nivå arkitektur engelsk) vil nivå legger til 3-lags arkitekturen, men introduserte begrepet objekt som gir muligheten til å distribuere tjenester på tvers av 3 nivåer i henhold til N-lag, og dermed gjøre det mulig å spesialisere serverne bedre.
Applikasjonsklienter er programvare som kjører på brukernes maskiner eller terminaler. Det er mulig å skille mellom tre hovedtyper.
Lett klientEn tynn klient er et program der behandling av klientforespørsler (oftest en nettleser, med websider som bruker lite eller ingen JavaScript på klientsiden, Terminal Services- terminaler , Secure Shell , Apple Remote Desktop , Citrix XenApp , TeamViewer , etc.) gjøres utelukkende av serveren, klienten er fornøyd med å motta og formatere for å vise svarene som er beregnet og sendt av serveren. Noen fordeler:
En tung klient er et program (stasjonære applikasjoner, mobilapplikasjoner) der prosesseringsoperasjonene hovedsakelig utføres på den lokale maskinen kjent som klienten. Serveren er hovedsakelig innhold for å svare på forespørsler om data fra klienten.
Noen fordeler:
En rik klient er et program der behandlingen av klientforespørsler (webapplikasjoner som bruker mye JavaScript på klientsiden) hovedsakelig gjøres av serveren, hvor klienten mottar "halvferdige" svar og fullfører dem. Det er en mer avansert tynn klient som gjør det mulig å implementere funksjoner som kan sammenlignes med en tykk klient. Det er et kompromiss mellom tynne og tunge kunder.
Før klient-server-miljøet dukket opp, ble datanettverk konfigurert rundt en sentral datamaskin ( hovedramme på engelsk) som passive terminaler var koblet til (skjerm festet til et tastatur uten sentralenhet og ikke utførte noen behandling.). Alle brukere ble deretter koblet til samme sentralenhet.