Показать сообщение отдельно
Старый 21.01.2016, 17:29
faraday вне форума Посмотреть профиль Отправить личное сообщение для faraday Найти все сообщения от faraday
  № 3  
Ответить с цитированием
faraday
 
Аватар для faraday

Регистрация: Apr 2009
Сообщений: 409
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Это что, такой избирательный фаервол?) Мол, дай-ка я этот пакет пропущу, а этот на таможне придержу
Фаерволл либо блокирует все подключения от программы, либо никаких. Зачем ему блокировать 5% отдельных пакетов? Это же не антивирус, который все пакеты проверяет и опасные блокирует.
Тем не менее проблема остается и раз за разом воспроизводится.
сервер:
Код AS3:
function socketHandler(socket){
	socket.setEncoding('utf8');
	socket.setTimeout(300000);
	socket.setNoDelay(true);
	socketMsgHandler(socket);
	// socket.write(getCrossDomainFile() + '\0');
}
 
function socketMsgHandler(socket){
	carrier.carry(socket, function(msg){
		if (msg=='<policy-file-request/>'){
			socket.write(getCrossDomainFile()+'\0');
			socket.destroy();
		}
	},'utf8', '\0');
}
клиент:
Код AS3:
			newSocket = new XMLSocket();
			newSocket.connect(host, port);
			Security.loadPolicyFile("xmlsocket://"+host+":"+port);
			newSocket.addEventListener(Event.CONNECT, newConnect);
			newSocket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, secError);
на 8112 порту http сервер
на 8113 порту сокеты
при загрузке отсылаю на http tryConnect, так же, для проверки соединения, спустя 5 сек отсылаю checkConnection.
+ на http логирую результат сокет соединения security, ioError, success.
в итоге на 1000 подключений tryConnect=1000, checkConnection=999, success: 955, security:10. Не понятно откуда взялись эти 10, и куда пропали 34 соединения. при этом до http сервера все достукиваются без проблем.