Java Code Examples for java.net.Socket#setTcpNoDelay()
The following examples show how to use
java.net.Socket#setTcpNoDelay() .
These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: wildfly-camel File: MllpClientResource.java License: Apache License 2.0 | 6 votes |
public void connect(int connectTimeout) { try { clientSocket = new Socket(); clientSocket.connect(new InetSocketAddress(mllpHost, mllpPort), connectTimeout); clientSocket.setSoTimeout(soTimeout); clientSocket.setSoLinger(false, -1); clientSocket.setReuseAddress(reuseAddress); clientSocket.setTcpNoDelay(tcpNoDelay); inputStream = clientSocket.getInputStream(); outputStream = new BufferedOutputStream(clientSocket.getOutputStream(), 2048); } catch (IOException e) { String errorMessage = String.format("Unable to establish connection to %s:%s", mllpHost, mllpPort); log.error(errorMessage, e); throw new MllpJUnitResourceException(errorMessage, e); } }
Example 2
Source Project: laser File: NioLaserClient.java License: GNU General Public License v3.0 | 6 votes |
/** * 获取并配置SocketChannel * * @return 返回SocketChannel * @throws IOException */ private SocketChannel getAndConfigSocketChannel() throws IOException { final SocketChannel socketChannel = SocketChannel.open(); socketChannel.configureBlocking(false); // config the socket final Socket socket = socketChannel.socket(); socket.setTcpNoDelay(options.isClientTcpNoDelay()); socket.setReceiveBufferSize(options.getClientSocketReceiverBufferSize()); socket.setSendBufferSize(options.getClientSocketSendBufferSize()); socket.setSoTimeout(options.getClientSocketTimeout()); socket.setPerformancePreferences( options.getClientPerformancePreferences()[0], options.getClientPerformancePreferences()[1], options.getClientPerformancePreferences()[2]); socket.setTrafficClass(options.getClientTrafficClass()); return socketChannel; }
Example 3
Source Project: gemfirexd-oss File: GfxdTSSLSocket.java License: Apache License 2.0 | 6 votes |
/** * Sets the socket properties like timeout, keepalive, buffer sizes. * * @param timeout * Milliseconds timeout * @param params * Socket parameters including buffer sizes and keep-alive settings * @param props * the system properties instance to use and initialize global socket * options like keepalive and buffer sizes that are not set in params */ protected void setProperties(Socket socket, int timeout, SocketParameters params, SystemProperties props) throws TTransportException { this.inputBufferSize = params.getInputBufferSize(props .getSocketInputBufferSize()); this.outputBufferSize = params.getOutputBufferSize(props .getSocketOutputBufferSize()); try { socket.setSoLinger(false, 0); socket.setTcpNoDelay(true); this.timeout = GfxdTSocket.setTimeout(socket, timeout, params, props); } catch (SocketException se) { LOGGER.warn("Could not set socket timeout.", se); throw new TTransportException(TTransportException.NOT_OPEN, "Could not set socket timeout.", se); } }
Example 4
Source Project: grpc-java File: UtilsTest.java License: Apache License 2.0 | 6 votes |
@Test public void getSocketOptions() throws Exception { Socket socket = new Socket(); socket.setSoLinger(true, 2); socket.setSoTimeout(3); socket.setTcpNoDelay(true); socket.setReuseAddress(true); socket.setReceiveBufferSize(4000); socket.setSendBufferSize(5000); socket.setKeepAlive(true); socket.setOOBInline(true); socket.setTrafficClass(8); // note: see javadoc for valid input values SocketOptions socketOptions = Utils.getSocketOptions(socket); assertEquals(2, (int) socketOptions.lingerSeconds); assertEquals(3, (int) socketOptions.soTimeoutMillis); assertEquals("true", socketOptions.others.get("TCP_NODELAY")); assertEquals("true", socketOptions.others.get("SO_REUSEADDR")); assertEquals("4000", socketOptions.others.get("SO_RECVBUF")); assertEquals("5000", socketOptions.others.get("SO_SNDBUF")); assertEquals("true", socketOptions.others.get("SO_KEEPALIVE")); assertEquals("true", socketOptions.others.get("SO_OOBINLINE")); assertEquals("8", socketOptions.others.get("IP_TOS")); }
Example 5
Source Project: nats.java File: RawTCPLatencyTest.java License: Apache License 2.0 | 6 votes |
private static void runServer() throws IOException { try (ServerSocket serverSocket = new ServerSocket(port)) { while (true) { Socket socket = serverSocket.accept(); System.out.println("Connected"); socket.setTcpNoDelay(true); socket.setReceiveBufferSize(2 * 1024 * 1024); socket.setSendBufferSize(2 * 1024 * 1024); in = socket.getInputStream(); out = socket.getOutputStream(); try { while (true) { int rq = in.read(); out.write(rq); } } catch (IOException e) { System.out.println("Disconnected"); } } } }
Example 6
Source Project: galaxy-sdk-java File: TNonblockingSocket.java License: Apache License 2.0 | 5 votes |
private TNonblockingSocket(SocketChannel socketChannel, int timeout, SocketAddress socketAddress) throws IOException { socketChannel_ = socketChannel; socketAddress_ = socketAddress; // make it a nonblocking channel socketChannel.configureBlocking(false); // set options Socket socket = socketChannel.socket(); socket.setSoLinger(false, 0); socket.setTcpNoDelay(true); setTimeout(timeout); }
Example 7
Source Project: jocket File: BenchServer.java License: Apache License 2.0 | 5 votes |
private void initWithSocket() throws IOException { ServerSocket srv = new ServerSocket(PORT); System.out.println("Java ServerSocket listening on " + srv.getLocalPort()); Socket s = srv.accept(); srv.close(); s.setTcpNoDelay(true); run(new DataInputStream(s.getInputStream()), s.getOutputStream()); }
Example 8
Source Project: TeamSpeak-3-Java-API File: SocketChannel.java License: MIT License | 5 votes |
SocketChannel(TS3Config config) throws IOException { try { socket = new Socket(config.getHost(), config.getQueryPort()); socket.setTcpNoDelay(true); socket.setSoTimeout(config.getCommandTimeout()); } catch (IOException ioe) { close(); throw ioe; } }
Example 9
Source Project: kryonet File: TcpConnection.java License: BSD 3-Clause "New" or "Revised" License | 5 votes |
public void connect (Selector selector, SocketAddress remoteAddress, int timeout) throws IOException { close(); writeBuffer.clear(); readBuffer.clear(); readBuffer.flip(); currentObjectLength = 0; try { SocketChannel socketChannel = selector.provider().openSocketChannel(); Socket socket = socketChannel.socket(); socket.setTcpNoDelay(true); // socket.setTrafficClass(IPTOS_LOWDELAY); socket.connect(remoteAddress, timeout); // Connect using blocking mode for simplicity. socketChannel.configureBlocking(false); this.socketChannel = socketChannel; selectionKey = socketChannel.register(selector, SelectionKey.OP_READ); selectionKey.attach(this); if (DEBUG) { debug("kryonet", "Port " + socketChannel.socket().getLocalPort() + "/TCP connected to: " + socketChannel.socket().getRemoteSocketAddress()); } lastReadTime = lastWriteTime = System.currentTimeMillis(); } catch (IOException ex) { close(); IOException ioEx = new IOException("Unable to connect to: " + remoteAddress); ioEx.initCause(ex); throw ioEx; } }
Example 10
Source Project: netbeans File: CommonWireIOTestCase.java License: Apache License 2.0 | 5 votes |
public WireIO createWireIO(Socket clientSocket) { try { clientSocket.setTcpNoDelay(true); // Necessary at least on Solaris to avoid delays in e.g. readInt() etc. ObjectInputStream socketIn = new ObjectInputStream(clientSocket.getInputStream()); ObjectOutputStream socketOut = new ObjectOutputStream(clientSocket.getOutputStream()); WireIO wireIO = new WireIO(socketOut, socketIn); return wireIO; } catch (IOException ex) { ex.printStackTrace(); } return null; }
Example 11
Source Project: buffer_bci File: ConnectionThread.java License: GNU General Public License v3.0 | 5 votes |
/** * Constructor * * @param socket * The socket for the connection. * @param dataStore * The storage for all the data implementing the datamodel * interface. */ public ConnectionThread(final int clientID, final Socket socket, final DataModel dataStore, final BufferServer buffer) { this.clientID = clientID; this.socket = socket; this.dataStore = dataStore; try { socket.setTcpNoDelay(true); // disable Nagle's algorithm... i.e. allow small packets } catch ( SocketException e ) { System.err.println("Failed to set socket option TCP_NODELAY"); } clientAdress = socket.getInetAddress().toString() + ":" + Integer.toString(socket.getPort()); this.buffer = buffer; }
Example 12
Source Project: laser File: NioLaserServer.java License: GNU General Public License v3.0 | 5 votes |
/** * 配置SocketChannel * * @throws IOException */ private void configSocketChannel(SocketChannel socketChannel) throws IOException { socketChannel.configureBlocking(false); // config the socket final Socket socket = socketChannel.socket(); socket.setTcpNoDelay(options.isServerChildTcpNoDelay()); socket.setReceiveBufferSize(options.getServerChildSocketReceiverBufferSize()); socket.setSendBufferSize(options.getServerChildSocketSendBufferSize()); socket.setSoTimeout(options.getServerChildSocketTimeout()); socket.setPerformancePreferences( options.getServerChildPerformancePreferences()[0], options.getServerChildPerformancePreferences()[1], options.getServerChildPerformancePreferences()[2]); socket.setTrafficClass(options.getServerChildTrafficClass()); }
Example 13
Source Project: TencentKona-8 File: DefaultSocketFactoryImpl.java License: GNU General Public License v2.0 | 5 votes |
public void setAcceptedSocketOptions(Acceptor acceptor, ServerSocket serverSocket, Socket socket) throws SocketException { // Disable Nagle's algorithm (i.e., always send immediately). socket.setTcpNoDelay(true); if (keepAlive) socket.setKeepAlive(true); }
Example 14
Source Project: Chronicle-Network File: VerySimpleClient.java License: Apache License 2.0 | 5 votes |
@NotNull private SocketChannel createClient(EventLoop eg, String desc) throws Exception { Exception e = null; for (int i = 0; i < 10; i++) { SocketChannel result = null; try { result = TCPRegistry.createSocketChannel(desc); if (result == null) continue; int tcpBufferSize = 2 << 20; Socket socket = result.socket(); socket.setTcpNoDelay(true); socket.setReceiveBufferSize(tcpBufferSize); socket.setSendBufferSize(tcpBufferSize); result.configureBlocking(false); return result; } catch (IOException e0) { e = e0; continue; } } throw e; }
Example 15
Source Project: hottub File: DefaultSocketFactoryImpl.java License: GNU General Public License v2.0 | 5 votes |
public void setAcceptedSocketOptions(Acceptor acceptor, ServerSocket serverSocket, Socket socket) throws SocketException { // Disable Nagle's algorithm (i.e., always send immediately). socket.setTcpNoDelay(true); if (keepAlive) socket.setKeepAlive(true); }
Example 16
Source Project: p4ic4idea File: RpcSocketHelper.java License: Apache License 2.0 | 4 votes |
/** * Configure a socket with specified properties. */ public static void configureSocket(Socket socket, Properties properties) { if (socket == null || properties == null) { return; } try { // Enable/disable TCP_NODELAY (disable/enable Nagle's algorithm). boolean tcpNoDelay = RpcPropertyDefs.getPropertyAsBoolean(properties, RpcPropertyDefs.RPC_SOCKET_TCP_NO_DELAY_NICK, RpcPropertyDefs.RPC_SOCKET_TCP_NO_DELAY_DEFAULT); socket.setTcpNoDelay(tcpNoDelay); String keepAlive = RpcPropertyDefs.getProperty(properties, RpcPropertyDefs.RPC_SOCKET_USE_KEEPALIVE_NICK); int timeouts = RpcPropertyDefs.getPropertyAsInt(properties, RpcPropertyDefs.RPC_SOCKET_SO_TIMEOUT_NICK, RpcPropertyDefs.RPC_SOCKET_SO_TIMEOUT_DEFAULT); int[] perfPrefs = RpcPropertyDefs.getPropertyAsIntArray(properties, RpcPropertyDefs.RPC_SOCKET_PERFORMANCE_PREFERENCES_NICK, RpcPropertyDefs.RPC_DEFAULT_PROPERTY_DELIMITER, RpcPropertyDefs.RPC_SOCKET_PERFORMANCE_PREFERENCES_DEFAULT); // Setting the socket performance preferences, described by three // integers whose values indicate the relative importance of short // connection time, low latency, and high bandwidth. // Socket.setPerformancePreferences(int connectionTime, int latency, int bandwidth) // The default values is (1, 2, 0), assume no one changes them. // This gives the highest importance to low latency, followed by // short connection time, and least importance to high bandwidth. if (perfPrefs != null && perfPrefs.length == 3) { socket.setPerformancePreferences( perfPrefs[0], perfPrefs[1], perfPrefs[2]); } socket.setSoTimeout(timeouts); if ((keepAlive != null) && (keepAlive.startsWith("n") || keepAlive.startsWith("N"))) { socket.setKeepAlive(false); } else { socket.setKeepAlive(true); } int sockRecvBufSize = RpcPropertyDefs.getPropertyAsInt(properties, RpcPropertyDefs.RPC_SOCKET_RECV_BUF_SIZE_NICK, 0); int sockSendBufSize = RpcPropertyDefs.getPropertyAsInt(properties, RpcPropertyDefs.RPC_SOCKET_SEND_BUF_SIZE_NICK, 0); if (sockRecvBufSize != 0) { socket.setReceiveBufferSize(sockRecvBufSize); } if (sockSendBufSize != 0) { socket.setSendBufferSize(sockSendBufSize); } } catch (Throwable exc) { Log .warn("Unexpected exception while setting Perforce RPC socket options: " + exc.getLocalizedMessage()); Log.exception(exc); } }
Example 17
Source Project: openjdk-jdk9 File: DnsClient.java License: GNU General Public License v2.0 | 4 votes |
Tcp(InetAddress server, int port) throws IOException { sock = new Socket(server, port); sock.setTcpNoDelay(true); out = new java.io.BufferedOutputStream(sock.getOutputStream()); in = new java.io.BufferedInputStream(sock.getInputStream()); }
Example 18
Source Project: jdk8u-jdk File: DnsClient.java License: GNU General Public License v2.0 | 4 votes |
Tcp(InetAddress server, int port) throws IOException { sock = new Socket(server, port); sock.setTcpNoDelay(true); out = new java.io.BufferedOutputStream(sock.getOutputStream()); in = new java.io.BufferedInputStream(sock.getInputStream()); }
Example 19
Source Project: p4ic4idea File: RpcSocketHelper.java License: Apache License 2.0 | 4 votes |
/** * Configure a socket with specified properties. */ public static void configureSocket(Socket socket, Properties properties) { if (socket == null || properties == null) { return; } try { // Enable/disable TCP_NODELAY (disable/enable Nagle's algorithm). boolean tcpNoDelay = RpcPropertyDefs.getPropertyAsBoolean(properties, RpcPropertyDefs.RPC_SOCKET_TCP_NO_DELAY_NICK, RpcPropertyDefs.RPC_SOCKET_TCP_NO_DELAY_DEFAULT); socket.setTcpNoDelay(tcpNoDelay); String keepAlive = RpcPropertyDefs.getProperty(properties, RpcPropertyDefs.RPC_SOCKET_USE_KEEPALIVE_NICK); int timeouts = RpcPropertyDefs.getPropertyAsInt(properties, RpcPropertyDefs.RPC_SOCKET_SO_TIMEOUT_NICK, RpcPropertyDefs.RPC_SOCKET_SO_TIMEOUT_DEFAULT); int[] perfPrefs = RpcPropertyDefs.getPropertyAsIntArray(properties, RpcPropertyDefs.RPC_SOCKET_PERFORMANCE_PREFERENCES_NICK, RpcPropertyDefs.RPC_DEFAULT_PROPERTY_DELIMITER, RpcPropertyDefs.RPC_SOCKET_PERFORMANCE_PREFERENCES_DEFAULT); // Setting the socket performance preferences, described by three // integers whose values indicate the relative importance of short // connection time, low latency, and high bandwidth. // Socket.setPerformancePreferences(int connectionTime, int latency, int bandwidth) // The default values is (1, 2, 0), assume no one changes them. // This gives the highest importance to low latency, followed by // short connection time, and least importance to high bandwidth. if (perfPrefs != null && perfPrefs.length == 3) { socket.setPerformancePreferences( perfPrefs[0], perfPrefs[1], perfPrefs[2]); } socket.setSoTimeout(timeouts); if ((keepAlive != null) && (keepAlive.startsWith("n") || keepAlive.startsWith("N"))) { socket.setKeepAlive(false); } else { socket.setKeepAlive(true); } int sockRecvBufSize = RpcPropertyDefs.getPropertyAsInt(properties, RpcPropertyDefs.RPC_SOCKET_RECV_BUF_SIZE_NICK, 0); int sockSendBufSize = RpcPropertyDefs.getPropertyAsInt(properties, RpcPropertyDefs.RPC_SOCKET_SEND_BUF_SIZE_NICK, 0); if (sockRecvBufSize != 0) { socket.setReceiveBufferSize(sockRecvBufSize); } if (sockSendBufSize != 0) { socket.setSendBufferSize(sockSendBufSize); } } catch (Throwable exc) { Log .warn("Unexpected exception while setting Perforce RPC socket options: " + exc.getLocalizedMessage()); Log.exception(exc); } }
Example 20
Source Project: jelectrum File: PeerManager.java License: MIT License | 4 votes |
private boolean checkPeerInternal(PeerInfo peer) throws Exception { peer.updateAddress(); Socket sock = openSocket(peer); sock.setTcpNoDelay(true); sock.setSoTimeout(15000); Scanner scan = new Scanner(sock.getInputStream()); PrintStream out = new PrintStream(sock.getOutputStream()); int height_to_check = Math.max(0, jelly.getElectrumNotifier().getHeadHeight() - 2); Sha256Hash block_hash = jelly.getBlockChainCache().getBlockHashAtHeight(height_to_check); StoredBlock blk = jelly.getDB().getBlockStoreMap().get(block_hash); JSONObject my_result = new JSONObject(); jelly.getElectrumNotifier().populateBlockData(blk, my_result); String my_header = my_result.getString("hex"); String header_string = getRecentBlockHeader(out, scan, height_to_check); if (!my_header.equals(header_string)) { throw new Exception(String.format("Header string mismatch - %d Expected: %s, got %s", height_to_check, my_header, header_string)); } //System.out.println("Header match on " + height_to_check); JSONObject serverfeatures = getServerFeatures(out, scan); String hash = serverfeatures.getString("genesis_hash"); if(!genesis_hash.equals(hash)) { throw new Exception("Genesis hash: Expected " + genesis_hash + " got " + hash); } peer.protocol_max = serverfeatures.getString("protocol_max"); peer.protocol_min = serverfeatures.getString("protocol_min"); peer.server_version = serverfeatures.getString("server_version"); if (serverfeatures.isNull("pruning")) peer.pruning = 0; else { peer.pruning = serverfeatures.getInt("pruning"); } addRemotePeers(out, scan); addSelfToPeer(out, scan); sock.close(); return true; }