TCP vs SCTP
O TCP (Transmission Control Protocol) já existe há algum tempo e nos forneceu o protocolo para mover dados de um ponto para outro em nossas redes de computadores. Apesar de seu sucesso, o TCP também possui muitas limitações. O SCTP (Protocolo de transmissão de controle de fluxo) faz tudo o que o TCP faz ao adicionar novos recursos que o TCP não possui.
O primeiro recurso que o SCTP adiciona ao mix é a hospedagem múltipla. A hospedagem múltipla permite que os dois pontos finais de uma conexão declarem várias interfaces (endereços IP). Fornecer uma rota alternativa para os dados, caso a interface atual em uso falhe por algum motivo. A transferência de uma interface para outra é perfeita; portanto, a conexão não é interrompida.
O segundo recurso é multi-streaming. Em vez de usar um único fluxo de dados, o SCTP pode criar vários fluxos que podem ser usados independentemente. Isso realmente não melhora a velocidade da mídia, mas permite que os dados cheguem simultaneamente; minimizando o tempo de espera para o carregamento completo das páginas. Esse recurso também impede que os pacotes de controle sejam bloqueados pelos pacotes de dados, como o que geralmente acontece no TCP; melhorando assim o controle de dados.
O TCP é muito vulnerável a ataques de negação de serviço, que bloqueiam os recursos do servidor e impedem que outros o usem. Em vez da iniciação de handshake de três vias do TCP, o SCTP usa um handshake de quatro direções que aloca recursos perto do final de todo o handshake. Por esse motivo, o SCTP não é vulnerável a ataques DoS.
Os dados no TCP vêm em pacotes. Os pacotes têm um tamanho específico e um fluxo longo seria dividido para caber enquanto os curtos são unidos. Isso significa que o enquadramento da mensagem deve ser fornecido na camada do aplicativo para identificar completamente as mensagens separadas. O SCTP implementa o enquadramento de mensagens e cada mensagem sempre terá o mesmo tamanho quando for lançada..
Por fim, o SCTP tornou opcional o pedido de entrega. A ordem de entrega é necessária em muitos casos. É por isso que é obrigatório no TCP. Porém, em certos casos em que a solicitação não é necessária, os recursos podem ser liberados desativando esse recurso. O SCTP fornece flexibilidade para atender a cada situação com entrega solicitada opcional.
O SCTP é, em muitos aspectos, superior ao TCP. Porém, devido ao uso prolongado do TCP, é bastante difícil fazer a transição para o superior. No entanto, as vantagens do SCTP chamariam gradualmente a atenção e os usuários.
Resumo:
1. O SCTP é melhor em hospedagem múltipla que o TCP
2. O SCTP possui multi-streaming enquanto o TCP não
3. O SCTP possui proteção de iniciação, enquanto o TCP não
4. O SCTP possui um enquadramento de mensagens, enquanto o TCP não
5. A entrega solicitada é opcional no SCTP, mas não no TCP