Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9VJ0Xvw012727 for ; Sun, 31 Oct 2010 12:00:34 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Mon, 01 Nov 2010 03:00:25 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9VJ0Xvw012727
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 16
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 31 Oct 2010 19:00:36 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9UJ0dDJ015006 for ; Sat, 30 Oct 2010 12:00:40 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Sun, 31 Oct 2010 03:00:32 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9UJ0dDJ015006
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 15
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sat, 30 Oct 2010 19:00:41 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9TJ0gcM014914 for ; Fri, 29 Oct 2010 12:00:42 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Sat, 30 Oct 2010 03:00:34 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9TJ0gcM014914
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 14
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 29 Oct 2010 19:00:44 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from asmtpout029.mac.com (asmtpout029.mac.com [17.148.16.104]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9SJvNn3016966 for ; Thu, 28 Oct 2010 12:57:23 -0700
MIME-version: 1.0
Content-transfer-encoding: 7BIT
Content-type: text/plain; charset=us-ascii
Received: from [192.168.1.10] ([94.30.69.47]) by asmtp029.mac.com (Sun Java(tm) System Messaging Server 6.3-7.04 (built Sep 26 2008; 64bit)) with ESMTPSA id <0LB000HTCNFDGL80@asmtp029.mac.com> for dtn-users@maillists.intel-research.net; Thu, 28 Oct 2010 12:57:17 -0700 (PDT)
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 suspectscore=1 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1004200000 definitions=main-1010280095
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15,1.0.148,0.0.0000 definitions=2010-10-28_09:2010-10-28, 2010-10-28, 1970-01-01 signatures=0
From: Darren Long
In-reply-to: <20101028155326.AZY30023@po6.mail.umd.edu>
Date: Thu, 28 Oct 2010 20:57:13 +0100
Message-id: <1BDB1313-FAC3-47D8-9EA7-964974DD52A0@mac.com>
References: <20101028155326.AZY30023@po6.mail.umd.edu>
To: parneha@umd.edu
X-Mailer: Apple Mail (2.1081)
Cc: dtn-users@maillists.intel-research.net
Subject: Re: [dtn-users] Problem in DTN2 installation on Ubuntu
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 28 Oct 2010 19:57:24 -0000
Hi,
Try running:
sudo ldconfig
Darren
On 28 Oct 2010, at 20:53, parneha@umd.edu wrote:
> Hi,
>
> I have a problem in the installation of DTN2 on Ubuntu.When I
> try running DTN2 by typing the command
>
> daemon/dtnd -c /dtn/dtn.conf --init-db (I give full paths for
> dtnd and dtn.conf)
>
> I get an error saying 'error while loading shared
> libraries:libdb-4.6 so:cannot open shared object file.No such
> file or directory'.But I have installed Berkeley db already.
>
> What must be causing this error?
>
> Thanks and regards
>
> Neha Paranjape
> Neha Paranjape
> Graduate Student(Telecommunications)
> University of Maryland,College Park
> _______________________________________________
> dtn-users mailing list
> dtn-users@maillists.intel-research.net
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
Received: from md2.mail.umd.edu (md2.mail.umd.edu [128.8.31.175]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9SJrQFo016794 for ; Thu, 28 Oct 2010 12:53:26 -0700
Received: from po6.mail.umd.edu (po6.mail.umd.edu [128.8.165.134]) by md2.mail.umd.edu (MOS 3.10.4-GA) with ESMTP id FEE28037; Thu, 28 Oct 2010 15:53:26 -0400 (EDT)
Received: (from po6.mail.umd.edu [129.2.129.153]) by po6.mail.umd.edu (MOS 3.10.4-GA) with HTTPS/1.1 id AZY30023 (AUTH parneha); Thu, 28 Oct 2010 15:53:26 -0400 (EDT)
From:
To: dtn-users@maillists.intel-research.net
X-Mailer: Mirapoint Webmail Direct 3.10.4-GA
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <20101028155326.AZY30023@po6.mail.umd.edu>
Date: Thu, 28 Oct 2010 15:53:26 -0400 (EDT)
Subject: [dtn-users] Problem in DTN2 installation on Ubuntu
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 28 Oct 2010 19:53:27 -0000
Hi,
I have a problem in the installation of DTN2 on Ubuntu.When I
try running DTN2 by typing the command
daemon/dtnd -c /dtn/dtn.conf --init-db (I give full paths for
dtnd and dtn.conf)
I get an error saying 'error while loading shared
libraries:libdb-4.6 so:cannot open shared object file.No such
file or directory'.But I have installed Berkeley db already.
What must be causing this error?
Thanks and regards
Neha Paranjape
Neha Paranjape
Graduate Student(Telecommunications)
University of Maryland,College Park
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9SJ0dlR014357 for ; Thu, 28 Oct 2010 12:00:39 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Fri, 29 Oct 2010 03:00:29 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9SJ0dlR014357
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 13
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 28 Oct 2010 19:00:41 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9RJ0bEE012323 for ; Wed, 27 Oct 2010 12:00:38 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Thu, 28 Oct 2010 03:00:29 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9RJ0bEE012323
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 12
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 27 Oct 2010 19:00:40 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from mail.duth.gr (mail.duth.gr [192.108.114.110]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9RBtq5F020062 for ; Wed, 27 Oct 2010 04:55:52 -0700
Received: from [IPv6:2001:648:2e80:1101:d69a:20ff:fe71:e51f] (unknown [IPv6:2001:648:2e80:1101:d69a:20ff:fe71:e51f]) (Authenticated sender: ikomnios) by mail.duth.gr (Postfix) with ESMTPSA id 85C51B4C4A9; Wed, 27 Oct 2010 14:55:52 +0300 (EEST)
From: Ioannis Komnios
Content-Type: multipart/alternative; boundary=Apple-Mail-14-635706827
Date: Wed, 27 Oct 2010 14:55:51 +0300
Message-Id:
To: dtn-users@maillists.intel-research.net
Mime-Version: 1.0 (Apple Message framework v1081)
X-Mailer: Apple Mail (2.1081)
X-Virus-Scanned: clamav-milter 0.96.3 at mail.duth.gr
X-Virus-Status: Clean
Cc: Vassilis Tsaousidis
Subject: [dtn-users] Open positions at Space Internetworking Center, Xanthi, Greece
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 27 Oct 2010 11:55:54 -0000
--Apple-Mail-14-635706827
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
charset=utf-8
[We apologize in advance if you receive multiple copies of this message]
=20
This call for interest is announced in the framework of the project =
=E2=80=9CSpace Internetworking Center=E2=80=9D with the acronym SPICE =
(Grant Agreement Number 264226) which is funded by =E2=80=9CCapacities=E2=80=
=9D of the FP7 Seventh Framework Programme. The project is approved as a =
=E2=80=9CCoordination and Support Action=E2=80=9D under the =E2=80=9CResea=
rch Potential=E2=80=9D Scheme and has a duration of three years =
(01/09/10-31/8/13).
=20
A. BACKGROUND
Internetworked Systems Laboratory (InterSys Group) has made significant =
contributions to the architectural requirements, objectives =
standardization and prototyping of future Space Internetworking =
strategy. InterSys Group is a leading group in Europe in Space =
Internetworking, participates in the Consultative Committee for Space =
Data Systems and in several other European Bodies. The Internetworked =
Systems Laboratory has a total funding of around 4 million Euros. The =
Project Coordinator, Vassilis Tsaousidis, is a Professor in the =
Department of Electrical and Computer Engineering of Democritus =
University of Thrace, Greece and the Director of Internetworked Systems =
Laboratory.
SPICE relies on three major objectives: to broaden the group=E2=80=99s =
accomplished research innovation and engineering capacity both by =
mobilizing resources to visit first-class cooperating European =
institutions and hiring top class researchers from abroad; to support a =
revolutionary scientific agenda, as far as Delay Tolerant Networking is =
concerned, that boosts European competitiveness and supports a wide =
spectrum of applications; and to institutionalize and establish a =
permanent quality framework for innovative research activities in the =
convergence region of Thrace. Apart from the required infrastructure =
update, SPICE aims at promoting research through the publication of =
special issues in high-quality journals, the organisation of regular =
lectures and presentations from distinguished scientists, as well as the =
hosting of a panel session and two workshops on promising networking =
technologies, such as 4G communications.
=20
B. JOB DESCRIPTION
In the framework of SPICE project we invite applications for a team of =
scientists as follows:
=20
1. Two senior researchers from abroad to work at the Space =
Internetworking Center (Xanthi, Greece) and be responsible for =E2=80=9Cth=
e design of application-transport-routing protocols for SPACE and, in =
general, delay tolerant communications=E2=80=9D.
Vacancies duration: the term of the appointment will be for one year =
starting no later than March 2011 with an option for extension.
Job Requirements:
=E2=96=A0 Computer engineering or computer science degree
=E2=96=A0 Ph.D. Degree, preferably in the fields of computer =
networks or computer architecture or telecommunications
=E2=96=A0 Excellent knowledge of English language (speak, =
read and write fluently).
Experience in designing space communication protocols or protocols for =
delay tolerant networks is desirable. The evaluation of all candidates =
will be based on their experience, relevance of studies and research =
accomplishments.
=20
2. Experienced technical personnel for the administration of the Space =
Internetworking Center. Job Requirements:
=E2=96=A0 Computer engineering or computer science degree
=E2=96=A0 Knowledge of TCP/IP protocol stack
=E2=96=A0 Experience in designing/implementing internetworked =
systems.
=20
C. CONTRACT
Salary depends on qualifications. Maximum gross annual salary is =
40.000=E2=82=AC. Accommodation cost in Xanthi is relatively low (for =
example typical apartment with two bedrooms costs 300=E2=82=AC-350=E2=82=AC=
).
=20
D. EQUAL OPPORTUNITIES
Equal opportunities policy without distinctions (sex, origin, religion, =
disability, age etc) will be applied.
=20
E. REQUIRED DOCUMENTATION
Interested applicants should send their curriculum vitae using the =
Europass standard including:
=E2=96=A0 An application letter
=E2=96=A0 A research statement
=E2=96=A0 A synopsis of research experience
=E2=96=A0 A list of publications
=E2=96=A0 The names of three referees
by e-mail to vtsaousi@ee.duth.gr.
=20
Please use the following reference in the subject: =
SPICE_RESEARCHERS_2010. Please note that an acknowledgement e-mail will =
be sent upon receipt of each application within 3 working days.
=20
An interview may be asked by the Project Coordinator, in case this is =
deemed necessary. Selected candidates should provide:
=E2=96=A0 Original documents (or official translations) of =
Degrees
=E2=96=A0 Original documents (or official translations) of =
working experience certificates
=E2=96=A0 Three letters of reference.
=20
F. DEADLINE OF SUBMISSION
Initial deadline for receipt of e-mail: 20/11/2010
However applications will be accepted until positions are filled.
Candidates will be evaluated based on their qualification by a =
Scientific Committee.=
--Apple-Mail-14-635706827
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=utf-8
[We apologize in advance if =
you receive multiple copies of
this message]
This call for interest is announced in the framework =
of the
project =E2=80=9CSpace =
Internetworking Center=E2=80=9D with
the acronym SPICE (Grant Agreement Number 264226) which is funded by =E2=80=9CCapacities=E2=80=9D of =
the FP7 Seventh Framework
Programme. The project is approved as a =E2=80=9CCoordination and =
Support Action=E2=80=9D
under the =E2=80=9CResearch =
Potential=E2=80=9D Scheme
and has a duration of three years (01/09/10-31/8/13).
A. BACKGROUND
Internetworked Systems Laboratory (InterSys Group) =
has made
significant contributions to the architectural requirements, objectives
standardization and prototyping of future Space Internetworking =
strategy.
InterSys Group is a leading group in Europe in Space Internetworking,
participates in the Consultative Committee for Space Data Systems and in
several other European Bodies. The Internetworked Systems Laboratory has =
a total
funding of around 4 million Euros. The Project Coordinator, Vassilis
Tsaousidis, is a Professor in the Department of Electrical and Computer
Engineering of Democritus University of Thrace, Greece and the Director =
of
Internetworked Systems Laboratory.
SPICE =
relies on three major objectives: to broaden the
group=E2=80=99s accomplished research innovation and engineering =
capacity both by
mobilizing resources to visit first-class cooperating European =
institutions and
hiring top class researchers from abroad; to support a revolutionary =
scientific
agenda, as far as Delay Tolerant Networking is concerned, that boosts =
European
competitiveness and supports a wide spectrum of applications; and to
institutionalize and establish a permanent quality framework for =
innovative
research activities in the convergence region of Thrace. Apart from the
required infrastructure update, SPICE aims at promoting research through =
the
publication of special issues in high-quality journals, the organisation =
of
regular lectures and presentations from distinguished scientists, as =
well as
the hosting of a panel session and two workshops on promising networking
technologies, such as 4G communications.
B. JOB DESCRIPTION
In the framework of SPICE project we invite =
applications for
a team of scientists as follows:
1. =
Two senior researchers from abroad to work at the
Space Internetworking Center (Xanthi, Greece) and be responsible for =
=E2=80=9Cthe
design of application-transport-routing protocols for SPACE and, in =
general,
delay tolerant communications=E2=80=9D.
Vacancies duration: the
term of the appointment will be for one year starting no later than =
March 2011
with an option for extension.
Job=
Requirements:
=E2=96=A0 =
Computer
engineering or computer science degree
=E2=96=A0 =
Ph.D.
Degree, preferably in the fields of computer networks or computer =
architecture
or telecommunications
=E2=96=A0 =
Excellent
knowledge of English language (speak, read and write =
fluently).
Experience in =
designing space communication protocols or
protocols for delay tolerant networks is desirable. The evaluation of =
all
candidates will be based on their experience, relevance of studies and =
research
accomplishments.
2. Experienced technical personnel for the =
administration
of the Space Internetworking Center. Job Requirements:
=E2=96=A0 =
Computer
engineering or computer science degree
=E2=96=A0 =
Knowledge
of TCP/IP protocol stack
=E2=96=A0 =
Experience
in designing/implementing internetworked systems.
C. CONTRACT
Salary depends on qualifications. Maximum gross =
annual
salary is 40.000=E2=82=AC. Accommodation cost in Xanthi is relatively =
low (for example
typical apartment with two bedrooms costs 300=E2=82=AC-350=E2=82=AC).
<=
p class=3D"MsoNormal">
D. =
EQUAL OPPORTUNITIES
Equal =
opportunities policy without distinctions (sex,
origin, religion, disability, age etc) will be applied.
E. =
REQUIRED DOCUMENTATION
Interested=
applicants should send their curriculum vitae
using the Europass standard including:
=E2=96=A0 =
An
application letter
=E2=96=A0 =
A
research statement
=E2=96=A0 =
A
synopsis of research experience
=E2=96=A0 =
A
list of publications
=E2=96=A0 =
The
names of three referees
by e-mail to vtsaousi@ee.duth.gr.
Please use the following reference in the subject: =
SPICE_RESEARCHERS_2010.
Please note that an acknowledgement e-mail will be sent upon receipt of =
each
application within 3 working days.
An =
interview may be asked by the Project Coordinator, in
case this is deemed necessary. Selected candidates should provide:
=E2=96=A0 =
Original
documents (or official translations) of Degrees
=E2=96=A0 =
Original
documents (or official translations) of working experience certificates =
=E2=96=A0 =
Three
letters of reference.
F. DEADLINE OF SUBMISSION
Initial deadline for receipt of e-mail: =
20/11/2010
However =
applications will be accepted until positions are
filled.
Candidates will be evaluated based =
on their qualification
by a Scientific Committee.
=
--Apple-Mail-14-635706827--
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9QJ0YHi004172 for ; Tue, 26 Oct 2010 12:00:34 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Wed, 27 Oct 2010 03:00:26 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9QJ0YHi004172
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 11
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 26 Oct 2010 19:00:36 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from asmtpout023.mac.com (asmtpout023.mac.com [17.148.16.98]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9QApDjo013233 for ; Tue, 26 Oct 2010 03:51:13 -0700
MIME-version: 1.0
Content-transfer-encoding: 7BIT
Content-type: text/plain; charset=ISO-8859-1
Received: from [192.168.1.14] (94-30-69-47.xdsl.murphx.net [94.30.69.47]) by asmtp023.mac.com (Sun Java(tm) System Messaging Server 6.3-8.01 (built Dec 16 2008; 32bit)) with ESMTPSA id <0LAW001FW8R2HL70@asmtp023.mac.com> for dtn-users@maillists.intel-research.net; Tue, 26 Oct 2010 03:50:40 -0700 (PDT)
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 suspectscore=0 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1004200000 definitions=main-1010260038
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15,1.0.148,0.0.0000 definitions=2010-10-26_05:2010-10-26, 2010-10-26, 1970-01-01 signatures=0
Message-id: <4CC6B24E.3050501@mac.com>
Date: Tue, 26 Oct 2010 11:49:50 +0100
From: Darren Long
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-GB; rv:1.9.2.11) Gecko/20101013 Thunderbird/3.1.5
To: "Akshay S.N"
References: <4CC6AE95.5050906@mac.com>
In-reply-to: <4CC6AE95.5050906@mac.com>
X-Enigmail-Version: 1.1.1
Cc: dtn-users@maillists.intel-research.net
Subject: Re: [dtn-users] Running DTN on Blue tooth enabled x86 machines
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 26 Oct 2010 10:51:14 -0000
Akshay,
One other thing I conveniently glossed over is the need to have the
bluez dependencies installed so that oasys and DTN2 qre built with BT CL
support.
The dependency packages depend on the linux distro you are using, but if
the dependencies are satisfied, then when configuring oasys, it should say:
checking whether bluetooth support should be enabled... try
checking for library containing baswap... -lbluetooth
checking bluetooth/bluetooth.h usability... yes
checking bluetooth/bluetooth.h presence... yes
checking for bluetooth/bluetooth.h... yes
checking whether bluetooth support was found... yes
and on the last line:
EXTLIB_LDFLAGS: -ldl -lm -ltcl8.5 -lbluetooth -lexpat -lreadline
-lz -ldb-4.8 -lax25 -lpthread
The last line of configure output for DTN2 should be as below:
EXTLIB_LDFLAGS: -ldns_sd -ldl -lm -ltcl8.5 -lbluetooth -lexpat
-lreadline -lz -ldb-4.8 -lax25 -lpthread
Note the -lbluetooth is the bit we're interested in here. Other
libraries aren't relevant necessarily for your build.
Finally, once it is working you can use (if installed):
sudo hcidump -X
to see the BT traffic.
Darren
On 26/10/10 11:33, Darren Long wrote:
> Hi Akshay
>
> I've not used BT CL for a while but I just got it running between my
> net-book and my workstation.
>
> In my dtn.conf files, I added an interface for BT CL like so:
>
> interface add bt0 bt
>
> I added the discovery and announce lines like so:
>
> discovery add btdisc0 bt
> discovery announce announce-bt0 btdisc0 bt interval=60
>
> I couldn't remember if I needed to peer the devices, but nothing seemed
> to happen, so on my netbook, I used the bluetooth-applet to search for
> my workstation and associated with it (i.e. typed in the right pass codes).
>
> Then, as if by magic, the BT link appeared.
>
> In the past I've had this running on embedded platforms with no GUI, and
> it took a while to figure out how to handle bluetooth peering without
> GUI apps. Perhaps you don't need to worry about that though.
>
> Good luck,
>
> Darren
>
> On 26/10/10 10:34, Akshay S.N wrote:
>>
>> Hello All,
>> I have installed DTN on 2 x86 machines and DTN works well over TCP . Now
>> i have need where i don have any internet connection in my machines
>> rather i have blue-tooth setup on both the machines and i have a
>> Blue-tooth 12 Hex digit MAC address for both the machines.
>>
>> How can i make DTN to work over Blue-tooth. I believe there is
>> Blue-tooth convergence layer already.
>>
>> Please guide to some documents on how to run DTN over bluetooth or any
>> steps/ changes to be done in dtn.conf. I couldn't find a good
>> documentation for DTN over blue-tooth.
>>
>> --
>> Regards,
>> Akshay
>>
>>
>>
>>
>> _______________________________________________
>> dtn-users mailing list
>> dtn-users@maillists.intel-research.net
>> http://maillists.intel-research.net/mailman/listinfo/dtn-users
>
> _______________________________________________
> dtn-users mailing list
> dtn-users@maillists.intel-research.net
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
Received: from asmtpout026.mac.com (asmtpout026.mac.com [17.148.16.101]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9QAYEFQ012416 for ; Tue, 26 Oct 2010 03:34:14 -0700
MIME-version: 1.0
Content-transfer-encoding: 7BIT
Content-type: text/plain; charset=ISO-8859-1
Received: from [192.168.1.14] (94-30-69-47.xdsl.murphx.net [94.30.69.47]) by asmtp026.mac.com (Sun Java(tm) System Messaging Server 6.3-7.04 (built Sep 26 2008; 64bit)) with ESMTPSA id <0LAW00CNE80LIL30@asmtp026.mac.com> for dtn-users@maillists.intel-research.net; Tue, 26 Oct 2010 03:34:05 -0700 (PDT)
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 suspectscore=0 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1004200000 definitions=main-1010260036
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15,1.0.148,0.0.0000 definitions=2010-10-26_05:2010-10-26, 2010-10-26, 1970-01-01 signatures=0
Message-id: <4CC6AE95.5050906@mac.com>
Date: Tue, 26 Oct 2010 11:33:57 +0100
From: Darren Long
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-GB; rv:1.9.2.11) Gecko/20101013 Thunderbird/3.1.5
To: "Akshay S.N"
References:
In-reply-to:
X-Enigmail-Version: 1.1.1
Cc: dtn-users@maillists.intel-research.net
Subject: Re: [dtn-users] Running DTN on Blue tooth enabled x86 machines
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 26 Oct 2010 10:34:15 -0000
Hi Akshay
I've not used BT CL for a while but I just got it running between my
net-book and my workstation.
In my dtn.conf files, I added an interface for BT CL like so:
interface add bt0 bt
I added the discovery and announce lines like so:
discovery add btdisc0 bt
discovery announce announce-bt0 btdisc0 bt interval=60
I couldn't remember if I needed to peer the devices, but nothing seemed
to happen, so on my netbook, I used the bluetooth-applet to search for
my workstation and associated with it (i.e. typed in the right pass codes).
Then, as if by magic, the BT link appeared.
In the past I've had this running on embedded platforms with no GUI, and
it took a while to figure out how to handle bluetooth peering without
GUI apps. Perhaps you don't need to worry about that though.
Good luck,
Darren
On 26/10/10 10:34, Akshay S.N wrote:
>
> Hello All,
> I have installed DTN on 2 x86 machines and DTN works well over TCP . Now
> i have need where i don have any internet connection in my machines
> rather i have blue-tooth setup on both the machines and i have a
> Blue-tooth 12 Hex digit MAC address for both the machines.
>
> How can i make DTN to work over Blue-tooth. I believe there is
> Blue-tooth convergence layer already.
>
> Please guide to some documents on how to run DTN over bluetooth or any
> steps/ changes to be done in dtn.conf. I couldn't find a good
> documentation for DTN over blue-tooth.
>
> --
> Regards,
> Akshay
>
>
>
>
> _______________________________________________
> dtn-users mailing list
> dtn-users@maillists.intel-research.net
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
Received: from mail-wy0-f169.google.com (mail-wy0-f169.google.com [74.125.82.169]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9Q9YGcp009578 for ; Tue, 26 Oct 2010 02:34:16 -0700
Received: by wyf23 with SMTP id 23so4553044wyf.28 for ; Tue, 26 Oct 2010 02:34:16 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.227.143.75 with SMTP id t11mr7608450wbu.190.1288085655928; Tue, 26 Oct 2010 02:34:15 -0700 (PDT)
Received: by 10.216.45.145 with HTTP; Tue, 26 Oct 2010 02:34:15 -0700 (PDT)
In-Reply-To:
References:
Date: Tue, 26 Oct 2010 15:04:15 +0530
Message-ID:
From: "Akshay S.N"
To: dtn-users@maillists.intel-research.net
Content-Type: multipart/alternative; boundary=0016363b9d3af63ec5049381cf56
Subject: [dtn-users] Running DTN on Blue tooth enabled x86 machines
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 26 Oct 2010 09:34:17 -0000
--0016363b9d3af63ec5049381cf56
Content-Type: text/plain; charset=ISO-8859-1
Hello All,
I have installed DTN on 2 x86 machines and DTN works well over TCP . Now i
have need where i don have any internet connection in my machines rather i
have blue-tooth setup on both the machines and i have a Blue-tooth 12 Hex
digit MAC address for both the machines.
How can i make DTN to work over Blue-tooth. I believe there is Blue-tooth
convergence layer already.
Please guide to some documents on how to run DTN over bluetooth or any
steps/ changes to be done in dtn.conf. I couldn't find a good documentation
for DTN over blue-tooth.
--
Regards,
Akshay
--0016363b9d3af63ec5049381cf56
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hello All,
I have installed DTN on 2 x86 =
machines and DTN works well over TCP . Now i have need where i don have any=
internet connection in my machines rather i have blue-tooth setup on both =
the machines and i have a Blue-tooth 12 Hex digit=A0 MAC address for both t=
he machines.
How can i make DTN to work over Blue-tooth. I believe there is Blue-too=
th convergence layer already.
Please guide to some documents on how=
=A0 to run DTN over bluetooth or any steps/ changes to be done in dtn.conf.=
I couldn't find a good documentation for DTN over blue-tooth.
--
Regards,
Akshay
--0016363b9d3af63ec5049381cf56--
Received: from smtp-bedford.mitre.org (smtp-bedford.mitre.org [129.83.20.191]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9Q9GTf4008734 for ; Tue, 26 Oct 2010 02:16:29 -0700
Received: from smtp-bedford.mitre.org (localhost.localdomain [127.0.0.1]) by smtp-bedford.mitre.org (8.13.1/8.13.1) with ESMTP id o9Q9GTBi014787 for ; Tue, 26 Oct 2010 05:16:29 -0400
Received: from imchub2.MITRE.ORG (imchub2.mitre.org [129.83.29.74]) by smtp-bedford.mitre.org (8.13.1/8.13.1) with ESMTP id o9Q9GSht014781; Tue, 26 Oct 2010 05:16:28 -0400
Received: from IMCMBX2.MITRE.ORG ([129.83.29.209]) by imchub2.MITRE.ORG ([129.83.29.74]) with mapi; Tue, 26 Oct 2010 05:16:29 -0400
From: "Scott, Keith L."
To: Victor lyamtsev , "dtn-users@maillists.intel-research.net"
Date: Tue, 26 Oct 2010 05:16:11 -0400
Thread-Topic: [dtn-users] dtn2: same ip address for different CL's ?
Thread-Index: Act05xzbllJwyTBBR9S6efTwLsnl7gABwP+g
Message-ID: <0111C34BD897FD41841D60396F2AD3D304DE266B8A@IMCMBX2.MITRE.ORG>
References:
In-Reply-To:
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg=SHA1; boundary="----=_NextPart_000_0000_01CB74F6.CE6F2B40"
MIME-Version: 1.0
Subject: Re: [dtn-users] dtn2: same ip address for different CL's ?
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 26 Oct 2010 09:16:30 -0000
------=_NextPart_000_0000_01CB74F6.CE6F2B40
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
The IP stack differentiates endpoints by (IP address, Protocol (e.g.
TCP/UDP), Port). Said differently, ANY application (not just BP) can open
two sockets on the same address/port for TCP and UDP (and probably, though I
haven't seen it, three if it used TCP/UDP/SCTP). Incoming packets are
demultiplexed based on the address, protocol, and port to the correct
socket.
--keith
-----Original Message-----
From: dtn-users-bounces@maillists.intel-research.net
[mailto:dtn-users-bounces@maillists.intel-research.net] On Behalf Of Victor
lyamtsev
Sent: Tuesday, October 26, 2010 9:23 AM
To: dtn-users@maillists.intel-research.net
Subject: [dtn-users] dtn2: same ip address for different CL's ?
Would it be valid to use the same ip address/ port number for
different convergence layers?
For example, if I try to use
link add link_udp 127.0.0.1 ALWAYSON udp
link add link_tcp 127.0.0.1 ALWAYSON tcp
in the config file - dtnd seems to start up without complain, but how
does that work?
Thank you,
-v
_______________________________________________
dtn-users mailing list
dtn-users@maillists.intel-research.net
http://maillists.intel-research.net/mailman/listinfo/dtn-users
------=_NextPart_000_0000_01CB74F6.CE6F2B40
Content-Type: application/x-pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIKtjCCA2Iw
ggJKoAMCAQICAjaOMA0GCSqGSIb3DQEBBQUAMF0xEjAQBgNVBAoTCW1pdHJlLm9yZzEeMBwGA1UE
CxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MScwJQYDVQQDEx5NSVRSRSBDb3Jwb3JhdGlvbiBQcmlt
YXJ5IENBLTEwHhcNMDkxMjA0MTIwNzE5WhcNMTEwNTI4MTIwNzE5WjBWMRIwEAYDVQQKEwltaXRy
ZS5vcmcxDzANBgNVBAsTBnBlb3BsZTEWMBQGCgmSJomT8ixkAQETBmtzY290dDEXMBUGA1UEAxMO
U2NvdHQgS2VpdGggTC4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJQWehfO+W0A21I8sjg8
6n2E2JIs1nUbSYuSBTDUv2eUi2ubxA+ZcAFl7ThAsFwIKecWjKG1XkEoty0IYRavVwY/7iq93MuC
CKvKP9AhgzU0aENaPu/d7Ch6tDda1EfklYAVXTGmvIor8Q1mAlqAtT76xwscNEJkcPHA4myTUMJb
AgMBAAGjgbYwgbMwDgYDVR0PAQH/BAQDAgXgMB0GA1UdDgQWBBSu9OuFWRi/9KVTm3I4y3KXBakg
+jAfBgNVHSMEGDAWgBSHtA9IjWIzQsEtURpIHsKeuwqxrTBEBgNVHR8EPTA7MDmgN6A1hjNodHRw
Oi8vd3d3Lm1pdHJlLm9yZy90ZWNoL21paS9wa2kvY2ExX21pdHJlX29yZy5jcmwwGwYDVR0RBBQw
EoEQa3Njb3R0QG1pdHJlLm9yZzANBgkqhkiG9w0BAQUFAAOCAQEAWfSQ+S85S0IlonyNhXRT7/Zj
ms5MVzbH7fzU6gI7ByqamE/4X42/OoV39PRSt6mU12QJX7n9JdoqTVoj20UlL4OKwqaC/97kJSVY
+tbn/z3vdqz7VwkcrzPSL5yj8BbTle3NVVLmFuUHaLDI4Zow0sz9ce5dxi5DzhQ1/YR9u+QzcsA0
GppavJwOgvfa6qbOG6nopX/HN9RGb+yhZ6MdMLcRPg3XGs/7p/63ee2OYvNNFR8REb6zXSj4mzXs
1NMBmaAFRqNKLVZBQAFJW1Lc3/Fl/n5a1ZpyrX7Vj7Qx7k68m+XIh0YLiQTgQqH8Z47hmofEwsVb
2Qq0hhMgbwIFDjCCA2QwggJMoAMCAQICAQEwDQYJKoZIhvcNAQEFBQAwWjESMBAGA1UEChMJbWl0
cmUub3JnMR4wHAYDVQQLExVDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxJDAiBgNVBAMTG01JVFJFIENv
cnBvcmF0aW9uIFJvb3QgQ0EtMTAeFw0wNjA2MDEwNDAwMDBaFw0xODA2MDEwNDAwMDBaMFoxEjAQ
BgNVBAoTCW1pdHJlLm9yZzEeMBwGA1UECxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MSQwIgYDVQQD
ExtNSVRSRSBDb3Jwb3JhdGlvbiBSb290IENBLTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQCva1qWPZiEJv5vMtCbjt0cTu0Nbn15Q1cKqQBXKi8VSH9zZPmPxfWizJJ7JSqFJ5/sLUz3
NsnUVjpLYBdFcxNXnOLjXtmDPFOewm5T98NZc9wRRCiDzt4f8qsHFI19ShPiK3cN5UqtJf+i66QV
LA1S6CNL6o2eGAsAl5WnxwOh2BfcWU5fNlHDVc9KKAlDDWpHjC2LLHAUbLP4ZzMIJKcLgLKFMtgM
2AEfaSHzmi7WUdUHRCtCblrF7qzPsy/jBLFrr8VcX+mb7saq95pEOilgcix0/naW7kJfM5ph7UBB
+S1O/OhH+ZjQ4MjWnwE8A/YDrQx1OVLAOi29Bsho/l8lAgMBAAGjNTAzMBIGA1UdEwEB/wQIMAYB
Af8CAQMwHQYDVR0OBBYEFMdwUQDYTf7kAdRolsU9n5qX/nQvMA0GCSqGSIb3DQEBBQUAA4IBAQAa
+fVfCljimBlcfWwkfJXuXNKWun9xloFKjnq6SPGgAIKi5LUDil60a0NaNGoGSO3I1xzYt7ncayh2
1qXulcVTDFqubSJdv51aHTuJYcYUX72LN/gSq03UVLBCJzYm7ZLUlkb2YLo7xUeZ3coLFcT5AHR3
6kjG4cYHqXgH0liBl8jxpN0gwgaci4sgPLUj1w4t8zoKH+zxGFwXwTP/P+etQqiJZ5T00fLLm5kz
9mmnxxmmIvUGNdsCAhGhdnF24pcrR43LNgyOBJ9DPUHBNq3kUQRO48WBKxBxflOtKzsICx/HEtIA
BcZn7deADHcY9spULZfBnQYdEpyz5tgh7Y2qMIID5DCCAsygAwIBAgIBBTANBgkqhkiG9w0BAQUF
ADBaMRIwEAYDVQQKEwltaXRyZS5vcmcxHjAcBgNVBAsTFUNlcnRpZmljYXRlIEF1dGhvcml0eTEk
MCIGA1UEAxMbTUlUUkUgQ29ycG9yYXRpb24gUm9vdCBDQS0xMB4XDTA2MDYwMzE3MTMyMloXDTEy
MDYwMzE3MTMyMlowXTESMBAGA1UEChMJbWl0cmUub3JnMR4wHAYDVQQLExVDZXJ0aWZpY2F0ZSBB
dXRob3JpdHkxJzAlBgNVBAMTHk1JVFJFIENvcnBvcmF0aW9uIFByaW1hcnkgQ0EtMTCCASIwDQYJ
KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMjwe1ZdEIKoELdLvENnbkbO3mVD54ZX5SjxTzFxhvoq
hqSJmLOp32xT7J9KvBapJRbJv1BFdiSUN3O0q8H66nvQqwm1RYe+tTsWSO351FolGrDT9iDRtfWg
H60PCKCbABLRsx3iGnEvjOQjeAtMn1AugqQWU3PWZXYy1Grbya+NOytYvu1p60bDFSoSAn4Jojv1
4lUfWHl8s3kahay8umLSQibiXdEEX8CrSkaXpOaFOuyM6+wpRw7TybO1Dk4zGAUtn0887QvsMDk6
evgN2WxMprkHAGUcJhpI1QXtkfDIl9ukdNiIoM/vdN2QC/+m6b8dA55K5UdlBa9SgRnwapkCAwEA
AaOBsTCBrjASBgNVHRMBAf8ECDAGAQH/AgECMA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUh7QP
SI1iM0LBLVEaSB7CnrsKsa0wHwYDVR0jBBgwFoAUx3BRANhN/uQB1GiWxT2fmpf+dC8wSAYDVR0f
BEEwPzA9oDugOYY3aHR0cDovL3d3dy5taXRyZS5vcmcvdGVjaC9taWkvcGtpL3Jvb3RjYTFfbWl0
cmVfb3JnLmNybDANBgkqhkiG9w0BAQUFAAOCAQEATW5u664p7N0iAj27Xl/akjdfkSQpaosf6cNy
AHu7utCytFfY1WfRNmvnNDGYkqI3XMFOa18SNjiNsMCH+sFQaO+oyDnPiIkEZQvlfGGrRpqIm6j/
/Fgz85bnf1kAM5I61Np7ofCnciRvp9ZB/+u+9i262tgiJPJrvBcqXmgeT9riCc3RPjxqPNmYslOv
NLpIifchelJhF7nIge+7RkAUcTJenj8yKwK0J3+PEpgYRQ+V2C62rnjohuxPgMw/fYoNTOlh3MVl
7adwyK1ahPw2a9eOjSWglqoPTaBNeHJqRJZZ6Vi7S55+VAWCfkAqM5m3tUiVzjsp2dFcTJxnYeza
oDGCAr0wggK5AgEBMGMwXTESMBAGA1UEChMJbWl0cmUub3JnMR4wHAYDVQQLExVDZXJ0aWZpY2F0
ZSBBdXRob3JpdHkxJzAlBgNVBAMTHk1JVFJFIENvcnBvcmF0aW9uIFByaW1hcnkgQ0EtMQICNo4w
CQYFKw4DAhoFAKCCAbAwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcN
MTAxMDI2MDkxNjA4WjAjBgkqhkiG9w0BCQQxFgQU4uxNQFWjUwJ/NXfbZuWhjAmizOMwZwYJKoZI
hvcNAQkPMVowWDAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcNAwICAUAwBwYF
Kw4DAgcwDQYIKoZIhvcNAwICASgwBwYFKw4DAhowCgYIKoZIhvcNAgUwcgYJKwYBBAGCNxAEMWUw
YzBdMRIwEAYDVQQKEwltaXRyZS5vcmcxHjAcBgNVBAsTFUNlcnRpZmljYXRlIEF1dGhvcml0eTEn
MCUGA1UEAxMeTUlUUkUgQ29ycG9yYXRpb24gUHJpbWFyeSBDQS0xAgI2jjB0BgsqhkiG9w0BCRAC
CzFloGMwXTESMBAGA1UEChMJbWl0cmUub3JnMR4wHAYDVQQLExVDZXJ0aWZpY2F0ZSBBdXRob3Jp
dHkxJzAlBgNVBAMTHk1JVFJFIENvcnBvcmF0aW9uIFByaW1hcnkgQ0EtMQICNo4wDQYJKoZIhvcN
AQEBBQAEgYA7JoJaJLx3tDV2qvds+yVP6sM7pXTCKP0oXU18P1MU/YUS7AkItZ4LYIFo1E+FTW6W
Tf8InqV/c1jLwzQGTRlawElHye1TafSo3Tagq8zXjWSplCwjNdCw+/s5ly66uD7P1RFVPDjuxPko
Z7PuzICn5N2c3yOMWrsoDWE55eDJngAAAAAAAA==
------=_NextPart_000_0000_01CB74F6.CE6F2B40--
Received: from mail-gy0-f169.google.com (mail-gy0-f169.google.com [209.85.160.169]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9Q8NGHJ006184 for ; Tue, 26 Oct 2010 01:23:17 -0700
Received: by gyg13 with SMTP id 13so2732601gyg.28 for ; Tue, 26 Oct 2010 01:23:16 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.150.137.15 with SMTP id k15mr5518003ybd.271.1288081396322; Tue, 26 Oct 2010 01:23:16 -0700 (PDT)
Received: by 10.150.136.8 with HTTP; Tue, 26 Oct 2010 01:23:16 -0700 (PDT)
Date: Tue, 26 Oct 2010 04:23:16 -0400
Message-ID:
From: Victor lyamtsev
To: dtn-users@maillists.intel-research.net
Content-Type: text/plain; charset=ISO-8859-1
Subject: [dtn-users] dtn2: same ip address for different CL's ?
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 26 Oct 2010 08:23:17 -0000
Would it be valid to use the same ip address/ port number for
different convergence layers?
For example, if I try to use
link add link_udp 127.0.0.1 ALWAYSON udp
link add link_tcp 127.0.0.1 ALWAYSON tcp
in the config file - dtnd seems to start up without complain, but how
does that work?
Thank you,
-v
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9PJ1g7R001030 for ; Mon, 25 Oct 2010 12:01:43 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Tue, 26 Oct 2010 03:01:34 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9PJ1g7R001030
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 10
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 25 Oct 2010 19:01:44 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9OJ0bpO029630 for ; Sun, 24 Oct 2010 12:00:38 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Mon, 25 Oct 2010 03:00:30 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9OJ0bpO029630
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 9
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 24 Oct 2010 19:00:39 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9NJ0pD4017075 for ; Sat, 23 Oct 2010 12:00:52 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Sun, 24 Oct 2010 03:00:43 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9NJ0pD4017075
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 8
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sat, 23 Oct 2010 19:00:53 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9LJ0aqf000555 for ; Thu, 21 Oct 2010 12:00:37 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Fri, 22 Oct 2010 03:00:21 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9LJ0aqf000555
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 7
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 21 Oct 2010 19:00:38 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from md2.mail.umd.edu (md2.mail.umd.edu [128.8.31.175]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9LGjArd025156 for ; Thu, 21 Oct 2010 09:45:12 -0700
Received: from po6.mail.umd.edu (po6.mail.umd.edu [128.8.165.134]) by md2.mail.umd.edu (MOS 3.10.4-GA) with ESMTP id FDX30691; Thu, 21 Oct 2010 12:45:07 -0400 (EDT)
Received: (from po6.mail.umd.edu [129.2.129.155]) by po6.mail.umd.edu (MOS 3.10.4-GA) with HTTPS/1.1 id AZU62969 (AUTH parneha); Thu, 21 Oct 2010 12:45:06 -0400 (EDT)
From:
To: DTN User Group
X-Mailer: Mirapoint Webmail Direct 3.10.4-GA
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-Id: <20101021124506.AZU62969@po6.mail.umd.edu>
Date: Thu, 21 Oct 2010 12:45:06 -0400 (EDT)
Subject: [dtn-users] Installing DTN2
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 21 Oct 2010 16:45:16 -0000
Hi,
I am a new user of DTN2 and am trying to install DTN2 on Ubuntu.I have downloaded DTN2 and Oasys from SourceForge.Can some one please tell me how to install DTN2?I am not able to understand the documentation in the DTN2 manual.
Thanks
Neha Paranjape
Graduate Student(Telecommunications)
University of Maryland,College Park
Received: from a.painless.aaisp.net.uk (a.painless.aaisp.net.uk [81.187.30.51]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9KKkSaB020526 for ; Wed, 20 Oct 2010 13:46:29 -0700
Received: from 251.254.187.81.in-addr.arpa ([81.187.254.251]) by a.painless.aaisp.net.uk with esmtp (Exim 4.69) (envelope-from ) id 1P8fYK-000155-ID; Wed, 20 Oct 2010 21:46:29 +0100
Message-ID: <4CBF551F.10108@folly.org.uk>
Date: Wed, 20 Oct 2010 21:46:23 +0100
From: Elwyn Davies
User-Agent: Thunderbird 2.0.0.19 (X11/20081209)
MIME-Version: 1.0
To: Leo Iannacone
References:
In-Reply-To:
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Cc: dtn-users@maillists.intel-research.net
Subject: Re: [dtn-users] DTN2 scheduled links?
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 20 Oct 2010 20:46:29 -0000
Hi.
The routing side of SCHEDULED links is essentially unimplemented in the
core DTN2 code. There is some infrastructure support via the notion of
SCHEDULED links and a bit of functionality in the contact manager to
handle them, but there is no router to drive them. Check out the
functional spec at
http://www.n4c.eu/Download/n4c-wp2-023-dtn-infrastructure-fs-12.pdf
which has information about what is available.
It is possible that someone implemented the contact graph routing used
in ION and documented in
http://tools.ietf.org/html/draft-burleigh-dtnrg-cgr-00 (and the ION
documentation) as a DTN2 external router, but I haven't seen anything
about such an implementation. There is some external router
infrastructure at http://code.google.com/p/external-dtn2-router but this
doesn't contain a specific router AFAICS. There is external router
implementation of the RAPID protocol at http://prisms.cs.umass.edu/rapid/.
Regards,
Elwyn Davies
Leo Iannacone wrote:
> Hi all,
>
> someone of you could explain if is it possible use SCHEDULED links?
> And... how to use it?
>
> I didn't found any doc about that, in the code directory I read:
>
> file STATUS:
> -- Scheduled
> No support for scheduled links is yet implemented.
>
> Is this information right?
>
>
> Leo Iannacone.
> _______________________________________________
> dtn-users mailing list
> dtn-users@maillists.intel-research.net
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
>
Received: from cqupt.edu.cn (mail.cqupt.edu.cn [202.202.32.41]) by maillists.intel-research.net (8.13.8/8.13.8) with SMTP id o9KJ0TNG015503 for ; Wed, 20 Oct 2010 12:00:30 -0700
X-eYou-Autoreply: yes
From: liuql@cqupt.edu.cn
To: dtn-users@maillists.intel-research.net
Message-ID:
Date: Thu, 21 Oct 2010 03:00:22 +0800
X-Mailer: eYou MTA Subsystem
MIME-Version: 1.0
Content-Type: text/plain; charset="GB2312"
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by maillists.intel-research.net id o9KJ0TNG015503
Subject: [dtn-users] Auto-Re: dtn-users Digest, Vol 36, Issue 6
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 20 Oct 2010 19:00:31 -0000
ÄúµÄÓʼþÒѾÊÕµ½£¬Îһᾡ¿ì»Ø¸´Äú£¬Ð»Ð»£¡
Received: from mail-gw0-f41.google.com (mail-gw0-f41.google.com [74.125.83.41]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9KHNsxL010843 for ; Wed, 20 Oct 2010 10:23:54 -0700
Received: by gwj21 with SMTP id 21so2215620gwj.28 for ; Wed, 20 Oct 2010 10:23:55 -0700 (PDT)
Received: by 10.103.233.15 with SMTP id k15mr1694272mur.101.1287595431230; Wed, 20 Oct 2010 10:23:51 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.79.68 with HTTP; Wed, 20 Oct 2010 10:23:31 -0700 (PDT)
From: Leo Iannacone
Date: Wed, 20 Oct 2010 19:23:31 +0200
Message-ID:
To: dtn-users@maillists.intel-research.net
Content-Type: text/plain; charset=ISO-8859-1
Subject: [dtn-users] DTN2 scheduled links?
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Wed, 20 Oct 2010 17:23:54 -0000
Hi all,
someone of you could explain if is it possible use SCHEDULED links?
And... how to use it?
I didn't found any doc about that, in the code directory I read:
file STATUS:
-- Scheduled
No support for scheduled links is yet implemented.
Is this information right?
Leo Iannacone.
Received: from mail-qw0-f41.google.com (mail-qw0-f41.google.com [209.85.216.41]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9E5srRb010674 for ; Wed, 13 Oct 2010 22:54:53 -0700
Received: by qwb8 with SMTP id 8so836028qwb.28 for ; Wed, 13 Oct 2010 22:54:53 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.229.89.146 with SMTP id e18mr8472647qcm.138.1287035693132; Wed, 13 Oct 2010 22:54:53 -0700 (PDT)
Received: by 10.229.230.142 with HTTP; Wed, 13 Oct 2010 22:54:53 -0700 (PDT)
Date: Wed, 13 Oct 2010 22:54:53 -0700
Message-ID:
From: Shaukat Ali
To: dtn-users@maillists.intel-research.net
Content-Type: multipart/alternative; boundary=0016364ee4e64d6a5904928d59e3
Subject: [dtn-users] New Comer
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Thu, 14 Oct 2010 05:54:53 -0000
--0016364ee4e64d6a5904928d59e3
Content-Type: text/plain; charset=ISO-8859-1
Hi Everyone,
This is my first email to the group. I need some help on urgent basis. I
have installed and configured ONE simulator. I am using jDK 6.0. I have run
the one.bat file and it works fine and loads the interface. Can anyone tell
me how to run some scenarios and setting different parameters? One can say I
am a new comer so how can I take a start?
Any help will be highly appreciated.
regards,
Shaukat
--0016364ee4e64d6a5904928d59e3
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Hi Everyone,
This is my first email to the group. I need=
some help on urgent basis. I have installed and configured ONE simulator. =
I am using jDK 6.0. I have run the one.bat file and it works fine and =A0lo=
ads the interface. Can anyone tell me how to run some scenarios and setting=
different parameters? One can say I am a new comer so how can I take a sta=
rt?
Any help will be highly appreciated.
regards,=
Shaukat
--0016364ee4e64d6a5904928d59e3--
Received: from mail.duth.gr (mail.duth.gr [192.108.114.110]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o9CIjjXf005538; Tue, 12 Oct 2010 11:45:45 -0700
Received: from webmail.duth.gr (webmail.duth.gr [192.108.114.111]) (Authenticated sender: sdiaman) by mail.duth.gr (Postfix) with ESMTPSA id AF454B4C4A1; Tue, 12 Oct 2010 21:45:46 +0300 (EEST)
Received: from dhcp-134-165.xanthi.duth.gr (dhcp-134-165.xanthi.duth.gr [83.212.134.165]) by webmail.duth.gr (Horde Framework) with HTTP; Tue, 12 Oct 2010 21:45:46 +0300
Message-ID: <20101012214546.33162lfqjdfhctei@webmail.duth.gr>
Date: Tue, 12 Oct 2010 21:45:46 +0300
From: Sotirios Diamantopoulos
To: dtn-interest@maillists.intel-research.net, dtn-users@maillists.intel-research.net, dtn-security@maillists.intel-research.net
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-7; DelSp="Yes"; format="flowed"
Content-Disposition: inline
User-Agent: Internet Messaging Program (IMP) H3 (4.2-cvs)
X-Virus-Scanned: clamav-milter 0.96.3 at mail.duth.gr
X-Virus-Status: Clean
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by maillists.intel-research.net id o9CIjjXf005538
Subject: [dtn-users] BCFIC 2011 - "Space/Earth Delay/Disruption Tolerant Networking" special session
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Tue, 12 Oct 2010 18:45:47 -0000
---------------------------------------------------------------------------
*** Our apologies if you receive multiple copies of this CFP ***
---------------------------------------------------------------------------
Baltic Congress on Future Internet Communications (BCFIC Riga 2011)
Special session on "Space/Earth Delay/Disruption Tolerant Networking"
Riga, Latvia
February, 16-18, 2011
"Space/Earth Delay/Disruption Tolerant Networking" special session,
held in conjunction with the Baltic Conference on Future Internet
Communications, on February 2011 at Riga, Latvia (BCFIC Riga 2011),
seeks novel ideas in the form of preliminary or work-in-progress
results as well as mature research papers for Delay-/Disruption
Tolerant Networks. Work-in-progress papers are appropriate indeed for
the session. Such papers could be further developed with more mature
results and submitted to the relevant special session of the Journal
of Internet Engineering, which is scheduled for April 2011. Topics
include but are not limited to:
* DTN Routing
* Reliability mechanisms
* Congestion and Storage Congestion Control
* Resource Sharing in DTN environments
* Network Coding techniques for DTNs
* Application Development
* Network management
* Error and Flow Control
* Privacy and Security of Information in DTNs
* Naming/Addressing and interoperability issues with the Internet architecture
* Experiences and Measurements from DTN testbeds
* Performance Evaluation and Metrics for DTN Research
* Performance and Design Tradeoffs for DTN Algorithms and Protocols
* DTN Architectures:
- Satellite Communications
- Deep-space Communications
- Underwater Communications
- Connectivity in Developing Countries
- Communication in Public and Private Transport Vehicles
It should also be noted that:
- A selection of the best papers will be invited for special issues in
the Journal of Internet Engineering and Elsevier Adhoc Networks Journal.
- BCFIC Riga 2011 proceedings will be published in IEEE Xplore
(approved) and indexed in the correspondent databases (e.g. EI-index
and others).
- BCFIC Riga 2011 is Technically Co-Sponsored by IEEE Latvia (approved).
Paper-submission Deadline: November 15, 2010
Acceptance Notification: December 6, 2010
Camera Ready: December 18, 2010
Session Organizers:
- Vassilis Tsaoussidis, Professor, Department of Electrical
Engineering, Democritus University of Thrace, Greece
- Efthymios Koutsogiannis, PhD Candidate
- Sotirios Diamantopoulos, PhD Candidate
Kind Regards,
Sotirios Diamantopoulos
Internetworked Systems Lab, Democritus University of Thrace
http://intersys.ee.duth.gr/
Received: from asmtpout029.mac.com (asmtpout029.mac.com [17.148.16.104]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o99EBwph013889 for ; Sat, 9 Oct 2010 07:11:59 -0700
MIME-version: 1.0
Content-type: multipart/mixed; boundary="Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)"
Received: from [192.168.1.10] ([94.30.69.47]) by asmtp029.mac.com (Sun Java(tm) System Messaging Server 6.3-8.01 (built Dec 16 2008; 32bit)) with ESMTPSA id <0LA100CF80QV9340@asmtp029.mac.com> for dtn-users@maillists.intel-research.net; Sat, 09 Oct 2010 07:11:24 -0700 (PDT)
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 suspectscore=5 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1004200000 definitions=main-1010090066
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15,1.0.148,0.0.0000 definitions=2010-10-09_02:2010-10-08, 2010-10-09, 1970-01-01 signatures=0
From: Darren Long
Date: Sat, 09 Oct 2010 15:11:19 +0100
Message-id: <440954C5-3758-4859-8EA0-F0F6A233F775@mac.com>
To: dtn-users@maillists.intel-research.net
X-Mailer: Apple Mail (2.1081)
Subject: [dtn-users] Patches for updates to AX.25 Connected Mode CL in DTN2
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sat, 09 Oct 2010 14:11:59 -0000
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Hi,
Here's 5 patches updating the AX.25 Connected Mode CL in DTN2. They don't touch anything but AX.25 specific files.
A new link option, ack_window is added for ax25cm links, and implemented in the SeqpacketConvergenceLayer class. This can be used to reduce the number of convergence layer protocol ack segments sent. This means that ack segments will be sent for every ack_window data segments, acking the byte range ack_window * segment_length. Ack segments are always sent when a data_segment is flagged as the end of a bundle. Setting ack_window to anything higher than 1 will increase the granularity at which reactive fragmentation is performed. The parameter defaults to 8 if unspecified. Use of ack_window seems to be backwards compatible with older code.
A new file, doc/ax25.txt is added, providing a reference to the relevant wiki page.
Some general tidying of associated files is performed.
This has been running well for a number of weeks over a UHF link, tested on Ubuntu 10.04 (i686) and Debian Squeeze (i686).
Cheers,
Darren
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: application/octet-stream; name=DTN2.3494.export
Content-transfer-encoding: 7bit
Content-disposition: attachment; filename=DTN2.3494.export
# HG changeset patch
# User Darren Long
# Date 1279674619 -3600
# Node ID d332fcbbff8ff4fa56dddaec2cba11b983ef4141
# Parent fb5ddfd8cf830cf40a2181eeb69746bb0776b500
Initial support for ack_window option for AX.25 convergence layer. Minimises ack traffic.
diff -r fb5ddfd8cf83 -r d332fcbbff8f servlib/conv_layers/SeqpacketConvergenceLayer.cc
--- a/servlib/conv_layers/SeqpacketConvergenceLayer.cc Tue Jul 06 14:11:32 2010 -0400
+++ b/servlib/conv_layers/SeqpacketConvergenceLayer.cc Wed Jul 21 02:10:19 2010 +0100
@@ -33,7 +33,8 @@
segment_ack_enabled_(true),
negative_ack_enabled_(true),
keepalive_interval_(10),
- segment_length_(4096)
+ segment_length_(4096),
+ ack_window_(8)
{
}
@@ -70,6 +71,9 @@
p.addopt(new oasys::UIntOpt("segment_length",
¶ms->segment_length_));
+
+ p.addopt(new oasys::UIntOpt("ack_window",
+ ¶ms->ack_window_));
p.addopt(new oasys::UInt8Opt("cl_version",
&cl_version_));
@@ -118,6 +122,7 @@
buf->appendf("negative_ack_enabled: %u\n", params->negative_ack_enabled_);
buf->appendf("keepalive_interval: %u\n", params->keepalive_interval_);
buf->appendf("segment_length: %u\n", params->segment_length_);
+ buf->appendf("ack_window: %u\n", params->ack_window_);
}
//----------------------------------------------------------------------
@@ -131,7 +136,8 @@
send_segment_todo_(0),
recv_segment_todo_(0),
breaking_contact_(false),
- contact_initiated_(false)
+ contact_initiated_(false),
+ ack_window_todo_(0)
{
}
@@ -462,7 +468,7 @@
if (iter == incoming->ack_data_.end() || incoming->rcvd_data_.empty()) {
goto check_done;
}
-
+
// however, we have to be careful to check the recv_data as well
// to make sure we've actually gotten the segment, since the bit
@@ -470,17 +476,33 @@
// completed
while (1) {
size_t rcvd_bytes = incoming->rcvd_data_.num_contiguous();
- size_t ack_len = *iter + 1;
- size_t segment_len = ack_len - incoming->acked_length_;
- (void)segment_len;
+ size_t ack_len = rcvd_bytes; // DML hack // *iter + 1;
+ //size_t segment_len = ack_len - incoming->acked_length_;
+ //(void)segment_len;
+
+ SeqpacketLinkParams* params = seqpacket_lparams();
- if (ack_len > rcvd_bytes) {
+ // DML - If we have a whole bundle's worth of data we want to ack now
+ // otherwise, we want to see if we have a whole window's worth to ack,
+ // and if we have, ack that. If not, we'll deal with it later.
+
+ // so, if we don't have a full bundle or we have haven't reached the
+ // ack window yet, bail
+ if(0 != ack_window_todo_) {
log_debug("send_pending_acks: "
- "waiting to send ack length %zu for %zu byte segment "
- "since only received %zu",
- ack_len, segment_len, rcvd_bytes);
+ "waiting to send ack for window %zu segments "
+ "since need %zu more segments",
+ params->ack_window_, ack_window_todo_);
break;
}
+ else {
+ // we might have a full bundle, or we might have reached an ack window
+ // but either way, ack all we have.
+
+
+ // we may need to set the ack_window_todo_
+ ack_window_todo_ = params->ack_window_;
+ }
// make sure we have space in the send buffer
encoding_len = 1 + SDNV::encoding_len(ack_len);
@@ -491,8 +513,7 @@
break;
}
- // make sure we have space in the segment_length
- SeqpacketLinkParams* params = seqpacket_lparams();
+
if (totol_ack_len + encoding_len > params->segment_length_ ) {
log_debug("send_pending_acks: "
@@ -502,9 +523,9 @@
}
log_debug("send_pending_acks: "
- "sending ack length %zu for %zu byte segment "
+ "sending ack length %zu "
"[range %u..%u] ack_data *%p",
- ack_len, segment_len, incoming->acked_length_, *iter,
+ ack_len, incoming->acked_length_, *iter,
&incoming->ack_data_);
*sendbuf_.end() = ACK_SEGMENT;
@@ -1103,6 +1124,9 @@
bool
SeqpacketConvergenceLayer::Connection::handle_data_segment(u_int8_t flags)
{
+ SeqpacketLinkParams* params = dynamic_cast(params_);
+ ASSERT(params != NULL);
+
IncomingBundle* incoming = NULL;
if (flags & BUNDLE_START)
{
@@ -1133,7 +1157,10 @@
log_debug("got BUNDLE_START segment, creating new IncomingBundle");
IncomingBundle* incoming = new IncomingBundle(new Bundle());
incoming_.push_back(incoming);
+ ack_window_todo_ = params->ack_window_; // start counting towards the ack window now
}
+ ack_window_todo_ = params->ack_window_; // start counting towards the ack window now
+
}
else if (incoming_.empty())
{
@@ -1191,6 +1218,12 @@
log_debug("got BUNDLE_END: total length %u",
incoming->total_length_);
+
+ ack_window_todo_ = 0; // trigger an ack now
+ }
+ else {
+ ASSERT(0 != ack_window_todo_);
+ ack_window_todo_--; // count this towards the window
}
recv_segment_todo_ = segment_len;
diff -r fb5ddfd8cf83 -r d332fcbbff8f servlib/conv_layers/SeqpacketConvergenceLayer.h
--- a/servlib/conv_layers/SeqpacketConvergenceLayer.h Tue Jul 06 14:11:32 2010 -0400
+++ b/servlib/conv_layers/SeqpacketConvergenceLayer.h Wed Jul 21 02:10:19 2010 +0100
@@ -163,7 +163,7 @@
}
/**
- * Link parameters shared among all stream based convergence layers.
+ * Link parameters shared among all Seqpacket based convergence layers.
*/
class SeqpacketLinkParams : public ConnectionConvergenceLayer::LinkParams {
public:
@@ -171,6 +171,7 @@
bool negative_ack_enabled_; ///< Enable negative acks
u_int keepalive_interval_; ///< Seconds between keepalive packets
u_int segment_length_; ///< Maximum size of transmitted segments
+ u_int ack_window_; ///< Number of segments before acking
protected:
// See comment in LinkParams for why this should be protected
@@ -262,6 +263,7 @@
///< break_contact
bool contact_initiated_; //< bit to prevent certain actions before
//< contact is initiated
+ u_int ack_window_todo_; //< number of segments heard so far in window
};
/// For some gcc variants, this typedef seems to be needed
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: application/octet-stream; name=DTN2.3495.export
Content-transfer-encoding: 7bit
Content-disposition: attachment; filename=DTN2.3495.export
# HG changeset patch
# User Darren Long
# Date 1283607593 -3600
# Node ID 4b9781c07cca90b9aa55b4d4cbd370d0f2748f45
# Parent d332fcbbff8ff4fa56dddaec2cba11b983ef4141
Sorted out some formatting and tweaked comments.
diff -r d332fcbbff8f -r 4b9781c07cca servlib/conv_layers/AX25CMConvergenceLayer.cc
--- a/servlib/conv_layers/AX25CMConvergenceLayer.cc Wed Jul 21 02:10:19 2010 +0100
+++ b/servlib/conv_layers/AX25CMConvergenceLayer.cc Sat Sep 04 14:39:53 2010 +0100
@@ -776,7 +776,7 @@
oasys::CRC32 crc;
if(static_cast(cc) <= sizeof(oasys::CRC32::CRC_t)) {
// DML: I had an assert here to see if we ever get 'packets' that are smaller than
- // the CRC size. Well, we do, and I can't for the life of me figure out why.
+ // the CRC size. Well, we did, and I can't for the life of me figure out why.
// So, we have to protect ourselves from this kind of thing happening, and for
// now I think the thing to do is to disconnect the other end, because obviously
// their AX.25 CL implementation sucks ;-) or there's a problem somewhere else
@@ -884,11 +884,7 @@
}
}
-
-
-
return true;
-
}
diff -r d332fcbbff8f -r 4b9781c07cca servlib/conv_layers/AX25CMConvergenceLayer.h
--- a/servlib/conv_layers/AX25CMConvergenceLayer.h Wed Jul 21 02:10:19 2010 +0100
+++ b/servlib/conv_layers/AX25CMConvergenceLayer.h Sat Sep 04 14:39:53 2010 +0100
@@ -153,7 +153,7 @@
virtual void handle_poll_activity();
/// @}
- /// @{ virtual from StreamConvergenceLayer::Connection
+ /// @{ virtual from SeqpacketConvergenceLayer::Connection
void send_data();
void process_data();
diff -r d332fcbbff8f -r 4b9781c07cca servlib/conv_layers/SeqpacketConvergenceLayer.cc
--- a/servlib/conv_layers/SeqpacketConvergenceLayer.cc Wed Jul 21 02:10:19 2010 +0100
+++ b/servlib/conv_layers/SeqpacketConvergenceLayer.cc Sat Sep 04 14:39:53 2010 +0100
@@ -1,4 +1,5 @@
/*
+ * Copyright 2009-2010 Darren Long, darren.long@mac.com
* Copyright 2006 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -461,19 +462,24 @@
size_t encoding_len, totol_ack_len=0;
-
+ // DML TODO: the bitmask stuff incoming->ack_data_
+ // seems nugatory, so perhaps it can go. I've definitely broken it, but
+ // it doesn't stop the this working anyway.
+ // If it does go, then perhaps the while loop can go too, as data segments
+ // should always be received in order and without scope gaps.
+
// when data segment headers are received, the last bit of the
// segment is marked in ack_data, thus if there's nothing in
// there, we don't need to send out an ack.
if (iter == incoming->ack_data_.end() || incoming->rcvd_data_.empty()) {
goto check_done;
}
-
-
+
// however, we have to be careful to check the recv_data as well
// to make sure we've actually gotten the segment, since the bit
// in ack_data is marked when the segment is begun, not when it's
// completed
+
while (1) {
size_t rcvd_bytes = incoming->rcvd_data_.num_contiguous();
size_t ack_len = rcvd_bytes; // DML hack // *iter + 1;
@@ -486,8 +492,9 @@
// otherwise, we want to see if we have a whole window's worth to ack,
// and if we have, ack that. If not, we'll deal with it later.
- // so, if we don't have a full bundle or we have haven't reached the
- // ack window yet, bail
+ // DML -If we don't have a full bundle or we have haven't reached the
+ // ack window yet, bail. The ack_window_todo attribute is decremented
+ // or set to zero in handle_data_segment().
if(0 != ack_window_todo_) {
log_debug("send_pending_acks: "
"waiting to send ack for window %zu segments "
@@ -496,11 +503,8 @@
break;
}
else {
- // we might have a full bundle, or we might have reached an ack window
- // but either way, ack all we have.
-
-
- // we may need to set the ack_window_todo_
+
+ // we need to reinitialise the ack_window_todo_
ack_window_todo_ = params->ack_window_;
}
diff -r d332fcbbff8f -r 4b9781c07cca servlib/conv_layers/SeqpacketConvergenceLayer.h
--- a/servlib/conv_layers/SeqpacketConvergenceLayer.h Wed Jul 21 02:10:19 2010 +0100
+++ b/servlib/conv_layers/SeqpacketConvergenceLayer.h Sat Sep 04 14:39:53 2010 +0100
@@ -1,17 +1,18 @@
/*
- * Copyright 2006 Intel Corporation
+ * Copyright 2009-2010 Darren Long, darren.long@mac.com
+ * Copyright 2006 Intel Corporation
*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
#ifndef _SEQPACKET_CONVERGENCE_LAYER_H_
@@ -24,7 +25,7 @@
/**
* Another shared-implementation convergence layer class for use with
- * reliable, in-order SEQ_PACLET protocols,i.e. Connected Mode AX.25.
+ * reliable, in-order SEQ_PACKET protocols, i.e. Connected Mode AX.25.
* The goal is to share as much functionality as
* possible between protocols that have in-order, reliable, delivery
* semantics, but require fixed sized payloads rather than conforming to
@@ -71,6 +72,7 @@
* The IncomingBundle is used to record state about bundle reception.
* The rcvd_data_ bitmap is extended contiguously with the amount of
* data that has been received, including partially received segments.
+ *
* To track segments that we have received but haven't yet acked, we
* set a single bit for the offset of the end of the segment in the
* ack_data_ bitmap. We also separately record the total range of acks
@@ -79,206 +81,206 @@
*/
class SeqpacketConvergenceLayer : public ConnectionConvergenceLayer {
public:
- /**
- * Constructor
- */
- SeqpacketConvergenceLayer(const char* logpath, const char* cl_name,
- u_int8_t cl_version);
+ /**
+ * Constructor
+ */
+ SeqpacketConvergenceLayer(const char* logpath, const char* cl_name,
+ u_int8_t cl_version);
protected:
- /**
- * Values for ContactHeader flags.
- */
- typedef enum {
- SEGMENT_ACK_ENABLED = 1 << 0, ///< segment acks requested
- REACTIVE_FRAG_ENABLED = 1 << 1, ///< reactive fragmentation enabled
- NEGATIVE_ACK_ENABLED = 1 << 2, ///< refuse bundle enabled
- } contact_header_flags_t;
+ /**
+ * Values for ContactHeader flags.
+ */
+ typedef enum {
+ SEGMENT_ACK_ENABLED = 1 << 0, ///< segment acks requested
+ REACTIVE_FRAG_ENABLED = 1 << 1, ///< reactive fragmentation enabled
+ NEGATIVE_ACK_ENABLED = 1 << 2, ///< refuse bundle enabled
+ } contact_header_flags_t;
- /**
- * Contact initiation header. Sent at the beginning of a contact.
- */
- struct ContactHeader {
- u_int32_t magic; ///< magic word (MAGIC: "dtn!")
- u_int8_t version; ///< cl protocol version
- u_int8_t flags; ///< connection flags (see above)
- u_int16_t keepalive_interval; ///< seconds between keepalive packets
- // SDNV local_eid_length local eid length
- // byte[] local_eid local eid data
- } __attribute__((packed));
+ /**
+ * Contact initiation header. Sent at the beginning of a contact.
+ */
+ struct ContactHeader {
+ u_int32_t magic; ///< magic word (MAGIC: "dtn!")
+ u_int8_t version; ///< cl protocol version
+ u_int8_t flags; ///< connection flags (see above)
+ u_int16_t keepalive_interval; ///< seconds between keepalive packets
+ // SDNV local_eid_length local eid length
+ // byte[] local_eid local eid data
+ } __attribute__((packed));
- /**
- * Valid type codes for the protocol messages, shifted into the
- * high-order four bits of the byte. The lower four bits are used
- * for per-message flags, defined below.
- */
- typedef enum {
- DATA_SEGMENT = 0x1 << 4, ///< a segment of bundle data
- ///< (followed by a SDNV segment length)
- ACK_SEGMENT = 0x2 << 4, ///< acknowledgement of a segment
- ///< (followed by a SDNV ack length)
- REFUSE_BUNDLE = 0x3 << 4, ///< reject reception of current bundle
- KEEPALIVE = 0x4 << 4, ///< keepalive packet
- SHUTDOWN = 0x5 << 4, ///< about to shutdown
- } msg_type_t;
+ /**
+ * Valid type codes for the protocol messages, shifted into the
+ * high-order four bits of the byte. The lower four bits are used
+ * for per-message flags, defined below.
+ */
+ typedef enum {
+ DATA_SEGMENT = 0x1 << 4, ///< a segment of bundle data
+ ///< (followed by a SDNV segment length)
+ ACK_SEGMENT = 0x2 << 4, ///< acknowledgement of a segment
+ ///< (followed by a SDNV ack length)
+ REFUSE_BUNDLE = 0x3 << 4, ///< reject reception of current bundle
+ KEEPALIVE = 0x4 << 4, ///< keepalive packet
+ SHUTDOWN = 0x5 << 4, ///< about to shutdown
+ } msg_type_t;
- /**
- * Valid flags for the DATA_SEGMENT message.
- */
- typedef enum {
- BUNDLE_START = 0x1 << 1, ///< First segment of a bundle
- BUNDLE_END = 0x1 << 0, ///< Last segment of a bundle
- } data_segment_flags_t;
-
- /**
- * Valid flags for the SHUTDOWN message.
- */
- typedef enum {
- SHUTDOWN_HAS_REASON = 0x1 << 1, ///< Has reason code
- SHUTDOWN_HAS_DELAY = 0x1 << 0, ///< Has reconnect delay
- } shutdown_flags_t;
-
- /**
- * Values for the SHUTDOWN reason codes
- */
- typedef enum {
- SHUTDOWN_NO_REASON = 0xff, ///< no reason code (never sent)
- SHUTDOWN_IDLE_TIMEOUT = 0x0, ///< idle connection
- SHUTDOWN_VERSION_MISMATCH = 0x1, ///< version mismatch
- SHUTDOWN_BUSY = 0x2, ///< node is busy
- } shutdown_reason_t;
+ /**
+ * Valid flags for the DATA_SEGMENT message.
+ */
+ typedef enum {
+ BUNDLE_START = 0x1 << 1, ///< First segment of a bundle
+ BUNDLE_END = 0x1 << 0, ///< Last segment of a bundle
+ } data_segment_flags_t;
+
+ /**
+ * Valid flags for the SHUTDOWN message.
+ */
+ typedef enum {
+ SHUTDOWN_HAS_REASON = 0x1 << 1, ///< Has reason code
+ SHUTDOWN_HAS_DELAY = 0x1 << 0, ///< Has reconnect delay
+ } shutdown_flags_t;
+
+ /**
+ * Values for the SHUTDOWN reason codes
+ */
+ typedef enum {
+ SHUTDOWN_NO_REASON = 0xff, ///< no reason code (never sent)
+ SHUTDOWN_IDLE_TIMEOUT = 0x0, ///< idle connection
+ SHUTDOWN_VERSION_MISMATCH = 0x1, ///< version mismatch
+ SHUTDOWN_BUSY = 0x2, ///< node is busy
+ } shutdown_reason_t;
- /**
- * Convert a reason code to a string.
- */
- static const char* shutdown_reason_to_str(shutdown_reason_t reason)
- {
- switch (reason) {
- case SHUTDOWN_NO_REASON: return "no reason";
- case SHUTDOWN_IDLE_TIMEOUT: return "idle connection";
- case SHUTDOWN_VERSION_MISMATCH: return "version mismatch";
- case SHUTDOWN_BUSY: return "node is busy";
- }
- NOTREACHED;
- }
-
- /**
- * Link parameters shared among all Seqpacket based convergence layers.
- */
- class SeqpacketLinkParams : public ConnectionConvergenceLayer::LinkParams {
- public:
- bool segment_ack_enabled_; ///< Use per-segment acks
- bool negative_ack_enabled_; ///< Enable negative acks
- u_int keepalive_interval_; ///< Seconds between keepalive packets
- u_int segment_length_; ///< Maximum size of transmitted segments
- u_int ack_window_; ///< Number of segments before acking
+ /**
+ * Convert a reason code to a string.
+ */
+ static const char* shutdown_reason_to_str(shutdown_reason_t reason)
+ {
+ switch (reason) {
+ case SHUTDOWN_NO_REASON: return "no reason";
+ case SHUTDOWN_IDLE_TIMEOUT: return "idle connection";
+ case SHUTDOWN_VERSION_MISMATCH: return "version mismatch";
+ case SHUTDOWN_BUSY: return "node is busy";
+ }
+ NOTREACHED;
+ }
+
+ /**
+ * Link parameters shared among all Seqpacket based convergence layers.
+ */
+ class SeqpacketLinkParams : public ConnectionConvergenceLayer::LinkParams {
+ public:
+ bool segment_ack_enabled_; ///< Use per-segment acks
+ bool negative_ack_enabled_;///< Enable negative acks
+ u_int keepalive_interval_; ///< Seconds between keepalive packets
+ u_int segment_length_; ///< Maximum size of transmitted segments
+ u_int ack_window_; ///< Number of segments before acking
- protected:
- // See comment in LinkParams for why this should be protected
- SeqpacketLinkParams(bool init_defaults);
- };
-
- /**
- * Version of the actual CL protocol.
- */
- u_int8_t cl_version_;
+ protected:
+ // See comment in LinkParams for why this should be protected
+ SeqpacketLinkParams(bool init_defaults);
+ };
+
+ /**
+ * Version of the actual CL protocol.
+ */
+ u_int8_t cl_version_;
- /**
- * Seqpacket connection class.
- */
- class Connection : public CLConnection {
- public:
- /**
- * Constructor.
- */
- Connection(const char* classname,
- const char* logpath,
- SeqpacketConvergenceLayer* cl,
- SeqpacketLinkParams* params,
- bool active_connector);
+ /**
+ * Seqpacket connection class.
+ */
+ class Connection : public CLConnection {
+ public:
+ /**
+ * Constructor.
+ */
+ Connection(const char* classname,
+ const char* logpath,
+ SeqpacketConvergenceLayer* cl,
+ SeqpacketLinkParams* params,
+ bool active_connector);
- /// @{ virtual from CLConnection
- bool send_pending_data();
- void handle_bundles_queued();
- void handle_cancel_bundle(Bundle* bundle);
- void handle_poll_timeout();
- void break_contact(ContactEvent::reason_t reason);
- /// @}
+ /// @{ virtual from CLConnection
+ bool send_pending_data();
+ void handle_bundles_queued();
+ void handle_cancel_bundle(Bundle* bundle);
+ void handle_poll_timeout();
+ void break_contact(ContactEvent::reason_t reason);
+ /// @}
- protected:
- /**
- * Hook used to tell the derived CL class to drain data out of
- * the send buffer.
- */
- virtual void send_data() = 0;
+ protected:
+ /**
+ * Hook used to tell the derived CL class to drain data out of
+ * the send buffer.
+ */
+ virtual void send_data() = 0;
- /// @{ utility functions used by derived classes
- void initiate_contact();
- void process_data();
- void check_keepalive();
- /// @}
+ /// @{ utility functions used by derived classes
+ void initiate_contact();
+ void process_data();
+ void check_keepalive();
+ /// @}
- private:
- /// @{ utility functions used internally in this class
- void note_data_rcvd();
- void note_data_sent();
- bool send_pending_acks();
- bool start_next_bundle();
- bool send_next_segment(InFlightBundle* inflight);
- bool send_data_todo(InFlightBundle* inflight);
- bool finish_bundle(InFlightBundle* inflight);
- void check_completed(InFlightBundle* inflight);
- void send_keepalive();
-
- void handle_contact_initiation();
- bool handle_data_segment(u_int8_t flags);
- bool handle_data_todo();
- bool handle_ack_segment(u_int8_t flags);
- bool handle_refuse_bundle(u_int8_t flags);
- bool handle_keepalive(u_int8_t flags);
- bool handle_shutdown(u_int8_t flags);
- void check_completed(IncomingBundle* incoming);
- /// @}
+ private:
+ /// @{ utility functions used internally in this class
+ void note_data_rcvd();
+ void note_data_sent();
+ bool send_pending_acks();
+ bool start_next_bundle();
+ bool send_next_segment(InFlightBundle* inflight);
+ bool send_data_todo(InFlightBundle* inflight);
+ bool finish_bundle(InFlightBundle* inflight);
+ void check_completed(InFlightBundle* inflight);
+ void send_keepalive();
+
+ void handle_contact_initiation();
+ bool handle_data_segment(u_int8_t flags);
+ bool handle_data_todo();
+ bool handle_ack_segment(u_int8_t flags);
+ bool handle_refuse_bundle(u_int8_t flags);
+ bool handle_keepalive(u_int8_t flags);
+ bool handle_shutdown(u_int8_t flags);
+ void check_completed(IncomingBundle* incoming);
+ /// @}
- /**
- * Utility function to downcast the params_ pointer that's
- * stored in the CLConnection parent class.
- */
- SeqpacketLinkParams* seqpacket_lparams()
- {
- SeqpacketLinkParams* ret = dynamic_cast(params_);
- ASSERT(ret != NULL);
- return ret;
- }
-
- protected:
- InFlightBundle* current_inflight_; ///< Current bundle that's in flight
- size_t send_segment_todo_; ///< Bytes left to send of current segment
+ /**
+ * Utility function to downcast the params_ pointer that's
+ * stored in the CLConnection parent class.
+ */
+ SeqpacketLinkParams* seqpacket_lparams()
+ {
+ SeqpacketLinkParams* ret = dynamic_cast(params_);
+ ASSERT(ret != NULL);
+ return ret;
+ }
+
+ protected:
+ InFlightBundle* current_inflight_; ///< Current bundle that's in flight
+ size_t send_segment_todo_; ///< Bytes left to send of current segment
std::queue sendbuf_sequence_delimiters_; ///< sendbuf_ may hold many segments
- size_t recv_segment_todo_; ///< Bytes left to recv of current segment
- struct timeval data_rcvd_; ///< Timestamp for idle/keepalive timer
- struct timeval data_sent_; ///< Timestamp for idle timer
- struct timeval keepalive_sent_; ///< Timestamp for keepalive timer
- bool breaking_contact_; ///< Bit to catch multiple calls to
- ///< break_contact
- bool contact_initiated_; //< bit to prevent certain actions before
- //< contact is initiated
- u_int ack_window_todo_; //< number of segments heard so far in window
- };
+ size_t recv_segment_todo_; ///< Bytes left to recv of current segment
+ struct timeval data_rcvd_; ///< Timestamp for idle/keepalive timer
+ struct timeval data_sent_; ///< Timestamp for idle timer
+ struct timeval keepalive_sent_; ///< Timestamp for keepalive timer
+ bool breaking_contact_; ///< Bit to catch multiple calls to
+ ///< break_contact
+ bool contact_initiated_; ///< bit to prevent certain actions before
+ ///< contact is initiated
+ u_int ack_window_todo_; ///< number of segments left in ack_window
+ };
- /// For some gcc variants, this typedef seems to be needed
- typedef ConnectionConvergenceLayer::LinkParams LinkParams;
+ /// For some gcc variants, this typedef seems to be needed
+ typedef ConnectionConvergenceLayer::LinkParams LinkParams;
- /// @{ Virtual from ConvergenceLayer
- void dump_link(const LinkRef& link, oasys::StringBuffer* buf);
- /// @}
-
- /// @{ Virtual from ConnectionConvergenceLayer
- bool parse_link_params(LinkParams* params,
- int argc, const char** argv,
- const char** invalidp);
- bool finish_init_link(const LinkRef& link, LinkParams* params);
- /// @}
+ /// @{ Virtual from ConvergenceLayer
+ void dump_link(const LinkRef& link, oasys::StringBuffer* buf);
+ /// @}
+
+ /// @{ Virtual from ConnectionConvergenceLayer
+ bool parse_link_params(LinkParams* params,
+ int argc, const char** argv,
+ const char** invalidp);
+ bool finish_init_link(const LinkRef& link, LinkParams* params);
+ /// @}
};
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: application/octet-stream; x-unix-mode=0644; name=DTN2.3496.export
Content-transfer-encoding: 7bit
Content-disposition: attachment; filename=DTN2.3496.export
# HG changeset patch
# User Darren Long
# Date 1286627278 -3600
# Node ID a803b511df6004f85d782a89575805d84e926f4d
# Parent 4b9781c07cca90b9aa55b4d4cbd370d0f2748f45
Fixed some tab/space issues.
diff -r 4b9781c07cca -r a803b511df60 servlib/conv_layers/AX25CMConvergenceLayer.cc
--- a/servlib/conv_layers/AX25CMConvergenceLayer.cc Sat Sep 04 14:39:53 2010 +0100
+++ b/servlib/conv_layers/AX25CMConvergenceLayer.cc Sat Oct 09 13:27:58 2010 +0100
@@ -316,7 +316,7 @@
ss<local_call_<<":"<remote_call_;
if(params->digipeater_ != "NO_CALL")
{
- ss<<","<digipeater_;
+ ss<<","<digipeater_;
}
ss<<":"<axport_<shutdown(SHUT_RDWR);
+ sock_->shutdown(SHUT_RDWR);
delete sock_;
}
@@ -459,9 +459,9 @@
std::string rc = sock_->remote_call();
if(params->digipeater_ != "NO_CALL")
{
- rr.push_back(params->digipeater_);
- }
-
+ rr.push_back(params->digipeater_);
+ }
+
int ret = sock_->oasys::AX25Socket::connect(rp, rc, rr);
if (ret == 0) {
@@ -647,12 +647,12 @@
memcpy(temp.end(), reinterpret_cast(&crc_generated), sizeof(crc_generated));
temp.fill(sizeof(crc_generated));
- if (ax25cm_lparams()->hexdump_) {
- log_always("send_data sending %i bytes as below...",towrite);
- oasys::HexDumpBuffer hex;
- hex.append((u_char*)temp.start(), towrite);
- log_multiline(oasys::LOG_ALWAYS, hex.hexify().c_str());
- }
+ if (ax25cm_lparams()->hexdump_) {
+ log_always("send_data sending %i bytes as below...",towrite);
+ oasys::HexDumpBuffer hex;
+ hex.append((u_char*)temp.start(), towrite);
+ log_multiline(oasys::LOG_ALWAYS, hex.hexify().c_str());
+ }
int cc = sock_->write(temp.start(), towrite);
@@ -667,39 +667,39 @@
ASSERT(sendbuf_sequence_delimiters_.front() + sizeof(crc_generated) == static_cast(cc));
// well, the assert kicked in too often. so I'm just gonna
// declare a protocl error and ditch the link
- if(sendbuf_sequence_delimiters_.front() + sizeof(crc_generated) != static_cast(cc))
- {
- std::stringstream ss;
- ss<<"CL attempted to send a "<(cc))
+ {
+ std::stringstream ss;
+ ss<<"CL attempted to send a "<events |= POLLOUT;
- ASSERT(!sendbuf_sequence_delimiters_.empty() );
- ASSERT(sendbuf_sequence_delimiters_.front() <= sendbuf_.fullbytes());
+ ASSERT(!sendbuf_sequence_delimiters_.empty() );
+ ASSERT(sendbuf_sequence_delimiters_.front() <= sendbuf_.fullbytes());
}
else
{
if (sock_pollfd_->events & POLLOUT) {
- ASSERT(!sendbuf_sequence_delimiters_.empty() );
+ ASSERT(!sendbuf_sequence_delimiters_.empty() );
log_debug("send_data: drained buffer, clearing POLLOUT bit");
sock_pollfd_->events &= ~POLLOUT;
// if we get here, the queue of delimiters should be empty ...
@@ -708,11 +708,11 @@
}
}
else if (errno == EWOULDBLOCK) {
- ASSERT(cc < 0 );
+ ASSERT(cc < 0 );
- ASSERT(!sendbuf_sequence_delimiters_.empty() );
+ ASSERT(!sendbuf_sequence_delimiters_.empty() );
log_info("send_data: write returned EWOULDBLOCK with %u bytes queued, in %u segments - setting POLLOUT bit",
- sendbuf_.fullbytes(), sendbuf_sequence_delimiters_.size());
+ sendbuf_.fullbytes(), sendbuf_sequence_delimiters_.size());
sock_pollfd_->events |= POLLOUT;
// so, we're gong to record the length of the send_buf contents
// so we can extract the right ammount of data next time round to maintain SEQ_PACKET
@@ -721,9 +721,9 @@
}
else {
log_info("send_data: whilst sending %i bytes of data, with %i bytes buffered, remote connection unexpectedly closed: %s",
- towrite,
- sendbuf_.fullbytes(),
- strerror(errno));
+ towrite,
+ sendbuf_.fullbytes(),
+ strerror(errno));
break_contact(ContactEvent::BROKEN);
}
}
@@ -815,7 +815,7 @@
{
*local_call = "NO_CALL";
*remote_call = "NO_CALL";
- *digipeater = "NO_CALL";
+ *digipeater = "NO_CALL";
*axport = "None";
std::string temp = nexthop, temp2;
//std::cout<<"Nexthop:"<assign(nexthop, comma - nexthop);
temp2.assign(comma+1, ( temp.size()-remote_call->size() ) -1);
- colon1 = strchr(temp2.c_str(),':');
+ colon1 = strchr(temp2.c_str(),':');
- if(colon1 != NULL)
- {
- digipeater->assign(temp2.c_str(),colon1-temp2.c_str());
- axport->assign(colon1+1, ( temp2.size() - digipeater->size() ) -1 );
- }
-
- if ("None" == *axport || "NO_CALL" == *remote_call || "NO_CALL" == *digipeater) {
- log_warn_p(logpath, "invalid remote_call,digipeater:axport in next hop '%s'",
- nexthop);
- return false;
- }
+ if(colon1 != NULL)
+ {
+ digipeater->assign(temp2.c_str(),colon1-temp2.c_str());
+ axport->assign(colon1+1, ( temp2.size() - digipeater->size() ) -1 );
+ }
+
+ if ("None" == *axport || "NO_CALL" == *remote_call || "NO_CALL" == *digipeater) {
+ log_warn_p(logpath, "invalid remote_call,digipeater:axport in next hop '%s'",
+ nexthop);
+ return false;
+ }
}
- else
- {
- //we don't have a digipeater, but we may be the link initiator meaning
- // that we need remote_call and axport, or we're the listener, in which case
- // we need the local_call, remote_call and axport. if we have two colons,
- // then we are the listener ...
-
- if( colon2 == NULL)
- {
- // we're the initiator
- //so look for the remote call and axport
- remote_call->assign(nexthop,colon1-nexthop);
- axport->assign(colon1+1,temp.size()-remote_call->size() - 1);
-
- if ("None" == *axport || "NO_CALL" == *remote_call) {
- log_warn_p(logpath, "invalid remote_call:axport in next hop '%s'",
- nexthop);
- return false;
- }
-
- }
- else if(colon1 != NULL)
- {
- // we're the listener
- local_call->assign(nexthop,colon1-nexthop);
- remote_call->assign(colon1+1,colon2-colon1);
- axport->assign(colon2+1,temp.size()-remote_call->size() - local_call->size() -2);
-
- if ("None" == *axport || "NO_CALL" == *remote_call || "NO_CALL" == *local_call) {
- log_warn_p(logpath, "invalid local_call:remote_call:axport in next hop '%s'",
- nexthop);
- return false;
- }
-
- }
- }
-
+ else
+ {
+ //we don't have a digipeater, but we may be the link initiator meaning
+ // that we need remote_call and axport, or we're the listener, in which case
+ // we need the local_call, remote_call and axport. if we have two colons,
+ // then we are the listener ...
+
+ if( colon2 == NULL)
+ {
+ // we're the initiator
+ //so look for the remote call and axport
+ remote_call->assign(nexthop,colon1-nexthop);
+ axport->assign(colon1+1,temp.size()-remote_call->size() - 1);
+
+ if ("None" == *axport || "NO_CALL" == *remote_call) {
+ log_warn_p(logpath, "invalid remote_call:axport in next hop '%s'",
+ nexthop);
+ return false;
+ }
+
+ }
+ else if(colon1 != NULL)
+ {
+ // we're the listener
+ local_call->assign(nexthop,colon1-nexthop);
+ remote_call->assign(colon1+1,colon2-colon1);
+ axport->assign(colon2+1,temp.size()-remote_call->size() - local_call->size() -2);
+
+ if ("None" == *axport || "NO_CALL" == *remote_call || "NO_CALL" == *local_call) {
+ log_warn_p(logpath, "invalid local_call:remote_call:axport in next hop '%s'",
+ nexthop);
+ return false;
+ }
+
+ }
+ }
+
return true;
}
diff -r 4b9781c07cca -r a803b511df60 servlib/conv_layers/AX25CMConvergenceLayer.h
--- a/servlib/conv_layers/AX25CMConvergenceLayer.h Sat Sep 04 14:39:53 2010 +0100
+++ b/servlib/conv_layers/AX25CMConvergenceLayer.h Sat Oct 09 13:27:58 2010 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright 2007-2008 Darren Long, darren.long@mac.com
+ * Copyright 2007-2010 Darren Long, darren.long@mac.com
* Copyright 2004-2006 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -61,7 +61,7 @@
bool hexdump_; ///< Log a hexdump of all traffic
std::string local_call_; ///< Local callsign to bind to
std::string remote_call_; ///< Peer callsign
- std::string digipeater_;
+ std::string digipeater_;
std::string axport_; ///< Local axport to bind or connect
diff -r 4b9781c07cca -r a803b511df60 servlib/conv_layers/SeqpacketConvergenceLayer.cc
--- a/servlib/conv_layers/SeqpacketConvergenceLayer.cc Sat Sep 04 14:39:53 2010 +0100
+++ b/servlib/conv_layers/SeqpacketConvergenceLayer.cc Sat Oct 09 13:27:58 2010 +0100
@@ -196,9 +196,9 @@
sendbuf_.fill(local_eid_len);
sendbuf_sequence_delimiters_.push(sizeof(ContactHeader) + sdnv_len + local_eid_len);
- log_info("adding pending sequence: %zu to sequence delimiters queue, queue depth: %zu",
- sizeof(ContactHeader) + sdnv_len + local_eid_len,
- sendbuf_sequence_delimiters_.size());
+ log_info("adding pending sequence: %zu to sequence delimiters queue, queue depth: %zu",
+ sizeof(ContactHeader) + sdnv_len + local_eid_len,
+ sendbuf_sequence_delimiters_.size());
// drain the send buffer
note_data_sent();
@@ -433,7 +433,7 @@
// if the connection failed during ack transmission, stop
if (contact_broken_)
{
- return sent_ack;
+ return sent_ack;
}
// check if we need to start a new bundle. if we do, then
@@ -555,9 +555,9 @@
}
if (generated_ack) {
- sendbuf_sequence_delimiters_.push(totol_ack_len); // may hold many segments
- log_info("adding pending sequence: %zu to sequence delimiters queue, queue depth: %zu",
- totol_ack_len, sendbuf_sequence_delimiters_.size());
+ sendbuf_sequence_delimiters_.push(totol_ack_len); // may hold many segments
+ log_info("adding pending sequence: %zu to sequence delimiters queue, queue depth: %zu",
+ totol_ack_len, sendbuf_sequence_delimiters_.size());
send_data();
note_data_sent();
@@ -689,11 +689,11 @@
ASSERT(cc == (int)sdnv_len);
bp += sdnv_len;
- sendbuf_.reserve(1 + sdnv_len + segment_len);
+ sendbuf_.reserve(1 + sdnv_len + segment_len);
sendbuf_.fill(1 + sdnv_len);
sendbuf_sequence_delimiters_.push(1 + sdnv_len + segment_len); // may hold many segments
- log_info("adding pending sequence: %lu to sequence delimiters queue, queue depth: %zu",
- 1 + sdnv_len + segment_len, sendbuf_sequence_delimiters_.size());
+ log_info("adding pending sequence: %lu to sequence delimiters queue, queue depth: %zu",
+ static_cast(1 + sdnv_len + segment_len), sendbuf_sequence_delimiters_.size());
send_segment_todo_ = segment_len;
@@ -834,8 +834,8 @@
// don't note_data_sent() here since keepalive messages shouldn't
// be counted for keeping an idle link open
sendbuf_sequence_delimiters_.push(1); // may hold many segments
- log_info("adding pending sequence: %u to sequence delimiters queue, queue depth: %zu",
- 1, sendbuf_sequence_delimiters_.size());
+ log_info("adding pending sequence: %u to sequence delimiters queue, queue depth: %zu",
+ 1, sendbuf_sequence_delimiters_.size());
send_data();
}
//----------------------------------------------------------------------
@@ -910,7 +910,7 @@
// connections which have not been initiated yet
if (!contact_initiated_)
{
- return;
+ return;
}
struct timeval now;
@@ -1522,7 +1522,7 @@
sendbuf_.fill(1);
seqsize=2;
}
- sendbuf_sequence_delimiters_.push(seqsize); // may hold many segments
+ sendbuf_sequence_delimiters_.push(seqsize); // may hold many segments
send_data();
}
diff -r 4b9781c07cca -r a803b511df60 servlib/conv_layers/SeqpacketConvergenceLayer.h
--- a/servlib/conv_layers/SeqpacketConvergenceLayer.h Sat Sep 04 14:39:53 2010 +0100
+++ b/servlib/conv_layers/SeqpacketConvergenceLayer.h Sat Oct 09 13:27:58 2010 +0100
@@ -1,18 +1,18 @@
/*
* Copyright 2009-2010 Darren Long, darren.long@mac.com
- * Copyright 2006 Intel Corporation
+ * Copyright 2006 Intel Corporation
*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
*
- * http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
*
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
#ifndef _SEQPACKET_CONVERGENCE_LAYER_H_
@@ -81,206 +81,206 @@
*/
class SeqpacketConvergenceLayer : public ConnectionConvergenceLayer {
public:
- /**
- * Constructor
- */
- SeqpacketConvergenceLayer(const char* logpath, const char* cl_name,
- u_int8_t cl_version);
+ /**
+ * Constructor
+ */
+ SeqpacketConvergenceLayer(const char* logpath, const char* cl_name,
+ u_int8_t cl_version);
protected:
- /**
- * Values for ContactHeader flags.
- */
- typedef enum {
- SEGMENT_ACK_ENABLED = 1 << 0, ///< segment acks requested
- REACTIVE_FRAG_ENABLED = 1 << 1, ///< reactive fragmentation enabled
- NEGATIVE_ACK_ENABLED = 1 << 2, ///< refuse bundle enabled
- } contact_header_flags_t;
+ /**
+ * Values for ContactHeader flags.
+ */
+ typedef enum {
+ SEGMENT_ACK_ENABLED = 1 << 0, ///< segment acks requested
+ REACTIVE_FRAG_ENABLED = 1 << 1, ///< reactive fragmentation enabled
+ NEGATIVE_ACK_ENABLED = 1 << 2, ///< refuse bundle enabled
+ } contact_header_flags_t;
- /**
- * Contact initiation header. Sent at the beginning of a contact.
- */
- struct ContactHeader {
- u_int32_t magic; ///< magic word (MAGIC: "dtn!")
- u_int8_t version; ///< cl protocol version
- u_int8_t flags; ///< connection flags (see above)
- u_int16_t keepalive_interval; ///< seconds between keepalive packets
- // SDNV local_eid_length local eid length
- // byte[] local_eid local eid data
- } __attribute__((packed));
+ /**
+ * Contact initiation header. Sent at the beginning of a contact.
+ */
+ struct ContactHeader {
+ u_int32_t magic; ///< magic word (MAGIC: "dtn!")
+ u_int8_t version; ///< cl protocol version
+ u_int8_t flags; ///< connection flags (see above)
+ u_int16_t keepalive_interval; ///< seconds between keepalive packets
+ // SDNV local_eid_length local eid length
+ // byte[] local_eid local eid data
+ } __attribute__((packed));
- /**
- * Valid type codes for the protocol messages, shifted into the
- * high-order four bits of the byte. The lower four bits are used
- * for per-message flags, defined below.
- */
- typedef enum {
- DATA_SEGMENT = 0x1 << 4, ///< a segment of bundle data
- ///< (followed by a SDNV segment length)
- ACK_SEGMENT = 0x2 << 4, ///< acknowledgement of a segment
- ///< (followed by a SDNV ack length)
- REFUSE_BUNDLE = 0x3 << 4, ///< reject reception of current bundle
- KEEPALIVE = 0x4 << 4, ///< keepalive packet
- SHUTDOWN = 0x5 << 4, ///< about to shutdown
- } msg_type_t;
+ /**
+ * Valid type codes for the protocol messages, shifted into the
+ * high-order four bits of the byte. The lower four bits are used
+ * for per-message flags, defined below.
+ */
+ typedef enum {
+ DATA_SEGMENT = 0x1 << 4, ///< a segment of bundle data
+ ///< (followed by a SDNV segment length)
+ ACK_SEGMENT = 0x2 << 4, ///< acknowledgement of a segment
+ ///< (followed by a SDNV ack length)
+ REFUSE_BUNDLE = 0x3 << 4, ///< reject reception of current bundle
+ KEEPALIVE = 0x4 << 4, ///< keepalive packet
+ SHUTDOWN = 0x5 << 4, ///< about to shutdown
+ } msg_type_t;
- /**
- * Valid flags for the DATA_SEGMENT message.
- */
- typedef enum {
- BUNDLE_START = 0x1 << 1, ///< First segment of a bundle
- BUNDLE_END = 0x1 << 0, ///< Last segment of a bundle
- } data_segment_flags_t;
-
- /**
- * Valid flags for the SHUTDOWN message.
- */
- typedef enum {
- SHUTDOWN_HAS_REASON = 0x1 << 1, ///< Has reason code
- SHUTDOWN_HAS_DELAY = 0x1 << 0, ///< Has reconnect delay
- } shutdown_flags_t;
-
- /**
- * Values for the SHUTDOWN reason codes
- */
- typedef enum {
- SHUTDOWN_NO_REASON = 0xff, ///< no reason code (never sent)
- SHUTDOWN_IDLE_TIMEOUT = 0x0, ///< idle connection
- SHUTDOWN_VERSION_MISMATCH = 0x1, ///< version mismatch
- SHUTDOWN_BUSY = 0x2, ///< node is busy
- } shutdown_reason_t;
+ /**
+ * Valid flags for the DATA_SEGMENT message.
+ */
+ typedef enum {
+ BUNDLE_START = 0x1 << 1, ///< First segment of a bundle
+ BUNDLE_END = 0x1 << 0, ///< Last segment of a bundle
+ } data_segment_flags_t;
+
+ /**
+ * Valid flags for the SHUTDOWN message.
+ */
+ typedef enum {
+ SHUTDOWN_HAS_REASON = 0x1 << 1, ///< Has reason code
+ SHUTDOWN_HAS_DELAY = 0x1 << 0, ///< Has reconnect delay
+ } shutdown_flags_t;
+
+ /**
+ * Values for the SHUTDOWN reason codes
+ */
+ typedef enum {
+ SHUTDOWN_NO_REASON = 0xff, ///< no reason code (never sent)
+ SHUTDOWN_IDLE_TIMEOUT = 0x0, ///< idle connection
+ SHUTDOWN_VERSION_MISMATCH = 0x1, ///< version mismatch
+ SHUTDOWN_BUSY = 0x2, ///< node is busy
+ } shutdown_reason_t;
- /**
- * Convert a reason code to a string.
- */
- static const char* shutdown_reason_to_str(shutdown_reason_t reason)
- {
- switch (reason) {
- case SHUTDOWN_NO_REASON: return "no reason";
- case SHUTDOWN_IDLE_TIMEOUT: return "idle connection";
- case SHUTDOWN_VERSION_MISMATCH: return "version mismatch";
- case SHUTDOWN_BUSY: return "node is busy";
- }
- NOTREACHED;
- }
-
- /**
- * Link parameters shared among all Seqpacket based convergence layers.
- */
- class SeqpacketLinkParams : public ConnectionConvergenceLayer::LinkParams {
- public:
- bool segment_ack_enabled_; ///< Use per-segment acks
- bool negative_ack_enabled_;///< Enable negative acks
- u_int keepalive_interval_; ///< Seconds between keepalive packets
- u_int segment_length_; ///< Maximum size of transmitted segments
- u_int ack_window_; ///< Number of segments before acking
+ /**
+ * Convert a reason code to a string.
+ */
+ static const char* shutdown_reason_to_str(shutdown_reason_t reason)
+ {
+ switch (reason) {
+ case SHUTDOWN_NO_REASON: return "no reason";
+ case SHUTDOWN_IDLE_TIMEOUT: return "idle connection";
+ case SHUTDOWN_VERSION_MISMATCH: return "version mismatch";
+ case SHUTDOWN_BUSY: return "node is busy";
+ }
+ NOTREACHED;
+ }
+
+ /**
+ * Link parameters shared among all Seqpacket based convergence layers.
+ */
+ class SeqpacketLinkParams : public ConnectionConvergenceLayer::LinkParams {
+ public:
+ bool segment_ack_enabled_; ///< Use per-segment acks
+ bool negative_ack_enabled_;///< Enable negative acks
+ u_int keepalive_interval_; ///< Seconds between keepalive packets
+ u_int segment_length_; ///< Maximum size of transmitted segments
+ u_int ack_window_; ///< Number of segments before acking
- protected:
- // See comment in LinkParams for why this should be protected
- SeqpacketLinkParams(bool init_defaults);
- };
-
- /**
- * Version of the actual CL protocol.
- */
- u_int8_t cl_version_;
+ protected:
+ // See comment in LinkParams for why this should be protected
+ SeqpacketLinkParams(bool init_defaults);
+ };
+
+ /**
+ * Version of the actual CL protocol.
+ */
+ u_int8_t cl_version_;
- /**
- * Seqpacket connection class.
- */
- class Connection : public CLConnection {
- public:
- /**
- * Constructor.
- */
- Connection(const char* classname,
- const char* logpath,
- SeqpacketConvergenceLayer* cl,
- SeqpacketLinkParams* params,
- bool active_connector);
+ /**
+ * Seqpacket connection class.
+ */
+ class Connection : public CLConnection {
+ public:
+ /**
+ * Constructor.
+ */
+ Connection(const char* classname,
+ const char* logpath,
+ SeqpacketConvergenceLayer* cl,
+ SeqpacketLinkParams* params,
+ bool active_connector);
- /// @{ virtual from CLConnection
- bool send_pending_data();
- void handle_bundles_queued();
- void handle_cancel_bundle(Bundle* bundle);
- void handle_poll_timeout();
- void break_contact(ContactEvent::reason_t reason);
- /// @}
+ /// @{ virtual from CLConnection
+ bool send_pending_data();
+ void handle_bundles_queued();
+ void handle_cancel_bundle(Bundle* bundle);
+ void handle_poll_timeout();
+ void break_contact(ContactEvent::reason_t reason);
+ /// @}
- protected:
- /**
- * Hook used to tell the derived CL class to drain data out of
- * the send buffer.
- */
- virtual void send_data() = 0;
+ protected:
+ /**
+ * Hook used to tell the derived CL class to drain data out of
+ * the send buffer.
+ */
+ virtual void send_data() = 0;
- /// @{ utility functions used by derived classes
- void initiate_contact();
- void process_data();
- void check_keepalive();
- /// @}
+ /// @{ utility functions used by derived classes
+ void initiate_contact();
+ void process_data();
+ void check_keepalive();
+ /// @}
- private:
- /// @{ utility functions used internally in this class
- void note_data_rcvd();
- void note_data_sent();
- bool send_pending_acks();
- bool start_next_bundle();
- bool send_next_segment(InFlightBundle* inflight);
- bool send_data_todo(InFlightBundle* inflight);
- bool finish_bundle(InFlightBundle* inflight);
- void check_completed(InFlightBundle* inflight);
- void send_keepalive();
-
- void handle_contact_initiation();
- bool handle_data_segment(u_int8_t flags);
- bool handle_data_todo();
- bool handle_ack_segment(u_int8_t flags);
- bool handle_refuse_bundle(u_int8_t flags);
- bool handle_keepalive(u_int8_t flags);
- bool handle_shutdown(u_int8_t flags);
- void check_completed(IncomingBundle* incoming);
- /// @}
+ private:
+ /// @{ utility functions used internally in this class
+ void note_data_rcvd();
+ void note_data_sent();
+ bool send_pending_acks();
+ bool start_next_bundle();
+ bool send_next_segment(InFlightBundle* inflight);
+ bool send_data_todo(InFlightBundle* inflight);
+ bool finish_bundle(InFlightBundle* inflight);
+ void check_completed(InFlightBundle* inflight);
+ void send_keepalive();
+
+ void handle_contact_initiation();
+ bool handle_data_segment(u_int8_t flags);
+ bool handle_data_todo();
+ bool handle_ack_segment(u_int8_t flags);
+ bool handle_refuse_bundle(u_int8_t flags);
+ bool handle_keepalive(u_int8_t flags);
+ bool handle_shutdown(u_int8_t flags);
+ void check_completed(IncomingBundle* incoming);
+ /// @}
- /**
- * Utility function to downcast the params_ pointer that's
- * stored in the CLConnection parent class.
- */
- SeqpacketLinkParams* seqpacket_lparams()
- {
- SeqpacketLinkParams* ret = dynamic_cast(params_);
- ASSERT(ret != NULL);
- return ret;
- }
-
- protected:
- InFlightBundle* current_inflight_; ///< Current bundle that's in flight
- size_t send_segment_todo_; ///< Bytes left to send of current segment
- std::queue sendbuf_sequence_delimiters_; ///< sendbuf_ may hold many segments
- size_t recv_segment_todo_; ///< Bytes left to recv of current segment
- struct timeval data_rcvd_; ///< Timestamp for idle/keepalive timer
- struct timeval data_sent_; ///< Timestamp for idle timer
- struct timeval keepalive_sent_; ///< Timestamp for keepalive timer
- bool breaking_contact_; ///< Bit to catch multiple calls to
- ///< break_contact
- bool contact_initiated_; ///< bit to prevent certain actions before
- ///< contact is initiated
- u_int ack_window_todo_; ///< number of segments left in ack_window
- };
+ /**
+ * Utility function to downcast the params_ pointer that's
+ * stored in the CLConnection parent class.
+ */
+ SeqpacketLinkParams* seqpacket_lparams()
+ {
+ SeqpacketLinkParams* ret = dynamic_cast(params_);
+ ASSERT(ret != NULL);
+ return ret;
+ }
+
+ protected:
+ InFlightBundle* current_inflight_; ///< Current bundle that's in flight
+ size_t send_segment_todo_; ///< Bytes left to send of current segment
+ std::queue sendbuf_sequence_delimiters_; ///< sendbuf_ may hold many segments
+ size_t recv_segment_todo_; ///< Bytes left to recv of current segment
+ struct timeval data_rcvd_; ///< Timestamp for idle/keepalive timer
+ struct timeval data_sent_; ///< Timestamp for idle timer
+ struct timeval keepalive_sent_; ///< Timestamp for keepalive timer
+ bool breaking_contact_; ///< Bit to catch multiple calls to
+ ///< break_contact
+ bool contact_initiated_; ///< bit to prevent certain actions before
+ ///< contact is initiated
+ u_int ack_window_todo_; ///< number of segments left in ack_window
+ };
- /// For some gcc variants, this typedef seems to be needed
- typedef ConnectionConvergenceLayer::LinkParams LinkParams;
+ /// For some gcc variants, this typedef seems to be needed
+ typedef ConnectionConvergenceLayer::LinkParams LinkParams;
- /// @{ Virtual from ConvergenceLayer
- void dump_link(const LinkRef& link, oasys::StringBuffer* buf);
- /// @}
-
- /// @{ Virtual from ConnectionConvergenceLayer
- bool parse_link_params(LinkParams* params,
- int argc, const char** argv,
- const char** invalidp);
- bool finish_init_link(const LinkRef& link, LinkParams* params);
- /// @}
+ /// @{ Virtual from ConvergenceLayer
+ void dump_link(const LinkRef& link, oasys::StringBuffer* buf);
+ /// @}
+
+ /// @{ Virtual from ConnectionConvergenceLayer
+ bool parse_link_params(LinkParams* params,
+ int argc, const char** argv,
+ const char** invalidp);
+ bool finish_init_link(const LinkRef& link, LinkParams* params);
+ /// @}
};
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: application/octet-stream; name=DTN2.3497.export
Content-transfer-encoding: 7bit
Content-disposition: attachment; filename=DTN2.3497.export
# HG changeset patch
# User Darren Long
# Date 1286628195 -3600
# Node ID 8f25e9cdc02b198bff5b729f9d18f376f86506c4
# Parent a803b511df6004f85d782a89575805d84e926f4d
Updated copyright info.
diff -r a803b511df60 -r 8f25e9cdc02b servlib/conv_layers/AX25CMConvergenceLayer.cc
--- a/servlib/conv_layers/AX25CMConvergenceLayer.cc Sat Oct 09 13:27:58 2010 +0100
+++ b/servlib/conv_layers/AX25CMConvergenceLayer.cc Sat Oct 09 13:43:15 2010 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright 2007-2008 Darren Long, darren.long@mac.com
+ * Copyright 2007-2010 Darren Long, darren.long@mac.com
* Copyright 2004-2006 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)
Content-type: application/octet-stream; name=DTN2.3498.export
Content-transfer-encoding: 7bit
Content-disposition: attachment; filename=DTN2.3498.export
# HG changeset patch
# User Darren Long
# Date 1286628992 -3600
# Node ID 75f0e0bf6d02d2e6107d7a1d51febf4c76772f73
# Parent 8f25e9cdc02b198bff5b729f9d18f376f86506c4
Added doc/ax25.txt
diff -r 8f25e9cdc02b -r 75f0e0bf6d02 doc/ax25.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/doc/ax25.txt Sat Oct 09 13:56:32 2010 +0100
@@ -0,0 +1,3 @@
+ax25.txt
+
+Please see the wiki page at: http://www.dtnrg.org/wiki/AX25ConnectedModeConvergenceLayer
--Boundary_(ID_rsJJMXJ0ZhQgUZoNTnuZdA)--
Received: from b.painless.aaisp.net.uk (b.painless.aaisp.net.uk [81.187.30.52]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o98KgTU6028168 for ; Fri, 8 Oct 2010 13:42:29 -0700
Received: from 251.254.187.81.in-addr.arpa ([81.187.254.251]) by b.painless.aaisp.net.uk with esmtp (Exim 4.69) (envelope-from ) id 1P4Jlu-0001Mt-0g; Fri, 08 Oct 2010 21:42:30 +0100
Message-ID: <4CAF8220.4030407@folly.org.uk>
Date: Fri, 08 Oct 2010 21:42:08 +0100
From: Elwyn Davies
User-Agent: Thunderbird 2.0.0.19 (X11/20081209)
MIME-Version: 1.0
To: Victor lyamtsev
References:
In-Reply-To:
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Cc: dtn-users@maillists.intel-research.net
Subject: Re: [dtn-users] issue with link availability
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 08 Oct 2010 20:42:29 -0000
Hi.
You need to use souce and destination eids that have a demultiplexing
component after the local eid. (e,g, dtn://host1.dtn/xxx,
dtn://host2.dtn/yyy). The unqualified local eid should be reserved for
administrative bundles - and they will be delivered to the internal
adminitsrative application - primarily for custody receipts at present -
check out the list of registrations and you'll see the admin one if I
remember right. Also dtn://host1.dtn doesn't match with the pattern you
installed - there needs to be a non-empty demultiplexing strimg.
Regards,
Elwyn
Victor lyamtsev wrote:
> Hi,
> I am trying to forward test bundle from DTN2 (node1 ) to the another
> instance of DTN2 (node2) on the same host, bound to the 127.0.0.1:6666
> for the node1 (dtn://host1.dtn) , i have
>
> link add link_tcp 127.0.0.1:6666 ONDEMAND tcp
> route add dtn://host2.dtn/* link_tcp
>
> When i try to send bundle to node2, using node1 as "router"
> dtnsend -e 60 -s dtn://host1.dtn -d dtn://host2.dtn -t m -p "Hello from host1"
>
> the bundle is not delivered ( at least, not immediately)
> When i check the link status on host1, it seems as link is actually
> down most of the time:
> Links:
> link_tcp [127.0.0.1:6666 dtn:none ONDEMAND tcp state=UNAVAILABLE]
>
> and the route table as following:
> destination source COS next hop fwd route [custody timeout]
> endpoint id eid BNE link/eid action prio [min pct max]
> -----------------------------------------------------------------------------------
> dtn://host2.dtn/* *:* 111 -> link_tcp FORWARD 0 [1800 25 0]
>
> Any idea what the problem is ?
> Thank you,
> -V
> _______________________________________________
> dtn-users mailing list
> dtn-users@maillists.intel-research.net
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
>
Received: from asmtpout023.mac.com (asmtpout023.mac.com [17.148.16.98]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o98KY75E027784 for ; Fri, 8 Oct 2010 13:34:07 -0700
MIME-version: 1.0
Content-transfer-encoding: 7BIT
Content-type: text/plain; charset=us-ascii
Received: from [192.168.1.10] ([94.30.69.47]) by asmtp023.mac.com (Sun Java(tm) System Messaging Server 6.3-8.01 (built Dec 16 2008; 32bit)) with ESMTPSA id <0L9Z00CICNS6SK90@asmtp023.mac.com> for dtn-users@maillists.intel-research.net; Fri, 08 Oct 2010 13:33:45 -0700 (PDT)
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 ipscore=0 suspectscore=5 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx engine=6.0.2-1004200000 definitions=main-1010080134
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15,1.0.148,0.0.0000 definitions=2010-10-08_15:2010-10-08, 2010-10-08, 1970-01-01 signatures=0
From: Darren Long
In-reply-to:
Date: Fri, 08 Oct 2010 21:33:42 +0100
Message-id:
References:
To: Victor lyamtsev , dtn-users@maillists.intel-research.net
X-Mailer: Apple Mail (2.1081)
Subject: Re: [dtn-users] issue with link availability
X-BeenThere: dtn-users@maillists.intel-research.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: dtn-users mailing list
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Fri, 08 Oct 2010 20:34:08 -0000
Hi Victor,
If you make the link ALWAYSON, it should come up immediately. As I understand it, ONDEMAND links need to be brought up manually with "link open link_tcp" or similar.
Darren
On 8 Oct 2010, at 21:20, Victor lyamtsev wrote:
> Hi,
> I am trying to forward test bundle from DTN2 (node1 ) to the another
> instance of DTN2 (node2) on the same host, bound to the 127.0.0.1:6666
> for the node1 (dtn://host1.dtn) , i have
>
> link add link_tcp 127.0.0.1:6666 ONDEMAND tcp
> route add dtn://host2.dtn/* link_tcp
>
> When i try to send bundle to node2, using node1 as "router"
> dtnsend -e 60 -s dtn://host1.dtn -d dtn://host2.dtn -t m -p "Hello from host1"
>
> the bundle is not delivered ( at least, not immediately)
> When i check the link status on host1, it seems as link is actually
> down most of the time:
> Links:
> link_tcp [127.0.0.1:6666 dtn:none ONDEMAND tcp state=UNAVAILABLE]
>
> and the route table as following:
> destination source COS next hop fwd route [custody timeout]
> endpoint id eid BNE link/eid action prio [min pct max]
> -----------------------------------------------------------------------------------
> dtn://host2.dtn/* *:* 111 -> link_tcp FORWARD 0 [1800 25 0]
>
> Any idea what the problem is ?
> Thank you,
> -V
> _______________________________________________
> dtn-users mailing list
> dtn-users@maillists.intel-research.net
> http://maillists.intel-research.net/mailman/listinfo/dtn-users
Received: from mail-yx0-f169.google.com (mail-yx0-f169.google.com [209.85.213.169]) by maillists.intel-research.net (8.13.8/8.13.8) with ESMTP id o98KKcF9027102 for ; Fri, 8 Oct 2010 13:20:38 -0700
Received: by yxm8 with SMTP id 8so543384yxm.28 for ; Fri, 08 Oct 2010 13:20:40 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.151.108.9 with SMTP id k9mr3794698ybm.269.1286569240516; Fri, 08 Oct 2010 13:20:40 -0700 (PDT)
Received: by 10.150.199.6 with HTTP; Fri, 8 Oct 2010 13:20:40 -0700 (PDT)
Date: Fri, 8 Oct 2010 16:20:40 -0400
Message-ID: