You are on page 1of 7
Wireshark Lab: TCP Version: 2.0 ’ COMPUTER mmieren Rae oF Kurose, K.W. Ross. All Rights NETWORKING KUROSE +ROSS Neste laboratério, vamos investigar 0 comportamento do TCP em detalhes. Vamos fazé-lo através da andlise de um rastreamento dos segmentos TCP enviados e recebidos na transferéncia de um arquivo de 150KB (contendo o texto de Lewis Carrol As aventuras de Alice no pais das maravilhas) do seu computador para um servidor remoto. Estudaremos 0 uso de ntimeros de sequéncia e reconhecimento TCP para fornecer transferéncia de dados confidvel; veremos 0 algoritmo de controle de congestionamento TCP - partida lenta e prevencdo de congestionamento - em ago; e daremos uma olhada no mecanismo de controle de fluxo TCP com aviso ao receptor. Também consideraremos brevemente a configuragao da conexao e investigaremos o desempenho (vazao e tempo de ida e volta) da conexao TCP entre seu computador e o servidor. Antes de iniciar este laboratério, vocé provavelmente desejara revisar as seqdes 3.5 e 3.7 no livro. 1. Capturando um volume de transferéncia TCP do seu computador para um servidor remoto Antes de iniciarmos nossa exploragéo do TCP, nés precisaremos utilizar 0 Wireshark para obter um rastreamento da transferéncia TCP de um arquivo do seu computador para um servidor remoto. Vocé fard isso acessando uma pagina da Web que permitiré enviar um arquivo armazenado em seu computador (que contem 0 texto ASCII da histéria de Alice no Pais das Maravilhas), e entao, transferi-lo para um servidor Web utlizando 0 método HTTP POST (segéo 2.2.3 do texto). Nos utiizaremos POST ao invés de GET porque queremos transferir uma grande quantidade de dados do seu computador para outro computador. E claro que nos estaremos executando o Wireshark durante o tempo da transferéncia deste arquivo para conseguirmos o rastreamento dos segmentos TCP enviados e recebidos de seu computador. Dessa forma, siga os seguintes procedimentos: « Inicie seu navegador Web. Acesse o link http://gaia.cs. umass.edu/wireshark- labs/alice.txt e faga 0 download de uma cépia em ASCII de Alice no Pais das Maravilhas. Guarde o arquivo em algum lugar em seu computador. * Acesse o link _ http://gaia.cs.umass.edu/wiresharklabs/TCP-wireshark- filet htmI. Vocé deverd ver uma tela semelhante a: Computer Networking Top Dav Approach, th edtion ope 2007 JF-kirae arc Ress APRs Rason8s you poet neice for TC net lotrel bates ci yous et ro an ASCH Ace monde Clekonte Browse bun belom a selethe decom fle nmetere copy fae thts sled cn your compe (CPt he eb sever a gaiacs unas edu ARcr clicking onthe bun, woudl a shor messoze Is ‘plvedindcatra he he upad's corel Toe so you Mesh paket se - Yee eau eben aravong Be TCP teeter ale fen yur eorpulrogaiacs ras oa «Use 0 botdo “Browse” deste formulario para entrar com 0 nome do arquivo (caminho completo) no seu computador que contem o texto de Alice no Pais das Maravilhas. Nao pressione ainda o botdo “Upload alice.txt file”. «Execute o Wireshark e inicie a captura de pacotes (Capture ->Start). * Relome ao navegador e pressione o botdo “Upload alice.tx! file” para submeter 0 arquivo para o servidor gala.cs.umass,edu . Uma vez que o arquivo tenha sido enviado, uma pequena mensagem de felicitagdes sera exibida na janela do seu navegador. «Pare a captura do Wireshark. Sua janela de captura deverd se assemelhar a apresentada na figura abaixo: 1 Ee tw Gp oxten Ain Sais | Seaewe of+e5 8errtFI B/G aaagal ef | ne [ime [are = ent [te az Tr fe Frane i (aD fytes on wire, 62 tytes captured) JS Ethernee 21, Src: Netgear h:8e:6d CO0:00:5b:e:8a:6d), ost: Linksyst.45:90:28 (00:0c:41:45:90:28) Jz tnrerner ernrncnl, sro= 199 RB > 148 (10) TAR 7 Tas), ers 198-110 244 19 (9A T9964 19) [2 rransatssion control Protacal, src Port: 1250 (1280), ost Port: hetp (BO), Seq! 0, Len: 0 See Tees SE eaSeee Bess 92 2 ar of 03 $5 &2 Ey 35 $5 50 50 So 50 93 ot Pose + wo SF op op G2 es as or ar aL Of Eee sae a SRR. [RABAT Op Z| Caso vocé nao consiga executar a captura de pacotes no Wireshark em uma conexao real, vocé pode fazer 0 download de um rastreador com a execugao dos passos descritos _anteriormente em __http://aaia.cs.umass.edu/wireshark- labs/wireshark-traces.zip, No entanto, vocé poderd achar interessante fazer o download do rastreamento mesmo se vocé conseguir realizar a sua prépria captura de pacotes. 2. Primeira andlise do rastreamento capturado Antes de analisar 0 comportamento da conexéo TCP em detalhes, vamos tomar uma visdo de alto nivel do rastreamento capturado. Primeiramente, faga o filtro dos pacotes apresentados na janela do Wireshark digitando a palavra “tcp” (caixa baixa, sem aspas — nao se esquega de pressionar o enter apés a insercao do filtro) no campo de filtro no topo da janela do Wireshark. O que vocé deverd ver é uma série de mensagens TCP e HTTP entre o computador € 0 servidor gaia.cs.umass.edu. Vocé deverd ver o handshake de trés vias inicial contendo uma mensagem SYN. Vocé dever ver uma mensagem HTTP POST e uma série de mensagens "HTTP. continuation” que foram enviadas do seu computador para o servidor gaia.cs.umass.edu. Lembre-se da nossa discussao no laboratério de HTTP, que essa é uma forma de o Wireshark indicar que hd varios segmentos TCP carregando a mensagem HTTP. Vocé também deve ver segmentos TCP ACK sendo retornados. de gaia.cs.umass.edu para o seu computador: Responda as seguintes questées consultando 0 arquivo de pacotes capturados com o Wireshark — tcp-ethereal-trace-1 em _htip://qaia.cs.umass.edu/wireshark- labs/wireshark-traces.zip, Quando possivel responda as questées utilizando uma cépia do pacote que Ihe serviu como base para sua resposta 1. Qual é 0 enderego IP e nlimero da porta TCP utilizado pelo computador do cliente (fonte) que esta transferindo o arquivo para gaia.cs.umass.edu? Para responder esta pergunta é mais facil selecionar uma mensagem HTTP e explorar os detalhes do segmento TCP utilizado para enviar a mensagem HTTP. 2. Qual 0 enderego IP do servidor gaia.cs.umass.edu? Qual ntimero de porta estd sendo utilizado para receber e enviar segmentos TCP nesta conexao? Se vocé conseguiu gerar seu préprio rastreamento, responda a seguinte questéo: 3. Qual o enderego de IP e numero de porta utilizado pelo computador cliente para enviar 0 arquivo para gaia.cs.umass.edu? Uma vez que este laboratério é sobre o protocolo TCP e nao sobre HTTP, vamos modificar a janela de listagem dos pacotes capturados pelo Wireskark para mostrar informagdes sobre os segmentos TCP que contem mensagens HTTP. Para fazer isso, vocé deverd ir em Analyze->Enabled Protocols, e retirar a selegdo do protocol HTTP. Vocé deverd ver uma janela do Wireshark semelhante a apresentada na figura abaixo eR wer Gee aio aR i Bweaaow oGx~**+eiaeerFe2 OR aaa. ef rs Bodies BEHSNSE RETTI Tee eh 5 Hist fier] sect Accceses uincirses Ieee edocs lentesdist ter _ feta uot how sae bs asad a f prae 7 Ga tytes on wire, Init bytes captured) = raternet rovoce sre: a2 ‘irae pores ane die) Sescinatton gore: fee (09) Sequence ruber: 2028" (relative sequence number) new 06 Coetative sea Acknoregenere oar: 2 eelative ach mb 8 Plage: oa Get) Cagnet ton window neduced (OA) # Hoe et Ecncscner now set ue ERUR UES eke eral lee aE i Isto é 0 que estamos procurando - uma série de segmentos TCP enviados entre 0 seu computador e gaia.cs.umass.edu. Nés vamos usar 0 rastreamento de pacotes que vocé capturou (e/ou 0 rastreamento de pacotes tcp-ethereal-trace-1 em http://gaia.cs.umass.edu/wireshark-labs/wireshark-traces.zip) para estudar 0 comportamento do TCP no restante deste laboratorio. 3. Conceitos Basicos do TCP Responda as seguintes perguntas para os segmentos TCP: 4. Qual 6 0 numero de sequéncia do segmento TCP SYN que é utilizado para iniciar a conexéo TCP entre o computador cliente e o servidor gaia.cs.umass.edu? Qual campo do segmento TCP 0 identifica como SYN? 5. Qual é o numero de sequéncia do segmento SYN/ACK enviado pelo servidor gaia.cs.umass.edu para o computador cliente em resposta ao SYN? Qual 6 0 valor do campo ACKnowledgement no segmento SYNACK? Como vocé fez para determinar esse valor? Qual(is) campo(s) no segmento o identifica como segmento SYN/ACK? 6. Qual 6 0 numero de sequéncia do segmento TCP que contém o comando HTTP POST? Note que, a fim de encontrar o comando POST, vocé precisara abrir 0 campo de contetido do pacote na parte inferior da janela do Wireshark, procurando um segmento com um "POST" dentro de seu campo DATA. 7. Considere 0 segmento TCP contendo o POST HTTP como o primeiro segmento na conexao TCP. Quais séo os ntimeros de sequéncia dos seis primeiros segmentos na conexao TCP (incluindo o segmento que contém o HTTP POST)? Cada segmento foi enviado em que tempo? Quando o ACK para cada segmento foi recebido? Dada a diferenga entre 0 envio de cada segmento TCP e 0 recebimento da sua confirmagao, o que ¢ 0 valor RTT para cada um dos seis segmentos? 8. Qual é o tamanho de cada um dos seis segmentos TCP? Qual é o throughput (bytes transferidos por unidade de tempo) para a conexdo TCP? Explique como vocé calculou esse valor. 9. Existe algum segmento retransmitido no arquivo de rastreamento? O que vocé verificou para resposnder essa questéo? 10.Qual é © throughput (bytes transferidos por unidade de tempo) para a conexéio TCP? Explique como vocé calculou esse valor. 4. Controle de Congestionamento TCP em agao Vamos examinar agora a quantidade de dados enviados por unidade de tempo do cliente para o servidor. Ao invés de calcular isto a partir dos dados brutos na janela do Wireshark, vamos usar um dos ulilitarios graficos do Wireshark - Time- Sequence -Graph ( Stevens ) - para plotar os dados. * Selecione um segmento TCP na lista de pacotes capturados pelo Wireshark. Entao selecione o menu Statistics->TCP Stream Graph-> Time-Sequence- Graph(Stevens). Vocé deve ver uma plotagem similar a da figura abaixo, que foi criada a partir dos pacotes capturados em tcp-etherealtrace-1 em http://gaia.cs.umass.edu/wireshark-labs/wireshark-traces.zip. Aqui, cada ponto representa um segmento TCP enviado, tragando o numero de sequéncia de cada segmento em relagao ao tempo no qual ele foi enviado. Observe que um conjunto de pontos empilhados representa uma série de pacotes que foram enviados de volta pelo emissor. Responda as questées abaixo para os segmentos TCP no rastreamento de pacotes tcp-etherealtrace-1 em http://gaia.cs.umass.edulwireshark-labs/wireshark-traces.zip. 11.Use a ferramenta de plotagem Time-Sequence-Graph(Stevens) para ver 0 nlimero de sequéncia em relagdo ao tempo de segmentos sendo enviados do cliente para o servidor gaia.cs.umass.edu. Vocé pode identificar onde a fase do TCP slowstart comeca e onde termina, e onde o controle de congestionamento entra em ago? Comente as formas nas quais os dados medidos diferem do comportamento idealizado do TCP que foi estudado no texto, 12.Resposda as duas perguntas acima para o rastramento capturado quando vocé transferiu um arquivo do seu computador para gaia.cs.umass.edu

You might also like