Qual é a diferença entre os termos "protocolo" e "padrão"?

13

Acho o termo "protocolo" confuso (nos termos da ciência da computação). Se o protocolo for apenas um conjunto de regras, não seria mais fácil usar o termo "padrão" (como no "padrão HTTP")?

Emanuil Rusev
fonte
8
O que? Eu tenho um protocolo não padrão que uso diariamente para comunicação com um servidor. Claramente, as palavras "protocolo" e "padrão" não têm nada a ver uma com a outra. Porque perguntas? Onde você viu essas palavras em um contexto confuso? Expanda sua pergunta para explicar mais detalhadamente o que o confunde.
S.Lott
@ S.Lott, por que você acha que seu protocolo não é padrão?
Emanuil Rusev
2
Não é padrão porque eu o inventei. Sei que não existe um padrão existente porque é exclusivamente meu. E é muito ruim. E eu deveria ter usado HTTP, que é um protocolo padrão. Seu comentário não explica sua confusão. Por favor, explique como você está confuso entre Protocolo ("regras") e Padrão ("aprovado por um comitê")
S.Lott 2/11/11
Todos os padrões são inventados por alguém. Um conjunto definido de regras é um padrão, independentemente de quantas pessoas o usem. Estou errado?
Emanuil Rusev
1
Talvez ajude a pensar em um protocolo como um tipo específico de padrão: um padrão que descreve o formato das mensagens trocadas entre computadores.
Kwebble

Respostas:

19

Nem todos os protocolos são padrões (alguns são proprietários). Nem todos os padrões são protocolos (alguns governam outras camadas além da comunicação).

Scott C Wilson
fonte
1
Um padrão não pode ser proprietário?
Emanuil Rusev
7
Padrões proprietários não são realmente padrões; ninguém mais pode (ou iria) implementá-los, e o autor original é livre para alterá-los à vontade.
Scott C Wilson,
3
Um padrão proprietário pode ter um processo formal para sugerir, aprovar e fazer alterações da mesma maneira que uma aberta. Não há razão para o processo ser "o autor original pode fazer o que bem entender". Na verdade, eu diria que seria uma exceção incrível à regra. (Eu mantenho um padrão proprietário que minha empresa está sujeito ao contrato a mudar apenas de acordo com procedimentos documentados que incluem notificação e comentários de outras partes afetadas em empresas parceiras. Esta é, de fato, uma cláusula padrão nas políticas de gerenciamento de mudanças em muitas grandes empresas.)
David Schwartz
1
Não concordo que não possa ser um padrão se não estiver aberto. Nos primeiros 6 anos de PDF, a especificação foi proprietária, mas com base na ampla adoção do formato proprietário, acho que você teria que chamá-lo de padrão.
Paparazzo
Um padrão defacto pode de fato ser proprietário, e geralmente é o início de um padrão ou padronização mais aberto (por um órgão de padrões).
precisa saber é o seguinte
9

Um protocolo não é um conjunto de regras. Um protocolo é a coisa dessas regras descrevem as regras de . É por isso que os programas implementam um protocolo e cumprem um padrão.

Protocolos são como idiomas. Padrões são como dicionários. Por exemplo, por analogia:

Esta resposta = Uma página da web em
inglês = o protocolo HTTP
Regras em inglês = o padrão HTTP

David Schwartz
fonte
Eu não entendo. O protocolo HTTP pode descrever uma resposta de um servidor, que basicamente é uma página da web. Isso significa que a própria página da web é um protocolo?
Emanuil Rusev
1
O padrão descreve o protocolo. O protocolo não descreve nada. O idioma inglês não descreve minha resposta à sua pergunta. Minha resposta não é o idioma inglês.
David Schwartz
2
@ Emanuil, o protocolo HTTP não descreve uma resposta de uma página da web; descreve as maneiras de se comunicar com um servidor web (incluindo as formas de obter páginas da web a partir desse servidor). O protocolo em si não é o menos preocupado com as páginas da Web reais que está transportando; do ponto de vista do protocolo, a carga útil é apenas uma sequência de partes, cada uma contendo uma sequência de caracteres. É por isso que o conteúdo pode ser praticamente qualquer coisa: imagens, documentos XML e outros enfeites. E é por isso que o HTTP pode ser usado como um mecanismo de transporte para serviços da web.
Péter Török
2
@Emanuil, não. Considere o que acontece quando você salva uma página da web como um arquivo local (hierarquia). Você ainda pode abri-lo no navegador e parecer exatamente o mesmo, embora nenhum HTTP esteja mais envolvido. Considere também o que acontece quando você baixa um filme, um documento PDF etc. da Web: a carga da resposta HTTP não tem nada a ver com uma página da Web, é apenas um arquivo em um arquivo totalmente arbitrário (MPEG3, PDF, você escolhe it) formato.
Péter Török
2
@Emanuil, o HTTP realmente define como o pacote (uma mensagem HTTP) deve parecer, mas também define o que diferentes partes (servidor, cliente, proxy) devem / podem / não fazer com a mensagem: como (não) ele pode ser modificados e / ou armazenados, o que respostas para enviar em situações específicas, etc. etc.
Péter Török
8

Um protocolo define um conjunto de regras usadas por duas ou mais partes para interagir entre si.

Um padrão é um protocolo formalizado aceito pela maioria das partes que o implementam.

Trasplazio Garzuglio
fonte
Essa é direto ao ponto, graças +1 para isso
Owais Qureshi
Nem todos os padrões são protocolos. Por exemplo, a ISO 216 define o tamanho de pedaços de papel. Não tem nada a ver com protocolos.
Simon B
@SimonB "A4" é 210x297mm, "A3" é 297x420, etc. Esse conjunto de regras forma um protocolo que é o que você usa para se comunicar quando vai a uma loja e pede que alguém imprima alguma coisa. A ISO 216 formaliza esse protocolo, como foi escrito.
Trasplazio Garzuglio
3

Protocolos de comunicação são, por definição, conjuntos de regras que governam os formatos e interações entre as partes que se comunicam. Essas regras podem ser implícitas e informais, como nas interações sociais cotidianas típicas entre as pessoas. Mas os eletrônicos e os computadores digitais, em especial, exigem que as coisas sejam muito mais explícitas e formalizadas para que ocorra uma comunicação confiável.

Um padrão neste contexto é uma tentativa de resolver uma área de possíveis mal-entendidos ou desacordos. Os protocolos de comunicação são uma das muitas áreas às quais os padrões podem se aplicar. Um conjunto notável de padrões que não são protocolos de comunicação, por exemplo, são os padrões de peso e medição do SI. Eles fornecem uma referência fixa à qual você pode comparar qualquer quantidade determinada para medi-la de uma maneira que seja inequívoca para todos com acesso ao padrão ou uma aproximação razoável dele.

Um padrão de protocolo de comunicação é, portanto, uma formalização das regras de um protocolo de comunicação, de modo que aqueles com acesso ao padrão possam (idealmente) determinar inequivocamente se alguma tentativa específica de comunicação está em conformidade com essas regras. Assim como a comparação de uma massa específica de metal com o quilograma padrão do SI determinará a proximidade da massa com um quilograma, a comparação de uma implementação de protocolo específica com um padrão de protocolo determinará se ele realmente está seguindo esse protocolo de acordo com o padrão. Quando todas as partes estão seguindo adequadamente o protocolo, conforme formalizado no padrão, é garantido (novamente, idealmente) que resulte no nível de comunicação que o protocolo foi projetado para acomodar.

Uma Especificação de Protocolo de Comunicação é um meio pelo qual as regras e formatos de um protocolo de comunicação podem ser descritos em um nível formal e geralmente fazem parte de (de fato, a maior parte de) um padrão de protocolo de comunicação. Enquanto o propósito de um padrão é criar um meio para determinar se algo é verdadeiramente uma instância da coisa padronizada, a propósito de uma especificação é definir exatamente o que a coisa é no caso em que a coisa é definido por regras e formatos, como um protocolo de comunicação é. Uma definição inequívoca do que é algo pode ser usada para criar uma nova instância dessa coisa e para determinar se uma coisa existente é uma instância da coisa que está sendo definida.

Portanto, uma especificação pode ser usada como padrão, mas ser um padrão também carrega o peso de algum acordo social de que há valor em cumprir a especificação suficientemente bem para que várias implementações tenham alguma garantia de trabalharem juntas. As partes interessadas neste contrato trabalham juntas para formar um Órgão de Padrões , a fim de definir os padrões com os quais concordarão com a finalidade de seu desejo de poder confiar na conformidade com um protocolo. Sem a presença desse acordo social e o corpo de padrões pelo qual os padrões são produzidos, as especificações de protocolo geralmente não são consideradas padrões, embora especificações bem definidas tenham definitivamente o potencial de serem usadas como padrões.

Levi Pearson
fonte
2

No meu entendimento, um protocolo descreve a comunicação entre dois pontos. Um ponto cria alguns dados que o outro ponto deve interpretar. Um protocolo descreve o formato dos dados, os estados, solicitações e respostas e assim por diante. Por exemplo, uma solicitação HTTP do cliente e a resposta do servidor.

Para um problema específico, há um gazilhão de protocolos possíveis. Destes, um padrão escolhe um protocolo específico e o torna obrigatório. Se todos os pontos finais da comunicação agirem de acordo com o padrão, eles poderão se comunicar e se entender.

Isso pode acontecer oficialmente ou não oficialmente, porque todos os parceiros de comunicação usam o mesmo protocolo que se tornou o protocolo padrão.

Seguro
fonte
0

Definição de Protocolo:

um rascunho, minuto ou registro original a partir do qual um documento, especialmente um tratado, é preparado.

Definição de padrão:

algo considerado por uma autoridade ou por consentimento geral como base de comparação; um modelo aprovado.

Voltar à sua pergunta

Se o protocolo for apenas um conjunto de regras, não seria mais fácil usar o termo "padrão" (como no "padrão HTTP")?

HTTP é um protocolo e um padrão. É, de fato, um protocolo padrão.

Citado no wiki

O desenvolvimento de padrões do HTTP foi coordenado pela Internet Engineering Task Force (IETF) e pelo World Wide Web Consortium (W3C), culminando na publicação de uma série de solicitações de comentários (RFCs), principalmente a RFC 2616 (junho de 1999). , que define HTTP / 1.1, a versão do HTTP em uso comum.

Jose Faeti
fonte
Em outras palavras, um "protocolo" é a coisa que uma especificação formaliza.
David Schwartz
0

Um protocolo de computador é um conjunto de regras que determinam o formato e a transferência de dados. O termo protocolo é usado porque reflete de perto as regras de comportamento entre indivíduos ou nações. O conjunto de regras formais comuns em protocolos de computador é muito semelhante às regras de diplomacia (protocolo diplomático) ou etiqueta (protocolo pessoal). Um padrão é algo diferente e não é uma palavra rica para descrever as interações que são expressas dentro de um protocolo. Também como observado por outras pessoas, um protocolo pode não precisar ser padrão.

Finalmente, o C3PO era um droid do protocolo. Portanto, ele poderia mediar entre os Droides Astro Mech, os Vaporaters de umidade e os Ewoks. Chamá-lo de dróide padrão não teria descrito tão ricamente sua função.

AlexC
fonte
0

Sim, um protocolo é um conjunto de regras.

Isso não significa que qualquer conjunto de regras seja um protocolo.
Uma lei é um conjunto de regras que eu não chamaria de protocolo.
HTML é um conjunto de regras para o formato que eu não chamaria de protocolo.

Um padrão é algo amplamente adotado.
Um padrão não se limita ao protocolo ou regras.
Um aro de 16 "para carro é algo que eu chamaria de padrão.

Um protocolo de comunicação é um conjunto de regras específicas para comunicação . Pode ser padrão ou proprietário. Se existe um órgão de padrões, é definitivamente um padrão.

Você também tem Open. O Open é publicado e pode ou não ser um padrão. Eu posso ter um protocolo proprietário Open, significando aqui e aqui fora, eu trabalho para que ele possa ser usado, mas não estou propondo que seja um padrão do setor.

Pode até ser um padrão e proprietário. Nos primeiros dias, o formato PDF era proprietário, mas ainda era apresentado como padrão.

Em resumo, protocolo e padrão simplesmente não são a mesma coisa.

paparazzo
fonte
-3

Penso que, para responder a essa pergunta, também podemos incluir outros termos, para tornar os conceitos mais claros:

  1. Protocolo: um conjunto de regras para comunicação entre computadores (assim, você ouve o protocolo geralmente no campo da rede)
  2. Padrão: um nível de qualidade; Assim, você pode escrever código, o que funciona, mas não é um código de qualidade ou não-padrão.
  3. Convenção: apenas um tipo de acordo, como dizer a alguém para colocar as imagens na imgpasta. O não cumprimento das convenções não quebra a funcionalidade, mas é considerado ruim entre as pessoas que concordaram com essa convenção.
  4. Especificação: Uma descrição detalhada, especialmente uma que fornece as informações necessárias para criar, construir ou produzir algo.
Saeed Neamati
fonte
O protocolo não é a coisa abstrata em que as regras descrevem as regras? O jogo de xadrez não é o mesmo que as regras do xadrez, não é? Protocolos não são mais jogos do que regras?
David Schwartz
1
"Um nível de qualidade" é uma definição muito estreita. Como o padrão ISO 3166-1 é um nível de qualidade?
Emanuil Rusev