Пакеты представляют собой буферы данных небольшого размера, передаваемые как единое целое по некоторому общему набору каналов. При необходимости, пакеты должны иметь префикс с заголовком, содержащим информацию о доставке.
Вступление
В общем случае, известном как переадресация датаграмм, заголовок содержит адрес назначения. Заголовки в сетях, использующих переадресацию виртуальных цепей, содержат вместо этого идентификатор для соединения.
Почти вся сеть сегодня (и за последние 50 лет) построена на пакетной технологии.
На уровне локальной сети пакеты можно рассматривать как наложение буферной (и адресной) структуры на последовательные линии низкого уровня.
Дополнительные слои накладывают дополнительную структуру. Неформально пакеты часто называют кадрами на уровне локальной сети и сегментами на транспортном уровне.
Размеры пакетов
Максимальный размер пакета, поддерживаемый данной ЛВС (например, Ethernet, Token Ring или ATM), является неотъемлемым атрибутом данной ЛВС. Ethernet поддерживает до 1500 байт данных.
Для сравнения, пакеты TCP/IP первоначально часто содержали только 512 байт данных, в то время как ранние пакеты Token Ring могли содержать до 4 кБ данных.
Хотя есть сторонники очень больших пакетов, даже больших, чем 64 кБ. Протокол ATM использует 48 байт данных на пакет, и есть веские основания полагать, что размер пакета невелик.
Одна из потенциальных проблем заключается в том, как пересылать пакеты из большой сети LAN в (или через) малую сеть LAN.
Как правило, каждый слой добавляет свой собственный заголовок. Заголовки Ethernet обычно составляют 14 байт, IP-заголовки - 20 байт и TCP-заголовки - 20 байт. Если TCP-соединение посылает 512 байт данных на пакет, то заголовки составляют 10% от общего объема, что неразумно.
Для одного общего варианта Voice-over-IP пакеты содержат 160 байт данных и 54 байта заголовков, что составляет около 25% от общего объема.
Однако сжатие 160 байт аудио может привести к уменьшению объема данных до 20 байт, что означает, что заголовки теперь составляют 73% от общего объема.
В сетях экспедирования датаграмм соответствующий заголовок будет содержать адрес назначения и, возможно, другую информацию о доставке.
Внутренние узлы сети, называемые маршрутизаторами или коммутаторами, будут пытаться убедиться, что пакет доставлен в требуемый пункт назначения.
Концепция пакетов
Концепция пакетов и пакетной коммутации была впервые представлена Полом Бараном в 1962 году. Основная проблема Барана заключалась в отказоустойчивости сети в случае отказа узла.
Существующие протоколы с центральным коммутатором были уязвимы к центральному отказу. В 1964 году Дональд Дэвис самостоятельно разработал многие из тех же концепций. Термин "пакет" был введен Дэвисом.
Стоит отметить, что пакеты представляют собой буферы, построенные из 8-битных байт, и все аппаратное обеспечение сегодня согласовано с тем, что такое байт (аппаратное обеспечение согласовывается по соглашению о порядке передачи битов байта). 8-битные байты теперь универсальны, но это не всегда так.
Возможно, последней большой небайтовой аппаратной платформой, которая действительно пересекалась с широко понимаемой эпохой Интернета, был DEC-10, имевший размер слова 36 бит.
Одно слово могло содержать пять 7-битных ASCII символов. Ранние спецификации Интернета ввели термин октет (8-битный байт) и требовали, чтобы пакеты были последовательностями октетов.
Хосты, не ориентированные на октеты, должны были быть в состоянии конвертировать. Таким образом, был предотвращен хаос. Обратите внимание, что все еще существуют проблемы с данными, ориентированными на байты.
Например, двоичные целые числа могут быть представлены в виде последовательности байт либо в большом, либо в малом порядке байт. Отсюда следует, что интернет-протоколы используют порядок байт.