相关概念(网络编程)
  TEZNKK3IfmPf 2023年11月13日 24 0

1.1 网络通信  661

1.概念:两台设备之间通过网络实现数据传输

2.网络通信:将数据通过网络从一台设备传输到另一台设备

3. java.net包下提供了一系列的类或接口,供程序员使用,完成网络通信

相关概念(网络编程)

1.2 网络  662

1.概念:两台或多台设备通过一定物理设备连接起来构成了网络

2.根据网络的覆盖范围不同,对网络进行分类:

局域网:覆盖范围最小,仅仅覆盖一个教室或一个机房

城域网:覆盖范围较大,可以覆盖一个城市

广域网:覆盖范围最大,可以覆盖全国,甚至全球,万维网是广域网的代表

相关概念(网络编程)

2. ip 地址   662

1.概念:用于唯一标识网络中的每台计算机/主机

2.查看ip地址:在运行(cmd)中输入 ipconfig

3. ip地址的表示形式:点分十进制x.xx.xx.xx

4.每一个十进制数的范围: 0~255

5. ip地址的组成=网络地址+主机地址,比如: 192.168.16.69

6. iIPv6是互联网工程任务组设计的用于替代IPv4的下一代IP协议, 其地址数量号称可以为全世界的每一 粒沙子编上一个地址。

7.由于IPv4最大的问题在于网络地址资源有限,严重制约了互联网的应用和发展。IPv6的使用,不仅能解决网络地址资源数量的问题,而且也解决了多种接入设备连入互联网的障碍

2.1 ipv4 地址分类  662

相关概念(网络编程)

相关概念(网络编程)

3. 域名  663

1. www. baidu.com

2.好处:为了方便记忆,解决记ip的困难

3.概念:将ip地址映射成域名,这里怎么映射上,HTTP协议

4. 端口号: 663

1.概念:用于标识计算机上某个特定的网络程序

2.表示形式:以整数形式,端口范围0~ 65535 [2个字节表示端口0~2^16-1]

3. 0~1024已经被占用,比如ssh 22, ftp 21, smtp 25 http 80

4.常见的网络程序端口号:

tomcat :8080

mysql:3306

oracle:1521

sqlserver:1433

相关概念(网络编程)

5. 网络通信协议  664

5.1 协议(tcp/ip)  664

TCP/IP (Transmission Control Protocol/Internet Protocol)的简写,中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议,这个协议是Internet最基本的协议、Internet国际互联网络的基础,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。[示意图]

相关概念(网络编程)

相关概念(网络编程)

6. TCP 和 UDP  665

6.1 TCP协议: 传输控制协议

1.使用TCP协议前,须先建立TCP连接,形成传输数据通道

2.传输前,采用"三次握手"方式,是可靠的

3. TCP协议进行通信的两个应用进程:客户端、服务端

4.在连接中可进行大数据量的传输

5.传输完毕,需释放已建立的连接,效率低

6.2 UDP协议: 用户数据协议

1.将数据、源、目的封装成数据包,不需要建立连接

2.每个数据报的大小限制在64K内,不适合传输大量数据

3.因无需连接,故是不可靠的

4.发送数据结束时无需释放资源(因为不是面向连接的),速度快

7. InetAddress 类  666

7.1 相关方法

1.获取本机InetAddress对象getLocalHost

2.根据指定主机名/域名获取ip地址对象getByName

3.获取InetAddress对象的主机名getHostName

4.获取InetAddress对象的地址getHostAddress

7.2 应用案例   666

编写代码,获取计算机的主机名和 IP 地址相关 API

代码在com.stulzl.inetaddress_.

API_

package com.stulzl.inetaddress_;

import java.net.InetAddress;
import java.net.UnknownHostException;

//InetAddress 类  相关方法的使用   666
//编写代码,获取计算机的主机名和 IP 地址相关 API
public class API_ {
    public static void main(String[] args) throws UnknownHostException {

        //1.获取本机InetAddress对象getLocalHost
        //获得此电脑的主机名和ip地址
        InetAddress localHost = InetAddress.getLocalHost();
        System.out.println(localHost);//LAPTOP-EFUDTF4Q/169.254.215.208

        //2. 根据指定主机名 获取 InetAddress对象
        InetAddress host1 = InetAddress.getByName("LAPTOP-EFUDTF4Q");
        System.out.println("host1="+host1);//host1=LAPTOP-EFUDTF4Q/169.254.215.208

        //3. 根据域名返回 InetAddress对象
        //比如获取www.baidu.com对应的InetAddress对象
        InetAddress host2 = InetAddress.getByName("www.baidu.com");
        System.out.println("host2="+host2);//host2=www.baidu.com/110.242.68.4

        //4. 通过 InetAddress 对象,获取对应的地址 ip
        //其实就是得到ip //这里得到的ip地址不稳定因为百度自己有自己的改变方法设置110.242.68.3
        String hostAddress = host2.getHostAddress();
        System.out.println("host2对应的ip="+hostAddress);//110.242.68.3

        //5. 通过 InetAddress 对象,获取对应的主机名/或者的域名
        String hostName = host2.getHostName();
        System.out.println("host2对应的主机名/域名=" + hostName); // www.baidu.com
    }
}
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月14日   166   0   0 html通信flask
  TEZNKK3IfmPf   2023年11月14日   63   0   0 通信
  TEZNKK3IfmPf   2023年11月14日   33   0   0 TCP通信
  TEZNKK3IfmPf   2023年11月14日   33   0   0 进程通信
  TEZNKK3IfmPf   2023年11月14日   26   0   0 linux进程通信
  TEZNKK3IfmPf   2023年11月14日   21   0   0 并发网络编程
TEZNKK3IfmPf