Socket, java, message TYLKO jednym pakietem? czy to mozliwe?

Socket, java, message TYLKO jednym pakietem? czy to mozliwe?
O1
  • Rejestracja:około 6 lat
  • Ostatnio:ponad 4 lata
  • Postów:6
0

WItam,

mam mniej wiecej taki kod:

Kopiuj
URL url = new URL(urlek);

Socket conn = new Socket(url.getHost(), url.getPort());
OutputStream outputStream = new BufferedOutputStream(conn.getOutputStream());

outputStream.write(START);
outputStream.write(message.getBytes(StandardCharsets.UTF_8));
outputStream.write(END);
outputStream.flush();
Response response = receive(conn);

gdy wysylam maly message, wszystko smiga
przy duzej wiadomosci, dostaje exception, ze wiadomosc nie dotarla pelna.

Sprawdzilem wiresharkiem i rzeczywiscie wiadomosc jest podzielona na kilka pakietow - pytam tu Klienta, dlaczego tego nie akceptuja ?
Ich odpowiedz, ze chcieliby miec cala wiadomosc w jednym pakiecie, a nie kilku pakietach, czy cos takiego jest w ogole mozliwe do osiagniecia? (to niskopoziomowe jest dzielone na wiele pakietow, czy mozna zmusic by szlo jednym pakietem (cala wiadomosc)) ?

edytowany 1x, ostatnio: owen1011
AF
  • Rejestracja:prawie 18 lat
  • Ostatnio:około 2 miesiące
0

W teorii jest, w praktyce nie przejdzie to przez sieć. https://en.wikipedia.org/wiki/Maximum_transmission_unit

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.