Toda vez que uma
aplicação estiver rodando em um host e precisar se comunicar com uma aplicação
em um host diferente deve ter como informação o número da porta
com o endereço IP. O sistema operacional gerencia cada porta
das aplicações em um computador. Quando uma aplicação quer se comunicar com
outra ocorre uma solicitação informando o endereço IP destino junto com a porta
da aplicação destino.
Os dois tipos de
serviços de transporte que a internet provê são o orientado à conexão (TCP)
e o não
orientado à conexão (UDP). O primeiro utiliza o protocolo TCP para
a realização do transporte de dados e tem como vantagem o estabelecimento de
conexão antes de qualquer transferência, confirmação de recebimento e
retransmissão em caso de perdas, controle de fluxo, controle de
congestionamento dentre outras características. Este tipo de serviço é utilizado
em jogos interativos, email e transferência de arquivos. O serviço não
orientado à conexão transporta os dados sem qualquer estabelecimento prévio de
conexão, em caso de perda não oferece a retransmissão e a sequencia de dados
transmitidos pode não seguir um processo ordenado. Esse segundo serviço é muito
utilizado na transferência de áudio em que perda de parte dos dados não
acarretará danos significativos no processo de transmissão.
O serviço orientado à
conexão é realizado pelo protocolo TCP. Duas das características oferecidas por
esse protocolo são o controle de fluxo e o controle
de congestionamento. Nesse serviço da internet eles não são os
mesmos. O que acontece no controle de
fluxo é o seguinte: na comunicação entre um host A com um host B pode
acontecer que o segundo tenha uma determinada capacidade de recebimento de
pacotes (aqui entendido como conjunto de dados lógicos agrupados mediante
solicitação prévia) e o primeiro envie esses pacotes numa quantidade que supere
essa capacidade tendo que ocorrer um controle no envio para que o destinatário
não seja sobrecarregado. No controle de
congestionamento não é sobre o host que o controle acontece propriamente
dito e sim sobre a rede. A rede possui determinada capacidade de transmissão.
Para que não fique sobrecarregada e possa atender a demanda dos processos de
comunicação, o controle de congestionamento entra em operação de forma que
alguns hosts não enviem qualquer informação tendo que aguardar a rede a estar
disponível para transmiti-la.