The system drops UDP packets if the Publisher sends packets too fast or if the Subscriber does not load data quickly enough.
The publisher sends packets too fast for the network to keep up. In this case, the publishing socket SO_SNDBUF is too small, or the network is too slow, or the subscriber's socket SO_RCVBUF is too small to keep up with the workload.
The maximum values for SO_SNDBUF and SO_RCVBUF can be changed by reconfiguring the operating system. RAP publisher and subscriber software allocate the maximum buffer space allowed by the operating system for SO_SNDBUF and SO_RCVBUF buffering.
The subscriber does not load data as quickly as it receives it. This is likely due to CPU speed, or the number of CPUs on the subscriber system. This could also be due to an improperly tuned or configured ASE or Sybase IQ server, preventing data from loading as fast as possible.
Eliminate or reduce dropped packets by using multiple multicast channels, a high-speed network interface, multiple network interfaces, systems with more CPUs or cores, configuring your system, and configuring your network.
Use multiple multicast channels. Each DataStream channel defined in a publisher or subscriber is a separate multicast channel. Each channel is a multicast IP address and port number pair, and contains its own operating system buffers and network interface.
Use a high-speed network interface. The interface is specified when the channel is configured, and should reference the highest-speed network interface on your system. This interface should be at least 1gigabit/second (1000base-T/SX/LX).
Use multiple network interfaces. If you have more than one network interface in your machine, you can configure one or more DataStream Channels over each of them for maximum transmission rates. This will allow greater throughput by the network by splitting the data channels over two or more separate high-speed interfaces.
Use systems with more CPUs or cores, so that the multi-threaded subscriber can process incoming data in parallel. Each DataStream Channel is managed by its own thread, and separate threads are used to load each table in ASE or Sybase IQ. Therefore, there is ample opportunity to leverage parallel processing if sufficient CPU and cores are available on the system.
Configure your system so that the host computers for publishers and subscribers are on the same subnet, eliminating the need for packets to pass through routers.
Configure your network to allow larger MTU sizes. The Maximum Transmission Unit (MTU) is the largest size of IP datagram that can be transferred in one frame using a specific data link connection, and can be configured to be larger than the default (which is typically 1500 bytes).