µtcp win 0 - lisha.ufsc.br filecarlos eduardo de campos eduardo miranda steiner rodrigo valceli...
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
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
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
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
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