segunda-feira, 31 de janeiro de 2011

Introdução ao Mikrotik

COMO ACESSAR O ROUTEROS MIKROTIK

O roteador RouterOS pode ser acessado das seguintes maneiras:
- Monitor e teclado
- Terminal Serial (default 8 / N / 1 – velocidade 9600)
- Telnet
- Telnet de MAC
- SSH
- Interface Gráfica Winbox em windows
- Interface Gráfica Winbox em Linux com Wine

ACESSO VIA TERMINAL

- Primeiro acesso:
- Pode ser no próprio box, via serial, SSH ou telnet
- Usuário: admin
- Senha: (em branco)
- Configuração do Cabo Serial – Conector DB9































- Ajuda
- ?: Mostra um help para o diretório em que se esteja
[Mikrotik] > ?
- ? Após um comando incompleto: Mostra as opções adicionais disponíveis.
[Mikrotik] > interface ?



- Navegação nos níveis de diretório
- [Mikrotik] > interface {enter}
- [Mikrotik] interface > wireless {enter}
- [Mikrotik] interface wireless > print {enter}
- Pode-se ir diretamente com / interface wireless print
- / Para voltar na raiz


- Tecla TAB
- Comandos não precisam ser totalmente digitados, podendo ser completados
com a tecla TAB
- Havendo mais de uma opção para o já digitado, se pressionar TAB duas vezes
mostra as opções.

Comandos mais comuns
- Print: Pode ser usado com diversos argumentos como:
- print status
- print detail
- print interval, etc

- Monitor: Usado repetidamente mostra o status
/ interface wireless monitor wlan1


- Manipulação de regras
- add: adiciona regras
- set: muda regras
- remove: remove regras
- disable: desabilita a regra sem apaga-la
- move: move algumas regras cuja ordem influencie (firewall por exemplo)

- export: exporta todas as configurações do diretório corrente acima (se estiver em /,
do roteador todo). O resultado pode ser copiado com o botão direito do mouse e colado em
editor de textos.




ACESSO VIA WINBOX GUI
Interface Gráfica para administração do Mikrotik
- Funciona em Windows e Linux (Wine)
- Utiliza a porta TCP 8291
Para Download: http://www.mikrotik.com/download/winbox.exe




































INTERFACE WIRELESS














Botão – Scan
Escaneia o meio (causa queda das conexões estabelecidas)
A – Ativa
B – BSS
P – Protegida
R – Rede Mikrotik
N – Nstreme



















Botão – Freq. Usage
Mostra o uso as freqüências em todo o espectro, para site survey
Obs.: Ao utilizar esta opção, a conexão estabelecida é interrompida.





















Botão - Align
Ferramenta de alinhamento com sinal sonoro (Colocar o MAC do AP remoto no campo Filter e
campo Áudio)

Obs.: Ao utilizar esta opção, a conexão estabelecida é interrompida.

Rx Quality – Potência (dBm) do último pacote recebido
Avg. Rx Quality – Potência média dos pacotes recebidos
Last Rx – Tempo em segundos do último pacote recebido
Tx Quality – Potência do último pacote transmitido
Last Tx – Tempo em segundos do ultimo pacote transmitido

Botão – Sniff
Ferramenta para sniffar o ambiente wireless captando e decifrando pacotes
Muito útil para detectar ataques do tipo deauth attack e monkey jack.
Pode ser arquivado no próprio Mikrotik ou passado por streaming para outro servidor com
protocolo TZSP

























Botão – Snooper
Com a ferramenta Snooper é possível monitorar a carga de tráfego em cada canal, por estação
ou por rede.
Esta opção escaneia as freqüências definidas em scan-list da interface.



















Guia – General


































Name: Nome da Interface.
Type: wireless.
MTU: Unidade máxima de transferência (bytes).
MAC Address: Endereço MAC da interface.
Chip Info / PCI Info: Informações da placa;
ARP: - disable: não responde a solicitações ARP. Clientes tem que acessar tabelas estáticas;
- proxy-arp: passa o seu próprio MAC quando há uma requisição para algum host
interno ao roteador;
- reply-only: somente responde as requisições. Endereços de vizinhos são resolvidos
estaticamente.





Guia – Wireless


































Radio Name: apelido usado para identificar a interface.
Mode: Modo de operação.
- station: modo cliente de AP. Não pode ser “bridgeado”. Não passa os MACs internos,
mas somente o seu;
- station wds: estação que pode ser “bridgeada”, passando transparentemente os
MACs. AP precisa estar em WDS;
- ap-bridge: Modo Access Point normal;
- modo ponto de acesso para suportar um cliente somente (links ponto a ponto);
- alignment-only: modo para alinhar antenas e monitorar sinal;
- nstreme-dual-slave: para enlaces em modo nstreme dual;
- wds-slave: trabalha como ponto de acesso escravo, adaptando-se a um WDS mestre
(adapta-se às configurações da mestre).
SSID: Nome de rede.

Band: Banda e modo de operação.
- 2.4Ghz-b: 802.1b até 11mbps;
- 2.4Ghz-b/g: 802.11b até 11mbps e 802.11g até 54mbps (modo misto);
- 2.4Ghz-only-g: 801.11g até 54mbps (somente clientes g);
- 2.4Ghz-g-turbo: modo proprietário Atheros até 108mbps;
- 5Ghz: 802.11a até 54mbps;
- 5Ghz-turbo: Modo proprietário Atheros até 108mbps;
- 2.Ghz-10Mhz: Modo “cloacking”, utiliza canal de 10Mhz;
- 2.Ghz-5Mhz: Modo “cloacking”, utiliza canal de 5Mhz;
- 5.Ghz-10Mhz: Modo “cloacking”, utiliza canal de 10Mhz;
- 5.Ghz-5Mhz: Modo “cloacking”, utiliza canal de 5Mhz.

Frequency: Freqüências de trabalho em função da banda escolhida e do domínio regulatório.

Scan List: lista de freqüências a serem escaneadas.
- Quando a interface está configurada como cliente, serão “procuradas” APs que
estiverem nessa lista;
- Por default, serão buscadas as freqüências do domínio regulatório;
- Pode-se forçar o escaneamento de freqüências especificas, colocando-as separadas
por vírgula.

Secutity Profile: Perfil de segurança. Perfis de segurança podem ser criados/alterados em
Wireless/Security profiles.


Frequency Mode:
- Regulatory domain: somente são permitidas o uso das freqüências do país indicado
no campo Country, sendo que a potência máxima de transmissão EIRP será limitada de acordo
com a legislação, considerando-se o ganho de antena indicado no campo Antenna Gain;
- Manual-tx-power: os canais permitidos são os do país selecionado mas a potência é
informada pelo operador;
- superchannel: somente possível com a licença superchannel. Todos os canais e
potências suportados pelo hardware serão permitidos.

Country: País de operação.
Antenna Gain: Ganho da antena em dBi.
DFS Mode: Modo de seleção dinâmica de freqüência.
- none: Não usa DFS;
- no-radar-detect: O AP escaneia os canais da “scan-list” e escolhe para operar na
menor freqüência detectada;
- radar-detect: O AP escaneia a partir da “scan-list” e escolhe a menos freqüência
detectada. Se durante 60 segundos não é detectado nesse canal, ela começa a operar nesse
canal, caso contrário continua escaneando sempre pelos canais menos ocupados.

Observação: No Brasil é necessário DFS para operar de 5250-5350 e 5470-5725 e
existem valores mínimos em dBm que, se detectados não é permitida a operação
nesses canais (art. 50 da resolução 365/2004 da Anatel).

Proprietary extensions: Método para inserir informações adicionais (proprietárias Mikrotik)
nos pacotes Wireless a fim de contornar problemas de compatibilidade com versões antigas
(antes da 2.9.25) com novos cartões Intel – Centrino.

- pré-2.9.25: Inclui extensões da forma aceita por versões mais antigas do RouterOS.
Incompatível com clientes Centrino;

- post-2.9.25: Extensões aceitas a partir dessa versão e compatível com todos os
clientes conhecidos até o momento.

Default AP Tx Rate: estabelece a taxa máxima, em bps que cada cliente pode ter de
download.

Default Client Tx Rate: Estabelece a taxa máxima, em bps que cada cliente pode enviar ao
AP – Só funciona para cliente, também, Mikrotik.

Default Authenticate: (default-authentication) Especifica a ação padrão a ser adotada pela
AP para os clientes Wireless que não estejam declarados nas access lists (controle de MAC).
Para os equipamentos configurados como clientes, especifica a ação a ser adotada para os APs
que não estejam na Connect List.

Yes: Como AP, deixa o cliente se associar, mesmo se não estive declarado na Access
List. Como cliente, associa-se a qualquer AP, mesmo que não esteja na Connect List.

Default Forward: (default-forwarding) Determina se poderá haver comunicação entre
clientes conectados na mesma interface Wireless. Esse bloqueio é feito na camada 2 de enlace
e portanto independente de IP (alguns APs tem esse recurso como IntraBSS relay).

- Yes (marcado): permite a comunicação;
- No (desmarcado): Não permite a comunicação.

Observação: Quando as interfaces estão em Bridge, pode haver comunicação entre
clientes de interfaces diferentes, mesmo com esse recurso habilitado.

Hide SSID: Determine se o AP vai divulgar o nome da Rede em broadcast através de
“beacons”.

- Yes (marcado): não divulga, somente respondendo aos clientes que enviarem os
“probe requests”;
- No (desmarcado): divulga o nome da rede.



Guia – Data Rates


































Nesta tela é possível configurar as Taxas de transmissão suportadas e as Taxas Básicas, sendo
que:

- Taxas Suportadas (Supported Rates): São todas as taxas que o cartão que está
sendo configurado suporta.

- Taxas Básicas (Basic Rates): São as taxas mínimas suportadas por todos os
dispositivos Wireless presentes na rede

Observação: recomenda-se deixar sempre as taxas básicas no mínimo (1mbps)



Guia – Advanced

































Área: String alfanumérica utilizada para descrever um Access Point. Os clientes comparam
esse valor com o que estiver configurado em sua Área Prefix, e se a string toda ou pelo menos
os primeiros caracteres coincidirem é estabelecida a associação.

Max Station Count: Número máximo de estações que podem se conectar no AP. Limite
teórico de 2007.

Ack Timeout: Tempo de expiração (timeout) do pacote de confirmação de recebimento
(acknowledgment) enviado por uma estação

- dynamic: ajuste dinâmico. O roteador manda pacotes variáveis e em função da
resposta procura ajustar ao timeout ideal.
- indoors: para redes indoor.
- pode ser ajustado manualmente (valor inteiro em microssegundos) digitando-se
diretamente na interface.
Valores sugeridos de Ack-Timeout




















Observação: Esses valores são meramente referenciais e devem ser ajustados em
função do hardware empregado e do ambiente.

Noise Floor Threshold: Piso de ruído do ambiente (em dBm).
Observação: Não localizamos documentação suficiente para esclarecer a utilidade
prática desta opção. Em princípio deve trabalhar com cartões que tenham a opção de detecção
de noise floor – noise-floor-control

Periodic Calibration: Para assegurar a performance do chipset sob diversas condições de
temperatura ambiente o Mikrotik faz calibrações periódicas.

Calibration Interval: Intervalo em segundos entre as calibrações periódicas.
Default = 60 segundos.

Burst Time: Tempo em microssegundos que o cartão wireless pode transmitir continuamente.
Essa opção só é válida para chipset Atheros AR5000, AR5001X e AR5001X+. A variável de
leitura burst-support, acessível via terminal mostra a capacidade ou não do suporte a essa
opção.

Antena Mode: Permite a escolha da antena.
- antena a/b: escolhe uma das antenas a ou b
- tx-a/rx-b: usa a antena A para TX e a B para RX
- tx-b/rx-a: usa a antena B para TX e a A para RX

Preamble Mode: escolhe o modo do preâmbulo (comunicação inicial e de sincronização).
- long: padrão compatível com 802.11 em geral (mais antigo)
- short: padrão suportado por alguns cartões mais modernos; porem não compatível
com 801.11. Utilizando short, há aumento (pequeno) de performance.
- both: ambos são suportados

Compression: Quando habilitada a compressão (em modo AP-bridge ou bridge), permite que
um cliente que tenha a mesma capacidade de compressão habilitada comunique-se com o AP
comprimindo os dados (compressão de hardware) melhorando a performance. Esta opção não
afeta clientes que não tenham capacidades de compressão

A capacidade ou não de compressão de um dispositivo wireless pode ser vista em Interface
wireless info print.

Disconnect Timeout:
Valor em segundos acima do qual um cliente é considerado
desconectado.
Default = 3 segundos

On Fail Retry Time: Intervalo de tempo após o qual é repetida a comunicação para um
dispositivo wireless cuja comunicação tenha falhado.
Default: 100ms

Update Stats Interval: Periodicidade de atualização das estatísticas da interface.
Default = 10s



Guia – WDS


































WDS Mode: Neste modo de operação todos os APs tem que estar configurados com o mesmo
nome de rede e utilizando o mesmo canal. Além da comunicação entre APs, o WDS permite
que se conectem em qualquer dos APs estações wireless
- disabled: WDS desabilitado
- static: As estações WDS ficam atreladas umas às outras de forma estática, com cada
uma referenciando o MAC de sua parceria.
- dynamic: Uma vez estabelecido o enlace, a rede WDS é criada automática e
dinamicamente.

Quando em modo dinâmico, um dispositivo perde o link, a interface dinâmica desaparece e se
há algum endereço IP configurado nessa interface, o estado desta é mudado para “unknown”.
Quando o link volta esse estado não muda permanecendo “unknown”. Por isso não se
aconselha a colocar IPs em interfaces WDS dinâmicas. Ao invés disso, utilize a default bridge
para permitir que quando o link volte à interface, seja colocada automaticamente na Bridge.

Tendo em vista que WDS pressupõe mesmo canal em todos os APs, fica incompatível o uso de
DFS.

WDS Default Bridge: Uma vez criada uma Bridge em /interface bridge add, os APs
configurados em WDS podem fazer parte desta, bastando indicar neste combo. Para WDS
dinâmico é recomendável que todas as interfaces estejam sobre a mesma Bridge.

WDS Default Cost: No caso de redes malhadas (Mesh) feitas com WDS podem-se definir
custos diferentes para diversos trajetos, dando preferências a determinadas rotas de forma
manual.

WDS Cost Range: Indicação da faixa de custos que serão empregados na rede Mesh.

WDS Ignore SSID: Uma vez habilitada essa opção, os APs irão criar links com qualquer outro
AP que esteja configurado na mesma freqüência, independente do SSID configurado nas
mesmas.
Default = No.



Guia – Nstreme

































Nstreme é um protocolo proprietário Mikrotik (não 802.11) que tem por objetivo estabelecer
links de desempenho melhorado quando comparado ao padrão Wi-fi Normal. Destinado
principalmente a links ponto-a-ponto, mas podendo, também, ser utilizado em ambientes
multiponto, desde que todos tenham nstreme habilitado (obviamente todos Mikrotik).

Enable Polling: No modo Polling as transmissões das estações são coordenadas pelo AP
evitando as colisões por nó escondido. Não é utilizado o metido CSMA/CA comum das redes
Wi-fi.

Framer Policy: Método utilizado para combinar pacotes em um quadro maior e com isso
diminuir o overhead da comunicação, aumentando consequentemente a performance.
- none: não combina os pacotes
- besti-fit: coloca o maior número de pacotes possíveis em um frame, até que o limite
estabelecido em framer-limit seja atingido. Não fragmenta pacotes.
- exact-size: põe quantos pacotes for possível em um quadro, até que o limite
estabelecido em framer-limit seja atingido, mesmo que seja necessário fragmentar.
- dynamic-size: escolhe o melhor tamanho do quadro, dinamicamente.

Framer Limit: Tamanho máximo do quadro.
Default = 3200 bytes


Guia – Tx Power


































Tx Power Mode: Interface utilizada para configurar a potência de transmissão – valores de -
30dBm a 30dBm
Default = 17dBm

- All-rates-fixed:
utiliza a mesma potência configurada em Tx Power para todas as
velocidades.
- Card-rates: utiliza as velocidades próprias dos firmwares dos cartões
- Default: utiliza a potência default (17dBm)
- Manual-table: permite a configuração de diversas potências em função da taxa de
transmissão.

Observação: A possibilidade de alterar a potência do cartão normalmente é utilizada
para diminuir a potência nominal do mesmo e não aumenta-la


Guia – Status




































Mostra informações sobre o status do AP

- Band: Freqüência e modo de operação

- Freqüência: Canal utilizado

- Registered Clients: Clientes registrados

- Authenticated Clients: Clientes autenticados

- Overal Tx CCQ: Valor em porcentagem que mostra a eficiência da Banda de transmissão em
relação à máxima banda teórica disponível no link. Esse valor é calculado com base nos
pacotes Wireless que são retransmitidos no meio físico. Quanto mais retransmissões, menos a
eficiência.

- Ack Timeout: Tempo de expiração do ACK em microssegundos.

- Noise Floor:
Piso de ruído em dBm.



Guia – Traffic

































Menu Wireless – Interfaces





















Ao clicar em adicionar interfaces, são dadas as opções:

- VirtualAP: Cria interfaces virtuais (APs com nomes diferentes) na mesma interface física. Os
parâmetros de freqüência, modo de operação, canal, etc., serão herdados do AP principal.

Criando interfaces virtuais, podemos montar várias redes dando perfis de serviços
diferentes.



















- Name: Nome da rede virtual
- MTU: Unidade de transferência máxima (bytes)
- MAC Address: Dê o MAC que quiser para o novo AP
- ARP

- Enable/Disable: Habilita/Desabilita
- Proxy-arp: passa seu MAC
- Reply-only



Observação: Demais configurações idênticas de uma AP


- WDS: Cria uma interface WDS dando os parâmetros:
- Name: Nome da rede WDS
- Master Interface: Interface sobre a qual funcionará o WDS, podendo esta inclusive ser
uma interface virtual
- WDS Address: endereço MAC que a interface terá.



















- Nstreme Dual: Cria uma interface para uso como Nstreme dual utilizando duas antenas
(uma antena para Tx (Transmissão) e outra para Rx (Recepção)).


























- Tx Rádio: especifica-se as interfaces de Tx.
- Rx Rádio: especifica-se as interfaces de Rx.
- Tx/Rx Band e Frequency: Especifica-se a Banda de Tx e Rx que podem inclusive ser
de frquencias diferentes (2.4Ghz para Tx e 5.8Ghz para Rx)

- Framer Policy:
- Best-fit: pacotes são agrupados em frames, sem fragmentação
- exact-size: pacotes são agrupados em frames, com fragmentação se
necessário.

Observação: Com Nstreme dual é possível escolher as velocidades de transmissão e
recepção e ainda monitorar o status das conexões.





Menu Wireless – Access List

























O Access List é utilizado pelo Access Point para restringir associações de clientes. Esta lista
contém os endereços MAC de clientes e determina qual a ação deve ser tomada quando um
cliente tenta conectar. A comunicação entre clientes da mesma interface, virtual ou real,
também é controlada nos Access List.

O processo de associação ocorre da seguinte forma:
- Um cliente tenta se associar a uma interface WlanX
- Seu MAC é procurado no Access List da interface WlanX
- Caso encontrada a ação especificada será tomada:
- Authentication marcado: deixa o cliente se autenticar
- Forwarding marcado, o cliente se comunica com outros

- MAC Address: MAC a ser liberado
- Interface: Interface Real ou Virtual onde será feito o controle
- AP Tx Limit: Limite de tráfego do AP para o Cliente
- Client Tx Limit: Limite de tráfego do Cliente para o AP (apenas se cliente Mikrotik)
- Authentication: Habilitado, autentica os MACs declarados.
- Forwarding: Habilitado, permite a comunicação entre clientes habilitados (intra bss)
- Private Key: Chave de criptografia
- 40bit wep
- 128 bit wep
- Aes-com



Menu Wireless – Security Profiles



























Na tabela Security Profiles são definidos os perfis de segurança da parte Wireless que poder
ser utilizados no RouterOS.

- Name: Nome que aparecerá em outras telas, referenciando esse perfil.
- Mode: Modo de operação
- dynamic keys: gera chaves dinâmicas
- static-keys-required: criptografia todos os pacotes e somente aceita pacotes
criptografados.
- static-keys-optional: se existe uma chave privada estática de estação (static-staprivate-
key), esta será utilizada. Caso contrário, estando a estação no modo AP, não será
utilizada criptografia e em modo estação usará se estiver setada a static-transmit-key.


- Authentication Types











- WPA: Métido não padrão IEEE utilizado surante algum tempo pela indústria para evitar
problemas do WEP
- WPA2: Método compatível com 802.11i do IEEE
- PSK (Pré Shared Key): chave compartilhada entre dois dispositivos.
- EAP: Extensive Authentication Protocol

 Observação: O AP irá divulgar todos os modos de autenticação marcados aqui e as
estações escolherão o método considerando mais seguro.
Exemplo: WPA EAP ao invés de WPA PSK


- Unicast Chipers
- TKIP: Protocolo de integridade de chave Temporal. Método utilizado durante algum
tempo para contornar problemas da WEP (Proxim implementa como WEP Plus).
- AES CCM: Método de criptografia WPA mais seguro, que utiliza algoritimo AES.
- PSK (Pré Shared Key): chave compartilhada entre dois dispositivos.
- EAP: Extensive Authentication Protocol

Observação: O AP irá divulgar todos os modos de autenticação marcados aqui e as
estações escolherão o método considerando mais seguro.
Exemplo: WPA EAP ao invés de WPA PSK



- Métodos EAP

























- Passtrough: Repassa o pedido de autenticação para um Servidor Radius (esta opção
somente é usada em APs)
- EAP/TLS: Utiliza um Certificado TLS (Transport Layer Certificate)
- TLS Mode:
- No-certificate: Certificados são negociados dinamicamente utilizando o
algoritmo de Deffie-Helmman.
- Don’t-verify-certificate: exige o certificado, porém não o confere com uma
entidade certificadora.
- Verify-certificate: exige e verifica o certificado.
- TLS Certificate: Habilita um certificado importado em /Certificates

- Static Keys: Utilizado em caso de WEP


























Créditos :
- Mikrotik Wiki - http://wiki.mikrotik.com/wiki/
- Apostila Curso Router-OS Mikrotik – Wlan Brasil
- Certificado SSL - http://www.laniway.com.br
- Cópia autorizada: Marcelo Carvalho - MACNet (AWS)

Wiki Mikrotik e Download Winbox

Acesso a Wiki Mikrotik :  http://wiki.mikrotik.com


Download WINBOX :  http://www.mikrotik.com/download/winbox.exe

Adicionando um IP / NAT ( Manualmente ) [ Mikrotik ]

No prompt de comando do mikrotik , você vai poder adicionar o ip a placa de rede:
/IP ADDRESS
 add address=10.0.0.1/24 interface=ether1
 add address=192.168.0.1/24 interface=ether2

agora adicione o ip do gateway:
/IP ROUTE
 add gateway=10.0.0.0
10.0.0.1,192.168.0.10 and 10.0.0.0 is sample data and you should use your ip for setting 10.0.0.1,192.168.0.10 e 10.0.0.0 são apenas exemplos e você deve usar os endereços ip de sua preferencia para a configuração.

se você utilizou seus endereços ip você agora poderá fazer um ping para internet
 ping 4.2.2.4
4.2.2.4 64 byte ping: ttl=242 time=255 ms
4.2.2.4 64 byte ping: ttl=242 time=243 ms
4.2.2.4 64 byte ping: ttl=242 time=247 ms
4.2.2.4 64 byte ping: ttl=242 time=243 ms
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 243/247.0/255 ms
ok.

NAT
o nat será utilizado para permitir clientes com ip invalido ( privado) se conectem a internet, então nos temos que rodar o nat no mikrotik e configurar um cliente com um endereco ip no range da rede da ether2 do mikrotik ex: 192.168.0.2 e configurar o gateway deste cliente como 192.168.0.1 (ip do mikrotik)
/IP FIREWALL NAT
 add chain=srcnat action=masquerade out-interface=ether1
isto irá rotear todo trafego da interface 1 que tem um endereco ip valido , com nat e vai sair para a internet.

Instalação Mikrotik

Este exemplo mostra como instalar e configurar o Mikrotik RouterOS.

Primeiro, faça o download do RouterOS neste link [1]

Então, grave o arquivo iso em um CD, coloque no drive e ligue o pc.

Pressione a tecla "a" para selecionar tudo e então pressione "i" para instalar.

Responda com a tecla "n" a primeira pergunta e com a tecla "y" a segunda pergunta.
























Depois da instalação , remova o cd do drive e pressione "Enter"

Depois de reiniciar digite "admin" como login e como senha pressione a tecla "Enter"

quinta-feira, 27 de janeiro de 2011

Frames e Pacotes

Podemos dizer que a função de qualquer rede é simplesmente transportar informações de um ponto a outro. Pode ser entre dois micros ligados através de um simples cabo cross-over, ou pode ser entre dois servidores situados em dois continentes diferentes. Do ponto de vista do sistema operacional e dos aplicativos, não faz muita diferença.
No nível mais baixo temos os cabos de rede, que são enquadrados no primeiro nível do modelo OSI (camada física) e se destinam unicamente a transportar os impulsos elétricos de um micro a outro. Ao utilizar uma rede wireless ou cabos de fibra óptica, os sinais são transmitidos (respectivamente) na forma de sinais de rádio ou luz, mas a função básica (transportar dados de um ponto a outro) continua a mesma, independentemente da mídia utilizada.
Em seguida temos os switches ou hub-switches que utilizamos para interligar os micros da rede local. Na verdade, o termo "hub-switch" foi inventado pelos fabricantes para diferenciar os switches mais baratos, que carecem de funções mais avançadas dos switches "de verdade", que possuem mais portas e incluem interfaces de administração elaboradas.
O termo "switch" está mais relacionado ao modo de funcionamento do aparelho e não ao seu custo ou funções. Um switch é capaz de encaminhar os frames Ethernet para o destinatário correto, fechando "circuitos" entre as duas portas envolvidas, enquanto um hub antigo simplesmente repete os sinais recebidos em todas as portas.


Assim como as placas de rede, os switches trabalham no nível 2 do modelo OSI (link de dados), enviando frames Ethernet e endereçando os outros dispositivos da rede usando endereços MAC ao invés de endereços IP. Só para efeito de comparação, os hubs "burros" trabalham no nível 1, assim como os cabos de rede. Eles são meros dispositivos de transmissão, que não realizam processamento.
Os frames Ethernet são "envelopes" para os pacotes TCP/IP. O aplicativo (um navegador, um servidor web, ou qualquer outro aplicativo transmitindo dados pela rede) envia os dados ao sistema operacional, que divide o stream em pacotes TCP/IP e os envia à placa de rede. As placas de rede (que não entendem o protocolo TCP/IP) tratam os pacotes como um fluxo de dados qualquer e adicionam mais uma camada de endereçamento, desta vez baseada nos endereços MAC dos dispositivos da rede, gerando o frame Ethernet que é finalmente transmitido. Ao chegar do outro lado, o "envelope" é removido e o pacote TCP/IP é entregue.
O uso dos frames adiciona alguns bytes adicionais a cada pacote transmitido, reduzindo sutilmente o desempenho da rede. Veja o diagrama de um frame Ethernet:


A transmissão de cada frame começa com o envio de 8 bytes, contendo um preâmbulo e uma sequência de inicialização. Ele serve para avisar outros micros da rede de que uma transmissão está prestes a começar. Estes 8 bytes iniciais não fazem parte do frame e são descartados pelas placas de rede depois de recebidos, por isso não aparecem no relatório mostrado por sniffers de rede, como o wireshark.
O pacote TCP/IP é incluído dentro do campo de dados, que pode incluir até 1500 bytes por frame. Pacotes maiores do que este valor precisam ser divididos em fragmentos com até 1500 bytes e enviados usando vários frames.
Junto com os dados é transmitido o cabeçalho do frame (14 bytes no total), que inclui o endereço MAC de destino, endereço MAC de origem e um campo para o tipo de dados e mais 4 bytes finais, que contém códigos de CRC, usados (pelas placas de rede) para verificar a integridade do frame recebido. Este cabeçalho é também chamado de "MAC Header". Ao receber cada frame, a placa de rede usa os 4 bytes (32 bits) de CRC para verificar a integridade do frame recebido e, caso ele esteja corrompido ou incompleto, ela o descarta e solicita sua retransmissão.
Dentro do pacote TCP/IP temos novos headers, que contém o endereço IP de origem, endereço IP de destino, porta de origem, porta de destino, códigos de verificações, número do pacote, campo para inclusão de opções e assim por diante.
No total, temos 20 bytes para os headers do protocolo TCP e mais 20 bytes para os headers do protocolo IP, totalizando 40 bytes de headers por pacote. Desta forma, temos 1460 bytes de dados em um pacote de 1500 bytes e 536 bytes de dados em um pacote de 576 bytes:

À primeira vista, pode parecer estranho que sejam incluídos headers separados para o TCP e o IP, mas a verdade é que os dois são complementares e por isso não podem ser dissociados. É por isso que usamos o termo "TCP/IP", como se os dois protocolos fossem uma coisa só.
Os headers do protocolo IP incluem o endereço IP de origem e de destino, enquanto os headers do TCP incluem a porta de origem e de destino, por exemplo. Em resumo, podemos dizer que o IP se encarrega da entrega dos pacotes, enquanto o TCP se encarrega da verificação de erros, numeração de portas e tudo mais.
Como vimos anteriormente, o TCP/IP permite o uso de pacotes com até 64 kbytes, mas o tamanho de pacote mais usado é de 1500 bytes, que equivalem ao volume de dados que podem ser transmitidos em um único frame Ethernet.
Em um pacote de 1500 bytes, temos até 1460 bytes de dados e 40 bytes referentes aos headers IP e TCP. Arquivos e outros tipos de informações são transmitidas na forma de sequências de vários pacotes. Um arquivo de 15 KB, por exemplo, seria dividido em um total de 11 pacotes; os 10 primeiros contendo 1460 bytes cada um e o último contendo os últimos 760 bytes. É graças aos códigos de verificação e numeração dos pacotes que arquivos grandes podem ser transmitidos de forma íntegra mesmo através de conexões via modem ou links wireless, onde diversos pacotes são corrompidos ou perdidos. Basta retransmitir os pacotes extraviados ou danificados quantas vezes for necessário. :)
O tamanho dos pacotes pode variar também de acordo com o meio de transmissão usado. No ADSL PPPoE, por exemplo, são utilizados pacotes de 1492 bytes, pois o protocolo usado demanda o uso de 8 bytes adicionais para o header. Nas conexões discadas, onde a conexão é mais lenta e a perda de pacotes é mais comum, são geralmente utilizados pacotes de apenas 576 bytes. Existem ainda casos de pacotes maiores, utilizados em situações específicas.
Dentro da rede local, temos um total de 1518 bytes transmitidos para cada pacote TCP/IP de 1500 bytes, incluindo os 14 bytes do header e os 4 bytes de CRC. Se formos incluir também os 8 bytes iniciais, que contém o preâmbulo e a sequência de inicialização, o número sobe para 1526 bytes. Considerando que cada pacote contêm apenas 1460 bytes de dados, temos 66 bytes de overhead no total, o que corresponde a quase 5% do volume de dados transmitidos.
Em uma rede local, que trabalha a 100 ou 1000 megabits, isso não faz muita diferença, mas na Internet isso seria um grande desperdício. Por isso, os roteadores se encarregam de eliminar estas informações desnecessárias, retransmitindo apenas os pacotes TCP/IP propriamente ditos. É por isso que não é possível criar regras de firewall baseadas em endereços MAC para pacotes vindos da Internet: os endereços MAC fazem parte das informações incluídas no frame Ethernet, que são descartadas pelos roteadores.
Por trabalharem diretamente com endereços IP, os roteadores são enquadrados na camada 3 do modelo OSI (camada de rede). Basicamente, são roteadores que cuidam de todo o trafego de dados na Internet. Você pode utilizar um hub ou switch dentro da sua rede local, mas ao acessar a Internet você sempre utiliza um roteador, seja um roteador Cisco de grande porte, seja um modem ADSL ou um micro com duas placas de rede compartilhando a conexão.

ARP

Dentro da rede local, os pacotes são transformados em frames, onde são endereçados ao endereço MAC da placa de rede destino e não ao endereço IP. Acontece que, inicialmente, o sistema não sabe quais são os endereços MAC das placas dos outros micros da rede local, sabe apenas os endereços IP que deve acessar.
O ARP (Address Resolution Protocol) faz compania ao IP e ao ICMP na camada 3 do modelo OSI, oferecendo justamente uma forma simples de descobrir o endereço MAC de um determinado host, a partir do seu endereço IP. A estação manda um pacote de broadcast (chamado "ARP Request"), contendo o endereço IP do host destino e ele responde com seu endereço MAC. Como os pacotes de broadcast são custosos em termos de banda da rede, cada estação mantém um cache com os endereços conhecidos.
Naturalmente, isso é feito de forma transparente. É mais um detalhe técnico com o qual você não precisa se preocupar se quer apenas usar a rede, mas que é interessante estudar quando está interessado em entender seu funcionamento. Você pode verificar o cache de endereços ARP do seu micro (no Linux) usando o comando "arp":
$ arp
Address HWtype HWaddress Flags Mask Iface
192.168.1.254 ether 00:30:CD:03:CD:D2 C eth0
192.168.1.23 ether 00:11:D8:56:62:76 C eth0
 
192.168.1.56 ether 00:11:D8:57:45:C3 C eth0
Existe também o "RARP" (reverse ARP), que tem a função oposta: contatar um host da rede quando o endereço MAC é conhecido, mas o endereço IP não. Embora menos usado, o RARP também é importante, pois ele é usado quando uma estação precisa obter sua configuração de rede via DHCP.
Ao receber o pacote de broadcast enviado pela estação, o servidor DHCP sabe apenas o endereço MAC da estação e não seu endereço IP (que afinal ainda não foi definido). Ele é capaz de responder à solicitação graças ao RARP. Sem ele, não teríamos DHCP.
Muitas distribuições Linux incluem o "arping", um pequeno utilitário que utiliza o ARP ao invés do ping para descobrir se outras máquinas da rede local estão online. A vantagem é que mesmo máquinas protegidas por firewall, ou configuradas para não responder pings respondem a pacotes ARP, fazendo com que ele seja mais uma ferramenta interessante na hora de diagnosticar problemas na rede.
Nas distribuições derivadas do Debian, você pode instalá-lo via apt-get (apt-get install arping). Para usar, basta informar o endereço IP ou endereço MAC da máquina alvo, como em:
$ arping 192.168.1.110
ARPING 192.168.1.110
60 bytes from 00:11:d8:21:52:76 (192.168.1.110): index=0 time=112.057 usec
60 bytes from 00:11:d8:21:52:76 (192.168.1.110): index=1 time=101.089 usec
60 bytes from 00:11:d8:21:52:76 (192.168.1.110): index=2 time=99.897 usec
Uma observação importante é que o ARP é usado apenas dentro da rede local, o único local onde são usados endereços MAC. Quando o pacote passa pelo gateway e é encaminhado para a Internet, os campos com os endereços MAC são removidos, o que faz com que o arping e outros utilitários baseados em pacotes ARP deixem de funcionar.
Se você tiver a curiosidade de disparar o arping contra um host da Internet, vai perceber que, embora o comando seja executado sem erros, ele fica parado indefinidamente aguardando por uma resposta que nunca vem:
$ arping google.com
ARPING 64.233.167.99
(espera infinita...)
Isso acontece pois o pacote de broadcast enviado pelo arping não é encaminhado pelo gateway da rede, ele só seria respondido se, por acaso, existisse um micro dentro da rede local utilizando o endereço "64.233.167.99". Mesmo que o pacote fosse incorretamente encaminhado para a Internet, ele não iria muito longe, pois seria descartado no primeiro roteador por onde passasse.
Uma curiosidade sobre os endereços MAC é que eles podem ser usados para descobrir o fabricante da placa de rede. Para isso, acesse o http://standards.ieee.org/regauth/oui/ e faça uma busca pelos 6 primeiros dígitos do endereço MAC. Ele retornará os dados da empresa responsável pela faixa, como em:
00-15-00 (hex) Intel Corporate
001500 (base 16) Intel Corporate
Lot 8, Jalan Hi-Tech 2/3
Kulim Hi-Tech Park
Kulim Kedah 09000
MALAYSIA
O endereço MAC é composto por duas informações. Os 6 primeiros dígitos são um código atribuído à empresa pelo IEEE e usado em todas as suas placas, enquanto os outros 6 dígitos são um código sequencial, usado para identificar cada placa. Como cada fabricante pode usar apenas seus próprios códigos ao produzir as placas, a busca permite descobrir com uma boa dose de certeza quem é o fabricante real.
Ao fazer a busca pelo código da placa de rede onboard de uma placa mãe, ou de um notebook, você quase sempre descobre o fabricante. Por exemplo, o código da Asus é o "00:15:F2", enquanto o código da Compal (que é a real fabricante de um grande número de notebooks revendidos por outros integradores) é o "00:16:D4".


ICMP

Além do TCP e do UDP, temos o ICMP (Internet Control Message Protocol), um protocolo de controle, que opera no nível 3 do modelo OSI (junto com o protocolo IP). Ao contrário do TCP e do UDP, o ICMP não é usado para a transmissão de dados, mas nem por isso deixa de desempenhar diversas funções importantes. A mais trivial delas é oping, que usamos para verificar se uma determinada máquina está online, como em:
$ ping -c 3 guiadohardware.net
PING guiadohardware.net (64.246.6.25) 56(84) bytes of data.
64 bytes from gdhs.guiadohardware.net (64.246.6.25): icmp_seq=1 ttl=53 time=8.72 ms
64 bytes from gdhs.guiadohardware.net (64.246.6.25): icmp_seq=2 ttl=53 time=8.62 ms
64 bytes from gdhs.guiadohardware.net (64.246.6.25): icmp_seq=3 ttl=53 time=8.37 ms
--- guiadohardware.net ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 8.373/8.576/8.728/0.183 ms
O "-c" indica o número de repetições, neste caso 3. Sem ele, o ping fica enviando pacotes indefinidamente (no Linux), até que você aborte o programa pressionando Ctrl+C. Assim como outros comandos básicos, o ping também está disponível no Windows, através do prompt do MS-DOS.
Normalmente, os pings para qualquer servidor na Internet (com exceção dos servidores do seu provedor de acesso, ou outros servidores muito próximos), voltam com pelo menos 100 milessegundos de atraso. Quanto mais distante geograficamente estiver o servidor, ou quanto mais saturado estiverem os roteadores e links até ele, maior será o tempo de resposta. Um ping muito alto faz com que o carregamento de páginas seja mais demorado (pois o ping determina o tempo necessário para cada requisição do navegador chegar até o servidor) e atrapalha principalmente quem joga online, ou usa programas de administração remota, como o SSH.
No meu caso, consegui pings de apenas 8 ms até o servidor do Guia do Hardware, pois "trapaceei", acessando via SSH um outro servidor ligado ao mesmo backbone que ele e rodando o ping a partir dele :).
A resposta a pings pode ser desativada na configuração do sistema. No Linux, você pode usar o comando abaixo:
# echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
É possível também desativar a resposta a pings na configuração do firewall, de forma que, o fato de um micro da Internet, ou mesmo dentro da sua rede local não responder a pings não significa muita coisa. Se ele responder, significa que está online; se não responder, significa que pode estar online também, porém configurado para não responder aos seus chamados.
Outra função importante do ICMP é o controle do TTL (time to live) de cada pacote TCP ou UDP. Os pacotes tem vida curta e sua única função é carregar os dados até o destino. Eles são transmitidos de um roteador a outro e, uma vez que chegam ao destino, são desmontados e destruídos. Mas, o que acontece em casos onde não existe uma rota possível até o destino, seja porque a máquina está desligada, por erro no endereçamento, ou por um problema em algum dos links?
Existem duas possibilidades. A primeira é um roteador próximo perceber que a máquina está fora do ar e destruir o pacote. Neste caso, ele responde ao emissor com um pacote ICMP "Destination Unreachable", avisando do ocorrido. Caso isso não aconteça, o pacote fica circulando pela rede, passando de um roteador a outro, sem que consiga chegar ao destino final.
O TTL existe para evitar que estes pacotes fiquem em loop eterno, sendo retransmitidos indefinidamente e assim consumindo banda de forma desnecessária. Graças a ele, os pacotes têm "vida útil".
O TTL default varia de acordo com o sistema operacional usado. No Windows XP o default são 128 hops, enquanto nas versões atuais do Linux os pacotes são criados com um TTL de 64 hops. Cada vez que o pacote passa por um roteador, o número é reduzido em um. Se o número chegar a zero, o roteador destrói o pacote e avisa o emissor enviando um pacote ICMP "Time Exceeded".
No Linux, o TTL padrão é configurável através do arquivo "/proc/sys/net/ipv4/ip_default_ttl". Você pode brincar com isso alterando o valor padrão por um número mais baixo, como em:
# echo 8 > /proc/sys/net/ipv4/ip_default_ttl
Com um valor tão baixo, os pacotes gerados pela sua máquina terão vida curta, e não conseguirão atingir hosts muito distantes. Você vai continuar conseguindo acessar a página do seu provedor, por exemplo, mas não conseguirá acessar servidores geograficamente distantes. Para retornar o valor padrão, use o comando:
# echo 64 > /proc/sys/net/ipv4/ip_default_ttl
Os pacotes ICMP "Time Exceeded" são usados pelo comando "traceroute" (no Linux) para criar um mapa do caminho percorrido pelos pacotes até chegarem a um determinado endereço. Ele começa enviando um pacote com um TTL de apenas 1 hop, o que faz com que ele seja descartado logo pelo primeiro roteador. Ao receber a mensagem de erro, o traceroute envia um segundo pacote, desta vez com TTL de 2 hops, que é descartado no roteador seguinte. Ele continua, enviando vários pacotes, aumentando o TTL em 1 hop a cada tentativa. Isso permite mapear cada roteador por onde o pacote passa até chegar ao destino, como em:
$ traceroute gdhn.com.br
1 10.62.0.1 (10.62.0.1) 7.812 ms 6.262 ms 9.966 ms 
2 poaguswh01.poa.virtua.com.br (200.213.50.90) 9.738 ms 8.206 ms 7.761 ms
 
3 poagu-ebt-01.poa.virtua.com.br (200.213.50.31) 7.893 ms 7.318 ms 8.033 ms
 
4 embratel-F3-7-gacc07.rjo.embratel.net.br (200.248.95.253) 8.590 ms 8.315 ms 7.960 ms
 
5 embratel-G2-3-gacc01.pae.embratel.net.br (200.248.175.1) 7.788 ms 8.602 ms 7.934 ms
 
6 ebt-G1-0-dist04.pae.embratel.net.br (200.230.221.8) 31.656 ms 31.444 ms 31.783 ms
 
7 ebt-P12-2-core01.spo.embratel.net.br (200.244.40.162) 32.034 ms 30.805 ms 32.053 ms
 
8 ebt-P6-0-intl03.spo.embratel.net.br (200.230.0.13) 32.061 ms 32.436 ms 34.022 ms
 
9 ebt-SO-2-0-1-intl02.mia6.embratel.net.br (200.230.3.10) 298.051 ms 151.195 ms 306.732 ms 10 peer-SO-2-1-0-intl02.mia6.embratel.net.br (200.167.0.22) 269.818 ms peer-SO-1-1-0-intl02.mia6.embratel.net.br (200.167.0.18) 144.997 ms *
 
11 0.so-1-0-0.XL1.MIA4.ALTER.NET (152.63.7.190) 240.564 ms 147.723 ms 150.322 ms
 
12 0.so-1-3-0.XL1.ATL5.ALTER.NET (152.63.86.190) 438.603 ms 162.790 ms 172.188 ms
 
13 POS6-0.BR2.ATL5.ALTER.NET (152.63.82.197) 164.539 ms 337.959 ms 162.612 ms
 
14 204.255.168.106 (204.255.168.106)  337.589 ms 337.358 ms 164.038 ms
 
15 dcr2-so-2-0-0.dallas.savvis.net (204.70.192.70) 212.376 ms 366.212 ms 211.948 ms
 
16 dcr1-so-6-0-0.dallas.savvis.net (204.70.192.49) 396.090 ms bhr2-pos-4-0.fortworthda1.savvis.net (208.172.131.86) 189.068 ms dcr1-so-6-0-0.dallas.savvis.net (204.70.192.49)  186.161 ms
 
17 216.39.64.26 (216.39.64.26) 185.749 ms 191.218 ms bhr1-pos-12-0.fortworthda1.savvis.net (208.172.131.82) 361.970 ms
 
18 216.39.81.34 (216.39.81.34) 186.453 ms 216.39.64.3 (216.39.64.3) 245.389 ms 216.39.81.34 (216.39.81.34) 184.444 ms
 
19 216.39.81.34 (216.39.81.34) 182.473 ms *  182.424 ms
 
20 * gdhn.com.br (72.232.35.167)  185.689 ms *
Nesse exemplo, o pacote começa passando pelos links da Net (Virtua), passa em seguida por vários roteadores da Embratel, passando por São Paulo e Miami (já nos EUA), para então passar por roteadores da Alter.net e Savvis, até chegar ao destino final.
O Windows inclui o comando "tracert", que atua de forma similar, porém enviando um ping para cada host. O resultado acaba sendo similar, com exceção de casos em que o servidor é configurado para não responder a pings. Existem ainda vários exemplos de programas gráficos, como o Neotrace (para Windows), que você encontra em qualquer site de downloads e o Xtraceroute (para Linux).
Eles exibem as mesmas informações, porém de uma forma bem mais agradável. Este é um exemplo do Neotrace mostrando uma conexão especialmente ruim com um servidor hospedado no exterior, a partir de um link ADSL da Brasil Telecom. Veja que o problema começa em um roteador congestionado, da própria operadora (com tempo de resposta de mais de 1200 ms!) e continua em uma seqüência de links lentos da wcg.net:

Na Internet, os roteadores são espertos o suficiente para conhecerem os roteadores vizinhos e escolherem a melhor rota para cada destino. Sempre que um roteador fica congestionado, os demais passam a evitá-lo, escolhendo rotas alternativas. Essa comunicação é feita através de pacotes ICMP "Redirect", que avisam o emissor que uma rota mais rápida está disponível e os pacotes seguintes devem ser encaminhados através dela.
Naturalmente, este sistema não é infalível. Corrupções nas tabelas de roteamento, bugs nos softwares de controle, panes e defeitos em geral podem comprometer o trabalho dos roteadores, fazendo com que alguns pontos da rede fiquem inacessíveis. Surge então o clássico problema de um determinado endereço ou faixa de endereços ficar inacessível para usuários de um determinado provedor, muito embora continue disponível para o resto da rede.
Em vez de procurar algum amigo no MSN e perguntar "está funcionando daí?", você pode lançar um traceroute a partir de um servidor localizado em outro ponto da rede e assim checar se o endereço realmente está indisponível, ou se o problema é relacionado à sua conexão.
Existem diversos servidores na web que oferecem este serviço como cortesia. Estes "servidores de traceroute" são chamados de "looking glasses" e são bastante numerosos. Alguns exemplos são:
Através deles você pode checar a conectividade do endereço com hosts em diversas partes do mundo e o tempo de resposta para cada um. Você encontra uma lista com vários outros servidores públicos no http://traceroute.org/.
Diagnosticar o problema de conectividade permite indicar o culpado, mas não resolve nosso problema imediato. O que fazer se você precisa acessar o servidor do seu site para fazer uma atualização importante e ele está inacessível a partir da sua conexão atual?
A solução é usar uma terceira máquina, que tenha conectividade com as duas, para intermediar a conexão. Se você administra dois servidores diferentes, por exemplo, poderia usar o segundo servidor para conseguir se conectar ao primeiro. Você poderia também usar a máquina de algum amigo (que acesse através de outra operadora) que confie em você e lhe dê um login de acesso. Você pode então se logar na máquina dele (via SSH, VNC ou outro protocolo de acesso remoto) e fazer o acesso a partir dela.
É possível também usar o SSH para criar um túnel, fazendo com que os pacotes destinados a uma determinada porta do servidor inacessível sejam encaminhados até ele através do segundo servidor. O comando é um pouco complicado, mas é um exercício interessante.
Imagine que quero acessar o servidor "gdhn.com.br", que está inacessível a partir da minha conexão atual, usando o servidor guiadohardware.net como intermediário. Estou logado na minha máquina local como "morimoto", que é o mesmo login que uso no "gdhn.com.br" e uso a conta "gdh" no servidor "guiadohardware.net. Poderia então usar o seguinte comando:
# ssh -f -N -L2222:gdhn.com.br:22 -l gdh guiadohardware.net
Isso criaria um túnel entre a porta 2222 da minha máquina e a porta 22 do servidor gdhn.com.br, com o servidor guiadohardware.net servindo como intermediário. Com o túnel criado, posso acessar o gdhn.com.br via SSH usando a porta 2222 da minha própria máquina, veja só:
# ssh -p 2222 127.0.0.1
Naturalmente, para fazer isso é necessário ter contas de acesso nos dois servidores e fazer com que ambos tenham o servidor SSH instalado, mas é uma dica que pode lhe salvar na hora do aperto.
Concluindo, os pacotes ICMP são usados (durante as transferências de dados) também para regular a velocidade da transmissão, fazendo com que o servidor envie pacotes na maior velocidade possível permitida pelo link, sem entretanto sobrecarregar o link do cliente. Sempre que um dos roteadores pelo caminho, percebe que o link está saturado, envia um pacote ICMP "Source Quench", que faz o servidor reduzir a velocidade da transmissão. Sem isso, os pacotes excedentes seriam descartados, causando um grande desperdício de banda.


Últimas Postagens