ІНТЕЛЕКТУАЛЬНІ МОЖЛИВОСТІ МОДЕМІВ

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

ІНТЕЛЕКТУАЛЬНІ МОЖЛИВОСТІ МОДЕМІВ

В даний час модеми є інтелектуальними пристроями, що дозволяють крім свого головного завдання, — перетворення передаваних сигналів, реалізувати безліч інших функцій, надаючи додаткові зручності користувачам. Такі модеми називають інтелектуальними або Smart-модемами.
Інтелектуальні можливості модемів реалізуються завдяки наявності схеми управління, виконаної на основі того або іншого мікропроцесора. У схемах управління модемом часто застосовуються мікропроцесори загального призначення, такі як Z80, Intel 8086, 80186, 80286, 80386, Motorola 68020, 68030 та інші. Можливе застосування і спеціалізованих контроллерів, об'єднуючих в собі як сигнальний процесор, так і процесор, що реалізовує додаткові сервісні функції. До таких контроллерів відносяться, наприклад, Intel 89024, 89027, 89С024, 89С124.
Для програмного управління режимами роботи модему (його схеми управління) з боку комп'ютера використовується набір спеціальних команд. Команди управління сприймаються модемом тільки у випадку, якщо він знаходиться в командному режимі.
Кожен конкретний модем може сприймати певну безліч команд, в загальному випадку не співпадаюче командами, підтримуваними іншими модемами. Проте для зручності застосування модемів і сумісності комунікаційних програм необхідно мати стандартний набір таких команд.
Першість в створенні інтелектуального модему не належить фірмі Haves. Перш ніж ця корпорація випустила свій перший інтелектуальний Smartmodem 300, інші виготівники вже ввели інтелектуальні можливості в свої модеми. Заслуга корпорації Hayes полягає не стільки в створенні ще одного власного набору команд, стільки в затвердженні цього набору команд як промисловий стандарт.
Набір команд, під управлінням яких працював Smartmodem 300, був дуже малий. Коли модеми стали досконалішими, фірма Hayes розширила цей набір шляхом введення додаткових функцій управління. Для того, щоб зробити свої модеми Hayes-сумісними, інші виробники скопіювали базовий набір команд, а потім розробили власні додаткові команди для підтримки специфічних характеристик своїх модемів. В результаті склалася ситуація, коли не дивлячись на те, що майже всі модеми виконують базові команди, практично неможливо зустріти два модеми, що використовують однакові команди і їх синтаксис для реалізації складніших функцій.
В ролі стандартів для інтелектуальних модемів в даний час виступає набір команд модемів Hayes, званий також АТ-командами, і команди, визначувані рекомендацією V.25bis.
Інтелектуальні можливості модемів, що розглядаються в даному розділі, відносяться, в першу чергу, до найбільш поширених абонентських модемів для комутованої телефонної мережі загального користування.
.
Режими роботи модему

Інтелектуальні модеми працюють в одному з двох режимів. У командному режимі модем отримує команди від комп'ютера, які встановлюють і змінюють умови зв'язку з видаленим модемом. У режимі передачі він працює як ретранслятор, виконуючи своє головне завдання по перетворенню і передачі інформації.
Командний режим модему встановлюється в наступних випадках:
> при включенні живлення;
> при первинній ініціалізації модему;
> після невдалої спроби з'єднання з видаленим модемом;
> при перериванні передачі з клавіатури шляхом натиснення комбінації клавіш — "покласти трубку" (зазвичай <Alt><H>);
> при виході з режиму передачі даних через послідовність команд (ESCAPE — послідовність).
Встановлення з'єднання і посилка модемом повідомлення CONNECT відбувається в двох випадках:
> при спробі встановлення зв'язку, що вдалася, з видаленим модемом;
> при виконанні модемом самотестирования.
У режимі передачі модем є "прозорим" для команд, які передаються в канал разом з іншими символами. І лише ESCAPE-послідовність символів сприйматиметься модемом як команда, що управляє. Після отримання цієї послідовності модем виходить з режиму передачі в командний режим, не перериваючи зв'язку з видаленим модемом. Це дає можливість користувачеві або прикладному процесу, не розриваючи зв'язку, увійти до командного режиму і змінити параметри обміну інформацією або настройки використовуваної комунікаційної програми.
Основна відмінність Haves-сумісних модемів полягає в підтримці командного режиму в стандарті АТ-команд. AT (Attention — увага) — це префікс, який ставиться перед однією або декількома командами Hayes-модема.
У командному режимі символи, що набирають на клавіатурі, потрапляють в командний буфер і посилаються на виконання натисненням клавіші <Enter>. Команди можуть бути набрані або рядковими, або прописними буквами і повинні містити чисельні параметри, якщо того вимагає формат команди. Якщо чисельний параметр пропущений, то його значення за умовчанням приймається рівним нулю. При успішному виконанні команди модем посилає вам повідомлення <0k>. При інтерпретації команди модем аналізує тільки сім молодших розрядів кожного символу; рядкові символи команди еквівалентні прописним символам. Пропуски і символи, що управляють, відмінні від ASCII-кода повернення каретки 13 (<CR> — Carriage Return) і ASCII-кода забою 8 (<BS> — Back Space), з'являються в командному рядку, ігноруються. За умовчанням всі факс-модеми повинні підтримувати внутрішньосмугове XON/XOFF-управле-ние потоком даних, хоча також можуть використовуватися інші типи управління потоком.
Команди модемів MNP, V.42 і V.42bis

Модеми, що забезпечують апаратну підтримку корекції помилок і стиснення даних, можуть працювати в наступних режимах передачі даних:
Стандартний режим
Модем не виконує апаратної корекції помилок, але забезпечує буферизацію даних. Буферизація дозволяє використовувати різні швидкості передачі даних між комп'ютером і модемом, а також між двома модемами. Для підвищення ефективності передачі швидкість обміну по інтерфейсу DTE—DCE рекомендується встановлювати вище, ніж швидкість обміну по канальному інтерфейсу (на ділянці модем-модем).
Режим прямої передачі

У цьому режимі модем працює, як звичайний модем, не виконуючи буферизацію передаваних даних і не підтримуючи корекцію помилок. Режим з корекцією помилок і буферизацією

Це стандартний режим для зв'язку двох модемів, що підтримують корекцію помилок. При цьому бажано, щоб швидкість передачі по інтерфейсу DTE — DCE була в 2 — 4 рази вище, ніж в каналі зв'язку. Якщо видалений модем не підтримує корекцію помилок, зв'язок не встановлюється і модем звільняє лінію.
Режим з корекцією помилок і автоматичною настройкою

Режим використовується у разі, коли заздалегідь невідомо, чи підтримує видалений модем протоколи MNP/V.42bis. На початку сеансу зв'язку після автоматичного визначення режиму роботи видаленого модему встановлюється один з трьох розглянутих вище режимів
. Для управління модемами з апаратною підтримкою протоколів корекції помилок і стиснення передаваних даних існують спеціальні команди, що входять до складу розширеного набору АТ-команд.

ПРОТОКОЛИ МОДУЛЯЦІЇ

Основна функція модему — перетворення гармонійного коливання (одного або декількох його параметрів), що несе, відповідно до закону зміни передаваної інформаційної послідовності. Таке перетворення аналогового сигналу називається модуляцією.
Спосіб модуляції грає основну роль в досягненні максимально можливої швидкості передачі інформації при заданій вірогідності помилкового прийому.
Вірогідність помилкового прийому бита в конкретній системі передачі визначається відношенням Ei,/No • З формули Шенона виходить, що зростання питомої швидкості передачі V/&.F вимагає збільшення енергетичних витрат (Ei) на один біт).
Будь-яка система передачі може бути описана крапкою, лежачою нижче приведеною на малюнку кривої (область В). Цю криву часто називають межею або межею Шенона. Для будь-якої крапки в області В можна створити таку систему зв'язку, вірогідність помилкового прийому у якої може бути настільки малою, наскільки це потрібно. Історія розвитку як систем зв'язку в цілому, так і модемної техніки, зокрема, є безперервною серією спроб наблизити їх до межі Шенона, зберігаючи при цьому низьку вірогідність помилкового прийому інформаційного біта (такі системи використовують сучасні способи модуляції і кодування).
Сучасні системи передачі даних вимагають, щоб вірогідність невиявленої помилки була не вища за величину 10~ ...Ю"1 . Ці значення забезпечують протоколи виправлення помилок типу MNP1 — MNP4 і V.42, які будуть розглянуті нижче.

Способи модуляції

У модемах для телефонних каналів, як правило, використовуються три види модуляції: частотна, відносна фазова (фазоразностная) і квадратурна амплітудна модуляція, часто звана багатопозиційною амплитуд-но-фазовой.

Частотна модуляція

При частотній модуляції (ЧМ, FSK — Frequency Shift Keying) значенням "О" і "1" інформаційної послідовності відповідають певні частоти аналогового сигналу при незмінній амплітуді. Частотна модуляція вельми помехоустойчива, оскільки перешкоди телефонного каналу спотворюють в основному амплітуду, а не частоту сигналу. Проте при частотній модуляції неекономно витрачається ресурс смуги частот телефонного каналу. Тому цей вид модуляції застосовується в низькошвидкісних протоколах, що дозволяють здійснювати зв'язок по каналах з низьким відношенням сигнал/шум.

Відносна фазова модуляція

При відносній фазовій модуляції (ОФМ, DPSK — Differential Phase Shift Keying) залежно від значення інформаційного елементу змінюється тільки фаза сигналу при незмінній амплітуді і частоті. Причому кожному інформаційному біту ставиться у відповідність не абсолютне значення фази, а її зміна щодо попереднього значення.
Частіше застосовується чотирьохфазна ОФМ (ОФМ-4), або двократна ОФМ (.ДОФМ), заснована на передачі чотирьох сигналів, кожен з яких несе інформацію про дві біти (дибіті) початкової двійкової послідовності. Зазвичай використовується два набори фаз: залежно від значення диби-та (00, 01, 10 або 11) фаза сигналу може змінитися на 0°, 90°, 180°, 270° або 45°, 135°, 225°, 315° відповідно. При цьому, якщо число кодованих біт більше трьох (8 позицій повороту фази), різко знижується перешкодостійкість ОФМ. З цієї причини для високошвидкісної передачі даних ОФМ не використовується.

Квадратурна амплітудна модуляція

При квадратурній амплітудній модуляції (КАМ, QAM - Quadrature Amplitude Modulation) змінюється як фаза, так і амплітуда сигналу, що дозволяє збільшити кількість кодованих біт і при цьому істотно підвищити перешкодостійкість. В даний час використовуються способи модуляції, в яких число кодованих на одному бодовом інтервалі інформаційних біт може досягати 8...9, а число позицій сигналу в сигнальному просторі - 256...512.
Квадратурне представлення сигналів є зручним і достатньо універсальним засобом їх опису. Квадратурне уявлення полягає у виразі коливання лінійною комбінацією двох ортогональних складових — синусоїдальною і косинусоїдальною:
S(t)=x(.t)sin(wt+(p)+y(t)cos(wt+(p)
де x(t) і у(t) — біполярні дискретні величини. Така дискретна модуляція (маніпуляція) здійснюється по двох каналах на тих, що несуть, зрушених на 90° один щодо одного, тобто що знаходяться в квадратурі (звідси і назва уявлення і методу формування сигналів).
Чотирьохфазна ФМ із зрушенням (OQPSK - Offset QPSK) дозволяє уникнути стрибків фази на 180° і, отже, глибокій модуляції тієї, що огинає. Формування сигналу в квадратурній схемі відбувається так само, як і в модуляторі ФМ-4, за винятком того, що маніпуляційні елементи інформаційної послідовності x(t) і у(t) зміщені в часі на тривалість одного елементу Т. Зміна фази при такому зсуві модулюючих потоків визначається лише одним елементом послідовності, а не двома, як при ФМ-4. В результаті скачки фази на 180" відсутні, оскільки кожен елемент послідовності, що поступає на вхід модулятора синфазного або квадратурного каналу, може викликати зміну фази на 0° +90° або -90°.
Для приведеного на початку розділу 6.2.3 виразів для опису сигналу характерна взаємна незалежність багаторівневих маніпулюючих імпульсів x(t), у(t) в каналах, тобто одиничному рівню в одному каналі може відповідати одиничний або нульовий рівень в іншому каналі. В результаті вихідний сигнал квадратурної схеми змінюється не тільки по фазі, але і по амплітуді. Оскільки в кожному каналі здійснюється амплітудна маніпуляція, цей вид модуляції називають квадратурною маніпуляцією із зміною амплітуди (QASK — Quadrature Amplitude Shift Keying) або просто квадратурною амплітудною модуляцією — КАМ.
Користуючись геометричним трактуванням, кожен сигнал КАМ можна зобразити вектором в сигнальному просторі. Відзначаючи тільки кінці векторів, для сигналів КАМ отримуємо зображення у вигляді сигнальної крапки, координати якої визначаються значеннями x(t) і у(t). Сукупність сигнальних крапок утворює так зване сигнальне сузір'я (signal constellation).
Існує декілька способів практичної реалізації 4-х рівневою КАМ, найбільш поширеним з яких є так званий спосіб модуляції накладенням (SPM — Supersposed Modulation). З теорії зв'язку відомо, що при рівному числі крапок в сигнальному сузір'ї спектр сигналів КАМ ідентичний спектру сигналів ФМ. Проте перешкодостійкість систем ФМ і КАМ різна. При великому числі крапок сигнали системи КАМ мають кращі характеристики, чим системи ФМ. Основна причина цього полягає в тому, що відстань між сигнальними крапками в системі ФМ менше відстані між сигнальними крапками в системі КАМ.

Швидкість модуляції і передачі

Швидкість передачі даних вибирається з безлічі допустимих значень в діапазоні від 2400 до 28800 бит/с з кроком 2400 бит/с. Таким чином можливий вибір 12 значень, а також зміна швидкості передачі в процесі сеансу зв'язку. На відміну від раніших протоколів, швидкість модуляції не є фіксованою величиною. Рекомендація передбачає шість швидкостей модуляції, рівних 2400, 2743, 2800, 3000, 3200 і 3429 символам в секунду. Слід зазначити, що в Рекомендациі V.34 замість одиниці вимірювання "Бод" введено поняття "Символ в секунду".
Для досягнення більшої швидкості передачі необхідно вибирати більше значення швидкості модуляції. Проте для смуги пропускання стандартного телефонного каналу 3100 Гц (300 — 3400 Гц) дві останні модуляційні швидкості є неприйнятними. Цей факт виходить з теореми Найквіста. Проте, робота на таких швидкостях можлива в основному завдяки неідеальності характеристик фільтрів каналообразующей апаратури.
При введенні таких "позамежних" швидкостей була врахована тенденція збільшення в КТСОП частки систем передачі з імпульсно-кодовою модуляцією (І КМ.), в яких реальна смуга пропускання телефонного каналу може досягати 3500 Гц.
Крім того, при встановленні з'єднання через КТСОП в межах міста канал зв'язку найчастіше є з'єднанням декількох фізичних (кабельних) ліній. Такий канал за наявності спеціальних засобів частотної корекції також може забезпечити передачу сигналу з ширшим спектром.
Для каналу, пропускання, що не дозволяє розширити стандартну смугу, максимально допустимою символьною швидкістю є значення 3000 сим-вблов в секунду. При цій символьній швидкості можливе встановлення з'єднання з швидкістю до 26400 біт/с.

Особливості модуляції

У модемах V.34 застосовується багатопозиційна КАМ з гратчастим кодуванням. На відміну від ранішої Рекомендації V.32, в V.34 збільшена розмірність кодованого інформаційного елементу. У попередніх протоколах з КАМ інформаційний елемент був двовимірним, оскільки значення елементу характеризувалося амплітудою і фазою сигналу. Рекомендація V.34 передбачає використання третього параметра — часу, який породжує ще два вимірювання інформаційного елементу. В цьому випадку кожен кодований елемент включає два послідовно передаваних символу, таких, що є сигналами, що промодулюються по амплітуді і фазі. Таким чином, в чотиривимірному просторі кожен інформаційний елемент (сигнальна крапка) має чотири координати і передається за два символьні інтервали. У самій Рекомендації представлено 50 різних сигнальних сузір'їв, які забезпечують роботу на всіх швидкостях. Перехід до чотиривимірних СЬКК дозволив істотно збільшити загальне число сигнальних крапок, що, у свою чергу, дозволило підвищити швидкість коди без погіршення перешкодостійкості. За один символьний інтервал тепер може передаватися від одного до дев'яти битий, тобто одній крапці в чотиривимірному просторі може відповідати одночасно 18 битий. Проте при формуванні її позиційного номера, як і раніше, використовується лише один надмірний біт гратчастого кодера.
У Рекомендациі V.34 зроблений крок вперед - тут використовується згортальний код на 16, 32 і 64 стани, що дозволяє підвищити перешкодостійкість всієї системи сигналів за рахунок збільшення вільного евклідова відстані між сусідніми шляхами на гратчастій діаграмі. Проте це приводить до збільшення затримки на ухвалення рішення і до підвищення вимог до об'єму пам'яті і обчислювальної потужності процесора модему.
Значення частоти що несе згідно V.34 також не є фіксованим. Воно вибирається з ряду: 1600, 1646, 1680, 1800, 1829, 1867, 1920, 1959, 2000 Гц.
Велике число можливих значень швидкості модуляції, швидкості-передачі і частоти, що несе, надає модему можливість використовувати наявну смугу частот з максимальною ефективністю.
Особливості дуплексної передачі

Нововведення протоколу V.34 в області організації дуплексного зв'язку полягає в його асиметричності по багатьом параметрам. Передача даних між двома модемами V.34 може здійснюватися не тільки з різними швидкостями, але і на різних частотах, що несуть, з використанням різних СЬКК.
У стандарті також передбачений режим напівдуплексної передачі, яка припускає взаємодію модемів без схем ехокомпенсації.
Крім того, Рекомендація V.34 передбачає наявність додаткового каналу із швидкістю передачі 200 бит/с, який утворюється за рахунок тимчасового ущільнення (мультиплексування). Цей канал може бути використаний як самим модемом для обміну службовою інформацією, так і DTE. У останньому випадку він називається вторинним каналом. Вторинний канал є асинхронним.

Можливості адаптації

У попередніх поколіннях модемів адаптивне підстроювання під конкретні характеристики каналу здійснювалося виключно на приймальному кінці. На відміну від них в модемах V.34 ідея адаптації носить глобальний характер.
У передавальну частину модему введений так званий генератор кілець, сприяючий синтезу необхідної форми вихідного сигналу. При КАМ з великим сигнальним простором діапазон можливих амплітуд сигналів досить великий. Через це може виникнути статистична залежність між передаваною інформацією і рівнем сигналу на виході. Що може спричинити ситуації, при яких вихідний сигнал матиме малу амплітуду протягом тривалого часу. У таких ситуаціях можливі збої декодера і втрата сигналу на приймальній стороні. Також можливе формування сигналу з великим пик-фактором (відношення пікового значення потужності до середнього значення), що приводить до погіршення загальних характеристик системи (збільшує рівень взаємних і нелінійних спотворень). Для вирішення цієї проблеми Рекомендація пропонує спеціальне передкодування, в якому двовимірне сузір'я розбивається на концентричні кільця, що містять рівні кількості сигнальних крапок з близькою або однаковою амплітудою.
Стандарт V.34 передбачає амплитудно-фазову передкорекцію сигналу передавача для усунення міжсимвольної інтерференції. Ця пред-коррекция дозволяє отримати виграш більше 3,5 дБ в порівнянні з лінійною корекцією, вживаною в протоколі V.32. Предиськаженія на передавальній стороні вводяться за допомогою цифрового фільтру третього порядку з комплексними коефіцієнтами, значення яких передаються від видаленого модему на етапі входження в зв'язок. В результаті цієї процедури передаваний сигнал має спотворення, компенсуючі ті, яких він набуває при проходженні по каналу. За рахунок цього істотно полегшується робота адаптивного еквалайзера на приймальній стороні.
Крім цього в Рекомендації закладена можливість вибору одного з 11 заздалегідь заданих шаблонів для спектру передавача. Ці шаблони передбачають підйом високочастотних складових спектру, що компенсує спотворення, що вносяться абонентськими і сполучними лініями.
У стандарті V.34 передбачено введення в передаваний сигнал нелінійних предыскажений. Це дозволяє частково компенсувати залишкові специфічні спотворення сигналу, що вносяться апаратурою ІКМ. Предиськаженія приводять до неоднозначної трансформації сигнального простору, збільшуючи захищеність його периферійних крапок.
Нововведенням є використання ієрархічної кадрової структури на фізичному рівні. Сигнальні кадри, що складаються з 4-х чотиривимірних інформаційних елементів (8 символів), об'єднуються в кадрів даних, які, у свою чергу, складають суперкадр. Суперкадр має фіксовану тривалість 280 мс. Внаслідок цього в систему введені засоби для підтримки синхронізації по кадрах.
Широкі можливості адаптації передбачені і на етапі входження в зв'язок.

Входження в зв'язок

Процедура-вхожденія в зв'язок складається з чотирьох фаз. На першій фазі модеми вибирають найвищий протокол ITU-T серії V, реалізований в обох модемах. На цьому етапі з'єднання встановлюється згідно Рекомендациям V.25 і V.8. Якщо обидва модеми підтримують протокол V.34, то вони переходять до другої фази, в ході якої проводиться класифікація каналу зв'язку. Протягом 3 і 4 фази відбувається навчання адаптивного еквалайзера, эхокомпен-сатора і ряду інших систем модему.
Після встановлення з'єднання процедура адаптації до каналу зв'язку починається з того, що передавач модему посилає в лінію спеціальний тестовий сигнал, що є послідовністю з 21 гармонійного коливання різних частот в діапазоні від 150 до 3750 Гц. Приймач видаленого модему, приймаючи цей сигнал, розраховує частотну характеристику каналу зв'язку, ступінь нелінійних спотворень, зрушення частот і ряд інших характеристик каналу. Потім вибирається, номінальна швидкість модуляції, значення несу 111ей частоти, рівень передачі, номер шаблону і коефіцієнти предкор-ректора, швидкість передачі даних, число станів гратчастого кодера, тип СЬКК, параметри нелінійного кодера і інша інформація про бажану конфігурацію видаленого передавача. Така ж процедура виконується і в протилежному напрямі.
Далі обидва модеми обмінюються цими установками. Для цього використовуються протоколи V.22 (швидкість 600 бит/с, ОФМ в частотно-розділених каналах на тих, що несуть 1200 і 2400 Гц) і V.42.
Переваги V.34
Рекомендація V.34 реалізує системний підхід до вирішення проблеми перешкодостійкості. Тому модем V.34 може працювати з більшою швидкістю, чим інші на каналах такої ж якості. У Рекомендації V.34 передбачена можливість передачі даних із швидкістю 33,6 Кбіт/с, проте юридично вона була закріплена у вигляді поправки до стандарту в жовтні 1996 р. в Женеві на міжнародній конференції із стандартизації в області телекомунікацій. Модеми, що підтримують таку швидкість, часто називають модемами V.34+ або V.34bis.

ПРОТОКОЛИ СТИСНЕННЯ ДАНИХ

Основні методи стиснення

Як відомо, застосування стиснення даних дозволяє ефективніше використовувати ємкість дискової пам'яті. Не менш корисне застосування стиснення при передачі інформації в будь-яких системах зв'язку. У останньому випадку з'являється можливість передавати значно менші (як правило, у декілька разів) об'єми даних і, отже, потрібні значно менші ресурси пропускної спроможності каналів для передачі тій же самій інформації. Виграш може виражатися в скороченні часу заняття каналу і, відповідно, в значній економії орендної плати.
Науковою передумовою можливості стиснення даних виступає відома з теорії інформації теорема кодування для каналу без перешкод, опублікована в кінці 40-х років в статті Клода Шеннона "Математична теорія зв'язку". Теорема стверджує, що в каналі зв'язку без перешкод можна так перетворити послідовність символів джерела (у нашому випадку DTE) в послідовність символів коди, що середня довжина символів коди може бути скільки завгодно близька до ентропії джерела повідомлень.
Процес усунення надмірності джерела повідомлень зводиться до двох операцій — декорреляции (укрупненню алфавіту) і кодуванню оптимальним нерівномірним кодом.
Стиснення буває з втратами і без втрат. Втрати допустимі при стисненні (і відновленні) деяких специфічних видів даних, таких як відео і аудіоінформація. У міру розвитку ринку відеопродукції і систем мультимедіа все великої популярності набуває метод стиснення з втратами MPEG 2 (Motion Pictures Expert Group), що забезпечує коефіцієнт стиснення до 20:1. Якщо відновлені дані співпадають з даними, які були до стиснення, то маємо справу із стисненням без втрат. Саме такого роду методи стиснення застосовуються при передачі інформації в СПД.
На сьогоднішній день існує безліч різних алгоритмів стиснення даних без втрат, що підрозділяються на декілька основних груп.

Кодування повторів {Run-Length Encoding, RLE).
Цей метод є одним із старих і найбільш простим. Він застосовується в основному для стиснення графічних файлів. Найпоширенішим графічним форматом, що використовує цей тип стиснення, є формат PCX. Один з варіантів методу RLE передбачає заміну послідовності символів, що повторюються, на рядок, що містить цей символ, і число, відповідне кількості його повторень. Застосування методу кодування повторів для стиснення текстових або виконуваних (*.ехе, *.сот) файлів виявляється неефективним. Тому в сучасних системах зв'язку алгоритм RLE практично не використовується.

Імовірнісні методи стиснення

У основі імовірнісних методів стиснення (алгоритмів Шеннона-фано (Shannon Fano) і Хаффмена (Huffman)) лежить ідея побудови "дерева", положення символу на "гілках" якого визначається частотою його появи. Кожному символу привласнюється код, довжина якого назад пропорційна частоті появи цього символу. Існують два різновиди імовірнісних методів, що розрізняють способом визначення вірогідності появи кожного символу: > статичні (static) методи, що використовують фіксовану таблицю частоти появи символів, що розраховується перед початком процесу стиснення; > динамічні (dinamic) або адаптивні (adaptive) методи, в яких частота появи символів весь час міняється і у міру прочитування нового блоку даних відбувається перерахунок початкових значень частот.

Статичні методи характеризуються хорошою швидкодією і не вимагають значних ресурсів оперативної пам'яті. Вони знайшли широке застосування в численних програмах-архіваторах, наприклад ARC, PKZIP і ін., але для стиснення передаваних модемами даних використовуються рідко — перевага віддається арифметичному кодуванню і методу словників, що забезпечує великий ступінь стиснення.

Арифметичні методи

Принципи арифметичного кодування були розроблені в кінці 70-х років В результаті арифметичного кодування рядок символів замінюється. Арифметичне кодування дозволяє забезпечити високий ступінь стиснення, особливо у випадках, коли стискаються дані, де частота появи різних символів сильно варіюється. Проте сама процедура арифметичного кодування вимагає могутніх обчислювальних ресурсів, і до недавнього часу цей метод мало застосовувався при стисненні передаваних даних із-за повільної роботи алгоритму. Лише поява могутніх процесорів, особливо з RISC-архитектурой, дозволила створити ефективні пристрої арифметичного стиснення даних.

Метод словників

Алгоритм, покладений в основу методу словників, був вперше описаний в роботах ізраїльських дослідників Якйба Зіва і Абрама Лемпеля, які вперше опублікували його в 1977 р. У подальшому алгоритм був названий Lempel-Ziv, або скорочено LZ. На сьогоднішній день LZ-алгоритм і його модифікації набули найбільш широкого поширення, в порівнянні з іншими методами стиснення. У його основі лежить ідея заміни найбільш послідовностей символів (рядків), що часто зустрічаються, в передаваному потоці посиланнями на "зразки", що зберігаються в спеціально створюваній таблиці (словнику). Алгоритм грунтується на тому, що по потоку даних рухається ковзаюче "вікно", що складається з двох частин. У більшій за об'ємом частині містяться вже оброблені дані, а в меншій поміщається інформація, прочитана у міру її перегляду. Під час прочитування кожної нової порції інформації відбувається перевірка, і якщо виявляється, що такий рядок вже поміщений в словник раніше, то вона замінюється посиланням на неї.
Велике число модифікацій методу LZ — LZW, LZ77, LZSS і ін. — застосовуються для різних цілей, Так, методи LZW і BTLZ (British Telecom Lempel-Ziv) застосовуються для стиснення даних по протоколу V.42bis, LZ77 — в утилітах Stasker і DoudleSpase, а також в багатьох інших системах програмного і апаратного стиснення.

Методи Шеннона-фано і Хаффмена

Як приклад, що пояснює принципи стиснення, розглянемо простій метод Шеннона-фано. У чистому вигляді в сучасних СПД він не застосовується, проте дозволяє проілюструвати принципи, закладені в складніших і ефективніших методах. Згідно методу Шеннона-фано для кожного символу формується бітовий код, причому символи з різними частотами появи мають коди різної довжини. Чим менше частота появи символів у файлі, тим більше розмір його бітової коди. Відповідно, частіше символ, що з'являється, має менший розмір коду.
Код будується таким чином: всі символи, що зустрічаються у файлі виписують в таблицю в порядку убування частот їх появи. Потім їх розділяють на дві групи так, щоб в кожній з них були приблизно рівні суми частот символів. Перші біти код всіх символів однієї половини встановлюються в "О", а другий — в "I". Після цього кожну групу ділять ще раз навпіл і так до тих пір, поки в кожній групі не залишиться по одному символу.
Проте, показаний спосіб Шеннона-фано не завжди приводить до побудови однозначної коди. Хоча у верхній підгрупі середня вірогідність символу більша (і, отже, коди повинні бути коротше), можливі ситуації, при яких програма зробить довшим коди деяких символів з верхніх підгруп, а не коди символів з -нижних підгруп. Дійсно, розділяючи безліч символів на підгрупи, можна зробити більшою по вірогідності як верхню, так і нижнюю підгрупи. Як приклад такій ситуації служать приведені нижче дві таблиці, де одні і ті ж символи з однаковою вірогідністю появи у файлі мають різне кодування.
Вдаліший в даному відношенні метод Хаффмена. Він дозволяє однозначно побудувати код з найменшою середньою довжиною, що доводиться на символ.
Суть методу Хаффмена зводиться до наступного. Символи, що зустрічаються у файлі, виписуються в стовпець в порядку убування вірогідності (частоти) їх появи. Два останні символи об'єднуються в один з сумарною вірогідністю. З отриманої нової вірогідності і вірогідності нових символів, не використаних в об'єднанні, формується новий стовпець в порядку убування вірогідності, а дві останні знов об'єднуються. Це продовжується до тих пір, поки не залишиться одна вірогідність, рівна сумі вірогідності всіх символів, що зустрічаються у файлі.
Алгоритм LZW
Безпосереднім попередником алгоритму LZW з'явився алгоритм LZ78, опублікований в 1978 р. Цей алгоритм сприймався як математична абстракція до 1984 р., коли Тері Уелч (Terry A. Welch) опублікував свою роботу з модифікованим алгоритмом, що отримав надалі назву LZW (Lempel-Ziv-Welch).
Алгоритм LZW побудований навколо так званої таблиці фраз (словника), яка відображає рядки символів повідомлення, що стискається, в коди фіксованої довжини, рівні 12 битий. Таблиця володіє властивістю передування, тобто для кожної фрази словника, що складається з деякої фрази w і символу До, фраза w теж міститься в словнику.
Декодер LZW повинен використовувати той же словник, що і кодер, будуючи його за аналогічними правилами при відновленні стислих даних. Кожен прочитуваний код розбирається за допомогою словника на попередню фразу w і символ К. Затем рекурсія продовжується для попередньої фрази w до тих пір, поки вона не виявиться кодом одного символу.
Звичайне декодування LZW набагато швидше за процес кодування. Автор LZW Тері Уелч свого часу зумів запатентувати свій алгоритм в США. В даний час патент належить компанії Unisys. Алгоритм LZW визначається як частина стандарту ITU-T V.42bis, але Unisis встановила жорсткі умови ліцензування алгоритму для виробників модемів.

Стиснення даних в протоколах MNP

Розширюваність MNP при збереженні сумісності з існуючими ре-ализациями яскраво продемонстрована в його підтримці Рекомендації ITU-T V.42bis.
В процесі встановлення з'єднання передавач і приймач "обумовлюють" використання стиснення даних в процесі. Це виконується за допомогою параметра 9 або 14 блоку PDU LR . Параметр 9, який специфікує стиснення даних MNP5 або MNP7, був розширений, щоб забезпечити "коротку" форму специфікації V.42bis. Параметр 14 є новим параметром, вживаним для деталізації особливостей V.42bis, використовуваного в даному каналі.
Якщо існує можливість підтримувати MNP5 і (або) MNP7 і V.42bis, передавач може включити як параметр 9 (стиснення MNP), так і параметр 14 (стиснення V.42bis). Відповідальність за вибір типу стиснення даних, який використовуватиметься, в цьому випадку несе приймач. Він повертає PDU LR, який указує вибраний тип стиснення даних. Якщо передавач і приймач підтримують декілька методів стиснення, то приймач робить свій вибір відповідно до наступного пріоритету.
Приймач не включає інформацію про підтримку V.42bis в свій PDU LR, якщо він не прийняв запит на V.42bis в LR від передавача. Якщо передавач включив такий запит в свій PDU LR, але не отримав підтвердження, він відмовляється від використання стиснення по протоколу V.42bis.

ПРОТОКОЛИ ПЕРЕДАЧІ ФАЙЛІВ

Найбільш часто використовуваною функцією комунікаційного програмного забезпечення є функція передачі файлів. Вона здійснюється за допомогою спеціальних протоколів передачі файлів. Вибір і використання протоколу передачі файлів може проводиться користувачем в явному вигляді, як це робиться в термінальних програмах, так і в неявному, наприклад в ігрових програмах, що підтримують модемний зв'язок.
Основними завданнями протоколів передачі файлів є:
> забезпечення безпомилкової передачі даних;
> управління потоком передаваних даних;
> передача допоміжній інформації;
> захист з'єднання.
Перші протоколи передачі файлів з'явилися задовго до модемів, що підтримують апаратне виправлення помилок. З цієї причини завдання забезпечення безпомилкової передачі по сьогоднішній день залишається одній з їх основних. Для її реалізації застосовуються в основному ті ж методи, що і в сучасних протоколах виправлення помилок. Передавані дані розбиваються на блоки (кадри) певної довжини, і в кожен з них включається перевірочна комбінація (CRC) для виявлення помилок. Ця комбінація формується за певним правилом на основі передаваних інформаційних бітів блоку. На приймальній стороні проводиться повторне обчислення перевірочної комбінації за тим же правилом і порівняння її з прийнятою. При збігу перевірочних комбінацій приймаюча сторона посилає підтвердження правильного прийому блоку (АСК), а при неспівпаданні — запит на повторну передачу даного блоку (NACK). Таким чином реалізується механізм автоматичного запиту повторення (ARQ), аналогічний механізму ARQ в протоколах виправлення помилок типу MNP класів 1—4 і V.42. При цьому ARQ також може бути стартстопного типу (SAW), з поверненням на N кроків (GBN) або селективного повторення (SR).
При використанні ARQ типів GBN і SR безперервна передача непідтверджених блоків даних може привести до перевантаження буферів як приймача, так і передавача. Що б цього не відбувалося використовується управління потоком передаваних даних.
Перед безпосередньою передачею файлу необхідно встановити з'єднання на рівні каналу даних (рівень 2 моделі OSI), передати інформацію про ім'я файлу, його розмір, даті останньої його модифікації і тому подібне, а після передачі — провести роз'єднання каналу даних. Все це здійснюється за допомогою допоміжної службової інформації, передаваної по каналу зв'язку.
Останніми роками у функції протоколів передачі файлів включають захист з'єднання, наприклад перевірку пароля.
Серед протоколів, розрахованих на відсутність апаратного захисту від помилок можна виділити широко поширені протоколи XModem, XModem-CRC, XModem-1, YModem, Kermit, ZModem і ряд інших.
Якщо ж застосовуються модеми з апаратною корекцією помилок (підтримуючі протоколи типу MNP або V.42), то переважно використовувати протоколи передачі файлів типу YModem-g і ZModem. В цьому випадку виключається втрата часу на повторний запит даних, переданих з помилками. Протокол Zmodem допускає обидва варіанти застосування.
Відомі спеціалізовані протоколи, призначені для певних служб і мереж, — такі як SEALink, Telnet, CompuServe Quick В. Практічеськи всі вони є модифікаціями протоколу XModem.

Протокол XModem

Протокол XModem, розроблений Бардом Хрістенсеном, завдяки широкому використанню в довідкових службах і введенню в недорогі зв'язні програми для РС став фактичним стандартом для зв'язку між персональними комп'ютерами.
Передавальний комп'ютер починає передачу файлу тільки після прийому від приймаючого комп'ютера знаку NAK (Negative AcKnowledge), що є послідовністю <0010101> в кодуванні ACSII. Приймаючий комп'ютер передає цю послідовність до тих пір, поки не почнеться передача власне файлу. Якщо передано дев'ять знаків NAK, а передача файлу не почалася, процес повинен бути відновлений уручну.
Після прийому знаку NAK передавальний комп'ютер посилає знак початку блоку SOH (Start Of Header) (Olh), два номери блоку (сам номер і його двійкове доповнення по "одиницях"), блок даних з 128 байт і контрольну суму блоку CS (Check Sum). Блоки нумеруються по модулю 256. Контрольна сума розміром в 1 байт є залишком від ділення на 255 сум значень код ASCII знаків, що входять в блок даних.
Приймаючий комп'ютер теж обчислює контрольну суму і порівнює її з прийнятою. Якщо порівнювані значення різні або пройшло 10 з, а прийом блоку не завершений, що приймає комп'ютер посилає передавачу знак NAK, що означає запит на повторну передачу останнього блоку. Якщо блок прийнятий правильно, приймач передає підтвердження його прийому знайомий АСЬК (06h). У випадку, якщо наступний блок не поступив протягом 10с, то передача знаку АСЬК повторюється до тих пір, поки блок не буде прийнятий правильно. Після дев'яти невдалих спроб передачі блоку зв'язок уривається.
У протоколі використовується двократна передача номера. Це виключає повторну передачу одного і того ж блоку із-за втрати підтверджуючого повідомлення. Приймаючий комп'ютер контролює унікальність номерів блоків, що приймаються. Якщо блок помилково переданий повторно, то він скидається. Після успішної передачі всіх даних передавальний комп'ютер посилає знак завершення передачі EOT (End Of Transmission) (04h), що повідомляє про закінчення передачі файлу.

Перерва в передачі блоку понад 1 з вважається перервою зв'язку.

Переваги даного протоколу перед іншими полягають в його доступності для розробників програмних засобів, простоті реалізації на мовах високого рівня, малому об'ємі приймального буфера (256 байт) і можливості передачі не тільки символьних (у кодах ACSII), але і виконуваних файлів (*.сот і *.ехе). Останнє можливо завдяки тому, що кінець файлу визначається підрахунком переданих байтів і використанням замість знаку файлового маркера (CTRL-Z, "Z) спеціального сигналу завершення. Вірогідність невиявленої помилки при передачі даних цим протоколом складає PHO=0,0004, що декілька нижче, ніж при звичайній асинхронній перевірці паритету, де рно=0>05.
До основних недоліків протоколу Xmodem можна віднести низьку продуктивність, обумовлену в основному использованием'механизма ARQ типу SAW, велику вірогідність невиявлених помилок, необхідність завдання імені файлу при прийомі і щодо великий об'єм передаваної службової інформації.
Подальші модифікації протоколу XModem були направлені на усунення цих і деяких інших його недоліків.
Протокол XModem-CRC
Протокол XModem-CRC є модифікацією протоколу XModem, в якому виявлення помилок проводиться з використанням циклічної коди. Довжина перевірочної послідовності складає 16 битий (CRC-16). Завдяки цьому гарантується виявлення практично всіх одиночних і подвійних помилок, всіх непарних помилок, всіх пакетів помилок завдовжки до 16 знаків, а також всіх 17-бітових помилок з вірогідністю 0,999969 і довших пакетів помилок з вірогідністю 0,999984.
На початку з'єднання замість знаку NAK приймач передає послідовність знаків "с" (63h). Якщо передавач не підтримує протокол XModem-CRC, він ігнорує ці знаки. Не отримавши відповіді на передачу трьох знаків "с", приймач переходить на роботу по протоколу XModem і передає знаки NAK.
Протокол ZModem
Протокол ZModem введений в більшість зв'язних програм і в даний час набув найширшого поширення. Будучи розвитком протоколів XModem і YModem, він усуває їх недоліки і при дотриманні сумісності має ряд переваг:
> висока швидкодія завдяки використанню процедури SBN;
> динамічна адаптація до якості каналу зв'язку за допомогою зміни в широких межах розміру передаваних блоків;
> можливість відновлення перерваної передачі файлу з того місця, на якому відбувся збій;
> підвищена достовірність передачі завдяки використанню 32-розрядної перевірочної комбінації (CRC);
> можливість відключення функції контролю помилок передаваних блоків при використанні модемів з апаратною корекцією помилок. Протокол ZModem з'явився результатом технічного компромісу між наступними суперечливими вимогами:
> простота використання;
> забезпечення високої пропускної спроможності;
> збереження цілісності інформації;
> досягнення високої надійності передачі;
> простота реалізації.

Простота використання

Протокол дозволяє або програмно ініціювати передачу файлів або передавати команди і (або) модифікатори іншим програмам. Назви файлів досить ввести тільки один раз. Можливий вибір файлів за допомогою меню. При групових передачах можливе завдання файлів однією маскою (наприклад, "*.doc"). Організація передачі здійснюється шляхом введення мінімальної кількості команд з клавіатури.
При передачі файлів передається кадр ZRQINIT, який ініціює автоматичний прийом файлів.
Протокол ZModem може емулювати режим протоколу YModem, якщо процес на видаленому комп'ютері не підтримує протокол ZModem.
Пропускна спроможність

При розробці протоколу ZModem особлива увага була приділена трем аспектам його застосування:
> мережевим застосуванням в умовах великих затримок і малої вірогідності помилок;
> застосуванням в системах з тимчасовим ущільненням і буферированием, що характеризуються наявністю значних затримок і погіршенням пропускної спроможності при зростанні трафіку зворотного каналу;
> забезпечення прямого зв'язку між модемами при високій вірогідності помилок в каналі.

Цілісність і надійність передачі даних

З моменту початку сеансу зв'язку протокол ZModem захищає передавані дані циклічною перевірочною комбінацією з 16 або 32 битий (CRC-16 або CRC-32). При застосуванні протоколу канального рівня ADCCP (версія HDLC - ANSI X3.66, FIPS PUB 71, FED-STD-1003) можливе використання CRC-32 як перевірочна послідовність блоку. Використання 32-бітової перевірочної комбінації дозволяє зменшити вірогідність невиявлених помилок не менше чим на п'ять порядків.
У протоколі реалізований механізм захисту даних від повідомлень, що імітують дозволені команди або передачу файлів (повідомлення типу "Троянський кінь").

Простота реалізації

Протокол ZModem може бути використаний в різних типах обчислювальних систем: у персональних комп'ютерах, які не можуть одночасно працювати з накопичувачем на жорсткому диску і послідовним портом введення-виводу; у комп'ютерах без можливості одночасної передачі і прийому через послідовний порт; у комп'ютерах і мережах передачі даних, в яких реалізовано управління потоком методом XON/XOFF.
Протокол ZModem адаптований до затримок в мережах передачі даних і v системах з тимчасовим ущільненням за рахунок безперервної передачі даних. Передача даних продовжується до тих пір, поки приймач не перерве передавач запитом на повторну передачу спотворених даних. Фактично протокол ZModem використовує окремий файл як "вікно". Це спрощує управління буфером і дозволяє виключити режим переповнювання вікна, до якого схильні такі протоколи, як MEGAlink, SuperKermit і ін.
Протокол ZModem призначений для організації передачі файлів будь-якого формату і може бути використаний або окремо, або у поєднанні з протоколами захисту від помилок канального рівня, такими як MNP, V.42, HDLC і ін. У разі поєднання з протоколом HDLC протокол ZModem додатково забезпечує виявлення і виправлення помилок в інтерфейсах між DTE і DCE.
Протокол ZModem для загального застосування був розроблений в 1986 році компанією Telenet. Його опис і початковий код програми rz/sz для операційної системи UNIX є загальнодоступними. На застосування цього протоколу і початкової програми rz/sz не розповсюджуються ліцензування, торгові марки і обмеження на копіювання.
Вимоги протоколу ZModem

Для реалізації протоколу ZModem потрібне комунікаційне середовище з октетною (8-бітовою) передачею. Протокол може видаляти знаки управління для забезпечення передачі в мережах з комутацією пакетів. Для підтримки повної потокової (безперервною) передачі в каналі (streaming) потрібна реалізація методу управління потоком.

Вміст двійкових файлів

Протокол ZModem не накладає ніяких обмежень на інформаційний зміст файлів. Проте кількість бітів у файлі повинна бути кратне 8. Принцип дії протоколу дозволяє виконувати кодування блоків для непрозорих середовищ передачі даних. Можливе застосування методів уп-, равления потоком XON/XOFF або управління по окремому каналу, як це виконано в мережах стандарту Х.25.

Вміст текстових файлів

Оскільки протокол ZModem використовується для передачі файлів між різними типами обчислювальних систем, текстові файли повинні задовольняти вимозі "читаності" в широкому діапазоні систем. Рядки тексту складаються із знаків коди ASCII, пропуску (Space), табуляції (Tab) і повернення на одну позицію (Backspace).

Протокол Kermit

Протокол Kermit призначений для передачі файлів між комп'ютерами різних типів, включаючи великі і мінікомп'ютери. Він розрахований на роботу в умовах сильних перешкод і при великих затримках в каналі зв'язку. На відміну від протоколів XModem і Ymodem, в протоколі Kermit використовуються блоки змінної довжини, максимальне значення яких 94 байти. Також як протоколи YModem і Zmodem, протокол Kermit забезпечує групову передачу файлів.
Разом із стандартним протоколом Kermit у ряді програм реалізований ефективніший протокол Super Kermit, що передбачає для зменшення затримок передачі використовувати механізм змінного "вікна". У цьому "вікні" може міститися від 1 до 32 блоків. На приймальному кінці каналу здійснюється виявлення помилок, але повторна передача не запрошується до тих пір, поки не будуть передані всі блоки "вікна". Крім того, в протоколі реалізований простій метод стиснення даних, що дозволяє додатково скоротити час передачі. Якщо видалений комп'ютер підтримує протокол Kermit, то перемикання на роботу з ним відбувається автоматично.

Рекомендації по вибору протоколу передачі файлів

Передача файлів є одному з найбільш важких завдань для користувача при роботі із зв'язною програмою. Це пояснюється не тільки багатоваріантністю вибору, але і тим, що одні і ті ж протоколи часто мають різні найменування, іноді для різних протоколів використовується одна і та ж назва. Тому, в першу чергу, необхідно переконається в тому, що взаємодіючі комп'ютери використовують один і той же протокол.
Не розглянутий тут протокол ASCII фактично не є протоколом передачі файлів. Він не підтримує координацію між передавальною і приймальною системами, виправлення помилок і передачу двійкових файлів. Його можна використовувати для передачі текстових файлів комп'ютеру, вже підключеному до каналу зв'язку, як альтернативу друку повідомлення в режимі on-line. У режимі прийому його корисно використовувати у разі потреби документувати на диску весь сеанс зв'язку або його частину. Проте для передачі файлів цей протокол використовувати не рекомендується.
Протокол XModem з контрольною сумою є практично в будь-якій зв'язній програмі. Метод виявлення помилок за допомогою контрольної суми, в порівнянні з досконалішим способом перевірки з використанням циклічного кодування (CRC), є швидшим і не вимагає великих обчислювальних ресурсів і об'єму службової інформації. Модернізований протокол XModem-CRC усуває ряд недоліків базового протоколу.
Протокол XModem-lK (у ряді програм, наприклад в Procomm, він називається YModem) аналогічний класичному протоколу XModem, відрізняючись від нього тільки об'ємом передаваних блоків — 1 Кбайт замість 128 байт. Завдяки великим розмірам блоку, зменшується відносна частка передаваної службової інформації, у тому числі і що забезпечує виявлення помилок. Проте, якщо виявлена помилка, потрібна повторна передача великого об'єму даних. При хорошій якості каналу зв'язку протокол XModem-1 До забезпечує вищу швидкість передачі, чим XModem. Якщо ж якість з'єднання погана, то швидкодія протоколу XModem виявляється вищою.
Для передачі декількох файлів необхідно використовувати протокол YMo-dem, в багатьох комунікаційних програмах званий як YModem Batch.
При використанні модемів з апаратною корекцією помилок слід застосовувати протокол YModem-g (у ряді програм він називається YModem-g Batch). У цьому потоковому протоколі передавальна сторона не чекає підтвердження правильного прийому блоку даних. У разі виявлення помилки приймаюча сторона просто перериває прийом. Якщо встановлено з'єднання з апаратним виправленням помилок (наприклад, за допомогою модему з протоколом MNP4 або V.42), то протокол YModem-g забезпечує вищу швидкість передачі файлів, чим варіанти протоколу XModem або протокол YModem.
Протокол ZModem також є одним з варіантів потокового протоколу, що не перериває передачу у разі виявлення помилки. При виявленні помилки приймальна сторона посилає запит на повторну передачу пошкоджених даних. ZModem дозволяє передавати дані через супутникові канали і мережі з пакетною комутацією. Їм можна користуватися на великих, міні- і персональних комп'ютерах із звичайними модемами і модемами з апаратним виправленням помилок. Економне використання протоколом пропускної спроможності зворотного каналу дозволяє оптимальним чином працювати модемам з динамічним розподілом пропускної спроможності між двома напрямами передачі.
Завдяки своїм властивостям протокол ZModem можна вважати якнайкращим вибором незалежно від того, чи встановлено модемом з'єднання з виправленням помилок чи ні. Крім того, варто мати на увазі, що даний протокол з'явився основою для великого числа інших протоколів, поліпшуючих ті або інші його властивості і, як правило, орієнтованих на роботу в певних умовах. До таких протоколів відносяться SeaLink, MEGALink, WXModem і ряд інших.
Протокол Kermit розроблений для передачі інформації між великими і мінікомп'ютерами, які можуть обробляти тільки 7-бітові знаки. При передачі двійкових (бінарних) файлів в протоколі використовується метод під назвою "8-bit quoting" для передачі восьмого біта окремо. Проте не всі версії протоколу Kermit підтримують цей метод, що істотно обмежує його застосування. Для збільшення реальної швидкості обміну протокол Kermit використовує попередню компресію даних. Недоліком цього протоколу є його складність: для його використання потрібне детальне ознайомлення з режимами і особливостями його роботи. Крім того, Kermit — відносно повільний протокол і використовувати його рекомендується тільки у випадках, коли інші варіанти відсутні. Різновид цього протоколу, відомий під назвою Super Kermit і призначений для використання в мережах типу Telenet або Tymnet, що характеризуються великими затримками передачі даних.
Одним з найшвидших є протокол HyperProtocol. Як і Zmodem, він є потоковим протоколом, але крім цього може стискати передавані дані, як і протокол Kermit. Згідно протоколу HyperProtocol приймач посилає підтвердження не після кожного файлу, а в кінці всього сеансу передачі. Він може бути з успіхом використаний для передачі інформації по высрокоскоростньтм каналах.
Особливість протоколу BiModem полягає в тому, що він є дуплексним, тобто дозволяє одночасно передавати файли в зустрічних напрямах. Протокол BiModem також передбачає відновлення передачі після обриву зв'язку і гнучку зміну розміру блоку від 16 байт до 16 Кбайт.
Проте Bi Modem недостатньо стійко працює по каналах з високим рівнем перешкод.
Близьким по функціональних можливостях до протоколу Bi Modem є дуплексний протокол HS/Link. Також як і протокол BiModem, він надає можливість користувачам під час предачи файлів спілкуватися в режимі Chat.
Високошвидкісний дуплексний протокол Hydra відрізняється хорошої ус-тойчивочтью роботи на лініях низької якості і каналах з великими затримками передачі.
Часто вибір протоколу передачі файлів обмежений можливостями використовуваної комунікаційної програми. Проте, існує можливість підключення деяких протоколів передачі файлів до окремих термінальних програм, які штатно не передбачають їх використання. Це можливо в основному для більшості програм для DOS. Зовнішні протоколи, що підключаються, у такому разі повинні бути у вигляді ис-полнямых (*.ехе) файлів.

МОДЕМ В СТІЛЬНИКОВИХ МЕРЕЖАХ ЗВ'ЯЗКУ

Передача мові складає 90—98% графіка стільникових мереж. Проте об'єм передачі даних по таких мережах має тенденцію до швидкого збільшення. Правильний вибір модему і його використання дозволяє ефективно організувати передачу електронної пошти, відправку і отримання факсів з переносного комп'ютера. Можна навіть перетворити його на мобільний вузол своєї локальної мережі. Спершу трохи розберемося в тому, які бувають стільникові мережі зв'язку.

Стандарти стільникових мереж зв'язку

В даний час в світі існує велика кількість стандартів на стільникові мережі зв'язку. Все їх можна розділити на дві великі групи: аналогові і цифрові. До аналогових відносяться мережі типу AMPS (США), NMT (Північна Європа), HCMTS (Японія), С-450 (Німеччина), TACS (Англія), ETACS (Англія), RTMS-101H (Італія), Radiocom-2000 Францію). Основними цифровими стандартами на стільникові мережі є GSM (Європа), ADC або D-AMPS (США), CDMA (США), JDC і PHS (Японія).
Не дивлячись на велику різноманітність стандартів стільникових мереж зв'язку, жителів наший країни повинні цікавити ті, які прийняті як стандарти Міністерством зв'язку Росії. Як федеральні вибрано два стандарти: аналоговий NMT-450 (Nordic Mobile Telephone) і цифровий GSM (Global System for Mobile communication).
Технологічна перевага цифрового стільникового зв'язку дозволяє збільшувати ємкість мереж, знижувати вартість і підвищувати надійність передачі даних. Тому останніми роками в світі взагалі, і в Росії, зокрема, спостерігається переважне зростання числа користувачів саме цифрових стільникових мереж. Стандарт GSM є результатом фундаментальних досліджень провідних наукових і інженерних центрів Європи. Системні і технічні вирішення цього стандарту мають великий запас подальшого розвитку і можуть використовуватися для широкого класу перспективних цифрових систем мобільного зв'язку. До таких рішень можна віднести:
> побудова мереж GSM на принципах моделі відкритих систем і інтелектуальних мереж;
> застосування ефективних методів повторного використання частот;
> застосування множинного доступу з динамічним тимчасовим разде лением;
> тимчасове розділення режимів прийому і передачі;
> пакетування повідомлень;
> використання передових методів боротьби із завмираннями сигналів;
> програмне формування логічних каналів зв'язку;
> розробка високоякісних низькошвидкісних мовних кодеків;
> шифрування передаваних повідомленні і закриття даних користувача.
Американський стандарт D-AMPS з'явився результатом вимушеної міграції аналогового стандарту в "нову цифрову еру" мобільного зв'язку. У зв'язку з цим D-AMPS зберіг велике число властивостей свого аналогового попередника.
Всі стандарти цифрових стільникових мереж зв'язку забезпечують взаємодію з ISDN і КТСОП.
Далі розглянемо основні особливості передачі даних в стільникових мережах.
З погляду передачі даних аналогові стільникові мережі принципово повинні мало відрізнятися від КТСОП, так вони надають ті ж телефонні канали тональної частоти 0,3—3,4 кГц. На відміну від каналів звичайної телефонної мережі, канали стільникових мереж володіють поряд особливостей, які серйозно впливають на якість передачі даних. Особливості каналів стільникових мереж наступні.
1. При переміщенні радіотелефону з однієї соти в іншу відбувається перемикання обслуговуючої базової станції і радіоканалу. При зміні відстані від мобільного телефону до базової станції також відбувається перемикання потужності передавача. В результаті таких перемиканні радіоканал, а значить і частота модему, що несе, уриваються на 0,2—1,2 с. Звичайний модем реагує на це процедурою повторного з'єднання, яка продовжується протягом 10 з, або навіть роз'єднанням.
2. Завмирання і багатопроменеве розповсюдження радіосигналів надає істотний вплив на якість зв'язку. Із-за відмінності фаз сигналів, що прийшли різними шляхами, виникає інтерференція, яка залежно від місця розташування приймача змінює рівень сигналу, що приймається (відносини сигнал/шум). В результаті коливань амплітуди частоти, що несе, при передачі даних виникають помилки і порушується адаптивний режим роботи модему.
3. Аналогові стільникові мережі спочатку розроблялися для голосового зв'язку. Тому в стільникових мережах широко використовується компандування і попередня корекція АЧХ каналу. Високий рівень що несе в таких каналах > застосування ефективних методів повторного використання частот;
> застосування множинного доступу з динамічним тимчасовим разде лением;
> тимчасове розділення режимів прийому і передачі;
> пакетування повідомлень;
> використання передових методів боротьби із завмираннями сигналів;
> програмне формування логічних каналів зв'язку;
> розробка високоякісних низькошвидкісних мовних кодеків;
> шифрування передаваних повідомлень і закриття даних користувача.
Американський стандарт D-AMPS з'явився результатом вимушеної міграції аналогового стандарту в "нову цифрову еру" мобільного зв'язку. У зв'язку з цим D-AMPS зберіг велике число властивостей свого аналогового попередника.
Всі стандарти цифрових стільникових мереж зв'язку забезпечують взаємодію з ISDN і КТСОП.
Далі розглянемо основні особливості передачі даних в стільникових мережах.
З погляду передачі даних аналогові стільникові мережі принципово повинні мало відрізнятися від КТСОП, так вони надають ті ж телефонні канали тональної частоти 0,3—3,4 кГц. На відміну від каналів звичайної телефонної мережі, канали стільникових мереж володіють поряд особливостей, які серйозно впливають на якість передачі даних. Особливості каналів стільникових мереж наступні.
1. При переміщенні радіотелефону з однієї соти в іншу відбувається перемикання обслуговуючої базової станції і радіоканалу. При зміні відстані від мобільного телефону до базової станції також відбувається перемикання потужності передавача. В результаті таких перемиканні радіоканал, а значить і частота модему, що несе, уриваються на 0,2—1,2 с. Звичайний модем реагує на це процедурою повторного з'єднання, яка продовжується протягом 10с, або навіть роз'єднанням.
2. Завмирання і багатопроменеве розповсюдження радіосигналів надає істотний вплив на якість зв'язку. Із-за відмінності фаз сигналів, що прийшли різними шляхами, виникає інтерференція, яка залежно від місця розташування приймача змінює рівень сигналу, що приймається (відносини сигнал/шум). В результаті коливань амплітуди частоти, що несе, при передачі даних виникають помилки і порушується адаптивний режим роботи модему.
3. Аналогові стільникові мережі спочатку розроблялися для голосового зв'язку. Тому в стільникових мережах широко використовується компандування і попередня корекція АЧХ каналу. Високий рівень несе в таких каналах приводить до спотворень, викликаним обмеженням сигналу. А дуже низький рівень сигналу погіршує відносини сигнал/шум при його прийомі.
У цифрових стільникових мережах перераховані проблеми в основному вирішуються ще на рівні системного проектування. В результаті користувач отримує високоякісний цифровий канал (у стандарті GSM — із швидкістю 13 Кбіт/с), який і використовується для передачі його оцифрованого голосу. Цей цифровий канал можна використовувати і для передачі даних від комп'ютера або іншого DTE.
У загальному випадку передача даних по цифрових стільникових мережах, в порівнянні з передачею даних по аналогових стільникових мережах, забезпечує значно велику надійність і стійкість до шумів і затримок під час переходу абонента з однієї соти в іншу, а також до завмирань і багатопроменевого розповсюдження радіосигналів.

Модеми в аналогових мережах

Для успішної передачі даних через аналогову стільникову мережу на стороні рухомого абонента потрібна наявність, як мінімум, стільникового модему, що підтримує один із стільникових протоколів передачі. Такі протоколи, як правило, описують функції протоколу модуляції, протоколу виправлення помилок і, іноді, стиснення даних . Найбільш відомі стільникові протоколи MNP10, MNP10EC, ZYCELL, ETC, TX-CEL.
Протоколи фірми Microcom MNP10 і MNP10EC (Enhanced Cellular) передбачають механізми адаптації, реалізовані на канальному і вищих рівнях. Схожий підхід реалізований в протоколі фірми AT&T Paradine ETC (Enhanced Throughput Cellular), основаном на стандарті V.32bis. Досконалішим є протокол ZYCELL фірми ZYXEL. Він базується на протоколі V.42 з селективним повтором (ARQ типу SR) і великому числі процедур адаптації як канального, так і фізичного рівня. Протокол TX-CEL компанії Celeritas Technologies є також адаптивним і визначає порядок динамічного підстроювання електричних характеристик сигналу.
Недолік цієї системи — необхідність використовувати стільникові модеми на обох кінцях з'єднання. Якщо на одному кінці встановлений звичайний модем, то надійність і продуктивність з'єднання можуть серйозно постраждати.
З недавнього часу постачальники послуг стільниковому зв'язку вирішують цю проблему за допомогою розміщення банку модемів в комутаційних центрах рухомого зв'язку (mobile switching centres), як правило, суміщених з базовими станціями мережі. Протокол стільникового модему діє тільки на ділянці до такого центру, а на всьому протязі решти з'єднання працює протокол звичайного модему .

Модеми в цифрових мережах

В даний час існують і розвиваються дві конкуруючі технології цифрового стільникового зв'язку. Одна з них заснована на множинному доступі з розділенням за часом TDMA (Time Division Multiple Access), інша — з кодовим розділенням CDMA (Code Division Multiple Access). Перша технологія обіцяє триразове збільшення ємкості мереж в порівнянні з аналоговими системами, друга — ще більше, можливо десятиразове. TDMA вже використовується в системах типу GSM, D-AMPS, а технологія CDMA ще чекає свого впровадження.
Асоціацією телекомунікаційної промисловості TIA (Telecommunications Industry Association) США недавно були прийняті два стандарти цифрового стільникового зв'язку TDMA: IS-135 (Послуги TDMA.Асинхронна передача даних і факсимільної інформації) і IS-130 (Радіоінтерфейс TDMA. Протокол радіоканалів). Вони визначають, як в системах TDMA повинні оброблятися запити на передачу даних. Технологія передачі даних в системах CDMA определеятся стандартом IS-99.
На фізичному рівні різні види інформації, передаваної по цифровій стільниковій мережі, — мова, факси, дані — виглядають однаково. У міру підвищення рівня мережевих протоколів, відмінності між ними стають все більш істотними, а, отже, і способи обробки різної інформації повинні бути разными. Стандарти передачі даних по цифрових стільникових мережах визначають протоколи канального рівня, що забезпечують надійну передачу даних по відносно ненадійному радіоканалу. При виклику мобільного пристрою один телефонний номер використовуватиметься в цілях встановлення з'єднання для передачі мови, а інший — факсимільної інформації і даних. Для витікаючих викликів мобільний пристрій видаватиме команду цифровому стільниковому телефону, указуючи вид необхідної послуги.
Інтеграція з існуючими дротяними системами представляє декілька іншу проблему. Базова станція винна не тільки ефективно приймати передавані з мобільного вузла дані, але ще і передавати їх на стаціонарний модем на іншому кінці з'єднання. Отже, в комутаційних центрах рухомого зв'язку повинен існувати пул (безліч модемів, об'єднаних в одному корпусі) модемів для передачі даних за допомогою традиційних модемних протоколів, таких як V.32, V.34. Для забезпечення міжмережевої взаємодії комутаційні центри повинні підтримувати стандарту цифрових мереж з інтеграцією послуг (ISDN) і розподілених мереж передачі даних.
Існують потенційні можливості для підвищення швидкості передачі даних по цифрових стільникових мережах. GSM, D-AMPS і технологія CDMA підтримують об'єднання каналів. D-AMPS дозволяє об'єднувати три канали для передачі даних з сумарною швидкістю 28,8 Кбіт/с, а CDMA можливо дозволить досягти швидкості 64 Кбіт/с.

модем