如何建立socket连接
socket建立连接的过程如下:建立套接字socket()打开一个网络通讯端口,如果成功的话,就像open()一样返回一个文件描述符,应用程序可以像读写文件一样用read/write在网络上收发数据,如果socket()调用出错则返回-1。在 INET BSD 套接字上绑定(bind)地址为了监听传入的 Internet 连接请求,每个服务器都需要建立一个 INET BSD 套接字,并且将自己的地址绑定到该套接字。绑定操作主要在 INET 套接字层中进行,还需要底层 TCP 层和 IP 层的某些支持。将地址绑定到某个套接字上之后,该套接字就不能用来进行任何其他的通讯。在 INET BSD 套接字上建立连接(connect)创建一个套接字之后,该套接字不仅可以用于监听入站的连接请求,也可以用于建立出站的连接请求。不论怎样都涉及到一个重要的过程:建立两个应用程序之间的虚拟电路。监听(listen) INET BSD 套接字典型的服务器程序可以同时服务于多个客户端,当有客户端发起连接时,服务器调用的accept()返回并接受这个连接,如果有大量的客户端发起连接而服务器来不及处理,尚未accept的客户端就处于连接等待状态,listen()声明sockfd处于监听状态,并且最多允许有backlog个客户端处于连接待状态,如果接收到更多的连接请求就忽略。listen()成功返回0,失败返回-1。接受连接请求 (accept)其过程如下:接受操作首先传递到支持协议层,即 INET 中,以便接受任何传入的连接请求。相反,接受操作进一步传递到实际的协议,例如TCP 上。接受操作可以是阻塞的,也可以是非阻塞的。接受操作为非阻塞的情况下,如果没有可接受的传入连接,则接受操作将失败,而新建立的 socket 数据结构被抛弃。接受操作为阻塞的情况下,执行阻塞操作的网络应用程序将添加到等待队列中,并保持挂起直到接收到一个 TCP 连接请求为至。

如何创建一个tls的socket进行连接
:java socket建立连接的过程如下: socket 1、 首先调用Socket类的构造函数,以服务器的指定的IP地址或指定的主机名和指定的端口号为参数,创建一个Socket流,在创建Socket流的过程中包含了向服务器请求建立通讯连接的过程实现。

如何建立socket连接
通过js来建立socket连接 function testSocket(){ if (plus.os.name == "Android") { var Socket = plus.android.importClass("java.net.Socket"); var PrintWriter = plus.android.importClass("java.io.PrintWriter"); var BufferedWriter = plus.android.importClass("java.io.BufferedWriter"); var OutputStreamWriter = plus.android.importClass("java.io.OutputStreamWriter"); var BufferedReader = plus.android.importClass("java.io.BufferedReader"); var InputStreamReader = plus.android.importClass("java.io.InputStreamReader"); var socket = new Socket("192.168.23.8", 8080); var outputStreamWriter = new OutputStreamWriter(socket.getOutputStream()); var bufferWriter = new BufferedWriter(outputStreamWriter); var out = new PrintWriter(bufferWriter, true); out.println("Conneted..."); var inputStreamReader = new InputStreamReader(socket.getInputStream()); var br = new BufferedReader(inputStreamReader); var msg = br.readLine(); //while(true) { if(msg != null) { console.log(msg); } //msg = br.readLine(); } } //console.log(mac); alert("Done"); }

socket建立连接的步骤
建议你这样试试看:创建socket对象,设置访问权限为Ipv4,套接字类型为字节流和支持的通讯为TCP方式调用连接方法,参数中写入IP地址和端口连接步骤

java中如何创建socket连接的过程
这是我写过的一个简单聊天软件客户端 你参考下import java.util.*;import java.io.*;import java.net.*;import java.awt.*;import javax.swing.*;import java.awt.event.*;public class testChatClient extends JFrame{ private JTextArea jta = new JTextArea(); private JTextField jtf = new JTextField(); private JComboBox jcb = new JComboBox(); private JButton jbsend = new JButton("send"); private JButton jbrefresh = new JButton("refresh"); private InputStream input; private OutputStream output; private Socket socket; public static String SERVER_IP = "192.168.1.101"; public static int SERVER_PORT = 8888; // Message 1 -> refresh message // Message 2 -> send message public testChatClient() { initComponents(); try { socket = new Socket(SERVER_IP,SERVER_PORT); input = socket.getInputStream();output = socket.getOutputStream(); } catch(IOException e) { System.err.println(e); } jbrefresh.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { jta.setText(""); try { if(socket == null) socket = new Socket(SERVER_IP,SERVER_PORT); output.write(0x31);} catch (IOException ex) { JOptionPane.showConfirmDialog(null, ex); }} }); jbsend.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if(jtf.getText() == null || jtf.getText().equals("")) return; if(jtf.getText().length() >= 400) { JOptionPane.showConfirmDialog(null,"最大字数不能超过400"); return; } try { String destination = jcb.getSelectedItem().toString(); String message = jtf.getText(); if(socket == null) socket = new Socket(SERVER_IP,SERVER_PORT); byte[] temp = new byte[3 + destination.getBytes().length + message.getBytes().length]; temp[0] = 0x32; temp[1] = (byte)destination.getBytes().length; int i = 2; for(int j = 0; j < destination.getBytes().length ; i++ , j++) temp[i] = destination.getBytes()[j]; temp[i++] = (byte)message.getBytes().length; for(int j = 0 ; j < message.getBytes().length ; i++ , j++) { temp[i] = message.getBytes()[j]; System.out.println(); } output.write(temp); jta.append("me:n"); jta.append(jtf.getText()); jta.append("n"); jtf.setText(""); } catch(IOException ex) { System.err.println(ex); } } }); try { jbrefresh.doClick(); while(true) { byte[] tempBytes = new byte[1000]; input.read(tempBytes); int command = tempBytes[0] - 0x30; // int readLength = input.read(); switch(command) { case 1: { int readLength = tempBytes[1]; String[] temp = new String(tempBytes,2,readLength,"UTF-8").split(";"); jcb.removeAllItems(); if(temp.length == 0 && temp[0].equals("")) return; for(int i = 0 ; i < temp.length ;i++) { jcb.addItem(temp[i]); } jcb.setSelectedIndex(0); break; } case 2: { int readLength1 = tempBytes[1]; jta.append(new String(tempBytes,2,readLength1,"UTF-8") + "n"); int readLength2 = tempBytes[2 + readLength1]; jta.append(new String(tempBytes,3 + readLength1,readLength2,"UTF-8") + "n"); break; } } } } catch(IOException e) { System.err.println(e); } } public static void main(String[] args) { testChatClient frame = new testChatClient(); } public void initComponents() { setLayout(new BorderLayout()); JPanel jpNorth = new JPanel(); jpNorth.setLayout(new BorderLayout()); jpNorth.add(jcb,BorderLayout.CENTER); jpNorth.add(jbrefresh,BorderLayout.EAST); JPanel jpSouth = new JPanel(); jpSouth.setLayout(new BorderLayout()); jpSouth.add(jtf,BorderLayout.CENTER); jpSouth.add(jbsend,BorderLayout.EAST); add(jpNorth,BorderLayout.NORTH); add(jpSouth,BorderLayout.SOUTH); add(new JScrollPane(jta),BorderLayout.CENTER); this.getRootPane().setDefaultButton(jbsend); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setSize(300,600); setVisible(true); }}
Java建议使用Jpcap这个封装好的功能包括几乎所有winpcap的。 百度一下,有帮助文档和Demo可以自己看下。需要的话我也可以上传给你
//创建Socket 客户端对象 Socket s = new Socket("127.0.0.1",6666);//创建ServerSocket 服务器端对象。。ServerSocket ss = new ServerSocket(6666);//监听服务器连接 s = ss.accept();

本文由 在线网速测试 整理编辑,转载请注明出处。