Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (21 – Протокол TCP, часть 11)

предыдущая часть ««»» следующая часть

Функция accept() возвращает значение undef, если возникает одна из многочисленных аварийных ситуаций, о сообщении ошибки можно узнать в переменной $!. Для учета входящих звонков многие компании используют программу фирмы «1С» - 1С:CRM. Это дает возможность успешно отслеживать эффективность размещаемой рекламы, смотрите подробнее .

Для выборки локального или удаленного адреса, связанного с сокетом, может применяться функция getsockname() или getpeername(). Функция getsockname () возвращает упакованный двоичный адрес сокета с локальной стороны соединения или значение undef, если сокет является непривязанным. Функция getрееrname() действует таким же образом, но возвращает адрес сокета с удаленной стороны соединения или значение undef, если сокет является неподключенным. В любом случае возвращенный адрес должен быть распакован с помощью функции sockaddr_in();

Вспомним сценарий tcp_echo_serv1.pl. Хотя программа tcp_echo_serv1.pl работает и в таком виде, она имеет ряд не­достатков, которые будут устранены в дальнейшем. К числу таких недостатков относятся следующие.

Отсутствует поддержка нескольких входящих соединений. Это - самая большая проблема. Сервер может принимать одновременно только одно вхо­дящее соединение. В течение того времени, пока он занимается обслуживани­ем существующего соединения, другие запросы будут ожидать в очереди до тех пор, пока текущее соединение не будет закрыто и в главном цикле не будет снова вызвана функции accept(). Если число клиентских запросов, постав­ленных в очередь, превысит значение, указанное в функции listen (), новые входящие запросы на установление соединений будут отклонены.

Для устранения этой проблемы сервер должен обеспечивать параллельную обработку с помощью потоков или процессов или же в нем должно быть пре­дусмотрено гибкое мультиплексирование операций ввода-вывода. Эти методы рассматриваются далее.



2013-10-30 13:22:41

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония