Czy wszystkie rzeczy połączone z Internetem używają do komunikacji tego samego stosu „Aplikacja - TCP - IP - Sprzęt”?

15

Nie przepadam za internetem, a technologie IoT są dla mnie szczególnie mylące. Czytałem białą księgę Stanforda na temat struktury Internetu. Na schemacie 2 pokazano reprezentację „stosu” oprogramowania, którego komputer (PC) użyłby do stworzenia, przetworzenia i wysłania wiadomości przez Internet na inny komputer.

  • Czy wszystkie rodzaje komputerów - smartfony / telewizory / konsole do gier itp. Używają tego formatu?

  • Czy system operacyjny ma znaczenie?

  • (Pod tym względem) czy jest jakaś różnica między internetem komórkowym a Wi-Fi / Ethernet?

  • Co z urządzeniami jednofunkcyjnymi, które nie wydają się mieć warstwy „aplikacji” - np. Kamera internetowa, przełączniki światła lub termostaty.

BestMillimeter
źródło
Powiązane iot.stackexchange.com/questions/1119
Sean Houlihane
3
O wiele lepiej zadać tylko jedno pytanie na pytanie - jest to jednak dość trudne w przypadku tych bardzo podstawowych pytań. Jeśli masz pytania uzupełniające, spróbuj je sprecyzować.
Sean Houlihane
Wszystkie urządzenia mają warstwę aplikacji. Warstwa aplikacji dla włącznika światła podłączonego do sieci to oprogramowanie, które włącza i wyłącza światło po otrzymaniu polecenia.
user253751
@immibis zabrzmi to okropnie pedantycznie, ale warstwy stosu protokołów nie są właściwościami, które może posiadać urządzenie. W protokole TCP / IP warstwa aplikacji zawiera protokoły komunikacyjne i metody interfejsu stosowane w komunikacji między procesami w sieci komputerowej IP. Urządzenie może obsługiwać system i ten system może wykonywać aplikacje, ale urządzenie nie ma warstwy aplikacji. Sam TCP / IP jest modelem koncepcyjnym.
Julian
@SYS_V Kiedy mówię „urządzenie ma warstwę aplikacji” mam na myśli, że „urządzenie ma jakiś składnik oprogramowania, który implementuje to, co TCP / IP opisuje jako warstwę aplikacji”
253751

Odpowiedzi:

26

Istnieje kilka potencjalnych nieporozumień lub nieporozumień w pytaniu, które zostanie omówione w tym poście.

  • Na schemacie 2 pokazano reprezentację „stosu” oprogramowania , którego komputer (PC) użyłby do stworzenia, przetworzenia i wysłania wiadomości przez Internet na inny komputer

  • Czy wszystkie rodzaje komputerów - smartfony / telewizory / konsole do gier itp. Używają tego formatu?

  • (Pod tym względem) czy jest jakaś różnica między internetem komórkowym a Wi-Fi / Ethernet?

  • Co z urządzeniami jednofunkcyjnymi , które nie wydają się mieć warstwy „aplikacji” - np. Kamera podłączona do Internetu, przełączniki światła lub termostaty.

Obecność tych nieporozumień wymaga włączenia wyjaśnienia następujących kwestii (w celu zapewnienia kontekstu do dalszej dyskusji):

  • Czym jest Internet
  • Czym jest pakiet protokołów TCP / IP
  • Co to jest aplikacja

Następnie pytania zostaną skierowane bezpośrednio.

Zauważ, że biorąc pod uwagę ich wagę i złożoność, cała seria książek została napisana w pakiecie protokołów TCP / IP. Definicje i wyjaśnienia tutaj zostaną zaczerpnięte przede wszystkim z Wikipedii, TCP / IP Illustrated Volume 1 Second edition: The Protocols by Stevens and Fall, a także IBM TCP / IP Tutorial and Technical Overview .

1. Internet

Internet jest technicznie siecią rozległą (WAN) , ale bardziej pomocnym sposobem myślenia o tym jest rodzaj supernetwork (sieć sieci) lub agregat wielu różnych powiązanych ze sobą sieci . Oto zdjęcie ścieżek routingu przez część Internetu:

Wizualizacja ścieżki trasy

  • Internet składa się z wielu połączonych sieci
  • Sieć może składać się z jednego lub więcej systemów ( hosta )
  • Podłączony system zazwyczaj działa na pewnego rodzaju platformie sprzętowej
  • istnieją znaczne różnice w rodzajach systemów podłączonych do sieci i sprzęcie, na którym działają

Zabawną lekturę na temat działania Internetu można znaleźć w artykule Arstechnica Jak działa Internet: Światłowód podwodny, mózg w słoikach i kable koncentryczne .

Jak więc różne systemy działające na różnych platformach sprzętowych podłączone do różnych sieci mogą się ze sobą komunikować? Jak możliwa jest komunikacja między tak ogromnym, heterogenicznym zestawem systemów i sieci? Jak to wszystko może odbywać się jednocześnie?

2. Pakiet protokołu internetowego

Odpowiedzi udziela pakiet protokołów internetowych, inaczej pakiet protokołów TCP / IP. Te pytania zostały rozważone podczas procesu projektowania architektury Internetu (ilustrowany protokół TCP / IP, sekcja 1.1: Zasady architektury):

Przy tworzeniu architektury internetowej kierowano się kilkoma celami. W [C88] Clark przypomina, że ​​głównym celem było „opracowanie skutecznej techniki multipleksowanego wykorzystania istniejących połączonych sieci”. Istotą tego stwierdzenia jest to, że architektura internetowa powinna być w stanie łączyć wiele różnych sieci i że wiele działań powinno być w stanie działać jednocześnie w wynikowej połączonej sieci .

Z pakietu protokołu internetowego (Wikipedia):

Pakiet protokołów internetowych to model koncepcyjny i zestaw protokołów komunikacyjnych używanych w Internecie i podobnych sieciach komputerowych.

Pakiet protokołów internetowych zapewnia kompleksową komunikację danych, określając, w jaki sposób dane powinny być pakowane, adresowane, przesyłane, kierowane i odbierane . Ta funkcja jest podzielona na cztery warstwy abstrakcji, które są używane do sortowania wszystkich powiązanych protokołów zgodnie z zakresem sieci.

Jednym ze sposobów myślenia o pakiecie protokołów TCP / IP jest specyfikacja sposobu, w jaki procesy działające w różnych systemach i różnych sieciach mogą się ze sobą komunikować. Zasadniczo pakiet protokołów TCP / IP zapewnia standard komunikacji między procesami.

Każdy system, który poprawnie implementuje pakiet protokołów TCP / IP, może korzystać z funkcji, które udostępnia, aby umożliwić swoim procesom komunikację przez Internet. W rzeczywistości, aby procesy mogły komunikować się przez Internet z innymi procesami działającymi na zdalnych systemach w innych sieciach, system musi korzystać ze zgodnych ze standardami protokołów pakietu TCP / IP.

Pakiet protokołów TCP / IP

3. Aplikacje

Z oprogramowania aplikacyjnego (Wikipedia):

Aplikacja (w skrócie aplikacja lub aplikacja) to program komputerowy zaprojektowany do wykonywania grupy skoordynowanych funkcji, zadań lub działań z korzyścią dla użytkownika. Przykłady aplikacji obejmują edytor tekstu, arkusz kalkulacyjny, aplikację księgową, przeglądarkę internetową, odtwarzacz multimedialny, lotniczy symulator lotu, grę konsolową lub edytor zdjęć. Oprogramowanie do rzeczowników zbiorowych odnosi się do wszystkich aplikacji łącznie. Kontrastuje to z oprogramowaniem systemowym, które jest związane głównie z uruchamianiem komputera.

Oprogramowanie

Aplikację można traktować jako proces przestrzeni użytkownika działający w systemie. Oprócz wymienionych powyżej przykładów może to obejmować programy, takie jak (w trybie innym niż jądro) wirusy komputerowe, serwery sieciowe, aplikacje do kamer i programy do gromadzenia danych z czujników.

Gdy aplikacja przesyła i odbiera dane przez Internet, musi wykorzystać implementację pakietu protokołów TCP / IP swojego systemu hosta. Z warstwy aplikacji (Wikipedia):

W TCP / IP warstwa aplikacji zawiera protokoły komunikacyjne i metody interfejsu używane w komunikacji między procesami w sieci komputerowej z protokołem internetowym (IP). Warstwa aplikacji standaryzuje tylko komunikację i zależy od bazowych protokołów warstwy transportowej w celu ustanowienia kanałów przesyłania danych między hostami i zarządzania wymianą danych w modelu sieci klient-serwer lub peer-to-peer.

Warstwa aplikacji pakietu protokołów TCP / IP zawiera protokoły takie jak File Transfer Protocol (FTP), Domain Name System (DNS) i prawdopodobnie najbardziej znany, Hypertext Transfer Protocol (HTTP).

Na przykład protokół warstwy aplikacji HTTP HTTP określa sposób przesyłania danych między 2 procesami działającymi w (zwykle) różnych systemach: aplikacji klienckiej, przeglądarce internetowej i aplikacji serwerowej, procesie serwera WWW.

Wyjaśnienie potencjalnych nieporozumień

  1. Na schemacie 2 pokazano reprezentację „stosu” oprogramowania , którego komputer (PC) użyłby do stworzenia, przetworzenia i wysłania wiadomości przez Internet na inny komputer.

Pakiet protokołów TCP / IP nie jest stosem oprogramowania. Z Technopedia :

Stos oprogramowania to grupa programów, które pracują w tandemie, aby osiągnąć wynik lub osiągnąć wspólny cel. Stos oprogramowania odnosi się również do dowolnego zestawu aplikacji, które działają w określonej i określonej kolejności w kierunku wspólnego celu, lub dowolnej grupy narzędzi lub rutynowych aplikacji, które działają jako zestaw. Pliki instalowalne, definicje oprogramowania produktów i łatek mogą być zawarte w stosie oprogramowania. Jednym z popularnych stosów oprogramowania opartego na systemie Linux jest LAMP (Linux, Apache, MYSQL, Perl lub PHP lub Python). WINS (Windows Server, Internet Explorer, .NET, SQL Server) to popularny stos oprogramowania oparty na systemie Windows.

Jest to raczej stos protokołów, zwykle implementowany przez jądro (również z Technopedia ):

Stos protokołów odnosi się do grupy protokołów działających równolegle, które są wykorzystywane do implementacji pakietu protokołów sieciowych.

Protokoły w stosie określają reguły połączeń dla warstwowego modelu sieci, takiego jak modele OSI lub TCP / IP. Aby stać się stosem, protokoły muszą być interoperacyjne, aby mogły łączyć się zarówno pionowo między warstwami sieci, jak i poziomo między punktami końcowymi każdego segmentu transmisji.


  1. Czy wszystkie rodzaje komputerów - smartfony / telewizory / konsole do gier itp. Używają tego formatu ?

Pakiet protokołów TCP / IP jest specyfikacją komunikacji niezależną od sprzętu i systemu operacyjnego, a nie formatem . Jeśli proces działający na jednej platformie sprzętowej musi komunikować się z procesem działającym w systemie zdalnym na innej platformie sprzętowej, a komunikacja odbywa się przez Internet, systemy muszą

  • poprawnie zaimplementuj pakiet protokołów TCP / IP i
  • w celu zapewnienia komunikacji między procesami należy zastosować odpowiednie protokoły w tym pakiecie

  1. (Pod tym względem) czy jest jakaś różnica między internetem komórkowym a Wi-Fi / Ethernet?

Moja interpretacja tego pytania brzmi: „Czy istnieje różnica w sposobie, w jaki urządzenie mobilne łączy się z siecią GSM i w jaki sposób urządzenie mobilne łączy się z siecią WiFi?”

Różnica polega na warstwie interfejsu sieciowego.

To pytanie pokazuje słabe przedstawienie pakietu protokołów TCP / IP na schemacie w artykule, do którego odnośnik zawiera pytanie. Dla porównania, oto schemat:

Gówniany diagram TCP / IP

Najniższa warstwa, zwana „hardware”, powinna być określana jako warstwa łącza , kontroli dostępu do medium (MAC) warstwa lub warstwy sieciowej .

Ze strony IBM „Samouczek TCP / IP i przegląd techniczny” na stronie 34:

Warstwa interfejsu sieciowego, zwana także warstwą łącza lub warstwą danych, jest interfejsem do rzeczywistego sprzętu sieciowego. Ten interfejs może, ale nie musi, zapewniać niezawodne dostarczanie i może być zorientowany na pakiet lub strumień. W rzeczywistości protokół TCP / IP nie określa tutaj żadnego protokołu, ale może korzystać z prawie każdego dostępnego interfejsu sieciowego, co ilustruje elastyczność warstwy IP. Przykładami są IEEE 802.2, X.25 (który sam w sobie jest wiarygodny), ATM, FDDI, a nawet SNA.

Oto poprawne i lepsze przedstawienie (z Przewodnika TCP / IP ):

Zaawansowany schemat stosu TCP / IP

Powodem, dla którego dyskusja na temat warstwy interfejsu sieciowego jest istotna, jest to, że na tej warstwie istnieje różnica w sposobie, w jaki urządzenie komórkowe / mobilne łączy się z siecią GSM w porównaniu z siecią WiFi.

  • podczas łączenia się z siecią GSM protokół warstwy interfejsu sieciowego wykorzystywany do obsługi połączenia między urządzeniem mobilnym a podstawową stacją nadawczo-odbiorczą (BTS) jest zazwyczaj określany przez 3G

  • podczas łączenia się z bezprzewodowym punktem dostępowym WiFi (WAP), używany protokół jest określony przez standard IEEE 802.11 .


  1. Co z urządzeniami jednofunkcyjnymi , które nie wydają się mieć warstwy „aplikacji” - np. Kamera internetowa, przełączniki światła lub termostaty

Jak opisano wcześniej, protokoły w warstwie aplikacji pakietu protokołów TCP / IP zapewniają standard wymiany danych aplikacji między procesami.

Warstwy są koncepcyjne. Nie rezydują w systemie ani na platformie sprzętowej.

Kamery, przełączniki światła i termostaty podłączone do Internetu mogą mieć uruchomione procesy, które komunikują się przez Internet z procesami uruchomionymi w systemach zdalnych (sprawdzanie aktualizacji oprogramowania układowego, wymianę danych z serwerem itp.). Te procesy lub aplikacje będą wykorzystywać implementację pakietu protokołów TCP / IP do realizacji tej komunikacji między procesami.

Pakiet protokołów TCP / IP i systemy wbudowane („IoT”)

Chociaż istnieje wiele różnych aplikacji wykorzystujących różne protokoły warstwy aplikacji działających na tradycyjnych komputerach PC lub serwerach, nie ma aż tak dużej różnicy pod względem sposobu łączenia platform sprzętowych z ich odpowiednimi punktami dostępu (warstwa interfejsu sieciowego / warstwa łącza danych). Jest to realizowane przede wszystkim przewodowo lub bezprzewodowo przez Ethernet.

Sytuacja jest nieco inna, jeśli chodzi o szeroką gamę systemów wbudowanych komunikujących się przez TCP / IP. Oto ilustracja tego (z Postscapes ):

IoT i TCP / IP 1

IoT i TCP / IP 2

Aby uzyskać więcej informacji, zobacz następujące artykuły:

Zrozumienie protokołów za Internetem rzeczy

Standardy i protokoły IoT

Przewodnik po technologiach IoT

juliański
źródło
Na tym poziomie szczegółów moja strona administratora jest smutna, że ​​nie ma słowa o TCP / IP, co oznacza, że ​​TCP w IP, TCP w ogóle nie jest związany z IP, został również zaimplementowany w sieciach IPX (nawet jeśli sigle jest blisko, były to 2 bardzo różne protokoły)
Tensibai
1
@Tensibai Czy protokół TCP w IPX nie byłby w większości taki sam jak SPX (tzn. Niezawodna i oparta na portach wersja transportowa)? - Ale to przypomina mi, że twierdzenie, że dwa hosty, które chcą komunikować się przez Internet (tj. W różnych sieciach), muszą implementować protokół TCP / IP, nie jest do końca prawdziwe: host A w sieci 1 i host B w sieci 3 mogą mówić np. IPX / SPX, nawet jeśli sieć łącząca 2 jest czystym TCP / IP, pod warunkiem, że istnieją bramki tunelowe w sieci 1 i 3 ...
Hagen von Eitzen
2
@hagen nie, SPX był odpowiednikiem TCP, ale absolutnie nie można go połączyć z systemem TCP, dlatego opracowano protokół TCP przez IPX, aby umożliwić końcową komunikację TCP dla systemów w IP i IPX z prostym routerem warstwy 3 pomiędzy . I tak, Internet opiera się głównie na IP, MPLS i protokołach routingu (prawdopodobnie trochę o tym zapominam), TCP nie odtwarza niczego w ogólnym routingu, po prostu krąży nad nim ateotd.
Tensibai
@Tensibai Jeśli popełniłem błąd lub błędy, daj mi znać, a ja dołożę wszelkich starań, aby je naprawić
Julian
@SYS_V tak naprawdę nie jest błędem, niektóre skróty trochę mi przeszkadzają. powiedzmy, że jest to w porządku z punktu widzenia komunikacji TCP :) Wszystkie informacje są niezbędne dla kogoś, kto chce wykopać problem. Czuję, że jesteś trochę niegrzeczny dla OP w swoim pierwszym akapicie, postaram się zaproponować zmianę jutro (z komputera), aby rozwiązać moje obawy :)
Tensibai
12

Czy wszystkie rodzaje komputerów - smartfony / telewizory / konsole do gier itp. Używają tego formatu?

Aby coś wymienić w Internecie, będzie musiał gdzieś przejść przez stos IP.

Czy system operacyjny ma znaczenie?

Protokół IP jest zdefiniowany przez RFC 791 , więc OS / Firmware musi się z nim zgadzać, cokolwiek to jest.

(Pod tym względem) czy jest jakaś różnica między internetem komórkowym a Wi-Fi / Ethernet?

Upraszczając nieco, różnica będzie dotyczyła sygnału radiowego warstwy 1 (fizycznej) w porównaniu z sygnałem elektrycznym na drutach. Więcej szczegółów na stronie Wikipedii w modelu Open Systems Interconnection model (model OSI) .

Wszystkie służą do transponowania warstwy 3 (sieci), w tym przypadku adresu IP, na ich określonych nośnikach.

Co z urządzeniami jednofunkcyjnymi, które nie wydają się mieć warstwy „aplikacji” - np. Kamera podłączona do Internetu, przełączniki światła lub termostaty.

Warstwa aplikacji odnosi się do określonego protokołu komunikacyjnego (HTTP, SSH itp.), Nie musi to być na przykład aplikacja Chrome lub Firefox.
Zwykle protokoły te są implementowane na TCP , niektóre na UDP, gdy nie chcesz blokować oczekiwania na potwierdzenie lub gdy uzyskanie przestarzałego pakietu nie ma sensu (połączenia głosowe, streaming). Istnieją inne protokoły warstwy 4, ale zwykle dla określonych zastosowań, np. Dla ICMP ping. TCP jest protokołem z wyboru, gdy chcesz mieć pewność, że pewne dane dotrą do miejsca docelowego.

W przypadku „urządzenia zdalnego”, takiego jak termostat w twoim przykładzie, może on wykorzystywać już istniejące protokoły, takie jak HTTP, lub użyć zastrzeżonego, aby wysłać swoje dane, które nadal będą w warstwie aplikacji zwykle, ponieważ nie będzie to tylko transport protokół.
Można to zrobić tylko na warstwie 4, ale to wymaga stworzenia nowego protokołu, a narzut zwykle nie jest tego wart i sprawia, że ​​system jest niezgodny z innymi, używanie otwartych standardów jest moim zdaniem lepszym podejściem.

Tensibai
źródło
3
Być może warto wyjaśnić, że TCP-IP jest dość powszechnym „must have” w dowolnym systemie operacyjnym (od mbed / arduino po MC Windows i Linux).
Sean Houlihane
Rzeczywiście, dźwięki tak implikowane dla protokołów wyższego poziomu, że je zapomniałem.
Tensibai,
odpowiedź 1 i odpowiedź 2 to brak odpowiedzi, a odpowiedź 3 została wyjaśniona przy użyciu modelu referencyjnego OSI zamiast pakietu protokołów TCP / IP. Żadna z odpowiedzi w tym poście nie dotyczy błędów koncepcyjnych popełnianych w pytaniu.
Julian
2
@Sys_v Nie miałem ochoty pisać
powieści
5

Chociaż prawdą jest, że każde urządzenie podłączone do Internetu będzie wykorzystywać do komunikacji protokół TCP / IP (lub UDP), to naprawdę jest wyższy poziom w stosie, w którym wszystko staje się interesujące.

Każde nowoczesne urządzenie IoT będzie używać TLS do szyfrowania i uwierzytelniania. Zapobiega to (teoretycznie) komukolwiek innemu obserwowaniu lub zakłócaniu przekazywanych wiadomości. Ważną kwestią dotyczącą stosu TCP / IP jest to, że większość przesyłanych informacji można obserwować w sposób trywialny - co często prowadzi bardzo łatwo do wad bezpieczeństwa.

Urządzenia nie muszą łączyć się z Internetem „u źródła”, więc nie trzeba implementować TCP przez bluetooth (na przykład). Możesz także zobaczyć urządzenia IoT wykorzystujące protokoły telefonów komórkowych (takie jak zwykłe SMS-y lub SMS-y) jako ostatni przeskok. Ostatecznie te protokoły (wybrane w jakiś sposób dla zainstalowanego środowiska) prawdopodobnie zostaną zmostkowane z „Internetem” przez urządzenie koncentrujące.

Sean Houlihane
źródło
Jeśli chodzi o przesłankę drugiego akapitu, obawiam się, że możemy napotkać nawet urządzenia zaprojektowane później niż dziś i wciąż ignorujące krypto
Hagen von Eitzen
1
Nowoczesne znaczenie zaprojektowane z wykorzystaniem dzisiejszych najlepszych praktyk, a nie tylko tego, co jest łatwe.
Sean Houlihane
4

Wszystkie urządzenia, które chcą korzystać z TCP przez IP, wymagają stosu TCP / IP.

Protokół jest znormalizowany, aby urządzenia różnych producentów lub korzystające z różnych systemów operacyjnych mogły się nawzajem rozumieć.

Zauważ, że TCP zapewnia, że ​​pakiety danych dotrą, w przeciwnym razie nadawca zostanie powiadomiony o ich utracie. TCP byłby używany, gdy nie możesz sobie pozwolić na utratę jakichkolwiek danych bez wiedzy o nich (np. Komunikacja z bankiem).

Istnieje również UDP, który wysyła pakiety i „ma nadzieję, że tam dotrą”. Można to wykorzystać na przykład do przesyłania strumieniowego muzyki lub wideo, gdzie utrata kilku klatek nie jest śmiertelna.

Ważną częścią jest normalizacja.

Mawg mówi, że przywróć Monikę
źródło
2

Sam stos jest koncepcją wirtualną. Każda warstwa w stosie modyfikuje końcowe bity, które są wysyłane przez medium fizyczne (fale radiowe lub inne sygnały elektroniczne). Nie ma reguły, która mówi, że każda warstwa w stosie musi być zaprojektowana w pojedynczej dyskretnej jednostce kodu lub sprzętu. Na przykład chipy iEthernet łączą warstwy TCP, IP, MAC i PHY, pozostawiając programistom zadanie implementacji oprogramowania TLS i warstwy aplikacji.

To powiedziawszy, wszystkie bity muszą być zgodne z różnymi zaangażowanymi protokołami iz tego powodu zazwyczaj łatwiej jest zaprojektować każdą warstwę jako oddzielną całość, aby można je było niezależnie przetestować i zweryfikować. Większość urządzeń, w tym smartfony, inteligentne telewizory i konsole do gier, zazwyczaj kupuje układy od stron trzecich, które specjalizują się w niektórych obszarach. Na przykład większość telefonów używa tylko jednego z kilku różnych układów Bluetooth; oznacza to, że producent nie musi martwić się o wymyślenie koła z każdym nowym produktem.

Teoretycznie niektóre małe, wyspecjalizowane urządzenia mogą mieć tylko jeden procesor z wbudowanym SoC (Software on Chip), który obsługuje wszystkie warstwy sieciowe (aplikacje, TLS, TCP, IP, PHY) jako pojedynczą dyskretną jednostkę kodu. Nie mogę teraz znaleźć żadnych konkretnych przykładów, ale nie zdziwiłbym mnie, gdyby niektóre małe urządzenia o niskiej mocy lub dedykowane funkcje łączyły wszystkie warstwy stosu w jedno urządzenie, aby zmniejszyć zużycie energii (przedłużyć żywotność baterii). Większe, bardziej skomplikowane produkty, takie jak telewizory, telefony i systemy gier prawdopodobnie mają co najmniej 3 warstwy (aplikacja, system operacyjny i elementy sprzętowe), podczas gdy toster może mieć tylko 1 lub 2 warstwy.


Uwaga: nie twierdzę, że konkretny toster, który podłączyłem, ma 1 lub 2 warstwy, po prostu logiczne byłoby, gdyby został zaprojektowany w ten sposób, ponieważ jest urządzeniem przeznaczonym do jednego celu.

phyrfox
źródło
Jak Toster mógłby nie mieć wszystkich warstw? Możesz podłączyć do niego kabel sieciowy lub reaguje on na fale WiFi - stąd implementuje warstwę PHY. W może komunikować się z lokalnymi i zdalnymi urządzeniami (takimi jak iPhone) - stąd implementuje warstwę IP. Wymaga bezpiecznej transmisji danych (obrazu) - dlatego lepiej wdrożyć TCP. Jakaś część musi mieć sens w przesyłanych danych, więc na pewno mamy warstwę aplikacji na wierzchu. --- (Cóż, być może nie, jeśli zamiast sieci używają bluetooth ...)
Hagen von Eitzen
@HagenvonEitzen Protokoły dyktują warstwy, które są umieszczone, ale mam na myśli to, że jedna „warstwa” w „stosie” TCP / IP może nie być pojedynczą dyskretną „warstwą” w „stosie oprogramowania / sprzętu”. Podałem przykład chipsetu, który sam realizuje cztery warstwy. Pod względem sprzętu / oprogramowania jest to tylko jedna „warstwa” w „stosie”, która realizuje łączność. Użycie tego układu oraz aplikacji, która implementuje własny protokół TLS, daje w wyniku stos dwuwarstwowy; fizyczne komponenty nie pokrywają się z czterema logicznymi warstwami opisanymi w PO.
phyrfox