SlideShare uma empresa Scribd logo
1 de 27
Programação para WEB
Regis Pires Magalhães
regispiresmag@gmail.com
Arquitetura cliente /
servidor da Web
Arquitetura TCP/IP
Arquitetura TCP/IP
Arquitetura TCP/IP
Arquitetura TCP/IP
Endereço IP
 Identifica unicamente um host da rede.
 Atribuído a cada interface.
200.3.16.1
Portas
 Identificam os processos origem e destino;
 Viabilizam a comunicação fim-a-fim;
 Sistema operacional oferece interface para
especificar e acessar portas.
 Permitem comunicação com diversas aplicações na
mesma máquina.
Protocolo UDP
 Funciona como uma ponte para
o protocolo IP;
 Comunicação sem conexão e
não confiável (entrega não
garantida);
 Análogo ao sistema de correio;
 Mais rápido que TCP;
 Usado em:
 Pequena quantidade de
dados;
 Meios de comunicação
seguros;
 Serviços que podem perder
pequenas porções de
informações.
Protocolo TCP
 Utiliza o conceito de conexão para identificar os dois pontos
envolvidos na comunicação;
 Análogo a uma chamada telefônica;
 Entrega garantida;
 A comunicação é identificada por um par de endpoints.
 Um endpoint é um par na forma:
 Host, Port
 Ex.: (128.9.0.21, 1184) (128.10.2.3,25)
 Endpoints permitem que uma determinada porta possa ser
compartilhada por múltiplas conexões.
Arquitetura TCP/IP
Arquitetura Cliente / Servidor
 Servidor
 Processo que oferece um serviço;
 Aceita uma requisição através da rede,
executa o serviço e retorna o resultado.
 Cliente
 Processo que requisita um serviço;
 Geralmente possui uma interface com o
usuário.
Arquitetura Cliente / Servidor
 Um servidor espera por requisições em
uma porta conhecida, reservada para o
serviço.
 Um cliente aloca uma porta arbitrária
disponível e não reservada.
Socket
 Conjunto de funções para permitir a
utilização do sistema de comunicação por
processos no sistema operacional.
 Socket: Endereço IP + Porta
Comunicação sem conexão
Funções
 socket – inicializa a estrutura de dados do socket,
determinando qual o protocolo (TCP/IP) e o tipo do
serviço (UDP ou TCP).
 bind – associa o socket a uma porta UDP ou TCP.
 sendto – solicita ao sistema de comunicação o envio
de dados, especificando o endereço IP destino, a
porta destino e os dados.
 recvfrom – informa ao sistema de comunicação que
o programa está aguardando dados.
 close – dessasocia a porta do socket e desativa o
socket.
Comunicação com conexão
Comunicação entre Cliente e
Servidor WEB
Cliente WEB
Navegador (Browser)
Servidor WEB
Requisição
Resposta
Página HTML
Papéis
 Servidor Web
 Interpreta requisições HTTP do cliente.
 Devolve resposta HTTP ao cliente.
 Cliente Web
 Envia requisições HTTP ao Servidor Web.
 Processa respostas HTTP recebidas.
URI – Uniform Resource Identifier
 Identificador de Recursos Uniforme
 É uma cadeia de caracteres usada para identificar ou
denominar um recurso na Internet.
 Pode ser classificada como um localizador (URL) ou
um nome (URN), ou ainda como ambos.
 Exemplos:
 URN
urn:isbn:0-486-27557-4
urn:issn:1535-3613
 URL
file:////home/pedro/Desktop/RomeuEJulieta.pdf
http://example.org/absolute/URI/path/to/resource.txt
ftp://example.org/resource.txt
URL – Uniform Resource Locator
 Localizador de Recursos Universal
 Uma URL é uma URI que, além de identificar um
recurso, provê meios de agir sobre, obter e
representar este recurso, descrevendo seu
mecanismo de acesso primário ou a localização na
"rede".
 É o endereço de um recurso disponível em uma rede.
 Estrutura:
protocolo://máquina/caminho/recurso
 Exemplo:
http://www.w3.org/Addressing/URL/uri-spec.html
Protocolo
 É uma convenção ou padrão que controla e
possibilita uma conexão, comunicação ou
transferência de dados entre dois sistemas
computacionais.
 "regras que governam" a sintaxe, semântica e
sincronização da comunicação.
 Podem ser implementados pelo hardware,
software ou por uma combinação dos dois.
Protocolo HTTP
 Hypertext Transfer Protocol (Protocolo de
Transferência de Hipertexto)
 Usado desde 1990.
 Protocolo de comunicação utilizado para transferir
dados por intranets e World Wide Web.
 Normalmente o servidor usa a porta 80.
 Responsável pelo tratamento de pedidos / respostas
entre cliente e servidor Web.
 Forma padronizada de comunicação entre clientes e
servidores da Web.
 Serve para transferência de texto e dados binários.
Protocolo HTTP
 Sem estado (stateless):
 Não existe informações sobre o estado das
conexões;
 Próxima ação independe da anterior;
 Realiza apenas uma ação por vez.
Protocolo HTTP
 Funcionamento:
 o cliente envia uma mensagem de requisição
de um recurso;
 o servidor envia uma mensagem de resposta
ao cliente.
 Composição das mensagens:
 Cabeçalho
 Corpo (opcional em certos casos)
XAMPP
 É um pacote que contém Apache, PHP e MySQL.
 A sigla significa:
 X – Qualquer sistema (Windows, Linux, Mac OS,
Solaris)
 A – Apache – Servidor Web
 M – MySQL – Servidor de Banco de Dados
 P – PHP – Linguagem de Script do lado servidor
 P – Perl – Linguagem de Script do lado servidor
O XAMPP Lite é uma edição reduzida do XAMPP (sem
o FileZilla FTP e Mercury Mail).
Instalação
 Baixar, executar o XAMPP Lite e extraí-lo em
uma pasta de sua escolha:
 xampplite-win32-1.7.0.exe
 Abrir a pasta do XAMPP Lite e executar o
arquivo setup-xampp.bat
Uso
 No diretório do XAMPP Lite, executar o
arquivo:
 xampp-control.exe
 Ativar os servidores Apache e MySQL:

Mais conteúdo relacionado

Mais procurados

Capítulo 3 funcionalidades e protocolos da camada de aplicação
Capítulo 3   funcionalidades e protocolos da camada de aplicaçãoCapítulo 3   funcionalidades e protocolos da camada de aplicação
Capítulo 3 funcionalidades e protocolos da camada de aplicaçãoSimba Samuel
 
Pmmrei Comandos E Utilitariso Tcp Ip
Pmmrei   Comandos E Utilitariso Tcp IpPmmrei   Comandos E Utilitariso Tcp Ip
Pmmrei Comandos E Utilitariso Tcp Ipmfsr1970
 
Aula05 camada de aplicação
Aula05 camada de aplicaçãoAula05 camada de aplicação
Aula05 camada de aplicaçãoTiago Tda
 
Camada de aplicação
Camada de aplicaçãoCamada de aplicação
Camada de aplicaçãoPjpilin
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicaçãoJoel Saramago
 
Camada De Aplicação
Camada De AplicaçãoCamada De Aplicação
Camada De AplicaçãoLyous
 
Redes de computadores 2 - Protocolos
Redes de computadores 2 - ProtocolosRedes de computadores 2 - Protocolos
Redes de computadores 2 - ProtocolosJosé Ronaldo Trajano
 
Dns Dhcp Proxy Server1
Dns Dhcp Proxy Server1Dns Dhcp Proxy Server1
Dns Dhcp Proxy Server1Licínio Rocha
 
Camada de transporte capitulo 3
Camada de transporte   capitulo 3Camada de transporte   capitulo 3
Camada de transporte capitulo 3fernandao777
 
Modelo OSI - Camada de Transporte
Modelo OSI - Camada de TransporteModelo OSI - Camada de Transporte
Modelo OSI - Camada de TransporteWalyson Vëras
 
NIHON FIREWALL
NIHON FIREWALLNIHON FIREWALL
NIHON FIREWALLAlan Lima
 

Mais procurados (19)

Camada de transporte parte1
Camada de transporte parte1Camada de transporte parte1
Camada de transporte parte1
 
Camada de aplicação parte1
Camada de aplicação parte1Camada de aplicação parte1
Camada de aplicação parte1
 
Capítulo 3 funcionalidades e protocolos da camada de aplicação
Capítulo 3   funcionalidades e protocolos da camada de aplicaçãoCapítulo 3   funcionalidades e protocolos da camada de aplicação
Capítulo 3 funcionalidades e protocolos da camada de aplicação
 
Tcp udp
Tcp udpTcp udp
Tcp udp
 
Pmmrei Comandos E Utilitariso Tcp Ip
Pmmrei   Comandos E Utilitariso Tcp IpPmmrei   Comandos E Utilitariso Tcp Ip
Pmmrei Comandos E Utilitariso Tcp Ip
 
Aula05 camada de aplicação
Aula05 camada de aplicaçãoAula05 camada de aplicação
Aula05 camada de aplicação
 
Camada de aplicação
Camada de aplicaçãoCamada de aplicação
Camada de aplicação
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicação
 
Camada De Aplicação
Camada De AplicaçãoCamada De Aplicação
Camada De Aplicação
 
TCP/IP vs Osi
TCP/IP vs OsiTCP/IP vs Osi
TCP/IP vs Osi
 
Significados
SignificadosSignificados
Significados
 
HTTP - Visão geral
HTTP - Visão geralHTTP - Visão geral
HTTP - Visão geral
 
Redes de computadores 2 - Protocolos
Redes de computadores 2 - ProtocolosRedes de computadores 2 - Protocolos
Redes de computadores 2 - Protocolos
 
Dns Dhcp Proxy Server1
Dns Dhcp Proxy Server1Dns Dhcp Proxy Server1
Dns Dhcp Proxy Server1
 
Camada de Rede
Camada de RedeCamada de Rede
Camada de Rede
 
Camada de transporte capitulo 3
Camada de transporte   capitulo 3Camada de transporte   capitulo 3
Camada de transporte capitulo 3
 
Modelo OSI - Camada de Transporte
Modelo OSI - Camada de TransporteModelo OSI - Camada de Transporte
Modelo OSI - Camada de Transporte
 
NIHON FIREWALL
NIHON FIREWALLNIHON FIREWALL
NIHON FIREWALL
 
Protocólo FTP
Protocólo FTPProtocólo FTP
Protocólo FTP
 

Semelhante a Prog web 00-modelo-cliente_servidor_web

Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Liliana Costa
 
1 ficheiro
1 ficheiro1 ficheiro
1 ficheirosharik27
 
Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBelliando dias
 
Redes de Computadores 2 - Conceitos Gerais
Redes de Computadores 2 - Conceitos GeraisRedes de Computadores 2 - Conceitos Gerais
Redes de Computadores 2 - Conceitos GeraisJosé Ronaldo Trajano
 
M4 tarefa video
M4 tarefa videoM4 tarefa video
M4 tarefa videogonxalox
 
Wiki
WikiWiki
WikiMJCIC
 
Ac.m4 tarefa video-emil
Ac.m4 tarefa video-emilAc.m4 tarefa video-emil
Ac.m4 tarefa video-emilfantic3o
 
Modelos osi tcpip
Modelos osi tcpipModelos osi tcpip
Modelos osi tcpipSuguha
 
Protocolos de transporte
Protocolos de transporteProtocolos de transporte
Protocolos de transporteJoel Saramago
 
Conceitos básicos de info
Conceitos básicos de infoConceitos básicos de info
Conceitos básicos de infoYASMIN ALVES
 
GlossáRio De Internet
GlossáRio De InternetGlossáRio De Internet
GlossáRio De InternetFredericoSilva
 
02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdfedsonjcg
 

Semelhante a Prog web 00-modelo-cliente_servidor_web (20)

Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Http (hyper text transfer protocol)
Http (hyper text transfer protocol)
 
Apresentação de sd2
Apresentação de sd2Apresentação de sd2
Apresentação de sd2
 
1 ficheiro
1 ficheiro1 ficheiro
1 ficheiro
 
Modelo TCP/IP
Modelo TCP/IPModelo TCP/IP
Modelo TCP/IP
 
Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEB
 
Redes de Computadores 2 - Conceitos Gerais
Redes de Computadores 2 - Conceitos GeraisRedes de Computadores 2 - Conceitos Gerais
Redes de Computadores 2 - Conceitos Gerais
 
M4 tarefa video
M4 tarefa videoM4 tarefa video
M4 tarefa video
 
Mini Curso - Redes de Computadores
Mini Curso - Redes de ComputadoresMini Curso - Redes de Computadores
Mini Curso - Redes de Computadores
 
Wiki
WikiWiki
Wiki
 
Ac.m4 tarefa video-emil
Ac.m4 tarefa video-emilAc.m4 tarefa video-emil
Ac.m4 tarefa video-emil
 
Intro_redes.pdf
Intro_redes.pdfIntro_redes.pdf
Intro_redes.pdf
 
Apostila internet
Apostila internetApostila internet
Apostila internet
 
Modelos osi tcpip
Modelos osi tcpipModelos osi tcpip
Modelos osi tcpip
 
Protocolos de transporte
Protocolos de transporteProtocolos de transporte
Protocolos de transporte
 
Cap 02.pdf
Cap 02.pdfCap 02.pdf
Cap 02.pdf
 
Dawi o protocolo-http
Dawi o protocolo-httpDawi o protocolo-http
Dawi o protocolo-http
 
Conceitos básicos de info
Conceitos básicos de infoConceitos básicos de info
Conceitos básicos de info
 
GlossáRio De Internet
GlossáRio De InternetGlossáRio De Internet
GlossáRio De Internet
 
GlossáRio De Internet
GlossáRio De InternetGlossáRio De Internet
GlossáRio De Internet
 
02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf
 

Mais de Regis Magalhães

Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducaoRegis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webRegis Magalhães
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosRegis Magalhães
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosRegis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducaoRegis Magalhães
 
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Regis Magalhães
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Regis Magalhães
 

Mais de Regis Magalhães (20)

High Dimensional Data
High Dimensional DataHigh Dimensional Data
High Dimensional Data
 
Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
PHP 10 CodeIgniter
PHP 10 CodeIgniterPHP 10 CodeIgniter
PHP 10 CodeIgniter
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Prog web 09-php-crud-mvc
Prog web 09-php-crud-mvcProg web 09-php-crud-mvc
Prog web 09-php-crud-mvc
 
Prog web 08-php-mvc
Prog web 08-php-mvcProg web 08-php-mvc
Prog web 08-php-mvc
 
Prog web 07-pdo
Prog web 07-pdoProg web 07-pdo
Prog web 07-pdo
 
Prog web 06-php-oo
Prog web 06-php-ooProg web 06-php-oo
Prog web 06-php-oo
 
Prog web 05-php-mysql
Prog web 05-php-mysqlProg web 05-php-mysql
Prog web 05-php-mysql
 
Prog web 04-php-gd
Prog web 04-php-gdProg web 04-php-gd
Prog web 04-php-gd
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
 
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
 

Último

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 

Último (6)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Prog web 00-modelo-cliente_servidor_web

  • 1. Programação para WEB Regis Pires Magalhães regispiresmag@gmail.com Arquitetura cliente / servidor da Web
  • 6. Endereço IP  Identifica unicamente um host da rede.  Atribuído a cada interface. 200.3.16.1
  • 7. Portas  Identificam os processos origem e destino;  Viabilizam a comunicação fim-a-fim;  Sistema operacional oferece interface para especificar e acessar portas.  Permitem comunicação com diversas aplicações na mesma máquina.
  • 8. Protocolo UDP  Funciona como uma ponte para o protocolo IP;  Comunicação sem conexão e não confiável (entrega não garantida);  Análogo ao sistema de correio;  Mais rápido que TCP;  Usado em:  Pequena quantidade de dados;  Meios de comunicação seguros;  Serviços que podem perder pequenas porções de informações.
  • 9. Protocolo TCP  Utiliza o conceito de conexão para identificar os dois pontos envolvidos na comunicação;  Análogo a uma chamada telefônica;  Entrega garantida;  A comunicação é identificada por um par de endpoints.  Um endpoint é um par na forma:  Host, Port  Ex.: (128.9.0.21, 1184) (128.10.2.3,25)  Endpoints permitem que uma determinada porta possa ser compartilhada por múltiplas conexões.
  • 11. Arquitetura Cliente / Servidor  Servidor  Processo que oferece um serviço;  Aceita uma requisição através da rede, executa o serviço e retorna o resultado.  Cliente  Processo que requisita um serviço;  Geralmente possui uma interface com o usuário.
  • 12. Arquitetura Cliente / Servidor  Um servidor espera por requisições em uma porta conhecida, reservada para o serviço.  Um cliente aloca uma porta arbitrária disponível e não reservada.
  • 13. Socket  Conjunto de funções para permitir a utilização do sistema de comunicação por processos no sistema operacional.  Socket: Endereço IP + Porta
  • 15. Funções  socket – inicializa a estrutura de dados do socket, determinando qual o protocolo (TCP/IP) e o tipo do serviço (UDP ou TCP).  bind – associa o socket a uma porta UDP ou TCP.  sendto – solicita ao sistema de comunicação o envio de dados, especificando o endereço IP destino, a porta destino e os dados.  recvfrom – informa ao sistema de comunicação que o programa está aguardando dados.  close – dessasocia a porta do socket e desativa o socket.
  • 17. Comunicação entre Cliente e Servidor WEB Cliente WEB Navegador (Browser) Servidor WEB Requisição Resposta Página HTML
  • 18. Papéis  Servidor Web  Interpreta requisições HTTP do cliente.  Devolve resposta HTTP ao cliente.  Cliente Web  Envia requisições HTTP ao Servidor Web.  Processa respostas HTTP recebidas.
  • 19. URI – Uniform Resource Identifier  Identificador de Recursos Uniforme  É uma cadeia de caracteres usada para identificar ou denominar um recurso na Internet.  Pode ser classificada como um localizador (URL) ou um nome (URN), ou ainda como ambos.  Exemplos:  URN urn:isbn:0-486-27557-4 urn:issn:1535-3613  URL file:////home/pedro/Desktop/RomeuEJulieta.pdf http://example.org/absolute/URI/path/to/resource.txt ftp://example.org/resource.txt
  • 20. URL – Uniform Resource Locator  Localizador de Recursos Universal  Uma URL é uma URI que, além de identificar um recurso, provê meios de agir sobre, obter e representar este recurso, descrevendo seu mecanismo de acesso primário ou a localização na "rede".  É o endereço de um recurso disponível em uma rede.  Estrutura: protocolo://máquina/caminho/recurso  Exemplo: http://www.w3.org/Addressing/URL/uri-spec.html
  • 21. Protocolo  É uma convenção ou padrão que controla e possibilita uma conexão, comunicação ou transferência de dados entre dois sistemas computacionais.  "regras que governam" a sintaxe, semântica e sincronização da comunicação.  Podem ser implementados pelo hardware, software ou por uma combinação dos dois.
  • 22. Protocolo HTTP  Hypertext Transfer Protocol (Protocolo de Transferência de Hipertexto)  Usado desde 1990.  Protocolo de comunicação utilizado para transferir dados por intranets e World Wide Web.  Normalmente o servidor usa a porta 80.  Responsável pelo tratamento de pedidos / respostas entre cliente e servidor Web.  Forma padronizada de comunicação entre clientes e servidores da Web.  Serve para transferência de texto e dados binários.
  • 23. Protocolo HTTP  Sem estado (stateless):  Não existe informações sobre o estado das conexões;  Próxima ação independe da anterior;  Realiza apenas uma ação por vez.
  • 24. Protocolo HTTP  Funcionamento:  o cliente envia uma mensagem de requisição de um recurso;  o servidor envia uma mensagem de resposta ao cliente.  Composição das mensagens:  Cabeçalho  Corpo (opcional em certos casos)
  • 25. XAMPP  É um pacote que contém Apache, PHP e MySQL.  A sigla significa:  X – Qualquer sistema (Windows, Linux, Mac OS, Solaris)  A – Apache – Servidor Web  M – MySQL – Servidor de Banco de Dados  P – PHP – Linguagem de Script do lado servidor  P – Perl – Linguagem de Script do lado servidor O XAMPP Lite é uma edição reduzida do XAMPP (sem o FileZilla FTP e Mercury Mail).
  • 26. Instalação  Baixar, executar o XAMPP Lite e extraí-lo em uma pasta de sua escolha:  xampplite-win32-1.7.0.exe  Abrir a pasta do XAMPP Lite e executar o arquivo setup-xampp.bat
  • 27. Uso  No diretório do XAMPP Lite, executar o arquivo:  xampp-control.exe  Ativar os servidores Apache e MySQL: