Dolphin项目介绍

154 views
Skip to first unread message

Yantao Mei

unread,
Mar 11, 2008, 9:27:51 AM3/11/08
to 西邮linux兴趣小组, WANG Cong, chongri zhao
有一件事情我很想不通,为什么我们的软件和飞鸽兼容,并希望Win用户可以用……
窃以为,没必要。我们的目的是在提高我们技术水平的同时,将我们的软件做得更
有特色。
大概是我们的名字叫Pigeon吧!那么好吧,我决定把这个项目的名字改为
Dolphin,软件的简介和起名原因如下:


==========================================================================

Dolphin项目简介

Dolphin是一款免费的自由软件,它将会在GPLv3协议下被发布,任何组织或者个人
都可以在遵循GPLv3的基础上,修改Dolphin的代码来定制适合自己的通讯软件。

日本有一座海豚纪念雕像,纪念一只名叫奥罗的海豚。奥罗曾帮助当地渔民确定鱼
群所在的位置并带领渔民避开浅滩。

无独有偶,在新西兰也有两座海豚纪念雕像。其中一只海豚是领航员,它24年如一
日兢兢业业地工作,把不计其数的轮船从礁石险滩中带到了安全地带。另一只海豚
非常喜欢和人类玩耍。

我们的自由软件就如这些充满友爱的海豚,从人们认识它们的那一刻起,就在为了
自己的大爱,默默地为别人做贡献。海豚的超声波通讯方式,也像我们这款软件一
样,要在无尽的大海中,找到自己的朋友……

因此,我们的软件取了Dolphin这个名字。

我们选择了Qt4作为我们的开发工具。首先,因为C++是一种高效的语言,我们不必
为服务器端的效率而担忧。其次,Qt经过多年KDE开发的考验,已经相当成熟和健
壮了,而且可移植性非常好。此外,Qt4是在GPLv3协议下发布,这样,在法律上我
们不会遇到任何麻烦。软件中所有的通讯协议和基本构架,都将由我们在Qt4的基
础之上自主开发,我们不会参照任何专有软件的源代码和协议,当然,我们也不会
和诸如飞鸽传书等任何类似软件进行兼容。

在思想上,我们的目的在于给用户这样一种自由:任何用户都可以建立自己的聊天
服务器,他们可以自由的控制或限制登录到自己服务器上的所有客户端。而且,我
们将尽力而为地提供通讯的安全保证。

Dolphin具有如下的优点主要具有以下功能:

1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
Internet上的其他客户端进行通讯,这也就是说,Dolphin可以穿透NAT进行P2P通讯。

2.服务器是低负荷的。考虑到多数普通用户较难提供高性能服务器的现实,我们所
设计的服务器是低负荷的。服务器只是负责在有新用户加入(或退出)时通知其他
在线用户,至于客户端之间的通讯则是典型的P2P模式。

3.客户端之间可以发送和接受文本消息和图片,并能够高速地传输文件。

我们当前所面临的技术难点:1.如何有效地穿透NAT进行通讯;2.如何高速地实现
文件传输功能;3.如何自行对UDP数据报的收发情况进行容错检验。

限于我们的技术,我们目前只计划做这些事情,但是,我们很欢迎也很希望其他对
此有兴趣的开发人员加入我们,帮助我们,让我们一起把它做得更好。
====================================
======
我现在就尝试着将其翻译成英文,免得我直接写成陕西英语大家看不明白。
希望大家帮助,谢谢!

Yantao Mei

unread,
Mar 11, 2008, 9:43:32 AM3/11/08
to 西邮linux兴趣小组, WANG Cong, chongri zhao, Jinajun Kong
貌似google的语言工具又比以前好用了许多:

Dolphin project profiles

Dolphin is a free free software, it will be in the GPLv3 released under
the agreement, any organization or individual can be followed in the
GPLv3 on the basis of Dolphin amend the code to customize the software
for their own communications.

Japan has a statue commemorating the dolphins, the dolphins to
commemorate a Mingjiaoaoluo. Yuluo help local fishermen have identified
the location of fish and fishermen led avoid shoals.

Coincidentally, in New Zealand also have two dolphins Memorial statue.
Navigator which is a dolphin, as long as its 24 dedicated work of the
countless vessels from the rocky shoals of taken to a secure location.
Another dolphin love and human play.

Our free software such as full of love dolphins, it is recognized from
the moment they start on their own in order to love silently for others
to make contributions. Ultrasonic dolphin communication, as we have the
software, in the endless sea, find their friends……
Therefore, our software from the Dolphin name.

We have chosen Qt4 as our development tools. First of all, because C + +
is a highly effective, and we do not have the efficiency of the server
to worry about. Secondly, after years of Qt KDE development of the test
has been quite mature and robust, and portability very good. In
addition, Qt4 in GPLv3 is released under the agreement, so that in law
we will not face any trouble. All of the communications software and
basic framework of the agreement, we Qt4 will be on the basis of
self-development, we will not refer any proprietary software and the
source code of an agreement, of course, we would not like Dove and any
similar-books software compatibility.

Ideologically, and our aim is to the user of such a freedom: any user
can create their own chat server, they can control or restrict the
freedom of their own server log of all client. Moreover, we will do our
best to provide communications security assurances.

Dolphin has the following main advantages are the following features:

1. As long as there is a public IP network server, each client can
directly connect to the Internet to all the other client communications,
that is to say, a Dolphin could penetrate NAT P2P communications.

2. Server load is low. Considering that most ordinary users more
difficult to deliver high-performance server reality, and we designed
the server load is low. Server is responsible for a new user to join in
(or out), notify the other online users, as for communication between
the client is a typical P2P model.

3. Between the clients,users can send and receive text messages and
pictures, and are able to transmit high-speed document.

We faced by the current technical difficulties: 1. How to effectively
communicate through NAT 2. How to achieve high-speed file transfer
function; 3. How self-reported data on UDP situation fault-tolerant
transceiver test.

Limited to our technology, we currently only has plans to do these
things, but we also very much welcome this very much hope that other
interested developers to join us, help us, let us put it better.


WANG Cong

unread,
Mar 11, 2008, 9:53:21 AM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Tue, 11 Mar 2008 21:27:51 +0800

> 有一件事情我很想不通,为什么我们的软件和飞鸽兼容,并希望Win用户可以用……
> 窃以为,没必要。我们的目的是在提高我们技术水平的同时,将我们的软件做得更
> 有特色。
> 大概是我们的名字叫Pigeon吧!那么好吧,我决定把这个项目的名字改为
> Dolphin,软件的简介和起名原因如下:
>
>
> ==========================================================================
>
> Dolphin项目简介
>
> Dolphin是一款免费的自由软件,它将会在GPLv3协议下被发布,任何组织或者个人
> 都可以在遵循GPLv3的基础上,修改Dolphin的代码来定制适合自己的通讯软件。
>
> 日本有一座海豚纪念雕像,纪念一只名叫奥罗的海豚。奥罗曾帮助当地渔民确定鱼
> 群所在的位置并带领渔民避开浅滩。
>
> 无独有偶,在新西兰也有两座海豚纪念雕像。其中一只海豚是领航员,它24年如一
> 日兢兢业业地工作,把不计其数的轮船从礁石险滩中带到了安全地带。另一只海豚
> 非常喜欢和人类玩耍。
>
> 我们的自由软件就如这些充满友爱的海豚,从人们认识它们的那一刻起,就在为了
> 自己的大爱,默默地为别人做贡献。海豚的超声波通讯方式,也像我们这款软件一
> 样,要在无尽的大海中,找到自己的朋友……
>
> 因此,我们的软件取了Dolphin这个名字。

COOOOOOOOOOOOOOOOOOOOOL!! 8-)

是你自己想的吗?太棒了!我投赞同票!(除了担心可能有重名)




>
> 我们选择了Qt4作为我们的开发工具。首先,因为C++是一种高效的语言,我们不必
> 为服务器端的效率而担忧。其次,Qt经过多年KDE开发的考验,已经相当成熟和健
> 壮了,而且可移植性非常好。此外,Qt4是在GPLv3协议下发布,这样,在法律上我
> 们不会遇到任何麻烦。软件中所有的通讯协议和基本构架,都将由我们在Qt4的基
> 础之上自主开发,我们不会参照任何专有软件的源代码和协议,当然,我们也不会
> 和诸如飞鸽传书等任何类似软件进行兼容。
>
> 在思想上,我们的目的在于给用户这样一种自由:任何用户都可以建立自己的聊天
> 服务器,他们可以自由的控制或限制登录到自己服务器上的所有客户端。而且,我
> 们将尽力而为地提供通讯的安全保证。
>
> Dolphin具有如下的优点主要具有以下功能:
>
> 1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
> Internet上的其他客户端进行通讯,这也就是说,Dolphin可以穿透NAT进行P2P通讯。
>


需要单独的服务器端??不是把服务器和客户端集成到一起吗?


WANG Cong

unread,
Mar 11, 2008, 10:03:09 AM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com, kongj...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Tue, 11 Mar 2008 21:43:32 +0800

{snip}
> 貌似google的语言工具又比以前好用了许多:
>
> Dolphin project profiles

introduction

>
> Dolphin is a free free software, it will be in the GPLv3 released under

free重复

it will be released under the terms of GPLv3 or later.


> the agreement, any organization or individual can be followed in the
> GPLv3 on the basis of Dolphin amend the code to customize the software
> for their own communications.
>
> Japan has a statue commemorating the dolphins, the dolphins to


这句也不通哦。


> commemorate a Mingjiaoaoluo. Yuluo help local fishermen have identified
> the location of fish and fishermen led avoid shoals.
>
> Coincidentally, in New Zealand also have two dolphins Memorial statue.

there are also two...

> Navigator which is a dolphin, as long as its 24 dedicated work of the
> countless vessels from the rocky shoals of taken to a secure location.
> Another dolphin love and human play.

这句语法错误。


>
> Our free software such as full of love dolphins, it is recognized from
> the moment they start on their own in order to love silently for others
> to make contributions. Ultrasonic dolphin communication, as we have the
> software, in the endless sea, find their friends……
> Therefore, our software from the Dolphin name.

Therefore, we give our software the name "Dolphin".

>
> We have chosen Qt4 as our development tools. First of all, because C + +
> is a highly effective, and we do not have the efficiency of the server
> to worry about. Secondly, after years of Qt KDE development of the test

of the test不对

> has been quite mature and robust, and portability very good. In

...is very good.


> addition, Qt4 in GPLv3 is released under the agreement, so that in law
> we will not face any trouble. All of the communications software and
> basic framework of the agreement, we Qt4 will be on the basis of
> self-development, we will not refer any proprietary software and the
> source code of an agreement, of course, we would not like Dove and any
> similar-books software compatibility.
>
> Ideologically, and our aim is to the user of such a freedom: any user
> can create their own chat server, they can control or restrict the
> freedom of their own server log of all client. Moreover, we will do our
> best to provide communications security assurances.
>
> Dolphin has the following main advantages are the following features:

...and the following features:

>
> 1. As long as there is a public IP network server, each client can
> directly connect to the Internet to all the other client communications,
> that is to say, a Dolphin could penetrate NAT P2P communications.
>
> 2. Server load is low. Considering that most ordinary users more
> difficult to deliver high-performance server reality, and we designed
> the server load is low. Server is responsible for a new user to join in
> (or out), notify the other online users, as for communication between
> the client is a typical P2P model.
>
> 3. Between the clients,users can send and receive text messages and
> pictures, and are able to transmit high-speed document.
>
> We faced by the current technical difficulties: 1. How to effectively

We have these technical difficulties currently.


> communicate through NAT 2. How to achieve high-speed file transfer
> function; 3. How self-reported data on UDP situation fault-tolerant
> transceiver test.
>
> Limited to our technology, we currently only has plans to do these

s/has/have/

> things, but we also very much welcome this very much hope that other

这句也不通。

> interested developers to join us, help us, let us put it better.



机器能翻译到这种程度也很不错了。 ;)

Yantao Mei

unread,
Mar 11, 2008, 10:09:52 AM3/11/08
to WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Tue, 11 Mar 2008 21:27:51 +0800
>
>
>> 有一件事情我很想不通,为什么我们的软件和飞鸽兼容,并希望Win用户可以用……
>> 窃以为,没必要。我们的目的是在提高我们技术水平的同时,将我们的软件做得更
>> 有特色。
>> 大概是我们的名字叫Pigeon吧!那么好吧,我决定把这个项目的名字改为
>> Dolphin,软件的简介和起名原因如下:
>>
>>
>> ==========================================================================
>>
>> Dolphin项目简介
>>
>> Dolphin是一款免费的自由软件,它将会在GPLv3协议下被发布,任何组织或者个人
>> 都可以在遵循GPLv3的基础上,修改Dolphin的代码来定制适合自己的通讯软件。
>>
>> 日本有一座海豚纪念雕像,纪念一只名叫奥罗的海豚。奥罗曾帮助当地渔民确定鱼
>> 群所在的位置并带领渔民避开浅滩。
>>
>> 无独有偶,在新西兰也有两座海豚纪念雕像。其中一只海豚是领航员,它24年如一
>> 日兢兢业业地工作,把不计其数的轮船从礁石险滩中带到了安全地带。另一只海豚
>> 非常喜欢和人类玩耍。
>>
>> 我们的自由软件就如这些充满友爱的海豚,从人们认识它们的那一刻起,就在为了
>> 自己的大爱,默默地为别人做贡献。海豚的超声波通讯方式,也像我们这款软件一
>> 样,要在无尽的大海中,找到自己的朋友……
>>
>> 因此,我们的软件取了Dolphin这个名字。
>>
>
> COOOOOOOOOOOOOOOOOOOOOL!! 8-)
>
> 是你自己想的吗?太棒了!我投赞同票!(除了担心可能有重名)
>
真的吗?是我自己想的,不过我也不知道有没有重名。搜搜……
貌似有,不过没有和我们类似的。这个算不算:
http://www.datadolphin.com/Support/Tech%20Notes/DD-128%20Datalogger/DD0202.pdf

>
>
>
>
>> 我们选择了Qt4作为我们的开发工具。首先,因为C++是一种高效的语言,我们不必
>> 为服务器端的效率而担忧。其次,Qt经过多年KDE开发的考验,已经相当成熟和健
>> 壮了,而且可移植性非常好。此外,Qt4是在GPLv3协议下发布,这样,在法律上我
>> 们不会遇到任何麻烦。软件中所有的通讯协议和基本构架,都将由我们在Qt4的基
>> 础之上自主开发,我们不会参照任何专有软件的源代码和协议,当然,我们也不会
>> 和诸如飞鸽传书等任何类似软件进行兼容。
>>
>> 在思想上,我们的目的在于给用户这样一种自由:任何用户都可以建立自己的聊天
>> 服务器,他们可以自由的控制或限制登录到自己服务器上的所有客户端。而且,我
>> 们将尽力而为地提供通讯的安全保证。
>>
>> Dolphin具有如下的优点主要具有以下功能:
>>
>> 1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
>> Internet上的其他客户端进行通讯,这也就是说,Dolphin可以穿透NAT进行P2P通讯。
>>
>>
>
>
> 需要单独的服务器端??不是把服务器和客户端集成到一起吗?
>
集成到一起,无法穿透NAT.至少我现有的知识告诉我:不能。
>
>

WANG Cong

unread,
Mar 11, 2008, 10:18:37 AM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Tue, 11 Mar 2008 22:09:52 +0800
The Data Dolphin model 200 provides the ability to remotely monitor, store and forward data from a variety of process or analytical instruments.

从描述来看应该不算重名。;-)


> >
> >
> >
> >
> >> 我们选择了Qt4作为我们的开发工具。首先,因为C++是一种高效的语言,我们不必
> >> 为服务器端的效率而担忧。其次,Qt经过多年KDE开发的考验,已经相当成熟和健
> >> 壮了,而且可移植性非常好。此外,Qt4是在GPLv3协议下发布,这样,在法律上我
> >> 们不会遇到任何麻烦。软件中所有的通讯协议和基本构架,都将由我们在Qt4的基
> >> 础之上自主开发,我们不会参照任何专有软件的源代码和协议,当然,我们也不会
> >> 和诸如飞鸽传书等任何类似软件进行兼容。
> >>
> >> 在思想上,我们的目的在于给用户这样一种自由:任何用户都可以建立自己的聊天
> >> 服务器,他们可以自由的控制或限制登录到自己服务器上的所有客户端。而且,我
> >> 们将尽力而为地提供通讯的安全保证。
> >>
> >> Dolphin具有如下的优点主要具有以下功能:
> >>
> >> 1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
> >> Internet上的其他客户端进行通讯,这也就是说,Dolphin可以穿透NAT进行P2P通讯。
> >>
> >>
> >
> >
> > 需要单独的服务器端??不是把服务器和客户端集成到一起吗?
> >
> 集成到一起,无法穿透NAT.至少我现有的知识告诉我:不能。

和NAT有关么?服务器如果在NAT里面也一样不能穿透吧?

Yantao Mei

unread,
Mar 11, 2008, 10:30:08 AM3/11/08
to WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com

“1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
Internet上的其他客户端进行通讯.”
服务器必须在公网上。
现在我们自己在家上网都有一个公网IP,不过没隔2小时左右就会改变一次。
我听建军说过,可以申请动态域名,没10分钟左右更新一次。如果普通用户需要的话,可以使用动态域名。客户端可以使用域名登录服务器,当然,这是未来用户们自己的事情。

>
> >
>

WANG Cong

unread,
Mar 11, 2008, 10:31:43 AM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Tue, 11 Mar 2008 22:30:08 +0800


{snip}

> >>>>
> >>> 需要单独的服务器端??不是把服务器和客户端集成到一起吗?
> >>>
> >>>
> >> 集成到一起,无法穿透NAT.至少我现有的知识告诉我:不能。
> >>
> >
> > 和NAT有关么?服务器如果在NAT里面也一样不能穿透吧?
> >
>
> “1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
> Internet上的其他客户端进行通讯.”
> 服务器必须在公网上。
> 现在我们自己在家上网都有一个公网IP,不过没隔2小时左右就会改变一次。
> 我听建军说过,可以申请动态域名,没10分钟左右更新一次。如果普通用户需要的话,可以使用动态域名。客户端可以使用域名登录服务器,当然,这是未来用户们自己的事情。
>

1. 如果在内网,那岂不是必须有一个服务器端才能使得两个客户端互相通信?

2. 我认为你做了服务器放到公网上才能穿透NAT还不如集成到一起。

---
Hi, I'm a .signature virus, please copy/paste me to help me spread
all over the world.

Yantao Mei

unread,
Mar 11, 2008, 10:57:58 AM3/11/08
to WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Tue, 11 Mar 2008 22:30:08 +0800
>
>
> {snip}
>
>
>>>>>>
>>>>>>
>>>>> 需要单独的服务器端??不是把服务器和客户端集成到一起吗?
>>>>>
>>>>>
>>>>>
>>>> 集成到一起,无法穿透NAT.至少我现有的知识告诉我:不能。
>>>>
>>>>
>>> 和NAT有关么?服务器如果在NAT里面也一样不能穿透吧?
>>>
>>>
>> “1.只要有一台具有公网IP的服务器,每个客户端都可以直接与所有能够连接到
>> Internet上的其他客户端进行通讯.”
>> 服务器必须在公网上。
>> 现在我们自己在家上网都有一个公网IP,不过没隔2小时左右就会改变一次。
>> 我听建军说过,可以申请动态域名,没10分钟左右更新一次。如果普通用户需要的话,可以使用动态域名。客户端可以使用域名登录服务器,当然,这是未来用户们自己的事情。
>>
>>
>
> 1. 如果在内网,那岂不是必须有一个服务器端才能使得两个客户端互相通信?
>
随便找个机器作服务器,这个在内网貌似不是什么难事,而且在内网里更容易找到
一个固定的IP。
而且,一台主机做服务器的同时,自己也可以打开一个客户端进行通讯。
> 2. 我认为你做了服务器放到公网上才能穿透NAT还不如集成到一起。
>
我也很想集成到一起,但是服务器最好只有一个,而且,服务器和客户端的功能是
完全不同的,它只负责管理用户的在线情况,并不参与任何消息的发送。因此,客
户端并不需要关心服务器的行为。
放到一起我还是觉得有点欠妥。

我起初所面向的用户是这样的:比如,在我们小组,我们可以要一个固定IP来作为
我们自己的服务器,我们其他同学不管在什么地方,都能够相互通讯。其他的组织
也可以像这样自己构架自己的即时通讯平台,而不必在依赖于QQ和MSN等工具。对
这些用户而言,使用Dolphin最大的好处就是:他们可以自己修改代码,为自己良
量身定制合适自己的平台,而不必受第三方组织在性能,功能和经济等方面的约束。

我觉个例子,我们不少同学在和企业签约后,都建了自己的QQ群。如果有了
Dolpin,他们完全可以自己构架和管理自己员工的行为和通讯。

对我们而言,可以学会很多知识,何乐而不为?

WANG Cong

unread,
Mar 11, 2008, 11:01:00 AM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Tue, 11 Mar 2008 22:57:58 +0800

<snip>

> >
> > 1. 如果在内网,那岂不是必须有一个服务器端才能使得两个客户端互相通信?
> >
> 随便找个机器作服务器,这个在内网貌似不是什么难事,而且在内网里更容易找到
> 一个固定的IP。
> 而且,一台主机做服务器的同时,自己也可以打开一个客户端进行通讯。

这对我们来说当然不难,但问题是这么做方便么?

假设我们两个都在一个内网中,我想和你通信,我打开客户端,发现连不上
服务器,因为服务器关了,所以我就得尝试自己开个服务器,然后再和你
连。想想如果很碰巧,咱们同时发现服务器连不上,同时开自己的服务器
会如何??


> > 2. 我认为你做了服务器放到公网上才能穿透NAT还不如集成到一起。
> >
> 我也很想集成到一起,但是服务器最好只有一个,而且,服务器和客户端的功能是
> 完全不同的,它只负责管理用户的在线情况,并不参与任何消息的发送。因此,客
> 户端并不需要关心服务器的行为。


集成到一起也可以管理在线情况啊。



> 放到一起我还是觉得有点欠妥。
>
> 我起初所面向的用户是这样的:比如,在我们小组,我们可以要一个固定IP来作为
> 我们自己的服务器,我们其他同学不管在什么地方,都能够相互通讯。其他的组织
> 也可以像这样自己构架自己的即时通讯平台,而不必在依赖于QQ和MSN等工具。对
> 这些用户而言,使用Dolphin最大的好处就是:他们可以自己修改代码,为自己良
> 量身定制合适自己的平台,而不必受第三方组织在性能,功能和经济等方面的约束。
>
> 我觉个例子,我们不少同学在和企业签约后,都建了自己的QQ群。如果有了
> Dolpin,他们完全可以自己构架和管理自己员工的行为和通讯。
>
> 对我们而言,可以学会很多知识,何乐而不为?

不是还有pidgin么?它也开源啊!不能打这样的广告。

Yantao Mei

unread,
Mar 11, 2008, 11:22:32 AM3/11/08
to WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Tue, 11 Mar 2008 22:57:58 +0800
>
> <snip>
>
>
>>> 1. 如果在内网,那岂不是必须有一个服务器端才能使得两个客户端互相通信?
>>>
>>>
>> 随便找个机器作服务器,这个在内网貌似不是什么难事,而且在内网里更容易找到
>> 一个固定的IP。
>> 而且,一台主机做服务器的同时,自己也可以打开一个客户端进行通讯。
>>
>
> 这对我们来说当然不难,但问题是这么做方便么?
>
> 假设我们两个都在一个内网中,我想和你通信,我打开客户端,发现连不上
> 服务器,因为服务器关了,所以我就得尝试自己开个服务器,然后再和你
> 连。想想如果很碰巧,咱们同时发现服务器连不上,同时开自己的服务器
> 会如何??
>
这种服务器的策略是假定有一个可用的,IP大家都知道的服务器的。
恩,如果非要说服务器关闭了,那么最多就是在客户端增加一个内网广播功能就可
以解决这个问题。

>
>
>>> 2. 我认为你做了服务器放到公网上才能穿透NAT还不如集成到一起。
>>>
>>>
>> 我也很想集成到一起,但是服务器最好只有一个,而且,服务器和客户端的功能是
>> 完全不同的,它只负责管理用户的在线情况,并不参与任何消息的发送。因此,客
>> 户端并不需要关心服务器的行为。
>>
>
>
> 集成到一起也可以管理在线情况啊。
>
每个人都有一个服务器,那么到底登录谁的呢?

>
>
>
>> 放到一起我还是觉得有点欠妥。
>>
>> 我起初所面向的用户是这样的:比如,在我们小组,我们可以要一个固定IP来作为
>> 我们自己的服务器,我们其他同学不管在什么地方,都能够相互通讯。其他的组织
>> 也可以像这样自己构架自己的即时通讯平台,而不必在依赖于QQ和MSN等工具。对
>> 这些用户而言,使用Dolphin最大的好处就是:他们可以自己修改代码,为自己良
>> 量身定制合适自己的平台,而不必受第三方组织在性能,功能和经济等方面的约束。
>>
>> 我觉个例子,我们不少同学在和企业签约后,都建了自己的QQ群。如果有了
>> Dolpin,他们完全可以自己构架和管理自己员工的行为和通讯。
>>
>> 对我们而言,可以学会很多知识,何乐而不为?
>>
>
> 不是还有pidgin么?它也开源啊!不能打这样的广告。
>
这个软件也允许用户使用自己的主机作为服务器吗?我没用过。我用的Linux聊天
工具,都是使用第三方的server,如ICQ\GTalk等。
呵呵,我没有打广告,我们不是商业组织,只是打个比方。
我觉得你说的也很有道理,我再仔细考虑一下,尽快给大家回复。

不过我现在最头疼的还是穿透NAT技术的问题,和压缩数据通讯问题。小金说深信
服那几个在线挑战,这个是最难的一个。
我在我们局域网里传输文件,目前为止,最快的就是使用smaba了,可以达到5M左
右,同样条件下,QQ只有500KB/s,这么看我们还有是很大发挥空间的。

WANG Cong

unread,
Mar 11, 2008, 9:51:23 PM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Tue, 11 Mar 2008 23:22:32 +0800

> WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>
> > Date: Tue, 11 Mar 2008 22:57:58 +0800
> >
> > <snip>
> >
> >
> >>> 1. 如果在内网,那岂不是必须有一个服务器端才能使得两个客户端互相通信?
> >>>
> >>>
> >> 随便找个机器作服务器,这个在内网貌似不是什么难事,而且在内网里更容易找到
> >> 一个固定的IP。
> >> 而且,一台主机做服务器的同时,自己也可以打开一个客户端进行通讯。
> >>
> >
> > 这对我们来说当然不难,但问题是这么做方便么?
> >
> > 假设我们两个都在一个内网中,我想和你通信,我打开客户端,发现连不上
> > 服务器,因为服务器关了,所以我就得尝试自己开个服务器,然后再和你
> > 连。想想如果很碰巧,咱们同时发现服务器连不上,同时开自己的服务器
> > 会如何??
> >
> 这种服务器的策略是假定有一个可用的,IP大家都知道的服务器的。
> 恩,如果非要说服务器关闭了,那么最多就是在客户端增加一个内网广播功能就可
> 以解决这个问题。


那不和是集成到一起差不多了?


> >
> >
> >>> 2. 我认为你做了服务器放到公网上才能穿透NAT还不如集成到一起。
> >>>
> >>>
> >> 我也很想集成到一起,但是服务器最好只有一个,而且,服务器和客户端的功能是
> >> 完全不同的,它只负责管理用户的在线情况,并不参与任何消息的发送。因此,客
> >> 户端并不需要关心服务器的行为。
> >>
> >
> >
> > 集成到一起也可以管理在线情况啊。
> >
> 每个人都有一个服务器,那么到底登录谁的呢?

先广播,如果有就登录那个,没有就自己开服务器。


> >
> >
> >
> >> 放到一起我还是觉得有点欠妥。
> >>
> >> 我起初所面向的用户是这样的:比如,在我们小组,我们可以要一个固定IP来作为
> >> 我们自己的服务器,我们其他同学不管在什么地方,都能够相互通讯。其他的组织
> >> 也可以像这样自己构架自己的即时通讯平台,而不必在依赖于QQ和MSN等工具。对
> >> 这些用户而言,使用Dolphin最大的好处就是:他们可以自己修改代码,为自己良
> >> 量身定制合适自己的平台,而不必受第三方组织在性能,功能和经济等方面的约束。
> >>
> >> 我觉个例子,我们不少同学在和企业签约后,都建了自己的QQ群。如果有了
> >> Dolpin,他们完全可以自己构架和管理自己员工的行为和通讯。
> >>
> >> 对我们而言,可以学会很多知识,何乐而不为?
> >>
> >
> > 不是还有pidgin么?它也开源啊!不能打这样的广告。
> >
> 这个软件也允许用户使用自己的主机作为服务器吗?我没用过。我用的Linux聊天
> 工具,都是使用第三方的server,如ICQ\GTalk等。
> 呵呵,我没有打广告,我们不是商业组织,只是打个比方。

我是针对你说的那个"可以自己修改代码"。


> 我觉得你说的也很有道理,我再仔细考虑一下,尽快给大家回复。
>
> 不过我现在最头疼的还是穿透NAT技术的问题,和压缩数据通讯问题。小金说深信
> 服那几个在线挑战,这个是最难的一个。


我们可以先不考虑穿透nat。

Yantao Mei

unread,
Mar 11, 2008, 10:23:47 PM3/11/08
to WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
如果使用广播,那么这种模式肯定是P2P对等方式的,就不存在客户机和服务器这
一说了。这样很方便用户使用,但是不能穿透内网。
而且,我有个问题一直说不清楚:广播到底算不算一种好的设计方式?如果在一个
有多太主机的内网中,每台主机都在以2s的周期广播,会不会增加网络的负荷?

>
>
>>>
>>>
>>>> 放到一起我还是觉得有点欠妥。
>>>>
>>>> 我起初所面向的用户是这样的:比如,在我们小组,我们可以要一个固定IP来作为
>>>> 我们自己的服务器,我们其他同学不管在什么地方,都能够相互通讯。其他的组织
>>>> 也可以像这样自己构架自己的即时通讯平台,而不必在依赖于QQ和MSN等工具。对
>>>> 这些用户而言,使用Dolphin最大的好处就是:他们可以自己修改代码,为自己良
>>>> 量身定制合适自己的平台,而不必受第三方组织在性能,功能和经济等方面的约束。
>>>>
>>>> 我觉个例子,我们不少同学在和企业签约后,都建了自己的QQ群。如果有了
>>>> Dolpin,他们完全可以自己构架和管理自己员工的行为和通讯。
>>>>
>>>> 对我们而言,可以学会很多知识,何乐而不为?
>>>>
>>>>
>>> 不是还有pidgin么?它也开源啊!不能打这样的广告。
>>>
>>>
>> 这个软件也允许用户使用自己的主机作为服务器吗?我没用过。我用的Linux聊天
>> 工具,都是使用第三方的server,如ICQ\GTalk等。
>> 呵呵,我没有打广告,我们不是商业组织,只是打个比方。
>>
>
> 我是针对你说的那个"可以自己修改代码"。
>
>
>
>> 我觉得你说的也很有道理,我再仔细考虑一下,尽快给大家回复。
>>
>> 不过我现在最头疼的还是穿透NAT技术的问题,和压缩数据通讯问题。小金说深信
>> 服那几个在线挑战,这个是最难的一个。
>>
>
>
> 我们可以先不考虑穿透nat。
>
那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
到的不同。
大家的意思呢?

WANG Cong

unread,
Mar 11, 2008, 10:42:50 PM3/11/08
to meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 10:23:47 +0800

{snip}

> >> 每个人都有一个服务器,那么到底登录谁的呢?
> >>
> >
> > 先广播,如果有就登录那个,没有就自己开服务器。
> >
> 如果使用广播,那么这种模式肯定是P2P对等方式的,就不存在客户机和服务器这
> 一说了。这样很方便用户使用,但是不能穿透内网。
> 而且,我有个问题一直说不清楚:广播到底算不算一种好的设计方式?如果在一个
> 有多太主机的内网中,每台主机都在以2s的周期广播,会不会增加网络的负荷?


我说的只是在登录时广播,登录后就不需要了。


{snip}

> >> 我觉得你说的也很有道理,我再仔细考虑一下,尽快给大家回复。
> >>
> >> 不过我现在最头疼的还是穿透NAT技术的问题,和压缩数据通讯问题。小金说深信
> >> 服那几个在线挑战,这个是最难的一个。
> >>
> >
> >
> > 我们可以先不考虑穿透nat。
> >
> 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
> 到的不同。

我不认为。


> 大家的意思呢?
>

到底有几个人参与这个项目?怎么就咱两个人讨论??

金明洁

unread,
Mar 11, 2008, 11:18:53 PM3/11/08
to WANG Cong, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com, kongj...@gmail.com
在 08-3-11,WANG Cong<xiyou.w...@gmail.com> 写道:

那些都是机器翻译的?太不可思议的智能化了!
--
====================================
这些墙很有趣。刚入狱的时候,你痛恨周围的高墙;慢慢地,你习惯了生活在其中;最终你会发现自己不得不依靠它而生存。这就叫体制化。
just do it !
====================================

Yantao Mei

unread,
Mar 12, 2008, 12:25:50 AM3/12/08
to WANG Cong, 西邮linux兴趣小组
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Wed, 12 Mar 2008 11:33:24 +0800

>
>
>> WANG Cong wrote:
>>
>>> From: Yantao Mei <meiyan...@gmail.com>
>>> Date: Wed, 12 Mar 2008 10:23:47 +0800
>>>
>>> {snip}
>>>
>>>
>>>
>>>>>> 每个人都有一个服务器,那么到底登录谁的呢?
>>>>>>
>>>>>>
>>>>>>
>>>>> 先广播,如果有就登录那个,没有就自己开服务器。
>>>>>
>>>>>
>>>>>
>>>> 如果使用广播,那么这种模式肯定是P2P对等方式的,就不存在客户机和服务器这
>>>> 一说了。这样很方便用户使用,但是不能穿透内网。
>>>> 而且,我有个问题一直说不清楚:广播到底算不算一种好的设计方式?如果在一个
>>>> 有多太主机的内网中,每台主机都在以2s的周期广播,会不会增加网络的负荷?
>>>>
>>>>
>>> 我说的只是在登录时广播,登录后就不需要了。
>>>
>>>
>> 这个我想过,如果用户突然掉线了,如何通知其他用户这个用户已经不再?“鸵鸟
>> 策略”吗?
>>
>
>
> 我认为也不需要广播,只要作为“服务器”的那个定时向在线的用户发送
> 探测信息就够了,当然它探测到一个用户下线后应该通知其它用户。
>

我明白你的意思了,你就是说在内网里要让客户端自动搜出Server,来使用户更加
方便使用,是吗?
但是,如果集成到一起,那么每个客户端都是一个独立的Server,如何决定使用哪
个作为公共的Server呢?
> 不过一般情况是一个用户正常退出,这时我们可以让它主动向所有
> 在线用户发送通知信息。
>
如果这个用户不是正常退出的呢?比如掉线、死机等情况发生?

如果集成到一起,能够想个好的算法让每个用户自己在内网寻找大家公认的
"Server",而此Server如果遇到异常,用户能够自己找到一个后备的Server来继续
保持连接(这一切对用户来讲都是透明的),那样的话的确是个好主意。
但是,外网的情况怎么办?而且要找到这个内网Server不是还要广播么?
传统的CS模式都要求所有客户端都事前知道一个固定的Server地址和Port,我们这
种想法却不要求用户知道一个“周知IP地址”是不是太离经叛道了?


>
>
>>> {snip}
>>>
>>>
>>>
>>>>>> 我觉得你说的也很有道理,我再仔细考虑一下,尽快给大家回复。
>>>>>>
>>>>>> 不过我现在最头疼的还是穿透NAT技术的问题,和压缩数据通讯问题。小金说深信
>>>>>> 服那几个在线挑战,这个是最难的一个。
>>>>>>
>>>>>>
>>>>>>
>>>>> 我们可以先不考虑穿透nat。
>>>>>
>>>>>
>>>>>
>>>> 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
>>>> 到的不同。
>>>>
>>>>
>>> 我不认为。
>>>
>>>

>> 广播式的内网模式是纯粹的P2P模式,而我所谓的外网模式是典型的CS模式。各个
>> 用户之间的联系由服务器来帮助他们统一建立。
>>
>
>
> 你那个外网模式太不方便了。
>
{snip}

WANG Cong

unread,
Mar 12, 2008, 12:28:19 AM3/12/08
to meiyan...@gmail.com, xiyou...@googlegroups.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 12:25:50 +0800

> WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>
> > Date: Wed, 12 Mar 2008 11:33:24 +0800
> >
> >
> >> WANG Cong wrote:
> >>
> >>> From: Yantao Mei <meiyan...@gmail.com>
> >>> Date: Wed, 12 Mar 2008 10:23:47 +0800
> >>>
> >>> {snip}
> >>>
> >>>
> >>>
> >>>>>> 每个人都有一个服务器,那么到底登录谁的呢?
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>> 先广播,如果有就登录那个,没有就自己开服务器。
> >>>>>
> >>>>>
> >>>>>
> >>>> 如果使用广播,那么这种模式肯定是P2P对等方式的,就不存在客户机和服务器这
> >>>> 一说了。这样很方便用户使用,但是不能穿透内网。
> >>>> 而且,我有个问题一直说不清楚:广播到底算不算一种好的设计方式?如果在一个
> >>>> 有多太主机的内网中,每台主机都在以2s的周期广播,会不会增加网络的负荷?
> >>>>
> >>>>
> >>> 我说的只是在登录时广播,登录后就不需要了。
> >>>
> >>>
> >> 这个我想过,如果用户突然掉线了,如何通知其他用户这个用户已经不再?“鸵鸟
> >> 策略”吗?
> >>
> >
> >
> > 我认为也不需要广播,只要作为“服务器”的那个定时向在线的用户发送
> > 探测信息就够了,当然它探测到一个用户下线后应该通知其它用户。
> >
>
> 我明白你的意思了,你就是说在内网里要让客户端自动搜出Server,来使用户更加
> 方便使用,是吗?
> 但是,如果集成到一起,那么每个客户端都是一个独立的Server,如何决定使用哪
> 个作为公共的Server呢?


说过了哦,最先开的那个是公共的server。

有两种情况:

1. 我打开软件时局域网内就我自己,这时我就是server
2. 如果别人在我之前,那我就去直接连他。

不过这又设计另一个问题,如果作为server的用户下线了应该需要转移server。
感觉很麻烦。就不如不要server,人人都是客户端,这样广播/多播的信息
就会比较多了。


> > 不过一般情况是一个用户正常退出,这时我们可以让它主动向所有
> > 在线用户发送通知信息。
> >
> 如果这个用户不是正常退出的呢?比如掉线、死机等情况发生?


说过了哦。server要定时探测每个在线用户啊!


>
> 如果集成到一起,能够想个好的算法让每个用户自己在内网寻找大家公认的
> "Server",而此Server如果遇到异常,用户能够自己找到一个后备的Server来继续
> 保持连接(这一切对用户来讲都是透明的),那样的话的确是个好主意。
> 但是,外网的情况怎么办?而且要找到这个内网Server不是还要广播么?
> 传统的CS模式都要求所有客户端都事前知道一个固定的Server地址和Port,我们这
> 种想法却不要求用户知道一个“周知IP地址”是不是太离经叛道了?

这没什么,无非就是多一两个步骤。

看我上面的分析,感觉不如不要server。

{snip}

Jianjun Kong

unread,
Mar 12, 2008, 1:49:13 AM3/12/08
to Yantao Mei, WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:

> >>>>> 需要单独的服务器端??不是把服务器和客户端集成到一起吗?

如果在内网那个里,集成当然可以,如果用于外网,那就难了。如果用户太多,服务器的负荷就比较大了。而且服务器的稳定性、可靠性都不容易保证。

Jianjun Kong

unread,
Mar 12, 2008, 1:51:15 AM3/12/08
to Yantao Mei, WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:
> WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>

>


> 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
> 到的不同。
> 大家的意思呢?

我觉得这要我们实验测试把那两个问题解决了,然后设计一下整个程序的构架。
如果内外网差异较大,那我们就得考虑直接做外网。

--
| Jianjun Kong | www.kongove.cn
| Xi'an Institute of Post & Telecommunications

WANG Cong

unread,
Mar 12, 2008, 1:45:07 AM3/12/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: "Jianjun Kong" <kongj...@gmail.com>
Date: Wed, 12 Mar 2008 15:49:13 +1000

> 在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:
>
> > >>>>> 需要单独的服务器端??不是把服务器和客户端集成到一起吗?
>
> 如果在内网那个里,集成当然可以,如果用于外网,那就难了。如果用户太多,服务器的负荷就比较大了。而且服务器的稳定性、可靠性都不容易保证。

所谓集成并不是简单把分离时服务器端应该有的功能迭加到客户端上。
你可以参考这个主题中我的其它邮件。

WANG Cong

unread,
Mar 12, 2008, 1:57:47 AM3/12/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: "Jianjun Kong" <kongj...@gmail.com>
Date: Wed, 12 Mar 2008 15:51:15 +1000

> 在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:
> > WANG Cong wrote:
> > > From: Yantao Mei <meiyan...@gmail.com>
>
> >
> > 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
> > 到的不同。
> > 大家的意思呢?
>
> 我觉得这要我们实验测试把那两个问题解决了,然后设计一下整个程序的构架。
> 如果内外网差异较大,那我们就得考虑直接做外网。
>

我认为这取决于这个软件的定位,它到底是定位于

1. qq/gtalk那样的一个集中服务器多客户的形式?

2. 还是飞鸽那样在局域网内使用的p2p形式?

Yantao Mei

unread,
Mar 12, 2008, 5:27:47 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: "Jianjun Kong" <kongj...@gmail.com>
> Date: Wed, 12 Mar 2008 15:51:15 +1000
>
>
>> 在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:
>>
>>> WANG Cong wrote:
>>> > From: Yantao Mei <meiyan...@gmail.com>
>>>
>>> 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
>>> 到的不同。
>>> 大家的意思呢?
>>>
>> 我觉得这要我们实验测试把那两个问题解决了,然后设计一下整个程序的构架。
>> 如果内外网差异较大,那我们就得考虑直接做外网。
>>
我同意孔建军的意思,现把细节问题解决了,在根据我们的认识来搞整体。
>>
>
> 我认为这取决于这个软件的定位,它到底是定位于
>
> 1. qq/gtalk那样的一个集中服务器多客户的形式?
>
我的意思就是这种定位。
> 2. 还是飞鸽那样在局域网内使用的p2p形式?
>

WANG Cong

unread,
Mar 12, 2008, 5:33:01 AM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 17:27:47 +0800
那就是说它的优势就是我们可以自由安装服务器端?这就会很容易导致同时
有多个服务器在internet上,你怎么解决?让用户自己去找这些服务器?
那我宁可用gtalk,就一个固定的服务器,连找都不用找。

如果你说我们只在局域网内使用,那我们做成集成到一起的岂不是更好?

Yantao Mei

unread,
Mar 12, 2008, 6:18:22 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Wed, 12 Mar 2008 17:27:47 +0800
>
>
>> WANG Cong wrote:
>>
>>> From: "Jianjun Kong" <kongj...@gmail.com>
>>> Date: Wed, 12 Mar 2008 15:51:15 +1000
>>>
>>>
>>>
>>>> 在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:
>>>>
>>>>
>>>>> WANG Cong wrote:
>>>>> > From: Yantao Mei <meiyan...@gmail.com>
>>>>>
>>>>> 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
>>>>> 到的不同。
>>>>> 大家的意思呢?
>>>>>
>>>>>
>>>> 我觉得这要我们实验测试把那两个问题解决了,然后设计一下整个程序的构架。
>>>> 如果内外网差异较大,那我们就得考虑直接做外网。
>>>>
>>>>
>> 我同意孔建军的意思,现把细节问题解决了,在根据我们的认识来搞整体。
>>
>>>>
>>>>
>>> 我认为这取决于这个软件的定位,它到底是定位于
>>>
>>> 1. qq/gtalk那样的一个集中服务器多客户的形式?
>>>
>>>
>> 我的意思就是这种定位。
>>
>
> 那就是说它的优势就是我们可以自由安装服务器端?这就会很容易导致同时
> 有多个服务器在internet上,你怎么解决?让用户自己去找这些服务器?
> 那我宁可用gtalk,就一个固定的服务器,连找都不用找。
>
我们的客户端没有“查找Server”这个功能,用户必须提前有一个IP和Port周知的
Server才能通讯。
> 如果你说我们只在局域网内使用,那我们做成集成到一起的岂不是更好?
>
我们就是要让用户可以自由安装服务器。如果你是A公司的员工,我是B公司的,那
么A公司自己可以建立一个固定IP的服务器,B公司也会,这样你只用登录你们A公
司的,而我登录我们B公司的。从公司的角度出发,我们两个没有必要用这个东西
联系。也就是说,我们不是要让所有用户“不分彼此”地联系,只是按照服务器的要
求建立一个聊天群体。如果A公司的员工要登录B公司的Server,B公司还可以拒绝
他们登录。

此外,服务器端还可以根据自己的需要来组织、管理自己的用户。比如,我们小组
可以建立一个Server,把参加各个项目的同学分开来,让每个小群的同学可以以会
议的形式发送消息,而其他项目组的人看不到。

这就是我的初衷。

相对于飞鸽的优势是:飞鸽只能在一个内网,而当我回家时,我也可以和同学们一
起参与我所想参加的项目,只要有一个开放的Server。我想,对于大多数企业和组
织,搞一个Server应该不是难事,在我们实验室,弄一个工作时间能够开放的
Server也不是问题吧。
最有趣的是,这些东西都可以由我们来自由管理。


> >
>

WANG Cong

unread,
Mar 12, 2008, 7:51:37 AM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 18:18:22 +0800

> WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>
> > Date: Wed, 12 Mar 2008 17:27:47 +0800
> >
> >
> >> WANG Cong wrote:
> >>
> >>> From: "Jianjun Kong" <kongj...@gmail.com>
> >>> Date: Wed, 12 Mar 2008 15:51:15 +1000
> >>>
> >>>
> >>>
> >>>> 在 08-3-12,Yantao Mei<meiyan...@gmail.com> 写道:
> >>>>
> >>>>
> >>>>> WANG Cong wrote:
> >>>>> > From: Yantao Mei <meiyan...@gmail.com>
> >>>>>
> >>>>> 那就按赵崇日说的,先只做内网部分?我只是担心这种设计结构和穿透外网时所用
> >>>>> 到的不同。
> >>>>> 大家的意思呢?
> >>>>>
> >>>>>
> >>>> 我觉得这要我们实验测试把那两个问题解决了,然后设计一下整个程序的构架。
> >>>> 如果内外网差异较大,那我们就得考虑直接做外网。
> >>>>
> >>>>
> >> 我同意孔建军的意思,现把细节问题解决了,在根据我们的认识来搞整体。
> >>
> >>>>
> >>>>
> >>> 我认为这取决于这个软件的定位,它到底是定位于
> >>>
> >>> 1. qq/gtalk那样的一个集中服务器多客户的形式?
> >>>
> >>>
> >> 我的意思就是这种定位。
> >>
> >
> > 那就是说它的优势就是我们可以自由安装服务器端?这就会很容易导致同时
> > 有多个服务器在internet上,你怎么解决?让用户自己去找这些服务器?
> > 那我宁可用gtalk,就一个固定的服务器,连找都不用找。
> >
> 我们的客户端没有“查找Server”这个功能,用户必须提前有一个IP和Port周知的
> Server才能通讯。


这证明了我的观点,这个软件难用,因此用户不会多。


> > 如果你说我们只在局域网内使用,那我们做成集成到一起的岂不是更好?
> >
> 我们就是要让用户可以自由安装服务器。如果你是A公司的员工,我是B公司的,那
> 么A公司自己可以建立一个固定IP的服务器,B公司也会,这样你只用登录你们A公
> 司的,而我登录我们B公司的。从公司的角度出发,我们两个没有必要用这个东西
> 联系。也就是说,我们不是要让所有用户“不分彼此”地联系,只是按照服务器的要
> 求建立一个聊天群体。如果A公司的员工要登录B公司的Server,B公司还可以拒绝
> 他们登录。


你说了半天,那我们还是不能互相通信!!换句话说,就是内网使用的!


>
> 此外,服务器端还可以根据自己的需要来组织、管理自己的用户。比如,我们小组
> 可以建立一个Server,把参加各个项目的同学分开来,让每个小群的同学可以以会
> 议的形式发送消息,而其他项目组的人看不到。
>
> 这就是我的初衷。
>
> 相对于飞鸽的优势是:飞鸽只能在一个内网,而当我回家时,我也可以和同学们一
> 起参与我所想参加的项目,只要有一个开放的Server。我想,对于大多数企业和组
> 织,搞一个Server应该不是难事,在我们实验室,弄一个工作时间能够开放的
> Server也不是问题吧。
> 最有趣的是,这些东西都可以由我们来自由管理。
>

你上面阐述的也都是在内网好吧?

搞个server不难,问题在于你怎么找到它?手工添加对吧?你怎么不想想别的用户呢?也让他们手工添加??

怎么越感觉越像IRC??

Yantao Mei

unread,
Mar 12, 2008, 8:16:54 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
在客户端,这和QQ的使用方式是近乎一样的。实现的方法是,在发布客户端时,可
以设定客户端的默认服务器,登录的服务器地址对客户端用户是透明的,他们只管
登录就可以了。这种差异化在自由软件世界里不是难事,而且正是自由软件的优
点。但在Server端,管理员要具备一点最基本的常识(比如知道什么是IP 和 端口
号)就可以了。

>
>
>>> 如果你说我们只在局域网内使用,那我们做成集成到一起的岂不是更好?
>>>
>>>
>> 我们就是要让用户可以自由安装服务器。如果你是A公司的员工,我是B公司的,那
>> 么A公司自己可以建立一个固定IP的服务器,B公司也会,这样你只用登录你们A公
>> 司的,而我登录我们B公司的。从公司的角度出发,我们两个没有必要用这个东西
>> 联系。也就是说,我们不是要让所有用户“不分彼此”地联系,只是按照服务器的要
>> 求建立一个聊天群体。如果A公司的员工要登录B公司的Server,B公司还可以拒绝
>> 他们登录。
>>
>
>
> 你说了半天,那我们还是不能互相通信!!换句话说,就是内网使用的!
>
如果小组可以开放一个服务器,那么我们肯定可以通讯,而且可以定制我们每个人
的通讯方式。

>
>
>> 此外,服务器端还可以根据自己的需要来组织、管理自己的用户。比如,我们小组
>> 可以建立一个Server,把参加各个项目的同学分开来,让每个小群的同学可以以会
>> 议的形式发送消息,而其他项目组的人看不到。
>>
>> 这就是我的初衷。
>>
>> 相对于飞鸽的优势是:飞鸽只能在一个内网,而当我回家时,我也可以和同学们一
>> 起参与我所想参加的项目,只要有一个开放的Server。我想,对于大多数企业和组
>> 织,搞一个Server应该不是难事,在我们实验室,弄一个工作时间能够开放的
>> Server也不是问题吧。
>> 最有趣的是,这些东西都可以由我们来自由管理。
>>
>>
>
> 你上面阐述的也都是在内网好吧?
>
我在我家,你在你家,孔在小组实验室,我们通过xylinux group的server来通
信,这怎么能算是内网呢?

> 搞个server不难,问题在于你怎么找到它?手工添加对吧?你怎么不想想别的用户呢?也让他们手工添加??
>
> 怎么越感觉越像IRC??
>
是有点像IRC,但是比IRC更全面些:比如传输文件,发送图片,我们可以定制自己
的群(当然,这是以后可以扩展的功能)。
我就是想给所有用户可以建立自己群体聊天服务器的自由。
再说得直白点:我们就是想做个QQ的模式,让其他用户自己管理他们的Server。
使用具有独立IP的服务器是公网通信的唯一途径,我实在想不出别的办法能在公网
上让用户随意通信。

WANG Cong

unread,
Mar 12, 2008, 8:28:11 AM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 20:16:54 +0800

{snip}

> >
> >
> > 这证明了我的观点,这个软件难用,因此用户不会多。
> >
> 在客户端,这和QQ的使用方式是近乎一样的。实现的方法是,在发布客户端时,可
> 以设定客户端的默认服务器,登录的服务器地址对客户端用户是透明的,他们只管
> 登录就可以了。这种差异化在自由软件世界里不是难事,而且正是自由软件的优
> 点。但在Server端,管理员要具备一点最基本的常识(比如知道什么是IP 和 端口
> 号)就可以了。

你说的这些和gtalk有何两样?除了多个自己的服务器端?这个多的东西普通
用户又体会不到!对于它们来说不管你服务器端怎么运作,能聊天才是王道。

<snip>

> >
> > 你说了半天,那我们还是不能互相通信!!换句话说,就是内网使用的!
> >
> 如果小组可以开放一个服务器,那么我们肯定可以通讯,而且可以定制我们每个人
> 的通讯方式。


1. 用gtalk不是也能通信?不是比这个更方便?

2. 怎么叫定制通讯方式?都用这个软件,怎么就能定制通讯方式?


> >
> >
> >> 此外,服务器端还可以根据自己的需要来组织、管理自己的用户。比如,我们小组
> >> 可以建立一个Server,把参加各个项目的同学分开来,让每个小群的同学可以以会
> >> 议的形式发送消息,而其他项目组的人看不到。
> >>
> >> 这就是我的初衷。
> >>
> >> 相对于飞鸽的优势是:飞鸽只能在一个内网,而当我回家时,我也可以和同学们一
> >> 起参与我所想参加的项目,只要有一个开放的Server。我想,对于大多数企业和组
> >> 织,搞一个Server应该不是难事,在我们实验室,弄一个工作时间能够开放的
> >> Server也不是问题吧。
> >> 最有趣的是,这些东西都可以由我们来自由管理。
> >>
> >>
> >
> > 你上面阐述的也都是在内网好吧?
> >
> 我在我家,你在你家,孔在小组实验室,我们通过xylinux group的server来通
> 信,这怎么能算是内网呢?

你上面说的是在小组实验室弄一个server,那肯定是学校内部的IP。



> > 怎么越感觉越像IRC??
> >
> 是有点像IRC,但是比IRC更全面些:比如传输文件,发送图片,我们可以定制自己
> 的群(当然,这是以后可以扩展的功能)。
> 我就是想给所有用户可以建立自己群体聊天服务器的自由。


IRC也有“群”,只是它不这么叫,它叫“频道”。


> 再说得直白点:我们就是想做个QQ的模式,让其他用户自己管理他们的Server。
> 使用具有独立IP的服务器是公网通信的唯一途径,我实在想不出别的办法能在公网
> 上让用户随意通信。

恩,问题是这样能比QQ或者gtalk好多少?别只说服务器可定制啊,用户
只关心用着方便,他们才不管服务器如何呢。

Jianjun Kong

unread,
Mar 12, 2008, 7:04:25 AM3/12/08
to WANG Cong, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
On Wed, Mar 12, 2008 at 08:28:11PM +0800, WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Wed, 12 Mar 2008 20:16:54 +0800
>
{snip}
> > >
> > 我在我家,你在你家,孔在小组实验室,我们通过xylinux group的server来通
> > 信,这怎么能算是内网呢?
>
> 你上面说的是在小组实验室弄一个server,那肯定是学校内部的IP。

小组实验室分配的应该算是外网IP

> > > 怎么越感觉越像IRC??
> > >
> > 是有点像IRC,但是比IRC更全面些:比如传输文件,发送图片,我们可以定制自己
> > 的群(当然,这是以后可以扩展的功能)。
> > 我就是想给所有用户可以建立自己群体聊天服务器的自由。
>
>
> IRC也有“群”,只是它不这么叫,它叫“频道”。
>
>
> > 再说得直白点:我们就是想做个QQ的模式,让其他用户自己管理他们的Server。
> > 使用具有独立IP的服务器是公网通信的唯一途径,我实在想不出别的办法能在公网
> > 上让用户随意通信。
>
> 恩,问题是这样能比QQ或者gtalk好多少?别只说服务器可定制啊,用户
> 只关心用着方便,他们才不管服务器如何呢。

EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。

WANG Cong

unread,
Mar 12, 2008, 9:16:46 AM3/12/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Jianjun Kong <kongj...@gmail.com>
Date: Wed, 12 Mar 2008 21:04:25 +1000

> On Wed, Mar 12, 2008 at 08:28:11PM +0800, WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>
> > Date: Wed, 12 Mar 2008 20:16:54 +0800
> >
> {snip}
> > > >
> > > 我在我家,你在你家,孔在小组实验室,我们通过xylinux group的server来通
> > > 信,这怎么能算是内网呢?
> >
> > 你上面说的是在小组实验室弄一个server,那肯定是学校内部的IP。
>
> 小组实验室分配的应该算是外网IP

那上次我们打算给小组弄台服务器时老师说不可能让连到外网去怎么解释?

真要是分配了外网的ip还能连不上外网么?!


>
> > > > 怎么越感觉越像IRC??
> > > >
> > > 是有点像IRC,但是比IRC更全面些:比如传输文件,发送图片,我们可以定制自己
> > > 的群(当然,这是以后可以扩展的功能)。
> > > 我就是想给所有用户可以建立自己群体聊天服务器的自由。
> >
> >
> > IRC也有“群”,只是它不这么叫,它叫“频道”。
> >
> >
> > > 再说得直白点:我们就是想做个QQ的模式,让其他用户自己管理他们的Server。
> > > 使用具有独立IP的服务器是公网通信的唯一途径,我实在想不出别的办法能在公网
> > > 上让用户随意通信。
> >
> > 恩,问题是这样能比QQ或者gtalk好多少?别只说服务器可定制啊,用户
> > 只关心用着方便,他们才不管服务器如何呢。
>
> EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
>

ok. 那你应该去改进eva,而不是从头再发明一遍。

Jianjun Kong

unread,
Mar 12, 2008, 7:43:22 AM3/12/08
to WANG Cong, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
On Wed, Mar 12, 2008 at 09:16:46PM +0800, WANG Cong wrote:
>
> 那上次我们打算给小组弄台服务器时老师说不可能让连到外网去怎么解释?
>
> 真要是分配了外网的ip还能连不上外网么?!

三楼实验室只有一个外网IP,其他是196.168.*.*的内网(好像好多开放实验的实验室都是这样)。那可能存在问题。
434不存在这个问题。
我去年用自己电脑做过一次web服务器,没有任何没问题。不过学校把一大堆端口封了~~~
至于老师那样说?可能不知道实验室具体情况~~

> > > > 是有点像IRC,但是比IRC更全面些:比如传输文件,发送图片,我们可以定制自己
> > > > 的群(当然,这是以后可以扩展的功能)。
> > > > 我就是想给所有用户可以建立自己群体聊天服务器的自由。
> > >
> > >
> > > IRC也有“群”,只是它不这么叫,它叫“频道”。
> > >
> > >
> > > > 再说得直白点:我们就是想做个QQ的模式,让其他用户自己管理他们的Server。
> > > > 使用具有独立IP的服务器是公网通信的唯一途径,我实在想不出别的办法能在公网
> > > > 上让用户随意通信。
> > >
> > > 恩,问题是这样能比QQ或者gtalk好多少?别只说服务器可定制啊,用户
> > > 只关心用着方便,他们才不管服务器如何呢。
> >
> > EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
> >
>
> ok. 那你应该去改进eva,而不是从头再发明一遍。

EVA得不停的跟着腾讯走。
关于这个,梅延涛已经说过。我们要在速度(相对QQ)和穿透NAT(相对飞鸽)上体现优势,还有梅延涛讲的定制自己的通讯工具等。

WANG Cong

unread,
Mar 12, 2008, 9:47:11 AM3/12/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Jianjun Kong <kongj...@gmail.com>
Date: Wed, 12 Mar 2008 21:43:22 +1000

> On Wed, Mar 12, 2008 at 09:16:46PM +0800, WANG Cong wrote:
> >
> > 那上次我们打算给小组弄台服务器时老师说不可能让连到外网去怎么解释?
> >
> > 真要是分配了外网的ip还能连不上外网么?!
>
> 三楼实验室只有一个外网IP,其他是196.168.*.*的内网(好像好多开放实验的实验室都是这样)。那可能存在问题。
> 434不存在这个问题。
> 我去年用自己电脑做过一次web服务器,没有任何没问题。不过学校把一大堆端口封了~~~


你不是都有外网ip了么,他怎么去封你的端口??



> 至于老师那样说?可能不知道实验室具体情况~~

学校是不会给你一个固定的外网ip的。


> > > EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
> > >
> >
> > ok. 那你应该去改进eva,而不是从头再发明一遍。
>
> EVA得不停的跟着腾讯走。

我们不跟腾讯走,那我们自己去开个公司??


> 关于这个,梅延涛已经说过。我们要在速度(相对QQ)和穿透NAT(相对飞鸽)上体现优势,还有梅延涛讲的定制自己的通讯工具等。
>

要速度,gtalk不慢吧?

要穿透NAT,现在梅同学的解决方法是用qq的方式,那和gtalk有啥两样??

另外,请定义你们的“定制自己的通讯方式”。

Yantao Mei

unread,
Mar 12, 2008, 9:53:56 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
“综上所述”,大家说的都有道理:
王聪的意思是在内网时要让客户端自动搜索出在线用户,把所谓的C/S整合到一起
来降低用户的使用难度。
这个不难,可以建立一种轮询的服务器,只由服务器广播,广播到用户就作为他的
客户端,如果这个Server下线,由另一个备用的用户来继续充当这一角色,这就避
免了每个用户的频繁广播。

我希望穿透NAT是想把他放到公网上去使用,此外,穿透NAT现在其实也已经是一件
很普遍的技术了,但是教材上提到的寥寥无几,我觉得值得我们自己去学习。

在内网中的Server应该也可以充当外网的服务器,我正在学习这种技术,相信很快
会有解决方案。
谢谢大家的帮助,欢迎再提意见,多改改就更好了。

WANG Cong

unread,
Mar 12, 2008, 9:53:58 AM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 21:53:56 +0800

<snip>

> “综上所述”,大家说的都有道理:
> 王聪的意思是在内网时要让客户端自动搜索出在线用户,把所谓的C/S整合到一起
> 来降低用户的使用难度。
> 这个不难,可以建立一种轮询的服务器,只由服务器广播,广播到用户就作为他的
> 客户端,如果这个Server下线,由另一个备用的用户来继续充当这一角色,这就避
> 免了每个用户的频繁广播。
>
> 我希望穿透NAT是想把他放到公网上去使用,此外,穿透NAT现在其实也已经是一件
> 很普遍的技术了,但是教材上提到的寥寥无几,我觉得值得我们自己去学习。
>
> 在内网中的Server应该也可以充当外网的服务器,我正在学习这种技术,相信很快
> 会有解决方案。
> 谢谢大家的帮助,欢迎再提意见,多改改就更好了。

在技术上,我不认为存在多大问题。

我的问题是,你做的这个软件自己的优势到底是什么??换句话说比现有
即时通信工具多出什么优点?

Yantao Mei

unread,
Mar 12, 2008, 10:22:07 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Jianjun Kong <kongj...@gmail.com>
> Date: Wed, 12 Mar 2008 21:43:22 +1000
>
>
>> On Wed, Mar 12, 2008 at 09:16:46PM +0800, WANG Cong wrote:
>>
>>> 那上次我们打算给小组弄台服务器时老师说不可能让连到外网去怎么解释?
>>>
>>> 真要是分配了外网的ip还能连不上外网么?!
>>>
>> 三楼实验室只有一个外网IP,其他是196.168.*.*的内网(好像好多开放实验的实验室都是这样)。那可能存在问题。
>> 434不存在这个问题。
>> 我去年用自己电脑做过一次web服务器,没有任何没问题。不过学校把一大堆端口封了~~~
>>
>
>
> 你不是都有外网ip了么,他怎么去封你的端口??
>
>
>
>
>> 至于老师那样说?可能不知道实验室具体情况~~
>>
>
> 学校是不会给你一个固定的外网ip的。
>
我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
军弄过。

>
>
>>>> EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
>>>>
>>>>
>>> ok. 那你应该去改进eva,而不是从头再发明一遍。
>>>
>> EVA得不停的跟着腾讯走。
>>
>
> 我们不跟腾讯走,那我们自己去开个公司??
>
我觉得王聪兄这句话很奇怪,你是鼓励我们跟腾讯兼容吗?

>
>
>> 关于这个,梅延涛已经说过。我们要在速度(相对QQ)和穿透NAT(相对飞鸽)上体现优势,还有梅延涛讲的定制自己的通讯工具等。
>>
>>
>
> 要速度,gtalk不慢吧?
>
> 要穿透NAT,现在梅同学的解决方法是用qq的方式,那和gtalk有啥两样??
>
这个不是QQ的方式,国外对于此问题的讨论有很多好文章,为什么说是QQ的方式?
> 另外,请定义你们的“定制自己的通讯方式”。
>
在这个项目的基础上,我们可以扩展很多功能(当然,目前我们还不具备这种技术
能力):
服务器端可以自己定制自己允许登录的用户(身份验证),管理员可以监督会话
(如不许用户工作时间聊与公所无关的,违法的,色情的,反动的话题),组织和
管理用户(把不同部门的用户分群),特定用户有群发能力(老板说话,大家都
听),监督用户是否在机器前(可以随机提问,看用户是否及时回答),特定用户
可以监视其他用户屏幕(老板客户端看用户有没有进行与工作无关的娱乐活动),
提高安全性(使用SSL等库)等等。

Yantao Mei

unread,
Mar 12, 2008, 10:25:23 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
我们不可能一步到位,但是,我认为C/S的聊天模式是一个很好的模式,他可以扩
展很多功能。
这些问题的具体细节我在另一个回复中说了。

最重要的是,我们能够学习到如NAT等很多网络编程知识。

WANG Cong

unread,
Mar 12, 2008, 10:25:29 AM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 22:22:07 +0800

> >
> > 学校是不会给你一个固定的外网ip的。
> >
> 我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
> 军弄过。

哦?我们的客户端还得动态地追踪你的域名不成?


> >>>> EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
> >>>>
> >>>>
> >>> ok. 那你应该去改进eva,而不是从头再发明一遍。
> >>>
> >> EVA得不停的跟着腾讯走。
> >>
> >
> > 我们不跟腾讯走,那我们自己去开个公司??
> >
> 我觉得王聪兄这句话很奇怪,你是鼓励我们跟腾讯兼容吗?

我的意思是说如果你做成统一一个服务器的模式,就得有个稳定的服务器,
换句话说,就得有钱呐!!


> >
> >
> >> 关于这个,梅延涛已经说过。我们要在速度(相对QQ)和穿透NAT(相对飞鸽)上体现优势,还有梅延涛讲的定制自己的通讯工具等。
> >>
> >>
> >
> > 要速度,gtalk不慢吧?
> >
> > 要穿透NAT,现在梅同学的解决方法是用qq的方式,那和gtalk有啥两样??
> >
> 这个不是QQ的方式,国外对于此问题的讨论有很多好文章,为什么说是QQ的方式?

孔同学提到的是qq,我接他的话。你换成gtalk方式也无妨。

BTW,既然有好文章,怎么不给出链接呢??


> > 另外,请定义你们的“定制自己的通讯方式”。
> >
> 在这个项目的基础上,我们可以扩展很多功能(当然,目前我们还不具备这种技术
> 能力):
> 服务器端可以自己定制自己允许登录的用户(身份验证),管理员可以监督会话
> (如不许用户工作时间聊与公所无关的,违法的,色情的,反动的话题),组织和
> 管理用户(把不同部门的用户分群),特定用户有群发能力(老板说话,大家都
> 听),监督用户是否在机器前(可以随机提问,看用户是否及时回答),特定用户
> 可以监视其他用户屏幕(老板客户端看用户有没有进行与工作无关的娱乐活动),
> 提高安全性(使用SSL等库)等等。

你越说越像qq,上面好几个功能都是qq有的。我是没体会到有多少自己的特色。

另外,既然没这技术还做个啥?!

Jianjun Kong

unread,
Mar 12, 2008, 8:31:46 AM3/12/08
to Yantao Mei, WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
On Wed, Mar 12, 2008 at 10:22:07PM +0800, Yantao Mei wrote:
> WANG Cong wrote:
> > From: Jianjun Kong <kongj...@gmail.com>
> > Date: Wed, 12 Mar 2008 21:43:22 +1000
> >
> >
> >> On Wed, Mar 12, 2008 at 09:16:46PM +0800, WANG Cong wrote:
> >>
> >>> 那上次我们打算给小组弄台服务器时老师说不可能让连到外网去怎么解释?
> >>>
> >>> 真要是分配了外网的ip还能连不上外网么?!
> >>>
> >> 三楼实验室只有一个外网IP,其他是196.168.*.*的内网(好像好多开放实验的实验室都是这样)。那可能存在问题。
> >> 434不存在这个问题。
> >> 我去年用自己电脑做过一次web服务器,没有任何没问题。不过学校把一大堆端口封了~~~
> >>
> >
> >
> > 你不是都有外网ip了么,他怎么去封你的端口??


封端口有些直接在路由器等上面实现。管你什么IP,数据总得从学校那个口出吧。
这得问一下明洁,他们公司就搞这个。


> >
> >> 至于老师那样说?可能不知道实验室具体情况~~
> >>
> >
> > 学校是不会给你一个固定的外网ip的。
> >
> 我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
> 军弄过。

这个得考虑一些特殊情况,比如现在新校区宿舍,就不能用动态域名了。
curl -su stallmans:passwd 'http://members.3322.org/dyndns/update?system=dyndns&hostname=kongove.3322.org' & > /dev/null &

本来执行上面的命令就可以。 也不能对外开FTP了。

> >
> >
> >>>> EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
> >>>>
> >>>>
> >>> ok. 那你应该去改进eva,而不是从头再发明一遍。
> >>>
> >> EVA得不停的跟着腾讯走。
> >>
> >
> > 我们不跟腾讯走,那我们自己去开个公司??
> >
> 我觉得王聪兄这句话很奇怪,你是鼓励我们跟腾讯兼容吗?
> >
> >
> >> 关于这个,梅延涛已经说过。我们要在速度(相对QQ)和穿透NAT(相对飞鸽)上体现优势,还有梅延涛讲的定制自己的通讯工具等。
> >>
> >>
> >
> > 要速度,gtalk不慢吧?
> >
> > 要穿透NAT,现在梅同学的解决方法是用qq的方式,那和gtalk有啥两样??
> >
> 这个不是QQ的方式,国外对于此问题的讨论有很多好文章,为什么说是QQ的方式?
> > 另外,请定义你们的“定制自己的通讯方式”。
> >
> 在这个项目的基础上,我们可以扩展很多功能(当然,目前我们还不具备这种技术
> 能力):
> 服务器端可以自己定制自己允许登录的用户(身份验证),管理员可以监督会话
> (如不许用户工作时间聊与公所无关的,违法的,色情的,反动的话题),组织和
> 管理用户(把不同部门的用户分群),特定用户有群发能力(老板说话,大家都
> 听),监督用户是否在机器前(可以随机提问,看用户是否及时回答),特定用户
> 可以监视其他用户屏幕(老板客户端看用户有没有进行与工作无关的娱乐活动),
> 提高安全性(使用SSL等库)等等。

--

WANG Cong

unread,
Mar 12, 2008, 10:33:17 AM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 22:25:23 +0800
既然不能一步到位,那为什么就不能先不考虑穿透NAT??

Yantao Mei

unread,
Mar 12, 2008, 10:45:13 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
如果只是单纯地作出一个模拟现有飞鸽功能的程序,那我估计个把月就差不多了。
呵呵,你的意思是让我们先做个能跑的吗?好吧,我星期天和他们商量一下,如果
大家觉得NAT不好弄,你的建议也未尝不可。

从我个人的角度来讲,我对Server模式充满了渴望,因为Server是实现众多“控制
性功能”的前提。

Yantao Mei

unread,
Mar 12, 2008, 10:54:28 AM3/12/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Wed, 12 Mar 2008 22:22:07 +0800
>
>
>>> 学校是不会给你一个固定的外网ip的。
>>>
>>>
>> 我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
>> 军弄过。
>>
>
> 哦?我们的客户端还得动态地追踪你的域名不成?
>
那个Server在帮内网用户打好“洞”后,他们之间的通信就不经过Server了。如果
Server IP 改变,他可以自己通知已在线用户。如果有新的用户加入,他们直接根
据域名登录服务器,IP和端口可以对他们隐藏。

>
>
>>>>>> EVA的文件传输很不好用,别说速度了,有时根本没反应。Gtalk的文件传输没用过,不太清除。
>>>>>>
>>>>>>
>>>>>>
>>>>> ok. 那你应该去改进eva,而不是从头再发明一遍。
>>>>>
>>>>>
>>>> EVA得不停的跟着腾讯走。
>>>>
>>>>
>>> 我们不跟腾讯走,那我们自己去开个公司??
>>>
>>>
>> 我觉得王聪兄这句话很奇怪,你是鼓励我们跟腾讯兼容吗?
>>
>
> 我的意思是说如果你做成统一一个服务器的模式,就得有个稳定的服务器,
> 换句话说,就得有钱呐!!
>
我们没有,但是一般的公司都会有,学校如果想方便同学的沟通,也可以很容易实
现这个。

>
>
>>>
>>>
>>>> 关于这个,梅延涛已经说过。我们要在速度(相对QQ)和穿透NAT(相对飞鸽)上体现优势,还有梅延涛讲的定制自己的通讯工具等。
>>>>
>>>>
>>>>
>>> 要速度,gtalk不慢吧?
>>>
>>> 要穿透NAT,现在梅同学的解决方法是用qq的方式,那和gtalk有啥两样??
>>>
>>>
>> 这个不是QQ的方式,国外对于此问题的讨论有很多好文章,为什么说是QQ的方式?
>>
>
> 孔同学提到的是qq,我接他的话。你换成gtalk方式也无妨。
>
> BTW,既然有好文章,怎么不给出链接呢??
>
http://hwycheng.bokee.com/2404843.html
下面的连接不是讲技术的,但是那11个问题对我们颇有参考价值:
http://www.filecatalyst.com/products/faq.html

下面这个我正在翻译:
http://www.linuxjournal.com/article/9004

这个还没仔细看,希望有参考价值:
http://www.ietf.org/proceedings/00dec/slides/MIDCOM-3/sld005.htm

在google里还可以搜到许多邮件列表的信息,我就不例举了。


>
>
>>> 另外,请定义你们的“定制自己的通讯方式”。
>>>
>>>
>> 在这个项目的基础上,我们可以扩展很多功能(当然,目前我们还不具备这种技术
>> 能力):
>> 服务器端可以自己定制自己允许登录的用户(身份验证),管理员可以监督会话
>> (如不许用户工作时间聊与公所无关的,违法的,色情的,反动的话题),组织和
>> 管理用户(把不同部门的用户分群),特定用户有群发能力(老板说话,大家都
>> 听),监督用户是否在机器前(可以随机提问,看用户是否及时回答),特定用户
>> 可以监视其他用户屏幕(老板客户端看用户有没有进行与工作无关的娱乐活动),
>> 提高安全性(使用SSL等库)等等。
>>
>
> 你越说越像qq,上面好几个功能都是qq有的。我是没体会到有多少自己的特色。
>
> 另外,既然没这技术还做个啥?!
>

不都是为了学习么……而且,我上面的话只是想说明这种模式的可扩展性很强。

WANG Cong

unread,
Mar 12, 2008, 10:54:36 PM3/12/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Wed, 12 Mar 2008 22:54:28 +0800

> WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>
> > Date: Wed, 12 Mar 2008 22:22:07 +0800
> >
> >
> >>> 学校是不会给你一个固定的外网ip的。
> >>>
> >>>
> >> 我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
> >> 军弄过。
> >>
> >
> > 哦?我们的客户端还得动态地追踪你的域名不成?
> >
> 那个Server在帮内网用户打好“洞”后,他们之间的通信就不经过Server了。如果
> Server IP 改变,他可以自己通知已在线用户。如果有新的用户加入,他们直接根
> 据域名登录服务器,IP和端口可以对他们隐藏。

那一个用户离线后怎么更新服务器内容?假设该用户登录时服务器的域名是
a.net,离线时变成了b.net


<snip>

> > 我的意思是说如果你做成统一一个服务器的模式,就得有个稳定的服务器,
> > 换句话说,就得有钱呐!!
> >
> 我们没有,但是一般的公司都会有,学校如果想方便同学的沟通,也可以很容易实
> 现这个。

他们也可以使用自己搭建的内部mailing list,IRC等等。。。


<snip>

> >
> > BTW,既然有好文章,怎么不给出链接呢??
> >
> http://hwycheng.bokee.com/2404843.html
> 下面的连接不是讲技术的,但是那11个问题对我们颇有参考价值:
> http://www.filecatalyst.com/products/faq.html
>
> 下面这个我正在翻译:
> http://www.linuxjournal.com/article/9004
>
> 这个还没仔细看,希望有参考价值:
> http://www.ietf.org/proceedings/00dec/slides/MIDCOM-3/sld005.htm
>
> 在google里还可以搜到许多邮件列表的信息,我就不例举了。

Thank you.


> >
> >
> >>> 另外,请定义你们的“定制自己的通讯方式”。
> >>>
> >>>
> >> 在这个项目的基础上,我们可以扩展很多功能(当然,目前我们还不具备这种技术
> >> 能力):
> >> 服务器端可以自己定制自己允许登录的用户(身份验证),管理员可以监督会话
> >> (如不许用户工作时间聊与公所无关的,违法的,色情的,反动的话题),组织和
> >> 管理用户(把不同部门的用户分群),特定用户有群发能力(老板说话,大家都
> >> 听),监督用户是否在机器前(可以随机提问,看用户是否及时回答),特定用户
> >> 可以监视其他用户屏幕(老板客户端看用户有没有进行与工作无关的娱乐活动),
> >> 提高安全性(使用SSL等库)等等。
> >>
> >
> > 你越说越像qq,上面好几个功能都是qq有的。我是没体会到有多少自己的特色。
> >
> > 另外,既然没这技术还做个啥?!
> >
> 不都是为了学习么……而且,我上面的话只是想说明这种模式的可扩展性很强。


还是那句话,如果你在做之前不清楚自己的最大特色是什么,那恐怕做
到最后也只是一个玩具产品。

Jianjun Kong

unread,
Mar 13, 2008, 12:02:02 AM3/13/08
to Yantao Mei, WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com

我做了一个测试,下面两个java程序,客户端往服务端发送“Hello”后输出日期结束程序,服务端打印相关信息(客户端IP,端口)。
我的服务端是在,我的网站主机上运行的,客户端在自己电脑(宿舍)运行的。

我下面准备改进程序测试,客户端发送数据后,等待服务端使用获得的IP、Port向客户端传送数据。


服务端显示:
[crystallight]$ java J_UdpServer
Client Adr = 221.11.20.10at Port44550:Hello
Client Adr = 221.11.20.10at Port45558:Hello
Client Adr = 221.11.20.10at Port45593:Hello
Client Adr = 221.11.20.10at Port45656:Hello
Killed
[crystallight]$

客户端显示:
kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpClient
Wed Mar 12 21:45:35 PST 2008
kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpClient
Wed Mar 12 21:45:37 PST 2008
kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpClient
Wed Mar 12 21:45:38 PST 2008
kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpClient
Wed Mar 12 21:45:39 PST 2008

--------------------------------------------------------------------
import java.net.*;
import java.io.*;
import java.util.Date;

public class J_UdpServer{

public static byte[] mb_getTime(){
Date d = new Date();
return d.toString().getBytes();
}

public static void main(String aargs[])
{
DatagramSocket dSocket;
DatagramPacket inPacket;
DatagramPacket outPacket;
InetAddress cAddr;
int cPort;
byte[] inBuffer = new byte[100];
byte[] outBuffer;
String s;

try{
dSocket = new DatagramSocket(8000);
while (true){
inPacket = new DatagramPacket(inBuffer, inBuffer.length);
dSocket.receive(inPacket);
cAddr = inPacket.getAddress();
cPort = inPacket.getPort();
s = new String (inPacket.getData(), 0, inPacket.getLength());
System.out.println("Client Adr = " + cAddr.getHostName() +
"at Port" + cPort+":" + s);
outBuffer = mb_getTime();
outPacket = new DatagramPacket(outBuffer, outBuffer.length, cAddr, cPort);
dSocket.send(outPacket);
}
}
catch(IOException e){
System.out.println("IOException occurred with socket.");
System.out.println(e);
e.printStackTrace();
}
}

}
--------------------------------------------------------------------
import java.net.*;
import java.io.*;
public class J_UdpClient{
public static void main(String args[]) throws IOException
{
DatagramSocket dSocket;
DatagramPacket inPacket;
DatagramPacket outPacket;
InetAddress sAddr;
byte[] inBuffer = new byte[100];
byte[] outBuffer;
String s = "Hello";

try{
dSocket = new DatagramSocket();
sAddr = InetAddress.getByName("www.kongove.cn");
outBuffer = s.getBytes();
outPacket = new DatagramPacket(outBuffer, outBuffer.length, sAddr, 8000);
dSocket.send(outPacket);
inPacket = new DatagramPacket(inBuffer, inBuffer.length);
dSocket.receive(inPacket);
s = new String(inPacket.getData(), 0, inPacket.getLength());
System.out.println(s);
dSocket.close();
}
catch (IOException e){
System.out.println("IOException occurred with socket.");
System.out.println(e);
e.printStackTrace();
}

}
}

WANG Cong

unread,
Mar 13, 2008, 2:18:11 AM3/13/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Jianjun Kong <kongj...@gmail.com>
Date: Thu, 13 Mar 2008 14:02:02 +1000

>
> 我做了一个测试,下面两个java程序,客户端往服务端发送“Hello”后输出日期结束程序,服务端打印相关信息(客户端IP,端口)。
> 我的服务端是在,我的网站主机上运行的,客户端在自己电脑(宿舍)运行的。
>
> 我下面准备改进程序测试,客户端发送数据后,等待服务端使用获得的IP、Port向客户端传送数据。
>
>
> 服务端显示:
> [crystallight]$ java J_UdpServer
> Client Adr = 221.11.20.10at Port44550:Hello
> Client Adr = 221.11.20.10at Port45558:Hello
> Client Adr = 221.11.20.10at Port45593:Hello
> Client Adr = 221.11.20.10at Port45656:Hello
> Killed
> [crystallight]$

这有什么奇怪的,只要你能上网你肯定有一个外部IP(或者经过NAT,代理
之类的)。但问题是你没固定IP,外面的找你找不到!

Jianjun Kong

unread,
Mar 13, 2008, 12:29:08 AM3/13/08
to WANG Cong, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com

所以还得服务器。

WANG Cong

unread,
Mar 13, 2008, 2:26:09 AM3/13/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Jianjun Kong <kongj...@gmail.com>
Date: Thu, 13 Mar 2008 14:29:08 +1000

> On Thu, Mar 13, 2008 at 02:18:11PM +0800, WANG Cong wrote:
> > From: Jianjun Kong <kongj...@gmail.com>
> > Date: Thu, 13 Mar 2008 14:02:02 +1000
> >
> > >
> > > 我做了一个测试,下面两个java程序,客户端往服务端发送“Hello”后输出日期结束程序,服务端打印相关信息(客户端IP,端口)。
> > > 我的服务端是在,我的网站主机上运行的,客户端在自己电脑(宿舍)运行的。
> > >
> > > 我下面准备改进程序测试,客户端发送数据后,等待服务端使用获得的IP、Port向客户端传送数据。
> > >
> > >
> > > 服务端显示:
> > > [crystallight]$ java J_UdpServer
> > > Client Adr = 221.11.20.10at Port44550:Hello
> > > Client Adr = 221.11.20.10at Port45558:Hello
> > > Client Adr = 221.11.20.10at Port45593:Hello
> > > Client Adr = 221.11.20.10at Port45656:Hello
> > > Killed
> > > [crystallight]$
> >
> > 这有什么奇怪的,只要你能上网你肯定有一个外部IP(或者经过NAT,代理
> > 之类的)。但问题是你没固定IP,外面的找你找不到!
>
> 所以还得服务器。

所以你在实验室里弄不了在外面可以用的服务器。

Yantao Mei

unread,
Mar 13, 2008, 9:46:19 AM3/13/08
to WANG Cong, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
WANG Cong wrote:
> From: Yantao Mei <meiyan...@gmail.com>
> Date: Wed, 12 Mar 2008 22:54:28 +0800
>
>
>> WANG Cong wrote:
>>
>>> From: Yantao Mei <meiyan...@gmail.com>
>>> Date: Wed, 12 Mar 2008 22:22:07 +0800
>>>
>>>
>>>
>>>>> 学校是不会给你一个固定的外网ip的。
>>>>>
>>>>>
>>>>>
>>>> 我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
>>>> 军弄过。
>>>>
>>>>
>>> 哦?我们的客户端还得动态地追踪你的域名不成?
>>>
>>>
>> 那个Server在帮内网用户打好“洞”后,他们之间的通信就不经过Server了。如果
>> Server IP 改变,他可以自己通知已在线用户。如果有新的用户加入,他们直接根
>> 据域名登录服务器,IP和端口可以对他们隐藏。
>>
>
> 那一个用户离线后怎么更新服务器内容?假设该用户登录时服务器的域名是
> a.net,离线时变成了b.net
>
IP会变,但是域名不会变。用户离线后,服务器会更新用户列表并发送给每个用户。

WANG Cong

unread,
Mar 13, 2008, 10:00:40 AM3/13/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Thu, 13 Mar 2008 21:46:19 +0800

> WANG Cong wrote:
> > From: Yantao Mei <meiyan...@gmail.com>
> > Date: Wed, 12 Mar 2008 22:54:28 +0800
> >
> >
> >> WANG Cong wrote:
> >>
> >>> From: Yantao Mei <meiyan...@gmail.com>
> >>> Date: Wed, 12 Mar 2008 22:22:07 +0800
> >>>
> >>>
> >>>
> >>>>> 学校是不会给你一个固定的外网ip的。
> >>>>>
> >>>>>
> >>>>>
> >>>> 我说过,我们家就是独立IP,可以使用动态域名来解决代替固定IP问题。这个孔建
> >>>> 军弄过。
> >>>>
> >>>>
> >>> 哦?我们的客户端还得动态地追踪你的域名不成?
> >>>
> >>>
> >> 那个Server在帮内网用户打好“洞”后,他们之间的通信就不经过Server了。如果
> >> Server IP 改变,他可以自己通知已在线用户。如果有新的用户加入,他们直接根
> >> 据域名登录服务器,IP和端口可以对他们隐藏。
> >>
> >
> > 那一个用户离线后怎么更新服务器内容?假设该用户登录时服务器的域名是
> > a.net,离线时变成了b.net
> >
> IP会变,但是域名不会变。用户离线后,服务器会更新用户列表并发送给每个用户。

无论如何这都不是长久之计。

Jianjun Kong

unread,
Mar 14, 2008, 3:22:19 AM3/14/08
to WANG Cong, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
我把那个Java C/S程序改了一下。

先运行服务端(S),当客户端一(C1)向S发送数据时,S调用方法得到与C1通信的主机名(IP)、Port。然后客户端二(C2)通过S的到的主机名(IP)、port发送数据与C1通信。

我在本地试了一下,可以。S得到的主机名localhost、port:37332,C2可以通过这个向C1发送数据。
但我发S放到我的网站主机上。S得到的是221.11.20.10 Port:38565 ,C2利用这个却不能向C1发数据。
C1与S通信靠的就是S的到的IP和端口,为什么不能通信呢?我再到实验室试试。

先运行s,在运行C1(自动向S发送hello),在运行C2(后边带S得到的IP和端口作为参数)

------------------------------------------本地运行效果:
kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpServer
Client Adr = localhostat Port32771:Hello

kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpClient localhost
ECHO:Write111111111111
ECHO:Write222222222222
ECHO:Write333333333333

kongove@kongove-desktop:~/Desktop/pigeons/Java$ java J_UdpClient2 localhost 32771
Write111111111111
Write222222222222
Write333333333333
---------------------------------------------Server Code


import java.net.*;
import java.io.*;
import java.util.Date;

public class J_UdpServer{

public static byte[] mb_getTime(){
Date d = new Date();
return d.toString().getBytes();
}

public static void main(String args[])


{
DatagramSocket dSocket;
DatagramPacket inPacket;
DatagramPacket outPacket;
InetAddress cAddr;
int cPort;
byte[] inBuffer = new byte[100];
byte[] outBuffer;
String s;

try{
dSocket = new DatagramSocket(8000);
while (true){
inPacket = new DatagramPacket(inBuffer, inBuffer.length);
dSocket.receive(inPacket);
cAddr = inPacket.getAddress();
cPort = inPacket.getPort();
s = new String (inPacket.getData(), 0, inPacket.getLength());
System.out.println("Client Adr = " + cAddr.getHostName() +
"at Port" + cPort+":" + s);
}
}

catch(IOException e){
System.out.println("IOException occurred with socket.");
System.out.println(e);
e.printStackTrace();
}
}

}
------------------------Client1 Code


import java.net.*;
import java.io.*;
public class J_UdpClient{
public static void main(String args[]) throws IOException
{
DatagramSocket dSocket;
DatagramPacket inPacket;
DatagramPacket outPacket;
InetAddress sAddr;
byte[] inBuffer = new byte[100];
byte[] outBuffer;
String s = "Hello";

try{
dSocket = new DatagramSocket();

sAddr = InetAddress.getByName(args[0]);
//sAddr = InetAddress.getByName("192.168.44.35");
//sAddr = InetAddress.getByName("www.kongove.cn");

/*BufferedReader Buf = new BufferedReader(new InputStreamReader(System.in));
s = Buf.readLine();*/


outBuffer = s.getBytes();
outPacket = new DatagramPacket(outBuffer, outBuffer.length, sAddr, 8000);
dSocket.send(outPacket);

while(true){


inPacket = new DatagramPacket(inBuffer, inBuffer.length);
dSocket.receive(inPacket);
s = new String(inPacket.getData(), 0, inPacket.getLength());

System.out.println("ECHO:" + s);
}


//dSocket.close();


}
catch (IOException e){
System.out.println("IOException occurred with socket.");
System.out.println(e);
e.printStackTrace();
}

}
}


---------------------------------
import java.net.*;
import java.io.*;

public class J_UdpClient2{


public static void main(String args[]) throws IOException
{
DatagramSocket dSocket;
DatagramPacket inPacket;
DatagramPacket outPacket;
InetAddress sAddr;
byte[] inBuffer = new byte[100];
byte[] outBuffer;
String s = "Hello";

int port = Integer.parseInt (args[1]);
try{

dSocket = new DatagramSocket();
sAddr = InetAddress.getByName(args[0]);
//sAddr = InetAddress.getByName("221.11.20.10");
//sAddr = InetAddress.getByName("www.kongove.cn");
while(true){
BufferedReader Buf = new BufferedReader(new InputStreamReader(System.in));
s = Buf.readLine();
outBuffer = s.getBytes();
outPacket = new DatagramPacket(outBuffer, outBuffer.length, sAddr, port);
dSocket.send(outPacket);
}
//dSocket.close();

WANG Cong

unread,
Mar 14, 2008, 6:04:42 AM3/14/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Jianjun Kong <kongj...@gmail.com>
Date: Fri, 14 Mar 2008 17:22:19 +1000

> 我把那个Java C/S程序改了一下。
>
> 先运行服务端(S),当客户端一(C1)向S发送数据时,S调用方法得到与C1通信的主机名(IP)、Port。然后客户端二(C2)通过S的到的主机名(IP)、port发送数据与C1通信。
>
> 我在本地试了一下,可以。S得到的主机名localhost、port:37332,C2可以通过这个向C1发送数据。
> 但我发S放到我的网站主机上。S得到的是221.11.20.10 Port:38565 ,C2利用这个却不能向C1发数据。
> C1与S通信靠的就是S的到的IP和端口,为什么不能通信呢?我再到实验室试试。
>
> 先运行s,在运行C1(自动向S发送hello),在运行C2(后边带S得到的IP和端口作为参数)
>

{snip}

宿舍是网通,应该是pppoe,怎么你的IP和网通服务器的一样了?
莫非换drcom后成NAT了??

我这里也是网通拨号,情况就不一样啊。

ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast qlen 3
link/ppp
inet 123.128.39.24 peer 123.128.32.1/32 scope global ppp0

Jianjun Kong

unread,
Mar 14, 2008, 4:40:11 AM3/14/08
to WANG Cong, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com

是的,现在宿舍上网都要通过 221.11.20.10
老大弄的那个动态域名也用不了了,SSH、FTP、WEBServer……基本上全完蛋了。。

自动获得的那个子网IP,掩码居然是255.255.255.255~~

Yantao Mei

unread,
Mar 14, 2008, 6:54:14 AM3/14/08
to Jianjun Kong, WANG Cong, xiyou...@googlegroups.com, zhaoc...@gmail.com
Jianjun Kong wrote:
> On Fri, Mar 14, 2008 at 06:04:42PM +0800, WANG Cong wrote:
>
>> From: Jianjun Kong <kongj...@gmail.com>
>> Date: Fri, 14 Mar 2008 17:22:19 +1000
>>
>>
>>> 我把那个Java C/S程序改了一下。
>>>
>>> 先运行服务端(S),当客户端一(C1)向S发送数据时,S调用方法得到与C1通信的主机名(IP)、Port。然后客户端二(C2)通过S的到的主机名(IP)、port发送数据与C1通信。
>>>
>>> 我在本地试了一下,可以。S得到的主机名localhost、port:37332,C2可以通过这个向C1发送数据。
>>> 但我发S放到我的网站主机上。S得到的是221.11.20.10 Port:38565 ,C2利用这个却不能向C1发数据。
>>> C1与S通信靠的就是S的到的IP和端口,为什么不能通信呢?我再到实验室试试。
>>>
>>> 先运行s,在运行C1(自动向S发送hello),在运行C2(后边带S得到的IP和端口作为参数)
>>>
>>>
>> {snip}
>>
>> 宿舍是网通,应该是pppoe,怎么你的IP和网通服务器的一样了?
>> 莫非换drcom后成NAT了??
>>
>> 我这里也是网通拨号,情况就不一样啊。
>>
>> ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc pfifo_fast qlen 3
>> link/ppp
>> inet 123.128.39.24 peer 123.128.32.1/32 scope global ppp0
>>
>
> 是的,现在宿舍上网都要通过 221.11.20.10
> 老大弄的那个动态域名也用不了了,SSH、FTP、WEBServer……基本上全完蛋了。。
>
暂时偏离我们的话题,我觉得网通这种做法完全是对消费者的欺诈!
计算机网络就应该提供给个人用户一个公网独立的IP,哪怕是暂时性的,这样,人
家自己就可以实现一些远程控制等操作。 你网通有什么资格把人家都放到自己的
子网中?
电信至少这一点比网通要好。垃圾,太恶心
了!!!!!!!!!!!!!!!!!!!
> 自动获得的那个子网IP,掩码居然是255.255.255.255~~
>

WANG Cong

unread,
Mar 14, 2008, 6:53:24 AM3/14/08
to kongj...@gmail.com, meiyan...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Jianjun Kong <kongj...@gmail.com>
Date: Fri, 14 Mar 2008 18:40:11 +1000
那没办法了。你们就继续容忍学校网通的践踏吧!

WANG Cong

unread,
Mar 14, 2008, 7:23:26 AM3/14/08
to meiyan...@gmail.com, kongj...@gmail.com, xiyou...@googlegroups.com, zhaoc...@gmail.com
From: Yantao Mei <meiyan...@gmail.com>
Date: Fri, 14 Mar 2008 18:54:14 +0800


> >
> > 是的,现在宿舍上网都要通过 221.11.20.10
> > 老大弄的那个动态域名也用不了了,SSH、FTP、WEBServer……基本上全完蛋了。。
> >
> 暂时偏离我们的话题,我觉得网通这种做法完全是对消费者的欺诈!
> 计算机网络就应该提供给个人用户一个公网独立的IP,哪怕是暂时性的,这样,人
> 家自己就可以实现一些远程控制等操作。 你网通有什么资格把人家都放到自己的
> 子网中?
> 电信至少这一点比网通要好。垃圾,太恶心
> 了!!!!!!!!!!!!!!!!!!!

学校网通还有一点很流氓,限制一个帐号只能一个机器使用。

现在很多家庭已经有多于一台的电脑了,按照网通的流氓理论,我家就应该
办2个帐号,电脑很多的老大家就得办5,6个了!!彻头彻尾的流氓~!
比资本家还万恶!

还好我不在学校,我要在肯定和他们没完,我会考虑起诉西安网通这种恶劣
行径!

题外话:没事读读《中国人你为什么不生气》这篇文章[1],学学用法律维护
自己的权力,学会站出来为自己说话!

1. http://www.cnbaodao.com/html/3295.htm
Reply all
Reply to author
Forward
0 new messages