DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa. versão draft

Tamanho: px
Começar a partir da página:

Download "DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa. versão draft"

Transcrição

1 Prof. Marcelo de Sá Barbosa 1

2 data Comentários 03/08/2011 Início do semestre. Entrega da ementa e comentários sobres os assuntos. Recomendação da bibliografia. Períodos de provas. Limite de faltas para aprovação. Revisão de 10/08/2011 rede de computadores. MÓDULO 1: caracterização de sistemas distribuídos; internet; intranets; computação móvel e ubíqua; compartilhamento de recursos e a web; serviços web MÓDULO 2: Modelos de Sistema; Cliente-Servidor; Java RMI; Corba; COM; 17/08/2011 DCOM. MÓDULO 3: Sistemas distribuídos baseados em objetos MÓDULO 4: Sistemas de Arquivos distribuídos. MÓDULO 5: Sistemas 24/08/2011 distribuídos baseados na Web; Exercicios de fixação MÓDULO 6: Sistemas distribuídos baseados em coordenação. Exercícios de 31/08/2011 fixação 07/09/2011 FERIADO. PROCLAMAÇÃO DA INDEPENDÊNCIA DO BRASIL. 14/09/2011 MÓDULO 7: Sistemas peer-to-peer; 21/09/2011 REVISÃO MÓDULOS 1 A 7. PREPARAÇÃO PARA PROVA P1. 28/09/2011 PROVA P1 Turma Sistemas de informação 05/10/2011 PROVA P1 - Turma Ciência da Computação 2

3 3

4 MÓDULO 1: Caracterização de Sistemas Distribuídos; Internet; Intranets; Computação Móvel e Ubíqua; Compartilhamento de recursos e a web; Serviços Web MÓDULO 2: Modelos de Sistema; Cliente-Servidor; Java RMI; Corba; COM; DCOM. MÓDULO 3: Sistemas distribuídos baseados em objetos 4

5 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização gerencia uma intranet, a qual fornece serviços locais e serviços Internet para usuários locais e remotos. Sistemas distribuídos de pequena escala podem ser construídos a partir de computadores móveis e outros dispositivos computacionais portáteis interligados através de redes sem fio. O compartilhamento de recursos é o principal fator de motivação para a construção de sistemas distribuídos. Recursos como impressoras, arquivos, páginas web ou registros de banco de dados são gerenciados por servidores de tipo apropriado, por exemplo, servidores web gerenciam páginas web. Os recursos são acessados por clientes específicos, por exemplo; os clientes dos servidores web geralmente são chamados de navegadores. 5

6 Caracterização de Sistemas Distribuídos: A construção de sistemas distribuídos gera muitos desafios: Heterogeneidade: eles devem ser construídos a partir de uma variedade de redes, sistemas operacionais, hardware e linguagens de programação diferentes. Os protocolos de comunicação da Internet mascaram a diferença existente nas redes e o middleware pode cuidar das outras diferenças. Sistemas abertos: os sistemas distribuídos devem ser extensíveis - o primeiro passo é publicar as interfaces dos componentes, mas a integração de componentes escritos por diferentes programadores é um desafio real. Segurança: a criptografia pode ser usada para proporcionar proteção adequada para os recursos compartilhados e para manter informações sigilosas em segredo, quando são transmitidas em mensagens por uma rede. Os ataques de negação de serviço ainda são um problema. 6

7 Caracterização de Sistemas Distribuídos: Escalabilidade: um sistema distribuído é considerado escalável se o custo da adição de um usuário for um valor constante, em termos dos recursos que devem ser adicionados. Os algoritmos usados para acessar dados compartilhados devem evitar gargalos de desempenho e os dados devem ser estruturados hierarquicamente para se obter os melhores tempos de acesso. Os dados acessados freqüentemente podem ser replicados. Tratamento de falhas: qualquer processo, computador ou rede pode falhar, independentemente dos outros. Portanto, cada componente precisa conhecer as maneiras possíveis pelas quais os componentes de que depende podem falhar e ser projetado de forma a tratar de cada uma dessas falhas apropriadamente. 7

8 Caracterização de Sistemas Distribuídos: Concorrência: a presença de múltiplos usuários em um sistema distribuído é uma fonte de pedidos concorrentes para seus recursos. Em um ambiente concorrente, cada recurso deve ser projeta do para manter a consistência nos estados de seus dados. Transparência: o objetivo é tornar certos aspectos da distribuição invisíveis para o programador de aplicativos, para que este se preocupe apenas com o projeto de seu aplicativo em particular. Por exemplo, ele não precisa estar preocupado com sua localização ou com os detalhes sobre como suas operações serão acessadas por outros componentes, nem se será replicado ou migrado. As falhas de rede e de processos podem ser apresentadas aos programadores de aplicativos na forma de exceções mas elas devem ser tratadas. 8

9 Modelos de Sistema Um modelo de arquitetura de um sistema distribuído envolve o posicionamento de suas partes e os relacionamentos entre elas. Exemplos incluem o modelo cliente-servidor e o modelo peer-topeer. Não existe a noção de relógio global em um sistema distribuido, portanto os relógios de diferentes computadores não fornecem necessariamente a mesma hora. Toda comunicação entre processos é obtida por meio de troca de mensagens. A comunicação por troca de mensagens em uma rede de computadores pode ser afetada por atrasos, pode sofrer uma variedade de falhas e é vulnerável a ataques contra a segurança. 9

10 Modelos de Sistema Camadas de Software Applications, services Middleware Operating system Computer and network hardware Platform 10

11 Modelos de Sistema Plataforma: As camadas de hardware e software de mais baixo nível são frequentemente denominadas de plataforma para sistemas e aplicativos distribuidos. Essas camadas de mais baixo nível fornecem serviços para as camadas que estão acima delas de forma a levar a interface de programação do sistema a um nível de facilita a comunicação e a coordenação entre processos. Intel x86/windows, Intel x86/solaris, Power PC/Mac, são exemplos importantes de plataformas. 11

12 Modelos de Sistema Middleware: O termo middleware se aplica a uma camada de software que fornece abstração de programação, assim como o mascaramento de heterogeneidade das redes, do hardware, de sistemas operacionais e linguagens de programação subjacentes. Exemplos de middleware: CORBA ( Common Object Request Broker Architecture ). JAVA RMI ( Remote Method Invocation ). MICROSOFT - DCOM 12

13 CORBA ( Common Object Request Broker Architecture ): Tecnologia padrão de objetos e sistemas distribuidos, definido pelo OMG ( The object management group ). Mais de 700 empresas participantes como: HP, IBM, etc... CORBA oferece grande portabilidade integrando, por exemplo, linguagem COBOL com outras com suporte a CORBA. Serviços CORBA são descritos através de uma linguagem chamada IDL ( interface definition language ) que é a maneira de especificar as interfaces dos objetos servidores que os objestos clientes precisam conhecer. CORBA permite a troca de dados entre dois sistemas remotos. 13

14 CORBA ( Common Object Request Broker Architecture ): Para que ocorra a comunicação entre os clientes e os servidores CORBA, as chamadas dos clientes são repassadas para o mecanismo de comunicação da arquitetura CORBA que são os ORBs(Object Request Brokers) que baseiam-se no protocolo para objetos remotos IIOP(Internet Inter-ORB Protocol). O ORB atua como um barramento de comunicação sobre o qual todo objeto CORBA interage, transparentemente, com outros objetos CORBA localizados remota ou localmente. Um objeto CORBA interage com o ORB através da interface ORB ou através de um Object Adapter (um BOA Basic Object Adapter ou POA Portable Object Adapter). 14

15 JAVA RMI ( Remote Method Invocation ): O Remote Method Invocation (RMI) fornece um modelo simples e direto para computação distribuída com objetos java. Estes objetos podem ser objetos java, ou podem ser wrappers java [JAV2000a]. RMI é orientado a objetos em todos os níveis, mensagens são enviadas para objetos remotos, e objetos podem ser passados e retornados. É um componente do JDK idealizado para suportar chamadas de métodos remotos através de máquinas virtuais Java (JVM). 15

16 JAVA RMI ( Remote Method Invocation ). O RMI traz um modelo de objetos distribuídos para a linguagem Java. Através de RMI, objetos podem ser passados e retornados como parâmetros, diferente da maioria dos mecanismos baseados em chamadas de procedimentos remotos que exigem que os parâmetros sejam tipos de dados primitivos ou estruturas compostas de tipos primitivos. Isto significa que um novo código pode ser enviado através da rede dinamicamente carregado em tempo de execução por máquinas virtuais estrangeiras [JAV2000]. Um objeto RMI é basicamente um objeto Java remoto cujos métodos podem ser chamados por outra JVM(que pode estar em qualquer ponto da rede). Os métodos do objeto remoto RMI podem ser chamados como se o objeto fosse local. Uma referência para um objeto remoto pode ser passada em um argumento ou retornada como resultado. Não há necessidade de usar uma IDL, como em CORBA, versão para draft definir a interface dos objetos remotos. 16

17 JAVA RMI ( Remote Method Invocation ). Os objetos remotos são criados usando interfaces normais Java. Fornece facilidades semelhantes a um ORB de modelo Java para modelo Java. A desvantagem é que o RMI é proprietário. Ele não foi projetado para trabalhar com outros ORBs ou linguagens diferentes de Java[ORF97]. Ao trabalhar com serviços remotos, clientes RMI podem acessar novas versões de serviços Java quando estas são disponibilizadas. Não há necessidade de distribuir código para todos os clientes que poderiam conectar-se. O código pode ser acessado de um sistema de arquivos local ou remoto, ou ainda de um servidor web, facilitando mais a distribuição. Um registro(registry) é mantido para permitir aos clientes realizarem consultas para um determinado serviço. A figura a seguir mostra a interação entre diferentes componentes de um sistema RMI[JAV2000]. 17

18 JAVA RMI ( Remote Method Invocation ). Clientes que conhecem um determinado serviço podem consultar sua localização em um registro e acessar o serviço. Caso seja necessário uma nova classe, ela pode ser carregada de um servidor web. 18

19 MICROSOFT DCOM: O Distribuited Component Object Model DCOM é o modelo de objetos distribuídos proposto pela Microsoft. É a tecnologia básica para ActiveX e Microsoft Internet Explorer. Todos os produtos Microsoft baseiam-se neste modelo. Ao contrário do que poderia se pensar, DCOM possui implementações não somente em Windows, sua plataforma principal, mas também em Mac OS, Solaris, AIX, MVS e Linux. O DCOM suporta objetos remotos através de um protocolo denominado Object Remote Procedure Call (ORPC). 19

20 MICROSOFT DCOM: Um servidor DCOM é uma camada de código que é capaz de servir objetos de um determinado tipo em tempo de execução. Um servidor de objetos DCOM pode ter múltiplas interfaces, cada uma representando um diferente comportamento do objeto. Um cliente DCOM chama os métodos disponíveis de um servidor DCOM obtendo um ponteiro para uma das interfaces de objeto deste. O objeto cliente pode então iniciar a chamar os métodos disponíveis no servidor, através do ponteiro para a interface, como se o objeto servidor residisse no espaço de endereçamento do cliente. Como a especificação COM está em nível binário, ela permite servidores DCOM serem escritos em n linguagens distintas como: Java, C++, Delphi, Visual Basic e COBOL [RAJ99]. 20

21 MICROSOFT DCOM: O tipo de comunicação em DCOM é do tipo cliente/servidor. Na solicitação de um serviço, um cliente invoca um método implementado por um objeto remoto, que faz o papel de servidor. O serviço fornecido pelo servidor é encapsulado como um objeto e a interface deste objeto é descrita através de uma IDL(Interface Definition Language) assim como em CORBA. Desta maneira fica separada a interface do objeto da sua implementação. As interfaces que são especificadas em um arquivo IDL são as regras para a comunicação entre um servidor e seus clientes. Os clientes irão então poder interagir com os objetos remotos invocando os métodos que estão definidos nesta IDL. A implementação do objeto fica escondida do cliente. 21

22 MICROSOFT DCOM: Apesar de CORBA e DCOM possuírem algumas semelhanças como ambos utilizarem uma IDL para declaração de interface de objetos, CORBA é baseado em um modelo de objetos clássico; DCOM não. DCOM não suporta especificação de herança múltipla em IDL, porém pode ter múltiplas interfaces, para o mesmo objeto, e obter reuso encapsulando as interfaces de componentes internos e representando-os para um cliente. Obtémse reuso com DCOM através de inclusão e agregação ao invés de herança [ORF97]. 22

23 MICROSOFT DCOM: A princípio toda plataforma que utilize a arquitetura de software baseada em componentes da Microsoft COM (Modelo de Objetos componentes) pode utilizar DCOM. Um objeto COM permite múltiplas interfaces, cada uma representando um comportamento ou visão diferente deste objeto. DCOM é basicamente a extensão de COM para permitir acesso a objetos em máquinas diferentes de maneira transparente(em uma rede local, Internet ou longa distância). Pode utilizar n protocolos de transporte, como NetBios, TCP/IP, IPX/SPX e UDP. 23

24 MICROSOFT DCOM: COM suporta chamadas estáticas e dinâmicas de objetos, e é diferente da maneira como CORBA faz através de sua DII (Dynamic Invocation Interface) ou Java por meio de reflexão. Para a invocação estática funcionar, o compilador Microsoft IDL cria o código proxy e stub quando rodar no arquivo IDL. Estes são gravados em registros(registry) do sistema para permitir maior flexibilidade no seu uso[raj97]. O mecanismo de criação de objetos DCOM é o mesmo das bibliotecas COM apenas aperfeiçoado para permitir a criação de objetos em outras máquinas. Para criar um objeto remotamente, as bibliotecas devem saber o nome da máquina onde está localizado o objeto servidor. 24

25 MICROSOFT DCOM: A partir do nome do servidor e identificador de classe(clsid), parte das bibliotecas COM chamadas Service Control Manager(SCM) da máquina cliente conecta-se com o SCM na máquina servidora e requisita a criação do objeto. A comunicação entre objeto servidor e cliente são implementados como Comunicações do tipo Remote Procedure Call(RPC) orientada a objetos. Para chamar uma função remota, o cliente efetua uma chamada para o cliente stub(proxy). O stub repassa os parâmetros da chamada para uma mensagem de requisição e invoca um protocolo de transporte para levar! a mensagem para o servidor. Após receber do protocolo a mensagem, o stub do servidor desempacota a mensagem de requisição e chama a função específica no objeto. 25

26 Modelos de Sistema - Arquitetura de sistema Cliente Servidor: Essa é a arquitetura mais citada quando os sistemas distribuídos são discutidos. Historicamente ela é a mais importante e continua sendo amplamente empregada. Client invocation invocation Server result Server result Client Key: Process: Computer: 26

27 Modelos de Sistema - Arquitetura de sistema Peer to Peer Nessa arquitetura todos os processos envolvidos em uma tarefa ou atividade desempenham funções semelhantes, interagindo cooperativamente como pares ( peers ) sem distinção entre processos clientes e servidores nem entre os computadores em que são executados. Embora o modelo cliente servidor ofereça uma estratégia direta e ralativamente simples para o compartilhamento de dados e outros recursos ele não flexível em termos de escalabilidade. O objetivo da arquitetura peer to peer é explorar os recursos, tanto de dados quanto de hardware, de um grande número de computadores para o cumprimento de uma tarefa ou atividade. 27

28 Modelos de Sistema - Arquitetura de sistema Peer 2 Peer 1 Application Application Sharable objects Peer 3 Application Peer 4 Application Peers 5... N 28

29 Comunicação entre processos Serão estudadas caracteristicas da camada middleware. Applications, services RMI and RPC This chapter request-reply protocol marshalling and external data representation Middleware layers UDP and TCP 29

30 Comunicação entre processos No modelo OSI a camada de transporte trata basicamente dos protocolos UDP e TCP. Estudaremos como o middleware e como os aplicativos podem utilizar esses protocolos. 30

31 Comunicação entre processos Características: A passagem de mensagens entre um par de processos pode ser suportada por duas operações de comunicação de mensagem: send e receive, definidas em termos de destinos e mensagens. Para que um processo se comunique com outro, um deles, envia ( send ) uma mensagem para um destino e o outro processo, no destino, recebe (receive) a mensagem. 31

32 Comunicação entre processos Comunicação Síncrona Comunicação Assíncrona Emprego do protocolo UDP: Para algumas aplicações é aceitável usar um serviço que esteja exposto a falhas por omissões ocasionais. Por exemplo o Domain Name Service, que pesquisa nomes DNS na Internet é implementado sobre UDP. O voice over IP ( VOIP ) também é executado sobre UDP. Às vezes os datagramas UDP são uma escolha atraente, pois eles não sofrem as sobrecargas necessárias a entrega de mensagens garantidas. 32

33 Comunicação por fluxo TCP: Emprego do TCP: Muitos serviços frequentemente usados são executados em conexões TCP com números de portas reservados. Eles incluem os seguintes: HTTP: o protocolo de trasnferência de hipertexto é usado para comunicação entre navegadores e servidores web. FTP: o protocolo de transferência de arquivos permite a navegação em diretórios em um computador remoto e que arquivos sejam transferidos de um computador para outro por meio de uma conexão. TELNET: este serviço dá acesso a um computador remoto por meio de uma sessão de terminal. SMTP: o protocolo de transferência de correio eletrônico usado para enviar correspondência entre computadores. 33

34 QUESTÃO QUESTÃO GRUPO 1 1 DEFINA SISTEMAS DISTRIBUIDOS 2 QUAIS SÃO OS PRINCIPAIS DESAFIOS NA CONSTRUÇÃO DE SISTEMAS DISTRIBUIDOS? 3 QUAIS SÃO AS CAMADAS DO MODELO DE SOFTWARE? 4 DEFINA PLATAFORMA 5 O QUE É MIDDLEWARE? 6 QUAL O SIGNIFICADO DE CORBA? 7 QUAL A DIFERENÇA ENTRE JAVA RMI E DCOM? 8 QUAL A FUNÇÃO DE IDL? 9 DEFINA O PROTOCOLO IIOP. QUAL A SUA UTILIZAÇÃO? EXPLIQUE O FUNCIONAMENTO DAS ARQUITETURAS CLIENTE SERVIDOR E PEER TO 10 PEER, UTILIZANDO O CONCEITO DE PROCESSO. 11 O QUE É COMPUTAÇÃO MÓVEL E UBIQUA? FAÇA UM RESUMO SOBRE A ORIGEM DA INTERNET UTILIZANDO OS CONCEITOS DE 12 SISTEMAS DISTRIBUIDOS EXPLIQUE TRÊS DIFERENÇAS FUNDAMENTAIS ENTRE INTERNET E INTRANET COM 13 RELAÇÃO A ENDEREÇAMENTO IP E ROTEAMENTO. ELABORE UM RESUMO SOBRE OS PRINCIPAIS SISTEMAS OPERACIONAIS UTILIZADOS 14 EM EQUIPAMENTOS CELULARES INTELIGENTES, POR EXEMPLO SMARTPHONES NO MÊS DE AGOSTO DE 2011 FOI DIVULGADA A FUSÃO ENTRE UMA DAS PRINCIPAIS EMPRESAS DESENVOLVEDORAS DE SISTEMA OPERACIONAL PARA SMARTPHONES E 15 UMA EMPRESA FABRICANTE DE APARELHOS CELULARES. QUAIS SÃO ESSAS EMPRESAS? DESCREVA OS SISTEMAS OPERACIONAIS ENVOLVIDOS. ENTREGA DE PESQUISA SOBRE QUAIS SÃO AS 5 PRINCIPAIS ESTRUTURAS DE UMA 16 SISTEMA OPERACIONAL. ATIVIDADE ESCRITA DE PRÓPRIO PUNHO PELO ALUNO. 17 QUAL A PRINCIPAL MOTIVAÇÃO PARA CONSTRUÇÃO DE UM SISTEMA DISTRIBUIDO? 34

35 Prof. Marcelo de Sá Barbosa 35

36 MÓDULO 4: Sistemas de Arquivos distribuídos. MÓDULO 5: Sistemas distribuídos baseados na Web; 36

37 MÓDULO 4: Sistemas de Arquivos distribuídos. Introdução Arquitetura de serviço de arquivos Estudo de caso: Sun Network File System Aprimoramentos e outros desenvolvimentos 37

38 Sistemas de Arquivos distribuídos Introdução O compartilhamento de informações armazenadas talvez seja o aspecto mais importante dos recursos distribuídos. Os servidores web fornecem uma forma restrita de compartilhamento de dados, na qual os arquivos armazenados de forma local no servidor estão gerenciados e atualizados em sistemas de arquivo no servidor. Os sistemas de arquivos foram originalmente desenvolvidos para sistemas de computadores centralizados e computadores desktops. Os primeiros servidores de arquivos foram desenvolvidos por pesquisadores nos anos 70 e o Sun Network File System se tornou disponível no início dos anos 80. Um serviço de arquivos permite que os programas armazenem e acessem arquivos remotos exatamente como se fossem locais. 38

39 Sistemas de Arquivos distribuídos Introdução Sun NFS: foi amplamente adotado na indústria e nos ambientes acadêmicos, desde sua introdução em O projeto e desenvolvimento do NFS foram feitos pelo pessoal da Sun Microsystems em Para estimular sua adoção como padrão, as definições das principais interfaces foram colocadas em domínio público, permitindo que outros fornecedores produzissem implementações e o código fonte de um implementação de referência fosse disponibilizado. 39

40 Sistemas de Arquivos distribuídos Arquitetura do serviço de arquivos Client computer Server computer Application program Application program Directory service Flat file service Client module 40

41 Sistemas de Arquivos distribuídos Arquitetura do serviço de arquivos Serviço de arquivos plano: esse serviço de arquivo plano se preocupa com a implementação de operações sobre o conteúdo dos arquivos. São utilizados identificadores exclusivos de arquivos ( UFIDS unique file identifiers ). Serviço de diretório: esse serviço fornece um mapeamento entre os nomes textuais de arquivos e seus UFIDS. Módulo cliente: um módulo cliente é executado em cada computador cliente, integrando e estendendo as operações do serviço de arquivos plano e do serviço de diretório sob uma interface de clientes. 41

42 Sistemas de Arquivos distribuídos Estudo de caso: Sun Network File System Client computer Server computer UNIX system calls UNIX kernel Application program Application program Virtual file system UNIX kernel Virtual file system Local Remote UNIX file system Other file system NFS client NFS protocol NFS server UNIX file system 42

43 MÓDULO 5: Sistemas distribuídos baseados na Web. Introdução Serviços Web Descrições de serviço IDL para serviços Web Um serviço de diretório para uso com serviços web 43

44 Introdução Um serviço web ( web service ) fornece uma interface de serviço que permite aos clientes interagirem com servidores de uma maneira mais geral do que acontece com os navegadores web. Os clientes acessam as operações na interface de um serviço web por de meio de requisições e respostas formatadas em XML e normalmente transmitidas por HTTP. Os serviços web podem ser acessados de uma maneira ad hoc do que os serviços baseados em CORBA, permitindo que eles sejam mais facilmente usados em aplicações internet. Assim como no CORBA e em JAVA, as interfaces dos serviços web podem ser descritas em uma IDL. Mas para os serviços web, informações adicionais precisam ser descritas, incluindo a codificação e os protocolos de comunicação em uso e o local do serviço. Os usuários exigem uma maneira segura de criar, armazenar e modificar documentos e trocá-los na internet. Os canais TLS não fornecem todos os requisitos necessários. A segurança da XMLversão sedraft destina a suprir essa falta. 44

45 Grade (grid) é o nome usado para referenciar uma plataforma de middleware baseada em serviços web e projetada para uso por grandes grupos dispersos de usuários, com recursos maciços de dados que exige um processamento substancial. O World-Wide Telescope é uma aplicação típica de grade para colaboração científica na área da astronomia. As características da aplicações científicas com uso intenso de dados são derivadas de um estduo do World-Wide Telescope. Essas características levaram a um conjunto de requisitos para uma arquitetura de grade. 45

46 Infraestrutura e componentes dos serviços web Applications Directory servicesecurity Choreography Web Services Service descriptions (in WSDL) SOAP URIs (URLs or URNs) XML HTTP, SMTP or other transport 46

47 URI uniform resource identifier identificador de recurso geral, cujo valor pode ser um URL ou URN. URL inclui informações de localização do recurso, como nome de domínio do servidor de um recurso que está sendo nomeado. URN - uniform resource names são independentes da localização. Eles contam com um serviço de pesquisa para fazer o mapeamento para os URL dos recursos. SOAP especifica as regras de utilização da XML, para empacotar mensagens, por exemplo para suportar um protocolo de requisição de resposta. XML representação textual que embora mais volumosa do que outras representações foi adotada por sua legibilidade e pela consequente facilidade de depuração. WSDL - Web services description language 47

48 Serviços Web Geralmente uma interface de serviço web consiste em um conjunto de operações que podem ser usadas por um cliente na internet. As operações de um serviço web podem ser fornecidas por uma variedade de recursos diferentes, por exemplo programas, objetos ou bancos de dados. Um serviço web pode ser gerenciado por um servidor web, junto com páginas web, ou pode ser um serviço totalmente separado. A principal características da maioria dos serviços web é que podem processar mensagens SOAP formatadas em XML. Uma alternativa é a estratégia REST, que está descrita em linhas gerais a seguir. Cada serviço web usa sua própria descrição para tratar das características específicas das mensagens que recebe. Muitos servidores web comerciais, incluindo Amazon, Yahoo, Google e ebay, oferecem interfaces de serviço que permitem ao cliente manipular versão seus draftrecursos web. 48

49 Serviços Web O serviço web da Amazon permite aos clientes adicionar um item ao carrinho de compras ou verificar o status de uma transação. O serviços web da Amazon podem ser acessados por SOAP ou por REST. Isso permite que aplicações de outros fornecedores construam serviços com valor agregado sobre aqueles fornecidos pela Amazon. Por exemplo, uma aplicação de controle de inventário e aquisição poderia pedir o fornecimento de mercadorias da Amazon, à medida que elas fossem necessárias e controlar automaticamente a mudança de status de cada requisição. Mais de desenvolvedores se registraram para uso desses serviços web nos dois anos após eles serem introduzidos [ Greenfield e Dornan 2004 ]. Outro exemplo interessante de aplicação que exige a presença de um serviço web é a que implementa sniping em leilões da ebay. Sniping significa fazer um lance durante os últimos segundos antes que um leilão termine. 49

50 Embora os seres humanos possam realizar as mesmas ações, por meio de interação direta com a página web, eles não podem fazer com tanta rapidez. Para possibilitar o uso de uma variedade de padrões de comunicação, o protocolo SOAP é baseado no empacotamento de mensagens unidirecionais únicas. Ele suporta interações de requisições e resposta usando pares de mensagens únicas e especificando como vai representar as operações, seu argumentos e resultados. De acordo com Greenfield e Dornan [2004], 80% dos pedidos de serviços web no site Amazon são feitos por intermédio da interface REST e os 20% restantes utilizam o SOAP. 50

51 SOAP: O protocolo SOAP (simple object access protocol) é projetado para permitir tanto interação cliente servidor como assíncrona pela internet. Ele define um esquema para uso de XML para representar o conteúdo de mensagens de requisição e resposta, assim como um esquema para a comunicação de documentos. Originalmente o protocolo SOAP era baseado apenas em HTTP mas a versão atual é projetada para usar uma variedade de protocolos de transporte, incluindo SMTP, TCP ou UDP. A especificação do protocolo SOAP declara: -Como a XML deve se usada para representar o conteúdo de mensagens individuais - Como duas mensagens podem ser combinadas para produzir um padrão de requisição e resposta. - As regras sobre como os destinatários das mensagens devem processar os elementos XML que elas contêm. API s SOAP foram implementadas em muitas linguagens: JAVA, 51 JAVA script, Perl, Python.NET, C++, C# e Visual Basic.

52 O protocolo SOAP (simple object access protocol) 52

53 O protocolo SOAP (simple object access protocol) envelope header header element header element body body element body element 53

54 Estrutura do protocolo SOAP Envelope: Toda mensagem SOAP deve contê- lo. É o elemento raiz do documento XML. O Envelope pode conter declarações de namespaces e também atributos adicionais como o que define o estilo de codificação (encoding style).um "encoding style" define como os dados são representados no documento XML. Header: É um cabeçalho opcional. Ele carrega informações adicionais, como por exemplo, se a mensagem deve ser processada por um determinado nó intermediário (É importante lembrar que, ao trafegar pela rede, a mensagem normalmente passa por diversos pontos intermediários, até alcançar o destino final). Quando utilizado, o Header deve ser o primeiro elemento do Envelope. Body: Este elemento é obrigatório e contém o payload, ou a informação a ser transportada para o seu destino final. O elemento Body pode conter um elemento opcional Fault, usado para carregar mensagens de status e erros retornadas pelos "nós" ao processarem a mensagem. Fault: contém as informações dos erros ocorridos no envio da 54 mensagem. Apenas nas mensagens de resposta do servidor.

55 De acordo com o W3Schools, a estrutura da mensagem SOAP é definida em um documento XML que contém os seguintes elementos: <SOAP-ENV:envelope> <! Elemento raiz do SOAP e define que essa é uma mensagem SOAP--> <SOAP-ENV:header> <! Especifica informações especificas como autenticação (opcional)--> </SOAP-ENV:header> <SOAP-ENV:body> <! O elemento BODY contém o corpo da mensagem--> <SOAP-ENV:fault> <! O elemento FAULT contém os erros que podem ocorrer--> </SOAP-ENV:fault> </SOAP-ENV:body> </SOAP-ENV:envelope> 55

56 Exemplo 1: SOAP POST /StockQuote HTTP/1.1 Host: Content-Type: text/xml; charset="utf-8" Content-Length: nnnn SOAPAction: "Some-URI" <SOAP-ENV:Envelope xmlns:soap-env=" SOAP-ENV:encodingStyle=" <SOAP-ENV:Header> <t:transaction xmlns:t="some-uri" SOAP-ENV:mustUnderstand="1 >5 <t:transaction> </SOAP-ENV:Header> <SOAP-ENV:Body> <m:getlasttradeprice> xmlns:m="some-uri"> <symbol>dis</symbol> </m:getlasttradeprice> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 56

57 Exemplo 2: SOAP flight booking a flight booking b Client Travel Agent Service hire car booking a hotel booking a hotel booking b hire car booking b 57

58 Web Service Description Language (WSDL) Documento WSDL De que forma um cliente de um Web Service sabe qual formato dos métodos a serem chamados e quais parâmetros a serem passados? Como cliente e serviço sabem como processar uma requisição? Para solucionar estes tipos de perguntas foi criado um documento, que utiliza uma linguagem chamada WSDL. WSDL ou Web Service Description Language é uma linguagem baseada em XML, utilizada para descrever um Web Service. Um Web Service deve, portanto, definir todas as suas interfaces, operações, esquemas de codificação, entre outros neste documento. 58

59 REST (representational state transfer) É uma estratégia com um estilo de operação muito restrito, no qual os clientes usam URL s e as operações HTTP GET, PUT, DELETE e POST para manipular recursos representados em XML. A análise está na manipulação de recursos de dados em vez de interfaces. Os clientes recebem o estado inteiro de um recurso, em vez de chamar uma operação para fornecer alguma parte dele. Fielding acredita que, no contexto da internet, a proliferação de diferentes interfaces de serviço não será tão útil quanto um conjunto mínimo de operações simples e uniformes. Quando um novo recurso é criado, ele recebe um novo URL por meio do qual pode ser acessado ou atualizado. 59

60 Descrições de serviço IDL para serviços Web As definições de interface são necessárias para permitir que os clientes se comuniquem com os serviços. Para serviços web, as definições de interface são fornecidas como parte de uma descrição de serviço mais geral, que especifica duas outras características adicionais, como as mensagens devem ser comunicadas ( por exemplo, por SOAP com HTTP ) e o URI do serviço. Para fornecer serviço em ambiente com múltiplas linguagens, as descrições de serviço são escritas em XML. A descrição do serviço forma a base de um acordo entre um cliente e um servidor quanto ao serviço oferecido. Ela reúne todos os fatos pertinentes ao serviço que são relevantes para seu clientes. As descrições de serviço geralmente são usadas para gerar stubs de cliente que implementam automaticamente o comportamento correto para o cliente. O componente do tipo IDL de uma descrição de serviço é mais flexível do que as outras IDL s, pois um serviço pode ser especificado em termos dos tipos de mensagens que enviará e receberá, ou em termos das operações que suporta, para permitir a troca de documentos e interações estilo requisição e resposta. 60

61 Os principais elementos de uma descrição WSDL definitions types message interface bindings services target namespacedocument style request-reply style how where abstract concrete Interface: conjunto de operações pertencentes a um serviço web Bindings: escolha de protocolos Service: escolha do endereço de ponto final ou do servidor 61

62 Um serviço de diretório para uso com serviços web Existem muitas maneiras pelas quais os clientes podem obter descrições de serviço, por exemplo qualquer um que forneça um serviço web de mais alto nível, como o serviço de agente de viagens que quase que certamente faria uma página web anunciando o serviço e os clientes em potencial se deparariam com a página ao procurar serviços desse tipo. Entretanto, qualquer organização que pretenda basear suas aplicações em serviços web achará mais conveniente usar um serviço de diretório para tornar esses serviços disponíveis para os clientes. Esse é o objetivo do UDDI (Universal Directory and Discovery Service) [ Bellwod et al. 2003] que fornece um serviço de nome e um serviço de diretório. Serviço de diretório: um serviço que armazena conjuntos de vínculos entre nomes e atributos e que pesquisa entradas que correspondem a especificações baseada no atributo. Exemplo: Active Directory Services da Microsoft ou X.500 e se primo LDAP. Normalmente o serviço de diretório é chamado de serviços de páginas amarelas Serviço de nome: lista telefônica ou serviço de páginas brancas. 62

63 O Active Directory é uma implementação de serviço de diretório no protocolo LDAP que armazena informações sobre objetos em rede de computadores e disponibiliza essas informações a usuários e administradores desta rede. É um software da Microsoft utilizado em ambientes Windows. O Active Directory, surgiu da necessidade de se ter um único diretório, ou seja, ao invés do usuário ter uma senha para acessar o sistema principal da empresa, uma senha para ler seus s, uma senha para se logar no computador, e várias outras senhas, com a utilização do Active Directory, os usuários poderão ter apenas uma senha para acessar todos os recursos disponíveis na rede. Podemos definir um diretório como sendo um banco de dados que armazena as informações dos usuários. 63

64 O Active Directory surgiu juntamente com o Windows 2000 Server. Objetos como usuários, grupos, membros dos grupos, senhas, contas de computadores, relações de confiança, informações sobre o domínio, unidades organizacionais, etc, ficam armazenados no banco de dados do Active Directory. Além de armazenar vários objetos em seu banco de dados, o Active Directory disponibiliza vários serviços, como: autenticação dos usuários, replicação do seu banco de dados, pesquisa dos objetos disponíveis na rede, administração centralizada da segurança utilizando políticas de grupo, entre outros serviços. Esses recursos tornam a administração do Active Directory bem mais fácil, sendo possível administrar todos os recursos disponíveis na rede centralizadamente. 64

65 As descrições de serviço WSDL podem ser pesquisadas pelo nome ( um serviço de catálogo telefônico, ou serviço de nomes ) ou pelo atributo ( serviço de diretório ou serviço de páginas amarelas ). Elas podem ser acessadas diretamente por meio de seus URL s o que é conveniente para desenvolvedores que estejam projetando programas clientes que utilizam o serviço. As estruturas de dados que suportam UDDI são projetadas de forma a permitir todos os estilos de acesso anteriores e podem incorporar qualquer volume de informações legíveis para seres humanos. Os dados são organizados em quatro estruturas: BusinessEntity: descreve a organização que fornece esses serviços web, dando seu nome, endereço, atividades, etc... BusinessServices: armazena informações sobre um conjunto de instâncias de um seviço web, como seu nome e uma descrição de seu propósito; por exemplo, agente de viagens ou livraria. BindingTemplate: contém o endereço de uma instância de serviço web e referências para descrições do serviço tmodel: contém descrições de serviço, normalmente documentos WSDL, armazenadas fora do banco de dados e acessadas por meio de URL. 65

66 As principais estruturas de dados - UDDI businessentity businessservices human readable businessservices information businessservices about the publisher bindingtemplate human readable bindingtemplate information URL about a bindingtemplate family of services information about the URL service interfaces key URL key key tmodel tmodel tmodel service descriptions 66

67 QUESTÃO QUESTÃO - GRUPO 2 1 DEFINA UFID 2 CARACTERIZE SERVIÇO DE DIRETORIO E ARQUIVO DE CLIENTES. 3 EXPLIQUE SUCINTAMENTE SUN NETWORK FILE SYSTEM. 4 QUAL A FINALIDADE DO PROTOCOLO NFS. 5 DEFINA SUCINTAMENTE UM WEB SERVICE. 6 COMPARE O SERVIÇOS CORBA COM WEB SERVICE. 7 É POSSIVEL A UTILIZAÇÃO DE IDL PARA JAVA, CORBA E WEB SERVICE? 8 UMA DAS PRINCIPAIS PLATAFORMAS UTILIZADAS EM WEB SERVICE ESTA ESTRUTURADA EM GRANDE ESCALA. TRATA-SE DA ARQUITETURA GRID. DEFINA GRID. 9 DEFINA XML E OS PRINCIPAIS PROTOCOLOS DA CAMADA DE APLICAÇÃO. 10 QUAL O SIGNIFICADO SOAP. EXEMPLIFIQUE SUA UTILIZAÇÃO 11 QUAL A DIFERENÇA A DIFERENÇA ENTRE URI, URL E URN 12 DEFINA WSDL 13 FAÇA UM COMPARATIVO ENTRE SOAP E REST. 14 DEFINA SNIPING. QUAL A PRINCIPAL FINALIDADE DE UTILIZAÇÃO? 15 QUAIS SÃO AS PINCIPAIS LINGUAGENS QUE XML SUPORTA? 16 CARACTERIZE AS PRINCIPAIS ESTRUTURAS DO PROTOCOLO SOAP. ELABORE UM DESENHO REPRESENTATIVO DESSA ESTRUTURA 17 QUAIS SÃO OS PRINCIPAIS BLOCOS FUNCIONAIS DO XML DEFINIDOS PELO W3SCHOOL? 18 DEFINA OS PRINCIPAIS ELEMENTOS DE UMA DESCRIÇÃO WSDL 19 DEFINA O SERVIÇO UDDI. 20 O QUE É UM SERVIÇO DE DIRETORIO? EXEMPLIFIQUE E CARACTERIZE UM SERVIÇO DE PAGINAS AMARELAS NA WEB. 67

68 Prof. Marcelo de Sá Barbosa 68

69 MÓDULO 6: Sistemas distribuídos baseados em coordenação. Coordenação de serviços Web MÓDULO 7: Sistemas peer to peer 69

70 Coordenação de serviços Web A infraestrutura SOAP suporta interações requisiçãoresposta entre clientes e serviços web. Entretanto, muitas aplicações úteis envolvem várias requisições que precisam ser executadas em uma ordem em particular. Por exemplo, ao se fazer reservas para um vôo, são reunidas as informações sobre preço e disponibilidade, antes que as reservas sejam feitas. Quando o usuário interage com páginas web por intermédio de um navegador para fazer reserva em um vôo ou para dar um lance em um leilão, a interface fornecida pela navegador controla a sequência em que as operações são executadas. 70

71 Transações distribuidas planas e aninhadas Uma transação cliente se torna distribuida se ativa operações em vários servidores diferentes. Existem duas maneiras distintas pelas quais as transações distribuídas podem se estruturadas: como transações planas e transações aninhadas. Em um transação plana, um cliente faz pedidos para mais de um servidor. Em uma transação aninhada, a transação de nível superior pode abrir subtransações e assim sucessivamente em qualquer profundidade de aninhamento. 71

72 Transações distribuídas planas e aninhadas X T 11 M X T T Y Client T T 1 T 12 T 21 N Client Z T 2 Y P T 22 (a) Flat transaction (b) Nested transactions 72

73 Coordenação de uma transação distribuida Os servidores que executam pedidos como parte de uma transação distribuida precisam se comunicar uns com os outros para coordenar suas ações quando a transação é efetivada Client T T 1 X A a.withdraw(10) T = opentransaction Y opensubtransaction a.withdraw(10); opensubtransaction b.withdraw(20); opensubtransaction c.deposit(10); opensubtransaction d.deposit(20); closetransaction T 2 T 3 T 4 Z B C D b.withdraw(20) c. deposit(10) d.deposit(20) 73

74 Tem-se trabalhado em um modelo geral para a coordenação de serviços web, o qual é semelhante ao modelo de transação distribuida descrito anteriormente pois têm funções de coordenador e participante que são capazes de atuar em protocolos específicos, por exemplo, para executar uma transação distribuida. Esse trabalho, que é chamado WS-Coordination é descrito por Langworthy[2004]. Requisitos de coreografia: se destina a suportar interações entre serviços web que geralmente são gerenciadas por diferentes empresas e organizações. 74

75 Modelos de Sistema - Arquitetura de sistema Peer to Peer Nessa arquitetura todos os processos envolvidos em uma tarefa ou atividade desempenham funções semelhantes, interagindo cooperativamente como pares ( peers ) sem distinção entre processos clientes e servidores nem entre os computadores em que são executados. Embora o modelo cliente servidor ofereça uma estratégia direta e ralativamente simples para o compartilhamento de dados e outros recursos ele não flexível em termos de escalabilidade. O objetivo da arquitetura peer to peer é explorar os recursos, tanto de dados quanto de hardware, de um grande número de computadores para o cumprimento de uma tarefa ou atividade. 75

76 Modelos de Sistema - Arquitetura de sistema Peer 2 Peer 1 Application Application Sharable objects Peer 3 Application Peer 4 Application Peers 5... N 76

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS 1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services Web Services Existem diferentes tipos de comunicação em um sistema distribuído: Sockets Invocação

Leia mais

Serviços Web: Arquitetura

Serviços Web: Arquitetura Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

Serviços Web: Introdução

Serviços Web: Introdução Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

Princípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5

Princípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5 Princípios de Sistemas Distribuídos Tecnologias utilizadas em sistemas distribuídos Aula 5 Conceitos de comunicação entre processos Interprocess Communication (IPC) Sistemas distribuídos são construídos

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 13 Web Services Web Services

Leia mais

Modelos de Arquiteturas. Prof. Andrêza Leite andreza.lba@gmail.com

Modelos de Arquiteturas. Prof. Andrêza Leite andreza.lba@gmail.com Modelos de Arquiteturas Prof. Andrêza Leite andreza.lba@gmail.com Agenda Introdução Arquitetura de Sistemas Distribuídos Clientes e Servidores Peer-to-Peer Variações Vários Servidores Proxy Código Móvel

Leia mais

Arquitetura dos Sistemas de Informação Distribuídos

Arquitetura dos Sistemas de Informação Distribuídos Arquitetura dos Sistemas de Informação Distribuídos Quando se projeta um sistema cuja utilização é destinada a ser feita em ambientes do mundo real, projeções devem ser feitas para que o sistema possa

Leia mais

Capítulo 8 - Aplicações em Redes

Capítulo 8 - Aplicações em Redes Capítulo 8 - Aplicações em Redes Prof. Othon Marcelo Nunes Batista Mestre em Informática 1 de 31 Roteiro Sistemas Operacionais em Rede Modelo Cliente-Servidor Modelo P2P (Peer-To-Peer) Aplicações e Protocolos

Leia mais

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial

Leia mais

Aula 03-04: Modelos de Sistemas Distribuídos

Aula 03-04: Modelos de Sistemas Distribuídos UNIVERSIDADE Computação Aula 03-04: Modelos de Sistemas Distribuídos 2o. Semestre / 2014 Prof. Jesus Principais questões no projeto de um sistema distribuído (SD) Questão de acesso (como sist. será acessado)

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 28 de abril de 2010 Principais suportes de Java RMI (Remote Method Invocation), da Sun Microsystems DCOM (Distributed Component Object Model), da

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Soquetes Um soquete é formado por um endereço IP concatenado com um número de porta. Em geral, os soquetes utilizam uma arquitetura cliente-servidor. O servidor espera por pedidos

Leia mais

Sistemas Distribuídos Arquiteturas Middlewares

Sistemas Distribuídos Arquiteturas Middlewares Sistemas Distribuídos Arquiteturas s Arquitetura Arquitetura de um sistema é sua estrutura em termos dos componentes e seus relacionamentos Objetivo: garantir que a estrutura satisfará as demandas presentes

Leia mais

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Web Services. Integração de aplicações na Web. Sistemas Distribuídos Web Services Integração de aplicações na Web Integração de Aplicações na Web Interoperação entre ambientes heterogêneos desafios diversidade de componentes: EJB, CORBA, DCOM... diversidade de linguagens:

Leia mais

Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware.

Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware. Camadas de Software - o Middleware Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas Modelos de Arquitecturas para sistemas distribuidos Interfaces e Objectos Requerimentos para Arquitecturas Distribuídas

Leia mais

Adriano Reine Bueno Rafael Barros Silva

Adriano Reine Bueno Rafael Barros Silva Adriano Reine Bueno Rafael Barros Silva Introdução RMI Tecnologias Semelhantes Arquitetura RMI Funcionamento Serialização dos dados Criando Aplicações Distribuídas com RMI Segurança Exemplo prático Referências

Leia mais

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s:

Rede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s: Tecnologia em Redes de Computadores Redes de Computadores Professor: André Sobral e-mail: alsobral@gmail.com Conceitos Básicos Modelos de Redes: O O conceito de camada é utilizado para descrever como ocorre

Leia mais

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa Prof. Marcelo de Sá Barbosa Introdução Visão geral das técnicas de segurança Algoritmos de criptografia Assinaturas digitais Criptografia na prática Introdução A necessidade de proteger a integridade e

Leia mais

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima INFORMÁTICA FUNDAMENTOS DE INTERNET Prof. Marcondes Ribeiro Lima Fundamentos de Internet O que é internet? Nome dado a rede mundial de computadores, na verdade a reunião de milhares de redes conectadas

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Comunicação Remota Gustavo Reis gustavo.reis@ifsudestemg.edu.br 1 Comunicação entre processos está no coração de todo sistema distribuído. Não tem sentido estudar sistemas distribuídos

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Basedos na Web Capítulo 12 Agenda Arquitetura Processos Comunicação Nomeação Sincronização Consistência e Replicação Introdução

Leia mais

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP SMTP "Protocolo de transferência de correio simples (ou em inglês Simple Mail Transfer Protocol ) é o protocolo padrão para envio de e- mails através da

Leia mais

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 Controle de Revisões Micropagamento F2b Web Services/Web 18/04/2006 Revisão Data Descrição 00 17/04/2006 Emissão inicial. www.f2b.com.br

Leia mais

Considerações no Projeto de Sistemas Cliente/Servidor

Considerações no Projeto de Sistemas Cliente/Servidor Cliente/Servidor Desenvolvimento de Sistemas Graça Bressan Graça Bressan/LARC 2000 1 Desenvolvimento de Sistemas Cliente/Servidor As metodologias clássicas, tradicional ou orientada a objeto, são aplicáveis

Leia mais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com Projeto de Sistemas Distribuídos Prof. Andrêza Leite andreza.lba@gmail.com Agenda Introdução Exemplos de Sistemas Distribuídos Compartilhamento de Recursos e a Web Principais Desafios para a Implementação

Leia mais

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos

Leia mais

Sistemas Distribuídos Comunicação entre Processos em Sistemas Distribuídos: Middleware de comunicação Aula II Prof. Rosemary Silveira F. Melo Comunicação em sistemas distribuídos é um ponto fundamental

Leia mais

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1 Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTRODUÇÃO Atualmente empresas de diversos portes estão encontrando nos web services soluções para seus

Leia mais

www.victorpinheiro.jimdo.com www.victorpinheiro.jimdo.com

www.victorpinheiro.jimdo.com www.victorpinheiro.jimdo.com SERVIÇOS DE REDES DE COMPUTADORES Prof. Victor Guimarães Pinheiro/victor.tecnologo@gmail.com www.victorpinheiro.jimdo.com www.victorpinheiro.jimdo.com Modelo TCP/IP É o protocolo mais usado da atualidade

Leia mais

Wireshark. Captura de Protocolos da camada de aplicação. Maicon de Vargas Pereira

Wireshark. Captura de Protocolos da camada de aplicação. Maicon de Vargas Pereira Wireshark Captura de Protocolos da camada de aplicação Maicon de Vargas Pereira Camada de Aplicação Introdução HTTP (Hypertext Transfer Protocol) 2 Introdução Camada de Aplicação Suporta os protocolos

Leia mais

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 2 - MODELO DE REFERÊNCIA TCP (RM TCP) 1. INTRODUÇÃO O modelo de referência TCP, foi muito usado pela rede ARPANET, e atualmente usado pela sua sucessora, a Internet Mundial. A ARPANET é de grande

Leia mais

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML. Web services Um web service é qualquer software que está disponível através da Internet através de uma interface XML. XML é utilizado para codificar toda a comunicação de/para um web service. Web services

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Comunicação Inter-Processos Sockets e Portas Introdução Sistemas distribuídos consistem da comunicação entre processos

Leia mais

INE5380 - Sistemas Distribuídos

INE5380 - Sistemas Distribuídos INE5380 - Sistemas Distribuídos Object Request Broker e CORBA Por: Léo Willian Kölln - 0513227-4 Novembro de 2006 ORB Object Request Broker ORB aqui será tratado como um Middleware que permite a construção

Leia mais

Capítulo VI CORBA. Common Object Request Broker Architecture. [Cardoso2008] Programação de Sistemas Distribuídos em Java, Jorge Cardoso, FCA, 2008.

Capítulo VI CORBA. Common Object Request Broker Architecture. [Cardoso2008] Programação de Sistemas Distribuídos em Java, Jorge Cardoso, FCA, 2008. Common Object Request Broker Architecture [Cardoso2008] Programação de Sistemas Distribuídos em Java, Jorge Cardoso, FCA, 2008. From: Fintan Bolton Pure CORBA SAMS, 2001 From: Coulouris, Dollimore and

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

3 SCS: Sistema de Componentes de Software

3 SCS: Sistema de Componentes de Software 3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário

Leia mais

Arquitetura e Protocolos de Rede TCP/IP. Modelo Arquitetural

Arquitetura e Protocolos de Rede TCP/IP. Modelo Arquitetural Arquitetura e Protocolos de Rede TCP/IP Modelo Arquitetural Motivação Realidade Atual Ampla adoção das diversas tecnologias de redes de computadores Evolução das tecnologias de comunicação Redução dos

Leia mais

CORBA. Common Object Request Broker Architecture. Unicamp. Centro de Computação Rubens Queiroz de Almeida queiroz@unicamp.br

CORBA. Common Object Request Broker Architecture. Unicamp. Centro de Computação Rubens Queiroz de Almeida queiroz@unicamp.br CORBA Common Object Request Broker Architecture Unicamp Centro de Computação Rubens Queiroz de Almeida queiroz@unicamp.br Objetivos Apresentação Tecnologia CORBA Conceitos Básicos e Terminologia Considerações

Leia mais

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve - 981648-9

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve - 981648-9 Laboratório de Computação VI JAVA IDL Fabricio Aparecido Breve - 981648-9 O que é Java IDL? Java IDL é uma tecnologia para objetos distribuídos, ou seja, objetos em diferentes plataformas interagindo através

Leia mais

Redes. Pablo Rodriguez de Almeida Gross

Redes. Pablo Rodriguez de Almeida Gross Redes Pablo Rodriguez de Almeida Gross Conceitos A seguir serão vistos conceitos básicos relacionados a redes de computadores. O que é uma rede? Uma rede é um conjunto de computadores interligados permitindo

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Comunicando através da rede

Comunicando através da rede Comunicando através da rede Fundamentos de Rede Capítulo 2 1 Estrutura de Rede Elementos de comunicação Três elementos comuns de comunicação origem da mensagem o canal destino da mensagem Podemos definir

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: comunicação orientada por mensagem e comunicação orientada por fluxo Prof. MSc. Hugo Souza Continuando o módulo 03 da primeira unidade, iremos abordar sobre

Leia mais

Sistemas Distribuídos. Introdução

Sistemas Distribuídos. Introdução Sistemas Distribuídos Introdução Definição Processos Um sistema distribuído é um conjunto de computadores independentes, interligados por uma rede de conexão, executando um software distribuído. Executados

Leia mais

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS 1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização

Leia mais

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição? Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor remoto esteja associado. 2. Estabelecer

Leia mais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web; CONCEITOS INICIAIS Agenda A diferença entre páginas Web, Home Page e apresentação Web; O que é necessário para se criar páginas para a Web; Navegadores; O que é site, Host, Provedor e Servidor Web; Protocolos.

Leia mais

2 Conceitos relativos a Web services e sua composição

2 Conceitos relativos a Web services e sua composição 15 2 Conceitos relativos a Web services e sua composição A necessidade de flexibilidade na arquitetura das aplicações levou ao modelo orientado a objetos, onde os processos de negócios podem ser representados

Leia mais

MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER

MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER MINICURSO WINDOWS SERVER 2008 UTILIZANDO O VMWARE PLAYER TÁSSIO JOSÉ GONÇALVES GOMES tassiogoncalvesg@gmail.com MINICURSO WINDOWS SERVER 2008 TÁSSIO GONÇALVES - TASSIOGONCALVESG@GMAIL.COM 1 CONTEÚDO Arquitetura

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Processos- Clientes, Servidores, Migração Capítulo 3 Agenda Clientes Interfaces de usuário em rede Sistema X Window Software do lado cliente para

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

MÓDULO 8 Modelo de Referência TCP/IP

MÓDULO 8 Modelo de Referência TCP/IP MÓDULO 8 Modelo de Referência TCP/IP A internet é conhecida como uma rede pública de comunicação de dados com o controle totalmente descentralizado, utiliza para isso um conjunto de protocolos TCP e IP,

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2) Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema

Leia mais

Service Oriented Architecture SOA

Service Oriented Architecture SOA Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)

Leia mais

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Introdução O que é Protocolo? - Para que os pacotes de dados trafeguem de uma origem até um destino, através de uma rede, é importante

Leia mais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.

Leia mais

Redes de Computadores. Prof. André Y. Kusumoto andre_unip@kusumoto.com.br

Redes de Computadores. Prof. André Y. Kusumoto andre_unip@kusumoto.com.br Redes de Computadores Prof. André Y. Kusumoto andre_unip@kusumoto.com.br Open Systems Interconnection Modelo OSI No início da utilização das redes de computadores, as tecnologias utilizadas para a comunicação

Leia mais

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES 09/2013 Cap.3 Protocolo TCP e a Camada de Transporte 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica. Os professores

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelos e arquitecturas 14/15 Sistemas Distribuídos 1 Modelos arquitecturais 14/15 Sistemas Distribuídos 2 Camadas de Software: o Middleware Aplicações Middleware Sistema Operativo

Leia mais

Trabalho de Sistemas Distribuídos

Trabalho de Sistemas Distribuídos Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Petrópolis 2015, v-1.0 Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Trabalho sobre sistemas distribuídos e suas tecnologias. Universidade

Leia mais

REDES DE COMPUTADORES E TELECOMUNICAÇÕES MÓDULO 16

REDES DE COMPUTADORES E TELECOMUNICAÇÕES MÓDULO 16 REDES DE COMPUTADORES E TELECOMUNICAÇÕES MÓDULO 16 Índice 1. SISTEMA OPERACIONAL DE REDE...3 1.1 O protocolo FTP... 3 1.2 Telnet... 4 1.3 SMTP... 4 1.4 SNMP... 5 2 1. SISTEMA OPERACIONAL DE REDE O sistema

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Mecanismos de Comunicação Protocolos de Aplicação Mecanismos de comunicação

Leia mais

5 Estudo de caso: utilizando o sistema para requisição de material

5 Estudo de caso: utilizando o sistema para requisição de material 61 5 Estudo de caso: utilizando o sistema para requisição de material A fim de avaliar as características da arquitetura proposta e a corretude da implementação, realizamos experiências com cenários de

Leia mais

Comunicação. Parte II

Comunicação. Parte II Comunicação Parte II Carlos Ferraz 2002 Tópicos Comunicação Cliente-Servidor RPC Comunicação de objetos distribuídos Comunicação em Grupo Transações Atômicas Comunicação Stream 2 Comunicação cliente-servidor

Leia mais

MODELO CLIENTE SERVIDOR

MODELO CLIENTE SERVIDOR SISTEMAS DISTRIBUÍDOS Modelo Cliente Servidor Modelo que estrutura um S.O. como um grupo de processos cooperantes, chamados servidores, que oferecem serviços a processos usuários, denominados clientes;

Leia mais

Comunicação em Sistemas Distribuídos

Comunicação em Sistemas Distribuídos Comunicação em Sistemas Distribuídos Sockets Aplicações Protocolo de Aplicação FTP, SMTP, HTTP, Telnet, SNMP, etc. sockets TCP, UDP IP Data Link Ethernet, Token Ring, FDDI, etc Física Conjunto de APIs

Leia mais

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds

Leia mais

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes Introdução Conceitos básicos programação distribuída + programação orientada a objetos = Objetos distribuídos Motivação

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

PROJETO E IMPLANTAÇÃO DE INTRANETS

PROJETO E IMPLANTAÇÃO DE INTRANETS PROJETO E IMPLANTAÇÃO DE INTRANETS Aulas : Terças e Quintas Horário: AB Noite [18:30 20:20hs] PROJETO E IMPLANTAÇÃO DE INTRANETS 1 Conteúdo O que Rede? Conceito; Como Surgiu? Objetivo; Evolução Tipos de

Leia mais

Web Services. (Introdução)

Web Services. (Introdução) Web Services (Introdução) Agenda Introdução SOA (Service Oriented Architecture) Web Services Arquitetura XML SOAP WSDL UDDI Conclusão Introdução Comunicação distribuída Estratégias que permitem a comunicação

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos 11 Objetivos Este capítulo apresenta uma introdução aos sistemas distribuídos em geral Arquiteturas de cliente servidor Características das arquiteturas de 2 e 3 camadas Ambiente

Leia mais

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores Camadas de Serviço de Hardware e Software em Sistemas Distribuídos Arquiteutra de Sistemas Distribuídos Introdução Applications, services Adaptação do conjunto de slides do livro Distributed Systems, Tanembaum,

Leia mais

Introdução ao Active Directory AD

Introdução ao Active Directory AD Introdução ao Active Directory AD Curso Técnico em Redes de Computadores SENAC - DF Professor Airton Ribeiro O Active Directory, ou simplesmente AD como é usualmente conhecido, é um serviço de diretórios

Leia mais

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback SMTP, POP, IMAP, DHCP e SNMP Professor Leonardo Larback Protocolo SMTP O SMTP (Simple Mail Transfer Protocol) é utilizado no sistema de correio eletrônico da Internet. Utiliza o protocolo TCP na camada

Leia mais

Informática I. Aula 22. http://www.ic.uff.br/~bianca/informatica1/ Aula 22-03/07/06 1

Informática I. Aula 22. http://www.ic.uff.br/~bianca/informatica1/ Aula 22-03/07/06 1 Informática I Aula 22 http://www.ic.uff.br/~bianca/informatica1/ Aula 22-03/07/06 1 Critério de Correção do Trabalho 1 Organização: 2,0 O trabalho está bem organizado e tem uma coerência lógica. Termos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Aula 4 Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Migração de Código Em

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação- Protocolos, Tipos, RPC Capítulo 4 Agenda Protocolos em Camadas Pilhas de Protocolos em Sistemas Distribuídos Tipos de Comunicação

Leia mais

Desenvolvimento Cliente-Servidor 1

Desenvolvimento Cliente-Servidor 1 Desenvolvimento Cliente- 1 Ambiienttes de Desenvollviimentto Avançados Engenharia Informática Instituto Superior de Engenharia do Porto Alexandre Bragança 1998/99 Ambientes de Desenvolvimento Avançados

Leia mais

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho. Entregue três questões de cada prova. Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor

Leia mais

SOAP. Web Services & SOAP. Tecnologias de Middleware 2004/2005. Simple Object Access Protocol. Simple Object Access Protocol SOAP

SOAP. Web Services & SOAP. Tecnologias de Middleware 2004/2005. Simple Object Access Protocol. Simple Object Access Protocol SOAP Web Services & SOAP Tecnologias de Middleware 2004/2005 SOAP Simple Object Access Protocol Os web services necessitam de comunicar entre eles e trocar mensagens. O SOAP define a estrutura e o processamento

Leia mais

Revisão. Karine Peralta karine.peralta@pucrs.br

Revisão. Karine Peralta karine.peralta@pucrs.br Revisão Karine Peralta Agenda Revisão Evolução Conceitos Básicos Modelos de Comunicação Cliente/Servidor Peer-to-peer Arquitetura em Camadas Modelo OSI Modelo TCP/IP Equipamentos Evolução... 50 60 1969-70

Leia mais

Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) São Paulo, 2011 Universidade Paulista (UNIP) Service Oriented Architecture (SOA) Prof. MSc. Vladimir Camelo vladimir.professor@gmail.com 04/09/11 vladimir.professor@gmail.com 1 04/09/11 vladimir.professor@gmail.com

Leia mais

INTERNET = ARQUITETURA TCP/IP

INTERNET = ARQUITETURA TCP/IP Arquitetura TCP/IP Arquitetura TCP/IP INTERNET = ARQUITETURA TCP/IP gatewa y internet internet REDE REDE REDE REDE Arquitetura TCP/IP (Resumo) É útil conhecer os dois modelos de rede TCP/IP e OSI. Cada

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS Arquiteturas www.pearson.com.br capítulo 2 slide 1 2.1 Estilos Arquitetônicos Formado em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre

Leia mais

TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP

TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP HTTP (Hypertext Transfer Protocol ) Protocolo usado na Internet para transferir as páginas da WWW (WEB). HTTPS (HyperText Transfer

Leia mais

Figura 01 Kernel de um Sistema Operacional

Figura 01 Kernel de um Sistema Operacional 01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações

Leia mais

O modelo ISO/OSI (Tanenbaum,, 1.4.1)

O modelo ISO/OSI (Tanenbaum,, 1.4.1) Cenário das redes no final da década de 70 e início da década de 80: Grande aumento na quantidade e no tamanho das redes Redes criadas através de implementações diferentes de hardware e de software Incompatibilidade

Leia mais

Rotina de Discovery e Inventário

Rotina de Discovery e Inventário 16/08/2013 Rotina de Discovery e Inventário Fornece orientações necessárias para testar a rotina de Discovery e Inventário. Versão 1.0 01/12/2014 Visão Resumida Data Criação 01/12/2014 Versão Documento

Leia mais

Camada de Aplicação. DNS Domain Name System. Redes de Computadores Prof. Leandro C. Pykosz

Camada de Aplicação. DNS Domain Name System. Redes de Computadores Prof. Leandro C. Pykosz Camada de Aplicação Redes de Computadores Prof. Leandro C. Pykosz Camada de Aplicação A camada de aplicação fornece os serviços "reais" de rede para os usuários. Os níveis abaixo da aplicação fornecem

Leia mais