舍友偷吃了我的草莓蛋糕,呜呜,学会“网落编成”卷哭她。

文章目录

  • 网络编程
      • 1.1 计算机网络
      • 1.2 网络通信的要素
      • 1.3 IP
          • ip地址的分类
      • 1.4 端口 (Port)
          • 端口分类
      • 1.5 通信协议
      • 1. 6 TCP
          • 服务器
          • 客户端
      • 1.7 UDP消息发送

舍友偷吃了我的草莓蛋糕,呜呜,学会“网落编成”卷哭她。

1.4 端口 (Port)

端口表示计算机上一个程序的进程

  1. 不同的进程有不同的端口号–用来区分软件

  2. 端口号范围:0~65535

  3. TCP端口, UDP端口:65535 * 2

  4. 单个协议下,端口号不能冲突

端口分类
  1. 公有端口:0-1023
    HTTP:80
    https:443
    FTP:21
    Telent:23

  2. 程序注册端口:1024-49151 分配用户或者程序
    Tomcat:8080
    MySQL:3306
    Oracle:1521

  3. 动态、私有:4915-265535

1.5 通信协议

TCP/IP协议

  • TCP:用户传输协议
    • 连接,稳定
    • 客户端,服务端
    • 传输完成,释放连接
    • 三次握手 四次挥手
  • UDP:用户数据报协议
    • 不连接,不稳定
    • 客户端,服务端 –没有明确界限
    • 直接发送
    • DDOS:洪水攻击 (饱和攻击)

1. 6 TCP

客户端

  • 连接服务器 socket
  • 发送消息

服务器

  • 建立服务端口 ServerSocket()
  • 等待用户连接 accept
  • 接收用户消息
服务器
package com.tang.tcp;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import java.net.ServerSocket;import java.net.Socket;public class TcpServer {    public static void main(String[] args) {ServerSocket serverSocket = null;Socket socket = null;InputStream is= null;ByteArrayOutputStream baos = null;//1. 我首先得有一个地址try {    serverSocket = new ServerSocket(1234);    //2.等待客户端连接    socket = serverSocket.accept();    //3.读取客户端的消息    is = socket.getInputStream();    //管道流    baos = new ByteArrayOutputStream();    byte[] buffer = new byte[1024];    int len;    while ((len = is.read(buffer))!= -1){ baos.write(buffer,0,len);    }    System.out.println(baos.toString());} catch (IOException e) {    e.printStackTrace();}finally {    //关闭资源    if (baos!=null) { try {baos.close(); } catch (IOException e) {e.printStackTrace(); }    }    if (is!=null){ try {is.close(); } catch (IOException

来源:「已注销」

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月7日
下一篇 2022年1月7日

相关推荐