A comutação de pacotes é um método de transferência de dados para uma rede na forma de pacotes. Com o objetivo de transferir o arquivo de maneira rápida e eficiente pela rede e minimizar a latência de transmissão, os dados são quebrados em pequenos pedaços de comprimento variável, chamados de Pacote . No destino, todas essas pequenas partes (pacotes) devem ser remontadas, pertencentes ao mesmo arquivo. Um pacote é composto de carga útil e várias informações de controle. Nenhuma pré-configuração ou reserva de recursos é necessária. 

A Comutação de Pacotes usa a técnica Armazenar e Encaminhar enquanto alterna os pacotes; ao encaminhar o pacote, cada salto primeiro armazena esse pacote e depois o encaminha. Essa técnica é muito benéfica porque os pacotes podem ser descartados em qualquer salto devido a algum motivo. Mais de um caminho é possível entre um par de origem e destino. Cada pacote contém endereços de origem e de destino com os quais eles viajam independentemente pela rede. Em outras palavras, os pacotes pertencentes ao mesmo arquivo podem ou não trafegar pelo mesmo caminho. Se houver congestionamento em algum caminho, os pacotes podem escolher diferentes caminhos possíveis na rede existente. 

As redes comutadas por pacotes foram projetadas para superar os pontos fracos das redes comutadas por circuito, uma vez que as redes comutadas por circuito não eram muito eficazes para mensagens pequenas. 

Vantagem da comutação de pacotes sobre a comutação de circuitos: 
 

  • Mais eficiente em termos de largura de banda, já que o conceito de circuito de reserva não existe.
  • Latência de transmissão mínima.
  • Mais confiável, pois o destino pode detectar o pacote ausente.
  • Mais tolerante a falhas porque os pacotes podem seguir caminhos diferentes no caso de algum link estar inativo, ao contrário da comutação de circuitos.
  • Eficaz na redução de custos e comparativamente mais barato para implementar.

Desvantagem da comutação de pacotes sobre a comutação de circuitos: 
 

  • A alternância de pacotes não fornece pacotes em ordem, enquanto a alternância de circuitos fornece a entrega ordenada de pacotes porque todos os pacotes seguem o mesmo caminho.
  • Como os pacotes não são ordenados, precisamos fornecer números de sequência para cada pacote.
  • A complexidade é maior em cada nó devido à facilidade de seguir caminhos múltiplos.
  • O atraso na transmissão é mais devido ao redirecionamento.
  • A comutação de pacotes é benéfica apenas para mensagens pequenas, mas para dados intermitentes (mensagens grandes), a comutação de circuitos é melhor.

Modos de comutação de pacotes: 
 

1. Comutação de pacotes orientada a conexão (Circuito Virtual): 
Antes de iniciar a transmissão, estabelece um caminho lógico ou conexão virtual usando protocolo de sinalização, entre emissor e receptor e todos os pacotes pertencentes a este fluxo seguirão esta rota predefinida. O ID de circuito virtual é fornecido por switches / roteadores para identificar exclusivamente essa conexão virtual. Os dados são divididos em pequenas unidades e todas essas pequenas unidades são anexadas com a ajuda do número de sequência. No geral, três fases ocorrem aqui - fase de configuração, transferência de dados e desmontagem. 
 

Todas as informações de endereço são transferidas apenas durante a fase de configuração. Uma vez que a rota para o destino é descoberta, a entrada é adicionada à tabela de comutação de cada nó intermediário. Durante a transferência de dados, o cabeçalho do pacote (cabeçalho local) pode conter informações como comprimento, registro de data e hora, número de sequência, etc. 
A comutação orientada à conexão é muito útil na WAN comutada. Alguns protocolos populares que usam a abordagem de Switching de Circuito Virtual são X.25, Frame-Relay, ATM e MPLS (Multi-Protocol Label Switching).

2. Comutação de pacotes sem conexão (datagrama):
Ao contrário da comutação de pacotes orientada para conexão, na comutação de pacotes sem conexão cada pacote contém todas as informações de endereçamento necessárias, como endereço de origem, endereço de destino e números de porta, etc. Na comutação de pacotes de datagrama, cada pacote é tratado independentemente. Os pacotes pertencentes a um fluxo podem seguir rotas diferentes porque as decisões de roteamento são feitas dinamicamente, portanto, os pacotes que chegaram ao destino podem estar fora de ordem. Não tem configuração de conexão e fase de desmontagem, como os circuitos virtuais. 
A entrega de pacotes não é garantida na comutação de pacotes sem conexão, portanto, a entrega confiável deve ser fornecida por sistemas finais usando protocolos adicionais. 
 

A---R1---R2---B

A is the sender (start)
R1, R2 are two routers that store and forward data
B is receiver(destination)

Para enviar um pacote de A para B, há atrasos, pois esta é uma rede Store and Forward. 

Atrasos na troca de pacotes:

  1. Atraso de transmissão
  2. Atraso de propagação
  3. Atraso na fila
  4. Atraso de processamento

Aprenda todos os conceitos do GATE CS com aulas gratuitas ao vivo em nosso canal do youtube.