Baixe o app para aproveitar ainda mais
Prévia do material em texto
1. Descreva: A. Internet: Rede de computadores dispersos por todo o planeta que trocam dados e mensagens utilizando um protocolo comum. B. Protocolo: Conjunto de regras sobre o modo como se dará a comunicação entre as partes envolvidas. C. Meios de acesso e respectivos meios físicos: Acesso doméstico: os dois tipos de acesso residencial predominantes são a linha digital de assinante (DSL) ou a cabo. Além destes, existem também o FTTH e o enlace de satélite (quando as demais não são possíveis). Acesso empresarial: Ethernet e Wi-Fi. Os meios físicos são agrupados em duas categorias: Guiados: o bit é propagado até o destino por meio físico existente. Exemplos: par de fios de cobre, cabo coaxial e fibra óptica. Não-Guiados: não existe meio de propagação físico. Exemplos: canais de rádio terrestres e canais de rádio por satélite. D. Comutação de circuitos e de pacotes. Compare as duas: Comutação de circuitos exige que as estações comunicantes possuam caminho dedicado exclusivo, que pode ser estabelecido das seguintes maneiras: 1. Circuito físico, 2. FDM – multiplexação por canais de frequência (dispõe continuamente de uma fração da largura de banda) e 3. TDM – multiplexação por canais de tempo (dispõe de toda a largura de banda em breves intervalos de tempo). Este tipo de comunicação é executado em três passos distintos e específicos: estabelecimento do circuito, troca de informações e desconexão ponto a ponto. Caso uma destas etapas tenha problemas, há quebra de conexão. Exemplos: ligação telefônica e internet discada. Comutação de pacotes: não exige o estabelecimento de um circuito dedicado para a comunicação, o que implica menores custos com meios físicos. Há dois tipos de comutadores: roteadores e comutadores de camada de enlace. Este paradigma utiliza a ideia da segmentação de dados em partes discretas, compostas de cabeçalho, corpo e rodapé, que são denominados pacotes. Neste tipo de comutação é usada a multiplexação estatística (STDM). Nele, o comutador deve receber o pacote inteiro antes de poder começar a transmitir o primeiro bit para enlace de saída. Exemplo: Ethernet. E. Os tipos mais importantes de atraso: Atraso de processamento nodal: tempo requerido para examinar o cabeçalho do pacote e determinar para onde direcioná-lo. Atraso de fila: tempo de espera até ser transmitido no enlace. Atraso de transmissão: quantidade de tempo requerida para transmitir todos os bits do pacote para o enlace. Atraso de propagação: tempo necessário para propagar o bit desde o início até o fim do enlace. Juntos, eles se acumulam para formar o atraso nodal total. F. Vazão: Para definir vazão, considere a transferência de um arquivo grande do hospedeiro A para o hospedeiro B por uma rede de computadores. A vazão instantânea a qualquer momento é a taxa (em bits/s) em que o hospedeiro B está recebendo o arquivo. Se o arquivo consistir em F bits e a transferência levar T segundos para o hospedeiro B receber todos os F bits, então a vazão média da transferência do arquivo é F/T bits/s. Enlace gargalo: enlace no caminho fim-a-fim que restringe a vazão fim-a-fim. G. Encapsulamento: Uma mensagem da camada de aplicação na máquina emissora é passada para a camada de transporte. No caso mais simples, esta pega a mensagem e anexa informações adicionais que serão usadas pela camada de transporte do lado receptor. A mensagem da camada de aplicação e as informações de cabeçalho da camada de transporte, juntas, constituem o segmento da camada de transporte, que encapsula a mensagem da camada de aplicação. 2. Descreva cada camada dos modelos OSI e TCP/IP. Compare os dois modelos. Cite exemplos de protocolos disponíveis no modelo TCP/IP. OSI: Existem 7 tipos de camada. Começando pela camada inferior, temos: Camada Física: Essa camada fica encarregada da transmissão e recepção do fluxo de bits brutos não estruturados, através de um meio físico. Ela é responsável por transportar todos os sinais para a parte de cima. Camada de Enlace: Em cada nó, a camada de rede passa o datagrama para a camada de enlace, que o entrega, ao longo da rota, ao nó seguinte, no qual o datagrama é passado da camada de enlace para a de rede. Seus serviços dependem do protocolo específico empregado no enlace. Camada de rede: Fica uma camada acima de física. Essa camada faz o controle de operações da sub-rede, decidindo qual caminho físico os dados devem seguir, baseando-se nas condições da rede, na prioridade do serviço e etc. Camada de transporte: Essa camada tem como objetivo garantir que as mensagens que são carregadas por ela cheguem sem erros, perdas e em sequência. Ela permite que as transferências de dados entre as camadas superiores sejam feitas sem nenhum tipo de preocupação. Camada de Sessão: Essa camada permite o estabelecimento da sessão entre processos em execução em diferentes estações. Camada de Apresentação: A camada de apresentação converte dados de um formato usado pela camada de aplicativo para um formato compatível com a estação de envio e, em seguida, converte esse formato compatível em um formato conhecido pela camada de aplicativo na estação de recepção. Camada de Aplicativo: É onde residem aplicações de rede e seus protocolos. Inclui muitos protocolos como o HTTP, SMTP e o FTP. Protocolo TCP/IP: Nesse tipo de protocolo temos 4 tipos de camada: Camada de Aplicação: Essa camada é responsável pelo envio de sinal de programas pela rede. Estão nela os protocolos SMTP (para e-mail), FTP (transferência de arquivos) e HTTP (para navegar na internet). Uma vez que os dados tenham sido processados pela camada de aplicação, eles são enviados para a divisão abaixo. Camada de Transporte: Tem como objetivo verificar os dados que foram recebidos da camada superior, e verificar sua integridade, depois dividi-los em pacotes para depois mandar para a camada de baixo, que é a camada de Internet Camada de Internet: Os dados que vieram da camada de cima são recebidos e são anexados ao IP do computador remetente e também ao destinatário. A partir daí eles são mandados para a camada de interface com a rede Camada de Interface com a rede: Essa camada recebe os pacotes da interface de cima e depois envia pela rede. Comparando os dois modelos, temos o seguinte: • os dois são divididos em camadas. • possuem camadas de Aplicação, Redes e de Transporte que são parecidos. • O TCP/IP se tornou padrão, sendo ela responsável pelo desenvolvimento da internet como conhecemos hoje. • OSI é usado para os estudos Alguns exemplos de protocolos usados no TCP/IP são: o FTP, o HTTP, o SMTP e o UDP 3. Compare as arquiteturas cliente-servidor e P2P. A arquitetura P2P é projetada pelo programador e determina como a aplicação é organizada nos vários sistemas finais. Ela utiliza a comunicação direta entre duplas de hospedeiros conectados alternadamente, denominados pares. A arquitetura cliente-servidor possui um hospedeiro sempre em funcionamento, denominado servidor, que atende a requisições de muitos outros hospedeiros, denominados clientes. 4. Descreva: A. Autoescalabilidade da arquitetura P2P e os principais desafios (ISP amigável, segurança e incentivo): Autoescalabilidade: Gera uma carga de trabalho, mas acrescenta capacidade ao distribuir arquivos a outros pares. ISP Amigável: A maioria dos ISPs residenciais foram dimensionados para muito mais tráfego de entrada do que de saída. Mas a transmissão de vídeo P2P e as aplicações de distribuição de vídeo transferem o tráfego desaída dos servidores para ISPs residenciais, colocando, assim, uma pressão significativa nos ISPs. As futuras aplicações P2P precisam ser criadas para que sejam amigáveis aos ISP. Segurança: Em razão da sua natureza altamente distribuída e exposta, as aplicações P2P podem ser um desafio para proteger. Incentivos: O sucesso das futuras aplicações P2P também depende de usuários participativos para oferecer largura de banda, armazenamento e recursos da computação às aplicações. B. Socket: Interface de software utilizada para envio e recebimento de mensagens. C. Cockies: São definidos no [RFC 6265] e permitem que sites monitorem seus usuários. É composto por quatro componentes: 1. Uma linha de cabeçalho de cookie na mensagem de resposta HTTP; 2. Uma linha de cabeçalho de cookie na mensagem de requisição HTTP; 3. Um arquivo de cookie mantido no sistema final do usuário e gerenciado pelo navegador do usuário; 4. Um banco de dados de apoio no site. D. Cache web: Também denominado servidor proxy, é uma entidade da rede que atende requisições HTTP em nome de um servidor Web de origem. E. Get condicional; Mecanismo que permite que um cache verifique se seus objetos estão atualizados. F. Conexões persistentes e não persistentes. Conexões persistentes: todas as requisições e suas respostas devem ser enviadas por uma mesma conexão TCP. Conexões não-persistentes: cada par de requisição/resposta deve ser enviado por uma conexão TCP distinta. 5. Compare: A. Protocolos HTTP e FTP: HTTP é um protocolo da camada de aplicação da WEB. É implementado em dois programas: Cliente e Servidor. Ele é quem define a estrutura da mensagem que o cliente vai trocar com o servidor e utiliza TCP como seu protocolo de transporte. FTP é um dos protocolos mais usados para se transferir arquivos na Internet. Envolve tanto transferência de arquivos quanto acesso a sistemas de arquivos remotos. Independe do hardware ou do sistema operacional e utiliza conexão TCP para estabelecimento da conexão entre cliente e servidor. Faz uso de duas conexões paralelas para transferir um arquivo: uma conexão de controle e uma conexão de dados. A conexão de controle é dita persistente, pois uma vez estabelecida a sessão, ela permanecerá ativa durante toda a conexão. B. Protocolos HTTP e SMTP: HTTP é um protocolo da camada de aplicação da WEB. É implementado em dois programas: Cliente e Servidor. Ele é quem define a estrutura da mensagem que o cliente vai trocar com o servidor e utiliza TCP como seu protocolo de transporte. SMTP controla a maneira como o e-mail é transportado e entregue via internet ao servidor de destino. Ele recebe e envia e-mails entre os servidores. 6. Explique o funcionamento do DNS considerando os servidores de DNS raiz, TLD e autoritativos. Há duas maneiras de identificar um hospedeiro: por um nome de hospedeiro e por endereço IP. Para conciliar isso, é necessário um serviço que traduza nomes de hospedeiros para endereços IP, esta é a tarefa principal do DNS. O DNS é um banco de dados distribuído executado em uma hierarquia de servidores de DNS, e um protocolo da camada de aplicação que permite que hospedeiros consultem o banco de dados distribuído. O DNS provê serviços, além da tradução de nomes de hospedeiros para endereços IPS, como: Apelidos (aliasing) de hospedeiro apelidos de servidor de correio distribuição de carga Servidores raiz: No topo da hierarquia estão os 13 servidores raiz. É um servidor de nome para a zona raiz do DNS, sua função é responder diretamente às requisições de registros da zona raiz, eles são o primeiro passo para traduzir nomes para endereços IP. Servidores TLD: servidor de domínio de topo, o nome mais à direita é chamada de domínio de topo, alguns exemplos: .com, .org, .net, .gov, .edu e etc. Servidores autoritativos: O servidor com autoridade de um domínio possui os registros originais que associam aquele domínio a seu endereço de IP. Toda vez que um domínio adquire um novo endereço, essas informações devem ser adicionadas a pelo menos dois servidores autoritativos. Um deles será o servidor autoritativo principal e o outro, o secundário. Isso é feito para minimizar o risco de, em caso de erros em um servidor DNS, perder todas as informações originais do endereço daquele domínio. 7. Qual a função de uma DHT (Distributed Hash Table). Explique os casos onde as informações estão presentes em (vantagens e desvantagens): Uma tabela hash distribuída é um banco de dados que funciona na arquitetura P2P. Nesse tipo de sistema, cada par (chave, valor) mantém apenas um pequeno subconjunto de dados do banco. Qualquer par pode consultar o banco de dados. É utilizada tabela hash no banco de dados. Uma vantagem do DHT é de que não haverá congestionamento do servidor, como poderia acontecer caso fosse um banco de dados na arquitetura cliente servidor. Porém, nesse caso, seria necessário que tenhamos um número razoável de pares realizando o envio do arquivo solicitado do banco de dados. Desvantagem: Não há garantia de que será possível receber um arquivo, pois se nenhum par tiver o arquivo, não haverá como receber. Além do mais, caso haja poucos pares com o arquivo, o recebimento ficará a mercê da velocidade de envio dos pares disponíveis. A. Um servidor mantém as informações sobre todos os usuários: Um servidor mantém as informações de todos os usuários, mas cada usuário mantém apenas uma pequena totalidade dos dados do banco. B. Todos os usuários: O DHT designa um identificador para cada par. C. Usuários de forma circular: Para tratar de problemas em escala, é utilizado a organização dos pares em círculos. Nesse tipo de organização, cada par fica ciente apenas de seu sucessor e predecessor imediato. Observe abaixo um exemplo. Suponha que o par 3 deseje determinar qual par no DHT é responsável pela chave 11. O par de origem (par 3) envia no sentido horário uma mensagem perguntando quem é o responsável do par 11. Caso o par seguinte seja o 11, o par foi encontrado, caso contrário, esse par emite a mensagem para seu sucessor, até encontrar o par responsável. No caso, o par responsável seria o 12. 8. Um protocolo da camada de transporte fornece comunicação lógica entre processos de aplicação que rodam em hospedeiros distintos. O que significa Comunicação Lógica? Poder se comunicar através do envio de mensagens com outros hospedeiros, sem se preocupar com detalhes de infraestrutura física utilizada para transportar essas mensagens. 9. No modelo TCP/IP, quais são os protocolos oferecidos pela camada de Transporte à camada de Aplicação? Compare-os. Camada de Aplicação Os protocolos da camada de aplicação definem as regras e o formatos das mensagens que são trocadas entre as aplicações de rede, por exemplo a aplicação WWW (world wide web) é governada pelas regras do protocolo de aplicação HTTP (hiper text transfer protocol); o correio eletrônico envia as mensagens usando o protocolo de aplicação SMTP (simple mail transfer protocol); a transferência de arquivos usa o protocolo de aplicação FTP (file transfer protocol). As mensagens trocadas entre as entidades da camada de aplicação utilizam os canais disponibilizados pelos protocolos da camada inferior. Camada de Transporte Os protocolos da camada de transporte garantem um canal de comunicação lógico fim-a-fim entre os processos rodando no lado do cliente e no lado do servidor, para que as aplicações possam trocar mensagens entre si. Para atender as aplicações do tipo pedido/resposta e aplicações dotipo fluxo de dados em tempo real, a Internet implementa dois protocolos de transporte, o TCP e o UDP. O TCP fornece um serviço confiável e orientado a conexão. O UDP fornece um serviço sem conexão (connectionless) e não confiável. Como em cada computador da rede pode-se ter diferentes processos de aplicação rodando, por exemplo, várias seções de navegadores Web, um dos serviços oferecidos pela camada de transporte é a multiplexação/demultiplexação de aplicações, entregando as mensagens na porta apropriada de cada processo. 10. Explique os processos de multiplexação e demultiplexação. Quais informações são utilizadas pelos sockets TCP e UDP? Demultiplexação: é a tarefa de entregar os dados contidos em um segmento da camada de transporte ao socket correto. Multiplexação: é o trabalho de reunir, no hospedeiro de origem, partes de dados provenientes de diferentes sockets, encapsular cada parte de dados com informações de cabeçalho para criar segmentos e passar esses segmentos para a camada de rede. Os sockets TCP e UDP utilizam informações do cabeçalho de seus segmentos. UDP: Porta de origem, porta de destino, comprimento (segmento UDP, incluindo o cabeçalho), soma de verificação e a mensagem. TCP: Porta de origem, porta de destino, número de sequência, número de reconhecimento, comprimento, janela de recepção, valor de verificação da internet, mensagem. 11. Como é realizada a soma de verificação? Dê um exemplo usando 3 palavras de 16 bits. Suponha que tenhamos as seguintes três palavras de 16 bits: 100100111000101 001000011011101 101010101011100 Somaremos as duas primeiras: 100100111000101 001000011011101 _________________ 101101010100010 Adicionaremos a terceira palavra ao resultado anterior: 101101010100010 101010101011100 __________________ 1010111111111110 12. Para uma transferência de dados confiável alguns mecanismos são utilizados: soma de verificação, número de sequência, temporizadores e número de reconhecimento. Explique cada um e os problemas que abordam. Soma de verificação: Usado para detectar erros de bits em um pacote transmitido. Número de sequência: Usado para numeração de pacotes de dados que transitam do remetente ao destinatário. Lacunas nos números de sequência de pacotes recebidos permitem que o destinatário detecte um pacote perdido. Pacotes com números de sequência duplicados permitem que o destinatário detecte cópias duplicadas de um pacote. Temporizador: Usado para controlar a temporização/retransmitir um pacote, possivelmente porque o pacote (ou seu ACK) foi perdido dentro do canal. Como pode ocorrer esgotamento de temporização quando um pacote está atrasado, mas não perdido (esgotamento de temporização prematuro), ou quando um pacote foi recebido pelo destinatário, mas o ACK remetente-destinatário foi perdido, um destinatário pode receber cópias duplicadas de um pacote. Número de reconhecimento: Usado pelo destinatário para avisar o remetente que um pacote ou conjunto de pacotes foi recebido corretamente. Reconhecimentos normalmente portam o número de sequência do pacote, ou pacotes, que estão sendo reconhecidos. Reconhecimentos podem ser individuais ou cumulativos, dependendo do protocolo. 13. Compare o envio de dados do tipo Pare e Espere com o envio Paralelo. Quais são os protocolos que permitem o paralelismo? Explique cada um. No envio de dados do tipo “pare e espere”, o remetente envia o primeiro bit do primeiro pacote de dados. O destinatário recebe bit a bit até que o ultimo bit do primeiro pacote seja enviado e o destinatário o receba. Após isso, o destinatário retorna uma mensagem ACK ao remetente para que o próximo pacote de dados, ou mensagem, possa ser enviado. Já no tipo paralelismo, o remetente é autorizado a enviar vários pacotes sem esperar por reconhecimento imediato por parte do destinatário. Desta forma, um remetente pode enviar três pacotes de dados, por exemplo, antes de esperar por reconhecimento (ACK’s), triplicando seu desempenho. O protocolo GO-BACK-N : No protocolo Go-Back-N é definido um número N de pacotes que podem ser enviados sem que seja necessário aguardar pelo reconhecimento de cada um deles. Esta quantidade N de pacotes pode ser vista como uma “janela”. Com isso, os pacotes assumem os seguintes estados na aplicação do protocolo: pacotes que foram corretamente enviados e já receberam reconhecimento (receberam o ACK do destinatário); os pacotes que já foram enviados, mas ainda não foram reconhecidos e os pacotes que são os próximos a serem enviados, já que ainda estão dentro dos limites da janela. Os pacotes que ficam fora da janela ainda não poderão ser enviados. Nextseqnum é o número de sequência do próximo pacote a ser enviado. O pacote base é o pacote não reconhecido com número de sequência mais antigo. Quando este pacote for reconhecido, a janela irá se deslocar para a direito no espaço de números de sequência dos pacotes, permitindo o envio de outros pacotes. A janela “desliza”, e com isso o protocolo Go-Back-N é também denominado protocolo de janela deslizante. O lado remetente deve ser capaz de responder a 3 situações: Dados recebidos da camada de cima Antes de criar e enviar um pacote, o protocolo deve verificar se há espaço na janela. Se não houver, os dados serão devolvidos, podendo ser enviados apenas quando um espaço for liberado; Recebimento de um ACK Receber um ACK com número de sequência n indica ao remetente que todos os pacotes com número de sequência até n (inclusive) foram recebidos corretamente pelo destinatário, e assim a janela desliza. O pacote com número de sequência n+1 se torna a base; Esgotamento de temporização É usado um temporizador para o pacote base. Se um ACK chegar antes do temporizador se esgotar, ele é reiniciado para o pacote seguinte. Se ele se esgotar, todos os pacotes que foram enviados, mas que ainda não foram reconhecidos são reenviados. O lado destinatário, ao receber um pacote com número de sequência n, que está na ordem esperada, envia um ACK correspondente e entrega os dados à camada superior. Caso o pacote recebido não esteja na ordem, ele será descartado e será reenviado um ACK para o último pacote recebido corretamente. Se por um lado há o prejuízo na necessidade de retransmissão de dados, por outro lado, essa característica garante a simplicidade nos buffers do destinatário. O protocolo de REPETICAO SELETIVA (RS): No protocolo de Repetição Seletiva, como o próprio nome já indica, não ocorrerá os reenvio desnecessários de pacotes. Apenas será retransmitido o pacote que tiver algum problema. Com isto há um bom ganho de tempo nas transferências de dados. Uma grande diferença entre o GBN e o SR é que nele acontece a confirmação de recebimento de pacotes mesmo que pacotes anteriores ainda não tenham sido confirmados. Foi justamente por isso que veio a Repetição Seletiva: permitir que o destinatário reconheça pacotes fora de ordem, possibilitando assim retransmissões somente dos arquivos com algum problema. Como no GBN, os pacotes à medida que são recebidos da camada superior recebem um número de sequência. Se este número estiver dentro da janela, então este pacote pode ser enviado. Ao receber o ACK de confirmação de recebimento do pacote, se o pacote estiver no início da janela, então a janela pula uma ou mais posições à frente conforme os pacotes posteriores já foram recebidos e confirmados ou não. Outra questão é quanto ao problema da perca de pacotes. Para isto é usado temporização, só quena repetição seletiva, cada pacote tem de ter sua própria temporização, uma vez que só será retransmitido o pacote perdido. Analisando o lado do destinatário, tem-se que: Os pacotes que já foram recebidos, mas que estão fora de ordem ficam armazenados em um buffer. Ao receber um pacote e este pacote sendo o primeiro da janela, ele será enviado à camada superior juntamente com aqueles que já foram recebidos anteriormente e estão em sequência com este primeiro. Então a janela desliza à direita por um número de pacotes igual à quantidade de pacotes que foram à camada superior. Em caso de o destinatário receber um pacote com número de sequência anterior ao número de início da janela (rcv_base), ou seja, pacote já recebido, mesmo assim será necessário o envio de um ACK para que o remetente possa movimentar sua janela à frente. Este fato pode ocorrer devido a perda do ACK, pois desta forma o remetente nunca receberá confirmação e então reenviará o pacote, mas o pacote já foi recebido pelo destinatário, porém o remetente não sabe disso, e por isso ele deve reenviar o ACK. 14. Qual a função da janela deslizante? Por que não permitir o envio de um número ilimitado de pacotes? É uma característica de alguns protocolos que permite que o remetente transmita mais que um pacote de dados antes de receber uma confirmação. Depois de recebê- lo para o primeiro pacote enviado, o remetente desliza a janela do pacote e manda outra confirmação. Para não saturar o buffer de recepção da conexão, pois este pode estar ocupado realizando alguma outra tarefa. 15. Quais os problemas encontrados na definição de um temporizador? Duração – caso seja muito curta, não haverá tempo para que o destinatário envie a resposta e o remetente receba adequadamente, entrando em loop infinito. Valor muito grande – caso haja falha, o pacote irá demorar para ser enviado. 16. Para que servem os campos Janela de Recepção, URG, ACK, PSH, RST, SYN e FIN do cabeçalho TCP? Janela de recepção é usada para dar ao remetente uma ideia do espaço de buffer livre disponível no destinatário. ACK é usado para indicar se o valor carregado no campo de reconhecimento é válido, isto é, se o segmento contém um reconhecimento para um segmento que foi recebido com sucesso. URG é usado para mostrar que há dados nesse segmento que a entidade da camada superior do lado remetente marcou como ‘urgentes’. PSH indica que o destinatário deve passar os dados para a camada superior imediatamente. RST, SYN e FIN são usados para estabelecer e encerrar a conexão. 17. O que significa o recebimento no emissor de três ACKs consecutivos com o mesmo número de reconhecimento? Se o TCP remetente receber três ACKs duplicados para os mesmos dados, ele tomará isso como indicação de que o segmento que se seguiu ao segmento reconhecido três vezes foi perdido. 18. Qual a função do controle de fluxo? Eliminar a possibilidade de o remetente estourar o buffer do destinatário, através da compatibilização de velocidades. 19. Descreva as etapas para o estabelecimento e encerramento de uma conexão TCP. 20. Implemente um pseudocódigo de soma de verificação (checksum). Remetente INÍCIO DIVIDIR_DADOS_DA_MENSAGEM_EM_BLOCOS_DE_16_BITS() PARA CADA BLOCO FAÇA soma ← soma + VALOR_BITS(BLOCO) FIM_PARA checksum_cabecalho ← COMPLEMENTO_DE_UM(soma) FIM Destinatário INÍCIO DIVIDIR_DADOS_RECEBIDOS_EM_BLOCOS_DE_16_BITS() PARA CADA BLOCO FAÇA soma ← soma + VALOR_BITS(BLOCO) FIM_PARA checksum ← COMPLEMENTO_DE_UM(soma) SE((checksum + checksum_cabecalho) = 1111111111111111) ENTÂO RETORNA VERDADEIRO; SENÃO RETORNA FALSO; FIM_SE FIM 21. Explique a função da janela de congestionamento. Impõe uma limitação à taxa à qual um remetente TCP pode enviar tráfego para a rede. 22. Como detectar o congestionamento? Esgotamento de temporização ou recebimento de três ACKs duplicados indicam congestionamento (evento de perda). 23. Explique: A. Partida Lenta: O valor de cwnd costuma ser 1MSS resultando em uma taxa inicial de envio de aproximadamente MSS/RTT. Começa em 1MSS e aumenta 1MSS toda vez que um segmento transmitido é reconhecido. Inicia lenta e cresce exponencialmente. B. Prevenção de Congestionamento: Neste estado, o valor de cwnd é cerca de metade de seu valor quando o congestionamento foi encontrado. Em vez de duplicar o valor de cwnd a cada RTT, o TCP aumenta o valor de cwnd por meio de um único MSS a cada RTT. C. Recuperação Rápida: Apenas quando ocorre 3 ACKs. O valor de cwnd é aumentado em 1 MSS. Se houver esgotamento de temporização, a recuperação rápida é alterada para o modo de partida lenta. A recuperação rápida é recomendada, mas não exigida. O TCP Reno inclui a recuperação rápida. 24. O que é equidade? Duas conexões TCP compartilhando um único enlace congestionado. 25. Que algoritmo o remetente deve utilizar para modificar sua taxa de envio como uma função do congestionamento fim a fim percebido? Devem analisar: se remetentes enviam coletivamente muito rápido, eles podem congestionar a rede. Se enviam lentamente, eles podem subutilizar a largura de banda da rede.
Compartilhar