У меня работает этот TCP-сервер, поскольку UDP-сервер мог принимать большие пакеты, но интернет-провайдер блокирует мои UDP-пакеты, даже если у меня есть публичные IP-адреса и статические службы.Но теперь решил изменить его на TCP, но у меня есть большой стек для замены на UDP для TCP.
Вот сервер, который работает, но он не получает сразу большой пакет, как я могу увеличитьэто неограниченный или максимальный размер и т. д.
1) Есть ли способ с этим?
public void run()
{
while(true)
{
byte[] buf=new byte[5024]; <<< not helping!!
int bytes_read = 0;
try {
bytes_read = sockInput.read(buf, 0, buf.length);
String data = null;
data = new String(buf, 0, bytes_read);
System.out.println("[TCP]: incomeing data: " + bytes_read + " bytes, data=" +data);
}
}
2) Есть ли способ с этим?
public TCPHandler(Socket sock) throws IOException
{
sock.setReceiveBufferSize(10*1024 +1024); //<<<<< not helping !!!
sock.setSendBufferSize(10*1024+1024);
this.sock = sock;
sockInput = sock.getInputStream();
sockOutput = sock.getOutputStream();
this.myThread = new Thread(this);
}
Ни один не позволяет мне обрабатывать большие, так что я могу переключаться с UDP на TCP.Любые идеи !!