Comunicação Cliente-Servidor
Linguagem para Internet II
Prof. Marcelo da Silveira Siedler
[email protected]
SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL
FACULDADE DE TECNOLOGIA SENAC PELOTAS
Sockets
o São objetos que fornecem um padrão portável
para aplicações em redes e trabalham com
certos protocolos de rede (TCP/IP, UDP/IP,
etc..).
o Eles permitem que programas aceitem
conexões para receber e enviar dados.
o Classe socket
Classe socket
o Documentação:
o http://docs.python.org/library/socket.html
o Método socket(family, type)
o cria e retorna um novo objeto socket.
o family pode ser AF_INET para a Protocolo IPv4
como o TCP e o UDP.
o type pode ser stream para protocolo
TCP(SOCK_STREAM) e datagram para
protocolo UDP(SOCK_UDP).
Classe socket
o Método gethostname()
o retorna o nome do computador na qual o
programa está executando.
>>>import socket
>>>socket.gethostname()
'sssssssss'
o gethostbyname(name)
o retorna o endereço IP, checando primeiro se o
computador corrente pode fazer a conversão, se
não for possível esta requisição é feita a um
computador remoto DNS, se não for possível
retorna erro.
>>>socket.gethostbyname('www.python.org')
'132.151.1.90‘
o getservbyname(service, protocol)
o retorna o número da porta do serviço.
>>>socket.getservbyname('http','tcp')
80
o Número das Portas:
o 80 - HTTP – Web pages
o 119 – NNTP – Usenet news
o 20/21 – FTP transfer/FTP control –
Transferência de arquivos
o 25 – SMTP – Envio de e-mail
o 110 – POP3 – Busca de e-mail
o 143 – IMAP4 – Busca de e-mail
o 23 – TELNET – Linha de Comando
o 70 – Gopher – Transferência de Documentos
o accept() - aceita uma nova conexão e retorna
o
o
o
o
os valores: o novo objeto socket e o endereço
que o socket está comunicando.
bind(hostmane, port) – conecta o socket ao
endereço da porta.
close() - fecha o socket.
connect(hostname, port) – conecta-se com
outro socket, que pode ser externo ou local.
Para conexão local use como hostname
localhost.
getpeername() - retorna o endereço IP e a
porta na qual o socket está conectado.
o getsocketnome()- retorna o endereço IP da
o
o
o
o
o
o
porta do próprio socket.
listen(max_connections) – inicia ouvindo a
porta e fica esperando outras conexões. O
sistema operacional recusa novas conexões
quando ela atingir o valor máximo de conexões.
makefile([modem [,buffersize]]) – cria um
objeto arquivo para ler e escrever, útil em
protocolos orientados a stream.
recvfrom(buffersize) – retorna uma string de
dados do socket, usado para protocolo UDP.
send(string) – envia uma string de dados pelo
socket. Usada em protocolo UDP.
sendto(string,(hostname,port)) – envia string
para o servidor hostname na porta port.
setblocking(flag) – bloqueia todas as leituras
e escritas no socket.
Trabalahando com a API do
GoogleMaps
Download

Modelagem e Especificação de Software Profª. Cibele da Rosa Christ