Обсуждение:SLIP

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Опять рыночные нацаналисты под видом технической информации постят в своей рыночной нацанальной Википедии рекламу конкретных продуктов и компаний; и выдают свои тенденциозные и предвзятые мнения как "общеизвестные истины".

В текущей статье SLIP все написано настолько плохо, что статью легче написать заново чем править каждую строчку.

1.
Назначение SLIP это надежная синхронизация между границами IP пакетов (отметка границ IP пакетов) в любом канале передачи данных где нет "боковой полосы" (где нет возможности передавать управляющие символы которые никогда не являются символами данных).

SLIP решает проблему поиска начала и конца каждого IP пакета в линии связи, чтобы продолжать обмен IP пакетами при некоторых сбоях во время передачи данных. Если бы такой проблемы поиска границ IP пакета не было, то протокол SLIP был бы совсем не нужен (например IPv4 пакет можно распознать по кодам 0x45-0x4F в начале пакета).

Аналогичную SLIP задачу решает "заголовок сектора" на жестком диске или "пилот-сигнал" в пакете для сети ethernet.

2.
Перечисленные в статье SLIP такие вещи как:
- скорость линии связи;
- работа с коммутируемыми соединениями (и обмен адресной информацией при соединении);
- стартовые и стоповые биты;
- максимальный размер кадра;
- и т.п.
к SLIP не имеют никакого отношения.

3.
Практически каждая строчка статьи SLIP это просто заведомо неверная информация, перечислим некоторое особо одиозные заявления статьи SLIP:

>используются коммутируемые соединения
SLIP всегда работает поверх канала передачи данных который уже создан

например, для коммутируемых соединений через телефонные линии используется модем и такие протоколы модема как V.90, поверх созданного модемом канала данных уже работает SLIP

на практике SLIP наиболее полезен в статических конфигурациях, т.е. в конфигурациях с выделенными линиями и статическими IP адресами (например, когда у вас два компьютера постоянно соединены отдельным проводом через свои rs232 порты).

в статических конфигурациях SLIP использовать также просто, как задавать статические IP адреса в малых локальных сетях ethernet с постоянным числом компьютеров (например, в сети где менее 10 машин)

чтобы задать статические IP адреса в таких сетях можно использовать простое административное правило:
- администратор сети наклеит сзади на каждый компьютер уникальный номер от 1 до 10;
- этот номер и есть IP адрес компьютера в локальной сети 192.168.1.0/24;
- этот же номер есть IP адрес и для SLIP;

>устаревший сетевой протокол
то что Linux или Windows не поддерживают протокол SLIP и подключают такие статические конфигурации через "PPP с IPv6 и APIPA" еще не делает протокол SLIP "устаревшим".

SLIP не самый эффективный протокол, но он прост в реализации и поэтому может быть быстро и без ошибок реализован в любой системе которая способна использовать IP пакеты (что нельзя сказать про протокол PPP на который у разработчиков может просто не хватить сил, а у аппаратуры может не хватить ресурсов).

SLIP прост и не имеет особых проблем, за все время использования SLIP в мире через него был передан огромный объем данных.

4.
прочие утверждения статьи SLIP:

>отсутствует индикация типа инкапсулируемого протокола
хотя SLIP создавался для IPv4 и для порта rs232, поскольку SLIP работает на P2P участке сети, то два компьютера по взаимной договоренности могут передавать между собой любой нестандартный пакет (не только IPv4 протокол) используя для этого стандартный протокол SLIP.

Если такой взаимной договоренности нет, то ожидается IPv4 протокол. При необходимости IPv4 пакет может использоваться для инкапсуляции иных протоколов.

>рекомендуется использовать протокол TCP
протокол UDP также подходит для SLIP

>максимальный размер кадра ограничен 1006 байтами
SLIP ничего не знает об MTU:
- для IPv4 сети интернет MTU равен 768 байт (640 байт отводится на данные и 128 байт на заголовки);
- для компьютера с "Berkeley UNIX SLIP drivers" MTU равен 1006 байт;
- для IPv4 пакета MTU равен 64Кбайт;
- и т.п.
надо правильно задать MTU используемой сети при конфигурации сетевого интерфейса

>в SLIP не предусмотрена коррекция ошибок
аппаратные линии связи поверх которых работает SLIP:
- или не требуют коррекции (правильный нуль модемный кабель для локальных устройств rs232);
- или имеют свою коррекцию (протокол модема V.90 для удаленных устройств и коммутируемых линий);

если ваш аппаратный канал связи очень плохой и порождает множество ошибок передачи данных поддающихся коррекции, то следует рассмотреть применение ниже SLIP протокола аналогичного протоколу модема V.90, это проблема вашего канала связи а не SLIP

5.
раздел: Структура кадра

>сначала IP-пакет разбивается на байты (октеты)
IP-пакет всегда представим как "октеты", никаких "действий по разбивке" не производится

>флаг END
важно что SLIP_END это именно "символ" (или "управляющий символ" или даже "опкод"), а не что то еще.

символ ESC по умолчанию предполагается в ASCII кодировке и имеет код 27, поэтому лучше обозначать все управляющие символы SLIP как: SLIP_END и SLIP_ESC

>байт-стаффинг
рыночные русские нацаналисты (возрождатели на руси всего "рыночного русского нацанального" поруганного во времена СССР), еще не знают, что в русском языке (в отличие от языка живущих в странах НАТО хозяев рыночных русских нацаналистов) помимо непонятных слов "страна" и "государство", еще и такое простое действие как "стаффинг" обозначается загадочным словом "перекодирование"

"перекодирование" означает что:
- при передаче IP пакета, каждый символ исходного IP-пакета совпадающий с кодом управляющего символа SLIP_END (0xС0) или SLIP_ESC (0xDB), заменяется на последовательность из двух символов {SLIP_ESC, 0xDC} или {SLIP_ESC, 0xDD};
- при приеме SLIP пакета происходит обратная замена таких двухбайтных SLIP последовательностей на исходные символы IP пакета;

Smethod (обс.) 07:47, 30 ноября 2023 (UTC)[ответить]