Читайте также: |
|
В связи с указанными выше особенностями передачи пакетов этого типа по сети, на стороне получателя необходима процедура определения одинаковых сообщений, чтобы повторно пришедшие пакеты не показывались пользователю и не вводили его в заблуждение. Такую проверку можно проводить непосредственно по тексту сообщения и IP-адресу отправителя, но в разработанной программе эта проблема решается иначе. Для этого в структуру пакета, кроме поля с текстом сообщения, введено дополнительное поле с целочисленным идентификатором сообщения. При отправке всем пакетам, несущим одно и то же сообщение, присваивается одинаковый идентификатор. На приёме запоминаются
идентификаторы принятых сообщений, и в случае прихода нескольких пакетов с одинаковыми идентификаторами пользователю выводится только первое из них. Идентификатор формируется с помощью функции генерации случайных чисел, что при достаточно большом диапазоне генерации делает маловероятным ложное отбрасывание сообщений.
Кроме того, в структуру пакета могут быть введены и другие дополнительные поля для расширения функциональности протокола или решения специфических задач. Примерами таких полей могут быть: время отправки сообщения, имя отправителя, алгоритм шифрования сообщения (при их шифрации), код эмоционального содержания и так далее.
В примере (рис. 1.1) предполагается введение поля с уровнем важности сообщения, которое может нести только два значения: сообщение стандартной (2) и повышенной (1) важности.
Уровень важности | Идентификатор пакета | Данные |
Рис. 1.1. Формат пакета приложения передачи коротких текстовых сообщений
Имея информацию об основных функциях программы и используемом формате пакетов, можно предположить какие понадобятся органы управления:
- два поля текстового ввода (для ввода такой информации, как IP-адрес назначения и текст сообщения),
- элемент переключения (для указания срочности сообщения),
- управляющая кнопка (для инициализации процесса отправки сообщения),
- текстовое поле (для вывода текста принятого сообщения),
- элемент вывода текстовой информации (для вывода дополнительной информации о принятых данных).
Алгоритм на языке SDL приведен в прил. 1.
Дата добавления: 2015-08-17; просмотров: 58 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Передача различных видов трафика | | | ПЕРЕДАЧА КОРОТКИХ ТЕКСТОВЫХ СООБЩЕНИЙ. |