Отец взял мой передатчик и попросил записывать за ним. Мы взяли карандаши, а папа стал выбивать последовательность сигналов: длинный, короткий, короткий, длинный, короткий… Я записывал за ним: 10010 00101 01011 00101 00011 10000 00000 10100. Получилось слово «ТЕЛЕГРАФ».
Мы ещё немного потренировались – я выстукивал слова, Катя записывала, потом наоборот. Вроде бы всё понятно и довольно просто. Потом папа сказал:
– Ну вот, я хотел начать с протокола, а потом перейти к кодированию, а получилось наоборот. Давайте же изучим, что такое протокол. Скажи, Екатерина, как ты поймёшь, что надо начинать записывать передачу Кирилла?
– Я услышу звонок и увижу мигающую лампочку.
– Но ведь ты наверняка в этот момент будешь что-то делать, а карандаша и бумаги рядом не окажется. А может быть, и самой тебя поблизости не будет. Как быть?
Мы задумались. А ведь действительно. Чтобы успешно передать сообщение, нам обоим надо быть около своих устройств, но как это сделать, если мы друг друга не видим? Но отец продолжил:
– Нам на помощь придёт протокол. Протокол – это договорённость о том, как вести передачу информации. Метод кодирования – только часть протокола. Также протокол устанавливает правила начала и окончания передачи. Ещё он может устанавливать правила смены передающей стороны и даже методы восстановления информации, если передача происходит с потерями и ошибками. Но мы пока изучим только самые простые вещи.
Мы с Катей переглянулись, а отец тем временем говорил:
– Мы введём несколько служебных символов: «Запрос на начало передачи», «Ответ о готовности приёма» и «Окончание передачи». Подумайте и ответьте мне, для чего нужны эти символы.
Я сказал:
– С их помощью мы сможем подзывать друг друга к устройству и сообщать, что готовы принять телеграмму. И в конце передачи сообщать, что телеграмма закончена.
Отец согласился, а потом обратился к Кате:
– Екатерина, ты можешь придумать, как будут выглядеть эти три служебных символа?
– Думаю, что они должны состоять из последовательности сигналов, которые непохожи на наши биты «0» и «1».
– Почему?
– Так будет проще понять, что это служебная информация, а не текст телеграммы.
– Здорово, молодец! Это, в общем, необязательно: в компьютерных системах используются только биты и ничего другого. Но мы действительно можем позволить себе применить другие символы, чтобы проще отличать. Поэтому предлагаю такую схему…
И папа записал на листке рядом с таблицей букв три строки.
Для запроса на начало передачи – три длинных звонка.
Для указания готовности к приёму – один длинный звонок.
Для окончания передачи – два длинных звонка.
Длительность каждого из этих звонков была в два раза больше, чем длительность бита «1».
Затем он сказал:
– Определим алгоритм. Пусть Кирилл хочет передать Екатерине сообщение. Он посылает служебный символ «запрос