Demo08-网络编程

      最后更新:2022-03-06 09:27:40 手机定位技术交流文章

      网络编程

      1.1 概述

      • 早期: 包(packet)

        • 对方的信息

        • 对方的地址

        • 自己的地址

      • 打电话–连接–接通–通话-- TCP连接

      • 发短信–发送成功–接收-- UDP连接

      • 计算机网络:
        计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件以及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。

      • 网络编程的目的:

        无线电台…传播交流信息…数据交换。通信

      • 注意:Javaweb:网页编程

        ​ 网络编程:TCP/IP

      1.2网络通信的要素

      如何实现网络的通信?

      通信双方的地址:
      • IP
      • 端口号
      • IP +端口 就能定位到具体的一台计算机的具体应用
      规则:网络通信的协议:

      TCP/IP参考模型:OSI七层网络模型,TCP/IP四层概念模型,对应网络协议

      1.3 IP

      IP地址:InetAddress

      • 唯一定位一台网络上计算机

      • 127.0.0.1:本机localhost

      • ip地址的分类

        • IP地址分类:IPV4/IPV6

          • IPV4 --127.0.0.1 ,4个字节组成。(一个字节长度0-255)2011年用尽
          • IPV6–128位。8位无符号整数!eg. 2001:0bb2:aaaa:0015:0000:0000:1bbb:1234!
        • 公网(互联网)-私网(局域网)

          • ABCD类地址

          • 192.168.xx.xx,专门给组织内部使用的。

      • 域名:为了解决记忆IP问题!

        • IP

      1.4 端口

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

      • 不同的进程有不同的端口号,用来区分软件。

      • 端口被规定为0-65536

      • 分为TCP端口,和UDP端口: 65536 *2 ;

      ​ tcp:80, udp:80可以吗? 单个协议下,端口号不能冲突

      • 端口的分类:

      ​ 公有端口 0-1023

      ​ http:80
      ​ https:443
      ​ FTP: 21
      ​ TELENT: 23

      ​ 程序注册端口:1024-49151 (分配给用户或者程序

      ​ Tomact:8080

      ​ Mysql : 3306

      ​ Oracle: 1521
      ​ 动态、私有端口:49152-65536

      1.5 通信协议

      协议:即一种约定 (类似于普通话)

      网络通信协议:速度,传输码率,代码结构,传输控制等

      TCP/IP协议簇:实际上是一组协议

      注:1. TCP:用户传输协议

      ​ 2.UDP:用户数据报协议

      TCP UDP对比:

      TCP相当于打电话:

      • 连接,稳定
      • 三次握手,四次挥手
        • 最少需要三次,保证稳定连接
      • 客户端,服务端
      • 传输完成,释放连接,效率低

      UDP:发短信

      • 不连接,不稳定
      • 客户端、服务端:没有明确的界限
      • 不管有没有准备好,都可以发送
      • DDOS:洪水攻击!(饱和攻击)

      1.6 TCP

      客户端:

      1. 连接服务器Socket

      2. 发送消息

        服务器:

      3. 建立服务的端口ServerSocket

      4. 等待用户的链接 accept

      5. 接受用户的消息

      文件上传

      服务器端

      客户端

      Tomact

      服务端

      • 自定义 S
      • Tomcat服务器(已经定义好的服务器)S :Java后台开发用已经定义好的服务器

      客户端

      • 自定义C
      • 浏览器B

      1.7 UDP

      发送消息

      类似于发短信:不用连接,需要知道对方的地址

      发送端

      接收端

      聊天实现

      循环发送消息

      发送方

      接收方

      多线程在线咨询

      发送线程

      接收线程

      不同端口

      在线咨询:两个人都可以是发送方,也都可以是接收方

      1.8URL

      https://www.baidu.com/

      URL即统一资源定位符:定位资源的,定位互联网上的某一个资源

      DNS:域名解析 将www.baidu.com 解析为xxx.x…x…x

      下载资源

      的资源链接)
      URL url = new URL(“https://m701.music.126.net/20220305130937/292d051724c7fdd34cb5cfec432afdaa/jdyyaac/0f5c/015a/065e/8605fc5b996069d98547143dcbfc978f.m4a”);
      //2.连接到这个资源 HTTP
      HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();

      }

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/19585.html

          热门文章

          文章分类