Перейти к содержанию

Передача данных

Информатика IGCSE · Тема 2

Видеоурок по этой теме Открыть страницу видео
10:56

Передача данных

Вы отправляете фото другу на другом конце мира. Оно не передаётся единым куском. Его разрезают на сотни маленьких пакетов, каждый из которых помечен…

Английское озвучивание · Английский + китайские субтитры (встроенные)

2.1

Что такое передача данных?

Передача данных означает перемещение данных из одного места в другое — например, от вашего компьютера на веб-сайт или от телефона к принтеру.

Данные часто передаются по кабелю. Ниже показаны два распространённых типа.

Крупный план сетевого кабеля с прозрачным пластиковым разъёмом и золотыми металлическими контактами
Кабель Ethernet с разъемом RJ45, часто используемый для передачи данных по проводной сети
Кабель, раскрытый для демонстрации тонких стеклянных волокон внутри, рядом линейка для масштаба
Оптоволоконный кабель передает данные в виде световых импульсов по тонким стеклянным волокнам

Перед отправкой данные разбиваются на небольшие равные части, называемые пакетами. Каждый пакет передаётся отдельно, а затем они собираются обратно на другом конце.

Использование пакетов имеет преимущества:

  • если один пакет потерян или повреждён, повторно отправляется только он, а не весь файл;
  • пакеты могут следовать по разным маршрутам, что позволяет избежать загруженных или неисправных путей;
  • множество пользователей могут одновременно использовать одно соединение.
2.1

Структура пакета

Программа
Кандидаты должны уметь: Примечания и рекомендации
1 (a) Понимать, что данные разбиваются на пакеты для передачи
(b) Описать структуру пакета • Пакет данных содержит: – заголовок пакета – полезную нагрузку – хвостовой блок • Заголовок пакета включает: – адрес назначения – номер пакета – адрес отправителя
(c) Описать процесс коммутации пакетов • Данные разбиваются на пакеты • Каждый пакет может следовать по другому маршруту • Маршрутизатор управляет маршрутом, по которому следует пакет • Пакеты могут прибыть в неправильном порядке • После прибытия последнего пакета пакеты упорядочиваются заново
2 (a) Описать, как данные передаются от одного устройства к другому с использованием различных методов передачи данных • Включая: – последовательная – параллельная – симплекс – половинный дуплекс – полный дуплекс
(b) Объяснить применимость каждого метода передачи данных для заданной ситуации • Включая преимущества и недостатки каждого метода
3 Понимать интерфейс универсальной последовательной шины (USB) и объяснить, как он используется для передачи данных • Включая преимущества и недостатки интерфейса

Источник: Программа Cambridge International

Каждый пакет состоит из трёх частей.

Пакет, представленный тремя соединёнными блоками — заголовком, полезной нагрузкой и хвостом — со списком содержимого заголовка под ним
Пакет содержит заголовок, полезную нагрузку (данные) и хвост; заголовок несёт адреса и номер пакета
Часть Что содержит
заголовок пакета управляющая информация (см. ниже)
полезная нагрузка сами передаваемые данные
хвост указывает конец пакета, а также проверку ошибок

Заголовок пакета содержит:

  • IP-адрес отправителя (откуда пришёл пакет),
  • IP-адрес получателя (куда он идёт),
  • номер пакета (чтобы пакеты можно было собрать в правильном порядке).
2.1

Коммутация пакетов

Коммутация пакетов — это способ передачи пакетов через сеть.

Два пакета, движущиеся от отправителя к получателю через сетку маршрутизаторов, каждый следует по маршруту своего цвета
Маршрутизаторы пересылают пакеты, и разные пакеты могут следовать по разным маршрутам к одному получателю
  • Специальные устройства, называемые маршрутизаторами, читают заголовок каждого пакета и выбирают для него лучший маршрут.
  • Каждый пакет может следовать по собственному пути, поэтому пакеты могут двигаться разными способами.
  • Пакеты могут приходить не по порядку.
  • Когда последний пакет прибыл, пакеты сортируются по их номерам.
Исследовать

Как передаются данные пакетами

Процесс пакетной коммутации. Разбиение файла на адресованные пакеты объясняет, почему при потере одного пакета требуется пересылка только его, и почему множество пользователей могут использовать одну линию связи.

English Русский
data transmission/ˈdeɪtə trænˈsmɪʃn/ передача данных
packets/ˈpækɪts/ пакеты
packet header/ˈpækɪt ˈhedə/ заголовок пакета
payload/ˈpeɪləʊd/ полезная нагрузка
trailer/ˈtreɪlə/ конечный блок данных
address/əˈdres/ адрес
packet switching/ˈpækɪt ˈswɪtʃɪŋ/ коммутацию пакетов
routers/ˈruːtəz/ маршрутизаторы
2.1

Методы передачи данных

Последовательная и параллельная

Последовательная Параллельная
Как один бит за раз, по одному проводу несколько бит одновременно, по нескольким проводам
Расстояние хорошо подходит для больших расстояний хорошо подходит только для коротких расстояний
Стоимость дешевле (меньше проводов) дороже (больше проводов)
Ошибки биты остаются в порядке биты могут приходить с небольшим смещением по времени на длинных проводах

Последовательная передача отправляет биты друг за другом по одному проводу. Параллельная передача отправляет несколько бит одновременно по нескольким проводам, поэтому она быстрее на коротких расстояниях.

Последовательная передача в виде битов в ряд на одном проводе и параллельная передача в виде нескольких бит, движущихся вместе по нескольким проводам
Последовательная передача отправляет один бит за раз по одному проводу; параллельная отправляет несколько бит одновременно по нескольким проводам

Простой, полуduplex и полный duplex

Эти термины описывают направление, в котором могут передаваться данные.

Два устройства A и B со стрелками, показывающими простой режим (в одну сторону), полуduplex (в обе стороны по очереди) и полный duplex (в обе стороны одновременно)
Простой режим — только в одну сторону; полуduplex — в обе стороны, но по очереди; полный duplex — в обе стороны одновременно
Метод Направление
простой только в одном направлении (например, компьютер → принтер)
полуduplex в обоих направлениях, но только по очереди (например, рация)
полный duplex в обоих направлениях одновременно (например, телефонный разговор)

Выбор метода

Выбор зависит от расстояния, требуемой скорости, стоимости и необходимости одновременной двусторонней передачи данных.

English Русский
serial/ˈsɪərɪəl/ серийный
parallel/ˈpærəlel/ параллельно
simplex/ˈsɪmpleks/ симплексная
half-duplex/hɑːf ˈdjuːpleks/ полудуплексная
full-duplex/fʊl ˈdjuːpleks/ полнодуплексная
universal serial bus/ˌjuːnɪˈvɜːsl ˈsɪərɪəl bʌs/ универсальная последовательная шина
interface/ˈɪntəfeɪs/ интерфейс
interference/ˌɪntəˈfɪərəns/ вмешательство
2.1

USB

Универсальная последовательная шина (USB) — это распространенный интерфейс (точка подключения) для соединения устройств с компьютером.

Преимущества:

  • один и тот же разъём используется многими устройствами (единый стандарт);
  • устройство определяется автоматически, и загружается правильный драйвер;
  • передается питание, поэтому устройство может заряжаться или работать.
  • разъём подходит только одним способом, поэтому его трудно подключить неправильно.

Недостатки:

  • длина кабеля может быть ограничена (несколько метров);
  • более старые версии USB медленнее новых;
  • скорость передачи может быть ниже, чем у некоторых других типов подключений.
Пять различных форм разъёмов USB рядом — micro, mini, type-B и type-A — с линейкой масштаба 5 см
Несколько форм разъема USB. Все используют единый стандарт USB, поэтому устройства определяются автоматически.
2.2

Почему мы проверяем на ошибки

Программа
Кандидаты должны уметь: Примечания и рекомендации
1 Понимать необходимость проверки ошибок после передачи данных и то, как эти ошибки могут возникнуть • Ошибки могут возникать при передаче данных из-за помех, например: потеря данных, добавление лишних данных и изменение данных
2 Описать процессы, связанные с каждым из следующих методов обнаружения ошибок для выявления ошибок в данных после передачи: проверка четности (нечетная и четная), контрольная сумма и эхо-контроль • Включая проверку четного байта и блока четности
3 Описать, как контрольная цифра используется для обнаружения ошибок при вводе данных, и привести примеры использования контрольной цифры, включая международные стандартные номера книг (ISBN) и штрихкоды
4 Описать, как автоматический запрос повторной передачи (ARQ) может использоваться для подтверждения получения данных без ошибок • Включая использование: – положительных/отрицательных подтверждений – таймаута

Источник: Программа Cambridge International

Пока данные передаются, помехи могут их изменить. Возможны три типа ошибок:

  • потеря данных — некоторые биты не доходят до получателя;
  • появление лишних данных — добавляются лишние биты;
  • изменение данных — некоторые биты инвертируются.

Поэтому приёмник проверяет, правильно ли поступили данные.

2.2

Методы обнаружения ошибок

Проверка чётности

Проверка чётности добавляет один дополнительный бит, бит чётности, к каждому байту. Существует два типа:

Данные с четырьмя нулями 1 (четное количество); контрольный бит равен 0 для сохранения четности
Бит четности добавляется для обеспечения четного (или нечетного) количества 1
  • четная проверка — общее количество нулей 1 в байте (включая контрольный бит) должно быть четным;
  • нечётная чётность — общее количество 1 должно быть нечётным.

Пример (четная проверка): данные 1011001 содержат четыре единицы 1, что уже является четным числом, поэтому контрольный бит равен 0:

parity bit + data
    0        1011001

Для обнаружения ошибки: приемник подсчитывает количество 1. Если было согласовано четное число единиц, но получен байт с нечетным количеством 1, значит, произошла ошибка при передаче.

Проверка чётности не позволяет обнаружить все ошибки. Если инвертируются два бита, подсчёт может по-прежнему выглядеть верным.

Разобранное решение. Один бит чётности показывает что произошла ошибка, но не где. Блок проверки чётности позволяет найти точный ошибочный бит. Несколько байтов отправляются одновременно, каждый со своим битом чётности строки, а внизу находится дополнительный байт чётности, содержащий бит чётности для каждого столбца. Ниже используется чётная чётность, и во время передачи был инвертирован один бит. Найдите его.

          b1 b2 b3 b4 b5 | parity
 byte 1    1  0  1  1  0 |   1
 byte 2    0  1  1  0  1 |   1
 byte 3    1  1  1  1  0 |   1    <- row: odd number of 1s
 byte 4    0  0  1  1  0 |   0
 ------------------------------
 parity    0  0  1  1  1 |   1
                 ^ column b3: odd number of 1s

Строка байт 3 нарушает чётную чётность, а столбец b3 также нарушает чётную чётность. Инвертированный бит находится в месте их пересечения: байт 3, бит b3. Возвращение его из 1 в 0 восстанавливает данные. Один бит чётности лишь сообщает о факте ошибки; блок чётности указывает точное место, поэтому приёмник может даже исправить ошибку.

Сумма контроля

Сумма контроля — это значение, вычисленное на основе всех данных перед отправкой. Приёмчик снова вычисляет сумму контроля по полученным данным. Если эти значения не совпадают, произошла ошибка, и данные отправляются повторно.

Эхо-проверка

При эхо-проверке приёмщик возвращает данные отправителю. Отправитель сравнивает их с оригиналом. Если они различаются, произошла ошибка. (Это требует повторной отправки данных, поэтому метод медленный.)

Автоматический запрос повтора (ARQ)

Автоматический запрос повтора (ARQ) использует сообщения, называемые подтверждениями.

  • Приёмщик отправляет положительное подтверждение, если пакет поступил корректно, или отрицательное подтверждение, если нет.
  • Отправитель запускает таймер таймаута. Если положительное подтверждение не приходит вовремя, отправитель пересылает пакет.

Контрольная цифра

Контрольная цифра — это дополнительная цифра, помещаемая в конец числа, которая вычисляется на основе остальных цифр. Она используется для выявления ошибок при вводе числа.

Когда число вводится, контрольная цифра вычисляется заново и сравнивается. Она позволяет выявить:

  • неправильную цифру, введенную вручную,
  • ошибку транспозиции (две цифры переставлены местами, например, 21 введено как 12),
  • пропущенную цифру или лишнюю цифру,
  • фонетическую ошибку (цифры, звучащие похоже, например, 13 и 30).

Контрольные цифры используются в штрихкодах и ISBN (номеров книг).

Исследовать

Лаборатория вычислительных концепций

Классифицируйте конкретные примеры по вычислительной идее, которую они демонстрируют.

English Русский
parity check/ˈpærɪti tʃek/ проверка четности
parity bit/ˈpærɪti bɪt/ бит четности
parity block/ˈpærɪti blɒk/ блок четности
parity byte/ˈpærɪti baɪt/ байт четности
checksum/ˈtʃeksəm/ контрольная сумма
echo check/ˈekəʊ tʃek/ проверка эха
automatic repeat request/ˌɔːtəˈmætɪk rɪˈpiːt rɪˈkwest/ автоматический запрос повторной передачи
acknowledgements/əkˈnɒlɪdʒmənts/ подтверждение получения
timeout/ˈtaɪmaʊt/ таймаут
check digit/tʃek ˈdɪdʒɪt/ контрольной цифрой
transposition error/trænspəˈzɪʃn ˈerə/ ошибка транспозиции
barcodes/ˈbɑːkəʊdz/ штрихкоды
2.3

Шифрование

Программа
Кандидаты должны уметь: Примечания и рекомендации
1 Понимать необходимость и цель шифрования при передаче данных
2 Понимать, как данные шифруются с использованием симметричного и асимметричного шифрования • Асимметричное шифрование включает использование открытых и закрытых ключей

Источник: Программа Cambridge International

Зачем нужно шифрование

Шифрование маскирует данные так, чтобы их нельзя было понять, если они будут перехвачены (зафиксированы) посторонним лицом. Читаемые данные называются открытым текстом; после шифрования они становятся шифротекстом.

Шифрование не предотвращает перехват данных. Оно лишь мешает их пониманию.

Симметричное шифрование

Симметричное шифрование использует один ключ как для шифрования, так и для расшифровки данных. Отправитель и получатель должны иметь общий секретный ключ. Риск заключается в том, что сам ключ может быть украден во время обмена.

Асимметричное шифрование

Асимметричное шифрование использует два разных ключа:

  • публичный ключ, доступный любому, используемый для шифрования;
  • приватный ключ, который хранится в секрете и используется для расшифровки.

Данные, зашифрованные публичным ключом, можно расшифровать только соответствующим приватным ключом, поэтому ключ никогда не нужно передавать. Это безопаснее, чем обмен одним секретным ключом.

Симметричное шифрование с использованием одного общего ключа для обоих шагов и асимметричное шифрование с использованием публичного ключа для шифрования и приватного для расшифровки *Симметричное использует один общий ключ; асимметричное использует открытый ключ для шифрования и закрытый для расшифровки

Исследовать

Шифр Цезаря

Сдвиньте каждую букву для шифрования сообщения — это самая простая идея шифра и его ключ.

English Русский
encryption/enˈkrɪpʃn/ шифрование
intercepted/ˌɪntəˈseptɪd/ перехваченный
plaintext/ˈpleɪntekst/ открытый текст
ciphertext/ˈsaɪfətekst/ шифротекст
symmetric encryption/sɪˈmetrɪk enˈkrɪpʃn/ симметричное шифрование
key/kiː/ ключ
asymmetric encryption/ˌeɪsɪˈmetrɪk enˈkrɪpʃn/ асимметричное шифрование
public key/ˈpʌblɪk kiː/ открытый ключ
private key/ˈpraɪvət kiː/ приватным ключом
2.3

Советы для экзамена

  • Данные передаются пакетами (заголовок с адресами и номером пакета, полезная нагрузка и хвост). Пакеты могут следовать разными маршрутами и прибывать в неправильном порядке, затем они упорядочиваются по номерам пакетов.
  • Соотнесите типы передачи: последовательная (по одному биту, эффективна на больших расстояниях) против параллельной (несколько битов одновременно, малые расстояния); простой / полудуплексный / полный дуплекс описывают направление.
  • Один бит чётности лишь указывает что произошла ошибка; блок чётности находит точный неверный бит — строку и столбец, которые оба показывают сбой.
  • Выучите методы обнаружения ошибок и назначение каждого: проверка чётности, сумма контроля, эхо-проверка, ARQ и контрольная цифра (для чисел, вводимых вручную).
  • Симметричное шифрование использует один общий ключ; асимметричное использует публичный ключ для шифрования и приватный для расшифровки, поэтому секретный ключ никогда не передаётся.

Интерактивные уроки по этой теме

Пройдите его шаг за шагом с упражнениями мгновенной проверки.

Архив экзаменационных работ

Больше тем в Информатика IGCSE

Войти или создать аккаунт

IGCSE, A-Level & AP