音视频和数据传输的局域网通讯

   随着全球信息化进程的不断发展,越来越多的企业使用局域网来管理各种事务。但随着局域网的机器增多,软件的应用对局域网的信息吞吐、处理能力的要求也越高。为解决上述矛盾,就有必要设计一个在局域网里的ICQ,国内拥有领先音视频通讯技术的佰锐科技十年专注于“AnyChat”音视频开发平台,通过采用先进的H.264视频编解码技术和AAC音频编解码技术,改善P2P数据传输技术。通过该系统,进行文件传输,消息的发布,提高企业的工作效率。

  AnyChat音视频开系统基于TCP/IP网络协议,采用C/S模式,服务器端与数据库连接,客户端安装在不同电脑上可通过同一服务器实现数据通讯。

在研究和分析计算机TCP/IP网络协议基础上,在不同计算机之间实现数据通讯。采用TCP和UDP传输方式,编写客户端与服务器端网络软件。客户向服务器发出服务请求,服务器作出应答响应,服务器监听客户发出的请求,当客户提出连接请求后,服务器作出应答,并为客户提供相应的服务。

  该即时通的工作过程如下:当服务器开启时,用户从客户端登录,通过TCP/IP网络将输入的帐号和密码传到服务器,服务器从数据库中对应的数据表查找验证,若验证错误,返回错误提示信息;若验证通过,则登录AnyChat二次开发平台主页面。在进入主页面后,用户可通过输入对方AnyChat二次开发平台号查找其他用户且加对方为好友。两用户可通过点对点通讯实现文字聊天,语音视频聊天,文件传输等。

系统使用SQL Server 2000设计后台数据库,共设计了两张数据表:用户信息表和好友信息表。 用户信息数据表用于储存注册用户的信息,存储的信息包括:用户二次开发平台号(主键)、用户密码、用户昵称、性别、是否在线(1为在线,0为不在)、用户上线地址、国籍、省份、城市等。

  好友信息数据表,主要用于添加用户好友信息,用户登录时调用相关信息并显示。存储的信息包括:用户二次开发平台号、好友是否在线、好友在线地址、好友昵称。

  客户端包括七个模块:

  (1)登录模块:此模块实现客户端与服务器连接,用户登录时验证身份,验证通过则进入AnyChat二次开发平台主页面模块,并调取好友信息显示。

  (2)主页面模块:用户在登录模块验证身份通过后,从服务器调取好友信息,并在二次开发平台主页面上显示。

  (3)查找模块:该模块用于用户查找好友,输入对方帐号查找对方信息,并加为好友,与服务器连接并修改数据表的内容,在主页面上添加上新好友。

  (4)文字聊天模块:此模块实现用户间的点对点聊天,两客户端通过UDP连接,发送和接收文字信息,实现局域网文字聊天。

  (5)文件传输模块:此模块实现两客户端点对点文件传输,图片,文本文档及压缩包等均可传输。

  (6)语音视频聊天模块:此模块实现了语音和视频的捕获以及点对点传输功能。

  服务器端根据功能要求可分为以下三个模块:

  (1)服务器监听模块:用于回应客户端请求,包括登录回应,注册回应,调用好友信息回应等。

  (2)远程截图模块:此模块实现服务器端从上线的客户端获取IP地址后截取对方屏幕显示。

  (3)查询模块:此模块实现服务器端访问数据库并查询数据库信息。分为综合查询和详细查询功能。

  本系统软件采用模块化结构,由用户登录程序、用户注册程序、好友信息显示程序、好友查找程序、文字聊天程序、文件传输程序等子程序构成。其中,文件传输,语音视频聊天模块都具有独立性,可在单独设计后加入到整个系统中,其余各模块间需要服务器客户端相互连接同时调试才可实现。服务器端首先开启运行,在和客户端相互通讯实现基本功能。

原文地址:https://www.cnblogs.com/hsq0421/p/4236317.html