Страница 48 |
Вычислительные комплексы и сети. Лекции |
|
Главная Страница 1 Страница 2 Страница 3 Страница 4 Страница 5 Страница 6 Страница 7 Страница 8 Страница 9 Страница 10 Страница 11 Страница 12 Страница 13 Страница 14 Страница 15 Страница 16 Страница 17 Страница 18 Страница 19 Страница 20 Страница 21 Страница 22 Страница 23 Страница 24 Страница 25 Страница 26 Страница 27 Страница 28 Страница 29 Страница 30 Страница 31 Страница 32 Страница 33 Страница 34 Страница 35 Страница 36 Страница 37 Страница 38 Страница 39 Страница 40 Страница 41 Страница 42 Страница 43 Страница 44 Страница 45 Страница 46 Страница 47 Страница 48 Страница 49 Страница 50 Страница 51 Страница 52 Страница 53 Страница 54 Страница 55 Страница 56 Страница 57 Страница 58 Страница 59 Страница 60 Страница 61 Страница 62 Страница 63 Страница 64 Страница 65 Страница 66 Страница 67 Страница 68 Страница 69 Страница 70 Страница 71 Страница 72 Страница 73 Страница 74 Страница 75 Страница 76 Страница 77 Страница 78 Страница 79 Страница 80 Страница 81 Страница 82 Страница 83 Страница 84 Скачать учебник |
||
---|---|---|
К этому классу относится полиномиальный код CRC (Cyclic Redun… Check). В основе этого кода лежит идея представления битовых информационных строк в виде многочленов с коэффициентом 0 или 1, кадр из k битов рассматривается как список коэффициентов многочлена степени k-1. Старший бит кадра соответствует коэффициенту при xk-1 и так далее. Пример: 110001 -> x5 + x4 + x0. При использовании этого кода отправитель и получатель договариваются об образующем многочлене G(x). Идея – добавление контрольной суммы в конец кадра таким образом, чтобы получившийся при приеме многочлен делился на образующий G(x) без остатка. Получатель, приняв кадр, содержащий контрольную сумму, пытается разделить его на G(x), ненулевой остаток от деления сигнализирует об ошибке. Последовательность действий: пусть r – степень G(x). r нулевых битов добавляются в конец кадра, таким образом кадр содержит k + r битов. Новая битовая строка делится на битовую строку, соответствующую образующему многочлену G(x), остаток от деления вычитается из новой строки – результат – передаваемый кадр. Пример: Кадр 1101011011. G(x) – 10011.
На приеме: 11010110111110 / 10011 = 110000101 (в остатке 0) – ошибки нет. Если произошла ошибка: (T(x) + E(x)) / G(x) = T(x)/G(x) + E(x)/G(x) = 0 + остаток – получили индикацию ошибки. Если остаток = 0, то либо ошибок нет, либо они кратные G(x). Полином, используемый в стандарте IEEE802 (Ethernet), равен: x32 + x26 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1 Протоколы передачи данныхКогда приемник получает кадр, вычисляется его контрольная сумма по тому или иному методу кодирования, если ошибок нет, кард поступает на обработку уровня. Уровень проверяет управляющую информацию в заголовке кадра. Как правило, заголовок кадра содержит следующую информацию: наличие данных в кадре (некоторые кадры содержат только управляющую информацию), поле последовательного номера кадра, поле подтверждения. Если кадр имеет данные – то он передается на сетевой уровень, заголовок кадра сетевому уровню не передается. Как правило, протоколы состоят из 2 основных процедур: Send, Receive. Send – бесконечный цикл, в котором данные посылаются на линию, при этом тело цикла состоит из: получения пакета сетевого уровня, формирование исходящего кадра, отсылка кадра. Receive |
||