`

socket简介

    博客分类:
  • java
 
阅读更多

第一步 充分理解Socket

  1.什么是socket

  所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。

  以J2SDK-1.3为例,Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。

  重要的Socket API:

  java.net.Socket继承于java.lang.Object,有八个构造器,其方法并不多,下面介绍使用最频繁的三个方法,其它方法大家可以见JDK-1.3文档。

  . Accept方法用于产生"阻塞",直到接受到一个连接,并且返回一个客户端的Socket对象实例。"阻塞"是一个术语,它使程序运行暂时"停留"在这个地方,直到一个会话产生,然后程序继续;通常"阻塞"是由循环产生的。

  . getInputStream方法获得网络连接输入,同时返回一个IutputStream对象实例,。

  . getOutputStream方法连接的另一端将得到输入,同时返回一个OutputStream对象实例。

  注意:其中getInputStream和getOutputStream方法均会产生一个IOException,它必须被捕获,因为它们返回的流对象,通常都会被另一个流对象使用。

  2.如何开发一个Server-Client模型的程序

  开发原理:

  服务器,使用ServerSocket监听指定的端口,端口可以随意指定(由于1024以下的端口通常属于保留端口,在一些操作系统中不可以随意使用,所以建议使用大于1024的端口),等待客户连接请求,客户连接后,会话产生;在完成会话后,关闭连接。

  客户端,使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭Socket。客户端不需要指定打开的端口,通常临时的、动态的分配一个1024以上的端口。

  {建立服务器}

分享到:
评论

相关推荐

    [Perl文]IO::Socket简介

    [Perl文]IO::Socket简介 ''''''''''''''''''' new()方法: SOCKET对象变量=IO::Socket::INET->new(SOCKET变量值); 实例: $sock=IO::Socket::INET->new('192.168.1.2:23'); 讲解: 所有的PERL对象编程都把对象...

    Socket简介

    Socket简介 简介 套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。...

    Web Socket简介

    ### Web Socket简介及应用 #### 一、WebSocket概述 WebSocket是一种新型的通信协议,它作为HTML5中的一个重要组成部分,为Web开发带来了革命性的变化。在介绍WebSocket之前,我们需要回顾一下Web开发的历史,尤其...

    http和socket简介和对比

    - 建立 Socket 连接涉及服务器监听、客户端请求和连接确认三个步骤,与 TCP 连接类似,但更底层,可自定义协议和处理方式。 4. **Socket 连接与 TCP 连接的对比**: - HTTP 是基于 Socket 实现的应用层协议,提供...

    Socket简介及使用

    socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。我的理解就是Socket就是该模式的一个实现,socket即是一种特殊的文件,一些...

    SuperSocket客户端+服务端完整demo

    SuperSocket简介** SuperSocket设计的目标是让开发者能够快速搭建网络应用,它支持自定义协议,可以轻松地处理各种业务逻辑。框架的核心组件包括SocketServer和SocketAppServer,前者用于处理基础的Socket通信,后...

    HP-Socket压力测试 易源代码

    一、HP-Socket简介 HP-Socket是一个C++编写的网络通信库,它提供了丰富的API接口,支持TCP、UDP等多种网络协议。该框架不仅具备多线程处理能力,还支持异步事件驱动模型,以实现高效的网络通信。其易源代码的特点...

    C#编写socket做服务器和客户端例子

    一、Socket简介 Socket是网络通信的基础接口,它允许应用程序通过Internet进行通信。在C#中,System.Net.Sockets命名空间提供了Socket类,用于实现TCP和UDP协议。TCP(传输控制协议)提供面向连接的、可靠的数据传输...

    Socket说明文档(英文版)

    #### 一、Socket简介 **Socket** 是一种网络通信方式,它允许两台计算机之间进行数据交换。在互联网世界里,Socket 的历史远远早于 Java 语言的诞生,但 Java 使得 Socket 的使用变得更加简单高效。本章节将详细...

    lua socket 支持lua SOCKET编程

    1. **Lua Socket简介** Lua Socket是一个由Diego Nehab开发的开源库,其目标是为Lua提供一个易于使用的网络编程接口。它基于Lua的简洁语法,使得开发者可以快速地创建网络应用程序,如Web服务器、客户端、代理等。 ...

    判断Socket是否断开的小代码

    #### Socket简介 Socket是应用层与传输层之间的一个抽象层,用于实现网络应用程序之间的通信。它可以理解为两个应用程序之间的一个端到端的连接。在TCP/IP协议族中,Socket通常被用来实现客户端与服务器之间的通信...

    WPF Socket 服务协议

    2. **Socket简介**: Socket是操作系统提供的接口,它允许应用程序实现进程间的网络通信。Socket可以基于TCP(面向连接,可靠传输)或者UDP(无连接,尽力而为传输)。 **二、WPF中集成Socket** 在WPF项目中,我们...

    socket_socket_

    **一、Socket简介** Socket,又称套接字,是网络通信的基本单元,它提供了进程间的通信能力,允许不同机器上的程序通过网络进行交互。Socket分为两种类型:流式套接字(Stream Sockets, TCP)和数据报套接字...

    SuperSocket

    SuperSocket简介 SuperSocket旨在简化套接字服务器的开发流程,提供了一种面向对象的模型,允许开发者专注于业务逻辑,而不是底层的网络通信细节。它支持自定义协议,可以轻松处理多种网络协议,如HTTP、FTP、TCP...

    SuperSocket通讯.rar

    一、SuperSocket简介 SuperSocket设计初衷是为了简化基于TCP/IP协议的网络通信开发,它提供了一套完整的解决方案,包括服务端和客户端的实现,使得开发者可以专注于业务逻辑,而无需关心底层通信细节。SuperSocket...

    ios手机socket服务端源码

    **Socket简介** Socket,又称套接字,是网络编程的基本接口,它为应用程序提供了网络通信的能力。Socket允许两个或多个设备通过TCP/IP协议进行数据传输。在iOS开发中,我们通常使用C语言风格的低级API(如CFStream)...

    opnet中Socket接口模块开发文档.doc

    1. **Socket简介** - Socket起源于UNIX系统的4BSD版本,用于进程间的通信。在网络环境中,Socket成为了TCP/IP协议族的一部分,为开发网络应用程序提供了便利。 - Socket是一个通信端点,它包含了IP地址和端口号,...

    SuperSocket1.6版本文档(中文).zip

    1. **SuperSocket简介**:文档首先会介绍SuperSocket的基本概念,包括其设计理念、核心功能和优点,例如它的轻量级特性、强大的插件机制以及对多线程和异步操作的支持。 2. **安装与配置**:详细步骤指导如何在C#...

Global site tag (gtag.js) - Google Analytics