Jaka jest różnica między terminami „protokół” i „standardowy”?

13

Uważam, że termin „protokół” jest mylący (w kategoriach informatyki). Jeśli protokół jest tylko zbiorem reguł, czy nie byłoby łatwiej, gdybyśmy zamiast tego użyli terminu „standard” (jak w „standardzie HTTP”)?

Emanuil Rusev
źródło
8
Co? Mam niestandardowy protokół, którego używam na co dzień do komunikacji z serwerem. Oczywiście słowa „protokół” i „standard” nie mają ze sobą nic wspólnego. Dlaczego pytasz? Gdzie widziałeś te słowa w mylącym kontekście? Rozwiń swoje pytanie, aby pełniej wyjaśnić, co Cię myli.
S.Lott,
@ S.Lott, Dlaczego uważasz, że Twój protokół jest niestandardowy?
Emanuil Rusev
2
Jest niestandardowy, ponieważ go wymyśliłem. Wiem, że nie ma żadnego istniejącego standardu, ponieważ jest wyjątkowo mój. I to naprawdę źle. I powinienem był użyć HTTP, który jest standardowym protokołem. Twój komentarz nie wyjaśnia zamieszania. Wyjaśnij, w jaki sposób jesteś mylony między Protokołem („regułami”) a Standardem („zatwierdzonym przez komitet”)
S.Lott,
Wszystkie standardy zostały wynalezione przez kogoś. Zdefiniowany zestaw reguł jest standardem, niezależnie od tego, ile osób go używa. Czy się mylę?
Emanuil Rusev
1
Być może pomaga myśleć o protokole jako szczególnym typie standardu: standardzie opisującym format wymienianych wiadomości między komputerami.
Kwebble,

Odpowiedzi:

19

Nie wszystkie protokoły są standardami (niektóre są zastrzeżone). Nie wszystkie standardy są protokołami (niektóre regulują inne warstwy niż komunikacja).

Scott C. Wilson
źródło
1
Czy standard nie może być zastrzeżony?
Emanuil Rusev
7
Własne standardy nie są tak naprawdę standardami; nikt inny nie może (lub nie) wdrożyłby ich, a oryginalny autor może je dowolnie zmieniać.
Scott C Wilson,
3
Zastrzeżony standard może mieć formalny proces sugerowania, zatwierdzania i wprowadzania zmian, tak jak otwarty. Nie ma powodu, dla którego proces musi być „oryginalny autor może zrobić, co chce”. Powiedziałbym, że byłby to niesamowity wyjątek od reguły. (Utrzymuję jeden zastrzeżony standard, że moja firma jest zobowiązana umową do zmiany tylko zgodnie z udokumentowanymi procedurami, które obejmują powiadomienia i uwagi innych zainteresowanych stron w firmach partnerskich. Jest to w rzeczywistości standardowa klauzula w zasadach zarządzania zmianami w wielu dużych firmach).
David Schwartz,
1
Nie zgadzam się, że nie może być standardem, jeśli nie jest otwarty. W pierwszych 6 latach istnienia PDF specyfikacja była zastrzeżona, ale w oparciu o szerokie rozpowszechnienie zastrzeżonego formatu, myślę, że musiałbyś nazwać to standardem.
paparazzo
Standard defacto może rzeczywiście być zastrzeżony i często stanowi początek bardziej otwartego standardu lub normalizacji (przez organ normalizacyjny).
Tracker1,
9

Protokół nie jest zbiorem reguł. Protokół jest rzeczą, zasady te opisują zasady dotyczące . Dlatego programy wdrażają protokół i są zgodne ze standardem.

Protokoły są jak języki. Normy są jak słowniki. Na przykład przez analogię:

Ta odpowiedź = strona internetowa
język angielski = protokół HTTP
Reguły języka angielskiego = standard HTTP

David Schwartz
źródło
Nie rozumiem Protokół HTTP może opisać odpowiedź z serwera, którym w zasadzie jest strona internetowa. Czy to oznacza, że ​​sama strona internetowa jest protokołem?
Emanuil Rusev
1
Standard opisuje protokół. Protokół nic nie opisuje. Język angielski nie opisuje mojej odpowiedzi na twoje pytanie. Moja odpowiedź nie jest w języku angielskim.
David Schwartz,
2
@Emanuil, protokół HTTP nie opisuje odpowiedzi ze strony internetowej; opisuje sposoby komunikacji z serwerem internetowym (w tym sposoby uzyskiwania stron internetowych z tego serwera). Sam protokół nie jest najmniej zainteresowany rzeczywistymi stronami internetowymi, które transportuje; z punktu widzenia protokołu, ładunek jest tylko sekwencją części, z których każda zawiera sekwencję znaków. Dlatego treścią może być praktycznie wszystko: obrazy, dokumenty XML i tak dalej. I dlatego HTTP może być wykorzystywany jako mechanizm transportu usług sieciowych.
Péter Török
2
@Emanuil, no. Zastanów się, co się stanie, gdy zapiszesz stronę internetową jako plik lokalny (hierarchia). Nadal możesz go otworzyć w przeglądarce i wygląda dokładnie tak samo, chociaż nie jest już zaangażowany HTTP. Zastanów się również, co dzieje się, gdy pobierasz film, dokument PDF itp. Z Internetu: ładunek odpowiedzi HTTP nie ma nic wspólnego ze stroną internetową, to tylko plik w całkowicie arbitralny sposób (MPEG3, PDF, ty nazywasz it) format.
Péter Török,
2
@Emanuil, HTTP faktycznie określa, jak powinien wyglądać pakiet (wiadomość HTTP), ale także określa, co różne strony (serwer, klient, serwer proxy) muszą / mogą / nie mogą robić z komunikatem: jak (nie) może to zrobić być modyfikowane i / lub przechowywane, jakie odpowiedzi wysłać w określonych sytuacjach itp. itp.
Péter Török
8

Protokół określa zestaw reguł używanych przez dwie lub więcej stron do interakcji między sobą.

Standard jest sformalizowanym protokołem akceptowanym przez większość stron, które go wdrażają.

Trasplazio Garzuglio
źródło
Od razu do rzeczy, dziękuję +1 za to
Owais Qureshi
Nie wszystkie standardy są protokołami. Na przykład ISO 216 określa, jak duże są kawałki papieru. Nie ma to nic wspólnego z protokołami.
Simon B,
@SimonB „A4” ma wymiary 210 x 297 mm, „A3” to 297 x 420 itd. Ten zestaw reguł tworzy protokół, za pomocą którego komunikujesz się, gdy idziesz do sklepu i poprosisz kogoś o wydrukowanie czegoś. ISO 216 formalizuje ten protokół, ponieważ zapisano go w formie pisemnej.
Trasplazio Garzuglio
3

Protokoły komunikacyjne są z definicji zestawami reguł rządzących formatami i interakcjami między komunikującymi się stronami. Reguły te mogą być dorozumiane i nieformalne, jak w typowych codziennych interakcjach społecznych między ludźmi. Ale elektronika, a zwłaszcza komputery cyfrowe, wymagają, aby rzeczy były o wiele bardziej wyraźne i sformalizowane, aby zapewnić niezawodną komunikację.

Standardowa w tym kontekście jest próbą rozwiązania obszar potencjalnych nieporozumień lub niezgodności. Protokoły komunikacyjne są jednym z wielu obszarów, do których mogą mieć zastosowanie standardy. Godnym uwagi zestawem standardów, które nie są protokołami komunikacyjnymi, są na przykład waga SI i standardy pomiaru. Stanowią one stałe odniesienie, do którego można porównać dowolną ilość, aby zmierzyć ją w sposób, który będzie jednoznaczny dla każdego z dostępem do normy lub rozsądnym przybliżeniem jej.

Protokół komunikacyjny Standardowy jest więc formalizacja zasad protokołu komunikacyjnego tak, że osoby z dostępem do standardowej puszki (najlepiej) jednoznacznie określić, czy konkretnej próbie komunikacji jest zgodna z tymi zasadami. Podobnie jak porównanie konkretnej masy metalu ze standardowym kilogramem SI określi, jak bliska jest masa do kilograma, porównanie konkretnej implementacji protokołu ze standardem protokołu określi, czy rzeczywiście postępuje on zgodnie z tym protokołem zgodnie ze standardem. Kiedy wszystkie strony właściwie postępują zgodnie z protokołem sformalizowanym w standardzie, (znowu idealnie) gwarantuje się poziom komunikacji, który protokół został przystosowany.

Protokół komunikacyjny Specyfikacja jest środkiem, za pomocą którego zasady i formaty protokołu komunikacyjnego mogą być opisane na poziomie formalnym, a często jest to część stanowi (w istocie, największej części) standardowy protokół komunikacyjny. Chociaż celem normy jest stworzenie środka do ustalenia, czy coś jest rzeczywiście instancją znormalizowanej rzeczy, celem specyfikacji jest dokładne zdefiniowanie tego, co jest w przypadku, gdy rzecz jest zdefiniowana przez reguły i formaty, jak protokół komunikacyjny jest. Jednoznaczną definicję tego, czym jest coś, można użyć zarówno do utworzenia nowej instancji tej rzeczy, jak i do ustalenia, czy istniejąca rzecz jest instancją definiowanej rzeczy.

Tak więc specyfikacja może być stosowana jako standard, ale bycie standardem niesie również ciężar pewnej umowy społecznej, że zgodność ze specyfikacją ma wartość wystarczającą dla wielu wdrożeń, aby mieć pewną współpracę. Strony zainteresowane niniejszą umową współpracują w celu utworzenia Organu Normalizacyjnego w celu zdefiniowania norm, które uzgodnią w celu chęci polegania na zgodności z protokołem. Bez obecności tej umowy społecznej i organu normalizacyjnego, w oparciu o który opracowuje się standardy, specyfikacje protokołów nie są ogólnie uważane za normy, chociaż dobrze zdefiniowane specyfikacje zdecydowanie mogą zostać wykorzystane jako normy.

Levi Pearson
źródło
2

W moim rozumieniu protokół opisuje komunikację między dwoma punktami. Jeden punkt tworzy pewne dane, które drugi punkt musi interpretować. Protokół opisuje format danych, stany, żądania i odpowiedzi itd. Np. Żądanie HTTP od klienta i odpowiedź z serwera.

Dla konkretnego problemu istnieją miliardy możliwych protokołów. Spośród nich standard wybiera jeden konkretny protokół i czyni go obowiązkowym. Jeśli wszystkie punkty końcowe komunikacji działają zgodnie ze standardem, mogą się ze sobą komunikować i rozumieć.

Może się to zdarzyć oficjalnie lub nieoficjalnie, ponieważ wszyscy partnerzy komunikacyjni po prostu korzystają z tego samego protokołu, który następnie stał się protokołem standardowym.

Bezpieczne
źródło
0

Definicja protokołu:

oryginalny szkic, protokół lub zapis, z którego sporządzany jest dokument, zwłaszcza traktat.

Definicja normy:

coś rozważanego przez organ lub ogólną zgodę jako podstawa do porównania; zatwierdzony model.

Wróć do twojego pytania

Jeśli protokół jest tylko zbiorem reguł, czy nie byłoby łatwiej, gdybyśmy zamiast tego użyli terminu „standard” (jak w „standardzie HTTP”)?

HTTP jest zarówno protokołem, jak i standardem. W rzeczywistości jest to standardowy protokół.

Cytat z wiki

Opracowywanie standardów HTTP było koordynowane przez Internet Engineering Task Force (IETF) i World Wide Web Consortium (W3C), którego kulminacją była publikacja serii zapytań o komentarze (RFC), w szczególności RFC 2616 (czerwiec 1999) , która definiuje HTTP / 1.1, powszechnie używaną wersję HTTP.

Jose Faeti
źródło
Innymi słowy, „protokół” jest tym, co formalizuje specyfikacja.
David Schwartz,
0

Protokół komputerowy to zestaw reguł określających format i transfer danych. Termin „protokół” jest używany, ponieważ ściśle odzwierciedla zasady zachowania między osobami lub narodami. Zestaw reguł formalnych, które są wspólne w protokołach komputerowych, jest bardzo podobny do zasad dyplomacji (protokół dyplomatyczny) lub etykiety (protokół osobisty). Standard jest czymś innym, a nie bogatym słowem opisującym interakcje wyrażane w ramach protokołu. Również, jak zauważają inni, protokół może nie wymagać standardu.

Wreszcie C3PO był droidem protokołu. Mógł zatem pośredniczyć między droidami mech Astro, Vaporatersami wilgoci i Ewokami. Nazywanie go standardowym droidem nie opisałby tak dobrze jego funkcji.

AlexC
źródło
0

Tak, protokół to zestaw reguł.

To nie znaczy, że jakikolwiek zestaw reguł jest protokołem.
Prawo to zbiór zasad, których nie nazwałbym protokołem.
HTML to zestaw reguł dla formatu, którego nie nazwałbym protokołem.

Standard jest czymś powszechnie przyjętym.
Standard nie ogranicza się do protokołu ani reguł.
16-calowy obręcz do samochodu to coś, co nazwałbym standardem.

Protokół komunikacyjny jest zbiorem reguł specjalnie do komunikacji . Może być standardowy lub zastrzeżony. Jeśli istnieje organ normalizacyjny, jest to zdecydowanie standard.

Masz również Open. Otwarty jest publikowany i może być standardem. Mogę mieć zastrzeżony protokół Open, co oznacza, że ​​jest tutaj, a tutaj jest. Pracuję, aby można go było używać, ale nie proponuję, aby był standardem branżowym.

Może to być nawet standard i własność. Na początku format PDF był zastrzeżony, ale nadal był prezentowany jako standard.

Podsumowując, protokół i standard to po prostu nie to samo.

paparazzo
źródło
-3

Myślę, że aby odpowiedzieć na to pytanie, możemy również dołączyć inne terminy, aby wyjaśnić pojęcia:

  1. Protokół: zestaw reguł komunikacji między komputerami (dlatego słyszysz protokół zwykle w dziedzinie sieci)
  2. Standard: poziom jakości; W ten sposób możesz pisać kod, który działa, ale nie jest kodem jakościowym lub niestandardowym.
  3. Konwencja: rodzaj umowy, na przykład nakazanie komuś umieszczenia obrazów w imgfolderze. Nieprzestrzeganie konwencji nie psuje funkcjonalności, ale jest uważane za złe wśród osób, które zgodziły się na tę konwencję.
  4. Specyfikacja: szczegółowy opis, w szczególności zawierający informacje potrzebne do stworzenia, zbudowania lub wyprodukowania czegoś.
Saeed Neamati
źródło
Czy protokół nie jest abstrakcyjną rzeczą, której reguły opisują? Gra w szachy nie jest taka sama jak reguły szachowe, prawda? Czy protokoły nie są bardziej jak gry niż reguły?
David Schwartz,
1
„Poziom jakości” jest zbyt wąską definicją. W jaki sposób standard ISO 3166-1 jest poziomem jakości?
Emanuil Rusev