`

基于TCP的Socket应用

阅读更多
TCP:Transmission Control Protocol 传输控制协议
UDP(User Datagram Protocol)用户数据报协议
Scoket的基本概念
    1.Socket,也就是俗称的套接字。
    2.Sun Java 中的定义:是运行在网络上的两个程序间双向通讯连接末端,它提供客户端和服务器端的连接通道。socket绑定于特定端口这样TCP层就知道将数据提供给哪个应用程序。
  3、字面上的理解,Socket的意思是"插座、孔",你还可以把它形象地理解为打电话用的电话机,你从听筒里听到对方声音,同时将声音通过话筒传给对方。

Socket编程实现原理(从连接的简历到连接的结束,每个socket应用都大致包括以下几个基本步骤):
    1、服务器端socket绑定于特定端口,服务器侦听socket等待连接请求;
    2、客户端向服务器和特定端口提交连接请求;
    3、服务器接受连接,产生一新的socket,绑定到另一端口,由此socket来处理和客户端的交互,服务器继续侦听原socket来接受其他客户端的连接请求;
    4、连接成功后客户端也产生一socket,并通过它来与服务器端通讯(注意客户端socket并不与特定端口绑定);
    5、接下来,服务器端和客户端就通过读取和写入各自的socket来进行通讯。

java中的Socket类
    java中提供两个类(在java.net包中)——Socket和ServrSocket来分别实现客户端和服务器端Scoket。但Socket的实际工作是由抽象类SocketImpl的实例来完成的,这其实是设计模式中AbstractFactory模式的一个应用。

ServerSocket类的常用构造器和主要方法:

ServerSocket(int port)在指定的端口号上产生一服务器端socket
Socket accept()
  侦听socket,接受连接
  Socket类的常见构造器和主要方法:
    Socket(String host, int port) 生成一socket并连接至指定的主机和端口
    InputStream getInputStream() 返回socket的输入流
  OutputStream getOuputStream() 返回socket的输出流
文章来自[SVN中文技术网]转发请保留本站地址:http://www.svn8.com/java/Socket/20080927/1022.html
分享到:
评论
1 楼 fjlyxx 2009-03-01  
有兴趣的可以看看飞鸽的设计思路 感觉还是不错的  用UDP去维护在线用户.

相关推荐

    VC学习笔记-基于TCP的socket编程

    ### 基于TCP的Socket编程在VC中的应用与实现 #### 一、知识点概览 在VC(Visual C++)环境下进行网络编程时,基于TCP的socket编程是实现客户端与服务器之间通信的重要方式之一。本文将从初始化、创建socket、绑定...

    基于TCP/IP的socket编程

    "基于TCP/IP的socket编程"是一个深入探讨如何使用socket接口进行网络通信的主题。Socket编程允许应用程序通过网络发送和接收数据,它是互联网上不同计算机之间交互的核心机制。 在给定的描述中,我们看到一个创新的...

    基于TCPsocket的文件传输程序

    本文将深入探讨基于TCPsocket的文件传输程序,重点解析标题和描述中的关键知识点,并以此为基础,分析提供的两个Python脚本:TCP_server_v2_0.py和client_v1_2.py。 首先,TCP是一种面向连接的、可靠的传输协议,它...

    基于tcp的socket编程

    在计算机网络中,TCP...总的来说,基于TCP的Socket编程是实现网络通信的基础,理解其原理和实践技巧对于开发可靠的网络应用至关重要。在实践中,开发者需要不断优化和调整,以适应各种网络环境和性能需求。

    基于TCP/IP协议的Socket编程

    基于TCP/IP协议的Socket编程 TCP/IP协议是网络通信协议的基础,它规定了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据传输...Java实现的Socket编程是基于TCP/IP协议的,可以满足各种网络应用的需求。

    基于TCP的Socket编程

    本文将深入探讨基于TCP的Socket编程,特别是以C++为编程语言的应用。适合对网络编程感兴趣的初学者,通过学习,你可以了解如何创建、连接和管理TCP套接字。 首先,TCP是一种面向连接的传输层协议,它提供了可靠的、...

    基于TCP的Socket编程服务器和客户端代码

    总结起来,基于TCP的Socket编程是构建网络应用的基础,涉及网络连接的建立、数据的可靠传输和通信链路的维护。通过`File_client.java`和`File_server.java`这两个文件,我们可以学习到如何在Java中实现TCP服务器和...

    基于TCP面向连接的 Socket网络编程实验

    4. 编写一个基于TCP面向连接的Socket网络应用程序,客户端发出数据请求命令,服务器响应并与客户端进行交互。 5. 应用相关软件进行简单的协议分析。 二、实验环境 1. Windows系列服务器 2. TCP/IP协议 3. 编程语言...

    基于TCP socket

    在“基于TCP的socket聊天”示例中,我们可能会创建一个简单的聊天应用,其中服务器端负责接收和广播消息,客户端则用于发送和接收消息。服务器端会不断循环,使用`accept()`等待新的连接,并使用`recv()`接收每个...

    基于TCP的SOCKET编程代码包

    本压缩包文件“基于TCP的SOCKET编程代码包”提供了多个关于TCP SOCKET编程的实例,适用于学习和开发网络通信应用。 首先,我们要理解SOCKET,它是网络编程中的基本接口,允许应用程序通过网络发送和接收数据。在...

    基于socket应用的TCP/Ip通讯

    本文将深入探讨基于Socket应用的TCP/IP通讯,包括其工作原理、实现方式以及如何通过服务端和客户端进行交互。 首先,TCP(Transmission Control Protocol)是一种面向连接的、可靠的传输层协议。它提供全双工通信,...

    Linux环境下基于TCP的Socket编程浅析

    ### Linux环境下基于TCP的Socket编程浅析 #### 摘要 本文主要探讨了Linux环境下基于TCP协议的Socket编程技术。Socket作为一种通用的进程间通信(IPC)方式,不仅适用于同一台计算机上的进程通信,也广泛应用于网络...

    SuperSocket-master_Socket基于TCP、UDP

    SuperSocket是一个高度可扩展且易于使用的.NET Socket服务端开发框架,它简化了基于Socket的网络应用开发过程。SuperSocket提供了丰富的API和强大的功能,使得开发者可以专注于业务逻辑,而无需关注底层网络通信的...

    基于Socket的UDP和TCP编程介绍

    本文详细介绍了基于Socket的UDP和TCP的编程原理和方法,适合于那些对UDP/TCP的socket编程不太清楚的同学

    基于TCP的Socket编程.pdf

    基于TCP的Socket编程是计算机网络通信中的一项核心技术,它允许两个网络应用程序之间进行数据交换。Socket是一种特殊的网络编程接口,而TCP(传输控制协议)是一种可靠的面向连接的协议。在这份“基于TCP的Socket...

    基于TCP/IP socket的局域网聊天系统

    总的来说,基于TCP/IP Socket的局域网聊天系统是网络编程的一个典型应用场景,它涵盖了网络通信的核心概念,同时展示了如何结合MFC进行用户界面设计。对于想要深入理解网络通信和Windows应用开发的IT从业者来说,这...

    精选_使用同一数据库基于TCP Socket和Websocket实现的相互即时通信系统_源码打包

    Socket是基于TCP协议的应用程序编程接口(API),允许应用程序通过网络进行通信。开发者使用TCP Socket可以创建客户端-服务器应用,实现数据的可靠传输。 而WebSocket是建立在TCP基础之上的一种协议,专为双向通信...

    多线程实现基于TCP的Socket通信.rar

    本项目“多线程实现基于TCP的Socket通信”聚焦于在Windows环境下,如何利用C++编程语言通过多线程技术来实现高效、稳定的网络连接。下面将详细阐述涉及的知识点。 1. **TCP协议**:TCP是一种面向连接的、可靠的、...

    WIN32 TCPsocket

    描述中提到的是一个基于QT5.1框架的项目,该项目包含了两个使用TCPsocket的对话框示例。QT是一个跨平台的C++图形用户界面应用程序开发框架,它提供了一套丰富的API,包括用于网络通信的部分。在QT5.1版本中,开发...

    TCP socket服务端代码 C#

    在IT行业中,网络通信是不可或缺的一部分,而TCP(Transmission Control Protocol)套接字则是实现可靠网络通信的关键组件。...同时,掌握这些技术对于开发基于移动网络的IoT(物联网)应用也非常重要。

Global site tag (gtag.js) - Google Analytics