µtcp win 0 - lisha.ufsc.br filecarlos eduardo de campos eduardo miranda steiner rodrigo valceli...

29
Carlos Eduardo de Campos Eduardo Miranda Steiner Rodrigo Valceli Raimundo µTCP win 0 Micro TCP com janela 0 Trabalho final de Sistemas Operacionais II Por: Carlos Eduardo de Campos Eduardo Miranda Steiner Rodrigo Valceli Raimundo Apresentação

Upload: vandan

Post on 04-Jan-2019

216 views

Category:

Documents


0 download

TRANSCRIPT

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Micro TCP com janela 0Trabalho final de Sistemas Operacionais II

Por:Carlos Eduardo de CamposEduardo Miranda Steiner

Rodrigo Valceli Raimundo

Apresentação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Introdução• TCP:

– Pertencente a 4º camada (Transporte) do modelo OSI

– Um dos principais protocolos utilizados atualmente

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Introdução• Caracteristicas do TCP

– Protocolo orientado a conexão– Ponto a Ponto

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Introdução• Caracteristicas do TCP

– Conexão full duplex

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Introdução• Caracteristicas do TCP

– Confiabilidade– Controle de fluxo– Entrega Ordenada

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Introdução• Caracteristicas do TCP

– Handshake

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Nicho de aplicação desejado• Sistemas embarcados

– Com baixo volume de dados de transmissão– Necessidade de Sistema Operacional– Necessidade de compatibilidade de conexões

Um exemplo de nicho é um sistema de controle de ambiente

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

A Idéia• Após estabelecer a conexão, enviar o

tamanho de janela disponível 0

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

A Idéia• Quando necessitar de pacotes, enviar o tamanho de

janela = tamanho do buffer fornecido pela aplicação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Animação

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Pontos fortes• Não necessitar de buffers de recebimento

– O processo no servidor disponibiliza uma área na memória de usuário para receber os pacotes, sendo o tamanho do buffer fornecido pela aplicação

• Por não usar buffer(s):– Não controlar timeout de buffer– Não necessitar reordenar pacotes– Não tratar controle de congestionamento

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Pontos fortes• Diminui gasto de energia• Possível reduzir o espaço necessário de

armazenamento de código• Auto dimensionamento dos tamanhos da

janela• Sistema orientado a mensagens

“Rendesvouz”

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Decisões de projeto• Não trata urgent pointer• Tempo de timeout pré definidos• Ao receber reset finaliza conexão.• Buffer de envio compartilhado/fixo• Mudança na semântica da operação close

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Pontos fracos• Sub utilização da banda • Baixa velocidade de transmissão• Possível problema de segurança*(na aplicação)

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Implementação• Utilização de uma descrição formal da

maquina de estados do TCP em EFSM/SDL

• Utilização de uma estrutura SVN para sincronismo de trabalho do grupo

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Conexão Passiva

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Conexão ativa

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Envio

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Recebimento

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Referências bibliográficas• SDL do TCP: http://www.medianet.kent.edu/techreports/TR2005-07-22-tcp-

EFSM.pdf• Orrely: http://boi.geness.ufsc.br/acervo/00_conceitos/12_rede/oreilly_books

Carlos Eduardo de CamposEduardo Miranda SteinerRodrigo Valceli Raimundo

µTCP win 0

Referencias das imagens• TCP_windowing.png -

http://upload.wikimedia.org/wikipedia/commons/d/d5/TCP_windowing.png• tcp-ip1.jpg - http://www.fiveanddime.net/tcp-ip/tcp-ip1.jpg• pilhacl5.gif - http://img162.imageshack.us/img162/7429/pilhacl5.gif• Wisenet_TCP_Usage_Diagram.png -

http://netsrv.csc.ncsu.edu/twiki/pub/Main/DiffQTCPProxy/Wisenet_TCP_Usage_Diagram.png

• TCP_establishment.png -http://pt.wikipedia.org/wiki/Ficheiro:TCP_establishment.png

• full-half-duplex.jpg - http://learn-networking.com/wp-content/uploads/2008/01/full-half-duplex.jpg

• internp1.gif - http://www.informaticamedica.org.br/informed/internp1.gif• image034.jpg - http://tjliu.myweb.hinet.net/COA_CH_12.files/image034.jpg• image036.jpg - http://tjliu.myweb.hinet.net/COA_CH_12.files/image036.jpg• TCP_Handshake.gif - http://humanmodem.com/images/TCP_Handshake.gif