网络通信-1(InetAddress、UDP、TCP、DatagramPacket、DatagramSocket、UDP通信示例)

本文介绍了网络通信的基础知识,包括IP地址、端口号和传输协议,详细讲解了Socket的概念。重点阐述了InetAddress类的使用,包括IP地址和主机名的解析。接着探讨了UDP协议的特性,与TCP协议的三次握手进行了对比。DatagramPacket和DatagramSocket在UDP通信中的作用也被详述,包括它们的构造方法和关键操作。最后,通过发送端和接收端的示例,展示了如何实现UDP网络程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 网络通信

1.1三要素:

  1. IP地址:网络中设备表示,可用主机名
  2. 端口号,用于表示进程的逻辑地址
  3. 传输协议:通讯的规则,常见的协议:TCP、IP

1.2 Socket

为网络编程提供的一种机制。

通信的两端都有Socket。

网络通信其实就是Socket间的通信,数据在两个Socket之间通过IO传输。

2. InetAddress

所有已实现的接口:

Serializable

直接已知子类:

Inet4Address(32位), Inet6Address(128位)

表示互联网协议 (IP) 地址。

  • IP 地址是 IP 使用的 32 位或 128 位无符号数字,它是一种低级协议,UDP 和 TCP 协议都是在它的基础上构建的。
  • InetAddress 的实例包含 IP 地址,还可能包含相应的主机名(取决于它是否用主机名构造或者是否已执行反向主机名解析)。
  • 地址类型:
    • 单播:单个接口的标识符。发送到单播地址的数据包被交付给由该地址标识的接口。
    • 多播:一组接口(通常属于不同的节点)的标识符。发送到多播地址的数据包被交付给由该地址标识的所有接口。
  • 主机名解析:
    • 主机名到 IP 地址的解析:通过使用本地机器配置信息和网络命名服务(如域名系统(Domain Name System,DNS)和网络信息服务(Network Information Service,NIS))来实现。要使用的特定命名服务默认情况下是本地机器配置的那个。对于任何主机名称,都返回其相应的 IP 地址。
    • 反向名称解析:意味着对于任何 IP 地址,都返回与 IP 地址关联的主机。

InetAddress 类提供将主

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值