Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
AmaioriadasaplicaesdaInternetutilizamomodelode interaochamadocliente/servidor.
MarceloZ.Silva/BSIRedesI
ModeloCliente/Servidor
MarceloZ.Silva/BSIRedesI
ModeloCliente/Servidor
Outrosexemplosdeaplicaesqueutilizamomodelo cliente/servidor:
MarceloZ.Silva/BSIRedesI
ModeloCliente/Servidor
Caractersticasdeprogramasdotipocliente:
Caractersticasdeprogramasdotiposervidor:
ModeloPeertoPeer(P2P)
MarceloZ.Silva/BSIRedesI
ModelodeCamadasTCP/IP
MarceloZ.Silva/BSIRedesI
ProtocolosdaCamadadeTransporte
TCPTransmissionControlProtocol UDPUserDatagramProtocol
Aseguirsomostradososformatosdessesdoisprotocolos:
MarceloZ.Silva/BSIRedesI
PacoteTCP
MarceloZ.Silva/BSIRedesI
PacoteUDP
MarceloZ.Silva/BSIRedesI
Encapsulamento(Exemplo)
MarceloZ.Silva/BSIRedesI
10
Encapsulamento(Exemplo)
MarceloZ.Silva/BSIRedesI
11
Encapsulamento(Exemplo)
MarceloZ.Silva/BSIRedesI
12
Portas
Portas
Oscomputadoresdeusuriosacessandoaredenormalmente executamdiversosprogramaserecebemvriosfluxosde dadossimultaneamentecomo,porexemplo,carregardiversas pginassimultaneamenteenquantobaixaarquivoseparticipa dechats; Assim,demodoapermitirquetenhamosdiversosfluxos simultneosdeinformaesvindosdediversosservidorespara diversosclientesnocomputadordousurio,existemasPortas. Portassonmerosqueidentificamumcanaldedados entredoishoststrocandoinformaespelarede.
MarceloZ.Silva/BSIRedesI
14
ConexesTCPeUDP
UmaconexoentredoiscomputadoresutilizandoTCP/IP(ou UDP/IP)dadaporquatroinformaes:
MarceloZ.Silva/BSIRedesI
15
PortasEfmeras
Antesdeocorreratrocadeinformaes,apenastrsdasquatro informaesnecessriasestoprestabelecidas:
PortasBemConhecidas
MarceloZ.Silva/BSIRedesI
17
ProtocoloIPRev.
OprotocoloIP,noprovosseguintesservios:
Garantiadeentrega:odatagramaIPenviadopodeser simplesmenteperdidooudescartado,semqueoprotocolo IPnotifiqueessefato; Integridadedosdados:osdadosdeumdatagramaIP podemestarcorrompidos(estragados); Ordemdeentrega:doisdatagramas,AeB,queforam enviadosnessaordem,podemchegarcomaordemtrocada (BedepoisA); Checagemdeunicidade:possvelquemltiplascpiasde ummesmodatagramasejaentregueaodestinatrio.
MarceloZ.Silva/BSIRedesI 18
DiferenasTCPeUDP
PrincipaisdifererenasentreTCPouUDP:
TCPorientadoaconexoeoUDPnoutilizaconexes
Antesdehavertrocadedadosentredoishostsnecessrioqueocliente abraumaconexoentreelesatravsdeumaseqnciachamada handshakeTCP(descritoaseguir); OTCPprovdiversosserviosadicionaisqueoUDPnoprovmas, justamenteporisso,elemaiscomplexo(emaislento)queoUDP. CasohajaaperdadeumpacoteTCPnocaminhoeelenochegarao destino,osistemaTCPdoremetenteprovidenciaoreenviodopacote perdido.OUDPnotemessafuncionalidade. NmerosdeseqncianocabealhoTCPpermitemqueoreceptordos pacotesordeneosmesmocasocheguemforadeordem.OUDPtambm nopossuiesserecurso.
MarceloZ.Silva/BSIRedesI 19
TCPpesado
TCPconfivel
OspacotesTCPsoordenados
PortasTCPeUDP
OsprincipaiscamposdeumcabealhoTCPouUDPso:
MarceloZ.Silva/BSIRedesI
20
Localhost
MarceloZ.Silva/BSIRedesI
21
HandshakeTCP
AocontrriodoprotocoloUDP,oprotocoloTCPorientadoa conexo.IssosignificaqueantesdetrocardadosoTCP necessitaabrirumaconexo. Essaconexoestabelecidaatravsdeumasequncia chamadaTCPhandshake(apertodemoTCP)emostrada aseguir. Essaseqnciaenvolveatrocadetrspacoteseporisso chamadodethreewayhandshake(apertodemoemtrs etapas). Opacoteinicialdohandshakechamadopacotede sincronizaoetemobitSYNligado.
MarceloZ.Silva/BSIRedesI 22
HandshakeTCP
t e m p o
MarceloZ.Silva/BSIRedesI
23
EstadosdasPortasTCP
OprotocoloTCPorientadoaconexo,oquesignificaqueantesde havertrocadedadosnecessrioqueumcomputadorestabelea umaconexoTCPcomoutroatravsdohandshakeTCP; QuandoumprogramaaceitareceberconexoemumaportaTCP (servidor)dizemosqueessaportaestemmodoLISTEN (OUVINDO); Quandohumaconexoestabelecidaaconexopassapara ESTABLISHED(ESTABELECIDA); OcomandonetstatadoWindowsedosUnixmostraoestadodas conexes.
MarceloZ.Silva/BSIRedesI
24
Sockets
##EchoServer importsocket host='' port=50000 backlog=5 size=1024 s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) s.bind((host,port)) s.listen(backlog) while1: client,address=s.accept() data=client.recv(size) ifdata: client.send("Vocedisse:") client.send(data) client.close()
MarceloZ.Silva/BSIRedesI 25