Доброго времени суток.

Пишу реализацию протокола поверх TCP/IP, использую SysLibSockets.
Возникает несколько вопросов:
Пока идет просто передача "неосмысленных" пустых пакетов без парсинга содержимого.
ПЛК является сервером, ПК - клиентом, отправляю пакеты запроса 30 Кб с ПК на ПЛК, получаю ответы 30 Кб обратно.
1. Максимальный объем принимаемых за 1 вызов SysSockRecv равен 512 Кб? можно ли увеличить этот объем?
2. Максимальный объем передаваемых SysSockSend 1536 Кб? Аналогично, можно ли больше?
3. Скорость обмена ПЛК - ПК через Ethernet выходит не более 100-200 Кбит/с, это нормальная скорость или можно сделать быстрее?
4. Помимо реализации протокола поверх TCP на этом же контроллере идет прием широковещательных пакетов с двух других ПЛК по UDP (Ваша стандартная реализация). Может ли UDP мешать работе сокета?
5. Можно в SysSockListen(socket, 1); использовать 2 и более соединения?
6. Как определить IP-адрес присоединившегося к сокету клиента?, в структуре SOCKADDRESS его вроде не проявляется.
7. ПЛК 304/308 уже в продаже? как у них обстоят дела с Ethernet?