Wykres porównania
Podstawa do porównania | Kontrola przepływu | Kontrola błędów |
---|---|---|
Podstawowy | Sterowanie przepływem służy do właściwej transmisji danych od nadawcy do odbiornika. | Kontrola błędów służy do dostarczania bezbłędnych danych do odbiornika. |
Podejście | Sterowanie przepływem oparte na sprzężeniu zwrotnym i sterowanie przepływem oparte na przepływności są podejściami do osiągnięcia właściwej kontroli przepływu. | Kontrola parzystości, cykliczny kod nadmiarowy (CRC) i suma kontrolna to metody wykrywania błędów w danych. Kod Hamminga, kody konwolucji binarnej, kod Reeda-Solomona, kody parzystości niskiej gęstości to metody, które korygują błąd w danych. |
Wpływ | należy unikać przepełnienia bufora odbiorników i zapobiegać utracie danych. | Wykrywa i koryguje błąd występujący w danych. |
Definicja kontroli przepływu
Kontrola przepływu jest kwestią projektową w warstwie łącza danych i w warstwie transportowej. Nadawca wysyła ramki danych szybciej, niż może przyjąć odbiorca. Przyczyną może być to, że nadawca działa na wydajnej maszynie. W takim przypadku nawet dane są odbierane bez żadnego błędu; odbiornik nie może odbierać ramki z tą prędkością i tracić niektóre klatki. Istnieją dwie metody kontroli, które zapobiegają utracie ramek, są to oparte na sprzężeniu zwrotnym sterowanie przepływem i kontrola przepływu oparta na szybkości.
Kontrola oparta na sprzężeniu zwrotnym
W przypadku sterowania opartego na sprzęcie zwrotnym, gdy nadawca wysyła dane do odbiornika, odbiorca wysyła informacje z powrotem do nadawcy i pozwala nadawcy wysłać więcej danych lub poinformować nadawcę o tym, jak działa odbiornik. Protokoły sterowania opartego na sprzężeniu zwrotnym to przesuwany protokół okna, protokół "stop-and-wait".
Kontrola przepływu oparta na szybkości
W sterowaniu przepływem opartym na szybkości, gdy nadawca przesyła dane szybciej do odbiornika i odbiornik nie jest w stanie odebrać danych z tą prędkością, wówczas wbudowany mechanizm w protokole ograniczy szybkość, z jaką dane są przesyłane przez odbiornik. nadawca bez żadnych informacji zwrotnych od odbiorcy.
Definicja kontroli błędów
Kontrola błędów to problem, który występuje również w warstwie łącza danych i na poziomie transportu. Kontrola błędów to mechanizm służący do wykrywania i korygowania błędów występujących w ramkach dostarczanych od nadawcy do odbiorcy. Błąd występujący w ramce może być błędem pojedynczego bitu lub błędem serii. Błąd pojedynczego bitu jest błędem, który występuje tylko w jednostce jednowobitowej jednostki ramki, gdzie 1 jest zmienione na 0 lub 0 zostaje zmieniony na 1. W przypadku błędu seryjnego występuje przypadek, gdy zmieniany jest więcej niż jeden bit w ramce; odnosi się również do błędu poziomu pakietu. W przypadku błędu seryjnego może również wystąpić błąd, taki jak utrata pakietu, powielenie ramki, utrata pakietu potwierdzenia itp. Metody wykrywania błędów w ramce to sprawdzanie parzystości, cykliczny kod nadmiarowy (CRC) i suma kontrolna.
Kontrola parzystości
Podczas sprawdzania parzystości do ramki dodawany jest pojedynczy bit, który wskazuje, czy liczba bitów "1" zawartych w ramce jest parzysta czy nieparzysta. Podczas transmisji, jeśli pojedynczy bit zostanie zmieniony, bit parzystości również otrzymuje zmianę, która odzwierciedla błąd w ramce. Ale metoda sprawdzania parzystości nie jest niezawodna, jak gdyby parzysta liczba bitów została zmieniona, wtedy bit parzystości nie będzie odzwierciedlał żadnego błędu w ramce. Jednak najlepiej jest stosować błąd jednobitowy.
Cykliczny kod nadmiarowy (CRC)
W Cyklicznym kodzie nadmiarowym dane podlegają podziałowi binarnemu, niezależnie od tego, ile reszta zostanie uzyskana, jest dołączana do danych i wysyłana do odbiorcy. Odbiornik dzieli następnie uzyskane dane z tym samym dzielnikiem, z którym nadawca dzieli dane. Jeśli uzyskana pozostałość wynosi zero, dane są akceptowane. W innym przypadku dane są odrzucane, a nadawca musi ponownie przesłać dane.
Suma kontrolna
W metodzie sum kontrolnych dane do wysłania są dzielone na równe fragmenty, każdy fragment zawierający n bitów. Wszystkie fragmenty są dodawane za pomocą dopełnienia 1-tego. Wynik zostaje ponownie uzupełniony, a teraz uzyskana seria bitów nosi nazwę sumy kontrolnej, która jest dołączona do oryginalnych danych, które mają być wysłane i wysłane do odbiorcy. Kiedy odbiorca odbiera dane, dzieli również dane w równym fragmencie, a następnie dodaje cały fragment za pomocą dopełnienia 1; wynik jest ponownie uzupełniany. Jeśli wynik wyniesie zero, to dane zostaną zaakceptowane, jeśli zostanie odrzucony, a nadawca musi ponownie przesłać dane.
Błąd uzyskany w danych można skorygować za pomocą metod, którymi są kod Hamminga, kody konwolucji binarnej, kod Reeda-Solomona, kody kontroli parzystości o niskiej gęstości.
Kluczowe różnice między kontrolą przepływu a kontrolą błędów
- Kontrola przepływu polega na monitorowaniu prawidłowej transmisji danych od nadawcy do odbiorcy. Z drugiej strony, Kontrola błędów monitoruje bezbłędne dostarczanie danych od nadawcy do odbiorcy.
- Kontrolę przepływu można uzyskać za pomocą opartego na sprzężeniu zwrotnym sterowania przepływem i opartego na szybkości sterowania przepływem, podczas gdy w celu wykrycia błędu stosowane podejścia to sprawdzanie parzystości, cykliczny kod nadmiarowy (CRC) i suma kontrolna oraz poprawianie błędu, z którego korzysta się z zastosowanymi metodami Hamminga. kod, kody binarnego konwolucji, kod Reeda-Solomona, kody kontroli parzystości o niskiej gęstości.
- Kontrola przepływu zapobiega buforowaniu odbiorników, a także zapobiega utracie danych. Z drugiej strony Kontrola błędów wykrywa i koryguje błąd występujący w danych.
Wniosek:
Zarówno mechanizm kontroli, tj. Kontrola przepływu i kontrola błędów są nieuniknionym mechanizmem dostarczania kompletnych i wiarygodnych danych.