Яка різниця між термінами "протокол" та "стандарт"?


13

Я вважаю термін "протокол" заплутаним (з точки зору інформатики, що це є). Якщо протокол - це лише набір правил, чи не було б простіше, якби ми використовували замість нього термін "стандарт" (як, наприклад, "стандарт HTTP")?


8
Що? У мене є нестандартний протокол, який я використовую щодня для спілкування з сервером. Зрозуміло, що слова "протокол" і "стандарт" не мають нічого спільного. Чому ти питаєш? Де ви бачили ці слова в заплутаному контексті? Розкрийте, будь ласка, своє питання, щоб більш повно пояснити, що вас бентежить.
С.Лотт

@ S.Lott, чому ви вважаєте, що ваш протокол нестандартний?
Емануїл Русєв

2
Це нестандартно, тому що я його вигадав. Я знаю, що це не існує в жодному стандарті, тому що він однозначно мій. І це справді погано. І я повинен був використовувати HTTP, який є стандартним протоколом. Ваш коментар не пояснює вашої плутанини. Поясніть, будь ласка, як ви
плутаєте

Усі стандарти хтось винайшов. Визначений набір правил - це стандарт, незалежно від того, скільки людей ним користуються. Я помиляюся?
Емануїл Русєв

1
Можливо, це допомагає мислити протокол як специфічний тип стандарту: стандарт, який описує формат обмінних повідомлень між комп'ютерами.
Kwebble

Відповіді:


19

Не всі протоколи є стандартами (деякі є власником). Не всі стандарти є протоколами (деякі керують іншими рівнями, ніж комунікація).


1
Не може стандарт бути власником?
Емануїл Русєв

7
Майнові стандарти насправді не є стандартами; ніхто більше не може (або не хотів) їх реалізувати, а оригінальний автор може їх змінити за бажанням.
Скотт C Вілсон

3
Патентований стандарт може мати формальний процес пропозиції, схвалення та внесення змін так само, як відкритий. Немає ніяких причин, щоб процес мав бути "оригінальний автор може робити так, як йому заманеться". Насправді, я б сказав, це було б неймовірним винятком із правила. (Я дотримуюсь одного власного стандарту, згідно з яким моя компанія зобов’язана договором змінюватись лише згідно з документально підтвердженими процедурами, що включають повідомлення та внесення інформації від інших постраждалих сторін в компаніях-партнерах. Це насправді стандартне положення щодо політики управління змінами у багатьох великих компаніях.)
Девід Шварц

1
Я не згоден, що це не може бути стандартом, якщо він не відкритий. У перші 6 років використання PDF специфікація була власницькою, але грунтуючись на широкому прийнятті фірмового формату, я думаю, вам доведеться називати це стандартом.
папараццо

Стандарт дефакто дійсно може бути власником і часто є початком більш відкритого стандарту або стандартизації (органом зі стандартів).
Tracker1

9

Протокол не є набором правил. Протокол є річ ці правила описують правила про . Ось чому програми реалізують протокол і відповідають стандарту.

Протоколи схожі на мови. Стандарти - це як словники. Наприклад, за аналогією:

Ця відповідь = Веб-сторінка
Англійська мова = протокол HTTP
Правила англійської мови = стандарт HTTP


Я не розумію. Протокол HTTP може описувати відповідь сервера, який в основному є веб-сторінкою. Чи повинно це означати, що сама веб-сторінка є протоколом?
Емануїл Русєв

1
Стандарт описує протокол. Протокол нічого не описує. Англійська мова не описує моєї відповіді на ваше запитання. Моя відповідь - це не англійська мова.
Девід Шварц

2
@Emanuil, протокол HTTP не описує відповідь веб-сторінки; він описує способи спілкування з веб-сервером (включаючи способи отримання веб-сторінок із зазначеного сервера). Сам протокол не в останню чергу стосується фактичних веб-сторінок, які він переносить; з точки зору протоколу, корисне навантаження - це лише послідовність частин, кожна з яких містить послідовність символів. Ось чому вміст може бути практично будь-яким: зображеннями, XML-документами та ін. І тому HTTP можна використовувати як транспортний механізм для веб-сервісів.
Péter Török

2
@Emanuil, ні. Поміркуйте, що відбувається, коли ви зберігаєте веб-сторінку як локальний файл (ієрархію). Ви все одно можете відкрити його в браузері, і він виглядає точно так само, хоча HTTP вже не задіяний. Розглянемо також, що відбувається, коли ви завантажуєте фільм, PDF-документ тощо з Інтернету: навантаження HTTP-відповіді не має нічого спільного з веб-сторінкою, це лише файл у абсолютно довільному (MPEG3, PDF, ви називаєте його) формат.
Péter Török

2
@Emanuil, HTTP дійсно визначає, як повинен виглядати пакет (повідомлення HTTP), але він також визначає, які різні сторони (сервер, клієнт, проксі) повинні / можуть / не можуть робити з повідомленням: як (не) він може це робити змінювати та / або зберігати, які відповіді надсилати у конкретних ситуаціях тощо тощо
Péter Török

8

Протокол визначає набір правил, якими користуються дві або більше сторін для взаємодії між собою.

Стандарт - це формалізований протокол, прийнятий більшістю сторін, які його реалізують.


Це прямо до речі, спасибі +1 за це
Owais Qureshi

Не всі стандарти є протоколами. Наприклад, ISO 216 визначає, наскільки великі шматки паперу. Це не має нічого спільного з протоколами.
Саймон Б

@SimonB "A4" - 210x297 мм, "A3" - 297x420 тощо. Ці набори правил утворюють протокол, який ви використовуєте для спілкування, коли ходите в магазин і просите когось щось надрукувати. ISO 216 оформляє цей протокол так, як він його вводить у письмовій формі.
Trasplazio Garzuglio

3

Протоколи зв'язку є, за визначенням, набором правил, що регулюють формати та взаємодію між сторонами, що спілкуються. Ці правила можуть бути неявними та неофіційними, як у типових повсякденних соціальних взаємодіях між людьми. Але електроніка та, особливо, цифрові комп’ютери вимагають, щоб речі були більш чіткими та формалізованими для того, щоб відбуватися надійне спілкування.

Standard в цьому контексті є спробою вирішити область потенційного нерозуміння або незгоди. Комунікаційні протоколи - одна з багатьох областей, до яких можуть застосовуватися стандарти. Примітним набором стандартів, які не є протоколами зв'язку, наприклад, є вагу та стандарти вимірювання СІ. Вони надають фіксовану посилання, на яку ви можете порівняти будь-яку задану кількість, щоб виміряти її таким чином, який буде однозначним для всіх, хто має доступ до стандарту або розумного наближення до нього.

Протокол зв'язок Стандарт , отже , є формалізацією правил протоколу зв'язку , таким чином, що ті , з доступом до стандартних банкам ( в ідеалі) однозначно визначити , є чи який - небудь конкретної спробою зв'язку з Complies цих правил. Точно так само, як порівняння певної маси металу з кілограмом стандарту СІ визначає, наскільки близька маса до кілограма, порівняння конкретної реалізації протоколу зі стандартом протоколу визначатиме, чи дійсно він відповідає цьому протоколу згідно стандарту. Коли всі сторони належним чином дотримуються протоколу, як це формалізовано у стандарті, це (знову ж таки, в ідеалі) гарантовано призведе до рівня зв'язку, який протокол був розроблений для розміщення.

Специфікація протоколу зв'язку є засобом , з допомогою яких правила і формати протоколу зв'язку можуть бути описані на формальний рівні, і це часто частина з (дійсно, самої великої частини) із стандартним протоколом зв'язку. Хоча мета стандарту - створити засіб для визначення того, чи щось справді є екземпляром стандартизованої речі, мета специфікації полягає в тому, щоб точно визначити, яка річ є у випадку, коли річ визначається правилами та форматами, як протокол зв'язку є. Однозначне визначення того, що є, може бути використане як для створення нового екземпляра цієї речі, так і для визначення того, чи є існуюча річ екземпляром визначеної речі.

Таким чином, специфікація може бути використана як стандарт, але, будучи стандартом, також несе в собі певну соціальну угоду про те, що є цінність у дотриманні специфікації, достатньо добре для декількох реалізацій, щоб мати певну впевненість у спільній роботі. Сторони, зацікавлені у цій угоді, спільно працюють над тим, щоб сформувати орган зі стандартів , щоб визначити стандарти, щодо яких вони будуть узгоджуватись з метою бажання мати можливість покладатися на відповідність протоколу. Без наявності цієї соціальної угоди та органу зі стандартів, за допомогою якого стандарти виробляються, специфікації протоколу, як правило, не вважаються стандартами, хоча чітко визначені специфікації, безумовно, можуть використовуватись як стандарти.


2

Наскільки я розумію, протокол описує зв'язок між двома пунктами. Одна точка створює деякі дані, які інша точка повинна інтерпретувати. Протокол описує формат даних, стани, запити та відповіді тощо. Наприклад, запит HTTP від ​​клієнта та відповідь від сервера.

Для конкретної проблеми існує газільйон можливих протоколів. З них стандарт обирає один конкретний протокол і робить його таким, що є обов'язковим. Якщо всі кінцеві точки зв'язку діють відповідно до стандарту, вони можуть спілкуватися один з одним і розуміти один одного.

Це може статися офіційно чи неофіційно, тому що всі партнери по спілкуванню просто трапляються використовувати той самий протокол, який потім став стандартним протоколом.


0

Визначення протоколу:

оригінальний чернетка, протокол або запис, з якого готується документ, особливо договір.

Визначення стандарту:

щось, що розглядається органом влади або за загальною згодою як основа порівняння; затверджена модель.

Поверніться до свого питання

Якщо протокол - це лише набір правил, чи не було б простіше, якби ми використовували замість нього термін "стандарт" (як, наприклад, "стандарт HTTP")?

HTTP є і протоколом, і стандартом. Насправді це стандартний протокол.

Цитується з вікі

Розробка стандартів HTTP координувалась Інженерною робочою групою (IETF) та Всесвітньою консорціумом веб-сторінок (W3C), кульмінацією якої стала публікація серії запитів на коментарі (RFC), зокрема RFC 2616 (червень 1999 р.) , що визначає HTTP / 1.1, версію HTTP у загальному користуванні.


Іншими словами, "протокол" - це те, що специфікація формалізується.
Девід Шварц

0

Комп'ютерний протокол - це набір правил, що визначають формат і передачу даних. Термін "протокол" використовується, оскільки він чітко відображає правила поведінки між окремими особами чи націями. Набір формальних правил, поширених у комп'ютерних протоколах, дуже схожий на правила дипломатії (дипломатичний протокол) або етикет (особистий протокол). Стандарт - це щось інше і не багате слово для опису взаємодій, які виражаються в протоколі. Також, як зазначають інші, протокол, можливо, не повинен бути стандартним.

Нарешті, C3PO був протокольним дроїдом. Тому він міг опосередковувати і дроїди Astro Mech, іспарювачі вологи, і Ewoks. Називати його дроїдом Standard не було б настільки сильно зневаженим його функцією.


0

Так, протокол - це сукупність правил.

Це не означає, що будь-який набір правил є протоколом.
Закон - це сукупність правил, які я б не називав протоколом.
HTML - це набір правил для формату, які я б не називав протоколом.

Стандарт - це те, що широко прийнято.
Стандарт не обмежується протоколом або правилами.
16-дюймовий ободок для автомобіля - це те, що я б назвав стандартом.

Протокол зв'язку являє собою набір правил , спеціально для спілкування . Він може бути стандартним або фірмовим. Якщо є орган зі стандартів, то це, безумовно, стандарт.

У вас також є Open. Відкрито публікується і може бути, а може і не бути стандартом. У мене може бути відкритий власний протокол, який означає, що ось він є, і ось я працюю так, щоб його можна було використовувати, але я не пропоную це бути галузевим стандартом.

Він навіть може бути стандартним і фірмовим. У перші дні формат PDF був власницьким, але він все ще був представлений як стандарт.

Підсумовуючи протокол і стандарт, це просто не те саме.


-3

Я думаю, щоб відповісти на це питання, ми можемо включити й інші терміни, щоб зробити поняття більш зрозумілими:

  1. Протокол: набір правил для зв'язку між комп'ютерами (таким чином, ви чуєте протокол зазвичай в області мережі)
  2. Стандарт: Рівень якості; Таким чином, ви можете написати код, який працює, але не є якісним кодом або нестандартним.
  3. Конвенція: Просто така угода, як сказати комусь покласти зображення всередину imgпапки. Не дотримання конвенцій не порушує функціональність, але вважається поганим серед тих, хто погодився на цю конвенцію.
  4. Специфікація: Детальний опис, особливо той, що надає інформацію, необхідну для виготовлення, побудови чи виготовлення чогось.

Хіба протокол не є абстрактним, що правила описують правила? Гра в шахи не те саме, що правила шахів, чи не так? Хіба протоколи не схожі на ігри, ніж на правила?
Девід Шварц

1
"Рівень якості" є занадто вузьким для визначення. Яким є рівень якості ISO 3166-1?
Емануїл Русєв
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.