• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
1213 Sockets [2] Arquitectura client - servidor
 

1213 Sockets [2] Arquitectura client - servidor

on

  • 197 views

 

Statistics

Views

Total Views
197
Views on SlideShare
197
Embed Views
0

Actions

Likes
0
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    1213 Sockets [2] Arquitectura client - servidor 1213 Sockets [2] Arquitectura client - servidor Presentation Transcript

    • SOCKETS 2 Arquitectura Client - Servidor
    • ARQUITECTURA CLIENT – SERVIDOR Conceptes bàsics http://youtu.be/2kezQTo57yM
    • ARQUITECTURA CLIENT – SERVIDOR Conceptes bàsics• Aplicació: Es compon de les aplicacions de xarxa (FTP, SMTP, ..) Aplicació• Transport: Transferència de dades host-host (TCP, UDP) Transport• Internet: Encaminament de datagrames des de la font al destí (IP, Internet protocols d’encaminament, ..). Accés a la• Accés a la xarxa: Transferència de xarxa dades entre elements veïns en la xarxa.
    • ARQUITECTURA CLIENT – SERVIDOR Què és un port?Un port en la capa detransport es troba Aplicaciórepresentat per un numerode 16 bits que s’utilitza per Transportidentificar els punts finals dela connexió en les Internetcapçaleres UDP o TCP. Accés a la xarxaPort vs Socket: http://youtu.be/diasbxQYiSY
    • ARQUITECTURA CLIENT – SERVIDOR Què és un port? Els números de ports oscil·len entre 0 i 65.535. La pila de protocols de xarxa afegeix els ports com una abstracció per la xarxa. Són canals que utilitza el subsistema de xarxa per readreçar la informació al programa adient.
    • ARQUITECTURA CLIENT – SERVIDOR Classificació dels ports Ports ben coneguts (well-known ports) [0, 1023] S’utilitzen per serveis de xarxa ben coneguts (FTP, HTTP, Telnet, DNS, …) Ports registrats Oscil·len entre el 1.024 i el 49.151 i tant poden ser utilitzats temporalment pels clients com poden representar serveis registrats per un tercer. Ports dinàmics o privats Oscil·len entre 49.152 i 65.535; si bé poden ser utilitzats pel client, s’utilitzen amb menys freqüència.
    • ARQUITECTURA CLIENT – SERVIDOR Sòcols Un número de port i una adreça de xarxa. Un parell de sòcols, un en cada host, formen una connexió única. És el punt final d’un enllaç de comunicació de dues vies entre dos programes que s’executen a través de la xarxa. El client i el servidor s’han de posar d’acord sobre quin protocol utilitzaran.
    • ARQUITECTURA CLIENT - SERVIDOR Què és un procés? Es tracta d’un programa en execució en un ordinador. Dins de la màquina dos processos es comuniquen utilitzant la comunicació entre processos (definida pel sistema operatiu). Els processos en diferents hosts es comuniquen mitjançant el intercanvi de missatges.
    • ARQUITECTURA CLIENT - SERVIDOR Què és un procés? Els processos envien/reben missatges a/des dels seus sòcols  El procés transmissor treu els missatges pel seu port.  El procés transmissor confia en la infraestructura de transport a l’altre costat del port encarregada de portar els missatges al sòcol en el procés receptor.
    • ARQUITECTURA CLIENT - SERVIDOR Relació procés/sòcol = procés = sòcol (socket)Aplicació P3 P1 Aplicació P3 P4 AplicacióTransport Transport TransportInternet Internet InternetAccés a la xarxa Accés a la xarxa Accés a la xarxa Host 1 Host 2 Host 3
    • ARQUITECTURA CLIENT - SERVIDOR Classificació de sòcols Orientat a connexió  Defineix un camí virtual entre el servidor i el client.  És fiable: No hi han pèrdues de informació ni duplicats.  La informació arriba en el mateix ordre que s’envia.  El client obre una sessió en el servidor i aquest guarda un estat del client.
    • ARQUITECTURA CLIENT - SERVIDOR Classificació de sòcols No orientat a connexió  Enviament de datagrames de grandària fixe.  No és fiable: Poden haver-hi pèrdues de informació i duplicats.  La informació pot arribar en un ordre al que s’envia.  No es guarda cap estat del client en el servidor; és per això que és més tolerant a fallides del sistema.
    • ARQUITECTURA CLIENT - SERVIDOR Concepte Client / Servidor La comunicació de dos hosts es realitza, generalment, mitjançant la filosofia Client/Servidor. L’usuari client obté serveis de la màquina remota proveïdora d’un servei (servidor). El servidor proporciona un port de comunicació pel que s’han de connectar tots els clients que desitgin obtenir aquest servei. Es defineix un sòcol en la màquina local (client) i un altre en la màquina remota (servidor) i es comuniquen entre ells pel port proporcionat.
    • ARQUITECTURA CLIENT – SERVIDOR Procés Client1. Obrir el canal de comunicacions per connectar-se a l’adreça de xarxa atesa pel servidor.2. Enviar al servidor un missatge de petició de servei i esperar fins a rebre resposta.3. Tancar el canal de comunicació i acabar l’execució del procés.
    • ARQUITECTURA CLIENT – SERVIDOR Procés Servidor1. Obrir el canal de comunicacions i informar a la xarxa tant de l’adreça per la que respondrà com de la disposició per acceptar peticions de servei.2. Esperar a que el client realitzi una petició de servei en l’adreça que té declarada.3. Quan rep una petició de servei, atén al client.4. La connexió es tanca.
    • ARQUITECTURA CLIENT – SERVIDOR Processos que es comuniquenProcés Client: Procés que inicia lacomunicació.Procés servidor: Procés queespera per ser contactat
    • ARQUITECTURA CLIENT – SERVIDOR Processos que es comuniquenProcés Client: Procés que inicia lacomunicació.Procés servidor: Procés queespera per ser contactat
    • Seqüència de crides per unacomunicació Client / Servidor Orientada a connexió Comunicació C/S orientada a connexió ARQUITECTURA CLIENT – SERVIDOR
    • Seqüència de crides per unacomunicació Client / Servidor No orientada a connexió Comunicació C/S no orientada a connexió ARQUITECTURA CLIENT – SERVIDOR
    • ARQUITECTURA CLIENT – SERVIDOR Stream• És una seqüència de dades habilitats en un moment donat.• Una abstracció utilitzada quan es llegeixen o escriuen arxius, o quan es realitza una comunicació mitjançant sòcols.• Són canals preconnectats d’entrades i sortides entre una computadora, generalment una seqüència de bytes.
    • ARQUITECTURA CLIENT – SERVIDOR Tipus d’stream• Les connexions I/O són conegudes com entrada estàndard, sortida estàndard i sortida d’error estàndard. Terminal de text #2 stderr monitor #1 stdout programa teclat #0 stdin
    • ARQUITECTURA CLIENT – SERVIDOR Tipus d’stream• Un stream (fluxe) és una seqüència de caràcters que flueixen cap a o des de un procés.• Un input stream (flux d’entrada) està lligat a alguna font d’entrada pel procés, per exemple, teclat o sòcol.• Un output stream (flux de sortida) està lligat a una sortida del procés, per exemple, monitor o sòcol.
    • ARQUITECTURA CLIENT – SERVIDOR Exemple d’aplicació client - servidor1) El client llegeix línies des de l’entrada estàndard (flux inFromUser), les envia al servidor per via d’un sòcol (flux outToServer).2) El servidor llegeix línies des del sòcol.3) El servidor les converteix a majúscules i les envia de tornada al client.4) El client llegeix i mostra la línia modificada des del sòcol (flux inFromServer)
    • ARQUITECTURA CLIENT – SERVIDOR Exemple d’aplicació client - servidor