通信网络概述&自定义服务端

一、概述

  • 按地理覆盖范围分类:广域网 > 城域网 > 局域网 > 个域网
  • OSI 七层模型:
    • 应用层:提供用户接口
    • 表示层:保证通信各方相似应用层相互发送的信息可以互相解读,表达方式一致,如:加解密编码
    • 会话层:会话管理,建立、管理,终止会话
    • 传输层:数据分片,重组(协议数据单元 PDU :段)
    • 网络层:将数据从源转发给目的设备,如:IP(PDU :包)
    • 数据链路层:为相连或者同一局域网中设备实现数据帧传输等(PDU : 帧)
    • 物理层:实现信号的传输 (PDU :比特)
  • TCP/ IP 四层模型
    • 应用层:等同于OSI模型中应用层,表示层和会话层之和
    • 传输层:
    • 互联网层:
    • 网络接入层:可以视为主机与线路之间的接口
  • 网络的有关性能:
    • 速率:数据的传输速率,每秒能传送多少个比特
    • 带宽:网络的通信线路所能传送数据的能力,在单位时间内从网络中的某一点到另一点所能通过的最高数据率
    • 吞吐量:单位时间内通过某个网络或接口的事迹数据量
    • 时延:数据从网络一端传送到另一端所耗费的时间

二、IP地址

  • IP地址:给主机分配的一个32位的地址,用来定位计算或网络设备,不同设备,IP可相同
    • 和MAC地址的区别:目标IP地址指向最终到达的计算机 ,目标MAC地址指向下一跳接收设备
    • 组成:前面为网络标识,后面为主机标识,同一网段的网络标识相同
    • 格式:32位二进制,分为网络地址和主机地址两部分(左起多个连续的1对应IP地址中的网络号和子网号,之后多个连续的0,对应IP地址中的主机号)
    • 分类: 共有和私有

三、端口

  • 用于标识主机上不同的网络服务或应用程序。每个端口号都是一个 16 位的整数,范围从 0 到 65535。但要取在1024和66535之间(256*256=66536)
  • 与IP地址的区别:IP地址类似于宿舍楼号,端口类似于宿舍楼中的门牌号

四、自定义服务端

 public String createServer()throws Exception {
        //创建服务器
        ServerSocket server = new ServerSocket(9988);//要绑定端口号
        System.out.println("启动服务器");
        //阻塞监听链接过来的客户端
        Socket socket = server.accept();

        //获取输入输出流
        //获取客户端的输入流
        OutputStream os = socket.getOutputStream();
        //获取客户端的输出流
        InputStream is = socket.getInputStream();

        String msg = "连接成功\r\n";
        os.write(msg.getBytes());
        //关闭流
        os.flush();

        while (true) {
            String str = readMsg(is);
            System.out.println("client:" + str);
        }
    }

读取客户端数据

private String readMsg(InputStream is) throws IOException {
        StringBuilder stringBuilder = new StringBuilder();
        int b = 0;
        while ((b = is.read()) != 13) {
            //拼接一条聊天消息
            stringBuilder.append((char) b);
        }
        return stringBuilder.toString().trim();
    }

调式出电脑的客户端进行验证
win–控制面板–程序–启用或关闭Windows功能–勾选Telnet客户端

  • 在命令提示符中查找本机IP地址
    • win+R 输入 cmd 按Enter键 运行命令ipconfig 找到IP地址
  • 输入telnet + IP地址 + 端口 连接服务端
  • 在这里插入图片描述
  • 这样就可以接收到输入的内容了在这里插入图片描述
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值