1213 Sockets [1] Introducció

Click here to load reader

  • date post

    01-Jul-2015
  • Category

    Documents

  • view

    90
  • download

    2

Embed Size (px)

Transcript of 1213 Sockets [1] Introducció

  • 1. SOCKETS 1 Introducci

2. SCOLSDefinici Els scols sn un sistema de comunicaci entreprocessos de diferents mquines duna xarxa.Un scol s un punt de comunicaci pel qual unprocs pot emetre o rebre informaci. Un scol s una abstracci programable decanal de comunicaci. Adrea de scol = adrea IP + nmero de port 3. SCOLSDefinici Una connexi mitjanant scols s idntica auna comunicaci mitjanant canonades (pipes)bidireccionals. 4. SCOLS Definici Dos processos es poden intercanviar informaci utilitzantun parell de scols. Els missatges van entre el scol dun procs i un altre scoldun altre procs. Quan els missatges sn enviats, es posen a la cua en elscol fins que el protocol de xarxa els hagi transms. Quan arriben, els missatges es posen a la cua en el scol derecepci fins que el procs receptor els reculli. ServidorClient010110101101 JVMJVM 5. SCOLS Definici Un scol s el punt final dun procs de comunicaci. s una abstracci que permet manipular de formasenzilla la comunicaci entre processos tot i queaquests estiguin en sistemes diferents sensenecessitat de conixer el funcionament dels protocolsde comunicaci corresponents. Adrea de scol = adrea IP + nmero de port 6. SCOLS DefiniciMquina AMquina B Procs daplicaciAplicaci queAplicaci que envia dadesrep dadesScol (Socket)Scol (Socket) Quelcom queQuelcom quepermet la Procs de permet la comunicaci comunicacicomunicaciAbstracci del procs de comunicaci entredues mquines 7. SCOLS Definici Comunicaci entre dos processos a travs de scols. Procs AProcs B Aquests punts finals serveixen denllaos de comunicacions entreprocessos. Els processos tracten als scols com a descriptors darxius. Permeten lintercanvi de dades amb altres processos transmetenti rebent a travs dels scols. 8. SCOLS Models de capes Els models de capes divideixen el procs de comunicaci encapes independents. Cada capa proporciona serveis a la capa superior a travs deuna interfcie i, alhora, rep serveis de la capa inferior mitjanant lainterfcie corresponent.La capa N solament necessita conixer que la capa N-1 liproporciona el servei X; no necessita conixer elmecanisme que utilitza aquesta capa per aconseguir el seuobjectiu. 9. SCOLS Models de capesUn model de capes no s ms que la representaci de com opera laxarxa. El model no s la xarxa en s. 10. SCOLSModels de capes 11. SCOLSModels de capes 12. SCOLS Model TCP/IP Els usuaris criden a una aplicaciperqu accedeixi als serveisAplicaci disponibles a travs de la xarxa dexarxes TCP/IP. CadaprogramadaplicaciTransportselecciona el tipus de transportnecessari. Internet Aquesta capa cont tots elsAccs a laprotocols dalt nivell que sutilitzenxarxa per oferir serveis als usuaris. 13. SCOLS Model TCP/IP ProtocolsAplicaci FTP: Protocol de Transferncia darxius HTTP: Protocol de transfernciaTransportde Hipertext SMTP:Protocolsenzill de Internet transferncia de correu DNS: Sistema de denominaci deAccs a laxarxadominis 14. SCOLS Model TCP/IP Aquesta capa desenvolupa laAplicacifunci de permetrela comunicaci dextrem a extrem en la xarxa. Transport Proporciona la comunicaci entre Internetun programa daplicaci i un altre de conegut ambuna comunicaci punt a punt.Accs a laxarxa Regula el flux de informaci. 15. SCOLS Model TCP/IPProtocol UDP User Datagram ProtocolAplicaci s no orientat a connexi . Els missatges senvien sense problema (es poden duplicar o arribar desordenats). No s fiable (es poden perdre o arribar Transport danyats). Utilitza el protocol IP per transportar els Internet seus missatges. Incorpora els ports dorigen i dest en elAccs a la seu format de missatge.xarxa 16. SCOLS Model TCP/IPProtocol TCP Transmission Control ProtocolAplicaci s orientat a connexi . Les dades arriben a laplicaci dest de forma ordenada i sense duplicats. s fiable Transport Els datagrames IP poden seguir rutes diferents per arribar a un mateix lloc. Internet Envia un flux de informaci no estructurat sn dades sense cap format (ambduesAccs a la aplicacions es posen dacord perxarxacomprendre la informaci intercanviada) . 17. SCOLS Model TCP/IPCorreuTransf.NavegaciAplicaci electrnicdarxius per Internet Transport Port 25 Data Port 21 Data Port 80 Data Internet Etiqueta cada aplicaci amb un determinat port i segmenta laAccs a laxarxainformaci en unitats ms petites. 18. SCOLS Model TCP/IP Divideix elssegments enAplicacipaquets. El protocol daquesta capa s el Transport protocol Internet (IP) Internet Shi produeix la determinaci deAccs a la la millor ruta i la commutaci delxarxapaquets. 19. SCOLS Model TCP/IP La relaci entre IP i TCP sAplicaciimportant: IP: Indica el cam als paquets. Transport Internet TCP: Brinda el transport segur.Accs a laxarxa 20. SCOLS Model TCP/IPAplicaci Es tracta de la capa que guarda relaci ambtotsels components, tant fsics com Transport lgics,necessaris per aconseguir un enlla fsic. Internet Inclou els detalls de la capaAccs a la fsica i denlla de dades delxarxamodel OSI. 21. SCOLSModel TCP/IP 22. SCOLS Model TCP/IP DATAAplicaciscolSCOLTCP DATATransportTCPUDPIP TCP DATAInternetIPICMP driver XARXAETH IP TCP DATA 23. SCOLSTipus de scols Stream (TCP) Datagram (UDP) Raw (accs directe al protocol: root)Stream Datagrama Raw TCPUDP IP 24. SCOLSSocket Stream Sn un servei orientat a la connexi on les dades estransfereixen sense enquadrar-les en registres oblocs. Sassegura que les dades arribin al dest en lordrede transmissi. Si es trenca la connexi entre els processos, aquestsseran informats perqu prenguin les mesuresadients. 25. SCOLSSocket Stream. Protocol de comunicacions s un protocol orientat a connexi. La comunicaci utilitza el protocol TCP. En primer lloc, sestableix una connexi entre un parell descols.Mentre un dels scols atn peticions de connexi (servidor),laltre sollicita una connexi (client). Un cop que els dos scols es troben connectats, es podenutilitzar per transmetre dades en ambdues direccions. 26. SCOLS Socket Datagram Sn un servei de transport no orientat a la connexi. La fiabilitat no est garantida. Les dades senvien i esreben en paquets la seva entrega no estgarantida -. Els paquets es poden duplicar, perdre o arribar enun ordre diferent al que es va enviar. 27. SCOLSSocket Datagram. Protocol de comunicacionsLes comunicacions mitjanant datagrames utilitzen UDP.Cada cop que senvien datagrames s necessari enviar el descriptor del scol local i ladrea del scol que ha de rebre el datagrama.En conseqncia, shan denviar dades addicionals cada cop que es realitza una comunicaci. 28. SCOLS Socket Raw Donen accs directe a la capa deprogramari de xarxa subjacent o aprotocols de ms baix nivell. Principalment, sutilitzen per ladepuraci del codi dels protocols. 29. SCOLSFuncionament genricLa comunicaci entre scols es fonamenta en una srie de primitives que permeten establir un sistema de comunicaci molt complert.socket Crea un descriptor per utilitzar-lo en la transmissi per xarxes. Pren com a parmetre la famlia de protocols i el tipus de servei.ConnectDefineix una connexi activa, rep com a parmetre ladrea i el port de dest.writeGeneralment, copia les dades a una memria cau (buffer) i els envia a mesura que pot.read Llegeix de la connexi, es bloqueja si no hi ha dades o entrega ms length dades.bind Especifica ladrea (adrea IP + port local) al que sassocia el scol. 30. SCOLSFuncionament genricLa comunicaci amb scols es fonamenta en una srie de primitives.listen Posa el scol en mode passiu i estableix el nmero mxim de connexions que es posaran a la cua (quan arribin connexions simultnies).CLoSeFinalitza la connexi i allibera el scol.shutdown Finalitza la connexi TCP/IP en una o ambdues direccions.getpeernameRetorna ladrea remota del scol.getsockopt Veure les opcions del scol.setsockpot Canviar les opcions del scol.