JAVA underlying network protocol analysis and implementation
With the rapid development of the Internet, network communications play a vital role in all walks of life. The underlying network protocol is the basis of network communication. Understanding and implementing the underlying network protocol is crucial to developing efficient and stable network applications. This article will delve into the underlying network protocols of JAVA and provide specific code examples.
import java.io.*; import java.net.*; public class TCPClient { public static void main(String[] args) { try { Socket socket = new Socket("127.0.0.1", 8888); OutputStream out = socket.getOutputStream(); PrintWriter writer = new PrintWriter(out); writer.println("Hello, server"); writer.flush(); InputStream in = socket.getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); String response = reader.readLine(); System.out.println("Server response: " + response); socket.close(); } catch (IOException e) { e.printStackTrace(); } } }
The above code creates a TCP client and establishes a connection with the specified IP address and port through Socket, sends data and receives a response from the server .
import java.io.*; import java.net.*; public class UDPServer { public static void main(String[] args) { try { DatagramSocket serverSocket = new DatagramSocket(9876); byte[] receiveData = new byte[1024]; DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length); serverSocket.receive(receivePacket); String sentence = new String(receivePacket.getData(), 0, receivePacket.getLength()); InetAddress IPAddress = receivePacket.getAddress(); int port = receivePacket.getPort(); System.out.println("Client message: " + sentence); String response = "Hello, client"; byte[] sendData = response.getBytes(); DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, IPAddress, port); serverSocket.send(sendPacket); serverSocket.close(); } catch (IOException e) { e.printStackTrace(); } } }
The above code creates a UDP server and listens to the specified port, receives data sent by the client and sends a response.
import java.io.*; import java.net.*; public class HTTPClient { public static void main(String[] args) { try { URL url = new URL("http://www.example.com"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); String inputLine; StringBuffer response = new StringBuffer(); while ((inputLine = reader.readLine()) != null) { response.append(inputLine); } reader.close(); System.out.println(response.toString()); connection.disconnect(); } catch (IOException e) { e.printStackTrace(); } } }
The above code creates an HTTP client and initiates a GET request to the specified URL, receives the server response and outputs it to the console.
Through the above code examples, we understand how to implement communication of underlying network protocols such as TCP/IP, UDP and HTTP in JAVA. Understanding and mastering the implementation of underlying network protocols is crucial to developing efficient and stable network applications. I hope this article can be helpful to readers.
The above is the detailed content of Analysis and implementation of JAVA underlying network protocol. For more information, please follow other related articles on the PHP Chinese website!