InetAddress 的使用、UDP协议、IP协议、TCP协议

本文详细介绍了Java中的InetAddress类及其常用方法,如获取本地主机地址、解析域名/IP、获取主机名和IP地址,以及端口号在进程标识中的作用。此外,还讨论了TCP和UDP协议的特点,并展示了Socket在TCP通信中的关键角色。通过实例解析线程池在服务端优化中的优势,涵盖了技术细节和实践场景。
摘要由CSDN通过智能技术生成

InetAddress 的使用

名称

说明

public static InetAddress getLocalHost()

返回本主机的地址对象

public static InetAddress getByName​(String host)

得到指定主机的IP地址对象,参数是域名或者IP地址

public String getHostName​()

获取此IP地址的主机名

public String getHostAddress​()

返回IP地址字符串

public boolean isReachable(int timeout)

在指定毫秒内连通该IP地址对应的主机,连通返回true

端口号的作用是什么? 唯一标识正在计算机设备上运行的进程(程序)

一个设备中,能否出现2个应用程序的端口号一样,为什么? 不可以,如果一样会出现端口冲突错误。 

UDP协议:

UDP是一种无连接、不可靠传输的协议。 将数据源IP、目的地IP和端口封装成数据包,不需要建立连接,每个数据包的大小限制在64KB内。

发送不管对方是否准备好,接收方收到也不确认,故是不可靠的  可以广播发送 ,发送数据结束时无需释放资源,开销小,速度快。 UDP协议通信场景 语音通话,视频会话等。

TCP

 TCP是一种面向连接,安全、可靠的传输数据的协议 传输前,采用“三次握手”方式,点对点通信,是可靠的  在连接中可进行大数据量的传输。

TCP通信的客户端的代表类是谁? Socket类 public Socket(String host , int port)

TCP通信如何使用Socket管道发送、接收数据?

OutputStream getOutputStream():获得字节输出流对象(发)

InputStream getInputStream():获得字节输入流对象(收)

TCP通信服务端用的代表类? ServerSocket类,注册端口。

调用accept()方法阻塞等待接收客户端连接,得到Socket对象。

TCP通信的基本原理?

客户端怎么发,服务端就应该怎么收。 客户端如果没有消息,服务端会进入阻塞等待。

Socket一方关闭或者出现异常、对方Socket也会失效或者出错。

本次使用线程池的优势在哪里?

服务端可以复用线程处理多个客户端,可以避免系统瘫痪。 适合客户端通信时长较短的场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值