TCP协议特点

TCP是一种面向连接的、安全、可靠的传输数据的协议
传输前,采用三次握手的方式,点对点通信,是可靠的
在连接中可进行大数据量的传输

TCP通信模式演示

TCP通信我们要做什么?
TCP通信我们只需要做两件事

  1. 1. 打通Socket通信
  2. 1. 通过i/o流进行数据的交换,怎么通信交给javasocket类来实现,socket类底层使用的是TCP协议

image.png

Socket通信

单通道通信

客户端单点

image.png
客户端要做的事情:

  1. 建立socket连接
  2. 发送数据

    public class Senddemo {
     public static void main(String[] args) throws Exception {
         Socket socket=new Socket(InetAddress.getLocalHost(),7777);
         OutputStream os=socket.getOutputStream();
         PrintStream out=new PrintStream(os);
         out.print("你是谁");
         out.flush();
     }
    }
    

    服务端单点

    image.png
    image.png
    服务端要做的事情:

  3. 注册服务端端口号

  4. 建立Socket连接
  5. 发送数据

    public class ServerDemo {
     public static void main(String[] args) {
         ServerSocket in= null;
         try {
             in = new ServerSocket(7777);
             Socket socket=in.accept();
             InputStream input=socket.getInputStream();
             BufferedReader br=new BufferedReader(new InputStreamReader(input));
             String msg;
             while((msg=br.readLine())!=null){
                 System.out.println(socket.getRemoteSocketAddress()+msg);
             }
         } catch (IOException e) {
             e.printStackTrace();
         }
    
     }
    }
    

    多发多收消息

    客户端

    image.png

    接收多个客户端的消息

    image.png
    image.png

image.png

线程池接收多个客户端

image.png
image.png

image.png

即时通信

image.png