linux创建文件 namespace javafx mono base64 iot系统 java时间戳 maya曲线建模 matlab区分大小写吗 图片生成链接 mysql自然连接 flutter项目案例 python算法 python语言 python操作mysql python的开发工具 python自定义异常 java获取月份 java遍历文件夹下所有文件 java取当前时间 java文件复制 java配置文件 linuxtail命令 linux镜像安装 python入门经典 popen 完美手游模拟器 免费的视频剪辑 eml文件阅读器下载 七宗罪游戏下载 疯狂java讲义 oracle表分区 极限防守图 dnf传说 ps智能参考线 flash引导层动画 加字幕的软件 音乐迷 flash制作教程 lol皮肤修改器
当前位置: 首页 > 学习教程  > 编程语言

83 java网络编程_3 _通信协议

2020/7/24 10:33:09 文章标签:

83 java网络编程_3 _通信协议

TCP协议

  • TCP协议: Transmi ssion Control Protocol 传输控制协议
    • 是一种面向连接的、可靠的、基于字节流的传输层通信协议。数据大小无限制。建立连接的过程需要三次握手,断开连接的过程需要四次挥手。

UDP协议

  • UDP协议: User Datagram Protocol 用户数据报协议
  • 是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,每个包的大小64KB。(效率高)

IP协议

  • 为 TCPP协议 ,UDP协议提供服务

  • IP协议: Internet Protocol 互联网协议/网际协议

    • 负责数据从一台机器发送到另一台机器。
    • 给互联网每台设备分配一个唯一 标识(IP地址)。
  • IP地址分为两种:

    • IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数。

      ​ 格式: D.D.D.D例如: 255. 255. 255. 255

    • IPV6: 16字节128位整数, 并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数。

       格式: X.X.X.X.X.X.X.X 例如: FFFF. FFF. FFF. FFF. FFF. FFFF. FFF. FFFF
      

IPV4的应用分类

  • A类:政府机构,10.0.1~ 126.255. 255. 254

  • B类:中型企业,128.0.0.1~ 191. 255. 255.254

  • C类:个人用户,192.0.0.1~ 223. 255. 255. 254

  • D类:用于组播,224.0.0.1~ 239. 255.255. 254

  • E类:用于实验,240.0.0.1~ 255. 255. 255. 254

  • 回环地址: 127.0.0.1, 指本机,一般用于测试使用。

  • 测试IP命令: ping D.D.D.D

  • 查看IP命令: ipconfig

port 端口号

  • 端口号:在通信实体上进行网络通讯程序的唯一 标识。(区分哪个程序发的信息)

  • 端口分类:

    • 公认端口:0~ 1023
    • 注册端口:1024~49151
    • 动态或私有端口:49152~ 65535
  • 常用端口:

    • MySql: 3306
    • Oracle:1521
    • Tomcat:8080
    • SMTP: 25
    • Web服务器: 80
    • FTP服务器:21

InetAddress类

  • 概念:表示互联网协议(IP)地址对象,封装了与该IP地址相关的所有信息,并提供获取信息的常用方法。

  • 方法:

    • public static InetAddress getLocalHost() 获得本地主机地址对象
    • public static InetAddress getByName (String host) 根据主机名称获得地址对象
    • public static InetAddress[] getAllByName (String host) 获得所有相关地址对象
    • public String getHostAddress () 获取IP地址字符串
    • public String getHostName() 获得IP地址主机名

代码:

package com.wlw.computer_network;

import java.net.InetAddress;

/**
 * InetAddress类的使用
 * (1)创建本机IP地址对象
 * (2)创建局域网IP地址对象
 * (3)创建外网IP地址对象
 */
public class InetAddressDemo {
    public static void main(String[] args) throws Exception{
        //1.创建本机IP地址对象
        //1.1
        InetAddress inetAddress = InetAddress.getLocalHost();
        System.out.println("IP地址:"+inetAddress.getHostAddress()+",主机名:"+inetAddress.getHostName());
        //1.2
        InetAddress inetAddress1 = InetAddress.getByName("192.168.1.31");
        System.out.println("IP地址:"+inetAddress1.getHostAddress()+",主机名:"+inetAddress1.getHostName());
        //1.3
        InetAddress inetAddress2 = InetAddress.getByName("127.0.0.1");
        System.out.println("IP地址:"+inetAddress2.getHostAddress()+",主机名:"+inetAddress2.getHostName());
        //1.4
        InetAddress inetAddress3 = InetAddress.getByName("localhost");
        System.out.println("IP地址:"+inetAddress3.getHostAddress()+",主机名:"+inetAddress3.getHostName());

        //2.创建局域网IP地址对象
       // InetAddress inetAddress4 = InetAddress.getByName("192.168.1.33");
       // System.out.println("IP地址:"+inetAddress4.getHostAddress()+",主机名:"+inetAddress4.getHostName());
        // System.out.println("两秒是否可达:"+inetAddress4.isReachable(2000));

        //3.创建外网IP地址对象
        InetAddress inetAddress5 = InetAddress.getByName("www.baidu.com");
        System.out.println("IP地址:"+inetAddress5.getHostAddress()+",主机名:"+inetAddress5.getHostName());
        System.out.println("两秒是否可达:"+inetAddress5.isReachable(2000));
        System.out.println("---------------------");
        InetAddress[] allByName = InetAddress.getAllByName("www.baidu.com");
        for (InetAddress address : allByName) {
            System.out.println(address.getHostAddress());
        }
    }
}

/*
执行结果:
IP地址:192.168.1.31,主机名:PC-20200703OXSP
IP地址:192.168.1.31,主机名:PC-20200703OXSP
IP地址:127.0.0.1,主机名:ieonline.microsoft.com
IP地址:127.0.0.1,主机名:localhost
IP地址:39.156.66.14,主机名:www.baidu.com
两秒是否可达:true
---------------------
39.156.66.14
39.156.66.18

*/

本文链接: http://www.dtmao.cc/news_show_50312.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?