Advertisement

Java中的socket通信机制

阅读量:

Socket的基本概念
1.建立连接

在网络通信过程中,若需建立连接,必须确保有一端程序处于监听状态,另一端则主动发起请求。这一过程类似于电话系统——一方需要拨号,而另一方需等待接听。具体连接流程如下:
(1)在服务器端创建ServerSocket实例,用于持续监听客户端的连接请求。
(2)当客户端准备连接时,生成Socket实例并发送请求,其中host参数表示目标主机名,port#参数表示目标主机的端口号。
(3)服务器端通过调用accept()方法接收客户端的请求,并创建对应的接口及I/O数据流以进行交互。
(4)通信过程依赖于一对InputStream和OutputStream完成,在通信结束后,双方分别关闭各自的Socket接口。
2.连接地址

拨打电话时,呼叫方必须知道对方号码;同样地,在程序中建立网络连接时也需要明确地址或主机名。此外,还需指定一个端口号(可理解为电话分机号),以便正确接入目标主机,并对特定口令进行验证。在某些场景下,还需通过扩展号码与计费系统对接,则需使用专门的端口号以实现该功能。
3.端口号

在TCP/IP体系中,每个端口号由16位二进制数构成,范围为0至65535之间。实际应用中前1024个端口已被预定义用于特定服务(如Telnet、SMTP、mail、ftp等),通常不建议直接使用这些编号

全部评论 (0)

还没有任何评论哟~