Entendendo os protocolos de comunicação da Internet
De um modo geral, um protocolo de comunicação é um sistema de regras que permite que duas ou mais entidades de um sistema de comunicações transmitam informações. A Internet tem um grande conjunto de protocolos para cobrir muitas situações. Ao criar aplicativos baseados na Web e interfaces de programação, os desenvolvedores de software geralmente usam três desses protocolos de comunicação para descrever o estado da rede e as formas como os pacotes de dados são movidos pela rede:
- ICMP, Internet Control Message Protocol, parte do conjunto de protocolo da Internet definida na RFC 792.
- TCP, Transmission Control Protocol
- UDP, User Datagram Protocol
- TCP- UDP-ICMP, todos os protocolos IPv4 listados na IANA
Os protocolos que são usados para uma implementação específica de, digamos, uma chamada API, podem influenciar o comportamento geral de sua rede. Portanto, vale a pena entender as diferenças básicas entre elas. Se você precisar de mais informações, muitos bons artigos estão disponíveis na Internet com descrições detalhadas dos protocolos.
ICMP
ICMP é um protocolo de controle, o que significa que ele é projetado para transportar informações sobre o status da própria rede. Ele é essencialmente um protocolo de relatório de erro e de controle de erro da camada de rede (camada OSI 3) para a rede. Os exemplos mais conhecidos do ICMP na prática são os utilitários ping e traceroute. O utilitário ping usa o ICMP para análise de hosts remotos quanto à responsividade e o
tempo de roundtrip geral das mensagens de análise. O utilitário traceroute usa o ICMP para descobrir e rastrear as rotas de rede que os pacotes ICMP utilizam quando chegam ao seu destino.
O que os desenvolvedores precisam saber é que os pacotes ICMP não têm números de porta TCP ou UDP associados a eles porque os números de porta são uma construção da camada 4 (camada de transporte ).
TCP e UDP
Tanto o Transmission Control Protocol ( TCP ) quanto o User Datagram Protocol ( UDP ) são protocolos de transporte da camada 4 do OSI. Esses protocolos são usados para passar os dados reais. A principal diferença entre TCP e UDP, do ponto de vista de um desenvolvedor, é como eles lidam com a ordem dos pacotes.
O TCP é um protocolo orientado a conexão, ele garante que todos os pacotes enviados cheguem ao destino na ordem correta.
Como alternativa, UDP é um protocolo sem conexão. A comunicação é orientada por datagrama. Portanto, a integridade é garantida somente no datagrama único. Os datagramas atingem um destino e podem chegar fora de ordem ou, possivelmente, eles não chegam de modo algum.
Geralmente o UDP é usado para comunicação em tempo real, em que é preferível uma pequena porcentagem da taxa de perda de pacotes à sobrecarga de uma conexão TCP.
QUALQUER
Agora você pode aplicar qualquer protocolo IPv4 listado na IANA às regras NACL e do Grupo de Segurança. Isso permite que você traga topologias personalizadas e casos de uso de infraestruturas locais, de várias nuvens e clássicas que utilizam protocolos fora de TCP, UDP e ICMP.