zoukankan      html  css  js  c++  java
  • 2.理解网络协议

    Web网络协议
    网络协议模型
    OSI
    TCP/IP
    TCP/IP协议三次握手
    Wireshark协议分析工具应用
    协议监控工具
    1、网络疏通
    2、明确监控网卡
    3、确定监控程序
    使用Java建立TCP连接并发送数据
    1. 建立TCP连接,定义变量:a、IP地址,b、端口号
    2. 传输内容
    3.关闭TCP连接
    实践:让你的飞秋死机
    给飞秋发大量消息
    性能
    可靠性
    用Java代码快速大量发送消息
    人:做有价值的事情,机器无法代替,比如设计用例,设计方案
    机器:做简单重复的事情,提升效率,比如执行用例
     
    使用Java建立TCP连接并发送数据
    import java.io.IOException;
    import java.io.OutputStream;
    import java.net.Socket;
    import java.net.UnknownHostException;
     
    public class TCPClient {
     
    public static void main(String[] args) throws UnknownHostException, IOException {
    // TODO Auto-generated method stub
     
    // 1. 建立TCP连接,需要知道服务器a、IP地址,b、端口号
    String ip = "192.168.187.129"; // 服务器IP地址
    int port = 554; // 服务器端口号
    // 创建一个连接,实例化Socket这个类就可以连接TCP.socket这个类是封装好的网络连接类,注意:1、导入类,2、抛出异常
    Socket sck = new Socket(ip,port);
     
    // 2. 传输内容
    String content = "这是一个Java模拟客户端段 - 6666666";
    // 将字符串转换成字节流,在传输过程中使用中文编码GBK
    byte[] bstream = content.getBytes("GBK");
     
    // 创建字节输出流,注意导入输入输出包
    OutputStream os = sck.getOutputStream();
    // 将内容放到输出流中
    os.write(bstream);
     
    // 3.关闭TCP连接
    sck.close();
    }
     
    }
     
    让飞秋死个机:利用 Java代码模拟客户端向服务器发送500条信息,采用UDP传输协议
     
    import java.net.DatagramPacket;
    import java.net.DatagramSocket;
    import java.net.InetAddress;
     
    public class UDPClient {
     
    public static void main(String[] args) throws Exception {
    // TODO Auto-generated method stub
     
    for(int i=0;i<500;i++) { // 循环500次
    // 飞秋的报文规则,采用兼容飞鸽协议
    String content = "1_lbt4_10#32899#002481627512#0#0#0:1289671407:Administrator:MICROSO-697TGLD:288:hello,boy";
     
    // Java发送UDP
    byte[] sendBuf = content.getBytes("GBK"); // 转换字节流
    DatagramSocket client = new DatagramSocket(); // 创建连接
    InetAddress addr = InetAddress.getByName("182.168.187.129");
    int port = 2425;
    // 创建传输流
    DatagramPacket sendPacket = new DatagramPacket(sendBuf,sendBuf.length,addr,port);
    client.send(sendPacket); // 将内容放到传输流
     
    // 关闭连接
    client.close();
    }
    }
     
    }
  • 相关阅读:
    游戏中的角色移动:闭包(closure)在实际开发中的作用
    第六章 函数[DDT书本学习 小甲鱼]【1】
    Python模块EasyGui专题学习
    第十章 图形用户界面入门[DDT书本学习 小甲鱼]【1】
    第五章 列表、元组和字符串[DDT书本学习 小甲鱼]【7】
    ueditor 配置和上传图片
    常用的48个jQuery小技术点
    js 全选 ,全不选,反选的实现
    一个简单的登录页面,效果不错哦!
    关于模态框的引入
  • 原文地址:https://www.cnblogs.com/TomBombadil/p/10969477.html
Copyright © 2011-2022 走看看