CN100574205C - 一种建立即时通信网络邻居的方法 - Google Patents
一种建立即时通信网络邻居的方法 Download PDFInfo
- Publication number
- CN100574205C CN100574205C CNB200510101692XA CN200510101692A CN100574205C CN 100574205 C CN100574205 C CN 100574205C CN B200510101692X A CNB200510101692X A CN B200510101692XA CN 200510101692 A CN200510101692 A CN 200510101692A CN 100574205 C CN100574205 C CN 100574205C
- Authority
- CN
- China
- Prior art keywords
- lan
- data packet
- address
- network
- area network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明适用于即时通信领域,提供了一种建立即时通信网络邻居的方法,所述方法包括下述步骤:1.1建立网络通讯接口;1.2通过所述网络通讯接口与局域网出口服务器交互,获取局域网内个人计算机IP地址列表;1.3向所述IP地址列表中的其他局域网用户客户端发送通信数据包,所述通信数据包中包括发送所述通信数据包的用户的用户标识,同时接收其他局域网用户客户端返回的响应数据包,并根据所述用户标识对所述响应数据包进行解析;1.4将响应数据包解析成功的局域网用户客户端加入到网络邻居列表。本发明通过建立即时通信网络邻居,可以在没有广域网的情况下实现局域网用户之间的文件传输、共享和信息沟通,提高用户的即时通信效率,降低企业服务器的通信压力。
Description
技术领域
本发明属于即时通信领域,尤其涉及在即时通信系统中查找、添加即时通信用户的方法。
背景技术
随着计算机网络的快速发展,即时通信(Instant Messenger,简称IM)系统已经成为用户普遍使用的通信工具,不仅在平时的休闲娱乐中,而且在用户的工作中得到广泛的使用。针对用户的多样化需求,即时通信软件提供了群组服务,即把具有同一特征或者同一类别的人群在一个虚拟的空间中进行通信。作为群组服务发展的典型形式,即时通信系统推出了针对中小企业的在线企业应用。在线企业的作用在于建立中小企业内部的沟通平台,通过该平台,用户可以进行工作上的交流与沟通,极大地提高了中小企业的信息化过程。
用户通过即时通信系统可以建立与现实企业中一致的群组结构,群组成员例如群组成员可以通过即时通信系统进行便利的交流与沟通。由于在现实工作环境中,群组成员基本上是处于一个本地局域网内,因此即时通信系统需要结合局域网实现在群组成员之间的交流。Windows操作系统中提供了网络邻居的功能,可以极大方便局域网用户之间进行文件共享。因此,如果在即时通信系统中使得用户可以添加其所在局域网的网络领域用户,一方面用户可以方便查找局域网内的即时通信用户,同时局域网用户之间可以通过即时通信系统在局域网内进行视频,语音传递以及文件共享等操作,从而减少企业服务器的压力。
发明内容
本发明的目的在于在即时通信系统中建立用户的网络邻居,从而提高用户的即时通信效率,减少企业服务器的压力。
为了实现发明目的,本发明提供了一种建立即时通信网络邻居的方法,所述方法包括下述步骤:
1.1登录即时通信系统;建立网络通讯接口;
1.2通过所述网络通讯接口与局域网出口服务器交互,获取局域网内个人计算机IP地址列表;
1.3根据所述IP地址列表中的每个客户端的IP地址以及约定的端口,生成发送数据的套接字接口并利用该套接字接口发送通信数据包,所述通信数据包中包括发送所述通信数据包的用户标识,同时建立新的接收套接字接口以接收其他局域网用户客户端返回的响应数据包,并根据所述用户标识对所述响应数据包进行解析;
1.4将响应数据包解析成功的局域网用户客户端加入到网络邻居列表。
所述步骤1.1进一步包括下述步骤:
2.1登录即时通信系统,获取局域网信息;
2.2将所述局域网信息中的局域网客户端IP地址列表与登录服务器返回的IP地址进行比较,判断是否处于局域网内,是则执行步骤2.3,否则结束;
2.3根据所述局域网信息获取出口服务器的对外IP地址,根据所述对外IP地址建立网络通讯接口。
所述步骤1.2进一步包括下述步骤:
3.1通过所述网络通讯接口向出口服务器发送获取局域网可用网络资源列表的请求;
3.2根据所述网络资源列表中每个资源的属性特征,选择网络资源为个人计算机的客户端,并将所述客户端的IP地址加入到所述局域网个人计算机IP地址列表中保存。
所述对响应数据包进行解析的步骤进一步包括下述步骤:
4.1判断响应数据包是否超时,是则结束,否则执行步骤3.2;
4.2判断响应数据包解析是否成功,是则执行步骤1.4,否则结束。
所述网络通讯接口基于NetBios。
本发明通过建立即时通信网络邻居,可以在没有广域网的情况下实现局域网用户之间的文件传输、共享和信息沟通,提高用户的即时通信效率,降低企业服务器的通信压力。
附图说明
图1是适用本发明的局域网的网络结构图;
图2是查找局域网即时通信用户的实现流程图;
图3是建立NetBios网络通讯接口的实现流程图;
图4是获取局域网PC客户端IP地址列表的实现流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明通过建立即时通信系统的网络邻居,使得用户可以查看处于同一个局域网的即时通信用户,即IM软件的网络邻居,可以保证用户即使在不登录广域网的情况下,也能够在局域网内与网络邻居用户之间进行相互的信息交流、文件传输和共享。
图1示出了适用本发明的局域网的网络结构,多个局域网用户客户端通过UDP(User Datagram Protocol,用户数据报文协议)与登录服务器连接,实现即时通信时的相关协议命令传输。局域网用户客户端分别与局域网中的出口服务器相连,实现彼此之间的局域网通信连接,每个局域网用户客户端具有一个IP地址。典型的局域网用户客户端为个人计算机(Personal Computer,简称PC),包括台式电脑和便携式电脑等,操作系统为Windows操作系统,运行有即时通信应用软件系统,例如TM(Tencent Messenger)、MSN等,并通过即时通信应用软件系统与登录服务器相连,登录服务器是即时通信系统管理后台的入口,负责协议命令的分发。出口服务器负责局域网用户客户端的集中管理,局域网用户客户端通过出口服务器与外部网络连接。登录服务器和出口服务器可以是各种大、中、小型服务器。
图2示出了本发明提供的查找局域网即时通信用户的实现流程,详述如下:
在步骤S201中,获取局域网出口服务器的对外IP地址,根据该对外IP地址建立基于NetBios(网络基本输入/输出系统)的网络通讯接口。其中,NetBios是网络环境中普遍使用的协议,是接入网络服务的接口标准,提供了网络程序之间相互通讯及传输数据的方法。NetBios允许程序和网络会话,使程序和局域网操作能力之间的接口标准化。通过使用NetBios的数据报或广播方式,在NetBios局域网上的PC客户端建立会话彼此联络;
在步骤S202中,通过上述网络通信接口与出口服务器交互,获取局域网内PC客户端IP地址列表;
在步骤S203中,根据局域网内PC客户端IP地址列表中每个PC客户端的IP地址以及约定的PORT端口,生成发送数据的套接字接口,发送通信数据包,数据包中包括该用户的用户标识,如即时通信标识码或者通信昵称等;
在步骤S204中,在向其他局域网用户客户端发送通信数据包的同时,开启一个新线程,建立新的接收套接字,接收其他局域网用户客户端返回的响应数据包,响应数据包中包括发送通信数据包的用户的用户标识;
在步骤S205中,判断响应数据包是否超时,是则结束,否则执行步骤S206;
在步骤S206中,根据响应数据包中的用户标识判断响应数据包解析是否成功,如果能够正确解析出数据包中的用户标识,而且与发送的通信数据包中的用户标识一致,则表明解析成功,响应数据包解析成功后执行步骤S207,否则结束。
在步骤S207中,将响应数据包解析成功的局域网用户客户端加入网络邻 居列表中,并显示给用户,用户可以通过即时通信系统与网络邻居进行相应的文件交换和共享等操作。
图3示出了局域网用户客户端建立NetBios网络通讯接口的实现流程,详述如下:
在步骤S301中,用户成功登录即时通信系统后,利用Windows套接字相关API(Application Programming Interface,应用程序接口)获取客户端的本地IP地址,同时利用Windows套接字API转换IP地址获取到本地主机器名,同时利用本地主机器名获取局域网信息;
在步骤S302中,将局域网信息中的局域网客户端IP地址列表与登录服务器返回的IP地址进行比较,判断是否具有相同的IP地址,如果相同则表示不处于局域网内,流程结束;否则表示处于局域网内,并执行步骤S303;
在步骤S303中,利用Windows套接字API根据获得的局域网信息得到局域网中出口服务器的对外呈现IP地址,根据该对外IP地址建立基于NetBios的网络通讯接口。
图4示出了局域网用户客户端获取局域网PC客户端IP地址列表的实现流程,详述如下:
在步骤S401中,通过NetBios网络通讯接口向出口服务器发送获取本地局域网内部可用网络资源列表的请求,该网络资源列表不仅包括本局域网内部的PC客户端,而且还可能包括具有IP地址的网络打印机、传真机等设备;
在步骤S402中,根据网络资源列表中每个资源的属性特征,排除非PC客户端的网络资源,获得PC客户端的计算机名称,通过计算机名称解析出客户端的IP地址,并将客户端的IP地址存放在局域网PC客户端IP地址列表中保存。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包括在本发明的保护范围之内。
Claims (5)
1、一种建立即时通信网络邻居的方法,其特征在于,所述方法包括下述步骤:
1.1登录即时通信系统;建立网络通讯接口;
1.2通过所述网络通讯接口与局域网出口服务器交互,获取局域网内个人计算机IP地址列表;
1.3根据所述IP地址列表中的每个客户端的IP地址以及约定的端口,生成发送数据的套接字接口并利用该套接字接口发送通信数据包,所述通信数据包中包括发送所述通信数据包的用户标识,同时建立新的接收套接字接口以接收其他局域网用户客户端返回的响应数据包,并根据所述用户标识对所述响应数据包进行解析;
1.4将响应数据包解析成功的局域网用户客户端加入到网络邻居列表。
2、如权利要求1所述的方法,其特征在于,所述步骤1.1进一步包括下述步骤:
2.1登录即时通信系统,获取局域网信息;
2.2将所述局域网信息中的局域网客户端IP地址列表与登录服务器返回的IP地址进行比较,判断是否处于局域网内,是则执行步骤2.3,否则结束;
2.3根据所述局域网信息获取出口服务器的对外IP地址,根据所述对外IP地址建立网络通讯接口。
3、如权利要求1所述的方法,其特征在于,所述步骤1.2进一步包括下述步骤:
3.1通过所述网络通讯接口向出口服务器发送获取局域网可用网络资源列表的请求;
3.2根据所述网络资源列表中每个资源的属性特征,选择网络资源为个人计算机的客户端,并将所述客户端的IP地址加入到所述局域网个人计算机IP地址列表中保存。
4、如权利要求1所述的方法,其特征在于,所述对响应数据包进行解析的步骤进一步包括下述步骤:
4.1判断响应数据包是否超时,是则结束,否则执行步骤3.2;
4.2判断响应数据包解析是否成功,是则执行步骤1.4,否则结束。
5、如权利要求1至4任一权利所述的方法,其特征在于,所述网络通讯接口基于NetBios。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510101692XA CN100574205C (zh) | 2005-11-19 | 2005-11-19 | 一种建立即时通信网络邻居的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510101692XA CN100574205C (zh) | 2005-11-19 | 2005-11-19 | 一种建立即时通信网络邻居的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1968118A CN1968118A (zh) | 2007-05-23 |
CN100574205C true CN100574205C (zh) | 2009-12-23 |
Family
ID=38076687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510101692XA Active CN100574205C (zh) | 2005-11-19 | 2005-11-19 | 一种建立即时通信网络邻居的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100574205C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146051B (zh) * | 2007-11-07 | 2011-08-03 | 腾讯科技(深圳)有限公司 | 一种企业级即时通信互联系统及其实现企业互联的方法 |
CN103391205B (zh) * | 2012-05-08 | 2017-06-06 | 阿里巴巴集团控股有限公司 | 群组通信信息的发送方法、客户端 |
CN103281681B (zh) * | 2013-05-09 | 2017-03-01 | 天津三星通信技术研究有限公司 | 用于在局域网内处理移动通信相关信息的终端及其方法 |
CN105991386B (zh) * | 2015-01-28 | 2020-04-07 | 阿里巴巴集团控股有限公司 | 计算机与终端的连接方法、装置及系统 |
CN106656740A (zh) * | 2016-09-12 | 2017-05-10 | 聚好看科技股份有限公司 | 一种建立好友关系的方法、设备和服务器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1440159A (zh) * | 2003-03-31 | 2003-09-03 | 中国科学院计算机网络信息中心 | 层次式交换网络节点域的一种控制方法 |
CN1571423A (zh) * | 2003-07-19 | 2005-01-26 | 华为技术有限公司 | 不同链路层隔离域的邻居发现实现方法 |
WO2005099189A1 (en) * | 2004-04-05 | 2005-10-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Method, communication device and system for detecting neighboring nodes in a wireless multihop network using ndp |
-
2005
- 2005-11-19 CN CNB200510101692XA patent/CN100574205C/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1440159A (zh) * | 2003-03-31 | 2003-09-03 | 中国科学院计算机网络信息中心 | 层次式交换网络节点域的一种控制方法 |
CN1571423A (zh) * | 2003-07-19 | 2005-01-26 | 华为技术有限公司 | 不同链路层隔离域的邻居发现实现方法 |
WO2005099189A1 (en) * | 2004-04-05 | 2005-10-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Method, communication device and system for detecting neighboring nodes in a wireless multihop network using ndp |
Also Published As
Publication number | Publication date |
---|---|
CN1968118A (zh) | 2007-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1968117B (zh) | 一种即时通信中局域网用户加入群组通信的方法 | |
US8423676B2 (en) | System and method to associate a private user identity with a public user identity | |
CN101146051B (zh) | 一种企业级即时通信互联系统及其实现企业互联的方法 | |
CN101159714B (zh) | 一种即时通讯方法和装置 | |
CN101141420B (zh) | 私网与公网进行数据通信的方法及系统 | |
CN101465856B (zh) | 一种对用户进行访问控制的方法和系统 | |
CN100450001C (zh) | 快速建立在线企业以及加入在线企业的方法 | |
CN100556004C (zh) | 一种即时通讯系统中对群组消息接收方式的设置方法 | |
US20030126213A1 (en) | Establishing direct instant messaging communication between wireless devices | |
CN104811371B (zh) | 一种全新的即时通信系统 | |
CN103916296B (zh) | 一种融合局域网的通信系统 | |
CN100548004C (zh) | 一种搜索局域网内即时通信用户的方法 | |
CN100574205C (zh) | 一种建立即时通信网络邻居的方法 | |
CN1917512B (zh) | 一种建立对等直连通道的方法 | |
CN105490872A (zh) | 一种网络即时通讯数据信息实时监控系统及监控方法 | |
WO2009009967A1 (fr) | Système, composant et procédé de messagerie instantanée pour des services supplémentaires | |
CN106161186B (zh) | 即时通讯方法及装置 | |
US7680112B2 (en) | Peer-to-peer communication system | |
CN102045274B (zh) | 基于即时通信实现信息交互的方法和通信系统 | |
CN100411340C (zh) | 一种快速获取在线企业信息的方法及装置 | |
CN101079823A (zh) | 一种发起与组建虚拟讨论组的方法及系统 | |
CN105721274A (zh) | 一种多种即时通讯的融合方法及装置 | |
CN105049302B (zh) | 基于公共服务器的家居通信系统及通信方法 | |
CN101860544A (zh) | 会话启动协议消息的发送系统及方法 | |
CN100514977C (zh) | 一种群组成员添加方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |