sexta-feira, 18 de novembro de 2011

O que é um protocolo?


Um protocolo é um método standard que permite a comunicação entre processos (que se executam eventualmente em diferentes máquinas), isto é, um conjunto de regras e procedimentos a respeitar para emitir e receber dados numa rede. Existem vários, de acordo com o que se espera da comunicação. Certos protocolos, por exemplo, serão especializados na troca de ficheiros (o FTP), outros poderão servir para gerir simplesmente o estado da transmissão e os erros (é o caso do protocolo ICMP),…
Na Internet, os protocolos utilizados fazem parte de uma sequência de protocolos, quer dizer, de um conjunto de protocolos. Esta sequência de protocolos chama-se TCP/IP.
Esta contém, designadamente, os seguintes protocolos :
· HTTP, FTP, ARP, ICMP, IP, TCP, UDP, SMTP, Telnet, NNTP
· Protocolos orientados e não orientados para conexão
Classificam-se geralmente os protocolos em duas categorias, de acordo com o nível de controlo dos dados que se deseja:
· Os protocolos orientados para a conexão : Trata-se dos protocolos que operam um controlo de transmissão dos dados durante uma comunicação estabelecida entre duas máquinas. Em tal esquema, a máquina receptora envia avisos de recepção aquando da comunicação, assim a máquina emissora é fiadora da validade dos dados que envia. Os dados são assim enviados sob a forma de fluxo. OTCP é um protocolo orientado para a conexão
· Os protocolos não orientados para a conexão : Trata-se de um modo de comunicação no qual a máquina emissora envia dados sem prevenir a máquina receptora, e a máquina receptora recebe os dados sem avisos de recepção à primeira. Os dados são assim enviados sob a forma de blocos (datagramas). O UDP é um protocolo não orientado para a conexão
· Protocolo e aplicação
Um protocolo define unicamente a maneira pela qual as máquinas devem comunicar, quer dizer, a forma e a sequência dos dados a trocar. Um protocolo não define, em contrapartida, a maneira de programar um software de tal maneira a que seja compatível com o protocolo. Chama-se assim implementação à tradução de um protocolo em linguagem de programação.
As especificações dos protocolos nunca são exaustivas, assim é habitual que as aplicações sejam objecto de uma certa interpretação das especificações, oque conduz às vezes às especificidades de certas aplicações ou, pior ainda, à incompatibilidades ou falhas de segurança!

Nenhum comentário: