Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Exercícios sobre Sockets em Fundamentos de Redes de Computadores, Manuais, Projetos, Pesquisas de Redes de Computadores

Lista de exercícios do curso de fundamentos de redes de computadores da universidade federal de ouro preto (ufop), onde é abordada a implementação de sockets em sistemas cliente-servidor usando a biblioteca windows sockets dll (winsock).

Tipologia: Manuais, Projetos, Pesquisas

2020

Compartilhado em 13/09/2020

carlos-miranda-48
carlos-miranda-48 🇧🇷

1 documento

1 / 3

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Lista 1 - Sockets - Fundamentos de Redes de Computadores
Carlos Alberto Miranda Ferreira
1Instituto de Ciˆ
encias Exatas e Aplicadas Universidade Federal de Ouro Preto (UFOP)
Departamento de Computac¸˜
ao e Sistemas DECSI
Jo˜
ao Monlevade, MG - Brasil
{carlos.miranda}@aluno.ufop.edu.br
Abstract. This is an exercise list (01) of the Computer Networks Fundamentals
course of the Information Systems course, taught by professor Bruno Pereira
dos Santos.
Resumo. Esta ´
e uma lista de exerc´
ıcio (01) da mat´
eria de Fundamentos de
Redes de Computadores do curso de Sistemas de informac¸˜
ao, ministrado pelo
docente Bruno Pereira dos Santos
1. Introduc¸ ˜
ao
O c´
odigo realiza a comunicac¸˜
ao entre cliente e servidor, onde um abre conex˜
ao e aguarda
para ser ”ouvido” pela requisic¸˜
ao do outro, e assim, poder ”responder” essa requisic¸˜
ao.
O c´
odigo do servidor cria um socket, obt´
em a porta do host a ser utilizado, associa essa
porta ao socket criado e ativa o servic¸o de ”escuta”. Uma das func¸ ˜
oes ´
e verificar se o
protocolo a ser utilizado ´
e UDP ou TCP.
J´
aoc´
odigo do cliente tamb´
em cria o socket, obt´
em a porta a ser utilizada pelo host e
tenta se comunicar com o servidor. No caso de resposta positiva, ocorre atrav´
es do canal
de comunicac¸˜
ao pelo m´
etodo simplex/half-simples/full-duplex a troca de dados. Se n˜
ao
houver resposta, a comunicac¸˜
ao pode ser fechada.
Quando terminar o processo de comunicac¸˜
ao, ´
e necess´
ario que se encerre a conex˜
ao.
2. Implementac¸ ˜
ao
O objetivo desse t´
opico ´
e esclarecer um pouco sobre algumas das principais func¸ ˜
oes que
foram utilizadas na implementac¸˜
ao em s´
ı, tanto do servidor quanto do cliente. A func¸˜
ao
WSAStartup() inicia o Windows Sockets Dynamic Link (WinSock DLL). Ela tamb´
em ´
e
usada para confirma a vers˜
ao do WinSock DLL.
A func¸˜
ao socket() inicializa o socket para ser utilizado pelo cliente e servidor.
A func¸˜
ao bind() vincula o IP ao socket criado, como uma maneira de enderec¸´
a-lo.
A func¸˜
ao listen() coloca o socket para escutar as poss´
ıveis conex˜
oes. Seria como
ligar o socket, agora ele pode receber mensagens de conex˜
oes dos clientes.
A func¸˜
ao accept() tem o papel de aceitar a mensagem quando requisitada (se todos
os parˆ
ametros forem requisitados com sucesso).
A func¸˜
ao recv() recebe os dados, ou seja, recebe a mensagem a ser transmitida.
pf3

Pré-visualização parcial do texto

Baixe Exercícios sobre Sockets em Fundamentos de Redes de Computadores e outras Manuais, Projetos, Pesquisas em PDF para Redes de Computadores, somente na Docsity!

Lista 1 - Sockets - Fundamentos de Redes de Computadores

Carlos Alberto Miranda Ferreira

(^1) Instituto de Ciˆencias Exatas e Aplicadas – Universidade Federal de Ouro Preto (UFOP) Departamento de Computac¸ ˜ao e Sistemas – DECSI Jo˜ao Monlevade, MG - Brasil

{carlos.miranda}@aluno.ufop.edu.br

Abstract. This is an exercise list (01) of the Computer Networks Fundamentals course of the Information Systems course, taught by professor Bruno Pereira dos Santos.

Resumo. Esta ´e uma lista de exerc´ıcio (01) da mat´eria de Fundamentos de Redes de Computadores do curso de Sistemas de informac¸ ˜ao, ministrado pelo docente Bruno Pereira dos Santos

1. Introduc¸ ˜ao

O c´odigo realiza a comunicac¸ ˜ao entre cliente e servidor, onde um abre conex˜ao e aguarda para ser ”ouvido” pela requisic¸ ˜ao do outro, e assim, poder ”responder” essa requisic¸ ˜ao.

O c´odigo do servidor cria um socket, obt´em a porta do host a ser utilizado, associa essa porta ao socket criado e ativa o servic¸o de ”escuta”. Uma das func¸ ˜oes ´e verificar se o protocolo a ser utilizado ´e UDP ou TCP.

J´a o c´odigo do cliente tamb´em cria o socket, obt´em a porta a ser utilizada pelo host e tenta se comunicar com o servidor. No caso de resposta positiva, ocorre atrav´es do canal de comunicac¸ ˜ao pelo m´etodo simplex/half-simples/full-duplex a troca de dados. Se n˜ao houver resposta, a comunicac¸ ˜ao pode ser fechada.

Quando terminar o processo de comunicac¸ ˜ao, ´e necess´ario que se encerre a conex˜ao.

2. Implementac¸ ˜ao

O objetivo desse t´opico ´e esclarecer um pouco sobre algumas das principais func¸ ˜oes que foram utilizadas na implementac¸ ˜ao em s´ı, tanto do servidor quanto do cliente. A func¸ ˜ao WSAStartup() inicia o Windows Sockets Dynamic Link (WinSock DLL). Ela tamb´em ´e usada para confirma a vers˜ao do WinSock DLL.

A func¸ ˜ao socket() inicializa o socket para ser utilizado pelo cliente e servidor. A func¸ ˜ao bind() vincula o IP ao socket criado, como uma maneira de enderec¸ ´a-lo. A func¸ ˜ao listen() coloca o socket para escutar as poss´ıveis conex˜oes. Seria como ligar o socket, agora ele pode receber mensagens de conex˜oes dos clientes.

A func¸ ˜ao accept() tem o papel de aceitar a mensagem quando requisitada (se todos os parˆametros forem requisitados com sucesso).

A func¸ ˜ao recv() recebe os dados, ou seja, recebe a mensagem a ser transmitida.

3. Listagem de testes executados

3.1. Funcionamento esperado

E apresentado a seguir uma tela com dois execut´^ ´ aveis, onde o que est´a a esquerda ´e a imagem do servidor e posteriormentea direita, a imagem do cliente em um caso de funcionamento.

Figure 1. Servidor e Cliente se comunicando

3.2. Funcionamento n˜ao esperado

E apresentado a seguir uma tela com os dois execut´^ ´ aveis, onde a imagem do cliente se encontra em um caso de erro de conex˜ao por divergˆencias das portas.

Figure 2. Servidor e Cliente com erro de conex ˜ao