Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт научная практика Амелин А.С.__.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.89 Mб
Скачать

Диаграмма коммуникации протоколов приложения Telegram

Для осуществления программного описания протоколов приложения Telegram используем UML-диаграмму коммуникации. (Рисунок 5)

Обозначение на диаграмме 1

Расшифровка

Комментарий

Пользователь

Изображение объекта(-ов) пользователя

Объект

Изображение объекта, а так же описание его функций/возможностей.

Взаимодействие

Указывает направление и порядок взаимодействия между объектами

Описание взаимодействий между объектами и пользователем на диаграмме коммуникации протоколов приложения WhatsApp.

Наименование:

1.1: Send/Get Message

1.2: Include Payload

1.3: Server Request

1.4: Server Response

1.5: Get Payload

1.6: return Message

Описание:

Отправить/Вывести(получить) сообщение

Включение зашифрованного контейнера в 1 из 3х (TCP/HTTP/UDP) протоколов.

Запрос через 1 из 3х протоколов к серверу

Ответ от сервера

Получение зашифрованного контейнера через 1 из 3х протоколов (его расшифровка через протокол MTProto)

Получение(вывод) сообщения, информации о сообщении

Описание кода взаимодействия протоколов приложения Telegram

#include mtproto.h /добавление скрипта протокола MTProto

#include tcp_http_udp.h /добавление скрипта протоколов TCP/HTTP/UDP

public class Client{ /создаём класс Client (App/Browser)

client.sendMessage; /отправка сообщения

client.getMessage; /запрос на отображение сообщения

public void /зашифровка сообщения

EncryptingData (ref /через скрипт mtproto

MTProto EncryptRef); /по ссылке Encrypt

public void /включение контейнера

IncludePayload (ref /через скрипт mtproto

MTProto TcpHttpUdpIncludeRef); /по ссылке TcpHttpUdpInclude

public void ServerRequest (ref /зарос к серверу

TcpHttpUdp RequestRef);

public void GetSererResponse(){ /получить ответ сервера

return response;} /вернуть значение ответа сервера

public void GetPayload(){ /получить зашифрованное сообщение

return getpayload;}

public void GetDecryptingData(){ /получить расшифровку сообщения

return decryptingdata;}

public void GetReturnMessage(){ /отобразить сообщение

return message;}}

public class Server{ /создаём класс Server

public void GetsendMessage(){ /получить отправление сообщения

return sendmessage;}

public void GetMessage(){ /получить запрос на отображение сообщения

return getmessage;}

public void GetEncryptingData (){ /получить зашифровку сообщения

return encryptingdata;}

public void GetIncludePayload(){ /получить включение контейнера

return includepayload;}

public void GetSererRequest(){ /получить запрос к серверу

return request;}

server.response; /ответ сервера

public void Payload(ref /извлечение контейнера с сообщением

TcpHttpUdp MTprotoGetRef); /через скрипт tcp_http_udp по ссылке MTprotoGet

public void DecryptingData (ref /расшифровка сообщения

MTProto DecryptRef);

public void ReturnMessage (ref /получение сообщения

MTProto ClientMessageRef);}

Функциональная спецификация сервера обслуживания IP-телефонии.

Описание сервера обслуживания IP-телефонии.

Под IP-телефонией подразумевается голосовая связь, которая осуществляется по сетям передачи данных, в частности по IP-сетям (IP — Internet Protocol). На сегодняшний день IP-телефония все больше вытесняет традиционные телефонные сети за счет легкости развертывания, низкой стоимости звонка, простоты конфигурирования, высокого качества связи и сравнительной безопасности соединения.

Для работы сервера обслуживания IP-телефонии распространено использование следующих составляющих.

SIP(Session Initiation Protocol) — протокол сигнализации, предназначенный для организации, изменения и завершения сеансов связи. SIP не зависим от транспортных технологий, однако при установлении соединения предпочтительно использовать UDP. Протокол SIP состоит из таких компонентов, как:

Клиент SIP (SIP user agent) – представляется ус-вом/приложением. Обычно SIP-клиент содержит и клиентскую часть - User Agent Client (UAC), и серверную часть - User Agent Server (UAS). Основные функции данного компонента — инициирование и завершение вызовов.

Прокси-сервер SIP — управляет маршрутизацией вызовов и работой приложения.

Redirect-сервер SIP — перенаправляет звонки согласно заданным условиям.

Сервер регистрации SIP (registrar/location) — осуществляет регистрацию пользователей и ведет базу соответствия имен пользователей их адресам, телефонным номерам.

В SIP определены два типа сигнальных сообщений — запрос и ответ. Также существует шесть процедур: